operation of all tests depend on the presence or absence of XMS or EMS drivers. In general, if there is no XMS and no EMS driver, then memory will be accessed directly in pseudo-32-bit mode (i.e. with 4 GB selectors but from real code), if there is an XMS/EMS driver, the XMS driver will be used to access memory. The recommended environment is real mode without XMS or EMS drivers (i.e. a clean boot).

Pattern testing and address testing are similar. The pattern test sequentially writes the 18 patterns to memory and reads them back. The address test uses each individual memory location as the pattern data, but otherwise the test functions just like a pattern test.

Base memory is always pattern/address tested in 16-KB blocks. Extended memory, if no EMS/XMS drivers are present, will be tested in blocks of up to 1MB. The contents of the memory is not preserved.

Bus throughput testing is only available for base memory. The test reads memory using a tight REP LODSD loop, not checking the actual data, but looking out for parity errors (from the memory, cache, and interface chips).

Code test is only available for extended memory. The test writes a 1-MB program to memory, switches the CPU to protected mode and runs the program that is in extended memory. This approach tests not only the data cache and fetch of a CPU, but also the code cache and fetch. Exceptions and parity errors are also monitored in protected mode.

RAM, plug in

Levels: 1,2,3. These tests are identical to the RAM, motherboard tests except the RAM on the plug in card is tested.

BIOS

Level: 2 - command line option. This tests the 256k bytes of flash ROM memory. Depending on whether or not checksums are specified on the command line (with -C1xxxx -C2xxxx and - C3xxxx) the test either confirms the checksums specified or just reports the checksums found. If the checksums are unknown, run this test manually once to determine their value, then use these values for regular testing by specifying the checksums reported on the command line when Diag runs. The BIOS is logically divided into three sections named: C-F (BIOS memory C000:0000 to F000:7FFF), Altera (BIOS memory F000:8000 to F000:BFFF), and Boot (BIOS memory from F000:C000 to F000:FFFF).

CMOS

Level: 2. This tests CMOS addresses 010h - 03Fh of the nonvolatile real time clock CMOS RAM with the 18 data patterns, and tests for a correct CMOS checksum.

Upper PC Card

Level: 2. This test uses the Sycard Technology PCMCIA test to check the TI PCI-1130,1131 controller. The controller is checked for I/O signals, VCC and VPP voltages, proper audio signal generation, INPACK number generation, 3.3 and 5 volt operation and other aspects as detailed in the following listing of a typical test result. Please note that during the Audio out test a 1KHz tone should be heard. The Sycard test card is manufactured by Sycard Technology of Santa Clara, California.

18