See H200/H2000 Startup Procedures
for information about traditional startup procedures.
See also Notes on operating the Front Panel.
The simulator by default will attempt to optimize programs spinning on
PCB instructions such that they sleep. This will be done after 100mS of spinning,
and will avoid hogging a CPU on the host for things like the card reader
running out of cards. This feature can be turned off using the property
(passed on the commandline) "iosleep=no".
This feature is also disabled when running throttled
(see Debug menu).
Menus are as follows:
- File: Assemble a program or assemble the monitor.
- I/O: Control visibility of I/O device windows.
Device windows that are hidden or obscured may be raised by selecting the device.
- Debug: Some debug features.
File
FORTRAN
(Optional) Compile a FORTRAN IV program,
and assemble resulting code
into memory for running. This option only exists if there is the
Fortran4Embedded.jar
file on the classpath (typically in the
current directory or location of H2000.jar).
Assemble
Assemble a program into memory. If the monitor has been activated,
the program will be assembled into a memory region that is relocated
above the monitor, and the monitor data structures will be filled-in
to indicate how to run the job.
Load Obj
Load an object file that was prepared using the
as200 and ld200 tools.
A minimal communications area is setup,
provided the program origin is above a certain address.
Index register 1 is also set to point to the highest address reserved
by the program.
The standard Return To Monitor entry points result
in a safe halt at address 0126 (octal).
Monitor
DEPRECATED.
Assemble the monitor program and setup the Assemble option to use it.
Note, this is not any of the standard Honeywell Monitors.
There is a monitor program supplied in the sample programs tarball,
"monitor.ezc".
When the monitor is active, this menu option will be disabled (grayed-out).
Clicking INITIALIZE (after STOP) will reset monitor mode.
Quit
Disk Util
Initialize Volume
Initialize a disk pack for use with MOD1 programs.
Disk packs must be mounted onto disk drives before they can be initialized.
Both FMT and DAT PERMIT switches must be ON.
Input the disk drive unit, 6-character volume name, and
6-character volume serial number.
Map Volume
Show contents of a MOD1 disk pack volume.
Input the disk drive unit.
Options exist for adding Cylinder/Track map (file allocation usage)
and Partitioned Sequential Member Index contents.
Allocate File
Create a MOD1 disk file on a volume.
Both FMT and DAT PERMIT switches must be ON.
Input the disk drive unit, 10-character file name,
item/record/block parameters, and allocation units.
Deallocate File
Delete a MOD1 disk file from a volume.
The DAT PERMIT switch must be ON.
Input the disk drive unit and 10-character file name.
Bootstrap Generator
Write the bootstrap track on a disk volume.
The DAT PERMIT switch must be ON.
See "Bootstrap" in MOD1 Implementation for
more information.
Executable Function
Debug
Trace to CON/LP
Select which device will receive Trace output.
Default is Line Printer.
Trace
Trace is enabled for the range of memory of the last assembled program.
This only works if an address range was established by using the built-in assembler.
Trace Full
A dialog is presented for specifying the range of memory to trace.
Trace Off
Cancel any active tracing.
Dump
A memory dump is printed to the Line Printer for
the range of memory of the last assembled program.
This only works if an address range was established by using the built-in assembler.
Dump Full
A dialog is presented for specifying the range of memory to dump.
Dump CCR
Dump control and condition registers.
CPU time
Report CPU time, in cycles and seconds,
since last INITIALIZE or use of this menu item
(i.e. reporting CPU time also clears the counter).
The seconds value is based on a 2 microsecond memory cycle.
Throttle On/Off
By default, the simulation runs at full host speed.
Setting Throttle On will reduce the average throughput
to a more-realistic (approximately) 2 microseconds per cycle.
Note that throttling is not done on every cycle, rather at
about 1000 cycle intervals.
Clear Memory
Fill all of memory with 000.
Rand Memory
Fill all of memory with a random pattern.
Note that WM and IM bits are included.
The assemble dialogs have a checkbox for "Listing". This causes an assembly
listing to printed on the Line Printer, along with a dump of the symbol table.
The assemble dialogs also have options for creating a Magnetic Tape Image.
This will produce a "Binary Run Tape" (BRT) with the bootstrap and loader
records. Eventually, this will be a fairly-complete "Tape Monitor/Loader C"
implementation, but right now it wraps a singe program in the self-loading
code which allows for running the program. The procedure is similar to that
described by "Tape Monitor/Loader C" documentation:
BOOTSTRAP 40 twice, then RUN once. The following format is used:
- "1HDRΔ" record (skipped during bootstrap)
- The loader, bootmt.mti, including bootstrap and loader records
- The program image in BRT format, single segment, multiple records
- "1EOFΔ" record
- Two "1ERIΔ" records
The loader will restore punctuation based on the information in the tape image.
Such a tape image may be mounted on tape drive 000 and used with the
BOOTSTRAP and RUN buttons to load and run the program. The loader,
bootmt.mti, was created from bootstrap.ezc and brtloader.ezc in the sample programs.
These programs cannot be assembled from the front panel, as they require
a different output format than BRT.
Tracing
Trace output has the basic format:
SR: OP AAR BAR [next AAR/BAR] VR... - AIR
Where SR is the address in SR at the start of the fetch,
OP is the fetched instruction opcode mnemonic,
AAR is the starting AAR,
BAR is the starting BAR,
next AAR/BAR are the AAR and BAR at the end of instruction execution,
VR... are the variant characters,
and AIR is the contents of the AIR register at the end of instruction execution.
AAR, BAR, or VR may be prefixed with '_' to indicate chained values,
i.e. values were not specified in the current instruction.
All numeric values are shown in octal.
Dumping
Dump output uses a format based on a traditional Honeywell core dump.
Each 128 memory locations are shown in a row of 5 lines.
The first line shows the address headings (octal) for the subsequent lines.
The second line shows the printed character representation of each location.
Lines 3 and 4 show the octal character representation,
line 3 being the most-significant digit.
Line 5 shows the punctuation, 'W' for word mark, 'I' for item mark,
and 'R' for both (record mark).