INSIDE Logo


3. Files and Directories:

Please execute all programs from the INSIDE directory to avoid problems.

3.1. INSIDE.INI (switch list):

INSIDE is configured with a configuration file called INSIDE.INI. This file contains all switches that can be used to configure INSIDE. For all switches, valid values are mentioned. "Boolean" means that a switch can be switched on or off. To switch it on, you can type "On", "Yes", "Y", "True", "T", "1" or "+", to switch it off, type "Off", "No", "N", "False", "F", "0" or "-". All characters behind a semi colon (";") are comments without any influence to the settings.

All entries can be type in upper case in lower case or mixed.

The following error messages can appear when the INSIDE.INI file contains an error:

In this case, check the corresponding line for an invalid value and correct it.

If no INSIDE.INI file is found and can't be created, INSIDE stops with a "Can't create INI file" message. If the environment variable INSIDE is not set, you'll also see a "If you run INSIDE from a CD-ROM or a network drive, try "SET INSIDE=C:\" message.

All switches can be specified at the command line, too. Don't forget to type a slash ("/") in front of each switch. The switches /Page and /PCIVendors can only be specified at the command line. If a switch is specified at the command line, the corresponding switch in the INSIDE.INI file is ignored.

Switch Value Range
Default in [ ]
Function Background Hint
The following switches can only be specified at the command line:
Page 0..27 [0]
(currently, 27 is the last page, see title page)
INSIDE starts on the given page.    
PCIVendors No value If this parameter is passed to INSIDE, it will write a list of all known PCI Vendor IDs to the standard output. The program itself will not be run. The list can also be send to a file or a printer using DOS' pipelining and redirection operations. The PCI Vendor IDs are taken from Ralf Brown's Interrupt List.   Example: INSIDE /PCIVendors > PRN will print the list.
The following switches can be specified at the command line or in the INSIDE.INI file:
Global settings
AnyOS Boolean [off] If on, the Operating System check is skipped, so that INSIDE can be run with a DOS version before 3.0 and with other Operating Systems, but the danger of a crash is very high. Remember that INSIDE uses handles to access files, but DOS 1.x can only use FCBs to do this. This switch is also needed to run INSIDE under Windows, OS/2 etc. DOS Versions before 3.00 and DOS versions 3.00 and higher don't have much in common (A specification of all differences would be too long for this file !). Under Windows, OS/2 etc. INSIDE will probably not run properly and many things will not or not correctly be detected.  
CheckBreak Boolean [off] Implemented for development only.
If on, Ctrl-Break is checked, so that INSIDE can be terminated if there is a loop in the program.
Normally Ctrl-Break check is turned off, because INSIDE should only be stopped by pressing the [Esc] key. Will be always on if the switch Debug is turned on.
Debug Boolean [off] Implemented for development only.
If on, you must press a key before each step of initialisation and it is possible to stop INSIDE during initialisation. Very useful if INSIDE crashes and changes the screen. When running INSIDE with the switch Debug, the program displays all switches that may disable critical tests.
  Turns on CheckBreak and Wait.
