VOGONS


First post, by Sombrero

User metadata
Rank Oldbie
Rank
Oldbie

Hello!

So I'm putting together a P3 Win98SE / DOS machine for the first time and I'm trying to wrap my head around config.sys and autoexec.bat before the parts arrive. I did have a 486 MSDOS 6.22 machine and a Win 98 rig back in the 90's but I wasn't exactly a wizard with them, I wasn't yet interested in the inner workings and I was lucky to have a friend who set them up and fixed my oopsies that were numerous I'm sure. I did later get into building PC's by myself but that was early Win XP time so I never had to learn to mess with config.sys and autoexec.bat. So here I am now, staring at ready templates and guides feeling confused and scared, hearing wolves howl in the distance.

I've built my config.sys and autoexec.bat by using jesolo's boot menu guide as template with some changes and I would really appreciate if someone would check them out for me. If there are any errors (which is very likely I expect), I'd rather find out about them early before the PC is up and running, since I really don't have the skills to find and fix them by myself.

Config.sys:

[MENU]
menuitem=WINDOWS, Microsoft Windows 98 Second Edition
menuitem=DOS1, MS-DOS 7.10 - Expanded Memory
menuitem=DOS2, MS-DOS 7.10 - Extended memory
menuitem=DOS3, MS-DOS 7.10 - Conventional Memory
menudefault=WINDOWS, 5

[COMMON]
DOS=NOAUTO
FILES=45
BUFFERS=30,0
LASTDRIVE=E
SET TEMP=C:\WINDOWS\TEMP
SET TMP=C:\WINDOWS\TEMP

[WINDOWS]
DEVICE=C:\WINDOWS\HIMEM.SYS
DEVICE=C:\WINDOWS\EMM386.EXE RAM D=64 MIN=0
DOS=HIGH,UMB
DEVICEHIGH=C:\WINDOWS\SETVER.EXE

[DOS1]
DEVICE=C:\WINDOWS\HIMEM.SYS
DEVICE=C:\WINDOWS\EMM386.EXE RAM D=64 MIN=0
DOS=HIGH,UMB
DEVICEHIGH=C:\WINDOWS\SETVER.EXE
DEVICEHIGH=C:\DOSPACK\DRIVERS\videcdd.sys /D:MSCD001
SHELL=C:\WINDOWS\COMMAND.COM /E:512 /P

[DOS2]
DEVICE=C:\WINDOWS\HIMEM.SYS
DOS=HIGH
DEVICEHIGH=C:\WINDOWS\SETVER.EXE
DEVICEHIGH=C:\DOSPACK\DRIVERS\videcdd.sys /D:MSCD001
SHELL=C:\WINDOWS\COMMAND.COM /E:512 /P

[DOS3]
DEVICE=C:\WINDOWS\SETVER.EXE
DEVICE=C:\DOSPACK\DRIVERS\videcdd.sys /D:MSCD001
SHELL=C:\WINDOWS\COMMAND.COM /E:512 /P

Autoexec.bat:

@ECHO OFF
PROMPT $p$g
PATH C:\;C:\WINDOWS;C:\WINDOWS\COMMAND;C:\CTCM;C:\DOSPACK\ORPHINIT;C:\DOSPACK\THROTTLE

goto %config%

:WINDOWS
C:\WINDOWS\WIN.COM
goto end

:DOS1
LH C:\WINDOWS\COMMAND\DOSKEY.COM
LH C:\WINDOWS\COMMAND\MSCDEX.EXE /D:MSCD001
LH C:\DOSPACK\DRIVERS\ctmouse.exe /R2
goto end

:DOS2
LH C:\WINDOWS\COMMAND\DOSKEY.COM
LH C:\WINDOWS\COMMAND\MSCDEX.EXE /D:MSCD001
LH C:\DOSPACK\DRIVERS\ctmouse.exe /R2
goto end

:DOS3
C:\WINDOWS\COMMAND\DOSKEY.COM
C:\WINDOWS\COMMAND\MSCDEX.EXE /D:MSCD001
C:\DOSPACK\DRIVERS\ctmouse.exe /R2
goto end

:end

I removed all Sound Blaster stuff from jesolo's template and added a extended memory boot menu option. Also I added C:\DOSPACK\ORPHINIT;C:\DOSPACK\THROTTLE to PATH for ORPHINIT driver for Orpheus Sound Card and for Throttle so I can initialize the sound card and use throttle to slow down the CPU without having to write down the whole path to the .bat and .exe file, that is if I understood correctly how that PATH thing works? I also specified TEMP folders, though I don't really know how beneficial that is.

