Skip to main content

MostThe most important reaeon herereason is that IBM introduced that check as part of the BIOS startup code, so everyone copied it to be compatible.

The PC did differ from many other machines of the same time,era in that it did a thruoutthorough test of all components installed at power up to make sure the configuration iswas operable. Something carried over from mainframes or alikesimilar professional systems. Other machines just initialized components and let the user guess whats wrongwhat the problem was when an error occuredoccurred.

RAMsRAM got more reliable over the years. Equally important, RAM-size size increased manyfold, making a thruoutthorough memory test anything but quick. Last but not least, memory design for PCs did split in the (late) 90s between consumer PC with error detection (like the first PC) and professional machines with error correction (ECC). Where consumer grade machines just let the process/OS die on the USERuser, Professionalprofessional systems will not only correct starting RAM failure, but also report it which (hopefulyhopefully) leads to preemptive RAM change.

VariaousVarious bit patterns are written to RAM and read again, to detect cell failure or certain kinds of cross overcrossover. The test is split into two parts, Base: base RAM (first 16/64 KiB, *1,2) and memory above 64 KiB. On AT (286+) class machines, a third (faster) test may be used for memory above 1 MiB (*3), together with an additional test in protected mode and even more diverging POST codes.

In conventionalConventional memory (up to 1 MiB ,*4) is checked in 4 KiB blocks (*5) and reported as such. The BIOS halts if there is an error in the first 16 KiB (original PC) or first 64 KiB (XT and above).

The bit pattern used (*6) for the first 64 KiB is AA, 55AA, 0055, FF00, 01FF, 0201, 0402, 0804, 1008, 2010, 4020, 8040 and 80. They are written (and read) in a way to not only detect single bit failiuresfailures, but also address and data line missmatchmismatch/failiurefailure.

For the remaining memory it is shortened to AAAA, 55 55, FFFF, 0000 and 0101.

(Here is a nice explanation of basic bit walking and increment tests similar to what the PC does/did and what it will show).

To alarm itsthe user of an immanentimminent RAM problem before it occures during work and he may looseoccurs so that they don't lose hours of work due to a flipped bit.

*2 - On the XT there is a seperateseparate BIOS POST code for the first 32 KiB.

*3 - The beep codes do not distinguish between above 64 KiB and above 1 MiB).

*4 - Well, in reality on the early PCs only until 544 KiB, while later. Later PCs would go unitluntil 640 KiB.

*6 - Caveat: Bit paternspatterns are taken from an old mansman's memory, to. To verify, browsing the BIOS would be helpful.

Most important reaeon here is that IBM introduced that check as part of the BIOS startup code, so everyone copied it to be compatible.

The PC did differ from many other machines of the same time, that it did a thruout test of all components installed at power up to make sure the configuration is operable. Something carried over from mainframes or alike professional systems. Other machines just initialized components and let the user guess whats wrong when an error occured.

RAMs got more reliable over the years. Equally important, RAM-size increased manyfold, making a thruout memory test anything but quick. Last but not least, memory design for PCs did split in the (late) 90s between consumer PC with error detection (like the first PC) and professional machines with error correction (ECC). Where consumer grade machines just let the process/OS die on the USER, Professional systems will not only correct starting RAM failure, but also report it which (hopefuly) leads to preemptive RAM change.

Variaous bit patterns are written to RAM and read again, to detect cell failure or certain kinds of cross over. The test is split into two parts, Base RAM (first 16/64 KiB, *1,2) and memory above 64 KiB. On AT (286+) class machines, a third (faster) test may be used for memory above 1 MiB (*3) together with an additional test in protected mode and even more diverging POST codes.

In conventional memory (up to 1 MiB ,*4) is checked in 4 KiB blocks (*5) and reported as such. The BIOS halts if there is an error in the first 16 KiB (original PC) or first 64 KiB (XT and above).

The bit pattern used (*6) for the first 64 KiB is AA, 55, 00, FF, 01, 02, 04, 08, 10, 20, 40, 80 They are written (and read) in a way to not only detect single bit failiures, but also address and data line missmatch/failiure.

For the remaining memory it is shortened to AA, 55 , FF, 00 and 01.

(Here is a nice explanation of basic bit walking and increment tests similar to what the PC does/did and what it will show)

To alarm its user of an immanent RAM problem before it occures during work and he may loose hours of work due a flipped bit.

*2 - On the XT there is a seperate BIOS POST code for the first 32 KiB.

*3 - The beep codes do not distinguish between above 64 KiB and above 1 MiB)

*4 - Well, in reality on the early PCs only until 544 KiB, while later would go unitl 640.

