Main Index for 3D Merriman
To IndexWeb design tipsArt Gallery with it allFuture News
How to PhotographyTo Computer IndexTo things we lovePlease
A DOS Boot Menu Can Resolve
'Impossible' conflicts Between
IRQ, DMA, and I/O addresses
Simplified version of this page for
Win95/98/00 to interlink to an older computer
This is mainly 
for Windows3.1 
This is the  
Long Version. 
Simplified version 
of ths page.
How would you like to get all those pieces of equipment tuned up and working properly in a computer? With DOS 6.0+, and Windows3.1, and even Windows 95/98/00, there is a way to have it boot [up] with any configuration you want.  It's like having a computer to run that favorite old scanner, and another for that special game (without network drivers), and another one doing the big jobs.  Its free and it only takes a few minutes of work to set up.  
(Warning, do not multitask when using interlink or alter long file names at all)!  Interlink is emulating a 12 bit FAT floppy and converting it to 16 bit FAT and converting that to 32 bit FAT for transfers.  It can easily get confused and corrupt the low level formatting and/or boot sector,  rendering the HD useless.)  About all you can do is play minesweeper if you want to do something while it is working to transfer files at 238kbps. 
What 
are 
drivers? 
Example starts in item #10.  
The PC is a big box of parts. It takes software to make the computer operate with different hardware.  "Drivers" connect the software to the hardware. 
Why  
have  
 
boot  
menu?
Drivers load into memory in the Config.sys and Autoexec.bat and remain there as a TSR (Terminate and Stay Resident). They wait for you to use that particular hardware "device". The command line loading  the driver into memory is a .sys or .exe file, which includes options the device will use. These options look like "/switches" added to the line. These options often, (before Win95), correspond to physical 'jumpers' on the card. Options or "/switches" direct the device to use a certain IRQ, DMA and I/O port to connect with the CPU. *No* device can use the same IRQ, DMA or I/O port address which another device is using, and certainly not at the same time. Crashes caused by a conflict have slightly different symptoms depending on which item was in conflict. 
F8 Tip: Pressing F8 on bootup gives you the choice of bypassing the loading of individual start up files in any computer. Then in Windows 95/98, choose "Step by step configuration".
What  
can  
 
boot  
menu  
do?
A boot menu can load conflicting drivers at different boot times to prevent crashes. In the following example an old scanner and sound card both want to use IRQ5. If run simultaneously, it will cause the computer to lock up. The boot menu will boot up the scanner or the sound card or interlink. Once you learn to make a boot menu from this simple example, there is no limit to the amount of tuning and tweaking you can do with it. 
Lets  
make  
 
boot  
menu
Refer to the DOS 6+  manual for more information on Boot Menus and Batch file programs.... In this example the culprit device is a scanner, your menu may deal with a game or any other inharmonious device. When your system boots, it will pop up with a menu of the great stuff you want. So where it says "scan" , substitute "game", "Joe", "MIKE" or whatever you want. 