Did I do anything horribly wrong? Anything you would change? Do I need to have SET MIDI=SYNTH:1 MAP:G MODE:1 in autoexec.bat with Orpheus Sound Card? Could I set OPRHINIT.bat directly to autoexec so it would initialize automatically? What about throttle.exe to slow down the PC automatically, would that work or is that asking for trouble?

Please help, I understand nothing!

Reply 1 of 53, by cyclone3d

User metadata
Rank l33t++
Rank
l33t++

I never use setver or doskey.

DOS=HIGH,UMB is usually before any of the lines to load anything as well. Not sure if it matters, that is just how I do it.

Yamaha modified setupds and drivers
Yamaha XG repository
YMF7x4 Guide
Aopen AW744L II SB-LINK

Reply 2 of 53, by Sombrero

User metadata
Rank Oldbie
Rank
Oldbie
cyclone3d wrote on 2021-09-21, 15:39:

I never use setver or doskey.

DOS=HIGH,UMB is usually before any of the lines to load anything as well. Not sure if it matters, that is just how I do it.

I have no idea would I ever need setver for any game I would play, but is there still a reason to take it off? Would that free up memory to make a difference? Doskey sounds like it's handy, but I don't know would I ever really need it.

I've seen DOS=HIGH,UMB after loading HIMEM and EMM on couple guides and on jesolo's template, I guess it doesn't matter then?

Last edited by Sombrero on 2021-09-21, 16:12. Edited 1 time in total.

Reply 3 of 53, by Gmlb256

User metadata
Rank l33t
Rank
l33t
cyclone3d wrote on 2021-09-21, 15:39:

I never use setver or doskey.

SETVER is to make certain DOS programs meant for older DOS versions to be able to run on recent ones. This for examples forces a program to identify the MS-DOS version as 6.22 even if you run the Windows 98 SE MS-DOS mode, it's not perfect though. As for DOSKEY, there are much better alternatives such as 4DOS.

There's also an obscure way to boot into Windows from a menu. This is by editing MSDOS.SYS. 😉 BootConfig is for which config menu will be used for BootGUI.

BootGUI=1
BootConfig=WINDOWS

And remove WIN.COM from AUTOEXEC.BAT. You don't actually need EMM386 to be loaded either on the "WINDOWS" option as Windows has its own expanded memory manager.

Last edited by Gmlb256 on 2021-09-21, 16:16. Edited 1 time in total.

VIA C3 Nehemiah 1.2A @ 1.46 GHz | ASUS P2-99 | 256 MB PC133 SDRAM | GeForce3 Ti 200 64 MB | Voodoo2 12 MB | SBLive! | AWE64 | SBPro2 | GUS

Reply 4 of 53, by Sombrero

User metadata
Rank Oldbie
Rank
Oldbie
Gmlb256 wrote on 2021-09-21, 16:12:

And remove WIN.COM from AUTOEXEC.BAT. You don't actually need EMM386 to be loaded either on the "WINDOWS" option as Windows has its own expanded memory manager.

Awesome, thanks! But how does the boot menu then know how to load windows if I remove WIN.COM?

Reply 5 of 53, by Gmlb256

User metadata
Rank l33t
Rank
l33t
Sombrero wrote on 2021-09-21, 16:16:

Awesome, thanks! But how does the boot menu then know how to load windows if I remove WIN.COM?

See my edit above. 😀

Gmlb256 wrote on 2021-09-21, 16:12:

BootConfig is for which config menu will be used for BootGUI.

VIA C3 Nehemiah 1.2A @ 1.46 GHz | ASUS P2-99 | 256 MB PC133 SDRAM | GeForce3 Ti 200 64 MB | Voodoo2 12 MB | SBLive! | AWE64 | SBPro2 | GUS

Reply 6 of 53, by Sombrero

User metadata
Rank Oldbie
Rank
Oldbie
Gmlb256 wrote on 2021-09-21, 16:16:
Sombrero wrote on 2021-09-21, 16:16:

Awesome, thanks! But how does the boot menu then know how to load windows if I remove WIN.COM?

See my edit above. 😀

Gmlb256 wrote on 2021-09-21, 16:12:

BootConfig is for which config menu will be used for BootGUI.

