This configuration is deliberately simplified, using only the misterfs application from github (attached as a zipped floppy image for convenience) and cutemouse (which you can download from http://cutemouse.sourceforge.net/downlo ... se21b4.zip and easily unzip and copy across via misterfs after you've set up the rest - only ctmouse.exe from the bin directory is required). It assumes a recent-ish version of MS-DOS (I tested on 6.22, I think it'll work on 5.0 or higher).
First things first, create a directory on the MiSTer SD card called /media/fat/Games/ao486/shared - I've read it gets auto-created, I can tell you from experience that it doesn't.
After that, edit CONFIG.SYS to read as follows:
Code: Select all
DEVICE=C:\DOS\HIMEM.SYS /TESTMEM:OFF
DEVICE=C:\DOS\EMM386.EXE RAM 8192 FRAME=D000 D=256 I=C800-CDFF X=CE00-CFFF I=D000-EFFF
DOS=HIGH,UMB
FILES=30
LASTDRIVE=Z
- Sets up memory expansion without a lengthy (and pointless) RAM test
- Sets up XMS with 8MB of EMS with proper regions excluded (BIOS, MiSTerFS, etc.)
- Sets up DOS to run in high memory
- Creates 10 more filehandles than default, which many games expect
- Sets the highest-possible DOS drive letter to Z, for ease in changing the drive MiSTerFS maps to (see below) - without this, anything higher than E: will error out!
Next up, AUTOEXEC.BAT:
Code: Select all
@ECHO OFF
LH C:\MISTERFS.EXE E /Q
LH C:\CTMOUSE.EXE /3 /P
Unzip and mount the misterfs floppy image, copy misterfs.exe to C:\, and reboot. You'll get an error about ctmouse not loading because you haven't installed it yet, that's OK. Check the E: drive and make sure when you get a directory listing it shows the volume name as MiSTer...if it does, you're golden.
Now grab ctmouse, put it in the shared folder, then copy it from E:\ to C:\ and reboot one last time for mouse support.
You now have XMS, EMS, MiSTerFS, a mouse driver, and 618K of free conventional memory - congratulations!
(If you want to get even crazier, you can have 115KB of UMBs in total by taking over monochrome display RAM...add I=B000-B7FF to the EMM386 line, but be warned that if anything you run tries to open a true monochrome screen, you will crash!)
The usual tuning (adding more autoload things to AUTOEXEC.BAT, temporarily commenting things out when not needed to get even more conventional back, etc.) applies, there's no getting away from that, but at least this is a very solid generic does-it-all configuration starting point that hopefully eliminates a bit of confusion.
Old hands will no doubt complain that there should be an alternate NOEMS option for EMM386 that provides only XMS and gives back more conventional (you're right, and it looks like DEVICE=C:\DOS\EMM386.EXE NOEMS I=C800-CDFF X=CE00-CFFF I=D000-EFFF), and will remember that when loading executables into UMB, it's always best to load them from largest to smallest to minimize fragmentation and give the most possible opportunity for things to still have a slot to load into.
It also doesn't take into account things like MIDI...there are already huge volumes of discussion on that topic and how to go about it depends very much on what you're trying to accomplish. This wasn't intended as a do-everything-and-the-kitchen-sink solution, just a vetted starting point for further configuration adventures.
DOS was an art, not a science, kids. Some experimentation is invariably required. Be safe out there!
EDIT: Changed include/exclude ranges to give more free UMBs by narrowing the protected range thanks to Sorg's input, moved frame page from E000 to D000 for neatness in layout, mentioned monochrome range.