If you are not using Windows 95/98, skip the next (#1) topic.

For  
Windows 95  
/98/00
Back up your registry. 
When using a boot [up] menu for Windows 95/98 you will be able to eventually  remove the associated "virtual" drivers from the "Hardware Profile".  This is done in  Start | Settings | Control Panel | System | Hardware Profiles. First, copy the "Original Configuration" and , then rename the second copy to whatever name  might indicate the difference for what you want to boot with. Remove conflicting drivers from this extra profile.  This trick can also be used for diagnostic purposes, which can be switched back to the normal "hardware profile" on boot up. 

This extra "Hardware Profile" also  makes Windows 95/98 stop during boot up and present you with its own menu choices. 
Notice that Windows 95/98 loads all drivers as virtual drivers when it needs them.  There is not much in the Config.sys or Autoexec.bat. of Windows 98 except the CD-ROM driver in the Config.sys and Mscdex.exe in the autoexec.bat.. (as it used to be) 

Tip: For DOS Games, remove the Win start up command from the autoexec.bat. 

In order to make extensive changes to Windows 95/98 you will probably need to refer to documentation such as the "Program Developer's" CD and book.  But, our little DOS menu will work for most single items.

#1 As a preliminary safety measure, first make an extra copy of your important boot files. Put them on a "boot diskette". Make a boot diskette. Using a blank diskette in drive a:, type, "format a: /s" at the C:\> prompt. Now, copy your present config.sys and autoexec.bat to the boot diskette.  At the C:\>prompt, Type "copy config.sys a:". and  "copy autoexec.bat a:" Now, if something goes wrong, they can be copied back to C:\, and everything will be as it was. 
#2 Start adding a menu by Typing at the C:\>prompt  "EDIT CONFIG.SYS. 
At the first line, put the word [menu] and include the brackets. Now your menu will pop up when booting.  Tip: a great diagnostic feature of DOS is that you can press F8 at boot, then bypass any errant files or mistakes you might have made.  An example of the config.sys is item #10. 
#3 Lets call the items in our menu "regular" for normal every day work, and "scan" for running the scanner, and "link" for interlink to an old 486. So, on the next line of the config.sys put "menuitem=regular". and on the next line put "menuitem=scan", the next line "menuitem=link", without the quotes. If you do not which to make a choice every time the system boots, the computer can choose a default automatically. With the following command, the computer will wait 9 seconds, for you to press a key, then it will go ahead and choose "regular" for you. Put the command for this: "menudefault=regular ,9"
#4 ***Exclusive; Undocumented anywhere else*** When making a menu with many different options, or on different computers, I forget what "regular" means. I can add more description for the menu to display after a ";" semicolon. The menu will display your description as a choice, but follows , the item named "regular" in the program. The descriptive choice is only for display. So after a "menuitem" put a space then a ";" (semicolon) then put the description you want it to display for your choices. It can also be be added to your menu later.  Here is an example of what it could display for "regular". The complete command line to make it display more description is: "menuitem=regular ;Regular is CD and Sound for DOS". Likewise "scan" could say; "menuitem=scan ;Scan+RAM+DMA No_sound or CD 
Tip: To prevent commands from loading and taking effect in the config.sys and autoexec.bat. Precede the line with a "rem", they will become remarks or comments. Similarly, any Windows .ini file entry can be remarked out by preceding the line with two ";;" semicolons then a space.
#5 That's a start in choosing different items to boot up. What about all the other stuff that has to load in the config.sys and autoexec.bat? There is a nifty item called [common] to take care of all the usual items that need to be loaded. [common] items can be placed anywhere in the menu. Placing [common] stuff in the first and last areas are the least confusing to me.
#6 On your new menu, put [common] and on the lines under that, put the items which stay the same on each boot. For instance [common] then some lines might say: device=c:\dos\himem.sys and "share" etc.
#7 When you want computer start up options to be different for the scanner put them under the item: [scan] These lines might include: device=c:\dos\emm386.exe 3072 ram d=64 /v ...These emm386.exe memory manager options insure the scanner will have 3 MB minimum RAM with a DMA buffer of 64k. Emm386 also provides the older EMS (exPanded memory) with Page frames. Oh, and load the scanner driver here too with a line like: devicehigh=c:\scan\marstek.sys /1 /c3 
#8 Put [regular] then the normal options you want that are different from the "scan" and "link" boot. Load the CD-ROM drivers and the sound card stuff that wouldn't work properly at the same time as the scanner. You can also load emm386.exe with different memory options.  In this case put: device=c:\dos\emm386.exe noems . Devices and programs can load "high" into the upper memory area, but are not provided with old EMS memory. 
#9 For Win3.1 and DOS, be sure to put all the rest of the [common] stuff; including, but not limited to: dos=high, dos=umb, files=60, buffers=20,0, lastdrive=Z, stacks=9,250, etc.. and a shell command such as: 
shell=c:dos\command.com c:\dos\ /e:1024 /p
#10 

Example

Here is an example of the config.sys.. 
Yours will be different! Leave out the extra spaces between the lines and leave out the "(descriptions)". 

[menu] 
menuitem=scan ;SCAN+RAM+DMA-No_CD    Turn Scanner On! 
menuitem=regular ;Regular is CD and Sound for DOS 
menuitem=link ;Interlink     Warning, do not multitask. 
menudefault=regular ,9 

[common] 
(Put all the usual stuff that boots up the same every time under common, as per #6.) 

[scan] 
device=c:\dos\emm386.exe 3072  RAM D=64 /V 
devicehigh=c:\scan\marstek.sys /1 /c3 

[regular] 
device=c:\dos\emm386.exe NOEMS 
devicehigh=c:\fus\mvsound.sys D:7 Q:7 S:1,220,1,5 M:0 J:1 
devicehigh=c:\mtm\mtmcdia.sys /d:mtmide01 
(Thats any stuff that is different from the "scan" and "link" boots) 
[link] 
devicehigh=c:\ interlnk.exe /lpt:1 /drives:3  ....(or more) (or on serial  cable).  (Be sure to copy DOS 6.2x interlnk.exe and intersvr.exe to the root of c:\ drive on both machines.) 

[common] 
(Put any more of the usual stuff that stays the same, as per #9.) 

Half of the battle is finished, save the config.sys... 
Now we have to edit the autoexec.bat file and insert instructions that will correspond to the config.sys instructions. 
Example in #14 .

Now, 
on 
to 
the 
Autoexec.bat
Batch files (.bat) execute each command in order, just like if you had typed them in at the "C:\>" prompt. If you need help, refer to the DOS manual for instructions about using batch file programs. For help with a batch file command such as "choice", type "help choice" at the "C:\>" prompt.  Plus batch files have a few extra commands for making decisions, such as "IF" and "Choice", then they branch to a label. Labels always start with a ":" colon. The batch file then continues to process each instruction. 
#11 Lets keep it simple, and not change your original  autoexec.bat any more than is necessary.  When adding  a menu, the autoexec.bat continues processing instructions normally as it did before. The top part of the autoexec.bat should stay the same and contain all the usual common stuff.  If you have a line(s) that needs to be different for the "scan" or "link" part of the menu, move it to the bottom.  For instance, move the line(s) that are needed to make the scanner work to the bottom. Then, move the line(s) needed to make the sound and CD (second choice) work below that, to the *very* bottom.
#12 The autoexec.bat will execute all the (usual) common stuff first. Then we want it to branch to any "menuitem" whcih is different. The "menuitem" that was chosen in the config.sys is now called a label and is carried over and contained in the variable %config%. After the common stuff and before the scan and interlink stuff, insert a new line with the command: goto %config%. Then 2 more lines with a the label :scan and :link.  This new action command will branch to the label ":scan" or ":link" if that was chosen at boot up from the menu in the config.sys. 
The autoexec.bat will execute all the commands after skipping to the :scan or :link label. After processing any lines necessary to make the scanner, or interlink work, we want it to skip down and not process the sound and CD stuff too. So, on another line after the scanner stuff, put: goto same.
#13 After the scanner stuff and before the sound stuff, put a label for :regular. Then, put all the commands which are necessary to start the sound and CD. If "regular" was originally chosen. The "goto%config%" will skip all the scanner stuff and go here. After that, it can have an optional "goto same" command too. If batch files branch, always put an ":end" label on the end.
#14 

Example

First, put all the usual things needed in the autoexec.bat here. Then put the changes that might be added to make it work in conjunction with the menu in the config.sys. (goto%config%, branches to :scan or :regular.) 

Put all the usual stuff here like path etc... then: 

goto %config% 
:scan  
(Put any commands that need changing for the scanner to work most efficiently. Or, just a remark. Or if not necessary,  not even have a "goto %config%" in the autoexec.bat  Tip:  To skip smart drive or any other item, put "goto end".) 
goto same 

:regular 
lh c:\dos\mscdex.exe /d:mtmide01 /e /l:d /m:10 /v   (Loads the CD-rom extensions, which are not used at the same time as the scanner) 
set blaster=A220 D1 I5 T3 
goto same 

:link    (on smaller HD and older 486). 
c:\intersvr.exe 
(Warning, do not multitask at all, as each computer is treating the HD as a floppy.  It can corrupt the low level formatting and/or boot sector,  rendering the HD useless.) 
goto same 

:same 
c:\dos\smartdrv.exe 2048 1024 .  Tip:  Smartdrv following mscdex.exe will cache the CD read data too. 

echo Type Win for Windows (Windows 3.1) 
:end 

Give Yourself a Star 
Now you 
are a 
programmer.
With interlink, on both machines connected by a parallel cable, file manager "Explore.exe" will show all the drives. You may need to move 
the drive letter assigned to the CD-ROM to an unused drive letter.  It is done in the config.sys. Check your CD_ROM installation instructions. 
 For your next challenge, choose something simple, like building a space shuttle in your back yard.
Simplified version of this page
To IndexWeb design tipsArt Gallery with it allFuture News
How to PhotographyTo Computer IndexTo things we lovePlease