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
133 stars 14 forks source link

[BSSTELE] The Hideout! - Crash after entering user ID #60

Closed dlightman311 closed 4 years ago

dlightman311 commented 4 years ago

Module Information

Describe the bug Module loads and inits but crashes after entering user ID due to missing ordinal 480.

To Reproduce Steps to reproduce the behavior:

  1. Enter module
  2. Enter name when prompted to enter a new ID
  3. Press return

Expected behavior Enter chat with chosen user ID.

Screenshots

Unhandled exception. System.ArgumentOutOfRangeException: Specified argument was out of the range of valid values. (Parameter 'Unknown Exported Function Ordinal in MAJORBBS: 480') at MBBSEmu.HostProcess.ExportedModules.Majorbbs.Invoke(UInt16 ordinal, Boolean offsetsOnly) at MBBSEmu.HostProcess.ExecutionUnits.ExecutionUnit.ExternalFunctionDelegate(UInt16 ordinal, UInt16 functionOrdinal) at MBBSEmu.CPU.CpuCore.Tick() 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.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state) at System.Threading.ThreadHelper.ThreadStart()

API Report:

{"UniqueIdentifier":"bsstele","File":"bsstele.dll","Imports":{"DOSCALLS":[89],"PHAPI":[16],"MAJORBBS":[476,403,629,112,113,334,521,350,463,628,468,480,578,511,474,637,520,543,550,560,574,566,650,441,456,492,589,331,460,459,636,625,786,486,401,783,624,119,437,785,458,713,522,167],"GALGSBL":[30,72]}}

Notes:

Ordinal 480 is the profanity filter (PROFAN) and for now it might be easy change to return no/low profanity on all calls to it.

Software Information:

enusbaum commented 4 years ago

Fixed with https://github.com/enusbaum/MBBSEmu/pull/61

dlightman311 commented 4 years ago

Working now! I'll continue on with the module testing and thank you for all the hard work!

image

enusbaum commented 4 years ago

Confirmed Fixed!