I'll be honest, I don't really understand what exactly makes the PC load Windows with that MSDOS.sys edit, but I guess that don't matter if that works!

So the WINDOWS part in config.sys looks like this now with EMM386 taken off:

[WINDOWS]
DEVICE=C:\WINDOWS\HIMEM.SYS
DOS=HIGH,UMB
DEVICEHIGH=C:\WINDOWS\SETVER.EXE

I also took DOSKEY out from autoexec.bat. Anything else? Any idea how good/bad idea it is to initialize Oprheus drivers or Throttle from autoexec?

Edit: I just noticed that in order to this boot menu to work it is needed to set BootGUI=0, how would that work with your suggestion?

Reply 7 of 53, by Gmlb256

User metadata
Rank l33t
Rank
l33t
Sombrero wrote on 2021-09-21, 16:30:
So the WINDOWS part in config.sys looks like this now with EMM386 taken off: […]
Show full quote

So the WINDOWS part in config.sys looks like this now with EMM386 taken off:

[WINDOWS]
DEVICE=C:\WINDOWS\HIMEM.SYS
DOS=HIGH,UMB
DEVICEHIGH=C:\WINDOWS\SETVER.EXE

I also took DOSKEY out from autoexec.bat. Anything else? Any idea how good/bad idea it is to initialize Oprheus drivers or Throttle from autoexec?

Edit: I just noticed that in order to this boot menu to work it is needed to set BootGUI=0, how would that work with your suggestion?

That's good enough for Windows. The rest such as the sound initialization and throttle are just for the other configuration menus with the exception of the BLASTER environment.

Did you add BootConfig on MSDOS.SYS? Anyway BootGUI=0 with WIN.COM on AUTOEXEC.BAT works. Don't want to complicate the things further.

VIA C3 Nehemiah 1.2A @ 1.46 GHz | ASUS P2-99 | 256 MB PC133 SDRAM | GeForce3 Ti 200 64 MB | Voodoo2 12 MB | SBLive! | AWE64 | SBPro2 | GUS

Reply 8 of 53, by Sombrero

User metadata
Rank Oldbie
Rank
Oldbie
Gmlb256 wrote on 2021-09-21, 16:35:

That's good enough for Windows. The rest such as the sound initialization and throttle are just for the other configuration menus with the exception of the BLASTER environment.

Did you add BootConfig on MSDOS.SYS? Anyway BootGUI=0 with WIN.COM on AUTOEXEC.BAT works. Don't want to complicate the things further.

What is really confusing me here is that if I've understood correctly, with BootGUI=0 I get the boot menu then starting the PC. But if I set it to 1 and add BootConfig=WINDOWS, would I still get the boot menu where I would be able to pick and choose between windows and DOS?

This stuff really is uncharted waters for me, your help is appreciated!

Reply 9 of 53, by Gmlb256

User metadata
Rank l33t
Rank
l33t
Sombrero wrote on 2021-09-21, 16:43:

What is really confusing me here is that if I've understood correctly, with BootGUI=0 I get the boot menu then starting the PC. But if I set it to 1 and add BootConfig=WINDOWS, would I still get the boot menu where I would be able to pick and choose between windows and DOS?

This stuff really is uncharted waters for me, your help is appreciated!

The menu always appears regardless whether BootGUI is set to 0 or 1. But with BootGUI=1 without BootConfig set it will attempt to boot into Windows regardless on which configuration menu you choose.

VIA C3 Nehemiah 1.2A @ 1.46 GHz | ASUS P2-99 | 256 MB PC133 SDRAM | GeForce3 Ti 200 64 MB | Voodoo2 12 MB | SBLive! | AWE64 | SBPro2 | GUS

Reply 10 of 53, by Sombrero

User metadata
Rank Oldbie
Rank
Oldbie
Gmlb256 wrote on 2021-09-21, 16:48:
Sombrero wrote on 2021-09-21, 16:43:

What is really confusing me here is that if I've understood correctly, with BootGUI=0 I get the boot menu then starting the PC. But if I set it to 1 and add BootConfig=WINDOWS, would I still get the boot menu where I would be able to pick and choose between windows and DOS?

This stuff really is uncharted waters for me, your help is appreciated!

The menu always appears regardless whether BootGUI is set to 0 or 1. But with BootGUI=1 without BootConfig set it will attempt to boot into Windows regardless on which configuration menu you choose.

Gotcha, thanks!

Reply 12 of 53, by Gmlb256

