Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
Special pages
Niidae Wiki
Search
Search
Appearance
Create account
Log in
Personal tools
Create account
Log in
Pages for logged out editors
learn more
Contributions
Talk
Editing
Booting
(section)
Page
Discussion
English
Read
Edit
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit
View history
General
What links here
Related changes
Page information
Appearance
move to sidebar
hide
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==== Minicomputers ==== [[File:Digital pdp8-e2.jpg|thumb|PDP-8/E front panel showing the switches used to load the bootstrap program]] [[Minicomputer]]s, starting with the [[Digital Equipment Corporation]] (DEC) [[PDP-5]] and [[PDP-8]] (1965) simplified design by using the CPU to assist input and output operations. This saved cost but made booting more complicated than pressing a single button. Minicomputers typically had some way to ''toggle in'' short programs by manipulating an array of switches on the [[front panel]]. Since the early minicomputers used [[magnetic-core memory]], which did not lose its information when power was off, these bootstrap loaders would remain in place unless they were erased. Erasure sometimes happened accidentally when a program bug caused a loop that overwrote all of memory. Other minicomputers with such simple form of booting include Hewlett-Packard's [[HP 2100]] series (mid-1960s), the original [[Data General Nova]] (1969), and DEC's [[PDP-4]] (1962) and [[PDP-11]] (1970). As the I/O operations needed to cause a read operation on a minicomputer I/O device were typically different for different device controllers, different bootstrap programs were needed for different devices. DEC later added, in 1971, an optional [[diode matrix]] [[read-only memory]] for the PDP-11 that stored a bootstrap program of up to 32 words (64 bytes). It consisted of a printed circuit card, the M792, that plugged into the [[Unibus]] and held a 32 by 16 array of semiconductor diodes. With all 512 diodes in place, the memory contained all "one" bits; the card was programmed by cutting off each diode whose bit was to be "zero". DEC also sold versions of the card, the BM792-Yx series, pre-programmed for many standard input devices by simply omitting the unneeded diodes.<ref>{{cite book|url=http://www.bitsavers.org/www.computer.museum.uq.edu.au/pdf/DEC-11-HBMAA-E-D%20BM792%20Read-Only-Memory%20and%20MR11-DB%20Bootstrap%20Loader.pdf |archive-url=https://ghostarchive.org/archive/20221009/http://www.bitsavers.org/www.computer.museum.uq.edu.au/pdf/DEC-11-HBMAA-E-D%20BM792%20Read-Only-Memory%20and%20MR11-DB%20Bootstrap%20Loader.pdf |archive-date=2022-10-09 |url-status=live|title=BM792 read-only-memory and MR11~DB bootstrap loader|date=January 1974|id=DEC-II-HBMAA-E-D|publisher=[[Digital Equipment Corporation]]}}</ref><ref>{{cite book |url=http://bitsavers.org/pdf/dec/pdp11/handbooks/PDP11_PeripheralsHbk_1976.pdf |archive-url=https://ghostarchive.org/archive/20221009/http://bitsavers.org/pdf/dec/pdp11/handbooks/PDP11_PeripheralsHbk_1976.pdf |archive-date=2022-10-09 |url-status=live |title=PDP-11 Peripherals Handbook |date=1976 |publisher=[[Digital Equipment Corporation]] |page=4{{hyp}}25}}</ref> Following the older approach, the earlier [[PDP-1]] has a hardware loader, such that an operator need only push the "load" switch to instruct the [[paper tape]] reader to load a program directly into core memory. The [[PDP-7]],<ref>{{cite book|url=http://bitsavers.org/pdf/dec/pdp7/F-75_PDP-7userHbk_Jun65.pdf |archive-url=https://ghostarchive.org/archive/20221009/http://bitsavers.org/pdf/dec/pdp7/F-75_PDP-7userHbk_Jun65.pdf |archive-date=2022-10-09 |url-status=live|title=Programmed Data Processor-7 Users Handbook|page=143|publisher=[[Digital Equipment Corporation]]|date=1965}}</ref> [[PDP-9]],<ref>{{cite book|url=http://bitsavers.org/pdf/dec/pdp9/PDP-9_UsersManual.pdf |archive-url=https://ghostarchive.org/archive/20221009/http://bitsavers.org/pdf/dec/pdp9/PDP-9_UsersManual.pdf |archive-date=2022-10-09 |url-status=live|title=PDP-9 User Handbook|page=10{{hyp}}3|publisher=[[Digital Equipment Corporation]]|date=January 1968}}</ref> and [[PDP-15]]<ref>{{cite book|url=http://bitsavers.org/pdf/dec/pdp15/PDP15RefMan.pdf |archive-url=https://ghostarchive.org/archive/20221009/http://bitsavers.org/pdf/dec/pdp15/PDP15RefMan.pdf |archive-date=2022-10-09 |url-status=live|title=PDP-15 Systems Reference Manual|page=10{{hyp}}3|publisher=[[Digital Equipment Corporation]]|date=August 1969}}</ref> successors to the PDP-4 have an added Read-In button to read a program in from paper tape and jump to it. The Data General [[Data General Nova#SuperNOVA|Supernova]] used front panel switches to cause the computer to automatically load instructions into memory from a device specified by the front panel's data switches, and then jump to loaded code.<ref name="how-to-use-the-nova-computers">{{cite book |url=http://bitsavers.org/pdf/dg/DG_NM-5_How_To_Use_The_Nova_Computers_Apr1971.pdf |archive-url=https://ghostarchive.org/archive/20221009/http://bitsavers.org/pdf/dg/DG_NM-5_How_To_Use_The_Nova_Computers_Apr1971.pdf |archive-date=2022-10-09 |url-status=live |title=How To Use The Nova Computers |page=2{{hyp}}30 |publisher=[[Data General]] |date=April 1971}}</ref> ===== Early minicomputer boot loader examples ===== In a minicomputer with a paper tape reader, the first program to run in the boot process, the boot loader, would read into core memory either the second-stage boot loader (often called a ''Binary Loader'') that could read paper tape with [[checksum]] or the operating system from an outside storage medium. [[Pseudocode]] for the boot loader might be as simple as the following eight instructions: # Set the P register to 9 # Check paper tape reader ready # If not ready, jump to 2 # Read a byte from paper tape reader to accumulator # Store accumulator to address in P register # If end of tape, jump to 9 # Increment the P register # Jump to 2 A related example is based on a loader for a Nicolet Instrument Corporation minicomputer of the 1970s, using the paper tape reader-punch unit on a [[Teletype Model 33]] ASR [[teleprinter]]. The bytes of its second-stage loader are read from paper tape in reverse order. # Set the P register to 106 # Check paper tape reader ready # If not ready, jump to 2 # Read a byte from paper tape reader to accumulator # Store accumulator to address in P register # Decrement the P register # Jump to 2 The length of the second stage loader is such that the final byte overwrites location 7. After the instruction in location 6 executes, location 7 starts the second stage loader executing. The second stage loader then waits for the much longer tape containing the operating system to be placed in the tape reader. The difference between the boot loader and second stage loader is the addition of checking code to trap paper tape read errors, a frequent occurrence with relatively low-cost, "part-time-duty" hardware, such as the Teletype Model 33 ASR. (Friden Flexowriters were far more reliable, but also comparatively costly.)
Summary:
Please note that all contributions to Niidae Wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Encyclopedia:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Search
Search
Editing
Booting
(section)
Add topic