HP Time-Shared BASIC is one of the more interesting operating systems that ran on the HP 2000/21MX/1000 architecture. In general it was a multi-user, time-sharing system as its name implies. To better explain what HP 2000/Access is, this quote from the HP 2000 Access Operator's Manual does an excellent job:
Hewlett-Packard 2000 Access is a timesharing system; up to 32 users can simultaneously access the system from local or remote terminals. Users interact conversationally with the system to develop programs, store and retrieve data, receive computer assisted instruction, or perform any of a long list of multi-terminal activities. The Access system includes a Data Communications facility, making it possible for users to pass data between two Access systems or to submit jobs from Access for processing on another computer.
2000/Access is actually the final version of the HP Time-Shared BASIC system, the previous versions—2000A through 2000F—were quite similar, though each had different hardware requirements. Eric Smith gives a complete summary of the hardware requirements on his page “HP-2000 Time Shared BASIC Model Comparison”, although a quick summary of the differences would be as follows: 2000A through 2000C/2000C′ ran on the 2116B or 2116C, with a 2114B I/O processor (for 2000B and 2000C/2000C′); 2000E ran on a singular 2100A; finally 2000F and 2000/Access ran on a pair of 2100 or 21MX systems. As can be gleaned from the title of this page, the main thrust will be toward 2000/Access, and simulating it on SimH. (NB: That link goes to the project's original homepage; the current release is on GitHub.)
The way this “tutorial” of sorts will be organized will be as follows:
There are two/three pieces of software required to use HP 2000/Access.
Other software that would be required would be one's favourite C compiler and linker if one intends to build the SimH package from sources. Pre-built binary images exist for SimH for Windows (distributed on GitHub as well); and many Linux/BSD distributions have a release of SimH in their software repository; however please note that most of these versions are the pre-4.x version; this should not matter for simulating HP 2000/Access as there were little functional changes to the HP2100 simulator, however 4.0-beta is the current release which is being actively maintained.
While not a required prerequisite, it is, of course, always a good idea to read any documentation related to installing and operating a “classic” operating system, such as HP 2000/Access. Luckily, the BitSavers archive has scans of several of the HP 2000/Access manuals. Which will be linked herein:
As was mentioned far above, in the introduction to this page, the HP 2000/Access system is built around two complete HP 2100 or HP 21MX/HP 1000 systems working in tandem; therefore there are not one, but two simulator configurations which must be made, and both simulator instances need to be running simultaneously.
The “rules” for configuring the simulator are based on Chapter 1 of the HP 2000 Access Operator's Manual. At this point, one need only decide which processor model one wishes to use for their 2000/Access system. The initial lines of the simulator configuration files for the main processor (SP) should be as such:
set CPU 2100
set CPU 32K
set CPU 1000-F
set CPU 32K
Naturally the listing on the left is for HP 2100 based systems, while the one on the right
is for HP 21MX/HP 1000 based systems. Both the 2100 and
21MX/1000 series CPUs come standard with the 12579A
Extended Arithmetic Unit, which was optional in the 2116/2115/2114. Optional settings for the
2100 system processor include addition of the 12901A Floating Point firmware
ROM (via set CPU FP
), the addition of the 12907A Fast
FORTRAN Processor firmware ROM (via set CPU FFP
), as well as enabling
the Initial Binary Loader memory area (via set CPU LOADERENABLE
) which is by default loaded with the Basic Binary
Loader (BBL; which is not very useful, as the SP is not configured with a paper tape
reader, however the Basic Moving-head Disc Loader (BMDL) or Basic Magnetic Tape Loader
(BMTL) would be useful; if one can find an absolute binary image of either). The
21MX CPUs include by default the 12901A Floating Point firmware, and
12976B/13307B (the former for the 21MX-M, the latter for the
21MX-E/F) Dynamic Mapping System firmware; the 21MX-F SP chosen includes the
12977B/13306B (as with the DMS firmware the former is for the
-M, while the latter is for the -E/-F) Fast FORTRAN
Processor firmware, and 93585A Double Integer Instructions firmware (which is optional on the
-E, and not available on the -M) as standard. Optional—as in “not used by
2000/Access”—firmware additions for the 21MX-F SP
include the 92067A Extended Memory Area (set CPU EMA
) firmware or the
92084A Virtual Memory and Operating System (set CPU VMA
) firmware (which are mutually
exclusive) both of which are only useful for RTE (RTE-IV may use either,
RTE-6/VM requires the 92084A firmware on 21MX-E/F systems),
the 12824A/12829A (the former for RTE-IVB, the latter for
RTE-6/VM) Vector Instruction Set firmware (set CPU VIS
), and the 92835A
SIGNAL/1000 firmware (set CPU SIGNAL
). The 21MX/1000 series
CPUs include four Initial Binary Loaders stored in ROM, which correspond to the
following standard option boot ROMs (in order):
PTR
DPC
or DQC
MSC
DS
Configuring the CPU of the Input/Output Processor (IOP) is similar to the SP initial configuration; however the processors should be configured with the bare minimum of options. In terms of IOP memory that is defined by the peripherals installed in the IOP, and the terminal buffer lengths. From testing with a maximal possible configuration in SimH, the maximum needed memory is 24KW—where the terminal buffers have been set to maximum size—for most cases however, 16KW would suffice.
The CPU of the IOP must also be configured without any of the
“optional” extensions listed above, but the IOP does have to have the
2000/Access I/O Processor firmware
ROMs installed (corresponding to 13206A for the 2100, 13207A
for the 21MX-M, or 22702A for the 21MX-E/F; the simulator
command being set CPU IOP
).
set CPU 2100
set CPU 16K
set CPU IOP
set CPU 1000-M
set CPU 32K
set CPU IOP
As with the SP, to the left is the setup for the 2100 based IOP, and the right is for the 21MX/1000 based IOP. The IOP memory has been over-specified—to avoid out of memory issues in IOP configuration process—for the 21MX/1000 based IOP; minimal memory has been “installed” in the 2100 based IOP, as per its minimal configuration (see below).
The next part of the configuration file is the same for both the SP and IOP: disabling all devices. This is not strictly needed, but it makes sense to start from a blank slate.
set PTR disabled
set PTP disabled
set TBG disabled
set LPS disabled
set LPT disabled
set BACI disabled
set MPX disabled
set DPD disabled
set DPC disabled
set DQD disabled
set DQC disabled
set DRD disabled
set DRC disabled
set DS disabled
set MTD disabled
set MTC disabled
set MSD disabled
set MSC disabled
set MUXL disabled
set MUX disabled
set MUXC disabled
set IPLI disabled
set PIF disabled
set DA disabled
At this point the configurations files once again diverge. However, the divergence is only in regards to the SP and IOP configurations there is no longer a difference in CPU models at this point in the configuration files. The first system to be configured will be the SP, as it has a somewhat minimal number of devices, compared to the IOP. Per the first chapter of the HP 2000 Access Operator's Manual, there are four absolutely required devices for the main processor:
A disk controller is also required, however it is possible to have multiple disk controllers in the system, depending on the disk configuration. Again, per the HP 2000 Access Operator's Manual, we can see which types of disc, and hence disk controller are supported by HP 2000/Access:
As discussed in the manual, it is possible to configure the SP with one or more of the same drive (namely: all 7900s, all 2883s, all 7905s, or all 7920s), to configure it with 7900s or 2883s and 7905s or 7920s, or finally to configure it with 7900s or 2883s and a mixture of 7905s and 7920s. It is not possible to configure the system with a 13210A and 12565A simultaneously; it is possible to configure the system with a 13175D and either the 13210A or 12565A however. When configured with two disc controllers, the 13175D must have higher priority in the interrupt chain than the 13210A or 12565A.
The manual however does not mention that both the 7906M and 7925M disc drives are also supported on the 13210A controller within 2000/Access. Both drives function as expected; the 7906M is used fully, however the 7925M disk is not fully used, only 65515 blocks are used—as on the 7920M.
The SP must be configured in a particular order. The above list of required options lists them in their order of select code precedence. The disc controller(s) are placed between the 12539C Time Base Generator and whichever Digital Magnetic Tape Unit Interface is in use. Therefore, two example configurations—one a “minimalist” configuration, and one a “large” configuration—will be demonstrated, for the sake of completeness.
(Octal) Select Codes | Device |
---|---|
10, 11 | 12875A Processor Interconnect |
12 | 12531C Buffered Teleprinter Interface |
13 | 12539C Time Base Generator |
14, 15 | 13210A Disc Drive Interface |
16, 17 | 13181A Digital Magnetic Tape Unit Interface |
(Octal) Select Codes | Device |
---|---|
10, 11 | 12875A Processor Interconnect |
12 | 12531D Buffered Terminal Interface |
13 | 12539C Time Base Generator |
14 | 13175D Disc Controller Interface |
15, 16 | 12565A Disc Interface |
17, 20 | 13183B Digital Magnetic Tape Unit Interface |
It should noted that unfortunately SimH 4.x does not support the 12531D Buffered Terminal Interface and 2762A Terminal Printer for simulation the corresponding simulator configuration will use the 12531C Buffered Teleprinter Interface and 2754A Teleprinter in lieu of the 12531D plus 2762A. The actual simulator configurations for the two examples above would be:
; Enable devices and place them in the right order
set TTY DEVNO=12
set IPLI enabled
set IPLI DEVNO=10
set TBG enabled
set TBG DEVNO=13
set DPC enabled
set DPC DEVNO=14
set MSC enabled
set MSC DEVNO=16
; Configure 12531C and 2754A
set TTY0 UC
set TTY1 7P
; Configure 12539C
set TBG CALTIME
set TBG W1A
set TBG W2A
; Configure 13210A and singular 7900A disk
set DPC 13210A
set DPC0 ENABLED
set DPC0 UNPROTECT
set DPC1 disabled
set DPC2 disabled
set DPC3 disabled
; Configure 13181A and singular 7970B
set MSC 13181A/B
set MSC FASTTIME
set MSC0 enabled
set MSC1 disabled
set MSC2 disabled
set MSC3 disabled
; Configure 12875A
set IPLI LINK
set IPLO LINK
; Enable devices and place them in the right order
set TTY DEVNO=12
set IPLI enabled
set IPLI DEVNO=10
set TBG enabled
set TBG DEVNO=13
set DQC enabled
set DQC DEVNO=15
set MSC enabled
set MSC DEVNO=17
set DS enabled
set DS DEVNO=14
; Configure 12531C and 2754A
set TTY0 UC
set TTY1 7P
; Configure 12539C
set TBG CALTIME
set TBG W1A
set TBG W2A
; Configure 12565A and two 2883 disks
set DQC0 enabled
set DQC0 UNPROTECT
set DQC1 enabled
set DQC1 UNPROTECT
; Configure 13183B and four 7970E
set MSC 13183A/B
set MSC FASTTIME
set MSC0 enabled
set MSC1 enabled
set MSC2 enabled
set MSC3 enabled
; Configure 13175D, one 7906M disk, and two 7920M disks
set DS0 enabled
set DS0 NOFORMAT
set DS0 UNPROTECT
set DS0 7906
set DS1 enabled
set DS1 NOFORMAT
set DS1 UNPROTECT
set DS1 7920
set DS2 enabled
set DS2 NOFORMAT
set DS2 UNPROTECT
set DS2 7920
set DS3 disabled
set DS4 disabled
set DS5 disabled
set DS6 disabled
set DS7 disabled
; Configure 12875A
set IPLI LINK
set IPLO LINK
There is some redundancy within each of the example configurations above, mostly to force the simulators into a known configuration. The redundancy comes from the fact the simulator has most of the required devices enabled by default (thus the process of disabling all the devices, and then enabling only those being used is redundant), similarly several of the device defaults match with the configured settings.
The minimalist configuration for the 2100 series SP, beyond the unchangeable 12875A, 12531C, and 12539C consists of a 13210A with a single 7900A disk drive, and a 13181A controller with a single 7970B. This would be the absolute bare minimum SP configuration for HP 2000/Access. The configuration for the 21MX/1000 series SP has the required 12875A, 12531C, and 12539C (please note: as was mentioned above, SimH does not support the 12531D, hence its replacement by the 12531C), it has been equipped with two hard disk controllers, the 13175D fitted with one 7906M and two 7920M drives and the 12565A fitted with two 2883 drives, and uses the 13183B with four 7970E tape units.
The final step in configuring the simulators is to attach the simulated devices. The “mandatory” attach commands are those associated with the 12875A Processor Interconnect and the configured disc drives. An optional pair of configurations is to setup the system console device as telnet attached, and to setup the simulator console for remote (telnet) connection. Neither of the optional configuration steps are necessary—hence why they are optional—though having the remotely attached simulator console does allow for attaching and detaching devices without halting the simulator to do so. The example 21MX configuration file has configuration lines for the optional telnet console and remote simulator console features, however they have been commented out.
; Attach 12875A Processor Interconnect
attach -L IPLI 65534
attach -L IPLO 65535
; Attach 7900A disk pack
attach DPC0 ACCESS.DSK
; Configure telnet console
set CONSOLE TELNET=65531
set CONSOLE TELNET=BUFFERED=32768
; Configure Remote Console
set REMOTE TLENET=65532
set REMOTE NOMASTER
; Attach 12875A Processor Interconnect
attach -L IPLI 65534
attach -L IPLO 65535
; Attach disks
attach DQC0 ACCESS3.dsk
attacg DQC1 ACCESS4.dsk
attach DS0 ACCESS0.dsk
attach DS1 ACCESS1.dsk
attach DS2 ACCESS2.dsk
One should, of course, choose port numbers and file names which work for one's own system, as opposed to the
examples given herein. The two “parts” of the 12875A Processor Interconnect (simulator devices
IPLI
and IPLO
) are configured to listen on sockets 65534 and 65535 for the IOP.
In the 21MX-F/1000-F SP configuration telnet ports are opened at sockets 65531 and 65532 for the console
teleprinter device (65531) and the remote simulator console (65532). The console teleprinter is given a 32KB
buffer as well, allowing for “headless” operation; the remote console by default is configured with an
8KB buffer, however as it is not defined to be a master console, it may safely be ignored if one does not
wish to use it.
Configuration of the IOP is more “interesting” than the SP. This is mostly because of the much greater array of peripherals which attach to the IOP of the HP 2000/Access system. SimH supports many of the peripherals, although, not in multiple as was possible with the real hardware. The HP 2000 Access Operator's Manual provides a list of the supported optional hardware for the IOP:
There are some devices which are required by the IOP, which are also listed in the HP 2000 Access Operator's Manual as well:
As with the SP above, the list of required devices is ordered in terms of decreasing select code priority. The optional device interfaces would be installed after the required devices, with the exception of the 12618A Synchronous Modem Interface which is installed before the 12539C Time Base Generator. The optional devices may be installed in any order, further many of the optional devices may be installed in multiple, per the HP 2000 Access Operator's Manual:
I/O Device Type | Number |
---|---|
Line Printers | 7 |
Paper Tape Readers | 7 |
Card Readers | 7 |
Card Readers/Punches/Interpreters | 7 |
Synchronous Modems | 1 |
The 92900A Real Time Applications Terminal Subsystem, consisting of two different parts is somewhat more odd, namely, it is possible to have a maximum of seven 40280A Serial Link Controllers in the IOP, but only thirty-one 3070A Terminals in total. The 40280A can host up to thirty-one 3070As each; therefore with seven 40280As the maximum physically supported number of 3070As is two hundred and seventeen, but only thirty-one are supported by the 2000/Access software.
In a 2000/Access system utilizing 2100 series processors,
one 2748A paper tape reader is required for loading the system; however SimH obviates the need for the
2748A. A restriction imposed on the IOP configuration by SimH is the presence of a
12531C teleprinter interface, as the corresponding SimH device (TTY
) cannot be
disabled. Finally, SimH does not provide support for some of the devices (2892A,
7261A, 2894A, 2610A, 2614A,
2778A, the 92900A subsystem, 2753B, and
12618A), nor does it support multiples of the supported devices (excluding printers; one
2767A and one 2607A, 2613A, 2617A,
or 2618A printer are supported).
As with the SPs two configurations will be provided for the IOPs, one minimal and one “large.” In this case, the minimal configuration will be applied to the 2100 series processor, and the large configuration for the 21MX, mirroring the SP configurations. The IOP CPU and RAM options are as illustrated above, and all possible devices have been disabled (also as above), what is next is configuration of the device codes for the IOPs. The 2100 series IOP will be configured with the required devices, plus the technically required 2748A, and an optional 2767A printer; the 21MX series IOP will be configured with the required devices as well as optional 2748A tape reader, 2895A tape punch, 2767A printer, and 2618A printer. The 12531C has been set to select code 778, to put it far “out of the way of” the supported devices. Therefore the select code assignments would be as follows:
(Octal) Select Codes | Device |
---|---|
10 | 12539C Time Base Generator |
11, 12, 13 | 12920A Asynchronous Multiplexer Interface |
14, 15 | 12875A Processor Interconnect |
16 | 12597A-002 Tape Reader Interface |
17 | 12653A Line Printer Interface |
77 | 12531C Buffered Teleprinter Interface |
(Octal) Select Codes | Device |
---|---|
10 | 12539C Time Base Generator |
11, 12, 13 | 12920A Asynchronous Multiplexer Interface |
14, 15 | 12875A Processor Interconnect |
16 | 12597A-002 Tape Reader Interface |
17 | 12597A-005 Tape Punch Interface |
20 | 12845B Line Printer Interface |
21 | 12653A Line Printer Interface |
77 | 12531C Buffered Teleprinter Interface |
The corresponding lines for the configuration files would be:
; Enable devices and place them in the right order
set PTR enabled
set PTR DEVNO=16
set TTY DEVNO=77
set TBG enabled
set TBG DEVNO=10
set LPS enabled
set LPS DEVNO=17
set MUX enabled
set MUX DEVNO=11
set MUXC enabled
set MUXC DEVNO=13
set IPLI enabled
set IPLI DEVNO=14
; Configure 12597A-002
set PTR READER
; Configure 12539C
set TBG CALTIME
set TBG W1A
set TBG W2A
; Configure 12653A
set LPS PRINTER
set LPS POWERON
set LPS FASTTIME
; Configure 12920A
set MUX TERMINAL
set MUX LINEORDER=ALL
; Configure 12875A
set IPLI LINK
set IPLO LINK
; Enable devices and place them in the right order
set PTR enabled
set PTR DEVNO=16
set PTP enabled
set PTP DEVNO=17
set TTY DEVNO=77
set TBG enabled
set TBG DEVNO=10
set LPS enabled
set LPS DEVNO=21
set LPT enabled
set LPT DEVNO=20
set MUX enabled
set MUX DEVNO=11
set MUXC enabled
set MUXC DEVNO=13
set IPLI enabled
set IPLI DEVNO=14
; Configure 12597A-002
set PTR READER
; Configure 12539C
set TBG CALTIME
set TBG W1A
set TBG W2A
; Configure 12653A
set LPS PRINTER
set LPS POWERON
set LPS FASTTIME
; Configure 12845B
set LPT 2618
set LPT EXPAND
set LPT POWERON
set LPT FASTTIME
set LPT PRINTER
set LPT VFU
; Configure 12920B
set MUX TERMINAL
set MUX LINEORDER=ALL
; Configure 12875A
set IPLI LINK
set IPLO LINK
As with the configurations for the SP, there is redundancy within the IOP configurations, but which are included to ensure the simulator is in a known good state. The final portion of each simulator configuration file is setting up the correct attachments needed for the simulator to function.
; Attach 2676A Printer
attach LPS LPS_%DATE_YYYY%-%DATE_MM%-%DATE_DD%.txt
; Attach 12920A Multiplexer
attach MUX 65533
; Attach 12875A Processor Interconnect
attach -CW IPLI 65535
attach -CW IPLO 65534
; Attach 2676A Printer
attach LPS LPS_%DATE_YYYY%-%DATE_MM%-%DATE_DD%.txt
; Attach 2618A Printer
attach LPT LPT_%DATE_YYYY%-%DATE_MM%-%DATE_DD%.txt
; Attach 12920B Multiplexer
attach MUX 65533
; Attach 12875A Processor Interconnect
attach -CW IPLI 65535
attach -CW IPLO 65534
Port numbers and file names may of course be varied to suit the needs of the user's own particular system. One
must attach the two parts of the 12875A Processor Interconnect such that the port for the
SP IPLI
device is assigned to the IOP IPLO
device, and
vice versa. The processor interconnect is setup such that the SP will listen for connections, and the
IOP will initiate the connection; the -W
flag on the IOP processor
interconnect attach commands also requests that the IOP wait thirty seconds for the connection to be
established. Therefore, it is necessary, when starting the simulators, to first start the SP, and then start
the IOP for the processor interconnect to function. The printer file names make use of the SimH 4.x
SCP environment variables for date and time, such that the file name consists of the printer device name
followed by the day's date in ISO 8601 format (so, if the simulator was run on June 6th, 1944
then the file would be named LPx_1944-06-06.txt
).
Some optional additions that may be added to either configuration file would be ECHO
commands to list useful
information about the simulator or simulator configuration. One could also add commands to reply to messages on the system console
(of the SP) to automate replies to certain queries, such as the setting the system date and time. An example
of the latter would be as such:
set quiet
expect -pri "\nDATE[?]" send -t AFTER=500000,DELAY=100000 "%DATE_JJJ%/%DATE_YY%\r"; c
expect -pri "\nTIME[?]" send -t AFTER=500000,DELAY=100000 "%TIME_HH%%TIME_MM%\r"; c
A further option would be to load a customized vertical forms unit (VFU) tape for the 2607A/2610A/2617A/2618A line printer on the IOP, if one has setup the IOP with one. The documentation of the VFU file is described in the SimH simulator documentation file, an example VFU file is provided below; the demonstration VFU tape is a twelve channel type, suitable for use with the 2613A, 2617A, or 2618A simulations; it will be truncated to eight channels when applied to a simulated 2607A. The first nine channels of the example VFU tape match with the standard HP 02613-80001 VFU tape (the functions being advance to top of form, advance to bottom of form, advance one line, advance two lines, advance three lines, advance to the next half of a page, advance to the next quarter of a page, advance to the next sixth of a page, advance to the bottom of form) and consequently the first eight columns match with the HP standard eight channel tape, 02607-80024. Channels ten, eleven, and twelve of the VFU tape provide the functions of advance to the next third of a page, advance to the next fifth of a page, and advance to the next tenth of a page. The example of how to do so would be:
set LPT VFU=demonstration.vfu
Download links for the four simulator configuration files, and the demonstration VFU tape may be found in the table below:
2100 | 21MX | |
---|---|---|
SP | 2100A SP | 21MX-F SP |
IOP | 2100A IOP | 21MX-M IOP |
VFU | Demonstration VFU Tape |
The demonstration VFU tape may be used by any IOP model. Though, the example 2100A IOP is not configured with a 2607A, 2613A, 2617A, or 2618A printer and thus the VFU tape is not used for that IOP. The example 21MX-M IOP configuration file expects the demonstration VFU tape file to be located in the same directory. The example SP configurations both enable all optional CPU features, even if they are not used by 2000/Access.
The first step in bringing up an HP 2000/Access system is
to configure the I/O processor program. The configuration process is done twice: once to store the
IOP configuration on the master tape image, and once to produce a standalone IOP
loader tape image. To begin configuring the IOP, one must first boot from the master tape image for one's
respective processor type. (Aside: It would be wise to make a copy of the original tape image, and work from that; just in case the
image gets damaged, it avoids needing to download the image again.) If one is working with a copy of the tape image named
“master.tap” attaching the tape image may be done with attach -e MSC0 master.tap
—the -e
flag ensuring that the tape image exists before attempting to attach it—and both simulated processor types may be booted with
boot MSC0
; the 21MX/1000 series SP may also be booted using the
IBL ROMs. As discussed, the 21MX-F SP has the 12992D ROM
(7970B/E magnetic tape bootstrap) installed in the second socket, and we want to boot the first file on the
master tape to load in the Master Program. Deposit the value 10sc018 into the S
register, and the value 0000018 into the A register of the 21MX, where
sc is equivalent to the select code of the 13181A/B or 13183A/B
interface, on a real 21MX/1000 system the IBL and RUN keys
would be pressed to start the processor, for SimH simply issue the boot
command for the CPU;
the simulator commands as issued would be, using the 21MX-F SP configuration above:
attach -e MSC0 master.tap
deposit S 101701
deposit A 000001
boot CPU
However one has booted the magnetic tape, the system will present a 1020778 halt code, the specific message being
“Programmed halt, T: 102077 (HLT 77), P: 77756 (x)” where x is
“NOP
” on a 2100 processor, and “ALF,ALF
” on a
21MX/1000 processor. The response to the 1020778 halt is to set the processor to run from memory
location 20008; for both real systems this would be done by selecting the P register, clearing
the display, storing a value of 0020008, and pressing the RUN key, for SimH simply issue the
command go 2000
at the prompt. The Master Program will print a prompt asking whether the SP
console is a 2754 if all went well. The responses for both processors are now the same, the Master Program and
I/O Processor Configurator messages will be indicated as such, and typed responses are
indicated as such. (“↵” indicates pressing the Enter/Return key.)
2754? YES↵ LOAD WHICH MODULE? I/O↵ HP2000 I/O PROCESSOR CONFIGURATOR RELOAD? NO↵ DATE? [Enter any text string, maximum of 20 characters long.]↵
The next series of prompts are specific to the IOP configuration. To the left will be the configuration corresponding to the sample 2100 configuration, and to the right will be the configuration corresponding to the sample 21MX configuration.
MEMORY SIZE? 16↵ NUMBER OF PORTS? 16↵ BUFFER LENGTH OPTION? YES↵ ALL,40↵ END↵ TIME BASE GENERATOR SELECT CODE? 10↵ INTERCONNECT KIT SELECT CODE? 14↵ MULTIPLEXER SELECT CODE? 11↵ 2741 TYPE TERMINALS? NO↵ INCLUDE RJE FUNCTION? NO↵ NON-SHAREABLE DEVICES? YES↵ NUMBER OF MT DEVICES? 1↵ MT0 DEFAULT RECORD SIZE? (MAXIMUM IS 1024) ↵ NUMBER OF PR DEVICES? 1↵ PR0 SELECT CODE? 16↵ PR0 DEFAULT RECORD SIZE? (MAXIMUM IS 0064) ↵ NUMBER OF PP DEVICES? 0↵ NUMBER OF LP DEVICES? 1↵ LP0 SELECT CODE? 17↵ LP0 SUBTYPE? 2↵ LP0 DEFAULT RECORD SIZE? (MAXIMUM IS 0040) ↵ NUMBER OF CR DEVICES? 0↵ NUMBER OF RP DEVICES? 0↵ NUMBER OF SL DEVICES? 0↵ NUMBER OF LT DEVICES? 0↵
MEMORY SIZE? 24↵ NUMBER OF PORTS? 16↵ BUFFER LENGTH OPTION? YES↵ ALL,128↵ END↵ TIME BASE GENERATOR SELECT CODE? 10↵ INTERCONNECT KIT SELECT CODE? 14↵ MULTIPLEXER SELECT CODE? 11↵ 2741 TYPE TERMINALS? NO↵ INCLUDE RJE FUNCTION? NO↵ NON-SHAREABLE DEVICES? YES↵ NUMBER OF MT DEVICES? 4↵ MT3 DEFAULT RECORD SIZE? (MAXIMUM IS 1024) ↵ MT2 DEFAULT RECORD SIZE? (MAXIMUM IS 1024) ↵ MT1 DEFAULT RECORD SIZE? (MAXIMUM IS 1024) ↵ MT0 DEFAULT RECORD SIZE? (MAXIMUM IS 1024) ↵ NUMBER OF PR DEVICES? 1↵ PR0 SELECT CODE? 16↵ PR0 DEFAULT RECORD SIZE? (MAXIMUM IS 0064) ↵ NUMBER OF PP DEVICES? 1↵ PP0 SELECT CODE? 17↵ PR0 DEFAULT RECORD SIZE? (MAXIMUM IS 0064) ↵ NUMBER OF LP DEVICES? 2↵ LP1 SELECT CODE? 21↵ LP1 SUBTYPE? 2↵ LP1 DEFAULT RECORD SIZE? (MAXIMUM IS 0040) ↵ LP0 SELECT CODE? 20↵ LP0 SUBTYPE? 1↵ LP0 DEFAULT RECORD SIZE? (MAXIMUM IS 0068) ↵ NUMBER OF CR DEVICES? 0↵ NUMBER OF RP DEVICES? 0↵ NUMBER OF SL DEVICES? 0↵ NUMBER OF LT DEVICES? 0↵
One can answer “no” to the “BUFFER LENGTH OPTION?” query, if it is acceptable to
have all terminal buffers be 60 words in length. The “ALL,n
” construction used sets all buffers to
be equal to the specified length; it is possible to configure the length of a single port's buffer as
“p,n
” and it is possible to configure a range of buffers to a specified length with
“p0-pn,n
”.
The next step is to save the configured I/O processor program to the master tape.
MAGNETIC TAPE COPY? YES↵ SEPARATE TAPE? NO↵ PRINT CONFIGURATION REPORT? NO↵ START IOP PROTECTED LOADER. PRESS RETURN
Once the “START IOP PROTECTED LOADER.” message is issued, at the simulator which is configured as the
2000/Access IOP, one must now boot the 12875A Processor
Interconnect. For both simulators, one may simple issue the command boot IPLI
. On the 21MX
simulation, one may also use the installed 12992K bootstrap ROM to do the same; to utilize the
12992K ROM on the real hardware, one would press the HALT key, press the PRESET key, deposit a value of
00sc008 into the S register (where sc is the higher priority select code of
the 12875A), and then press the IBL key. On SimH the preceding sequence may be replicated by first halting
the simulator if it is running (default key is Control+E), then entering the following commands at the simulator prompt:
reset
deposit S 001400
boot CPU
The select code for the 12875A Processor Interconnect in the two demonstration configurations is used. If SimH at some point in the future acquires either a second 12920A Asynchronous Multiplexer Interface, or a 12618A Synchronous Data Set Interface, the select code might change (depending on the configuration).
For the 2100 simulation, one may use the built-in Basic Binary Loader. On the real hardware, one would not actually use the BBL, but the program loaded into the loader space when booting the Master Program via paper tape, the process though would be to press the HALT key, INTERNAL PRESET key, EXTERNAL PRESET key, then select and clear the S register, select the P register and set it to the beginning of the loader space based on the size of the memory installed in the processor (0377008 for a 16K machine, 0577008 for a 24K machine, and 0777008 for a 32K machine), then press the LOADER ENABLE key, and the RUN key. For SimH, as with the 21MX simulation, if the simulator is running first halt it (with Control+E), after enabling the BBL three instructions must be changed to be able to bootstrap the processor:
reset
deposit S 000000
deposit P 0x7700
set CPU LOADERENABLE
deposit 0x7763 1037sc
deposit 0x7764 1023sc
deposit 0x7766 1025sc
go
The value of x is, as stated above, dependent on the size of the IOP memory. And sc is dependent on the select code of the 12875A Processor Interconnect. For the example 2100 IOP configuration, one would use a value of 3 for x, and a value of 148 for sc.
However one goes about starting the I/O processor, once it has started, press the Return/Enter key at the
prompt on the SP console. The IOP will then halt with a 1020778 halt, and
the SP console with print a prompt to start the IOP at location 2002. Issue
go 2002
at the IOP, and the IOP will once again present a
1020778 halt, the SP console will indicate that the IOP configuration is
complete, and that the IOP may be started at location 2, it will also return to the Master Program
“LOAD WHICH MODULE?” prompt. That is:
START IOP PROTECTED LOADER. PRESS RETURN [Boot the IOP]↵ START IOP AT LOCATION 2002 [Enter “go 2002” at the IOP.] HP2000 I/O PROCESSOR CONFIGURATION COMPLETE (I/O PROCESSOR MAY BE STARTED AT LOCATION 2) LOAD WHICH MODULE?
sim> [Boot the IOP.] Programmed halt, T: 102077 (HLT 77), P: xxxxx (yyyyy) sun> go 2002↵ Programmed halt, T: 102077 (HLT 77), ppp75 (JMP ppp74) sim>
While the configurator program says that the IOP may be started at location two, this is
unnecessary, as the IOPC will be run a second time, to produce a standalone loader tape for the
IOP. If the IOP is built on the 2100 series processor,
and it was started using the (modified) built-in BBL, enter the command set CPU
LOADERDISABLE
at the simulator prompt before continuing. Rerunning the IOPC is the same as the
initial run, up until the “MAGNETIC TAPE COPY?” stage. Therefore, the sessions for the examples would mirror
the above sessions:
LOAD WHICH MODULE? I/O↵ HP2000 I/O PROCESSOR CONFIGURATOR RELOAD? NO↵ DATE? [Enter any text string, maximum of 20 characters long.]↵ MEMORY SIZE? 16↵ NUMBER OF PORTS? 16↵ BUFFER LENGTH OPTION? YES↵ ALL,40↵ END↵ TIME BASE GENERATOR SELECT CODE? 10↵ INTERCONNECT KIT SELECT CODE? 14↵ MULTIPLEXER SELECT CODE? 11↵ 2741 TYPE TERMINALS? NO↵ INCLUDE RJE FUNCTION? NO↵ NON-SHAREABLE DEVICES? YES↵ NUMBER OF MT DEVICES? 1↵ MT0 DEFAULT RECORD SIZE? (MAXIMUM IS 1024) ↵ NUMBER OF PR DEVICES? 1↵ PR0 SELECT CODE? 16↵ PR0 DEFAULT RECORD SIZE? (MAXIMUM IS 0064) ↵ NUMBER OF PP DEVICES? 0↵ NUMBER OF LP DEVICES? 1↵ LP0 SELECT CODE? 17↵ LP0 SUBTYPE? 2↵ LP0 DEFAULT RECORD SIZE? (MAXIMUM IS 0040) ↵ NUMBER OF CR DEVICES? 0↵ NUMBER OF RP DEVICES? 0↵ NUMBER OF SL DEVICES? 0↵ NUMBER OF LT DEVICES? 0↵ MAGNETIC TAPE COPY?
LOAD WHICH MODULE? I/O↵ HP2000 I/O PROCESSOR CONFIGURATOR RELOAD? NO↵ DATE? [Enter any text string, maximum of 20 characters long.]↵ MEMORY SIZE? 24↵ NUMBER OF PORTS? 16↵ BUFFER LENGTH OPTION? YES↵ ALL,128↵ END↵ TIME BASE GENERATOR SELECT CODE? 10↵ INTERCONNECT KIT SELECT CODE? 14↵ MULTIPLEXER SELECT CODE? 11↵ 2741 TYPE TERMINALS? NO↵ INCLUDE RJE FUNCTION? NO↵ NON-SHAREABLE DEVICES? YES↵ NUMBER OF MT DEVICES? 4↵ MT3 DEFAULT RECORD SIZE? (MAXIMUM IS 1024) ↵ MT2 DEFAULT RECORD SIZE? (MAXIMUM IS 1024) ↵ MT1 DEFAULT RECORD SIZE? (MAXIMUM IS 1024) ↵ MT0 DEFAULT RECORD SIZE? (MAXIMUM IS 1024) ↵ NUMBER OF PR DEVICES? 1↵ PR0 SELECT CODE? 16↵ PR0 DEFAULT RECORD SIZE? (MAXIMUM IS 0064) ↵ NUMBER OF PP DEVICES? 1↵ PP0 SELECT CODE? 17↵ PR0 DEFAULT RECORD SIZE? (MAXIMUM IS 0064) ↵ NUMBER OF LP DEVICES? 2↵ LP1 SELECT CODE? 21↵ LP1 SUBTYPE? 2↵ LP1 DEFAULT RECORD SIZE? (MAXIMUM IS 0040) ↵ LP0 SELECT CODE? 20↵ LP0 SUBTYPE? 1↵ LP0 DEFAULT RECORD SIZE? (MAXIMUM IS 0068) ↵ NUMBER OF CR DEVICES? 0↵ NUMBER OF RP DEVICES? 0↵ NUMBER OF SL DEVICES? 0↵ NUMBER OF LT DEVICES? 0↵ MAGNETIC TAPE COPY?
As was done when saving the IOP configuration to the master tape above, respond “yes” to the magnetic tape copy question, this time also respond “yes” to the separate tape, and configuration report questions. In other words:
MAGNETIC TAPE COPY? YES↵ SEPARATE TAPE? YES↵ PRINT CONFIGURATION REPORT? YES↵ START IOP PROTECTED LOADER. PRESS RETURN
The process of starting and loading the IOP is as above, however one will need to replace the master tape
with a new (blank) tape image, and a listing of the configured IOP memory map will be printed as well. As
was mentioned above, if the IOP is built around a 2100 series processor, and it was
bootstrapped from using the internal BBL, before the final run
command is issued, first issue a
set CPU LOADERDISABLE
command.
START IOP PROTECTED LOADER. PRESS RETURN [Boot the IOP]↵ DISMOUNT MASTER TAPE MOUNT IOP COPY TAPE PRESS RETURN[Ctrl/E] Simulation stopped, P: x (x) sim> detach MSC0↵ sim> attach MSC0 iop.tap↵ MSC: creating new file sim> continue↵ ↵ START IOP AT LOCATION 2002 [Enter “go 2002” at the IOP.] [I/O processor memory map listing omitted.] HP2000 I/O PROCESSOR CONFIGURATION COMPLETE (I/O PROCESSOR MAY BE STARTED AT LOCATION 2) Programmed halt, T: 102077 (HLT 77), P: 17210 (JMP 17207) sim> [Start the IOP at location 2.]
sim> [Boot the IOP.] Programmed halt, T: 102077 (HLT 77), P: xxxxx (yyyyy) sun> go 2002↵ Programmed halt, T: 102077 (HLT 77), ppp75 (JMP ppp74) sim> run 2↵
The memory maps for both IOPs are, of course, different. The memory maps of the example configurations are as follows:
I/O PROCESSOR MEMORY MAP - DATE=[Text entered at “DATE?” prompt.] I/O LINKAGE S.C. DRIVER I.L. I.E. U.N. EQT 10 D.43 0646 I.43 07 34154 11 D.51 0455 I.51 11 34170 12 HLT 13 0647 K.51 14 D.61 0300 I.61 10 34162 14 D.63 0300 I.61 12 34176 15 HLT 16 D.140 0651 I.140 14 34212 17 D.120 0650 I.120 13 34204 BASE PAGE LINKS - 00020 - 00651 AVAILABLE MEMORY - 34254 - 37677 ASCII FILES L.U. DESIGNATOR SELECT CODE RECORD SIZE 00 LP0-2 17 0040 01 PR0 16 0064 02 MT0 16 0256 MODULE MAP MN 02000-03663 DUMP 03664-04062 TBGH 04063-04115 ICKH 04116-11500 MUXH 11501-12172 MEMRY 12173-12344 IOC 12345-14374 D.43 14375-14774 D.61 14775-20227 D.51A 20230-25016 D.63 25017-25753 D.120 25754-26014 D.140 26015-26047 D.12C 26050-27115 D.14C 27116-27704 D.04 27705-30243 ASFH 30244-32244 PR0 32245-32266 LP0 32267-32307 CRC 32310-33067 LPC 33070-33566 QIT SUMMARY DESIGNATOR QIT DESIGNATOR QIT DESIGNATOR QIT DESIGNATOR QIT TG0 33656 IK0 33665 MX0 33674 AF0 33703 LP0 33712 PR0 33721 ENTRY POINT MAP .ALC. 12173 .ALL 03267 .ATOE ----- .BSY 03506 .BUFR 13317 .C11R 17126 .C1OT 15074 .C1XM 15101 .COM. 33567 .DA 03433 .DAT 34150 .DEAL 03311 .DUMP 03665 .DVTB 34126 .FIND 03333 .FREB 03061 .GDVP 03627 .GETB 02737 .GETQ 02622 .IOC. 12350 .LTC. 14637 .LTS. 14626 .MEM. 02003 .PRIQ 02542 .PURQ 02664 .PUTQ 02513 .RTN. 12240 .SEEQ 02555 .TINT 02322 .UBSY 03564 .UNS. 13373 A.51 23101 ADV 25405 ALB 25502 ASFHC 31033 ASFHI 30325 ASFHP 30436 CBE ----- CDONE 15650 CMPLT 03614 CONST 30324 CRCHC 32623 CRCHI 32310 CRCHP 32335 CRQ 13605 D.04 27705 D.04? 30127 D.04I 30125 D.04R 30171 D.120 25754 D.12C 26050 D.140 26015 D.14C 27142 D.43 14375 D.51 20230 D.61 15031 D.61S 15760 D.63 25042 DEATH 17532 DEVAD 33654 DMAC1 12346 DMAC2 12347 DMAXF 17633 DMCMP 17706 DMJSB 17727 DMTMX 33653 DMTOM 17461 FREG 03664 I.120 25756 I.12C 26501 I.140 26017 I.14C 27266 I.43 14650 I.51 21316 I.61 15613 ICKHC 04726 ICKHI 04116 ICKHP 04416 ICNVR ----- ISPC 15675 K.51 23400 KDO 25644 LP0HC 32274 LP0HI 32267 LP0HP 32272 LPHC 33324 LPHI 33475 LPHP 33070 LUT51 24157 LUT61 17730 MAX 17566 MPXEP 22270 MUXEP 21277 MUXHC 12025 MUXHI 11533 MUXHP 11654 OCNVR ----- OMTOM 17333 P.120 25761 P.12C 26734 P.140 26022 P.14C 27616 P.43 14736 P.51 23567 P.61 17202 PANIC 17477 PCF 25354 PHO 06133 PNTR 12341 PR0HC 32252 PR0HI 32245 PR0HP 32250 PULPT 03264 QHEAD 13674 QITAD 33655 QITAF 33733 QITMX 33732 QITND 33730 QITNR 33731 QTOP 14757 RDV 25425 RJE ----- RJEIN 17020 RJUNS ----- RMTOM 17466 RSTRT 02107 SBL 06144 SIBAF 32230 SIBIK 06241 START 02010 STR 25346 T.12C 27052 T.14C 27571 TBGHC 04112 TBGHI 04063 TBGHP 04101 TBGHQ 04071 TTPTR 02152 UCT00 25740 ULOAD 15765 WATSP 15110 WORD2 17567 XEQT 12345 XRB 25574
I/O PROCESSOR MEMORY MAP - DATE=[Text entered at “DATE?” prompt.] I/O LINKAGE S.C. DRIVER I.L. I.E. U.N. EQT 10 D.43 1016 I.43 07 43411 11 D.51 0470 I.51 11 43425 12 HLT 13 1017 K.51 14 D.61 0302 I.61 10 43417 14 D.63 0302 I.61 12 43433 15 HLT 16 D.140 1023 I.140 16 43463 17 D.130 1022 I.130 15 43455 20 D.120 1020 I.120 13 43441 21 D.121 1021 I.121 14 43447 BASE PAGE LINKS - 00022 - 01023 AVAILABLE MEMORY - 43525 - 57677 ASCII FILES L.U. DESIGNATOR SELECT CODE RECORD SIZE 00 LP0-1 20 0068 01 LP1-2 21 0040 02 PP0 17 0064 03 PR0 16 0064 04 MT0 17 0256 05 MT1 17 0256 06 MT2 17 0256 07 MT3 17 0256 MODULE MAP MN 02000-03663 DUMP 03664-04062 TBGH 04063-04115 ICKH 04116-17100 MUXH 17101-17572 MEMRY 17573-17744 IOC 17745-21774 D.43 21775-22374 D.61 22375-25627 D.51A 25630-32416 D.63 32417-33367 D.120 33370-33430 D.121 33431-33471 D.130 33472-33522 D.140 33523-33555 D.12C 33556-34623 D.13C 34624-35520 D.14C 35521-36307 D.04 36310-36650 ASFH 36651-40665 PP0 40666-40705 PR0 40706-40727 LP0 40730-40750 LP1 40751-40771 CRC 40772-41551 LPC 41552-42250 PPC 42251-42732 QIT SUMMARY DESIGNATOR QIT DESIGNATOR QIT DESIGNATOR QIT DESIGNATOR QIT TG0 43034 IK0 43043 MX0 43052 AF0 43061 LP0 43070 LP1 43077 PP0 43106 PR0 43115 ENTRY POINT MAP .ALC. 17573 .ALL 03267 .ATOE ----- .BSY 03506 .BUFR 20717 .C11R 24526 .C1OT 22474 .C1XM 22501 .COM. 42733 .DA 03433 .DAT 43405 .DEAL 03311 .DUMP 03665 .DVTB 43332 .FIND 03333 .FREB 03061 .GDVP 03627 .GETB 02737 .GETQ 02622 .IOC. 17750 .LTC. 22237 .LTS. 22226 .MEM. 02003 .PRIQ 02542 .PURQ 02664 .PUTQ 02513 .RTN. 17640 .SEEQ 02555 .TINT 02322 .UBSY 03564 .UNS. 20773 A.51 30501 ADV 33005 ALB 33102 ASFHC 37440 ASFHI 36732 ASFHP 37043 CBE ----- CDONE 23250 CMPLT 03614 CONST 36731 CRCHC 41305 CRCHI 40772 CRCHP 41017 CRQ 21205 D.04 36310 D.04? 36532 D.04I 36530 D.04R 36574 D.120 33370 D.121 33431 D.12C 33556 D.130 33472 D.13C 34624 D.140 33523 D.14C 35545 D.43 21775 D.51 25630 D.61 22431 D.61S 23360 D.63 32442 DEATH 25132 DEVAD 43032 DMAC1 17746 DMAC2 17747 DMAXF 25233 DMCMP 25306 DMJSB 25327 DMTMX 43031 DMTOM 25061 FREG 03664 I.120 33372 I.121 33433 I.12C 34207 I.130 33516 I.13C 35133 I.140 33525 I.14C 35671 I.43 22250 I.51 26716 I.61 23213 ICKHC 04726 ICKHI 04116 ICKHP 04416 ICNVR ----- ISPC 23275 K.51 31000 KDO 33244 LP0HC 40735 LP0HI 40730 LP0HP 40733 LP1HC 40756 LP1HI 40751 LP1HP 40754 LPHC 42006 LPHI 42157 LPHP 41552 LUT51 31557 LUT61 25330 MAX 25166 MPXEP 27670 MUXEP 26677 MUXHC 17425 MUXHI 17133 MUXHP 17254 OCNVR ----- OMTOM 24733 P.120 33375 P.121 33436 P.12C 34442 P.130 33521 P.13C 35342 P.140 33530 P.14C 36221 P.43 22336 P.51 31167 P.61 24602 PANIC 25077 PCF 32754 PHO 06133 PNTR 17741 PP0HC 40673 PP0HI 40666 PP0HP 40671 PPCHC 42517 PPCHI 42636 PPCHP 42251 PR0HC 40713 PR0HI 40706 PR0HP 40711 PULPT 03264 QHEAD 21274 QITAD 43033 QITAF 43127 QITMX 43126 QITND 43124 QITNR 43125 QTOP 22357 RDV 33025 RJE ----- RJEIN 24420 RJUNS ----- RMTOM 25066 RSTRT 02107 SBL 06144 SIBAF 40635 SIBIK 06241 START 02010 STR 32746 T.12C 34560 T.13C 35310 T.14C 36174 TBGHC 04112 TBGHI 04063 TBGHP 04101 TBGHQ 04071 TTPTR 02152 UCT00 33340 ULOAD 23365 WATSP 22510 WORD2 25167 XEQT 17745 XRB 33174
At this point, the SP will have halted, and the IOP will be running.
To generate the Initial System Program—that is, to install HP 2000/Access—the I/O processor must be configured and running before hand. Either complete the “Configuring the I/O Processor” or “Reloading the I/O Processor” sections on this page if necessary before continuing.
With the IOP running idly, and the SP halted, attach and boot the master tape,
using which ever method of bootstrapping the SP one prefers for the processor type. At the Master Program
module loading prompt, enter the model number of the first (unit 0) disk on the first disk controller of the system. So if one has a
13210A interface one would enter 7900 LOADER
, for a 12565A interface
one enters 2883 LOADER
. For the 13175D interface, one may enter either 7905 LOADER
or 7920 LOADER
at the prompt although it does not particularly matter as the drive will be correctly formatted either
way. If one of the loaders associated with the 13175D is selected, queries are printed for the optional
13210A and 12565A interfaces (first the former then the latter, if the
13210A is selected, then the prompt for the 12565A is not printed). Whichever loader
and possible options are chosen, the disk driver is then loaded from the tape; next questions are presented for whether a system
generation will be performed, and if a previously configured system will be updated. Naturally, as we are doing an initial system
generation, the answers to the previous questions are “yes” and “no,” respectively.
The system generation prompts first ask what the system's name will be, then asks if the defaults will be taken for the system's
disk configuration. Opting not to take the defaults, one is prompted to enter any DISC
and FORMAT
commands
needed to setup the system's disks. Next questions are presented to label the disks for
2000/Access, as well as to mark any disk blocks as unusable due to damage (which is
unnecessary given the simulated nature of the disk). The final configuration questions asked are to define how many tracks on each
disk are reserved for the system directory, and for the ID code table.
If a 13175D controller is present, it is necessary to format the disk drives. However, by default the
13175D has formatting disabled for its units. To enable formatting, enter set DSn
FORMAT
at the simulator prompt, where n is the unit number of any 7905A,
7906M, 7920M, or 7925M disk. To do so, halt the simulator
with Control+E, if it is running. Alternatively, the commands may be entered before bootstrapping the Master Program.
For the given sample configurations this initial system generation process looks as such:
LOAD WHICH MODULE? 7900 LOADER↵ SYSTEM GENERATION? YES↵ UPDATE? NO↵ SYSTEM IDENTIFICATION? [10 character system name]↵ CONFIGURATION OPTIONS? NO↵ DISC RETRY READING 01 BLOCKS AT 000000. STATUS 040001 DISC NUMBER 0 NOT LABELED FOR TSB DO YOU WANT IT LABELED? YES↵
LOAD WHICH MODULE? 7920 LOADER↵ 7900 OPTION? NO↵ 2883 OPTION? YES↵ SYSTEM GENERATION? YES↵ UPDATE? NO↵ SYSTEM IDENTIFICATION? [10 character system name]↵ CONFIGURATION OPTIONS? YES↵ DISC OR FORMAT COMMANDS? DISC-1,14,1↵ DISC OR FORMAT COMMANDS? DISC-2,14,2↵ DISC OR FORMAT COMMANDS? DISC-3,15,0↵ DISC OR FORMAT COMMANDS? DISC-4,15,1↵ DISC OR FORMAT COMMANDS? FORMAT-0↵ DISC OR FORMAT COMMANDS? FORMAT-1↵ DISC OR FORMAT COMMANDS? FORMAT-2↵ DISC OR FORMAT COMMANDS? FORMAT-3↵ DISC OR FORMAT COMMANDS? FORMAT-4↵ DISC OR FORMAT COMMANDS? NO↵ DISC NUMBER 0 NOT LABELED FOR TSB DO YOU WANT IT LABELED? YES↵ DISC NUMBER 1 NOT LABELED FOR TSB DO YOU WANT IT LABELED? YES↵ DISC NUMBER 2 NOT LABELED FOR TSB DO YOU WANT IT LABELED? YES↵ DISC NUMBER 3 NOT LABELED FOR TSB DO YOU WANT IT LABELED? YES↵ DISC NUMBER 4 NOT LABELED FOR TSB DO YOU WANT IT LABELED? YES↵ MLOCK OR MUNLOCK COMMANDS? NO↵ NUMBER OF DIRECTORY TRACKS PER DISC? 10↵ NUMBER OF ID TRACKS? 10↵
For the sample configuration using the 2100 series processors, which has only a single 7900A disk drive, the default options are taken for the disk configuration. Thus, the system is generated with a singular 7900A disk, which has one track reserved for the directory, and one track reserved for ID codes (meaning the system may have 682 files in the directory, and 682 total user codes). The 21MX based configuration does not use the defaults, as there are multiple disks in the system.
Once the system generation process is completed, the system will begin loading as normal. The current date, and current time are requested, and once they have been set the system will print the product and date code.
DATE? [Date; DDD/YY format.]↵ TIME? [Time; HHMM format.]↵ HP22687A-1812
At this point, dismount the master tape. If a 13175D interface is present, disable formatting for the
disks; by using the simulator command set DSn NOFORMAT
, where n is the unit number.
[Ctrl/E] sim> detach MSC0↵ sim> continue
Starting up the HP 2000/Access system is a two stage processor. First, one needs to start the IOP, and once the IOP is running, then one starts the SP.
The IOP is always started via tape (image). Utilizing either the standalone IOP configuration tape, or the master tape. Whichever tape image one chooses, mount it write-protected to the first tape unit on the SP, and boot the tape using whichever bootstrap is appropriate for the system processor.
If the master tape was used, respond “yes” to the 2754 prompt, and request the I/O loader; once the I/O loader is running, respond “yes” to the reload prompt. At this point both tapes will request that the IOP protected loader be started.
2754? YES↵ LOAD WHICH MODULE? I/O↵ HP2000 I/O PROCESSOR CONFIGURATOR RELOAD? YES↵ START IOP PROTECTED LOADER. PRES RETURN
START IOP PROTECTED LOADER. PRES RETURN
As both IOP restart procedures are the same now, simply follow the prompts. The prompts are similar to starting the IOP during the configuration process.
START IOP PROTECTED LOADER. PRESS RETURN [Boot the IOP]↵ (I/O PROCESSOR MAY BE STARTED AT LOCATION 2) [Start the IOP at location 2.]
sim> [Boot the IOP.] Programmed halt, T: 102077 (HLT 77), P: xxxxx (yyyyy) sim> run 2↵
At this point the IOP will be running, and the SP will either have
halted (if booted from the standalone IOP tape), or have returned to the “LOAD WHICH
MODULE?
” prompt of the Master Program (if booted from the master tape). If started from the IOP
tape, dismount it from the SP now.
The System Processor is started after the I/O Processor is running, as the system cannot boot if the IOP is not running. If the IOP was started from the IOP tape, bootstrap the system disk (unit 0 on the disk controller with select code 148) utilizing whichever method is preferred for the system in question.
It is very important to note that on a 2100 SP, it is impossible to boot a 7900A
disk (without acquiring an image of the BMDL paper tape) without the master tape; 2883
and any supported disk attached to the 13175D controller may be booted using boot DQC0
and
boot DS0
respectively on the 2100 System Processor. On 21MX System
Processors, the 12992A ROM may be used to boot from a 7900A system disk (and a
2883 system disk). To bootstrap a 7905A, 7906M, or
7920M system disk on a 21MX SP, the 12992B ROM may be
used.
To utilize the correct 12992A or 12992B ROMs the following commands are input at the simulator prompt of the SP.
12992A, 7900A:
reset
deposit S 041401
boot CPU
12992A, 2883:
reset
deposit S 061400
boot CPU
12992B:
reset
deposit S 151400
boot CPU
Once the disk has been bootstrapped (either via the simulator boot x
command; or using the
12992A/B bootstrap ROM), it will almost immediately halt. Issue the
continue
command at the simulator prompt. The SP console will now print out the “LOAD
OR DUMP COMMANDS?” prompt.
If the IOP was started from the master tape, simply enter the correct disk loader at the “LOAD WHICH MODULE?” prompt. Enter the correct responses for the optional disks, if those prompts appear. Next respond “no” to the system generation and tape reload prompts. The “LOAD OR DUMP COMMANDS?” prompt will then be printed.
As no load or dump commands are necessary in a normal system startup, respond “no” to that prompt. The system will now ask for the date and time. Once date and time have been set, the system will print the product code and date code, showing that the system is now running.
LOAD OR DUMP COMMANDS? NO↵ DATE? [Date; DDD/YY format.]↵ TIME? [Time; HHMM format.]↵ HP22687A-1812
The above shows what is a normal startup process. The “LOAD OR DUMP COMMANDS?” prompt allows for issuing
LOAD
, RESTORE
, or DUMP
commands as needed. The function of the three commands is as such:
DUMP
:LOAD
:RESTORE
:The use of the commands would be as such:
LOAD OR DUMP COMMANDS? DUMP↵ ENTER NAME LIST, ONE PER LINE; TERMINATE WITH 'END' ALL↵ MOUNT REEL NUMBER 1. PRESS RETURN [Mount new image on MSC0.]↵ VERIFY? YES↵ DONE LOAD OR DUMP COMMANDS? LOAD↵ ENTER NAME LIST, ONE PER LINE; TERMINATE WITH 'END' X000↵ X165,ANALYZ↵ X193,PAYCAL↵ ENTRY ALREADY PRESENT END↵ MOUNT REEL NUMBER 1. PRESS RETURN [Attach tape image to MSC0.]↵ LOAD OR DUMP COMMANDS? RESTORE↵ ENTER NAME LIST, ONE PER LINE; TERMINATE WITH 'END' Y500↵ X193,PAYCAL↵ END↵ MOUNT REEL NUMBER 1. PRESS RETURN [Attach tape image to MSC0.]↵ LOAD OR DUMP COMMANDS?
The above example shows the use of the dump, load, and restore commands. It can be seen when attempting to copy the file/program “PAYCAL” in account X193 that a copy already exists on disk and it is not copied, during the use of “load.” However, during the use of “restore” that file is replaced by the version on tape.
There are two kinds of normal shutdown the 2000/Access system can do. The first is
HIBERNATE
, which creates a complete backup copy of the system and all files on magnetic tape; the second is
SLEEP
, which copies the system to disk, and may be used to backup to tape any files created or changed since the last
HIBERNATE
was issued.
HIBERNATE
ShutdownWhen the HIBERNATE
command is issued, if a message was specified (using the syntax HIBERNATE-[Up to 68
character long message.]
) it is printed on all active terminals; the system then disconnects all active users, and all
non-shared devices are deactivated. The operator is then prompted to mount a reel of scratch tape on the first magnetic tape unit.
Once the tape is mounted press return and the system is dumped to tape. Once the tape dump is completed the computer asks if the tape
should be verified; if one answers “yes” then the system compares the files stored on tape with the files stored on disk.
If the system needs to be dumped to more than one tape, the system will request mounting of the second tape reel after the
verification pass (if any).
After the hibernate is successful, the system prints that it is done. And then asks if the system should be dumped or reloaded. Selecting the “dump” option repeats the hibernate process. Selecting the “reload” option effectively reboots the system from disk, starting at the “LOAD OR DUMP COMMANDS?” prompt. If one chooses neither (by answering “no” or by pressing the return key) the system processor halts.
HIBERNATE-[Up to 68-character shutdown message.]↵ MOUNT REEL NUMBER 1. PRESS RETURN [Attach new tape image to MSC0.]↵ VERIFY? YES↵ DONE SYSTEM DUMP OR RELOAD? NO↵ SYSTEM SHUT DOWN
The example hibernate above shows the simplest case of a hibernate without an additional dump, or reloading the system.
SLEEP
ShutdownAs with the HIBERNATE
command, when the SLEEP
command is issued, a message is printed on all active
terminals, all active users are disconnected/logged out, and all non-shared devices are deactivated. The system is then saved to disk.
Again, as in the HIBERNATE
command, once this is done, the system asks whether to dump or reload the system. If
“dump” is selected, it will prompt the user to mount a (scratch) magnetic tape; once that is done (and the operator presses
the return key) it will proceed to dump all files that have been created or updated since the last hibernate to tape. The system will
then ask if one wishes to verify the tape copy; additional reels of magnetic tape needed are requested after the verification pass, if
one was selected. The reload option serves to effectively restart the system, once more starting at the “LOAD OR DUMP
COMMANDS?” prompt.
SLEEP-[Up to 68-character shutdown message.]↵ SYSTEM DUMP OR RELOAD? DUMP↵ MOUNT REEL NUMBER 1. PRESS RETURN [Attach new tape image to MSC0.]↵ VERIFY? YES↵ DONE SYSTEM DUMP OR RELOAD? RELOAD↵ LOAD OR DUMP COMMANDS?
The example usage of the sleep command shows the operation of the dump and reload options. Which would be the same when used with the hibernate command.
Fave icon Database CMYK © 2008 – Barry Mieny
Syntax highlighting using highlight.js by © 2006 – Ivan Sagalaev