A002 à | 01 | MOST SIGNIFICANT BYTE OF LOWER ADDRESS |
A003 à | 23 | LEAST SIGNIFICANT BYTE OF LOWER ADDRESS |
A004 à | 45 | MOST SIGNIFICANT BYTE OF UPPER ADDRESS |
A005 à | 67 | LEAST SIGNIFICANT BYTE OF LOWER ADDRESS |
Typing P would turn the punch on and output the specified memory data. A sample punch output is as follows:
$M A002 |
|
|
|
|
$A002 02 | 01 |
| MSB OF LOW ADDRESS |
|
$A003 72 | 00 |
| LSB OF LOW ADDRESS |
|
$A004 EF | 01 |
| MSB OF HIGH ADDRESS |
|
$A005 00 | 20 |
| LSB OF HIGH ADDRESS |
|
$A006 5F |
|
|
|
|
$P |
|
| TAPE PUNCH COMMAND |
|
S11301008E1000CE12348600C6FF3FE0E3DD005DB2 |
| |||
S11301108090E05160F73A8201F500FFC79771D1F2 |
| |||
S104012000DA |
|
|
| |
$ |
|
|
|
|
S1 | 13 | 0100 | 8E1000CE12348600C6FF3FE0E3DD005D | B2 |
START OF | BYTE | BLOCK | DATA | CHECK |
BLOCK | COUNT | STARTING | SUM | |
CHARACTER | (HEX) | ADDRESS |
|
The S1 at the start of the block is used to tell the load routine that valid punch data follows. Each punch block must begin with the S1. The 1316 is the number of bytes that follow in the block. In this case two bytes are required for the starting address of the block (01 and 00), 1016 bytes are required for the data (8E 10 00 CE 12 34 86 00 C6 FF 3F E0 E3 DD 00 50) and one byte is required for the checksum (B2). The checksum is generated by adding the complement of the start of block address and the data, 8 bits at a time. At
As the punch begins a PUNCH ON (1216) control character will be output to the punch device. If a
END OF TAPE COMMAND E
The E command will punch the contents of the program counter
$M A002 |
| |
$A002 FC | 00 | |
$A003 | 3E | 00 |
$A004 | A0 | 00 |
$A005 | 49 | 0F |
$A006 | 4C |
|
6