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

(MUICHAOS) Linux path issues trying to address game data and other subdirectories #39

Closed ryanfantus closed 4 years ago

ryanfantus commented 4 years ago

Receive the following errors trying to initialize MUICHAOS:

2020-08-20 22:49:58.3356 Info MBBSEmu.HostProcess.ExportedModules.Majorbbs.f_open Creating new file MUICHAOS/DATA/BAGS/BAG62.DAT
Critical Exception has occured:
System.IO.DirectoryNotFoundException: Could not find a part of the path '/doors/mbbsemu/games/muichaos/MUICHAOS/DATA/BAGS/BAG62.DAT'.
   at Interop.ThrowExceptionForIoErrno(ErrorInfo errorInfo, String path, Boolean isDirectory, Func`2 errorRewriter)
   at Microsoft.Win32.SafeHandles.SafeFileHandle.Open(String path, OpenFlags flags, Int32 mode)
   at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options)
   at MBBSEmu.HostProcess.ExportedModules.Majorbbs.f_open()
   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, 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.AddModule(MbbsModule module)
   at MBBSEmu.Program.Run(String[] args)

Note that my /doors/mbbsemu/games/muichaos/ directory looks as follows, and it appears that MBBSEmu attempted to create subdirectories which conform to MS-DOS style paths:

/doors/mbbsemu/games/muichaos$ ls
 MUICHAOS       MUICHAOS.MCV  'MUICHAOS\DATA\BAGS'       MUICHAOS_MBBSEmu.zip
 MUICHAOS.DLL   MUICHAOS.MDF  'MUICHAOS\DATA\GFORUMS'
 MUICHAOS.DOC   MUICHAOS.MSG  'MUICHAOS\DATA\ROOMITMS'
 MUICHAOS.H     MUICHAOS.RLN  'MUICHAOS\DATA\TEXT'

Edit - this is what's in MUICHAOS/DATA:

/doors/mbbsemu/games/muichaos$ ls MUICHAOS/DATA/
BIZNESS.DAT   FAME.DAT      LOG.DAT       NEWSTAND.DAT  USERFILE.DAT
CLOSETS.DAT   GUILDS.DAT    MACROS.DAT    OFFICES.DAT
COWARDS       HELP          MAIL          ROOMADD.DAT
CRITFILE.DAT  ITEMFILE.DAT  NAMEFILE.DAT  ROOMFILE.DAT
enusbaum commented 4 years ago

Possible duplicate of https://github.com/enusbaum/MBBSEmu/issues/27

enusbaum commented 4 years ago

Please try latest build which includes new File Name fixes that were checked in today and let us know! 😄

https://www.mbbsemu.com/Downloads/master/082020

enusbaum commented 4 years ago

Fixed by https://github.com/enusbaum/MBBSEmu/pull/50

Please check https://www.mbbsemu.com/Downloads/master/082120

ryanfantus commented 4 years ago

Confirmed fixed.