About Computers and Boot E/Proms (BIOS)
Many of us about 40 will remember the SF Blake 7 series (British-TV). (Otherwise the whole series probably is for sale at your local Store on DVD – I don’t get any money for this – I myself did also buy and watch the whole SF series. And I like and watch many other SF movies too).
The board computer confirmed all given orders to him in the same monotonous way with the statement
Of course it has not (yet) much to do with our current computers but it goes very fast! There are similarities and speech recognition is really no longer fiction. Indeed, the first task that a computer receives, he ALWAYS performs, after power-on.
After the power switch on the machine has been activated the CPU (CPU, Central Processing Unit) or central processor (also often called uP = microprocessor) gets a unique piece of boot software (or firmware, as it is called by many manufacturers) at its disposal.
This software is as it were in hardware form in one or more boot E/Proms.
(Also known as BIOS = Basic Input Output System). Even the CPU in the intelligent (here it is how Intel’s name was given) 5.25 inch drives of the famous
Commodore 64 got a piece of Boot software so it would enable the drives to communicate to the actual computer (the Commodore 64 with its 6502 or 6510 CPU) over the serial databus (with a DIN cable). This is also called DOS. (Disk Operating System).
The first PCs for home use still worked with the CP/M system of which our current MS-DOS / BIOS is distracted.
More than two –or better three decades ago CP/M was the only existing DOS operating system for personal computers and as the current Pentium systems still use DOS commands that are almost
identical, we may say that this is no coincidence. Today, it ultimately led DOS to the literal repressed background and its completely “replaced” by a Windows environment.
All in all, the current BIOS Boot chips of the IBM / MSDOS systems are handsome feats of ingenuity (if we leave Millennium issues out of play). The first MS-DOS systems had a boot-EPROM. Sometimes even two!, With an ODD and EVEN Eprom on-board, because with two 8-bit IC’s one could construct a 16-bit output for a 16-bit CPU environment.
But today’s Pentiums have 16-bit Flash EPROM that we can in-circuit re-program (Electrical Programmable).
This brings with it new risks when we get like a virus over the Internet. In fact, when the boot system (BIOS Flash EPROM) is not functioning properly, our PC goes off and not on again after a new boot. In addition there are several versions of Flash EPROM called TOP or BOTTOM Memory Boot Block internally.
Another point is that the Flash Eproms can work on a 5V or also even on a 12V power supply (28Fxxx or 29Fxxx version). And nowadays even voltages from 3.3 Volts or less are used (DRAM 1.8 Volt orless !! or working CPU voltages of under 1 Volt !!)
Because old 40 pin or larger Flash EPROMs for most hobbyists are still beyond their ability to program, I therefore will not further mention them. (Also because of several differences in the Boot Sector Flash EPROM types)
If you however should want to Flash your mainboard EPROM to upgrade it (by Flashing it on Board) here is a tip I got from a good old friend (Thanks Leo!)
Suppose you have two identical motherboards but your one motherboard has a defective Flash EPROM.
You saved the still okay Flash EPROM data to a file on hard disk or floppy (each manufacturer has a program available for it).
You then buy a new “EMPTY” Flash EPROM and you change it with the Flash EPROM on the motherboard right after it has booted! (Note: Voltage EEPROM is also on foot! / Carefully lift it out of its socket and change them !).
Now you can Flash your “empty” Flash EPROM with the contents of the Flash EPROM data on hard drives or floppy. After this is done you can just turn off the PC and you should have two identical working Flash Eproms.
I also succeeded by booting from a PC with a Boot-EPROM replacement on the motherboard where there was actually a Flash Eprom.
(Note: If you place your Eprom on a 12V version Mainboard there was also 12V on the Eprom socket. And your standard UV-Eprom only needs a maximum of 5V so please check this ! Or bend this VCC 5Volt pin of the Eprom away from the flash socket 12 Volt connection when there is no jumper present) .
But there were some problems later on in the displayed characters. Edoch … the computer worked! Moreover, it is now theoretically as described in the above manner, a proper Flash-Eprom “burn”.
It is also possible as an extra tip to exchange a new 12V Flash EEPROM on a main board on which originated an equally big but only 5Volt Flash EEPROM specimen. With this we reach that the Main Board is unable to erase or program the BIOS chip, nor can the BIOS chip be infected by a virus.
After all the new placed 12 Volt Eeprom can’t be flashed by our mainboard with only a 5 Volt Flash programming voltage. Now I’m an electronics hobbyist with a large collection of obsolete computers. Although I often receive these rejected computers defective or not, and I’ve now got quite a little museum, I find it a shame to just throw them all away.
So now I own two Exidy Sorcerer’s and some other CP/M machines by today’s standards it does not look worth anything anymore … But! They still work for 100% perfect. Moreover, the current PC MSDOS / BIOS E/Prom derive from the CP/M pre-sessors.
And perhaps I am now the sole possessor of such old stuff from this manufacturer. After all … had NASA in the recent past not made a disastrous mistake when they discard their old computer
equipment? And then they no longer had access to their stored data files that were collected in the universe by their unmanned (MARS?) Space explorers?!
A similar problem occurs with my Exidy Sorcerer’s. The 5.25 inch drives do not work properly anymore and this probably is due to several Bad Prom’s with Boot Function. (For experts: Micropolis S100 Box shugartbus controller) that may no longer be intact.
One drive (Shugart 34polige bus) was found to be working well on a 486 PC controller in responding. If there is still anyone who ownes the Exidy original Boot-Prom data or can help please contact me (details at at ELEKTOR’S editors). What many do not know is that in the early days an Eprom cost about an expensive fl.60, = (Gulden =floreinen amount of that time! Is now about 60/2.2 Euro) And a Prom cost about only a tenth of this.
Hence the preference of the manufacturer to choose for a Boot PROM chip. Some common Prom types I will explain by their connection data. Because it really fascinates me to find out what a computer does, but because I do not own a Prom Programmer I decided to get more information about them in another –less expensive and easier way.
As you now know current PCs start from ROM and/or EPROM and because I also have some experience with this after building and using self-made (8 – and 16-bit) eprom programmers, I will use this programmer also to experiment with old Proms. This article gives a brief outline of my experience and will be of interest to many hobbyists.
Also, I’ll explain how to for example the boot ROMs of a ZX Spectrum, a Quantum Leap or EXIDY Sorcerer and ROM packs or such of an MSX machine can be duplicated. Or mostly how to read the special (P)ROMs.
Often some ROMs are connected in parallel (Sinclair Quantum Leap) which means that their selection lines may not be identical because the data output conflicts. Whether there is an active high pin where you normally did expect a low active pin (ZX Spectrum). Also funny to know that an excellent Canon MSX Rom which in fact was created in 1983 by Microsoft (Bill Gates) then probably should apply for all MSX computers !
Usually visible at the end of the ROM data in plaintext. Even the Amiga BASIC was written by them (and thus the Amiga-DOS?).
But in this article I will also explain how Amiga owners can transfer / duplicate a Kickstart ROM to a perfect working Boot-EPROM. (Always handy when no kickstart ROMs are sold anymore!) Because, to my knowledge, this was never published in any article, I decided to write it myself. But first something about the very first boot-ICs, the Prom.
As mentioned above ICs have a tri-state output so that the bus does not conflict with the then “turned off” Boot Proms.
What now, as we mentioned previously do not have access to a Prommer?
Solution: We read the Prom in 2732 or 2716 as an EPROM on a EPROM programmer! (Or a 2708 Eprom if it is selectable)
As an unprogrammed EPROM memory cell is also “1” = High (“FF” hex.), just as like it is for example with the MMI 63xx type Prom, we can consider Address and Data Lines in their function identical. The state of the unprogrammed Prom is not making any difference anyhow because the state is depending only on when programming the Prom and not when only reading it!
Well should I add that unused Eprom data inputs must be made logic “0”!
Indeed, if the Prom owns only 4 outputs (D0 / D3 or to appear as O0 t / m O3)
D4 / D7 lie at the high level and the Eprom (Prom) output data 11110000 (binary) = 240 (decimal) value is ultimate too high!
That is why we, when reading a 4-bit output Prom, connect the other 4-bit data inputs of the 8-bit EPROM with logic “0” (= LOW level). (From Prom’s 74S287 and IM5623 is unprogrammed level unknown / For their memory capacity see
necessary prior drawings / Warning: Prom 82S123 from Signetics is unprogrammed, low = “0”, / * source see: RE Special “Microprocessors”)
To address remaining selection lines we need not worry. Indeed, only the address lines coming from the Eprom Prom affect the output data of the Prom. For some eprom programmers (like XELTEK s) the Prom data will be as often identical in the Eprom output
displayed as times the capacity factor of the Eprom is greater than the associated Prom. (Actually you would expect the places to be “empty” = “FF” cells but thats not the case).
Furthermore, all Prom selection lines (eg _CE1 _CE2 at the 74S287 PROM) before hand need to be made all GND logic “0”. (Preferably through a resistor with a low value) Obviously its not certain whether or not the content is still intact in the Prom as is displayed if the Prom has defective cells.
One shortcoming of the first Proms was namely that their “blown fuses” sometimes unwittingly recovered again!
(One of the Proms was very hot in my Shugart CP / M controller but was good to read). Of course one can not program Prom’s with an EPROM programmer related to the high currents! (About 655mW for a 32×8 Prom 6331 MMI).
But if we can read a Prom as an Eprom, we can easily use an Eprom like an Prom in a circuit when we adjust the right socket pin connections between address and data lines accordingly. All in all, good to know.
In the following text I will summarize how to proceed with Boot-EPROMs for various PCs. Without any working E/Prom ‘s all single PC’s will block to boot from power. So very important stuff.
The Sorcerer’s EXIDY EXROM 1 and 2 as Boot Proms 2716 EPROM can be read with one restriction! Pin 21 needs to be connected to gnd before both Eproms release their data.
Furthermore, there is a 2708 character ROM on the mainboard of the Exidy that if needed can also be read out as a type 2716 eprom. Exidy’s external ROM packs contain 4 ROMs or 4 EPROMs. If Eproms of type TMS (2716 Eprom Texas Instruments) do show up, they need additional voltage lines (ie: VBB =-5V and VDD = 12 V) on pin 21 (-5V) and pin 19 (12 V) before they release their data.
Again here all ROM pins 21 need to go grounded to earth before any data is visible. (Otherwise only “FF” values are visible)
In a 2716 this is normally the pin 21 Vpp (programming voltage). The Sinclair QUANTUM LEAP Boot Proms (23128/IC34 and 23256/IC33) are a different story because they are in fact fully-pin parallel interconnected, so we need to do a bit more.
ROMs cannot operate simultaneously on the same bus so must in this case be separately selectable. Moreover ROMs are just as as Proms for data bus application always tri-state outputs. (Ie, neither high / low level if not selected).
In this case, both ROMs in the Quantum Leap are selected with a Quad 2-Line to 1-Line Data Selector. IC 34 and IC 33 were individually read out according to following table.
What to do with the world famous Sinclair ZX Spectrum Boot-Rom? The here referred Rom, a type 23128, indicates “empty” as information (= “FFh”) if we connect it 1 to 1 in the Eprom socket. (27 128 setting on the Eprom programmer). However, if we ground the pin 27 connection (or via a resistor of about 390 ohms), then the Boot ROM is free to read the data outputs.
The last three digits of an E/Prom show the capacity of the memory in Kbits.
(Ie 23 128 or 128 Kbit = 128 / 8 Kbyte = 16 Kbytes were 1024 bits = 1Kbyte)
*Bit comes from Binary Digit.
The MSX Prom is a 32,768 Bytes Prom and can usually be easily read.
A Microsoft product From Bill Gates!
We finally arrive at the Wellknown Worldfamous Commodore Amiga. I will also deal with the known Kickstart version 1.3 and explain not only reading them but also the duplication of these to a perfectly working 40 pin EPROM Boot-chip. Assuming a capacity of up to 256K we have to invest in a more expensive type Eprom. Because unlike the previous E/Prom ‘s here we have no 8-bit output because it releases a 16-bit output and requires a little more of the hobbyist as a 16-bit EPROM programmer is the only option.
I should also like to add that in case of the Amiga and its 68000 CPU, EPROM data is exchanged every 2 next Hex values binaries. This is most probably connected with the used Motorola processor, because their high and low address values , compared to a conventional 8-bit processor 65XX, are offered just the other way around. A special socket adapter for the Amiga ROM is needed here because no standard Eprom is pincompatible with these 40-pin DIL (Dual In Line) chips. Moreover, this adapter can also be made so that a kick-Eprom copy of the Amiga Rom can be placed in it and the Amiga then boots from the Boot-EPROM duplicate.
The Amiga ROM 62408 (according to A500/SMD IC?) is a 42 pin IC (kick 2.0) and has two pins more over the ROM version 1.3. (In the Amiga 2000, the Kickstart 2.0 is a 40 pin DIL IC). Also the Amiga CD32 Boot ROM (3.0) is a 42 pin IC. This includes a full booting Animation.
In studying the pin connection data from the Amiga Kickstart Rom there existed quite some uncertainty. This was possibly due to different Amiga A500 schematic/diagram versions. Therefore I will completely describe the socket in the following text.
I have used the 40-pole DIL A2000 ROM as a starting point. The Eprom that I have used for the KickRom 1.3 version was a M27C4002 SGS-Thomson, but possibly more manufacturers enter the Eprom in their range.
According to the manufacturer, this is a 4 Megabit (256K x 16) CMOS UV EPROM or One Time Programmable (OTP) ROM (Datasheet oct. 1993).
There are 18 address lines and 16 output data lines. In summary, the Socket-adapter is needed to:
1. Read in the original Kickstart 1.3 ROM on a 16-bit EPROM programmer.
(27C4002 Eprom setting).
2. Boot the Eprom-boot copy in any Amiga 2000/500 as new created Boot-ROM to start.
Obviously, the Eprom needs to be programmed pincompatibel with the Eprom programmer according to the
ROM data obtained as shown in next Figure. (type 27C4002)
(Sideways view of Socket-Adapter)
Note: On my first attempt the Kick-Rom was copied to Eprom without any problem, but just would not boot on my Amiga 2000.
In retrospect, this turned out to simply be a bad contact in the ** marked pinsocket. Because the gold-colored pins are thinner than the pins of the original Kickstart ROM.
Apparently, one has to press the socket firmly into the original Amiga Kickrom-socket to overcome this. Then the problem of the Amiga Kickstart Eprom Booting is solved and the proud owner will be rewarded with the Well known startup screen!
PS: I have a few additional and very interesting articles gained by “reverse technology” but possibly they are not suitable for publication (copyright? / Bankrupt firm Rosmuller Germany / Vesuv Eprom programmer diagram) as more projects are. (Or, for example a small 4 transistor-based Color UHF TV modulator with a 5 GHz transistor worth fl.1, 50! [in Euro’s about 1.5/2.2] in the output stage of the transmitter).
But also I have rebuild a Philips VLP VP831 Professional Laser Vision player that did not play any Discs any more. After much experimentation (I did not have any schematic or service manual of it) I managed to re-use the helium-neon tube Red Laser only by switching the original powersupply of the Video LD-player on and off via a single push button .
I have removed the other (now unnecessary) pcb boards of the player and now the laser tube can be continuously lit. I.e. even without the engine running. (Can also be completely removed / signal to the OpAmp input to simulate an turning Engine), the laser is now stand-alone working after switching it on. A few miles away this is viewable as a clearly visible bright red dot (635 nm).
AvB (P) 2007
PS: Here is an interesting addition to the current state of evolving technic. (2011): Most laptops and desktop PCs now have an Electrical Erasable Programmable serial BIOS chip on board (8-
pin SOIC as Winbond 25×40 etc.). And these are easy to flash with a universal programmer like the Genius G540 or G840. To this end, we only have to desolder the 8 SMT (DIL) pins from the mainboard and resolder it back after re-programming it with an update from the manufacturer, in order to get it back working again. These Bios chips in laptops are usually found close to the keyboard controller.
But these same EEPROM chips can also be found in PC SATA DVD players like the Samsung brand (if such players via PC SATA connection accidentally get flashed wrong are they no longer working because the communication with the PC Sata port stopped. Also then we Flash, and then solder it back, is the only remaining option in these cases).
Note.: Laptops Toshiba branded and Compaq are in our repair service department generally been known for their unwanted BIOS flash problems after when the laptop does not boot anymore!
Albert van Bemmelen, The Netherlands.
Please give a support by clicking on the social buttons below. Your feedback on the post is welcome. Please leave it in the comments.
P.S- If you enjoyed reading this, click here to subscribe to my blog (free subscription). That way, you’ll never miss a post. You can also forward this website link to your friends and colleagues-thanks!