Apple II User Manual

Page of 257
2399   F036 68                 PLA
2400   F037 60                 RTS
2401   F038 A9 20       OUTPR  LDA #' '        ;FILL REST OF BUFF WITH BLANKS
2402   F03A E0 14       OUTPR1 CPX #20         ;SEE IF END OF BUFF
2403   F03C F0 06              BEQ OUTPR2
2404   F03E 9D 60 A4           STA IBUFM,X     ;NO SO STORE BLANK
2405   F041 E8                 INX             ;INCR BUFF PNTR
2406   F042 10 F6              BPL OUTPR1
2407   F044 60          OUTPR2 RTS
2408   F045
2409   F045             ;SUB TO OUTPUT BUFFER, 70 DOTS (10 DOTS AT
2410   F045             ;A TIME BY 7 ROWS) FOR EACH LINE OF PRINTING
2411   F045 2C 11 A4    IPST   BIT PRIFLG      ;PRINT FLG ON ?
2412   F048 10 2E              BPL IPO4
2413   F04A 20 CB F0    IPS0   JSR PINT        ;INITIALIZE VALUES
2414   F04D 20 E3 F0           JSR IPSU        ;SET UP FIRS OUTPUT PATTERN
2415   F050 A9 C1       IPO0   LDA #PRST+SP12+MON ;TURN MOTOR ON
2416   F052 8D 0C A8           STA PCR
2417   F055 20 A0 FF           JSR PAT23       ;TIME OUT ?
2418   F058 D0 0C              BNE IPO2        ;NO, START SIGNAL RECEIVED
2419   F05A 20 A0 FF           JSR PAT23       ;YES, TRY AGAIN
2420   F05D D0 07              BNE IPO2        ;OK
2421   F05F 4C 79 F0           JMP PRIERR      ;TWO TIME OUTS - ERROR
2422   F062 EA                 NOP
2423   F063 EA                 NOP
2424   F064 EA                 NOP
2425   F065 EA                 NOP
2426   F066 20 87 F0    IPO2   JSR PRNDOT      ;STRB P1=1 PRINT DOTS (1.7MSEC)
2427   F069 20 87 F0           JSR PRNDOT      ;STRB P2=1 PRINT DOTS (1.7MSEC)
2428   F06C             ;CHECK FOR 90, WHEN 70 PRNDOT WILL OUTPUT ZEROS
2429   F06C AD 77 A4           LDA IDOT
2430   F06F C9 5A              CMP #90
2431   F071 90 F3              BCC IPO2        ;L.T. 90 THEN GO STROB P1
2432   F073 A9 E1       IPO3   LDA #PRST+SP12+MOFF ;TURN MOTOR OFF
2433   F075 8D 0C A8           STA PCR
2434   F078 60          IPO4   RTS
2435   F079
2436   F079 20 44 EB    PRIERR JSR CLR         ;CLEAR PRI PNTR
2437   F07C 20 B1 FE           JSR PATCH5      ;TURN PRI OFF
2438   F07F A0 3B              LDY #M12-M1
2439   F081 20 AF E7           JSR KEP
2440   F084 4C A1 E1           JMP COMIN       ;BACK WHERE SUBR WAS CALLED
2441   F087
2442   F087             ;SUBR TO INCR DOT COUNTER,WHEN
2443   F087             ;NEG TRANS OUTPUT CHR FOR 1.7 MSEC
2444   F087             ;CLEAR & SET UP NEXT PATTERN
2445   F087 A9 00       PRNDOT LDA #0          ;CLR INTERRPTS
2446   F089 8D 01 A8           STA DRAH
2447   F08C AD 0D A8    PRDOT0 LDA IFR
2448   F08F 29 02              AND #MSP12      ;ANY STROBES ?
2449   F091 F0 F9              BEQ PRDOT0
2450   F093 AD 0C A8           LDA PCR
2451   F096 49 01              EOR #$01
2452   F098 8D 0C A8           STA PCR
2453   F09B EE 77 A4           INC IDOT
2454   F09E AD 79 A4           LDA IOUTU       ;2 LEFT ELEM
2455   F0A1 0D 00 A8           ORA DRB         ;DO NOT TURN TTY OUTPUT OFF
2456   F0A4 8D 00 A8           STA DRB
2457   F0A7 AD 78 A4           LDA IOUTL       ;7 RIGHT ELEM, CLR CA1 INTER FLG
2458   F0AA 8D 01 A8           STA DRAH
2459   F0AD A9 A4              LDA #PRTIME
2460   F0AF 8D 08 A8           STA T2L