GENWiki

Premier IT Outsourcing and Support Services within the UK

User Tools

Site Tools


archive:programming:biosdiag.man

1.0 Power on self test functions

On cold boot or hard reset AMI BIOS performs system diagnostics and initialization operations which can be broadly classified into the following :-

      Processor register test

      ROM BIOS checksum check
      Keyboard controller test
      CMOS Shutdown register test
      Channel 2,1,0 timer test
      Memory refresh test
      Base 64KB RAM test
      CACHE memory test
      CMOS battery, options set, checksum check
      Display type verification
      Entering protected mode
      Address line test and memory size finding 
      Conventional and Extended memory test
      DMA controller test
      Keyboard test
      System configuration verification and setup

1.0.1 Processor register test..

Procedure..

All processor registers are loaded with values 05555h, 0aaaah, 0cccch, 0f0f0h and checked if they retain the values.

Possible errors..

error: Registers do not retain the values Action: 5 short beeps in an infinite loop. System does not

      proceed further.

1.0.2. ROM BIOS Checksum check..

Procedure..

Word addition of the BIOS ROM starting at F000:8000h till F000:FFFEh is taken. The word addition (checksum) should be 0.

Possible errors..

error: Checksum is nonzero action: 9 short beeps in an infinite loop. System does not

      proceed further.

1.0.3. Keyboard controller test..

A keyboard controller BAT command is issued(command 0AAH) and the response is checked. Response should be 55H.

Possible errors..

error: Return value <> 55H action: 6 short beeps issued in an infinite loop. System does

      not proceed any further.

1.0.4. CMOS Shutdown register test..

Hex value 55h is written into and read back from CMOS shutdown register 8fh. The value read back should be 55h. The same test is then performed with a hex value 0AAh.

Possible errors..

error: Values read back not same as values written. action: Error "CMOS INOPERATIONAL" is registered and the system

      will stop after the display is initialized with the
      above error displayed on the screen.

1.0.5. Channel 2,1,0 timer test..

A. Channel 2 timer test..

Procedure..

Channel 2 timer gate and speaker is disabled and the gate bit is verified to see if the gate is still disabled.

Channel 2 timer is programmed for 2 byte count. A test value of 55h is written to high byte and AAh to low byte of channel 2 timer. Since the timer gate is disabled it should retain these values.

Possible errors..

error: channel 2 timer gate is still enabled action: Register "CH-2 timer error" to be displayed before

      system boot.

error: The channel 2 timer does not retain the 55h,AAh written

      to it.

action: Register "CH-2 timer error" to be displayed before

	system boot.

B. Channel 2, Channel 1 and Channel 0 delta count test..

Procedure..

Select channel 2 timer and load with count data 0ffh. Wait for a predefined time. Read channel 2 timer value and check if the difference between the data written and read is within the tolerance limit. If the operation is successful, try the same with count data 0cch.

Do the same operations on channel 1 and channel 0 timer in the same order.

Possible errors..

error: Channel 2 timer is not counting at all action: Register "CH-2 timer error" to be displayed before

	system boot.

error: Channel 2 timer in not counting properly. The delta

	diference is not within tolerence limit.

action: Register "CH-2 timer error" to be displayed before

	system boot.

error: Channel 1 timer is not counting at all. action: 4 beeps and system halted.

error: Channel 1 timer count is not within tolerence limit. action: 4 beeps and system halted.

error: Channel 0 timer is not counting at all. action: 4 beeps and system halted.

error: Channel 0 timer count is not within tolerence limit. action: 4 beeps and system halted.

1.0.6. Refresh test…

Procedure..

Enable channel 1 (Refresh) timer and channel 0 (System timer). Test refresh signal changing from low-to-high and high-to-low with time out count of 0ffffh.

Wait for refresh signal to be high. Use counter 1 to count till refresh becomes low. Use counter 2 to count till refresh becomes high. The difference between counter 1 and counter 2 should not be more than 6.

Possible errors…

error: A time out has occured while testing refresh

	low-to-high and high-to-low.

action: 1 beep in an infinite loop and system does not proceed

	further.

error: The difference between counter 1 and counter 2 is more

	than 6.

action: 1 beep in an infinite loop and the system does not

	proceed further.

1.0.7.Base 64KB RAM test…

Procedure…

