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.

  1. Open/raise the MagTape window and mount the file "barberpole.mti" on tape drive 000.
  2. 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.
  3. Select menu File->Assemble and choose the file "puntest2.ezc" and click "Assemble".
  4. Set SENSE switch 3 "on" to enable punching of an EOF card.
  5. 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.
  6. Save the punch card deck from the output stacker (left-click the output stacker, then enter/select a file and click Save).
  7. 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.
  8. Select menu File->Assemble and choose the file "rdrtest.ezc" and click "Assemble".
  9. Set SENSE switch 3 "on" to enable detecting of the EOF card.
  10. 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.

  1. Open/raise the Disks window and mount a new file on disk drive 000.
  2. Select menu Disk_Util->Initialize_Volume and
  3. Select menu Disk_Util->Allocate_File and
  4. Optionally, use the Disk_Util->Map_Volume menu item to print the file(s) and, optionally, allocation of the volume.
  5. 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.
  6. Select menu File->Assemble and choose the file "mod1test1.ezc" and click "Assemble".
  7. Set SENSE switch 3 to "on". If the card deck(s) were punched with "special code", set SENSE switch 2 to "on".
  8. 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.
  9. Select menu File->Assemble and choose the file "mod1test2.ezc" and click "Assemble".
  10. 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".

  1. 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.
  2. Select menu File->Assemble and choose the file "rdrtest.ezc" and click "Assemble".
  3. Set SENSE switch 3 "on".
  4. 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.
  5. 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.
  6. Press the SENSE 1 switch (it should now be lighted). This is in addition to the SENSE 3 switch.
  7. 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:

  1. Open/raise the PunchCards window and mount the file "prog3.pcd" in the Read Hopper. Press START if needed.
  2. Select menu File->Assemble and choose the file "rdrtest.ezc" and click "Assemble".
  3. 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.
  4. It will be necessary to re-mount the card deck, in order to start over for the next step. Optionally clear the output stacker.
  5. Press the SENSE 1 switch (it should now be lighted).
  6. 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.

  1. Open/raise the MagTape window and mount a "blank tape" (new file) on tape drive 000.
  2. 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".
  3. Rewind the tape on tape drive 000.
  4. For the 220-3 console, enter the bootstrap command "B 40 0000000". For the full control panel:
    1. Enter 40 into Contents (using the clear button as needed).
    2. Ensure Address is 0 (use the clear button as needed).
    3. Press BOOTSTRAP.
    The tape drive should indicate that about 6-80 bytes were read. This will be the BRT "1HDRΔ" record.
  5. Repeat the bootstrap step to load the actual bootstrap record. Tape drive should show approximately 354 additional bytes have been read.
  6. 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.

  1. Open/raise the Disks window and mount a new file on disk drive 000.
  2. Select menu Disk_Util->Initialize_Volume and
  3. Select menu Disk_Util->Allocate_File and
  4. Optionally, use the Disk_Util->Map_Volume menu item to print the file(s) and, optionally, allocation of the volume.
  5. Select menu File->Assemble and choose the file "mmbtest1.ezc" and click "Assemble".
  6. 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).
  7. 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.
  8. 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.
  9. Select menu File->Assemble and choose the file "mmbtest2.ezc" and click "Assemble".
  10. 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).