Apple II User Manual

Page of 257
0181   A484             ;  WRITE EDGE DETECT CONTROL (NOT USED BECAUSE KB)
0182   A484                    *=$A484
0183   A484             DNPA7  .BLOCK 1        ;DISABLE PA7 INT ,NEG EDGE DET
0184   A485             DPPA7  .BLOCK 1        ;DIS PA7 INT ,POS EDGE DETE
0185   A486             ENPA7  .BLOCK 1        ;ENA PA7 INT ,NEG EDG DET
0186   A487             EPPA7  .BLOCK 1        ;ENA PA7 INT ,POS EDG DET
0187   A488
0188   A488             ;          READ AND CLEAR INTERRUPT
0189   A485                    *=$A485
0190   A485             RINT   .BLOCK 1        ;BIT 7=TIMER FLG , BIT 6=PA7 FLG
0191   A486
0192   A486             ;             TIMER INTERRUPT
0193   A494                    *=$A494
0194   A494             ;WRITE COUNT TO INTERVAL TIMER
0195   A494             ;INTERRUPT DISABLE FOR THESE ADDRS
0196   A494             DIV1   .BLOCK 1        ;DIV BY 1 (DISABLE);ADD 8 TO ENA
0197   A495             DIV8   .BLOCK 1        ;DIV BY 8 (DIS) ; ADD 8 TO ENA
0198   A496             DIV64  .BLOCK 1        ;DIV BY 64 (DIS) ; ADD 8 TO ENA
0199   A497             DI1024 .BLOCK 1        ;DIV BY 1024 (DIS) ; ADD 8 TO ENA
0200   A498
0201   A498             ;     *********************************************
0202   A498             ;     *    6522 ADDRESSES (MONIT) (A800-ABFF)     *
0203   A498             ;     *********************************************
0204   A800                    *=$A800
0205   A800             DRB    .BLOCK 1        ;DATA REG B
0206   A801             DRAH   .BLOCK 1        ;DATA REG A
0207   A802             DDRB   .BLOCK 1        ;DATA DIR REG B
0208   A803             DDRA   .BLOCK 1        ;DATA DIR REG A
0209   A804             T1L    .BLOCK 1        ;TIMER 1 COUNTER LOW
0210   A805             T1CH   .BLOCK 1        ;TIMER 1 COUNTER HIGH
0211   A806             T1LL   .BLOCK 1        ;TIMER 1 LATCH LOW
0212   A807             T1LH   .BLOCK 1        ;TIMER 1 LATCH HIGH
0213   A808             T2L    .BLOCK 1        ;TIMER 2 LATCH & COUNTER LOW
0214   A809             T2H    .BLOCK 1        ;TIMER 2 COUNTER HIGH
0215   A80A             SR     .BLOCK 1        ;SHIFT REGISTER
0216   A80B             ACR    .BLOCK 1        ;AUX CONTROL REGISTER
0217   A80C             PCR    .BLOCK 1        ;PERIPHERAL CONTROL REGISTER
0218   A80D             IFR    .BLOCK 1        ;INTERRUPT FLAG REGISTER
0219   A80E             IER    .BLOCK 1        ;INTERRUPT ENABLE REGISTER
0220   A80F             DRA    .BLOCK 1        ;DATA REGISTER A
0221   A810
0222   A810             ;DEFINE I/O CONTROL FOR PCR (CA1,CA2,CB1,CB2)
0223   A810             DATIN  =$0E            ;DATA IN CA2=1
0224   A810             DATOUT =$0C            ;DATA OUT CA2=0
0225   A810             PRST   =$00            ;PRINT START (CB1) ,NEG DETEC
0226   A810             SP12   =$01            ;STROBE P1,P2  (CA1) ,POS DETEC
0227   A810             MON    =$C0            ;MOTOR ON (CB2=0)
0228   A810             MOFF   =$E0
0229   A810             ;MSKS TO OBTAIN EACH INTERRUPT
0230   A810             MPRST  =$10            ;INT FLG FOR CB1
0231   A810             MSP12  =$02            ;INT FLG FOR CA1
0232   A810             MT2    =$20            ;INT FLG FOR T2
0233   A810
0234   A810             ;DEFINE I/O CONTROL FOR ACR  (TIMERS,SR)
0235   A810             PRTIME =1700           ; PRINTING TIME =1.7M MSEC
0236   A810             DEBTIM =5000           ; DEBOUNCE TIME (5 MSEC)
0237   A810             T2I    =$00            ;T2 AS ONE SHOT (PRI,KB,TTY,TAPE)
0238   A810             T1I    =$00            ;T1 AS ONE SHOT,PB7 DIS (TAPES)
0239   A810             T1FR   =$C0            ;T1 IN FREE RUNNING (TAPE)
0240   A810
0241   A810             ;         ******************************
0242   A810             ;         *    DISPLAY   (AC00-AFFF)   *