On first 64kb of memory do a Address test, Sequential data write & read test, Random data write & read test. After all tests are over read the parity port for any parity error which could have occured during the tests.

Possible errors…

error: Error in address line test action: 3 beeps in an infinite loop and system does not proceed

	further.

error:: Error in sequential data write & read test action: 3 beeps in an infinite loop and system does not proceed

	further.

error: Error in random data write & read test. action: 3 beeps in an infinite loop and system does not proceed

	further.

error: A parity error has occured during the tests. action: 3 beeps in an infinite loop ands the system does not

	proceed further.

1.0.8. Cache memory test…

A. Check the presence of cache memory

Procedure..

Disable cache memory

Take timing to read 32kb memory 9 times and take the minimum value

Enable cache memory

Take timing to read 32kb memory 9 times and take the minimum value

If the minimum value of timing taken with cache on is greater than minimum value of timing taken with cache memory off, then indicate in global data area that cache memory is not present.

If cache memory is found present then with cache on test 32kb of memory.

Possible errors..

error: Error in testing cache memory action: Register "CACHE MEMORY BAD, DO NOT ENABLE CACHE" error

	to be displayed on the screen.

B. Test 64kb cache memory

Test 1st 32kb cache memory

Test 2nd 32kb cache memory

Possible errors..

error: Error in either 1st or 2nd 32kb cache memory test. action: Disable cache and register "CACHE MEMORY BAD, DO NOT

	ENABLE CACHE" error to be displayed on the screen.

1.0.9. CMOS battery, options and checksum check…

Read CMOS status register (8dh) and check if battery power is on.

Read CMOS diagnostic byte and check if CMOS options set. If CMOS battery power is ok and options set then calculate CMOS checksum for CMOS registers 10h thru 2dh by a byte addition to a word result. Read the checksum word stored in registers 2eh and 2fh and compare it with the calculated checksum.

Possible errors..

error: CMOS battery state is low error. action: Register "CMOS battery state low" error to be displayed before

	system boot.

error: CMOS system options not set error. action: Register "CMOS system option not set" error to be displayed

	before system boot.

error: CMOS checksum mismatch action: Register "CMOS checksum error" to be displayed before system

	boot.

1.0.10. Display type verification…

A. finding out Display type

Procedure..

Get display switch setting.

If display switch mono then segment b000h else segment b800h.

Do a display memory sequential write and read test on 4kb of memory.

If display memory write and read test ok then do a horizontal and vertical retrace test.

If memory test ok and all retrace test ok then leave the mode of display to what ever is tested and go to check CMOS display type.

If memory test error or any retrace test fails then try the other mode. In other words if you had color try mono and if you had mono try color.

Do a memory test with the new mode.

Do horizontal and vertical retrace with the new mode.

If memory test ok and all retrace tests ok then leave the mode of display to whatever is tested and go to check CMOS display type.

if memory test error or retrace test error with the new mode then give one long and 8 short beeps and continue after setting the final mode to mono.

Possible errors..

error: memory test error with new mode set action: 1 long beep and 8 short beeps

error: retrace test failed with new mode action: 1 long beep and 8 short beeps.

B. Check CMOS display type and display switch setting

Check the final mode set after finding out display type with the display switch setting on the motherboard and the display type set in the CMOS by the user.

Possible errors..

error: Display switch setting on mother board is not same as what BIOS

	finds out.

action: Register "Display switch setting not proper" error to be displayed

	before system boot.

error: Display type set in CMOS is different from what BIOS has found

	out.

action: Register "CMOS display type mismatch" error to be displayed before

	system boot.

1.0.11. Entering protected mode…

Procedure..

Get into protected mode using BIOS interrupt 15h function 89h.

Possible errors..

error: Processor not in protected mode action: Display "8042 GATE-A20 ERROR, SYSTEM HALTED"

error: Virtual mode exception error action: 7 beeps in an infinite loop. System does not proceed

	further.

1.0.12. Address line test and memory size finding..

Procedure..

Write a test pattern at 0:0h

Starting from bottom of the conventional memory space (640kb boundary) do a address line test 64kb at a time and come down till there is a segment where address line error is not found. That will be the bottom of the conventional memory.

Now read back the test pattern at 0:0h. This should be same as the test data written at 0:0h before the test was performed. If the test pattern at 0:0h is overwritten then there is a address line error because while doing address line test, the addresses are generated in such a way that only one bit is set in the address line everytime. If there is a failure in that bit of address line then the address generated will be 0. So the data written at that address will actually be written at 0:0h.