Helpfilename File name, may contain drive letter, directory and extension (.HLP).
[ENGLISH]
Specifies which helpfile INSIDE should use. This switch is set by SETLANG.COM.  
LoRes Boolean [off] If on, INSIDE is forced to use 80x25 text mode. Use for laptops, incompatible graphic cards, bad eyes. If INSIDE finds an EGA or VGA, the program switches to 80x43 (EGA) respectively 80x50 (VGA).  
UserMode Boolean [off] If on, INSIDE doesn't change the video mode when it is started. Using this switch, you can run INSIDE in any text mode (e.g. 80x60, 100x40 etc.). INSIDE will most likely use all lines but only 80 characters per line.  
Wait Boolean [off] If on, INSIDE waits after initialization until you press a key. Using this switch, you can read the last messages before the program starts. Will be always on if the switch Debug is turned on.
Page 2 - CPU and FPU
CPUFPU Boolean [on] If off, CPU and FPU detection are disabled. It never happened, but the computer could crash during CPU or FPU detection, because the CPUID command, that is executed on all 80386 and higher CPUs, is a protected command. This could be a problem in V86 mode (QEMM, EMM386, Windows DOS Box, OS/2 DOS Box). According to the c't magazine 12/1994, page 63, CPUID works with EMM386 but not in a Windows DOS box, on our PCs CPUID works in a Windows DOS Box, too.  
CPUReset Boolean [on] If off, CPU reset for CPU detection is disabled.
If on, the CPU reset will occur if your machine is in real mode, the BIOS does not save the reset ID and INSIDE.SYS is not loaded.
On some machines,the CPU reset will not work, some machines save the CPU's reset value. The CPU reset is only executed if the computer is in real mode, if the reset value is not saved, and if the switch CPUReset is not disabled. When a Cyrix processor is detected, INSIDE doesn't execute a reset, too, because these processors can be configured both by soft- and hardware. All settings that have been made by software utilities will get lost when a reset is executed. You should start INSIDE with this switch when you're logged into a network, because otherwise the connection could be destroyed.  
CyrixReset Boolean [off] If off, a Cyrix CPU will never be resetted.
If on, a Cyrix CPU is treated like any other CPU.
Normally, this switch is off, because Cyrix CPUs load their factory default configuration when a reset is executed. This can cause minor or major trouble, my notebook for example refuses all power management functions after reset ID detection.  
ForcedCPUID Boolean [off] If on, CPUID is enabled even if CPUID is not documented and/or the CPU is in V86 mode. Some CPUs can execute CPUID, but the official test for CPUID (bit 21 of EFlags changeable) failes.  
ForcedFBank Boolean [off] If on, checks for an IIT FPU even in V86 mode. The absense of an IIT FPU is detected by an Invalid Opcode Exception, which can't always be caught in V86 mode, so the program may be be aborted unwantedly. This test is only executed on 286-, 386SX/DX- and 486SLC/DLC-based systems, because there are no IIT FPUs for other CPUs.
ForcedRDMSR Boolean [off] If on, clock measuring using the TSC and IDT CPU detection via RSMSR/WRMSR are enabled even in V86 mode. Some V86 managers do not allow access to the MSRs or only to the TSC register. Read the corresponding paragraph about priviledged commands in chapter 2.3 for detailed information.
Note: For IDT CPU detection in V86 mode, both Switches must be on.
ForcedWDMSR Boolean [off] If on, IDT CPU detection via RDMSR/WRMSR is enabled even in V86 mode.
Page 4 - BIOS Services
APM Boolean [on] If off, advanced power management detection is skipped. Bad BIOS implementations could cause a crash. On CPUs prior to 80386, these switches are always off.
PCIBIOS Boolean [on] If off, PCI scan is skipped. On slower machines, that will most likely not have a PCI respective Plug-and-Play BIOS, this test will take several seconds.
PNPBIOS Boolean [on] If off, Plug-and-Play scan is disabled.
Page 5 - Memory
EMS Boolean [on] If off, EMS detection is disabled. All this tests are very reliably, nevertheless incompatible managers may cause the computer to crash.  
EMSPageFrame Boolean [on] If off, EMS Page Frame Address detection is skipped.
VCPI Boolean [on] If off, Virtual Control Program Interface (VCPI) detection is skipped.
VDMA Boolean [on] If off, Virtual DMA Specification (VDS) detection is skipped.
XMS Boolean [on] If off, XMS detection is skipped
Page 9 - More Video
BGI Boolean [on] If off, graphic card detection by BGI is disabled. This page crashed DR-Multiuser-DOS 5.1 during my tests until I disabled detection by BGI. Under DR-Multiuser-DOS and Concurrent Multiuser-DOS this detection is disabled automatically.  
Page 11 - Input and Output
Joystick Boolean [on] If off, the joystick hardware detection is skipped. Far out, there sure is a card which uses the joystick port address for something completely different and will crash the system if it is accessed like a joystick adaper.  
JoyNoise 0..7160 [30] Changes the game port noise threshold. Some game ports with only 2 A/D converters generate noise, i.e. random signals, on the data lines normally used for the B joystick. Calibration: On bottom of the page, the analog values are displayed. Connect a joystick to the game port and move it to upper left corner. Halve the smallest value shown and enter it as the noise value. You may use this switch if you don't want to read something like "Noise on X-Axis" on your screen.
SoundCards Boolean [on] If off, INSIDE will not search for AdLib, SoundBlaster, GUS and MPU-401, no matter if the correspondig switches are on or off.   The Stereo-on-One is nevertheless searched for, because it's not detected as a sound card but as a parallel port device.
AdLib Boolean [on] If off, AdLib detection is skipped. AdLib detection should not have any difficulties, but problems may occur when using special hardware that occupies port addresses $388 and $389.  
SBlaster Boolean [on] If off, the entire SoundBlaster detection is skipped. The detection routine searches port addresses $22x, $24x, $21x, $23x, $25x, $26x and $28x (in this order) for a SoundBlaster card. Other hardware (incompatible sound cards, network cards, special hardware) could cause problems. The SoundBlaster detection routine resets the sound card, i.e. recording and playback are stopped.
SB210
SB220
SB230
SB240
SB250
SB260
SB280
Boolean [on] The SoundBlaster detection is skipped for all base addresses ($210..$260, $280) whose switches are off. Note that there is no possibilty to run a SoundBlaster at Port $270.
SBVer Boolean [on] If off, SoundBlaster DSP version detection is skipped. Unfortunately, not every sound card is as much SoundBlaster compatible as advertising, package, and manual may promise. So, sometimes the DSP Version is just nonsense or your card starts doing strange things.  
SBDMAIRQ Boolean [on] If off, SoundBlaster DMA and IRQ detection are skipped. The detection does not always work without problems. During SoundBlaster DMA/IRQ detection you could hear a short tick from the loudspeakers connected to the SoundBlaster. This tick is normal and will not occur if the switch SBDMAIRQ is disabled.
There will also be no tick, when INSIDE detects a SoundBlaster card with a DSP version number 4.00 or above (SB 16 or better). On these cards, the mixer registers $80 and $81 are read to get information about the IRQ line and DMA channels used. When such a card is found, the switches SBDMAIRQ, IRQ2, IRQ10 and TryDMA0 are ignored. If the values read from the mixer registers are invalid, the normal detection routine for DMA and IRQ is executed.
IRQ2 Boolean [on] If off, IRQ 2 will not be checked during SoundBlaster IRQ detection. Some graphic cards (EGA and VGA) generate an IRQ 2 on vertical retrace. If this happens while detecting the a SoundBlaster IRQ, IRQ 2 is sometimes listed additionally to the real IRQ.  
IRQ10 Boolean [on] If off, IRQ 10 will not be checked during SoundBlaster detection. On PC/XT-style computers this switch is always off. PC/XT-style computers usually have only one IRQ controller (IRQ 0-7).  
TryDMA0 Boolean [off] If on, also try DMA channel 0 during SoundBlaster DMA and IRQ detection. On XT-style computers, this switch is always off. On all XT-style and some old AT-style computers, DMA channel 0 is used for memory refresh. If you are sure that your computer does not use DMA channel 0 for memory refresh (should be mentioned in the mainboard manual respectively the system manual) you can include DMA channel 0 in SoundBlaster DMA detection. Should the computer use DMA channel 0 for memory refresh, you will notice this fact a few milliseconds after the test started: The computer will crash or the system will be halted due to a memory parity error ("Memory Parity Error at ... . System halted." or something like that...).  
ShowDMA Boolean [off] If on, INSIDE displays the DMA counter during SoundBlaster DMA detection. If the DMA countdown does not stop at 0 or 1, but at 2 for example, INSIDE will display DMA: unknown. This switch eventually allows you to see which DMA channel is used by your sound card. The DMA channel with the lowest counter value is most likely the SoundBlaster's DMA channel. This switch has no function if no SoundBlaster card or a SoundBlaster with DSP version 4.00 or above was found.  
GUS Boolean [on] If off, the entire Gravis UltraSound detection will be skipped. The Gravis UltraSound card occupies port addresses that could also be occupied by other hardware, e.g. XT harddisks or network adapters (especially NE2000s and clones). For GUS detection, this port addresses are searched, the detection happens by direct write access to the GUS' I/O-mapped memory. You can never predict what happens if other hardware than a GUS is accessed in this way (NE2000s use to crash the system). The detection routine uses ports $100 above the base address, besides the port $506 above the base address is read. GUS200=Off protects the ports $300..$30F and $706. To protect a network adapter on $340 you must disable GUS240. Possible port addresses for network cards can be found in the NETCARDS.HTM file.
GUS200
GUS210
GUS220
GUS230
GUS240
GUS250
GUS260
GUS270
Boolean [on, GUS270=off] The GUS detection is skipped for all base addresses ($200..$270) whose switches are off.
MPU Boolean [on] If off, the entire MPU-401 detection is skipped. The MPU-401 card/emulation occupies port addresses that could also be occupied by other hardware, e.g. XT harddisks or network adapters (especially NE2000s and clones). For MPU-401 detection, this port addresses are searched, the detection happens by direct write access to the MPU-401's I/O ports. You can never predict what happens if other hardware than a MPU-401 is accessed in this way (NE2000s use to crash the system). Possible port addresses for network cards can be found in the NETCARDS.HTM file.
MPU300
MPU310
MPU320
MPU330
MPU340
MPU350
MPU360
MPU370
Boolean [on, MPU370=off] The MPU-401 detection is skipped for all base addresses ($300..$370) whose switches are off.
LPTPort Boolean [on] If off, INSIDE will not access the parallel port hardware, i.e. StOn1, PS2LPT and LPTLoop are regarded as off. Software using a parallel port data transfer cable (e.g. LapLink, Interlink, Norton Commander Link, PC Tools Drivemap, PIPX and Windows 95) and parallel port hardware like printers (especially ink jet and laser printers), network adaptors, external CD-ROM drives, external harddisks, external streamers, external modems, external ISDN adaptors and dongles could regard the test as a command and could behave abnormal. Possible results of such behaviour: nonsense printed on your printer paper, interrupted connections (good luck ...), deleted harddisks, destroyed parallel ports or parallel port devices (... bad luck).  
StOn1 Boolean [on] If off, Stereo-on-One detection is skipped.
PS2LPT Boolean [on] If off, detection of PS/2 compatible parallel ports is skipped.
LPTLoop Boolean [on] If off, parallel port IRQ detection via loopback plug is skipped.
COMPort Boolean [on] If off, INSIDE will not access the serial port hardware.   COMIRQ is turned off automatically if this switch is off.
COMIRQ Boolean [on] If off, serial port IRQ detection is disabled. In a Windows or OS/2 DOS box, INSIDE crashes during IRQ detection, in a DOS session, problems with mouse, modem, or other serial devices could occur. Under Windows and OS/2, the IRQ detection is always off.  
Page 13 - APPEND and SETVER
AltAppend Boolean [on] If off, alternative APPEND path detection is disabled. If the APPEND path cannot be found out using function $B704 of interrupt $2F, the alternative function $B701 of interrupt $2F is used. According to Ralf Brown's Interrupt List Release 47, only "Microtek MS-DOS 3.21" supports this function. DOS versions 3.00 to 6.00 display "Incorrect APPEND Version" and stop the execution of the actual program. On my PC with MS-DOS 6.22, the call stops after an "Incorrect APPEND Version" report. Windows 3.11 for Workgroups on MS-DOS 6.22 reports a "General Protection Violation", OS/2 Warp 3 reports that the user tried to use an incorrect APPEND version and stops the program. If INSIDE should suddenly stop (e.g. on page 13 with a report about an incorrect APPEND version) without clearing the screen, one should reset the system as fast as possible, because the Borland Pascal Runtime Library changes many interrupt vectors that are important for the system and does not restore them if the program is not regularly terminated.
Page 15 - Multiplex Interrupt $2F
Int2F Boolean [on] If off, INSIDE will not detect any program using the interrupt $2F (multiplex interrupt). Some programs use the interrupt $2F in a very strange way, which may make the system crash. To avoid a huge list of round about 65.000 switches, I simply decided to disable all access to INT $2F except for standardized calls.
DiskHandler Boolean [on] If off, INSIDE will not read the Disk Handler Address (function $1300 of Int $2F). If this switch is on and you use a virus protection software, it should display at least the warning message that a program tried to change this vital part of the system. If your protection software keeps quiet, replace it immediatly. The technique that is used to detect the Disk Handler Address is commonly used in many virus programs.  
Page 16 - Alternate Multiplex Interrupt $2D
AMIS Boolean [on] If off, INSIDE will not detect any program using the interrupt $2D (Alternate multiplex interrupt specification - AMIS).   If INSIDE detects RM386 version 6.00 or above and the CPU is in V86 mode, this detection is automatically skipped, because versions 6.00-6.02 of RM386 contain a bug that causes a system crash when interrupt $2D is called in V86 mode.
Page 23 - Drive Parameters
Int25 Boolean [on] If off, INSIDE will not call interrupt $25 (Absolute Disk Read). Some DOS versions implement this routine incomplete or malfunctioning (DR-DOS 3.41), so that an access causes a crash. Under OS/2 this access is automatically turned off.  
Page 24 - CMOS Memory
CMOS Boolean [on] If off, INSIDE does not access the CMOS registers on ports $70 and $71. On XT-style computers, this switch is always off.    
Page 27 - MS-DOS 7 and Windows 95
MSDOS7 Boolean [on] If on, the undocumented API of COMMAND.COM is used to detect name and parameters of the primary COMMAND.COM.    

