Apple II User Manual

Page of 257
FCB3: 60        705           RTS
FCB4: E6 42     706  NXTA4    INC   A4L        ;INCR 2-BYTE A4
FCB6: D0 02     707           BNE   NXTA1      ;  AND A1
FCB8: E6 43     708           INC   A4H
FCBA: A5 3C     709  NXTA1    LDA   A1L        ;INCR 2-BYTE A1.
FCBC: C5 3E     710           CMP   A2L
FCBE: A5 3D     711           LDA   A1H        ;  AND COMPARE TO A2
FCC0: E5 3F     712           SBC   A2H
FCC2: E6 3C     713           INC   A1L        ;  (CARRY SET IF >=)
FCC4: D0 02     714           BNE   RTS4B
FCC6: E6 3D     715           INC   A1H
FCC8: 60        716  RTS4B    RTS
FCC9: A0 4B     717  HEADR    LDY   #$4B       ;WRITE A*256 'LONG 1'
FCCB: 20 DB FC  718           JSR   ZERDLY     ;  HALF CYCLES
FCCE: D0 F9     719           BNE   HEADR      ;  (650 USEC EACH)
FCD0: 69 FE     720           ADC   #$FE
FCD2: B0 F5     721           BCS   HEADR      ;THEN A 'SHORT 0'
FCD4: A0 21     722           LDY   #$21       ;  (400 USEC)
FCD6: 20 DB FC  723  WRBIT    JSR   ZERDLY     ;WRITE TWO HALF CYCLES
FCD9: C8        724           INY              ;  OF 250 USEC ('0')
FCDA: C8        725           INY              ;  OR 500 USEC ('0')
FCDB: 88        726  ZERDLY   DEY
FCDC: D0 FD     727           BNE   ZERDLY
FCDE: 90 05     728           BCC   WRTAPE     ;Y IS COUNT FOR
FCE0: A0 32     729           LDY   #$32       ;  TIMING LOOP
FCE2: 88        730  ONEDLY   DEY
FCE3: D0 FD     731           BNE   ONEDLY
FCE5: AC 20 C0  732  WRTAPE   LDY   TAPEOUT
FCE8: A0 2C     733           LDY   #$2C
FCEA: CA        734           DEX
FCEB: 60        735           RTS
FCEC: A2 08     736  RDBYTE   LDX   #$08       ;8 BITS TO READ
FCEE: 48        737  RDBYT2   PHA              ;READ TWO TRANSITIONS
FCEF: 20 FA FC  738           JSR   RD2BIT     ;  (FIND EDGE)
FCF2: 68        739           PLA
FCF3: 2A        740           ROL              ;NEXT BIT
FCF4: A0 3A     741           LDY   #$3A       ;COUNT FOR SAMPLES
FCF6: CA        742           DEX
FCF7: D0 F5     743           BNE   RDBYT2
FCF9: 60        744           RTS
FCFA: 20 FD FC  745  RD2BIT   JSR   RDBIT
FCFD: 88        746  RDBIT    DEY              ;DECR Y UNTIL
FCFE: AD 60 C0  747           LDA   TAPEIN     ; TAPE TRANSITION
FD01: 45 2F     748           EOR   LASTIN
FD03: 10 F8     749           BPL   RDBIT
FD05: 45 2F     750           EOR   LASTIN
FD07: 85 2F     751           STA   LASTIN
FD09: C0 80     752           CPY   #$80       ;SET CARRY ON Y
FD0B: 60        753           RTS
FD0C: A4 24     754  RDKEY    LDY   CH
FD0E: B1 28     755           LDA   (BASL),Y   ;SET SCREEN TO FLASH
FD10: 48        756           PHA
FD11: 29 3F     757           AND   #$3F
FD13: 09 40     758           ORA   #$40
FD15: 91 28     759           STA   (BASL),Y
FD17: 68        760           PLA
FD18: 6C 38 00  761           JMP   (KSWL)     ;GO TO USER KEY-IN
FD1B: E6 4E     762  KEYIN    INC   RNDL
FD1D: D0 02     763           BNE   KEYIN2     ;INCR RND NUMBER
FD1F: E6 4F     764           INC   RNDH
FD21: 2C 00 C0  765  KEYIN2   BIT   KBD        ;KEY DOWN?
FD24: 10 F5     766           BPL   KEYIN      ;  LOOP