Apple ii Battery Charger User Manual


 
2163 8F01 E6 FE INC BUFADL ;BUMP BUFFER ADDR
2164 8F03 D0 C9 BNE DUMPT2
2165 8F05 E6 FF INC BUFADH ;CARRY
2166 8F07 4C CE 8E JMP DUMPT2
2167 8F0A 24 FD OUTCTX BIT MODE ;HS OR KIM?
2168 8F0C 10 48 BPL OUTCHT ;KIM
2169 8F0E
2170 8F0E ; OUTBTH - NO CLOCK
2171 8F0E ; A,X DESTROYED
2172 8F0E ; MUST RESIDE ON ONE PAGE - TIMING CRITICAL
2173 8F0E A2 09 OUTBTH LDX #9 ;8 BITS + START BIT
2174 8F10 8C 39 A6 STY SCR9
2175 8F13 85 FC STA CHAR
2176 8F15 AD 02 A4 LDA TAPOUT ;GET PREV LEVEL
2177 8F18 46 FC GETBIT LSR CHAR
2178 8F1A 49 08 EOR #TPBIT
2179 8F1C 8D 02 A4 STA TAPOUT ;INVERT LEVEL
2180 8F1F ; *** HERE STARTS FIRST HALF CYCLE
2181 8F1F AC 35 A6 LDY TAPET1
2182 8F22 88 A416 DEY ;TIME FOR THIS LOOP IS 5Y-1
2183 8F23 D0 FD BNE A416
2184 8F25 90 12 BCC NOFLIP ;NOFLIP IF BIT ZERO
2185 8F27 49 08 EOR #TPBIT ;BIT IS ONE - INVERT OUTPUT
2186 8F29 8D 02 A4 STA TAPOUT
2187 8F2C ; *** END OF FIRST HALF CYCLE
2188 8F2C AC 3C A6 B416 LDY TAPET2
2189 8F2F 88 B416B DEY ;LENGTH OF LOOP IS 5Y-1
2190 8F30 D0 FD BNE B416B
2191 8F32 CA DEX
2192 8F33 D0 E3 BNE GETBIT ;GET NEXT BIT (LAST IS 0 START BIT)
2193 8F35 AC 39 A6 LDY SCR9 ; (BY 9 BIT LSR)
2194 8F38 60 RTS
2195 8F39 EA NOFLIP NOP ;TIMING
2196 8F3A 90 F0 BCC B416 ;(ALWAYS)
2197 8F3C ;
2198 8F3C 20 77 8E OUTBCX JSR CHKT ;WRITE HS OR KIM BYTE & CKSUM
2199 8F3F 24 FD OUTBTX BIT MODE ;WRITE HS OR KIM BYTE
2200 8F41 30 CB BMI OUTBTH ;HS
2201 8F43
2202 8F43 ;OUTBTC - OUTPUT ONE KIM BYTE
2203 8F43
2204 8F43 OUTBTC =*
2205 8F43 A8 OUTBT TAY ;SAVE DATA BYTE
2206 8F44 4A LSR A
2207 8F45 4A LSR A
2208 8F46 4A LSR A
2209 8F47 4A LSR A
2210 8F48 20 4B 8F JSR HEXOUT ;MORE SIG DIGIT
2211 8F4B ; FALL INTO HEXOUT
2212 8F4B
2213 8F4B 29 0F HEXOUT AND #$0F ;CVT LSD OF [A] TO ASCII, OUTPUT
2214 8F4D C9 0A CMP #$0A
2215 8F4F 18 CLC
2216 8F50 30 02 BMI HEX1
2217 8F52 69 07 ADC #$07
2218 8F54 69 30 HEX1 ADC #$30
2219 8F56
2220 8F56 ; OUTCHT - OUTPUT ASCII CHAR (KIM)
2221 8F56 ; CLOCK NOT USED
2222 8F56 ; X,Y PRESERVED
2223 8F56 ; MUST RESIDE ON ONE PAGE - TIMING CRITICAL
2224 8F56