Boolean values

Values accepted as OFF: Values accepted as ON:
OFF
0
(zero)
N
NO
F
FALSE
-
(minus)
ON
1
(one)
Y
YES
T
TRUE
+ (plus)

You may mix upper and lower case.

3.2. INSIDE.SYS:

The INSIDE.SYS device driver tries to find out and save the CPU's reset ID for a better discrimination of the CPU. The reset can also be executed when INSIDE starts, but this works only if the computer is in real mode, i.e. when no memory manager like QEMM, EMM386, 386MAX etc. was loaded before.

Syntax: Device=[<drive>:][\<path>\]INSIDE.SYS [</parameters> [...]]

The driver only occupies 96 bytes of conventional memory, MS-DOS doesn't allow less (approx. 50 Bytes would be necessary). The driver should be loaded as first DEVICE in the CONFIG.SYS file. It needs at least an 80386-style CPU in real mode to load. The driver is only loaded once even if you try to load it several times. If your computer's BIOS supports the function $C9 of interrupt $15, the driver will not be installed. You should try the device driver with a boot diskette first.

To bypass the driver in case of malfunctions in order to remove it from the CONFIG.SYS file afterwards, you can press and hold the [Ctrl] key or press the [Scroll Lock] key while the computer is booting. The driver will ask if it should be loaded or not.