User metadata
Rank l33t
Rank
l33t
keenmaster486 wrote on 2021-09-21, 16:56:

You can use a [COMMON] section in CONFIG.SYS to include the same lines after every menu option.

True, but the only problem is that this part gets loaded first prior the specific configuration menu. For example loading SETVER in [COMMON] and then EMM386 on a config menu won't put SETVER into upper memory.

VIA C3 Nehemiah 1.2A @ 1.46 GHz | ASUS P2-99 | 256 MB PC133 SDRAM | GeForce3 Ti 200 64 MB | Voodoo2 12 MB | SBLive! | AWE64 | SBPro2 | GUS

Reply 13 of 53, by Matth79

User metadata
Rank Oldbie
Rank
Oldbie

I'd be tempted to add a UDMA driver to the set, either Triones or XHDD / XDVD2 for optical, as you can get improved DOS disk performance.
Might also be worth looking at non-EMM386 UMB like UMBPCI if you need to max conventional memory while remaining in real mode.
FASTVID may also be worth a go

Reply 14 of 53, by Sombrero

User metadata
Rank Oldbie
Rank
Oldbie
Matth79 wrote on 2021-09-21, 18:01:

I'd be tempted to add a UDMA driver to the set, either Triones or XHDD / XDVD2 for optical, as you can get improved DOS disk performance.
Might also be worth looking at non-EMM386 UMB like UMBPCI if you need to max conventional memory while remaining in real mode.
FASTVID may also be worth a go

Seem like stuff to mess with later down the line, I better learn the basics and get the thing running first 😀

But thanks for mentioning those, I didn't even know they were a thing and I'm sure I'm going to tinker with them at some point just for the heck of it!

Reply 15 of 53, by jakethompson1

User metadata
Rank Oldbie
Rank
Oldbie
Sombrero wrote on 2021-09-21, 18:19:

Seem like stuff to mess with later down the line, I better learn the basics and get the thing running first 😀

But thanks for mentioning those, I didn't even know they were a thing and I'm sure I'm going to tinker with them at some point just for the heck of it!

Keep in mind that Windows 9x was designed with the intent that you would play DOS games in Windows itself, i.e. without rebooting to DOS. See: http://ptgmedia.pearsoncmg.com/images/9780321 … _bonus_ch02.pdf particularly the ending.

In those cases, you may need no config.sys or autoexec.bat at all, and things like SoundBlaster emulation might work automagically. The main purpose for a custom config.sys/autoexec.bat is if you hit F8 and boot to "command prompt only", or choose the "restart in MS-DOS mode" option. They were also needed for the DOS 6.22/Win3.x timeframe where running a DOS game from inside Windows did not work well.

For Win9x, you would build config.sys/autoexec.bat mainly because you want to run an incompatible game as described in the chapter linked above, or because the game needs a huge amount of conventional memory where you need to be very sparing about what is loaded.

I would recommend picking up the book Running MS-DOS. Looks like AbeBooks has it for about $4. It's how I learned about these exact issues in the actual 90s.

Reply 16 of 53, by Sombrero

User metadata
Rank Oldbie
Rank
Oldbie
jakethompson1 wrote on 2021-09-21, 21:37:
Keep in mind that Windows 9x was designed with the intent that you would play DOS games in Windows itself, i.e. without rebootin […]
Show full quote
Sombrero wrote on 2021-09-21, 18:19:

Seem like stuff to mess with later down the line, I better learn the basics and get the thing running first 😀

But thanks for mentioning those, I didn't even know they were a thing and I'm sure I'm going to tinker with them at some point just for the heck of it!

Keep in mind that Windows 9x was designed with the intent that you would play DOS games in Windows itself, i.e. without rebooting to DOS. See: http://ptgmedia.pearsoncmg.com/images/9780321 … _bonus_ch02.pdf particularly the ending.

In those cases, you may need no config.sys or autoexec.bat at all, and things like SoundBlaster emulation might work automagically. The main purpose for a custom config.sys/autoexec.bat is if you hit F8 and boot to "command prompt only", or choose the "restart in MS-DOS mode" option. They were also needed for the DOS 6.22/Win3.x timeframe where running a DOS game from inside Windows did not work well.

For Win9x, you would build config.sys/autoexec.bat mainly because you want to run an incompatible game as described in the chapter linked above, or because the game needs a huge amount of conventional memory where you need to be very sparing about what is loaded.