Write a test pattern at 0:0h.

Starting from the bottom of the Extended memory (16MB boundary) do a address line test till there is a segment where address line error is not found. That will be the bottom of extended memory.

Now read back the data at 0:0h. This should be same as the test data written at 0:0h before the test is peformed

Possible errors..

error: Test data at 0:0h is destroyed while trying to find out

	the conventional memory size.

action: 3 beeps in a loop and system does not proceed any

	further.

error: Test data at 0:0h is destroyed while trying to find out

	the extended memory size.

action: 3 beeps in an infinite loop and the system does not

	proceed further.

1.0.13. Conventional and Extended memory test..

Procedure..

Clear all the conventional memory 64kb at a time by filling it with 0.

Clear all Extended memory 64kb at a time by filling if with 0.

Starting from 2nd 64kb in conventional memory space do the following 64kb at a time for the size of conventional memory found in step 13:-

IF <ESC> is pressed

skip all test 
Fill the 64kb memory with 0.
Go back to real mode
Display memory size tested so far
Go back to protected mode

ELSE

Do a Sequential Write and Read test

Do a Random Write and Read test
Check if Parity error is registered during any of the above
2 tests.
Fill memory tested with 0
Go back to real mode
Display memory size tested so far 
Go back to protected mode

Starting from 1st 64kb in Extended memory space do the following 64kb at a time for the size of extended memory found in step 13:-

IF <ESC> is pressed

Skip all test 
Fill the memory with 0.
Go back to real mode
Display memory size tested so far
Go back to protected mode

ELSE

Do a Sequential Write and Read test
Do a Random Write and Read test
Check if parity error is registered during any of the above
2 tests.
Fill memory tested with 0
Get into real mode
Display memory size tested so far 
Go back to protected mode

Possible errors…

error: Memory Write and Read test error action: 1 long beep and 3 short beeps produced in the speaker.

	The memory size is trimmed to what ever was found good.

error: Parity error registered during Sequential and Random

	test on any 64kb segment.

action: 1 long beep and 3 short beeps produced in the speaker.

	The memory size is trimmed to what ever was found good.

error: Virtual mode exception error has occured action: 7 beeps in an infinite loop and system does not proceed

	further.

1.0.14. DMA Controller test

4 different patterns are written into and read back from DMA page registers 80h thru 8fh. The data read back should be same as the data written. The data patterns used are aa55h,55aah,cc0fh,0000h.

The same patterns are then written into, read back from DMA unit 1 registers 00 thru 07. The data read back should be same as the data written.

The same patterns are them written into, read back from DMA unit 2 registers C0h thru C7h. The data read back should be same as the data written.

Possible errors…

error: Any one of the DMA page registers did not retain the

	data.

action: "DMA ERROR, SYSTEM HALTED"

error: Any one of the DMA unit 1 registers did not retain the

	data.

action: "DMA #1 ERROR, SYSTEM HALTED"

error: Any one of the DMA unit 2 registers did not ratain the

	data.

action: "DMA #2 ERROR, SYSTEM HALTED"

1.0.15. Keyboard test

Procedure..

Output keyboard self test command 0ffh. The keyboard should return 0fah and 0aah.

If the data returned is 0fah and 0aah then check if any key is stuck on the keyboard. This is done by enabling keyboard enable bit, inhibit bit, sys bit, output buffer full bit and then checking for output buffer full bit going low.

If any error occured during the above two tests, keyboard interface test is performed. This is done by writing command 0abh to keyboard controller and reading the response. The response should be 00h.

Possible errors..

error: Keyboard self test command failed but the keyboard

	interface test command was successful.

action: Register soft error "Keyboard error" to be displayed

	before system boot.

error: Keyboard self test command passed, keyboard was found

	to be stuck and keyboard interface command passed.

action: Register soft error "Keyboard error" to be displayed

	before system boot.

error: Keyboard self test command failed or keyboard was found

	stuck and the keyboard interface command failed.

action: Register "KB/Interface error" to be displayed before

	system boot.

1.0.16. System configuration verification and setup

A. Floppy disk setup..

Procedure..

Initialize floppy global data area.

reset floppy controller.

For floppy drive 0 and 1 try to find out the presence of the drive and then sense the drive type in the following manner:-

