From 958cb92b3168622578fa8c9de60b9ebbba1c003a Mon Sep 17 00:00:00 2001 From: "Howard M. Harte" Date: Tue, 20 Nov 2012 15:49:26 -0800 Subject: [PATCH] Update documentation in souce code. --- TX-0/tx0_stddev.c | 35 +++++++++++++++++++++++++---------- 1 file changed, 25 insertions(+), 10 deletions(-) diff --git a/TX-0/tx0_stddev.c b/TX-0/tx0_stddev.c index 7351b480..9fbe26db 100644 --- a/TX-0/tx0_stddev.c +++ b/TX-0/tx0_stddev.c @@ -281,16 +281,31 @@ DEVICE tto_dev = { petr_dt, NULL }; -/* Paper tape reader: IOT routine. Points to note: +/* Photoelectric Tape Reader: - - RPA (but not RPB) complements the reader clutch control. Thus, - if the reader is running, RPA will stop it. - - The status bit indicates data in the reader buffer that has not - been transfered to IR. It is cleared by any RB->IR operation, - including RRB and the completion pulse. - - A reader error on a wait mode operation could hang the simulator. - IOH is set; any retry (without RESET) will be NOP'd. Accordingly, - the PETR service routine clears IOH on any error during a rpa/rpb i. +The PETR is a 250 line per minute Ferranti photoelectric paper tape reader +using standard seven-hole Flexowriter tape that was modified to solid state +circuitry. Lines without seventh hole punched are ignored by the PETR. +As each line of the tape is read in, the data is stored into an 18-bit BUF +register with bits mapped as follows: + +Tape BUF +0 0 +1 3 +2 6 +3 9 +4 12 +5 15 + +Up to three lines of tape may be read into a single the single BUF register. +Before subsequent lines are read, the BUF register is cycled one bit right. + +The PETR reads data from or a disk file. The POS register specifies the +number of the next data item to be read. Thus, by changing POS, the user can +backspace or advance the reader. + +The PETR supports the BOOT command. BOOT PETR switches the CPU to Read-In +mode, and starts the processor running. */ int32 petr (int32 inst, int32 dev, int32 dat) @@ -497,7 +512,7 @@ t_stat petr_boot (int32 unitno, DEVICE *dptr) } -/* Paper tape punch: IOT routine */ +/* Paper tape punch: punches standard seven-hole Flexowriter tape. */ int32 ptp (int32 inst, int32 dev, int32 dat) {