mbbsemu / MBBSEmu

The MajorBBS Emulation Project is an Open Source, Cross-Platform emulator for easily running The MajorBBS & Worldgroup Modules
https://www.mbbsemu.com
MIT License
128 stars 14 forks source link

[WCCMMUD] MajorMud - Game Crashes when editing Sysop Bulletin #125

Closed tuday2 closed 3 years ago

tuday2 commented 3 years ago

Module Information

Describe the bug Try to edit Sysop Bulletin and game crashes

To Reproduce Steps to reproduce the behavior:

  1. Drop in generic ANSI file and name WCCSYSOP.BUL in MAJORMUD module directory
  2. Enter MajorMud module
  3. Enter "SYSOP" for sysop commands
  4. Select "B" to edit Sysop Bulletin
  5. See Error

Expected behavior Edit ANSI file

Screenshots

Unhandled exception. System.ArgumentOutOfRangeException: Specified argument was out of the range of valid values. (Parameter 'Unsupported OpCode: Fsubr')
   at MBBSEmu.HostProcess.ExecutionUnits.ExecutionUnit.Execute(IntPtr16 entryPoint, UInt16 channelNumber, Boolean simulateCallFar, Boolean bypassState, Queue`1 initialStackValues, UInt16 initialStackPointer)
   at MBBSEmu.Module.MbbsModule.Execute(IntPtr16 entryPoint, UInt16 channelNumber, Boolean simulateCallFar, Boolean bypassSetState, Queue`1 initialStackValues, UInt16 initialStackPointer)
   at MBBSEmu.HostProcess.MbbsHost.WorkerThread()
   at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location where exception was thrown ---
   at System.Threading.ThreadHelper.ThreadStart()

Software Information:

enusbaum commented 3 years ago

Missing FSUBR OpCode

https://www.felixcloutier.com/x86/fsubr:fsubrp:fisubr

tuday2 commented 3 years ago

Error now:

Unhandled exception. System.ArgumentOutOfRangeException: Specified argument was out of the range of valid values. (Parameter 'Unable to locate FFFF:04A7') at MBBSEmu.Memory.MemoryCore.GetArray(UInt16 segment, UInt16 offset, UInt16 count) at MBBSEmu.Memory.MemoryCore.GetPointer(UInt16 segment, UInt16 offset) at MBBSEmu.HostProcess.ExecutionUnits.ExecutionUnit.Execute(IntPtr16 entryPoint, UInt16 channelNumber, Boolean simulateCallFar, Boolean bypassState, Queue1 initialStackValues, UInt16 initialStackPointer) at MBBSEmu.Module.MbbsModule.Execute(IntPtr16 entryPoint, UInt16 channelNumber, Boolean simulateCallFar, Boolean bypassSetState, Queue1 initialStackValues, UInt16 initialStackPointer) at MBBSEmu.HostProcess.MbbsHost.WorkerThread() at System.Threading.ThreadHelper.ThreadStart_Context(Object state) at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state) --- End of stack trace from previous location where exception was thrown --- at System.Threading.ThreadHelper.ThreadStart()

tuday2 commented 3 years ago

@enusbaum @paladine Please reopen issue (I don't think I have permission)