*6 - Caveat: Bit paterns are taken from an old mans memory, to verify browsing the BIOS would be helpful.

The most important reason is that IBM introduced that check as part of the BIOS startup code, so everyone copied it to be compatible.

The PC did differ from many other machines of the same era in that it did a thorough test of all components installed at power up to make sure the configuration was operable. Something carried over from mainframes or similar professional systems. Other machines just initialized components and let the user guess what the problem was when an error occurred.

RAM got more reliable over the years. Equally important, RAM size increased manyfold, making a thorough memory test anything but quick. Last but not least, memory design for PCs did split in the (late) 90s between consumer PC with error detection (like the first PC) and professional machines with error correction (ECC). Where consumer grade machines just let the process/OS die on the user, professional systems will not only correct starting RAM failure, but also report it which (hopefully) leads to preemptive RAM change.

Various bit patterns are written to RAM and read again to detect cell failure or certain kinds of crossover. The test is split into two parts: base RAM (first 16/64 KiB, *1,2) and memory above 64 KiB. On AT (286+) class machines, a third (faster) test may be used for memory above 1 MiB (*3), together with an additional test in protected mode and even more diverging POST codes.

Conventional memory (up to 1 MiB ,*4) is checked in 4 KiB blocks (*5) and reported as such. The BIOS halts if there is an error in the first 16 KiB (original PC) or first 64 KiB (XT and above).

The bit pattern used (*6) for the first 64 KiB is AA, 55, 00, FF, 01, 02, 04, 08, 10, 20, 40 and 80. They are written (and read) in a way to not only detect single bit failures, but also address and data line mismatch/failure.

For the remaining memory it is shortened to AA, 55, FF, 00 and 01.

Here is a nice explanation of basic bit walking and increment tests similar to what the PC does/did and what it will show.

To alarm the user of an imminent RAM problem before it occurs so that they don't lose hours of work due to a flipped bit.

*2 - On the XT there is a separate BIOS POST code for the first 32 KiB.

*3 - The beep codes do not distinguish between above 64 KiB and above 1 MiB.

*4 - Well, in reality on the early PCs only until 544 KiB. Later PCs would go until 640 KiB.

*6 - Caveat: Bit patterns are taken from an old man's memory. To verify, browsing the BIOS would be helpful.

Why are they doing that?

Most important reaeon here is that IBM introduced that check as part of the BIOS startup code, so everyone copied it to be compatible.

The PC did differ from many other machines of the same time, that it did a thruout test of all components installed at power up to make sure the configuration is operable. Something carried over from mainframes or alike professional systems. Other machines just initialized components and let the user guess whats wrong when an error occured.

Modern computers, as far as I am aware of, only check their memory when explicitly told to.

RAMs got more reliable over the years. Equally important, RAM-size increased manyfold, making a thruout memory test anything but quick. Last but not least, memory design for PCs did split in the (late) 90s between consumer PC with error detection (like the first PC) and professional machines with error correction (ECC). Where consumer grade machines just let the process/OS die on the USER, Professional systems will not only correct starting RAM failure, but also report it which (hopefuly) leads to preemptive RAM change.

What exactly are retro computers doing during that check that more modern computers seem to not do

Variaous bit patterns are written to RAM and read aginagain, to detect cell failure or certain kinds of cross over. The test is split ininto two parts, Base RAM (first 16/64 KiB, *1,2) and memory above 64 KiB. On AT (286+) class machines, a third (faster) test may be used for memory above 1 MiB (*3) together with an additional test in protected mode and even more divergeingdiverging POST codes.

In conventional memory (up to 1 MiB ,*4) is checked in 4 KiB blocks (*5) and reported as such. The BIOS halts if there is an error in the first 16 KiB (original PC) or first 64 KiB (XT and above).

The bit pattern used (*6) for the first 64 KiB is AA, 55, 00, FF, 01, 02, 04, 08, 10, 20, 40, 80 They are written (and read) in a way to not only detect single bit failiures, but also address and data line missmatch/failiure.

For the remaining memory it is shortened to AA, 55 , FF, 00 and 01.

(Here is a nice explanation of basic bit walking and increment tests similar to what the PC does/did and what it will show)

and why?

To alarm its user of an immanent RAM problem before it occures during work and he may loose hours of work due a flipped bit.


*1 - 16 KiB on the first series of 5150 PCs (64 Kib Motherboard), 64KiB on the later (256 KiB motherboard and XT)

*2 - On the XT there is a seperate BIOS POST code for the first 32 KiB.

*3 - The beep codes do not distinguish between above 64 KiB and above 1 MiB)

