Apple ii Battery Charger User Manual


 
2089 EDB7 4C A1 E1 JMP COMIN
2090 EDBA
2091 EDBA ;ADD 1 TO BLK COUNT AND OUTPUT IT
2092 EDBA EE 15 01 ADDBLK INC BLK ;INCR BLK CNT
2093 EDBD EE 11 A4 ADDBK1 INC PRIFLG ;SO DONT OUTPUT TO PRINTR
2094 EDC0 A9 12 LDA #18 ;ONLY OUTPUT IN THIS POSITION
2095 EDC2 8D 15 A4 STA CURPO2
2096 EDC5 AD 4A A4 LDA DIBUFF+18 ;SAVE DISBUF (FOR EDIT)
2097 EDC8 48 PHA
2098 EDC9 AD 4B A4 LDA DIBUFF+19
2099 EDCC 48 PHA
2100 EDCD AE 13 A4 LDX OUTFLG ;SAVE OUTFLG
2101 EDD0 A9 0D LDA #CR
2102 EDD2 8D 13 A4 STA OUTFLG ;TO OUTPUT TO TERMINAL
2103 EDD5 AD 16 01 LDA BLK+1 ;BLK CNT COMING FROM TAPE
2104 EDD8 20 46 EA JSR NUMA ;OUTPUT IN ASCII
2105 EDDB 8E 13 A4 STX OUTFLG ;RESTORE OUTFLG
2106 EDDE 68 PLA
2107 EDDF 8D 4B A4 STA DIBUFF+19
2108 EDE2 68 PLA
2109 EDE3 8D 4A A4 STA DIBUFF+18
2110 EDE6 CE 11 A4 DEC PRIFLG ;RESTORE PRI FLG
2111 EDE9 60 RTS
2112 EDEA
2113 EDEA ;SET TAPE (1 OR 2) FOR INPUT
2114 EDEA A9 37 TAISET LDA #$37 ;SET PB7 FOR INPUT
2115 EDEC 8D 02 A8 STA DDRB
2116 EDEF AD 34 A4 LDA TAPIN ;INPUT FLG (TAP 1=2 OR TAP 2=1)
2117 EDF2 20 1C EE JSR TIOSET ;RESET PB4 OR PB5
2118 EDF5 A9 EE LDA #MOFF+DATIN ;SET CA2=1 (DATA IN)
2119 EDF7 8D 0C A8 STA PCR
2120 EDFA A9 FF LDA #$FF ;PREPARE T2
2121 EDFC 8D 08 A8 STA T2L ;LACTH
2122 EDFF ;CHCK BIT BY BIT UNTIL $16
2123 EDFF 20 3B EE SYNC JSR RDBIT ;GET A BIT IN MSB
2124 EE02 4E 2A A4 LSR CPIY ;MAKE ROOM FOR BIT
2125 EE05 0D 2A A4 ORA CPIY ;PUT BIT INTO MSB
2126 EE08 8D 2A A4 STA CPIY
2127 EE0B C9 16 CMP #$16 ;SYN CHAR ?
2128 EE0D D0 F0 BNE SYNC
2129 EE0F A2 05 LDX #$05 ;TEST FOR 5 SYN CHARS
2130 EE11 20 29 EE SYNC1 JSR GETTAP
2131 EE14 C9 16 CMP #$16
2132 EE16 D0 E7 BNE SYNC ;IF NOT 2 CHAR RE-SYNC
2133 EE18 CA DEX
2134 EE19 D0 F6 BNE SYNC1
2135 EE1B 60 RTS
2136 EE1C
2137 EE1C ;SET PB4 OR PB5 OFF
2138 EE1C ;USED BY IN/OUT SET UPS
2139 EE1C D0 04 TIOSET BNE TIOS1 ;BRCH IF TAP1
2140 EE1E A9 14 LDA #$14 ;SET TAP 2 OFF (PB5=0)
2141 EE20 D0 02 BNE TIOS2
2142 EE22 A9 24 TIOS1 LDA #$24 ;SET TAP 1 OFF (PB4=0)
2143 EE24 8D 00 A8 TIOS2 STA DRB
2144 EE27 78 SEI ;DISABLE INTERR WHILE TAP
2145 EE28 60 RTS
2146 EE29
2147 EE29 ;GET 1 CHAR FROM TAPE AND RETURN
2148 EE29 ;WITH CHR IN ACC, USE CPIY TO ASM CHR ,USES Y
2149 EE29 A0 08 GETTAP LDY #$08 ;READ 8 BITS
2150 EE2B 20 3B EE GETA1 JSR RDBIT ;GET NEXT DATA BIT