Seek to track 48
Seek backwards till track 0
If seek to track 0 is not successful then it is a 40 track
drive which is 360kb. So set global as 360kb disk type.
If seek to track 0 is successful, it is a 80 track drive so
check CMOS for type of drive selected through the SETUP
program.
For 720kb drive set 720kb disk type in global.
If 1.2mb or 1.44mb in CMOS, then set 2 or 7 respectively in
the global which means that media has to be established for
these drives every time a new disk is put in. This is
necessary because a 1.2mb drive can take 1.2mb or 360kb disk
and a 1.44mb drive can take either 720kb or 1.44mb disk.

Possible errors…

error: Reset floppy controller failure action: Register "FDD controller failure" error to be displayed

	before system boot.

B. Hard disk Setup

Procedure..

Reset hard disk controller.

If CMOS bad or no drive type set, skip hard disk check otherwise do hard disk tests in following manner:-

Redirect Int 13h to Int 40h for floppy and point Int 13h to hard disk routines.

Depending upon the CMOS Drive type value, point Int 41h and Int 46h vectors to ROM drive type parameters for drive C and D respectively.

Initialize the global data area for hard disks.

Issue controller diagnostics command for the hard disk controller.

Set parameters from drive type table for drive 0 and recalibrate on drive 0 if CMOS type is set for drive 0.

Set parameters from drive type table for drive 1 and recalibrate on drive 1 if CMOS type is set for for drive 1.

For drive 0, if CMOS type is set, do verify on each sector in the last track. At least one of the sectors in the last track should verify ok.

For drive 1, if CMOS isset, do verify on each sector in the last track. At least one of the sectors in the last track should verify ok.

Possible errors..

error: Hard disk controller diagnostics failed action: Register "HDD controller error" to be displayed before

	system boot.

error: Recalibrate on drive 0 failed. action: Register "C:Drive failure" error to be displayed before

	system boot.

error:: Recalibrate on drive 1 failed. action: Register "D:Drive failure" error to be displayed before

	system boot.

error: None of the sectors in last track on drive 0 verified

	ok.

action: Register "C:Drive error" error to be displayed before

	system boot.

error: None of the sectors in last track on drive 1 verified

	ok.

action: Register "D:Drive error" error to be displayed before

	system boot.

C. Memory size verification

Procedure…

If CMOS battery state is ok and CMOS checksum is ok then do the following:-

Check Conventional memory size in CMOS with actual memory size found out by BIOS.

Check Extended memory size in CMOS with actual extended memory size found by BIOS.

Possible errors..

error:: Actual conventional memory size found by BIOS is not

	same as memory size stored in CMOS.

action: Register "CMOS memory size mismatch" error to be

	displayed before system boot.

error: Actual extended memory size found by BIOS is different

	from memory size stored in CMOS.

action: Register "CMOS memory size mismatch" error to be

	displayed before system boot.

D. Optional ROM control

Procedure..

Start from segment C800h segment and continue with an increment of 80h till E000h segment with the following operation:-

Check if word at offset 0 is 0aa55h.

If word at offset 0 is 0aa55h then do the following:-

Take the size of the ROM from offset 2. The size should be # of 512 bytes in the optional ROM. Now calculate the checksum of the ROM by adding all the bytes. The checksum should be 0. If the checksum is 0 then give control to the optional ROM at offset 3 by a FAR CALL. E. Initialize Timer data area

Procedure..

Check if CMOS battery state ok and CMOS checksum ok. If both of them are ok then do the following:-

Read real time clock through BIOS interrupt routine 1Ah. Compare the hour, minute and second BCD values to find if they are within limit. Hour should be ⇐24, Minute⇐60 and second⇐60. If they are within limit then change them from BCD to Binary value and in terms 1/18th of a second. Save them in timer data area which is 2 words and is used by the timer routine to update the count in every 1/18th of a second.

Possible errors..

error: Error returned by int 1Ah function. action: Register "CMOS time & date not set" to be displayed

	before system boot.

error: Hour, minute and seconds not within limit. action: Register "CMOS time & date not set" error to be

	displayed before system boot.

E. Setup Printer and RS232 Ports

Procedure..

Check for presence of printer ports 03bch, 0378h, 0278h by a port pattern test. In the port pattern test write values 0aa55h, 55aah, cc00h,0000h to these ports in these order and read them back after writing to check if they retain the values. For the ports that retain the values, add them to the system data area starting at 40h:8.

