C64 Software  <  SCA: The C64 Software Collection / HIRES>ZSATZ7

  Run
1000              ;SAVE"",8
1010              ;
1020              ;VERWANDELT HIRES
1030              ;IN ZEICHENSATZ
1040              ;
1050              ;30.1.1986
1060              ;
1070              ;
1080              ORG 20000
1090              ;
1100 MAPS         EQU 8192
1110 ZSATZS       EQU 8192
1120 VRAMS        EQU 1024
1130 VENDES       EQU VRAMS + 1000
1140              ;
1150 MAP          EQU 87
1160 ZSATZ        EQU 89
1170 ZSATZTMP     EQU 91
1180 VRAM         EQU 93
1190 ANZAHL       EQU 95
1200 CNTR         EQU 96
1210              ;
1220              ;
1230 INIT         LDA #<MAPS
1240              LDX #>MAPS
1250              STA MAP
1260              STX MAP+1
1270              LDA #<ZSATZS+8
1280              LDX #>ZSATZS
1290              STA ZSATZ
1300              STX ZSATZ+1
1310              LDA #<VRAMS
1320              LDX #>VRAMS
1330              STA VRAM
1340              STX VRAM+1
1350              ;
1360              LDA #1
1370              STA ANZAHL
1380              ;
1390              ;
1400              ;
1410 LOOP1        LDA #<ZSATZS
1420              LDX #>ZSATZS
1430              STA ZSATZTMP
1440              STX ZSATZTMP+1
1450              LDA #0
1460              STA CNTR
1470              ;
1480 LOOP2        LDY #0
1490 LOOP3        LDA (MAP),Y
1500              CMP (ZSATZTMP),Y
1510              BNE NOTTHIS
1520              INY
1530              CPY #8
1540              BNE LOOP3
1550              ;
1560 SETCHAR      LDA CNTR ; ZEICHENNR.
1570              LDY #0
1580              STA (VRAM),Y
1590              ;
1600              LDX #VRAM
1610              LDA #1
1620              JSR ADDIT
1630              LDX #MAP
1640              LDA #8
1650              JSR ADDIT
1660              ;
1670              LDA VRAM+1
1680              CMP #>VENDES
1690              BNE LOOP1
1700              LDA VRAM
1710              CMP #<VENDES
1720              BNE LOOP1
1730              RTS
1740              ;
1750              ;
1760 NOTTHIS      INC CNTR
1770              LDA CNTR
1780              CMP ANZAHL
1790              BEQ DEFNEWCHAR
1800              ;
1810              LDX #ZSATZTMP
1820              LDA #8
1830              JSR ADDIT
1840              ;
1850              JMP LOOP2
1860              ;
1870              ;
1880 DEFNEWCHAR   LDY #7
1890 DEFNEW1      LDA (MAP),Y
1900              STA (ZSATZ),Y
1910              DEY
1920              BPL DEFNEW1
1930              ;
1940              LDX #ZSATZ
1950              LDA #8
1960              JSR ADDIT
1970              ;
1980              LDA CNTR
1990              BEQ ERR
2000              INC ANZAHL
2010              JMP SETCHAR
2020              ;
2030 ERR          INC 53280
2040              JMP ERR
2050              ;
2060 ADDIT        CLC
2070              ADC 0,X
2080              STA 0,X
2090              LDA #0
2100              ADC 1,X
2110              STA 1,X
2120 LASTBYTE     RTS
READY.