Apple II User Manual

Page of 257
FE9B: A5 3E     953  IOPRT    LDA   A2L        ;SET RAM IN/OUT VECTORS
FE9D: 29 0F     954           AND   #$0F
FE9F: F0 06     955           BEQ   IOPRT1
FEA1: 09 C0     956           ORA   #IOADR/256
FEA3: A0 00     957           LDY   #$00
FEA5: F0 02     958           BEQ   IOPRT2
FEA7: A9 FD     959  IOPRT1   LDA   #COUT1/256
FEA9: 94 00     960  IOPRT2   STY   LOC0,X
FEAB: 95 01     961           STA   LOC1,X
FEAD: 60        962           RTS
FEAE: EA        963           NOP
FEAF: EA        964           NOP
FEB0: 4C 00 E0  965  XBASIC   JMP   BASIC      ;TO BASIC WITH SCRATCH
FEB3: 4C 03 E0  966  BASCONT  JMP   BASIC2     ;CONTINUE BASIC
FEB6: 20 75 FE  967  GO       JSR   A1PC       ;ADR TO PC IF SPEC'D
FEB9: 20 3F FF  968           JSR   RESTORE    ;RESTORE META REGS
FEBC: 6C 3A 00  969           JMP   (PCL)      ;GO TO USER SUBR
FEBF: 4C D7 FA  970  REGZ     JMP   REGDSP     ;TO REG DISPLAY
FEC2: C6 34     971  TRACE    DEC   YSAV
FEC4: 20 75 FE  972  STEPZ    JSR   A1PC       ;ADR TO PC IF SPEC'D
FEC7: 4C 43 FA  973           JMP   STEP       ;TAKE ONE STEP
FECA: 4C F8 03  974  USR      JMP   USRADR     ;TO USR SUBR AT USRADR
FECD: A9 40     975  WRITE    LDA   #$40
FECF: 20 C9 FC  976           JSR   HEADR      ;WRITE 10-SEC HEADER
FED2: A0 27     977           LDY   #$27
FED4: A2 00     978  WR1      LDX   #$00
FED6: 41 3C     979           EOR   (A1L,X)
FED8: 48        980           PHA
FED9: A1 3C     981           LDA   (A1L,X)
FEDB: 20 ED FE  982           JSR   WRBYTE
FEDE: 20 BA FC  983           JSR   NXTA1
FEE1: A0 1D     984           LDY   #$1D
FEE3: 68        985           PLA
FEE4: 90 EE     986           BCC   WR1
FEE6: A0 22     987           LDY   #$22
FEE8: 20 ED FE  988           JSR   WRBYTE
FEEB: F0 4D     989           BEQ   BELL
FEED: A2 10     990  WRBYTE   LDX   #$10
FEEF: 0A        991  WRBYT2   ASL
FEF0: 20 D6 FC  992           JSR   WRBIT
FEF3: D0 FA     993           BNE   WRBYT2
FEF5: 60        994           RTS
FEF6: 20 00 FE  995  CRMON    JSR   BL1        ;HANDLE A CR AS BLANK
FEF9: 68        996           PLA              ;  THEN POP STACK
FEFA: 68        997           PLA              ;  AND RTN TO MON
FEFB: D0 6C     998           BNE   MONZ
FEFD: 20 FA FC  999  READ     JSR   RD2BIT     ;FIND TAPEIN EDGE
FF00: A9 16     1000          LDA   #$16
FF02: 20 C9 FC  1001          JSR   HEADR      ;DELAY 3.5 SECONDS
FF05: 85 2E     1002          STA   CHKSUM     ;INIT CHKSUM=$FF
FF07: 20 FA FC  1003          JSR   RD2BIT     ;FIND TAPEIN EDGE
FF0A: A0 24     1004 RD2      LDY   #$24       ;LOOK FOR SYNC BIT
FF0C: 20 FD FC  1005          JSR   RDBIT      ;  (SHORT 0)
FF0F: B0 F9     1006          BCS   RD2        ;  LOOP UNTIL FOUND
FF11: 20 FD FC  1007          JSR   RDBIT      ;SKIP SECOND SYNC H-CYCLE
FF14: A0 3B     1008          LDY   #$3B       ;INDEX FOR 0/1 TEST
FF16: 20 EC FC  1009 RD3      JSR   RDBYTE     ;READ A BYTE
FF19: 81 3C     1010          STA   (A1L,X)    ;STORE AT (A1)
FF1B: 45 2E     1011          EOR   CHKSUM
FF1D: 85 2E     1012          STA   CHKSUM     ;UPDATE RUNNING CHKSUM
FF1F: 20 BA FC  1013          JSR   NXTA1      ;INC A1, COMPARE TO A2
FF22: A0 35     1014          LDY   #$35       ;COMPENSATE 0/1 INDEX