Check for presence of RS232 ports 03f8h, 02f8h, 03e8h, 02e8h in the same way as above and add them to the system data area at 40h:0.

F. Check for Keyboard lock

Procedure..

Read keyboard status port and check the keyboard lock bit.

Possible errors..

error: Keyboard is locked action: Register "Keyboard is locked" error to be displayed

	before system boot.

G. Display all error messages

H. System ROM control Procedure..

Check for System ROM at segment e000h in following manner:-

Check if at offset 0 the word value is 0aa55h. If the value is 0aa55h then calculate a byte checksum for 64kb by adding all bytes. The checksum should be 0. If the checksum is zero then give control to the optional ROM at offset 3.

2.0 Classification of error messages..

The error messages can be classified into 4 diferent categories

	Fatal errors through beeps

	Fatal errors through display
	Non fatal errors through beeps
	Non fatal errors through display

2.1 Fatal errors through beeps..

The fatal errors through beeps are conveyed through a number of beeps in an infinite process and there is enough time gap between tow subsequent sets of error beeps to calculate the number in each set.

2.1.1 One beep (DRAM Refresh failure)

Occurrence..

Refresh test

2.1.2 Three beeps (Base 64kb RAM failure)

Occurrence..

Base 64kb RAM test
Address test and memory size finding

2.1.3 Four beeps (System timer failure)

Occurrence..

Channel 1 timer test
Channel 0 timer test

2.1.4 Five beeps (Processor failure)

Occurrence..

Processor register test

2.1.5 Six beeps (Keyboard controller Gate A20 error)

Occurrence..

Keyboard controller test

2.1.6 Seven beeps (Virtual mode exception error)

Occurrence..

Getting into protected mode
Conventional and Extended memory test

2.1.7 Nine beeps (ROM BIOS Checksum failure)

Occurrence..

ROM BIOS Checksum check

2.2 Fatal errors through display..

When these errors are displayed the screen is cleared and after the error message display is also followed by a line saying "SYSTEM HALTED"

2.2.1 CMOS INOPERATIONAL

Occurrence..

CMOS Shutdown register test

2.2.2 8042 GATE-A20 ERROR

Occurrence..

Getting into protected mode

2.2.3 INVALID SWITCH MEMORY FAILURE

2.2.4 DMA ERROR

Occurrence..

DMA Controller page register test

2.2.5 DMA #1 ERROR

Occurrence..

DMA Unit 1 register test

2.2.6 DMA #2 ERROR

Occurrence..

DMA Unit 2 register test

2.3 Non fatal errors through beeps..

These errors are displayed as one long beep following by a number of short beeps and the system proceeds normally.

2.3.1 One long and 3 short beeps

Occurrence..

Conventional and Extended memory test

2.3.2 One long and eight short beeps

Occurrence..

Display RAM test and display vertical and horizontal retrace test.

2.4 Non fatal errors through display..

These types of errors are classified into 2 categories.

Ones that wait for F1 key and give the option to run SETUP
Ones that wait for F1 key but do not give option to run SETUP

2.4.1 Errors waiting fot F1 key and giving option to run SETUP

2.4.1.1 CMOS battery state low

Ouucrrence..

CMOS battery, options set and checksum test

2.4.1.2 CMOS system options not set

Occurrence..

CMOS battery, options set and checksum test

2.4.1.3 CMOS ckecksum failure

Occurrence..

CMOS battery, options set and checksum test

2.4.1.4 CMOS display type mismatch

Occurrence..

Display type verification

2.4.1.5 CMOS memory size mismatch

Occurrence..

System Configuration verification and setup (Memory size verification)

2.4.1.6 CMOS time & date not set

Occurrence..

System configuration verification and setup (Init timer data)

2.4.1.7 C:Drive failure

Occurrence..

System configuration verification and setup (Hard disk setup)

2.4.2 Errors waiting for F1 key and not giving the option to run SETUP

2.4.2.1 CH-2 timer error

Occurrence..

Channel 2,1,0 timer test

2.4.2.2 Keyboard error

Occurrence..

Keyboard test

2.4.2.3 KB/Interface error

Occurrence..

Keyboard test

2.4.2.4 Display switch setting not proper

Occurrence..

Display type verification

2.4.2.5 Keyboard is locked … Unlock it