I would recommend picking up the book Running MS-DOS. Looks like AbeBooks has it for about $4. It's how I learned about these exact issues in the actual 90s.

Hey thanks for the book recommendation, I intented to ask for recommendations but forgot. And much to my surprise it looks like my local library still has that book for some reason, I'll check it out!

Also while I'm sure many games would work just fine through Windows, I'd still like to maximize compatibility by running them in pure MS-DOS so I wouldn't need to worry about it. Also I would kinda like to keep DOS and Windows "separate", I don't have space for a dedicated DOS PC so I'm trying to get at least some of the experience of having one with that P3 machine.

Reply 17 of 53, by Joseph_Joestar

User metadata
Rank l33t
Rank
l33t

I find multi-select CONFIG.SYS and AUTOEXEC.BAT startup menus messy and confusing. They are also annoying to edit when a change needs to be made or a new driver needs to be installed.

I greatly prefer having multiple PIF files for this purpose. Phil showcases how to make one in this video around the 3:10 mark. Obviously, Phil uses a multi-select startup menu in his example, but you can put anything you like there.

PC#1: Pentium MMX 166 / Soyo SY-5BT / S3 Trio64V+ / Voodoo1 / YMF719 / AWE64 Gold / SC-155
PC#2: AthlonXP 2100+ / ECS K7VTA3 / Voodoo3 / Audigy2 / Vortex2
PC#3: Athlon64 3400+ / Asus K8V-MX / 5900XT / Audigy2
PC#4: i5-3570K / MSI Z77A-G43 / GTX 970 / X-Fi

Reply 18 of 53, by Gmlb256

User metadata
Rank l33t
Rank
l33t

On a DOS configuration with a menu one can group multiple lines to avoid repetition.

For example on CONFIG.SYS:

[MENU]
menuitem=WINDOWS, Microsoft Windows 98 Second Edition
menuitem=DOS1, MS-DOS 7.10 - Expanded Memory
menuitem=DOS2, MS-DOS 7.10 - Extended memory
menuitem=DOS3, MS-DOS 7.10 - Conventional Memory
menudefault=WINDOWS, 5

[COMMON]
FILES=45
BUFFERS=30,0
LASTDRIVE=E
SET TEMP=C:\WINDOWS\TEMP
SET TMP=C:\WINDOWS\TEMP

[HIMEMDOS]
DOS=HIGH,UMB,NOAUTO
DEVICE=C:\WINDOWS\HIMEM.SYS

[SETVER]
DEVICEHIGH=C:\WINDOWS\SETVER.EXE

[DOSINIT]
DEVICEHIGH=C:\DOSPACK\DRIVERS\videcdd.sys /D:MSCD001
SHELL=C:\WINDOWS\COMMAND.COM /E:512 /P

[WINDOWS]
REM Since DOS=AUTO is the default everything essential will be loaded automatically

[DOS1]
INCLUDE=HIMEMDOS
DEVICE=C:\WINDOWS\EMM386.EXE RAM D=64 MIN=0
INCLUDE=SETVER
INCLUDE=DOSINIT

[DOS2]
INCLUDE=HIMEMDOS
INCLUDE=SETVER
INCLUDE=DOSINIT

[DOS3]
DOS=NOAUTO
INCLUDE=SETVER
INCLUDE=DOSINIT

On AUTOEXEC.BAT:

@ECHO OFF
PROMPT $p$g
PATH C:\;C:\WINDOWS;C:\WINDOWS\COMMAND;C:\CTCM;C:\DOSPACK\ORPHINIT;C:\DOSPACK\THROTTLE

goto %config%

:WINDOWS
goto end

:DOS1
:DOS2
:DOS3
REM Add sound initialization here
IF "%config%"=="DOS3" goto NOHIMEM
LH C:\WINDOWS\COMMAND\MSCDEX.EXE /D:MSCD001
LH C:\DOSPACK\DRIVERS\ctmouse.exe /R2
goto end

:NOHIMEM
C:\WINDOWS\COMMAND\MSCDEX.EXE /D:MSCD001
C:\DOSPACK\DRIVERS\ctmouse.exe /R2
goto end

:end

