Hi Jim and All, This got me thinking about the startup files a little more. I realized there are several additional factors that were present during their development that are simply no longer relevant.
One such factor was the simultaneous development and adjustments made between the installed config files and those used by the boot media(s). During the initial development and tests, bits and pieces would move back and forth between them adding additional complexity. Plus, the need for developing numerous skews for multiple platforms while developing the installers at the same time. That time has long since passed. The config files that get installed have nothing at all to do with the config files used to boot the various install media. The installer(s) base the config files installed on a decision hierarchy for the detected platform. This means we can simplify the installed config files even further by eliminating the CPU testing in them. At present these are the possible different config files installed. DOSBox - Dummy CFG, Platform specific AUTO. VirtualBox - Platform Specific CFG & AUTO. VirtualBox really doesn’t like the option 1 in the default CFG file, it only provides 4 boot options. Also (at least for me), VirtualBox will lockup when running FreeDOS after a few minutes when FDAPM is not loaded. So, I think “#4 - Safe Mode” should be removed or at lead have FDAPM loaded regardless. 286 - Platform Specific CFG, Default AUTO. (3 boot options, XMS Support, With & Without Drivers) 186 - Platform Specific CFG, Default AUTO. (2 boot options, With and without Drivers) 8086/8088 - Platform Specific CFG, Default AUTO. (2 boot options, With and Without Drivers) All others - Default CFG & Default AUTO (5 boot options) Looking at the current Default AUTO, it is missing a a test for option 3 (No Drivers) when running on a 286. I think the end user will be best served by getting rid of the platform tests in the installed config files. We can simple start with the default CFG & AUTO files. Then reduce/adjust those files for the specific platforms. Only testing for specific boot options and all CPU related items can be static. To the above list of different CFG & AUTO files, the only thing that would change would be custom versions of AUTO files for 286, 186 and 8086/88. And those would only need to be simplified versions of the default AUTO. Starting with the 386+ version you have been working on, we could do this… (I will also be sending a revised version of FDAUTO.TXT with my suggestions) > On Mar 1, 2024, at 7:16 PM, Jim Hall via Freedos-devel > <freedos-devel@lists.sourceforge.net> wrote: > [..] >> @ECHO OFF >> REM - Updated AUTOEXEC file REM - For i386 CPU or better hardware. >> >> REM - set basic environment >> >> set DOSDRV=C: >> set DOSDIR=%DOSDRV%\FREEDOS >> >> path %DOSDIR%\BIN >> if not exist %DOSDIR%\LINKS\NUL goto NOLINKS >> path %PATH%;%DOSDIR%\LINKS >> :NOLINKS >> >> set NLSPATH=%DOSDIR%\NLS >> set HELPPATH=%DOSDIR%\HELP >> >> set TEMP=%DOSDIR%\TEMP >> set TMP=%TEMP% >> >> if "%CONFIG%"=="5" goto END Side note, on VirtualBox this is option 4. >> >> set OS_NAME=FreeDOS >> set OS_VERSION=T2403 >> >> REM - cfgfile and autofile might be deprecated in future >> >> set CFGFILE=%DOSDRV%\FDCONFIG.SYS >> set AUTOFILE=%DOSDRV%\FDAUTO.BAT We can change this to simply… set AUTOFILE=%0 >> alias cfg=edit %CFGFILE% >> alias auto=edit %AUTOFILE% >> Remove this CPU Section! >> REM - detect CPU, load CPU-specific configs >> >> if not exist %DOSDIR%\BIN\VINFO.COM goto ENDCPU >> %DOSDIR%\BIN\VINFO.COM /m >> if errorlevel 3 goto CPU386 >> if errorlevel 2 goto CPU286 >> goto ENDCPU >> >> :CPU286 >> >> fdapm APMDOS >> ctmouse >> >> goto ENDCPU >> >> :CPU386 >> if "%CONFIG%"=="4" goto CPU286 >> {end of removed} if “%CONFIG%” == “4” goto DOSLOW >> lh fdapm APMDOS >> lh ctmouse >> REM lh share >> >> if not exist %DOSDIR%\BIN\DOSLFN.CON goto NOLFN >> lh %DOSDIR%\BIN\DOSLFN.CON >> REM - Add other stuff here once LFN is loaded.. >> :NOLFN >> >> if not exist %DOSDIR%\BIN\CDROM.BAT goto NOCDROM >> call %DOSDIR%\BIN\CDROM.BAT >> REM - Add other stuff here once CDROM is loaded.. >> :NOCDROM >> >> :ENDCPU Moving ENDCPU a little later. >> >> REM - load other configs using external BAT files >> >> if not exist %DOSDIR%\BIN\FDNET.BAT goto NONET >> call %DOSDIR%\BIN\FDNET.BAT >> REM - Add other stuff here once FDNET is loaded.. >> :NONET goto ENDCPU :DOSLOW REM - If we are loading some drivers low, we are probably having REM - Boot problems and may want to skip using FDAPM, LFN, REM - CDROM and NETWORKING. Just load the mouse driver. ctmouse :ENDCPU >> >> if not exist %DOSDIR%\BIN\FDASSIST.BAT goto NOASSIST >> call %DOSDIR%\BIN\FDASSIST.BAT >> :NOASSIST >> I really think “MEM /C /N” should before the welcome message. No drivers or TSRs are loaded by WELCOME.BAT and the amount of memory available will not change. Side note, the message the displays “CD-ROM configured as ?: drive (FDCDX001)” is performed by calling "CDROM.BAT status” which is not present here. Also, when the system does not configure a CD drive (either by boot option omission, or initialization failure), it displays “CD-ROM not configured" if not exist %DOSDIR%\BIN\CDROM.BAT goto NOCDSTATUS call %DOSDIR%\BIN\CDROM.BAT status :NOCDSTATUS >> if not exist %DOSDIR%\BIN\WELCOME.BAT goto NOHELLO >> call %DOSDIR%\BIN\WELCOME.BAT >> :NOHELLO >> >> MEM /C /N I think this should not appear after Welcome to FreeDOS, type Help, etc. >> >> REM - local settings >> >> set BLASTER=A220 I5 D1 H5 P330 >> set DIRCMD=/O:GNE /Y >> set COPYCMD=/-Y >> >> REM nlsfunc %DOSDIR%\BIN\COUNTRY.SYS >> REM display CON=(EGA,858,2) >> REM mode CON CP PREP=((858) %DOSDIR%\CPI\EGA.CPX) >> REM keyb US,858,%DOSDIR%\BIN\KEYBOARD.SYS >> REM chcp 858 >> REM mkeyb UK Not sure about the local stuff being loaded after the welcome messages. Personally, I feel that the very last text presented to the user should be the Cd-Drive letter and the Welcome, help and done processing messages. But, maybe thats just me. Also, I just realized there are no LANG or TZ settings. There are a couple programs that complain when TZ is not set. But, really need the LANG setting and very early in the config. >> >> alias reset=fdisk /reboot >> alias reboot=fdapm warmboot >> alias halt=fdapm poweroff >> alias shutdown=fdapm poweroff >> >> :END > > > > Personally, I'm not a fan of cfgfile and autofile since the user could > always rename FDCONFIG.SYS in favor of using CONFIG.SYS .. but FDAUTO > will still report "Done processing startup files C:\FDCONFIG.SYS and > C:\FDAUTO.BAT" (this is actually printed in WELCOME.BAT). So I've left > a comment in the updated FDAUTO that "cfgfile and autofile might be > deprecated in future". > :-) I personally never use the cfgfile or autofile variables or the cfg/auto aliases. But, using the AUTOFILE=%0 will solve the user file renaming. Changing there "set CFGFILE" to: REM FreeDOS can use CONFIG.SYS. But, it prefers FDCONFIG.SYS. set CFGFILE=%DOSDRV%\CONFIG.SYS if exist %DOSDRV%\FDCONFIG.SYS set CFGFILE=%DOSDRV%\FDCONFIG.SYS should be sufficient to handle renaming of that file as well. > > Jim > Jerome > > _______________________________________________ > Freedos-devel mailing list > Freedos-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/freedos-devel _______________________________________________ Freedos-devel mailing list Freedos-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freedos-devel