*4 - Well, in reality on the early PCs only until 544 KiB, while later would go unitl 640.

*5 - Looks like a hint as if they expected 4 KiB chips to be used - at least during early development stage - or that test was copied from some other device using them.

*6 - Caveat: Bit paterns are taken from an old mans memory, to verify browsing the BIOS would be helpful.

Why are they doing that?

Most important reaeon here is that IBM introduced that check as part of the BIOS startup code, so everyone copied it to be compatible.

The PC did differ from many other machines of the same time, that it did a thruout test of all components installed at power up to make sure the configuration is operable. Something carried over from mainframes or alike professional systems. Other machines just initialized components and let the user guess whats wrong when an error occured.

Modern computers, as far as I am aware of, only check their memory when explicitly told to.

RAMs got more reliable over the years. Equally important, RAM-size increased manyfold, making a thruout memory test anything but quick. Last but not least, memory design for PCs did split in the (late) 90s between consumer PC with error detection (like the first PC) and professional machines with error correction (ECC). Where consumer grade machines just let the process/OS die on the USER, Professional systems will not only correct starting RAM failure, but also report it which (hopefuly) leads to preemptive RAM change.

What exactly are retro computers doing during that check that more modern computers seem to not do

Variaous bit patterns are written to RAM and read agin to detect cell failure or certain kinds of cross over. The test is split in two parts, Base RAM (first 16/64 KiB, *1,2) and memory above 64 KiB. On AT (286+) class machines a third (faster) test may be used for memory above 1 MiB (*3) together with an additional test in protected mode and even more divergeing POST codes.

In conventional memory (up to 1 MiB ,*4) is checked in 4 KiB blocks (*5) and reported as such. The BIOS halts if there is an error in the first 16 KiB (original PC) or first 64 KiB (XT and above).

The bit pattern used (*6) for the first 64 KiB is AA, 55, 00, FF, 01, 02, 04, 08, 10, 20, 40, 80 They are written (and read) in a way to not only detect single bit failiures, but also address and data line missmatch/failiure.

For the remaining memory it is shortened to AA, 55 , FF, 00 and 01.

(Here is a nice explanation of basic bit walking and increment tests similar to what the PC does/did and what it will show)

and why?

To alarm its user of an immanent RAM problem before it occures during work and he may loose hours of work due a flipped bit.


*1 - 16 KiB on the first series of 5150 PCs (64 Kib Motherboard), 64KiB on the later (256 KiB motherboard and XT)

*2 - On the XT there is a seperate BIOS POST code for the first 32 KiB.

*3 - The beep codes do not distinguish between above 64 KiB and above 1 MiB)

*4 - Well, in reality on the early PCs only until 544 KiB, while later would go unitl 640.

*5 - Looks like a hint as if they expected 4 KiB chips to be used - at least during early development stage - or that test was copied from some other device using them.

*6 - Caveat: Bit paterns are taken from an old mans memory, to verify browsing the BIOS would be helpful.

Why are they doing that?

Most important reaeon here is that IBM introduced that check as part of the BIOS startup code, so everyone copied it to be compatible.

The PC did differ from many other machines of the same time, that it did a thruout test of all components installed at power up to make sure the configuration is operable. Something carried over from mainframes or alike professional systems. Other machines just initialized components and let the user guess whats wrong when an error occured.

Modern computers, as far as I am aware of, only check their memory when explicitly told to.

RAMs got more reliable over the years. Equally important, RAM-size increased manyfold, making a thruout memory test anything but quick. Last but not least, memory design for PCs did split in the (late) 90s between consumer PC with error detection (like the first PC) and professional machines with error correction (ECC). Where consumer grade machines just let the process/OS die on the USER, Professional systems will not only correct starting RAM failure, but also report it which (hopefuly) leads to preemptive RAM change.

What exactly are retro computers doing during that check that more modern computers seem to not do

Variaous bit patterns are written to RAM and read again, to detect cell failure or certain kinds of cross over. The test is split into two parts, Base RAM (first 16/64 KiB, *1,2) and memory above 64 KiB. On AT (286+) class machines, a third (faster) test may be used for memory above 1 MiB (*3) together with an additional test in protected mode and even more diverging POST codes.

In conventional memory (up to 1 MiB ,*4) is checked in 4 KiB blocks (*5) and reported as such. The BIOS halts if there is an error in the first 16 KiB (original PC) or first 64 KiB (XT and above).

The bit pattern used (*6) for the first 64 KiB is AA, 55, 00, FF, 01, 02, 04, 08, 10, 20, 40, 80 They are written (and read) in a way to not only detect single bit failiures, but also address and data line missmatch/failiure.