While using PIF files with specialized CONFIG.SYS and AUTOEXEC.BAT or "Restart in MS-DOS mode" is the proper way on Windows 9x, it's much less convenient for me due to having to restart many times. Also Phil's video when doing this with COMMAND.COM will get you less conventional memory (check with MEM /C /P command and you'll see two COMMAND) but not with other executables.

"Restart in MS-DOS mode" has DOSSTART.BAT located in C:\WINDOWS for the mouse driver and sound initialization but one cannot deal with content related to CONFIG.SYS for memory managers.

While most of the DOS programs works within Windows 9x without CONFIG.SYS and AUTOEXEC.BAT like jakethompson1 said, there are some of them that doesn't and must be run in MS-DOS mode.

Last edited by Gmlb256 on 2021-09-24, 12:27. Edited 4 times in total.

VIA C3 Nehemiah 1.2A @ 1.46 GHz | ASUS P2-99 | 256 MB PC133 SDRAM | GeForce3 Ti 200 64 MB | Voodoo2 12 MB | SBLive! | AWE64 | SBPro2 | GUS

Reply 19 of 53, by Sombrero

User metadata
Rank Oldbie
Rank
Oldbie
Gmlb256 wrote on 2021-09-22, 12:17:
On a DOS configuration with a menu one can group multiple lines to avoid repetition. […]
Show full quote

On a DOS configuration with a menu one can group multiple lines to avoid repetition.

For example on CONFIG.SYS:

[MENU]
menuitem=WINDOWS, Microsoft Windows 98 Second Edition
menuitem=DOS1, MS-DOS 7.10 - Expanded Memory
menuitem=DOS2, MS-DOS 7.10 - Extended memory
menuitem=DOS3, MS-DOS 7.10 - Conventional Memory
menudefault=WINDOWS, 5

[COMMON]
DOS=NOAUTO
FILES=45
BUFFERS=30,0
LASTDRIVE=E
SET TEMP=C:\WINDOWS\TEMP
SET TMP=C:\WINDOWS\TEMP

[HIMEM]
DOS=HIGH,UMB
DEVICE=C:\WINDOWS\HIMEM.SYS

[SETVER]
DEVICEHIGH=C:\WINDOWS\SETVER.EXE

[DOSINIT]
DEVICEHIGH=C:\DOSPACK\DRIVERS\videcdd.sys /D:MSCD001
SHELL=C:\WINDOWS\COMMAND.COM /E:512 /P

[WINDOWS]
INCLUDE=HIMEM
INCLUDE=SETVER

[DOS1]
INCLUDE=HIMEM
INCLUDE=SETVER
INCLUDE=DOSINIT

[DOS2]
INCLUDE=HIMEM
DEVICE=C:\WINDOWS\EMM386.EXE RAM D=64 MIN=0
INCLUDE=SETVER
INCLUDE=DOSINIT

[DOS3]
INCLUDE=SETVER
INCLUDE=DOSINIT

On AUTOEXEC.BAT:

@ECHO OFF
PROMPT $p$g
PATH C:\;C:\WINDOWS;C:\WINDOWS\COMMAND;C:\CTCM;C:\DOSPACK\ORPHINIT;C:\DOSPACK\THROTTLE

goto %config%

:WINDOWS
goto end

:DOS1
:DOS2
:DOS3
REM Add sound initialization here
IF "%config%"=="DOS3" goto NOHIMEM
LH C:\WINDOWS\COMMAND\MSCDEX.EXE /D:MSCD001
LH C:\DOSPACK\DRIVERS\ctmouse.exe /R2
goto end

:NOHIMEM
C:\WINDOWS\COMMAND\MSCDEX.EXE /D:MSCD001
C:\DOSPACK\DRIVERS\ctmouse.exe /R2
goto end

:end

While using PIF files with specialized CONFIG.SYS and AUTOEXEC.BAT or "Restart in MS-DOS mode" is the proper way on Windows 9x, it's much less convenient for me due to having to restart many times. Also Phil's video when doing this with COMMAND.COM will get you less conventional memory (check with MEM /C /P command and you'll see two COMMAND) but not with other executables.

"Restart in MS-DOS mode" has DOSSTART.BAT located in C:\WINDOWS for the mouse driver and sound initialization but one cannot deal with content related to CONFIG.SYS for memory managers.

While most of the DOS programs works within Windows 9x without CONFIG.SYS and AUTOEXEC.BAT like jakethompson1 said, there are some of them that doesn't and must be run in MS-DOS mode.

Nice! Though DEVICE=C:\WINDOWS\EMM386.EXE RAM D=64 MIN=0 should be under DOS1 instead of DOS2, right?

I'll replace my drafts with these, I like how these work.