Parameters for INSIDE.SYS:

3.3. SETLANG.COM:

Execute SETLANG.COM to select the language of the help file INSIDE uses. SETLANG.COM must be executed in the INSIDE directory.

3.4. BOOTDISK.BAT:

Using this file, you can create a boot diskette for INSIDE. BOOTDISK.BAT must be executed in the INSIDE directory.

3.5. ADDISYS.EXE:

Execute ADDISYS.EXE to add INSIDE.SYS to the CONFIG.SYS file on the A: or C: drive or change INSIDE.SYS's parameters.

3.6. Other files:

*.HLP
INSIDE's help files. Note: These files are not Windows-style help files although Windows shows the corresponding symbol for these files.
FILE_ID.DIZ
File description for mailboxes.
README.TXT
You should have read this file.

3.7. Files in the MANUAL subdirectory:

INDEX.HTM
Cover page of the documentation
other *.HTM
The documentation itself
*.GIF
The pictures for the documentation

3.8. Environment variable INSIDE:

The environment variable INSIDE can be set if not all files are in the same directory as the main program. Internally, the directory that contains INSIDE.EXE (DOS 3+) and the actual directory are joined, so if INSIDE is not set, the directory that contains INSIDE.EXE and the actual directory are used. This "Search Path" is displayed very early while INSIDE starts. This search path is searched for the INSIDE.INI file and the help files.

When a new INSIDE.INI file is created, the search path is scanned from left to right until an INSIDE.INI file can be created. You can mention several directories in the environment variable, each one separated by a semi colon (";"). If only a drive letter ("X:") is mentioned, the root directory of that drive (X:\) is used. You can join a back slash ("\") to the directory names but it's not necessary.


Documentation: Copyright © 1997 by Hendrik Foken
Program: Copyright © 1997 by Alexander Foken