The Analyzer takes input from a 7 track tape and decodes binary information on it into 7-bit characters, 6-bit characters, octal numbers, decimal numbers and symbolic codes. These results will be loaded to a 9 track tape in Disk Dumper Format. It is assumed that tape unit 1 is used for output and unit 3 is used for input. The Analyzer is stored in the file called DPT;DUMPER BINARY and normally it is resident on tape.
Input has to be on a 7 track tape in blocks of 512 words (decimal). There is no restriction on the number of blocks allowed. A single file mark signifies the end of input. The following subroutine is suitable for dumping the core in the required format. The subroutine assumes (a) the number of blocks to be dumped is in NBLOCK and (b) the first address to be dumped is in FADDR.
DUMP, XX / FIX PARAMETERS / MBLOCK = -NBLOCK / MADDR = FADDR - 1 / LAC NBLOCK TCA DAC MBLOCK LAM TAD FADDR DAC MADDR / / TEST CONTROLLER AND TRANSPORT READY I / LAC WRCODE MTLC MTCR JMP .-1 MTTR JMP .-1 / / LOAD FIRST ADDRESS I / LAC MADDR DAC I (33) / LOOP, / / LOAD BLOCK SIZE M512= -512 I / LAC M512 DAC I (32) LAC WRCODE MTLC MTGO MTCR JMP .-1 / / TEST WHETHER ALL THE BLOCKS HAVE BEEN WRITTEN / ISZ MBLOCK / / IF NOT JUMP TO LOOP / JMP LOOP / / OTHERWISE WRITE FILE MARK / LAC WREOF MTLC MTGO MTCR JMP .-1 / / REWIND TAPE / LAC WRRWD MTLC MTGO MTCR JMP .-1 / / EXIT SUBROUTINE / JMP I DUMP / / LOCAL VARIABLES / WRCODE, 364200 WREOF, 365200 WRRWD, 361200 /THESE THREE ARE COMMAND WORDS / M512, -512.+1 MBLOCK, XX MADDR, XX / / GLOBALS / NBLOCK, XX FADDR, XX / / END OF SUBROUTINE /
Output is divded into 6 fields:
Non-printable characters (e.g. carriage return, bell and etc) are always replaced by a space. To simplify the output, core addresses are printed in intervals of 20 locations except in the case described later. As a further simplification, repeated entries will be printed only once, which is then followed by a line in the following format:
The address of the line immediately after it will always be printed so that the number of repetitions can be deduced.
ADDRESS CONTENTS 000020 000000 000021 000000 000022 000000 000023 000011
will be printed as
000020 000000 @@@ 000000 CAL 0000 / 000023 000009 @@I 000011 CAL 0011
The following steps are normally required to run the analyzer: