Appendix B—UT62 Monitor Program Listing
8658
1251
. .
ENTERED WITH SEP TO BITWRTR
8658
1252
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
8658
1253
8658 D3;
1254 BYE:
SEP PC
8659
1255
8659 E8;
1256 WRBIT:
SEX BITWRT
865A F8FFAF
1257
LDI #FF;PLO FLAG
..FLAG FOR SIGNAL HIGH ( F F ) ,
865D
1258
..LOW (0 0 )
865D F80C;
1259
LDI #0C
. . 0 BIT TIMING
865F 3B64;
1260
BNF OUTAPE
8661 F 8 2 7 ;
1261
LDI #27
. . 1 BIT TIMING
8663 17;
1262
INC PARITY
..IN C PARITY CTR IF 1 BIT
8664
1263
8664 6 5 0 1 ;
1264 OUTAPE: OUT TPEWRT; ,HIGH
8666 BF;
1265
PHI CHAR
..SAVE BIT TIMING IN CHAR.1
8667 F F01;
1266 TEST1:
SMI 1
..DEC TIMER
8669 3A67;
1267
BNZ TESTl
..KEEP HI TIL CNT = 0
866B 8F;
1268
GLO FLAG
866C 3 2 5 8 ;
1269
BZ BYE
..E X IT WHEN TAPE SIGNAL IS A LOW
866E F800AF
1270
LDI 0;PLO FLAG
..S E T FLAG FOR A LOW
8671 6 5 0 0 ;
1271
OUT TPEWRT; , LOW
8673 9F;
1272
GHI CHAR
..G ET THE BIT TIMING
8674 3 0 6 7 ;
1273
BR TEST1
8676
1274
8676
1275
..* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
8676
1276 . .
READ BLOCK ROUTINE
8676
1277
. .
READS ONE BLOCK, 384 BYTES, FROM TAPE INTO THE READ BUFFER
8676
1278
. .
EXITS WITH DF AS PARITY FLAG, 0 IS GOOD
8676
1279
..* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
8676
1280
8676 D48407
1281 RDBLOK: SEP CALL;,A(REGSAV)
8679 F87FAA
1282
LDI A. 0 ( RDBUFF) ; PLO BUFPTR
867C F88EBA
1283
LDI A . l(RD BUFF);PH I BUFPTR
867F BF;
1284
PHI FLAG
..IN IT IA L IZ E BLOCK FLAG TO SET
8680 F800AF
1285
LDI 0;PLO FLAG
..AND PARITY FLAG TO GOOD
8683 F81DA8
1286
LDI A.O(RDBIT) ; PLO BITRDR
8686 F883B8
1287
LDI A . l(R D B IT ); PHI BITRDR
8689 E3;
1288
SEX PC
868A 6 1 0 2 ;
1289
OUT BDSEL;, TAPEIO
868C 2C;
1290
DEC PTR
..MOVE TO DRIVE # IN IOCB
868D OCFE;
1291
LDN PTR;SHL
868F lC ;
1292
INC PTR
..BACK TO HOME IN IOCB
8690 3 3 9 5 ;
1293
BDF DRl
8692 6 4 4 0 ;
1294
OUT TPESEL; ,DRIVE0
8694 C8;
1295
LSKP
8695
9
1296
8695 6 4 8 0 ;
1297 DR1:
OUT TPESEL; ,DRIVE1
8697
9
1298
8697 F808B9;;
1299 LDR1:
LDI # 0 8 ;P H I LDRCNT
869A
9
1300
869A D8;
1301 LEDERl: SEP BITRDR
..G ET 1 BIT
869B 3 3 9 7 ;
1302
BDF LDRl
. .MUST BE A 0 TO BE THE LEADER
869D 2 9 ;
1303
DEC LDRCNT
869E 9 9 ;
1304
GHI LDRCNT
869F 3A9A;
1305
BNZ LEDERl
..LOOP TIL LEADER COUNTER EMPTYS
86A1
9
1306
86A1 D8;
1307 STRT1:
SEP BITRDR
..LOOP TIL START BIT
86A2 3BA1;
1308
BNF STRT1
86A4 F809A9;
1309
LDI 9;PLO BITCNT
86A7 A7;
1310
PLO PARITY