For the remaining memory it is shortened to AA, 55 , FF, 00 and 01.

(Here is a nice explanation of basic bit walking and increment tests similar to what the PC does/did and what it will show)

and why?

To alarm its user of an immanent RAM problem before it occures during work and he may loose hours of work due a flipped bit.


*1 - 16 KiB on the first series of 5150 PCs (64 Kib Motherboard), 64KiB on the later (256 KiB motherboard and XT)

*2 - On the XT there is a seperate BIOS POST code for the first 32 KiB.

*3 - The beep codes do not distinguish between above 64 KiB and above 1 MiB)

*4 - Well, in reality on the early PCs only until 544 KiB, while later would go unitl 640.

*5 - Looks like a hint as if they expected 4 KiB chips to be used - at least during early development stage - or that test was copied from some other device using them.

*6 - Caveat: Bit paterns are taken from an old mans memory, to verify browsing the BIOS would be helpful.

Link to further information
Source Link
Raffzahn
  • 236.1k
  • 23
  • 682
  • 976

Why are they doing that?

Most important reaeon here is that IBM introduced that check as part of the BIOS startup code, so everyone copied it to be compatible.

The PC did differ from many other machines of the same time, that it did a thruout test of all components installed at power up to make sure the configuration is operable. Something carried over from mainframes or alike professional systems. Other machines just initialized components and let the user guess whats wrong when an error occured.

Modern computers, as far as I am aware of, only check their memory when explicitly told to.

RAMs got more reliable over the years. Equally important, RAM-size increased manyfold, making a thruout memory test anything but quick. Last but not least, memory design for PCs did split in the (late) 90s between consumer PC with error detection (like the first PC) and professional machines with error correction (ECC). Where consumer grade machines just let the process/OS die on the USER, Professional systems will not only correct starting RAM failure, but also report it which (hopefuly) leads to preemptive RAM change.

What exactly are retro computers doing during that check that more modern computers seem to not do

Variaous bit patterns are written to RAM and read agin to detect cell failure or certain kinds of cross over. The test is split in two parts, Base RAM (first 16/64 KiB, *1,2) and memory above 64 KiB. On AT (286+) class machines a third (faster) test may be used for memory above 1 MiB (*3) together with an additional test in protected mode and even more divergeing POST codes.

In conventional memory (up to 1 MiB ,*4) is checked in 4 KiB blocks (*5) and reported as such. The BIOS halts if there is an error in the first 16 KiB (original PC) or first 64 KiB (XT and above).

The bit pattern used (*6) for the first 64 KiB is AA, 55, 00, FF, 01, 02, 04, 08, 10, 20, 40, 80 They are written (and read) in a way to not only detect single bit failiures, but also address and data line missmatch/failiure.

For the remaining memory it is shortened to AA, 55 , FF, 00 and 01.

(Here is a nice explanation of basic bit walking and increment tests similar to what the PC does/did and what it will show)

and why?

To alarm its user of an immanent RAM problem before it occures during work and he may loose hours of work due a flipped bit.


*1 - 16 KiB on the first series of 5150 PCs (64 Kib Motherboard), 64KiB on the later (256 KiB motherboard and XT)

*2 - On the XT there is a seperate BIOS POST code for the first 32 KiB.

*3 - The beep codes do not distinguish between above 64 KiB and above 1 MiB)

*4 - Well, in reality on the early PCs only until 544 KiB, while later would go unitl 640.

*5 - Looks like a hint as if they expected 4 KiB chips to be used - at least during early development stage - or that test was copied from some other device using them.

*6 - Caveat: Bit paterns are taken from an old mans memory, to verify browsing the BIOS would be helpful.

Why are they doing that?

Most important reaeon here is that IBM introduced that check as part of the BIOS startup code, so everyone copied it to be compatible.

The PC did differ from many other machines of the same time, that it did a thruout test of all components installed at power up to make sure the configuration is operable. Something carried over from mainframes or alike professional systems. Other machines just initialized components and let the user guess whats wrong when an error occured.

Modern computers, as far as I am aware of, only check their memory when explicitly told to.

RAMs got more reliable over the years. Equally important, RAM-size increased manyfold, making a thruout memory test anything but quick. Last but not least, memory design for PCs did split in the (late) 90s between consumer PC with error detection (like the first PC) and professional machines with error correction (ECC). Where consumer grade machines just let the process/OS die on the USER, Professional systems will not only correct starting RAM failure, but also report it which (hopefuly) leads to preemptive RAM change.

What exactly are retro computers doing during that check that more modern computers seem to not do

