;------------------------------- |
|
;RADIAL PLOTS BY SIR ART/CHARGED |
|
;------------------------------- |
|
|
|
*= $1000 |
|
|
|
ACTR1 = $20 |
|
ACTR2 = $21 |
|
SPE1 = $22 |
|
SPE2 = $23 |
|
OLDR1 = $26 |
|
OLDR2 = $27 |
|
SPE3 = $28 |
|
SPE4 = $29 |
|
EKRANLO = $24 |
|
EKRANHI = $25 |
|
OPOZN = $2A |
|
KOLOR = $2B |
|
FAZA = $2C |
|
LICZNIK = $2D |
|
GOTOW = $2E |
|
NUMERFX = $2F |
|
CIEN1X = $30 |
|
|
|
TABSIN = $1F00 |
|
|
|
TABLO = $1E00 |
|
TABHI = $1E80 |
|
TABORA = $1D80 |
|
|
|
TABELA = $1D00 |
|
TABELA2 = $1C80 |
|
|
|
PLOTS = $3000 |
|
PLOTSCZY = $4C01 |
|
TABELKI = $4F00 |
|
TABELKI2 = $5700 |
|
|
|
SEI |
|
LDA #$00 |
|
LDX #$00 |
|
L1 STA $D800,X |
|
STA $D900,X |
|
STA $DA00,X |
|
STA $DB00,X |
|
INX |
|
BNE L1 |
|
|
|
LDA #$00 |
|
STA $D020 |
|
LDA #$06 |
|
STA $D021 |
|
LDA #$7F |
|
STA $DC0D |
|
LDX #$00 |
|
STX $DC0E |
|
INX |
|
STA $D01A |
|
LDA #$08 |
|
STA $D012 |
|
LDA #$97 |
|
STA $DD00 |
|
LDA #$18 |
|
STA $D018 |
|
LDA #$1B |
|
STA $D011 |
|
LDA #$37 |
|
STA $01 |
|
LDA #<IRQ1 |
|
STA $0314 |
|
LDA #>IRQ1 |
|
STA $0315 |
|
|
|
JSR CHESS |
|
JSR ZNAKI |
|
JSR CZYSZCZ |
|
JSR PISZ |
|
JSR MAKETABS |
|
JSR INIPETLA |
|
|
|
CLI |
|
|
|
J3 LDA #$E0 |
|
J2 CMP $D012 |
|
BNE J2 |
|
|
|
LDA GOTOW |
|
BEQ JMAIN |
|
CMP #$01 |
|
BNE J10 |
|
LDA #$06 |
|
STA KOLOR |
|
JSR ZNIK1 |
|
JMP JMAIN |
|
J10 CMP #$02 |
|
BNE J11 |
|
LDX NUMERFX |
|
LDA #$00 |
|
STA OLDR1 |
|
STA OLDR2 |
|
LDA SPED1TAB,X |
|
STA SPE1 |
|
LDA SPED2TAB,X |
|
STA SPE2 |
|
LDA SPED3TAB,X |
|
STA SPE3 |
|
LDA SPED4TAB,X |
|
STA SPE4 |
|
INX |
|
CPX #$06 |
|
BNE J12 |
|
LDX #$00 |
|
J12 STX NUMERFX |
|
LDA #$03 |
|
STA GOTOW |
|
J11 CMP #$03 |
|
BNE JMAIN |
|
LDA #$0E |
|
STA KOLOR |
|
JSR ZNIK2 |
|
|
|
JMAIN LDA #$00 |
|
JSR PLOTSCZY |
|
LDA OLDR1 |
|
STA ACTR1 |
|
LDA OLDR2 |
|
STA ACTR2 |
|
JSR PLOTS |
|
LDA OLDR1 |
|
CLC |
|
ADC SPE3 |
|
STA OLDR1 |
|
LDA OLDR2 |
|
CLC |
|
ADC SPE4 |
|
STA OLDR2 |
|
INC LICZNIK |
|
LDA LICZNIK |
|
CMP #$C0 |
|
BNE J1 |
|
LDA #$00 |
|
STA LICZNIK |
|
LDA #$01 |
|
STA GOTOW |
|
J1 JMP J3 |
|
|
|
SPED1TAB .BYTE $8C,$08,$10,$06 |
|
.BYTE $02,$8C |
|
SPED2TAB .BYTE $80,$02,$FC,$02 |
|
.BYTE $04,$06 |
|
SPED3TAB .BYTE $FE,$04,$03,$02 |
|
.BYTE $FC,$03 |
|
SPED4TAB .BYTE $FC,$FB,$02,$FE |
|
.BYTE $08,$FE |
|
|
|
IRQ1 |
|
INC $D019 |
|
JMP $EA7E |
|
|
|
INIPETLA LDA #$02 |
|
STA GOTOW |
|
LDA #$00 |
|
STA NUMERFX |
|
LDA #$00 |
|
STA LICZNIK |
|
LDA #$00 |
|
STA FAZA |
|
LDA #$00 |
|
STA OPOZN |
|
RTS |
|
|
|
ZNIK1 LDX OPOZN |
|
BEQ ZNIK11 |
|
DEC OPOZN |
|
RTS |
|
ZNIK11 LDA #$02 |
|
STA OPOZN |
|
LDX FAZA |
|
LDA KOLOR |
|
STA POCZ2,X |
|
STA POCZ2+$28,X |
|
STA POCZ2+$50,X |
|
STA POCZ2+$78,X |
|
STA POCZ2+$A0,X |
|
STA POCZ2+$C8,X |
|
STA POCZ2+$F0,X |
|
STA POCZ2+$0118,X |
|
STA POCZ2+$0140,X |
|
STA POCZ2+$0168,X |
|
STA POCZ2+$0190,X |
|
STA POCZ2+$01B8,X |
|
STA POCZ2+$01E0,X |
|
STA POCZ2+$0208,X |
|
STA POCZ2+$0230,X |
|
STA POCZ2+$0258,X |
|
LDA #$06 |
|
STA $DB5A |
|
INX |
|
CPX #$10 |
|
BNE ZNIK12 |
|
LDX #$00 |
|
LDA #$02 |
|
STA GOTOW |
|
ZNIK12 STX FAZA |
|
RTS |
|
|
|
ZNIK2 LDX OPOZN |
|
BEQ ZNIK21 |
|
DEC OPOZN |
|
RTS |
|
ZNIK21 LDA #$02 |
|
STA OPOZN |
|
LDA #$0F |
|
SEC |
|
SBC FAZA |
|
TAX |
|
LDA KOLOR |
|
STA POCZ2,X |
|
STA POCZ2+$28,X |
|
STA POCZ2+$50,X |
|
STA POCZ2+$78,X |
|
STA POCZ2+$A0,X |
|
STA POCZ2+$C8,X |
|
STA POCZ2+$F0,X |
|
STA POCZ2+$0118,X |
|
STA POCZ2+$0140,X |
|
STA POCZ2+$0168,X |
|
STA POCZ2+$0190,X |
|
STA POCZ2+$01B8,X |
|
STA POCZ2+$01E0,X |
|
STA POCZ2+$0208,X |
|
STA POCZ2+$0230,X |
|
STA POCZ2+$0258,X |
|
LDA #$06 |
|
STA $DB5A |
|
LDX FAZA |
|
INX |
|
CPX #$10 |
|
BNE ZNIK22 |
|
LDA #$00 |
|
STA GOTOW |
|
LDX #$00 |
|
ZNIK22 STX FAZA |
|
RTS |
|
|
|
CHESS LDA #$00 |
|
STA $20 |
|
LDA #$D8 |
|
STA $21 |
|
LDA #$BC |
|
STA $22 |
|
LDA #$CB |
|
STA $23 |
|
LDA #$0A |
|
STA CH3+1 |
|
LDX #$00 |
|
|
|
CH2 LDA $22 |
|
LDY #$00 |
|
STA ($20),Y |
|
INY |
|
STA ($20),Y |
|
LDA $23 |
|
INY |
|
STA ($20),Y |
|
INY |
|
STA ($20),Y |
|
INX |
|
CH3 CPX #$14 |
|
BNE CH1 |
|
LDA #$14 |
|
STA CH3+1 |
|
LDA $22 |
|
TAX |
|
LDA $23 |
|
STA $22 |
|
STX $23 |
|
LDX #$00 |
|
CH1 LDA $20 |
|
CLC |
|
ADC #$04 |
|
STA $20 |
|
LDA $21 |
|
ADC #$00 |
|
STA $21 |
|
LDA $20 |
|
CMP #$C0 |
|
BNE CH2 |
|
LDA $21 |
|
CMP #$DB |
|
BNE CH2 |
|
RTS |
|
|
|
ZNAKI LDX #$00 |
|
LDA #$FF |
|
ZNAKI1 STA $0400,X |
|
STA $0500,X |
|
STA $0600,X |
|
STA $06F8,X |
|
INX |
|
BNE ZNAKI1 |
|
|
|
POCZ = $28*6+$0403 |
|
POCZ2 = $28*6+$D803 |
|
|
|
LDA #<POCZ |
|
STA $20 |
|
LDA #>POCZ |
|
STA $21 |
|
|
|
LDX #$00 |
|
ZNAKI3 TXA |
|
LDY #$00 |
|
ZNAKI2 STA ($20),Y |
|
CLC |
|
ADC #$10 |
|
INY |
|
CPY #$10 |
|
BNE ZNAKI2 |
|
LDA $20 |
|
CLC |
|
ADC #$28 |
|
STA $20 |
|
LDA $21 |
|
ADC #$00 |
|
STA $21 |
|
INX |
|
CPX #$10 |
|
BNE ZNAKI3 |
|
|
|
LDA #<POCZ2 |
|
STA $20 |
|
LDA #>POCZ2 |
|
STA $21 |
|
|
|
LDX #$00 |
|
ZNAKI4 LDA #$06 |
|
LDY #$00 |
|
ZNAKI5 STA ($20),Y |
|
INY |
|
CPY #$10 |
|
BNE ZNAKI5 |
|
LDA $20 |
|
CLC |
|
ADC #$28 |
|
STA $20 |
|
LDA $21 |
|
ADC #$00 |
|
STA $21 |
|
INX |
|
CPX #$10 |
|
BNE ZNAKI4 |
|
LDA #$06 |
|
STA $DB5A |
|
RTS |
|
|
|
CZYSZCZ LDX #$00 |
|
LDA #$00 |
|
CZY1 STA $2000,X |
|
STA $2100,X |
|
STA $2200,X |
|
STA $2300,X |
|
STA $2400,X |
|
STA $2500,X |
|
STA $2600,X |
|
STA $2700,X |
|
INX |
|
BNE CZY1 |
|
LDX #$07 |
|
LDA #$FF |
|
CZY2 STA $27F8,X |
|
DEX |
|
BPL CZY2 |
|
RTS |
|
|
|
PLOTPROC LDA ACTR1 |
|
CLC |
|
ADC SPE1 |
|
STA ACTR1 |
|
TAY |
|
LDA ACTR2 |
|
CLC |
|
ADC SPE2 |
|
STA ACTR2 |
|
TAX |
|
LDA TABSIN,X |
|
ADC TABSIN,Y |
|
TAX |
|
PP2 LDY $0800,X |
|
PP3 STY $0800 |
|
PP1 LDA $0800,X |
|
TAX |
|
LDA TABLO,X |
|
STA EKRANLO |
|
PP4 STA $0800 |
|
LDA TABHI,X |
|
STA EKRANHI |
|
PP5 STA $0800 |
|
LDA (EKRANLO),Y |
|
ORA TABORA,X |
|
STA (EKRANLO),Y |
|
|
|
PLOTCZY LDY #$00 |
|
STA $0800,Y |
|
|
|
PISZ LDA #<PLOTS |
|
STA $20 |
|
LDA #>PLOTS |
|
STA $21 |
|
LDA #<TABELKI |
|
STA $22 |
|
LDA #>TABELKI |
|
STA $23 |
|
LDA #<TABELKI2 |
|
STA $26 |
|
LDA #>TABELKI2 |
|
STA $27 |
|
LDA #<PLOTSCZY |
|
STA $24 |
|
LDA #>PLOTSCZY |
|
STA $25 |
|
|
|
LDX #$00 |
|
PISZ3 LDA $22 |
|
STA PP1+1 |
|
LDA $26 |
|
STA PP2+1 |
|
LDA $23 |
|
STA PP1+2 |
|
LDA $27 |
|
STA PP2+2 |
|
LDA $24 |
|
CLC |
|
ADC #$01 |
|
STA $24 |
|
STA PP3+1 |
|
LDA $25 |
|
ADC #$00 |
|
STA $25 |
|
STA PP3+2 |
|
LDA $24 |
|
CLC |
|
ADC #$02 |
|
STA $24 |
|
STA PP4+1 |
|
LDA $25 |
|
ADC #$00 |
|
STA $25 |
|
STA PP4+2 |
|
LDA $24 |
|
CLC |
|
ADC #$01 |
|
STA $24 |
|
STA PP5+1 |
|
LDA $25 |
|
ADC #$00 |
|
STA $25 |
|
STA PP5+2 |
|
LDA $24 |
|
CLC |
|
ADC #$01 |
|
STA $24 |
|
LDA $25 |
|
ADC #$00 |
|
STA $25 |
|
LDY #$00 |
|
PISZ2 LDA PLOTPROC,Y |
|
STA ($20),Y |
|
INY |
|
CPY #$38 |
|
BNE PISZ2 |
|
|
|
LDA $20 |
|
CLC |
|
ADC #$38 |
|
STA $20 |
|
LDA $21 |
|
ADC #$00 |
|
STA $21 |
|
LDA $22 |
|
CLC |
|
ADC #$40 |
|
STA $22 |
|
LDA $23 |
|
ADC #$00 |
|
STA $23 |
|
LDA $26 |
|
CLC |
|
ADC #$40 |
|
STA $26 |
|
LDA $27 |
|
ADC #$00 |
|
STA $27 |
|
LDA $27 |
|
CMP #$6F |
|
BNE PISZ7 |
|
LDA #>TABELKI |
|
STA $27 |
|
PISZ7 INX |
|
CPX #$80 |
|
BEQ PISZ6 |
|
JMP PISZ3 |
|
PISZ6 LDA #$60 |
|
LDY #$00 |
|
STA ($20),Y |
|
|
|
LDA #<PLOTSCZY |
|
STA $20 |
|
LDA #>PLOTSCZY |
|
STA $21 |
|
|
|
LDX #$00 |
|
PISZ4 LDY #$00 |
|
PISZ5 LDA PLOTCZY,Y |
|
STA ($20),Y |
|
INY |
|
CPY #$05 |
|
BNE PISZ5 |
|
|
|
LDA $20 |
|
CLC |
|
ADC #$05 |
|
STA $20 |
|
LDA $21 |
|
ADC #$00 |
|
STA $21 |
|
INX |
|
CPX #$80 |
|
BNE PISZ4 |
|
LDA #$60 |
|
LDY #$00 |
|
STA ($20),Y |
|
RTS |
|
|
|
MAKETABS LDA #<TABELKI |
|
STA $20 |
|
LDA #>TABELKI |
|
STA $21 |
|
LDA #$00 |
|
STA $22 |
|
|
|
MAKE6 LDX $22 |
|
LDA #$00 |
|
STA $24 |
|
MAK LDA TABELA,X |
|
SEC |
|
SBC #$3F |
|
STA $23 |
|
BPL MAKE1 |
|
LDA $24 |
|
EOR #$01 |
|
STA $24 |
|
LDA $23 |
|
EOR #$FF |
|
CLC |
|
ADC #$01 |
|
STA $23 |
|
|
|
MAKE1 ASL $23 |
|
ASL $23 |
|
|
|
LDA #$00 |
|
STA $25 |
|
LDA #$3F |
|
STA $26 |
|
|
|
LDA $24 |
|
BEQ MAKE2 |
|
LDY #$00 |
|
MAKE3 LDA $25 |
|
SEC |
|
SBC $23 |
|
STA $25 |
|
LDA $26 |
|
SBC #$00 |
|
STA $26 |
|
STA ($20),Y |
|
INY |
|
CPY #$40 |
|
BNE MAKE3 |
|
JMP MAKE4 |
|
MAKE2 LDY #$00 |
|
MAKE5 LDA $25 |
|
CLC |
|
ADC $23 |
|
STA $25 |
|
LDA $26 |
|
ADC #$00 |
|
STA $26 |
|
STA ($20),Y |
|
INY |
|
CPY #$40 |
|
BNE MAKE5 |
|
MAKE4 LDA $20 |
|
CLC |
|
ADC #$40 |
|
STA $20 |
|
LDA $21 |
|
ADC #$00 |
|
STA $21 |
|
|
|
INC $22 |
|
LDA $22 |
|
CMP #$80 |
|
BNE MAKE6 |
|
RTS |
|
|
|