Why Games Do This

NEWS FLASH!

STOP!! I have been informed by a friend, why this happens exactly!. Apparently the game comes with it's own configuration files which it temporarily replaces theirs with the ones already on the computer, only for the game. But sometimes it does not reverse the replacement.

To make it much easier to understand, I will insert the description Mr.Paul Wilkins sent me.

START QUOTE

Well I can explain what windows does when you run a program with a customised CONFIG.SYS and AUTOEXEC.BAT (hereafter known as Custom Config).

When you choose to run a program with a Custom Config, (we'll use FILE.EXE here, with FILE.PIF being the Program Information File for it), windows does the following:

  • [Dialog Box] This program is set to run in MS-DOS mode and cannot run while other programs are running. All other programs will close if you choose to continue. Do you want to continue?

On a Yes answer, windows is closed down and then windows does the following:

  1. Renames CONFIG.SYS and AUTOEXEC.BAT to CONFIG.WOS and AUTOEXEC.WOS (WOS = Windows Operating System)
  2. From FILE.PIF windows creates new CONFIG.SYS and AUTOEXEC.BAT files.
  3. Onto these new custom config files, windows adds to
    • The start of CONFIG.SYS
        DOS=SINGLE
    • The end of AUTOEXEC.BAT
        REM
        REM The following lines have been created by Windows. Do not modify them.
        REM
        C:
        CD C:\PATH\
        CALL C:\PATH\FILE.EXE
        C:\WINDOWS\WIN.COM /W
  4. Brief part about the CALL statement.
    It's used for when one batch file calls another (possible) batch file. (*.BAT files)
    Normally when batch file 1 runs batch file 2, the execution of code finishes at the end of batch file 2.
    If CALL is used to run batch file 2, then the execution of code is returned back to batch file 1 after batch file 2 is finished.
  5. Reboot
  6. On startup, windows checks for the existence of the file CONFIG.WOS
    If it doesn't exist, it shows Starting Windows 98... but if it's there, it shows Windows 98 is now starting your MS-DOS-based program.
  7. Execution of Custom Config files.
  8. After running the FILE.EXE, the next line after that, C:\WINDOWS\WIN.COM /W, windows will check to see if FILE.EXE successfully finished. (I think the error level, the exit code, is checked, but I'm not sure on this - see the help for the IF and CHOICE commands for more about error levels)
    If it didn't finish successfully, then Press Any Key To Continue is shown so you can break out of the AUTOEXEC.BAT to modify the custom config files as you wish.
  9. If FILE.EXE finished fine, windows restores the system back to how it was before you ran the program.
    It removes the added to the CONFIG.SYS and AUTOEXEC.BAT, then modifies the FILE.PIF file with the updated custom config files.
    The reason for this is so that when you have the Custom Config files modified properly as you want them, you will not have to make those same Custom Config changes to the program properties yourself. Windows does this for you.
  10. All that's left now is to rename the CONFIG.WOS and AUTOEXEC.WOS files back to CONFIG.SYS and AUTOEXEC.BAT, then the computer is rebooted ready for Windows again.

END QUOTE

So there we have it, thank you Paul. So from this info, you can see what I did to solve the problem, and from Paul's excellent example and explanation you can see why all the trouble was caused and how to solve it. So I would definitely follow Paul's advice.