Variaous bit patterns are written to RAM and read agin to detect cell failure or certain kinds of cross over. The test is split in two parts, Base RAM (first 16/64 KiB, *1,2) and memory above 64 KiB. On AT (286+) class machines a third (faster) test may be used for memory above 1 MiB (*3) together with an additional test in protected mode and even more divergeing POST codes.

In conventional memory (up to 1 MiB ,*4) is checked in 4 KiB blocks (*5) and reported as such. The BIOS halts if there is an error in the first 16 KiB (original PC) or first 64 KiB (XT and above).

The bit pattern used (*6) for the first 64 KiB is AA, 55, 00, FF, 01, 02, 04, 08, 10, 20, 40, 80 They are written (and read) in a way to not only detect single bit failiures, but also address and data line missmatch/failiure.

For the remaining memory it is shortened to AA, 55 , FF, 00 and 01.

and why?

To alarm its user of an immanent RAM problem before it occures during work and he may loose hours of work due a flipped bit.


*1 - 16 KiB on the first series of 5150 PCs (64 Kib Motherboard), 64KiB on the later (256 KiB motherboard and XT)

*2 - On the XT there is a seperate BIOS code for the first 32 KiB.

*3 - The beep codes do not distinguish between above 64 KiB and above 1 MiB)

*4 - Well, in reality on the early PCs only until 544 KiB, while later would go unitl 640.

*5 - Looks like a hint as if they expected 4 KiB chips to be used - at least during early development stage - or that test was copied from some other device using them.

*6 - Caveat: Bit paterns are taken from an old mans memory, to verify browsing the BIOS would be helpful.

Why are they doing that?

Most important reaeon here is that IBM introduced that check as part of the BIOS startup code, so everyone copied it to be compatible.

The PC did differ from many other machines of the same time, that it did a thruout test of all components installed at power up to make sure the configuration is operable. Something carried over from mainframes or alike professional systems. Other machines just initialized components and let the user guess whats wrong when an error occured.

Modern computers, as far as I am aware of, only check their memory when explicitly told to.

RAMs got more reliable over the years. Equally important, RAM-size increased manyfold, making a thruout memory test anything but quick. Last but not least, memory design for PCs did split in the (late) 90s between consumer PC with error detection (like the first PC) and professional machines with error correction (ECC). Where consumer grade machines just let the process/OS die on the USER, Professional systems will not only correct starting RAM failure, but also report it which (hopefuly) leads to preemptive RAM change.

What exactly are retro computers doing during that check that more modern computers seem to not do

Variaous bit patterns are written to RAM and read agin to detect cell failure or certain kinds of cross over. The test is split in two parts, Base RAM (first 16/64 KiB, *1,2) and memory above 64 KiB. On AT (286+) class machines a third (faster) test may be used for memory above 1 MiB (*3) together with an additional test in protected mode and even more divergeing POST codes.

In conventional memory (up to 1 MiB ,*4) is checked in 4 KiB blocks (*5) and reported as such. The BIOS halts if there is an error in the first 16 KiB (original PC) or first 64 KiB (XT and above).

The bit pattern used (*6) for the first 64 KiB is AA, 55, 00, FF, 01, 02, 04, 08, 10, 20, 40, 80 They are written (and read) in a way to not only detect single bit failiures, but also address and data line missmatch/failiure.

For the remaining memory it is shortened to AA, 55 , FF, 00 and 01.

(Here is a nice explanation of basic bit walking and increment tests similar to what the PC does/did and what it will show)

and why?

To alarm its user of an immanent RAM problem before it occures during work and he may loose hours of work due a flipped bit.


*1 - 16 KiB on the first series of 5150 PCs (64 Kib Motherboard), 64KiB on the later (256 KiB motherboard and XT)

*2 - On the XT there is a seperate BIOS POST code for the first 32 KiB.

*3 - The beep codes do not distinguish between above 64 KiB and above 1 MiB)

*4 - Well, in reality on the early PCs only until 544 KiB, while later would go unitl 640.

*5 - Looks like a hint as if they expected 4 KiB chips to be used - at least during early development stage - or that test was copied from some other device using them.

*6 - Caveat: Bit paterns are taken from an old mans memory, to verify browsing the BIOS would be helpful.

added 33 characters in body
Source Link
Raffzahn
  • 236.1k
  • 23
  • 682
  • 976
Loading
added 33 characters in body
Source Link
Raffzahn
  • 236.1k
  • 23
  • 682
  • 976
Loading
added 512 characters in body
Source Link
Raffzahn
  • 236.1k
  • 23
  • 682
  • 976
Loading
Source Link
Raffzahn
  • 236.1k
  • 23
  • 682
  • 976
Loading