Apple II User Manual

Page of 257
1357   8A2F D0 0B              BNE INRT2
1358   8A31 AD 53 A6           LDA TECHO
1359   8A34 49 40              EOR #$40        ;TOGGLE CTL O BIT
1360   8A36 8D 53 A6           STA TECHO
1361   8A39 18                 CLC
1362   8A3A 90 E2              BCC INCHR+3     ;GET GET ANOTHER CHAR
1363   8A3C C9 0D       INRT2  CMP #$0D        ;CARRIAGE RETURN?
1364   8A3E 4C B8 81           JMP RESXAF
1365   8A41 6C 61 A6    INJINV JMP (INVEC+1)
1366   8A44 20 09 83    NBASOC JSR NIBASC      ;NIBBLE TO ASCII, OUTCHR
1367   8A47 20 88 81    OUTCHR JSR SAVER
1368   8A4A 2C 53 A6           BIT TECHO       ;LOOK AT CTRL O FLAG
1369   8A4D 70 03              BVS *+5
1370   8A4F 20 55 8A           JSR INJOUV
1371   8A52 4C C4 81           JMP RESALL
1372   8A55 6C 64 A6    INJOUV JMP (OUTVEC+1)
1373   8A58 20 88 81    INTCHR JSR SAVER       ;IN TERMINAL CHAR
1374   8A5B A9 00              LDA #0
1375   8A5D 85 F9              STA $F9
1376   8A5F AD 02 A4    LOOK   LDA PBDA        ;FIND LEADING EDGE
1377   8A62 2D 54 A6           AND TOUTFL
1378   8A65 38                 SEC
1379   8A66 E9 40              SBC #$40
1380   8A68 90 F5              BCC LOOK
1381   8A6A 20 E9 8A    TIN    JSR DLYH        ;TERMINAL BIT
1382   8A6D AD 02 A4           LDA PBDA
1383   8A70 2D 54 A6           AND TOUTFL
1384   8A73 38                 SEC
1385   8A74 E9 40              SBC #$40        ;OR BITS 7,7 (TTY,CRT)
1386   8A76 2C 53 A6           BIT TECHO       ;ECHO BIT?
1387   8A79 10 06              BPL DMY1
1388   8A7B 20 D4 8A           JSR OUT
1389   8A7E 4C 87 8A           JMP SAVE
1390   8A81 A0 07       DMY1   LDY #7
1391   8A83 88          TLP1   DEY
1392   8A84 D0 FD              BNE TLP1
1393   8A86 EA                 NOP
1394   8A87 66 F9       SAVE   ROR $F9
1395   8A89 20 E9 8A           JSR DLYH
1396   8A8C 48                 PHA             ;TIMING
1397   8A8D B5 00              LDA 0,X
1398   8A8F 68                 PLA
1399   8A90 90 D8              BCC TIN
1400   8A92 20 E9 8A           JSR DLYH
1401   8A95 18                 CLC
1402   8A96 20 D4 8A           JSR OUT
1403   8A99 A5 F9              LDA $F9
1404   8A9B 49 FF              EOR #$FF
1405   8A9D 4C B8 81           JMP RESXAF
1406   8AA0 85 F9       TOUT   STA $F9         ;TERMINAL CHR OUT
1407   8AA2 20 88 81           JSR SAVER
1408   8AA5 20 E9 8A           JSR DLYH        ;DELAY 1/2 BIT TIME
1409   8AA8 A9 30              LDA #$30        ;SET FOR OUTPUT
1410   8AAA 8D 03 A4           STA PBDA+1      ;DATA DIRECTION
1411   8AAD A5 F9              LDA $F9         ;RECOVER CHR DATA
1412   8AAF A2 0B              LDX #$0B        ;START BIT,8DATA, 3STOPS
1413   8AB1 49 FF              EOR #$FF        ;INVERT DATA
1414   8AB3 38                 SEC             ;START BIT
1415   8AB4 20 D4 8A    OUTC   JSR OUT         ;OUTPUT BIT FROM CARRY
1416   8AB7 20 E6 8A           JSR DLYF        ;WAIT FULL BIT TIME
1417   8ABA A0 06              LDY #$06
1418   8ABC 88          PHAKE  DEY