Documentation and examples for the re-created
"Card Monitor B" are here,
and for the "Tape Monitor C" are here,
For an overview of what is supplied in "hwprogs.tgz", see
List of Sample Files
MCETESTS
This program performs some testing of the MCE instruction.
The tests are taken from various Honeywell documentation that
gave examples.
To run the test, select File->Assemble then choose "mcetests.ezc"
and click "Assemble". A pop-up window should appear with results of the
assembly. If the "Listing" option was selected, the LinePrinter window
should also have appeared, and should have the assembler listing on it.
To run the test, press the RUN button. Output should appear on
the LinePrinter window for each test performed.
If desired, a memory dump may be produced by selecting
Debug->Dump. The dump should appear on the LinePrinter window.
A copy of the expected LinePrinter output is
here.
Note, the Honeywell "credit" symbol does not exist in modern unicode/ISO
character sets, so it will apear here as the copyright symbol.
The LinePrinter and Console use a custom font that does contain
a glyph for the credit symbol.
PUNCHED CARDS
This demo will take data from a magnetic tape and punch that onto cards,
and then read those cards and print them on the line printer.
- Open/raise the MagTape window and mount the file "barberpole.mti" on
tape drive 000.
- Open/raise the PunchCard window and
ensure that a supply of blanks cards are available in the Input Hopper.
If necessary, right-click on the input hopper to add more blank cards
(at least 311 are needed here).
Clear the output stacker, if needed, by right-clicking on it.
Press START if needed.
- Select menu File->Assemble and choose the file "puntest2.ezc" and click "Assemble".
- Set SENSE switch 3 "on" to enable punching of an EOF card.
- Press RUN.
The card punch should show 311 cards punched plus 1 for EOF (maybe 1 or 2 less).
It may be necessary to press STOP and RUNOUT on the card punch to ensure
all cards get saved.
The tape drive will show about 25192,
which is the number of bytes used in the image for records and record marks.
- Save the punch card deck from the output stacker
(left-click the output stacker, then enter/select a file and click Save).
- Mount the newly-punched deck of cards in the Input Hopper.
If necessary, select the "Remove All" option to remove any existing cards.
Press START.
- Select menu File->Assemble and choose the file "rdrtest.ezc" and click "Assemble".
- Set SENSE switch 3 "on" to enable detecting of the EOF card.
- Press RUN. The card reader should show 312 cards read.
The line printer should show 311 lines of the barber pole pattern
followed by "END PROG".
NOTE: Both programs use SENSE switches to change behavior. SENSE 3 will
enable end of deck detection using a "1EOFΔ" card (or add an EOF card when punching).
There is also an EOF card pre-punched in the file 1eof.pcd,
which may be used to cause program termination
for programs that look for it (e.g. rdrtest with SENSE 3 on).
SENSE 2 controls use of "special codes" (alphabetic), in contrast to the numeric
punch card data processing codes for '+0' and '-0' vs. '&' and '-'.
This switch should be set according to the option used when the cards
were punched. SENSE switch 1 is described in the FORTRAN CHARACTER CONVERSION
example.
MOD1 MASS STORAGE FILES
This demo will take data from a card deck (e.g. as produced in previous example)
and write that onto a mass storage file (disk pack),
and then read back that file and print the records on the line printer.
This example goes through all steps required to initialize a new volume,
create a file, and use the file. If you already have a disk pack initialized,
or files allocated, some steps may be skipped. Note, these example programs
have the file name hard-coded, so require modification if the file name
is to change. Also, MOD1 files have strict item/record sizes and this program
expects the item size to be 80 characters.
This example expects the card input to terminate with a "1EOFΔ" card.
- Open/raise the Disks window and mount a new file on disk drive 000.
- Select menu Disk_Util->Initialize_Volume and
- Enter a volume name and serial number.
- Click OK to initialize the volume.
- NOTE: The drive FMT and DAT permit switches must be ON.
- Select menu Disk_Util->Allocate_File and
- Enter the file name "MYFILE01" (unless the programs have been altered
for a different file name).
- Enter Item Len of "80" and Rec Len of "240".
- Enter Allocation Units. A minimum of 3 tracks are needed to hold the
311 cards created in the previous example.
- Click OK to create the file.
- NOTE: The drive FMT and DAT permit switches must be ON.
- Optionally, use the Disk_Util->Map_Volume menu item to print
the file(s) and, optionally, allocation of the volume.
- Open/raise the PunchCard window and mount one or more card decks, such as the
barber pole one created in the previous example (311 cards of the "barberpole" pattern).
Add the deck "1eof.pcd" to provide the EOF card.
- Select menu File->Assemble and choose the file "mod1test1.ezc" and click "Assemble".
- Set SENSE switch 3 to "on". If the card deck(s) were punched with "special code",
set SENSE switch 2 to "on".
- Press RUN. The card reader should show the number of cards read.
The disk drive should show current (final) position in cylinder and track.
NOTE: The drive DAT permit switch must be ON.
- To avoid complications later, press STOP and RUNOUT on the card
reader/punch.
- If the input hopper was not terminated with an EOF card,
the card reader will stall the processor. It will be necessary to
end the program before continuing. Press STOP and INITIALIZE.
- Select menu File->Assemble and choose the file "mod1test2.ezc" and click "Assemble".
- Press RUN. The disk drive should momentarily show activity and then
advance to final position of the previous step. The line printer
should have printed the 311-line barber pole pattern (or whatever data
was previously used) and "FINISHED".
NOTE: No drive PERMIT switches are required.
FORTRAN CHARACTER CONVERSION
This demo will print a punch card deck containing a FORTRAN IV program
that was punched based on symbols printed by an IBM 029 keypunch,
not the Honeywell symbols.
Details for those interested.
This program consults the SENSE 1 switch to
see whether or not to convert those special characters (using a MAT instruction).
The first version of this example uses EOF detection, with SENSE switch 3 "on".
- Open/raise the PunchCards window and mount the file "prog3.pcd" in
the Input Hopper. Also mount the file "1eof.pcd" to add an EOF card.
Press START if needed.
- Select menu File->Assemble and choose the file "rdrtest.ezc" and click "Assemble".
- Set SENSE switch 3 "on".
- Press RUN. The short program-segment should be printed on the line printer -
although many of the special characters will appear wrong for FORTRAN program
syntax.
- It will be necessary to re-mount the card deck, in order to start over for
the next step. Also remember to add the "1eof.pcd" card.
Optionally clear the output stacker.
- Press the SENSE 1 switch (it should now be lighted).
This is in addition to the SENSE 3 switch.
- Press RUN. The short program-segment should be printed again,
this time the FORTRAN special characters should appear as expected.
For comparison, this would be the procedure when not using an EOF card:
- Open/raise the PunchCards window and mount the file "prog3.pcd" in
the Read Hopper.
Press START if needed.
- Select menu File->Assemble and choose the file "rdrtest.ezc" and click "Assemble".
- Press RUN. The short program-segment should be printed on the line printer -
although many of the special characters will appear wrong for FORTRAN program
syntax. The card reader will stall the processor, and the STOP indicator
on the reader will be illuminated. The processor will still show running.
- It will be necessary to re-mount the card deck, in order to start over for
the next step.
Optionally clear the output stacker.
- Press the SENSE 1 switch (it should now be lighted).
- Press START on the card reader. The short program-segment should be printed again,
this time the FORTRAN special characters should appear as expected.
NOTE: This second version will leave the processor running, stalled
on the PDT instruction for the card reader.
It will be necessary to STOP the processor and also INITIALIZE it.
BINARY RUN TAPE
This demo will create a "binary run tape"
(BRT - self-loading program image on mag tape)
and then use BOOTSTRAP to run it.
- Open/raise the MagTape window and mount a "blank tape" (new file) on tape drive 000.
- Select menu File->Assemble and choose the file "mcetests.ezc",
check the "Tape Image" box, and click "Assemble".
This will create a self-loading BRT image on the "tape".
- Rewind the tape on tape drive 000.
- For the 220-3 console, enter the bootstrap command "B 40 0000000".
For the full control panel:
- Enter 40 into Contents (using the clear button as needed).
- Ensure Address is 0 (use the clear button as needed).
- Press BOOTSTRAP.
The tape drive should indicate that about 6-80 bytes were read.
This will be the BRT "1HDRΔ" record.
- Repeat the bootstrap step to load the actual bootstrap record.
Tape drive should show approximately 354 additional bytes have been read.
- Press RUN. The tape drive should stop at about 3197 bytes and the line printer
should show the output of running the mcetests program.
PARTITIONED SEQUENTIAL FILES
This demo will take data from datasets on card or magnetic tape
and write them onto a partitioned sequential file (on disk pack)
as separate members,
and then read back that file and print the members on the line printer.
This example goes through all steps required to initialize a new volume,
create a file, and use the file. If you already have a disk pack initialized,
or files allocated, some steps may be skipped. Note, these example programs
have the file name hard-coded, so require modification if the file name
is to change. Also, MOD1 files have strict item/record sizes and this program
expects the item size to be 80 characters.
- Open/raise the Disks window and mount a new file on disk drive 000.
- Select menu Disk_Util->Initialize_Volume and
- Enter a volume name and serial number.
- Click OK to initialize the volume.
- NOTE: The drive FMT and DAT permit switches must be ON.
- Select menu Disk_Util->Allocate_File and
- Enter the file name "PARTSEQ01" (unless the programs have been altered
for a different file name).
- Enter Item Len of "80" and Rec Len of "250", Rec/Blk of "1" and Blk/Idx of "8".
- Enter Allocation Unit(s). A minimum is enough tracks to hold the
datasets plus the number of blocks for the Index.
- Click OK to create the file.
- NOTE: The drive FMT and DAT permit switches must be ON.
- Optionally, use the Disk_Util->Map_Volume menu item to print
the file(s) and, optionally, allocation of the volume.
- Select menu File->Assemble and choose the file "mmbtest1.ezc" and click "Assemble".
- Mount the first dataset on either the card reader or magnetic tape drive 000.
If using magnetic tape, set SENSE 1 switch ON (otherwise ensure it is OFF).
If using cards (SENSE 1 switch OFF), set SENSE 2 switch ON if cards were punched
with "special code", and set SENSE 3 switch ON to detect EOF cards.
Ensure cards terminate with "1EOFΔ" (add "1eof.pcd" as needed).
- Press RUN. The selected device should show activity,
along with the disk drive, and then the printer should
show "FINISHED MEMBER-XXX" where "XXX" is a 3-digit number that increments each time.
NOTE: The disk drive DAT permit switch must be ON.
- The preceding steps may be repeated for additional datasets. When the last
dataset to be loaded is ready, set SENSE 4 switch ON to signal the last dataset
is about to be loaded. After the last dataset, the program alo prints "END PROG".
At this point, the file should be safely closed.
- Select menu File->Assemble and choose the file "mmbtest2.ezc" and click "Assemble".
- Press RUN. The disk drive should show activity and the printer
should show full dumps of each file member previously created,
each followed by "FINISHED MEMBER-XXX". After the last data member dump,
the program should print "END PROG" and exit.
NOTE: No drive PERMIT switches are required.
NOTE: If card decks are not terminated with an EOF card, the card reader
will stall the processor in the PDT instruction. The only clean way to resolve
this is to add an EOF card and press START on the reader. Otherwise, the processor
STOP and INITIALIZE buittons must be used which will leave the disk file in
an unknown state (file and last member were not cleanly closed).
Note that the SENSE 3 switch is checked after reading every card,
so it can be turned on at any point, although generally the processor should
be stopped or stalled (or basically quiesced).