Occurrence..

System configuration verification and setup (Keyboard lock check)

2.4.2.6 FDD controller error

Occurrence..

System configuration verification and setup (floppy disk setup)

2.4.2.7 HDD controller failure

Occurrence..

System configuration verification and setup (Hard disk setup)

2.4.2.8 C:Drive error

Occurrence..

System configuration verification and setup (Hard disk setup)

2.4.2.9 D:Drive error

Occurrence..

System configuration verification and setup (Hard disk setup)

2.4.2.10 D:Drive failure

Occurrence..

System configuration verification and setup (Hard disk setup)

Appendix A

Address line test procedure

For the 64kb of memory on test, write and then read data patterns 0ffh and 00h at addresses 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16384, 32768. The data read back should be same as that written.

Sequential memory Write and Read test

For the 64kb of memory on test, use test patterns 8080h, 5555h, 3333h, 0f0fh in the same order.

Take one pattern and write it on the entire 64kb space one word at a time. Then compare the 64k space one word at a time with the value written. If any word does not retain the value then return error.

Random memory Write and Read test

Use a random number generator which generates 16k of random numbers as memory addresses and returns a seed between 0 to ffh associated with each random addresses generated.

Use the random number generator again and read the data from the random address. The data read back should be same as the seed returned by the random number generator. In short, the BIOS checks wheather the data written in 16k random addresses are retained in those memory locations.

The random number generator procedure is written in such a way that it generates the same sequence of random numbers in the same order every time it is called and it also returns a unique seed associated with each random number.

Appendix B

CMOS RAM USAGE IN AMI MARK II AT BIOS


Address Description


00-0D *Real-time clock information 0E *Diagnostics status byte 0F *Shutdown status byte 10 Diskett drive type byte - drives A and B 11 Reserved 12 Fixed disk type byte - drives C and D (1 - 14) 13 Reserved 14 Equipment byte 15 Base memory byte LOW 16 Base memory byte HIGH 17 Expansion memory byte LOW 18 Expansion memory byte HIGH 19 Extended fixed disk type - drive C (16 - 255) 1A Extended fixed disk type - drive D (16 - 255) 1B-2C!! User defined drive type 2D Reserved 2E-2F 2 - byte CMOS Checksum 30 *Expansion memory size LOW 31 *Expansion memory size HIGH 32 *Date century byte 33 *Information flags (set during power on) 34-36 Reserved 37 !! Video and Keyboard installation information 38 !! Video shadow and memory information 39-3A!! Segment value for scratch memory used by BIOS for Load all

	translation.

3B-3F Reserved


*These bytes are not included in the checksum calculation and are not part of the configuration record.

!! These are extra bytes used by AMI BIOS.

Bytes 1B - 2C (Is used by AMI BIOS released after March 1989) _

These bytes will store user defined drive types in following format.

Drive C User defined type

1B,1C Number of cylinders 1D Number of heads

1E,1F Write precom 20 Control byte 21,22 Landing zone 23 Number of sectors

Drive D User defined type

24,25 Number of cylinders 26 Number of heads 27,28 Write precom 29 Control byte 2A,2B Landing zone 2C Number of sectors

Byte 37 _

Bit 0 This bit has meaning only in BIOS released after March 1989.

		1=Test keyboard
		0=Do not test keyboard

Bit 1 This bit has meaning only in BIOS released after March 1989.

		1=Test Video
		0=Don not test Video

Bit 2 Current status of keyboard controller pin 23.

Bit 3 Current Status of Keyboard controller pin 24.

Bit 4-7 Not used

Byte 38 _

Bit 0-2 Not used

Bit 3 1="INS" key has been pressed

		0="INS" key not pressed

Bit 4 1=Weitek co-processor present

		0=Weitek co-processor absent

Bit 5 1=Enable Video shadow

		0=Disable video shadow

Bit 6 1=Relocate 256k memory

		0=Do not relocate 256k memory

Bit 7 1=32-bit memory card installed

		0=32-bit memory card not installed

Byte 39-3A

These bytes are used to save the segment value of the memory BIOS is going to use for Load all function translation. For MARK II AT Board this actually points to BIOS area because BIOS Shadow RAM is enabled.



/data/webs/external/dokuwiki/data/pages/archive/programming/biosdiag.man.txt · Last modified: 2002/02/09 22:18 by 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki