
 1000  *SAVE S.FAST TEXT (RBS-C)
 1010  *--------------------------------
 1020  *      PAUL SCHLYTER'S TEXT FILE SPEED-UP
 1030  *      AS MODIFIED BY BOB SANDER-CEDERLOF
 1040  *                     JUNE 8, 1983
 1050  *--------------------------------
 1060  PNTR   .EQ $42,43
 1070  *--------------------------------
 1080  COPY.BUFFER.TO.WORKAREA .EQ $AE6A
 1090  SAVE.WORKAREA           .EQ $AE81
 1100  POINT.TO.WORKAREA       .EQ $AF08
 1110  SETUP.PNTR              .EQ $AF12
 1120  FM.OPCODE               .EQ $B5BB
 1130  PNTR.SAVE               .EQ $B5CF,B5D0
 1140  *--------------------------------
 1150  PATCH.AREA              .EQ $B6B3
 1160  PATCH.LINK1             .EQ $AB0B
 1170  PATCH.LINK2             .EQ $B38F
 1180  *--------------------------------
 1190         .OR $300
 1200  *--------------------------------
 1210  INSTALL.PATCHES
 1220         LDX #PATCH.SIZE-1
 1230  .1     LDA PATCH.CODE,X
 1240         STA PATCH.AREA,X
 1250         DEX
 1260         BPL .1
 1270         LDA #PATCH1
 1280         STA PATCH.LINK1
 1290         LDA /PATCH1
 1300         STA PATCH.LINK1+1
 1310         LDA #PATCH2
 1320         STA PATCH.LINK2
 1330         LDA /PATCH2
 1340         STA PATCH.LINK2+1
 1342         LDA #20
 1344         STA $A1B1
 1350         RTS
 1360  *--------------------------------
 1370  PATCH.CODE
 1380         .OR $B6B3
 1390         .TA PATCH.CODE
 1400  PATCH1 JSR CHECK.OPCODE
 1410         BCC .1       NOT READ/WRITE
 1420         CMP PNTR.SAVE
 1430         BNE .1       NO
 1440         CPX PNTR.SAVE+1
 1450         BEQ PATCH3   YES, RETURN NOW
 1460  .1     BIT FLAG
 1470         BPL .2
 1480         LDX #PNTR.SAVE-$B5C7
 1490         JSR SETUP.PNTR
 1500         JSR PATCH4   CLEAR FLAG, SAVE WORKAREA
 1510  .2     JMP COPY.BUFFER.TO.WORKAREA
 1520  *--------------------------------
 1530  PATCH2 JSR CHECK.OPCODE
 1540         BCC PATCH4   NOT READ OR WRITE
 1550         ROR FLAG     SET SIGN BIT
 1560         STA PNTR.SAVE
 1570         STX PNTR.SAVE+1
 1580  PATCH3 RTS
 1590  *--------------------------------
 1600  PATCH4 LSR FLAG     CLEAR SIGN BIT
 1610         JMP SAVE.WORKAREA
 1620  *--------------------------------
 1630  CHECK.OPCODE
 1640         JSR POINT.TO.WORKAREA
 1650         LDA FM.OPCODE
 1660         SEC
 1670         EOR #3       READ?
 1680         BEQ .1       YES
 1690         EOR #7       WRITE?
 1700         BEQ .1
 1710         CLC
 1720  .1     LDA PNTR
 1730         LDX PNTR+1
 1740         RTS
 1750  *--------------------------------
 1760  FLAG   .HS 00       MUST START WITH FLAG=0
 1770  *--------------------------------
 1780  PATCH.SIZE .EQ *-PATCH1

