00000000: 20 52 45 4D 20 47 52 31 0D 3B 0D 53 59 53 42 41 | REM GR1.;.SYSBA|
00000010: 53 45 31 3D 24 45 30 30 30 0D 20 44 49 4D 20 53 |SE1=$E000. DIM S|
00000020: 59 58 4C 4F 31 20 2C 20 53 59 59 4C 4F 31 20 2C |YXLO1 , SYYLO1 ,|
00000030: 20 53 59 4D 53 43 31 0D 20 44 49 4D 20 53 59 4D | SYMSC1. DIM SYM|
00000040: 53 43 41 31 20 2C 20 53 59 4D 53 43 42 31 0D 3B |SCA1 , SYMSCB1.;|
00000050: 0D 20 44 45 46 20 50 4C 4F 54 31 20 53 59 43 4C |. DEF PLOT1 SYCL|
00000060: 52 31 20 2C 20 53 59 58 4C 4F 31 20 2C 20 53 59 |R1 , SYXLO1 , SY|
00000070: 59 4C 4F 31 0D 20 20 4C 45 54 20 53 59 59 4C 4F |YLO1. LET SYYLO|
00000080: 31 20 41 4E 44 20 24 46 38 20 2D 3E 20 53 59 4D |1 AND $F8 -> SYM|
00000090: 53 43 31 20 2D 3E 20 53 59 50 4E 54 20 30 20 2D |SC1 -> SYPNT 0 -|
000000A0: 3E 20 53 59 50 4E 54 2B 31 0D 20 20 4C 44 59 20 |> SYPNT+1. LDY |
000000B0: 23 34 0D 53 59 50 4C 4F 54 31 43 3A 0D 20 20 4C |#4.SYPLOT1C:. L|
000000C0: 45 54 20 53 59 50 4E 54 20 2B 20 53 59 4D 53 43 |ET SYPNT + SYMSC|
000000D0: 31 20 2D 3E 20 53 59 50 4E 54 0D 20 20 4C 44 41 |1 -> SYPNT. LDA|
000000E0: 20 53 59 50 4E 54 2B 31 20 3A 20 41 44 43 20 23 | SYPNT+1 : ADC #|
000000F0: 30 20 3A 20 53 54 41 20 53 59 50 4E 54 2B 31 0D |0 : STA SYPNT+1.|
00000100: 20 20 44 45 59 20 3A 20 42 4E 45 20 53 59 50 4C | DEY : BNE SYPL|
00000110: 4F 54 31 43 0D 20 20 41 53 4C 20 53 59 50 4E 54 |OT1C. ASL SYPNT|
00000120: 20 3A 20 52 4F 4C 20 53 59 50 4E 54 2B 31 0D 20 | : ROL SYPNT+1. |
00000130: 20 41 53 4C 20 53 59 50 4E 54 20 3A 20 52 4F 4C | ASL SYPNT : ROL|
00000140: 20 53 59 50 4E 54 2B 31 0D 20 20 41 53 4C 20 53 | SYPNT+1. ASL S|
00000150: 59 50 4E 54 20 3A 20 52 4F 4C 20 53 59 50 4E 54 |YPNT : ROL SYPNT|
00000160: 2B 31 0D 20 20 4C 45 54 20 53 59 50 4E 54 2B 31 |+1. LET SYPNT+1|
00000170: 20 2B 20 23 3E 53 59 53 42 41 53 45 31 20 2D 3E | + #>SYSBASE1 ->|
00000180: 20 53 59 50 4E 54 2B 31 0D 20 20 4C 45 54 20 53 | SYPNT+1. LET S|
00000190: 59 58 4C 4F 31 20 41 4E 44 20 24 46 43 20 2B 20 |YXLO1 AND $FC + |
000001A0: 53 59 50 4E 54 20 2D 3E 20 53 59 50 4E 54 0D 20 |SYPNT -> SYPNT. |
000001B0: 20 4C 44 41 20 53 59 50 4E 54 2B 31 20 3A 20 41 | LDA SYPNT+1 : A|
000001C0: 44 43 20 23 30 20 3A 20 53 54 41 20 53 59 50 4E |DC #0 : STA SYPN|
000001D0: 54 2B 31 0D 20 20 4C 45 54 20 53 59 58 4C 4F 31 |T+1. LET SYXLO1|
000001E0: 20 41 4E 44 20 24 46 43 20 2B 20 53 59 50 4E 54 | AND $FC + SYPNT|
000001F0: 20 2D 3E 20 53 59 50 4E 54 0D 20 20 4C 44 41 20 | -> SYPNT. LDA |
00000200: 53 59 50 4E 54 2B 31 20 3A 20 41 44 43 20 23 30 |SYPNT+1 : ADC #0|
00000210: 20 3A 20 53 54 41 20 53 59 50 4E 54 2B 31 0D 20 | : STA SYPNT+1. |
00000220: 20 4C 45 54 20 53 59 58 4C 4F 31 20 41 4E 44 20 | LET SYXLO1 AND |
00000230: 33 20 3A 20 54 41 59 0D 20 20 4C 45 54 20 53 59 |3 : TAY. LET SY|
00000240: 47 52 4D 53 4B 31 2C 59 20 2D 3E 20 53 59 4D 53 |GRMSK1,Y -> SYMS|
00000250: 43 31 20 3A 20 54 59 41 0D 20 20 41 53 4C 20 41 |C1 : TYA. ASL A|
00000260: 20 3A 20 41 53 4C 20 41 20 3A 20 4F 52 41 20 53 | : ASL A : ORA S|
00000270: 59 43 4C 52 31 20 3A 20 54 41 59 0D 20 20 4C 45 |YCLR1 : TAY. LE|
00000280: 54 20 53 59 47 52 54 41 42 31 2C 59 20 2D 3E 20 |T SYGRTAB1,Y -> |
00000290: 53 59 4D 53 43 41 31 0D 20 20 4C 45 54 20 53 59 |SYMSCA1. LET SY|
000002A0: 59 4C 4F 31 20 41 4E 44 20 37 20 3A 20 54 41 59 |YLO1 AND 7 : TAY|
000002B0: 0D 20 20 53 45 49 0D 20 20 4C 44 41 20 31 20 3A |. SEI. LDA 1 :|
000002C0: 20 4C 45 54 20 2D 3E 20 53 59 4D 53 43 42 31 20 | LET -> SYMSCB1 |
000002D0: 41 4E 44 20 24 46 38 20 3A 20 53 54 41 20 31 0D |AND $F8 : STA 1.|
000002E0: 20 20 4C 44 41 20 53 59 4D 53 43 31 0D 20 20 41 | LDA SYMSC1. A|
000002F0: 4E 44 20 28 53 59 50 4E 54 29 2C 59 0D 20 20 4F |ND (SYPNT),Y. O|
00000300: 52 41 20 53 59 4D 53 43 41 31 0D 20 20 53 54 41 |RA SYMSCA1. STA|
00000310: 20 28 53 59 50 4E 54 29 2C 59 0D 20 20 4C 44 41 | (SYPNT),Y. LDA|
00000320: 20 53 59 4D 53 43 42 31 20 3A 20 53 54 41 20 31 | SYMSCB1 : STA 1|
00000330: 0D 20 20 43 4C 49 0D 20 20 52 45 54 55 52 4E 0D |. CLI. RETURN.|
00000340: 53 59 47 52 4D 53 4B 31 20 2E 42 59 54 45 20 24 |SYGRMSK1 .BYTE $|
00000350: 33 46 2C 24 43 46 2C 24 46 33 2C 24 46 43 0D 53 |3F,$CF,$F3,$FC.S|
00000360: 59 47 52 54 41 42 31 20 2E 42 59 54 45 20 30 2C |YGRTAB1 .BYTE 0,|
00000370: 24 34 30 2C 24 38 30 2C 24 43 30 0D 20 2E 42 59 |$40,$80,$C0. .BY|
00000380: 54 45 20 30 2C 24 31 30 2C 24 32 30 2C 24 33 30 |TE 0,$10,$20,$30|
00000390: 0D 20 2E 42 59 54 45 20 30 2C 34 2C 38 2C 24 43 |. .BYTE 0,4,8,$C|
000003A0: 0D 20 2E 42 59 54 45 20 30 2C 31 2C 32 2C 33 0D |. .BYTE 0,1,2,3.|
000003B0: 20 20 45 4E 44 44 45 46 20 50 4C 4F 54 31 0D 3B | ENDDEF PLOT1.;|
000003C0: 0D 20 44 45 46 20 47 52 31 20 53 59 58 4C 4F 31 |. DEF GR1 SYXLO1|
000003D0: 20 2C 20 53 59 43 4C 52 31 20 2C 20 53 59 59 4C | , SYCLR1 , SYYL|
000003E0: 4F 31 20 2C 20 53 59 4D 53 43 31 0D 20 20 4C 44 |O1 , SYMSC1. LD|
000003F0: 41 20 53 59 58 4C 4F 31 20 3A 20 53 54 41 20 35 |A SYXLO1 : STA 5|
00000400: 33 32 38 31 0D 20 20 4C 44 41 20 53 59 43 4C 52 |3281. LDA SYCLR|
00000410: 31 20 3A 20 41 53 4C 20 41 20 3A 20 41 53 4C 20 |1 : ASL A : ASL |
00000420: 41 0D 20 20 41 53 4C 20 41 20 3A 20 41 53 4C 20 |A. ASL A : ASL |
00000430: 41 20 3A 20 4F 52 41 20 53 59 59 4C 4F 31 20 3A |A : ORA SYYLO1 :|
00000440: 20 53 54 41 20 53 59 43 4C 52 31 0D 20 20 53 45 | STA SYCLR1. SE|
00000450: 49 0D 20 20 4C 44 41 20 31 20 3A 20 4C 45 54 20 |I. LDA 1 : LET |
00000460: 2D 3E 20 53 59 4D 53 43 42 31 20 41 4E 44 20 24 |-> SYMSCB1 AND $|
00000470: 46 38 20 3A 20 53 54 41 20 31 0D 20 20 4C 45 54 |F8 : STA 1. LET|
00000480: 20 53 59 50 4E 54 20 3D 20 30 20 3A 20 4C 45 54 | SYPNT = 0 : LET|
00000490: 20 53 59 50 4E 54 2B 31 20 3D 20 24 45 30 0D 47 | SYPNT+1 = $E0.G|
000004A0: 52 43 31 0D 20 20 20 4C 44 59 20 23 30 0D 47 52 |RC1. LDY #0.GR|
000004B0: 41 31 20 4C 45 54 20 30 20 2D 3E 20 28 53 59 50 |A1 LET 0 -> (SYP|
000004C0: 4E 54 29 2C 59 20 3A 20 49 4E 59 20 3A 20 42 4E |NT),Y : INY : BN|
000004D0: 45 20 47 52 41 31 0D 20 20 49 4E 43 20 53 59 50 |E GRA1. INC SYP|
000004E0: 4E 54 2B 31 20 3A 20 42 4E 45 20 47 52 43 31 0D |NT+1 : BNE GRC1.|
000004F0: 20 20 46 4F 52 20 53 59 50 4E 54 2B 31 20 3D 20 | FOR SYPNT+1 = |
00000500: 24 44 43 20 54 4F 20 24 44 46 0D 20 20 20 4C 44 |$DC TO $DF. LD|
00000510: 59 20 23 30 0D 47 52 42 31 20 4C 45 54 20 53 59 |Y #0.GRB1 LET SY|
00000520: 43 4C 52 31 20 2D 3E 20 28 53 59 50 4E 54 29 2C |CLR1 -> (SYPNT),|
00000530: 59 20 3A 20 49 4E 59 20 3A 20 42 4E 45 20 47 52 |Y : INY : BNE GR|
00000540: 42 31 0D 20 20 4E 45 58 54 20 53 59 50 4E 54 2B |B1. NEXT SYPNT+|
00000550: 31 0D 20 20 4C 44 41 20 53 59 4D 53 43 42 31 20 |1. LDA SYMSCB1 |
00000560: 3A 20 53 54 41 20 31 0D 20 20 43 4C 49 0D 20 20 |: STA 1. CLI. |
00000570: 4C 44 41 20 35 36 35 37 38 20 3A 20 4F 52 41 20 |LDA 56578 : ORA |
00000580: 23 33 20 3A 20 53 54 41 20 35 36 35 37 38 0D 20 |#3 : STA 56578. |
00000590: 20 4C 44 41 20 35 36 35 37 36 20 3A 20 41 4E 44 | LDA 56576 : AND|
000005A0: 20 23 24 46 43 20 3A 20 53 54 41 20 35 36 35 37 | #$FC : STA 5657|
000005B0: 36 0D 20 20 4C 44 41 20 35 33 32 37 32 20 3A 20 |6. LDA 53272 : |
000005C0: 41 4E 44 20 23 24 46 20 3A 20 4F 52 41 20 23 24 |AND #$F : ORA #$|
000005D0: 37 38 20 3A 20 53 54 41 20 35 33 32 37 32 0D 20 |78 : STA 53272. |
000005E0: 20 4C 44 41 20 35 33 32 36 35 20 3A 20 4F 52 41 | LDA 53265 : ORA|
000005F0: 20 23 33 32 20 3A 20 53 54 41 20 35 33 32 36 35 | #32 : STA 53265|
00000600: 0D 20 20 4C 44 41 20 35 33 32 37 30 20 3A 20 4F |. LDA 53270 : O|
00000610: 52 41 20 23 31 36 20 3A 20 53 54 41 20 35 33 32 |RA #16 : STA 532|
00000620: 37 30 0D 20 20 46 4F 52 20 53 59 50 4E 54 2B 31 |70. FOR SYPNT+1|
00000630: 20 3D 20 24 44 38 20 54 4F 20 24 44 42 0D 20 20 | = $D8 TO $DB. |
00000640: 20 4C 44 59 20 23 30 0D 47 52 44 31 20 4C 45 54 | LDY #0.GRD1 LET|
00000650: 20 53 59 4D 53 43 31 20 2D 3E 20 28 53 59 50 4E | SYMSC1 -> (SYPN|
00000660: 54 29 2C 59 20 3A 20 49 4E 59 20 3A 20 42 4E 45 |T),Y : INY : BNE|
00000670: 20 47 52 44 31 0D 20 20 4E 45 58 54 20 53 59 50 | GRD1. NEXT SYP|
00000680: 4E 54 2B 31 0D 20 20 52 45 54 55 52 4E 0D 20 45 |NT+1. RETURN. E|
00000690: 4E 44 44 45 46 20 47 52 31 0D 3B 0D 20 44 45 46 |NDDEF GR1.;. DEF|
000006A0: 20 43 4C 4F 53 45 31 0D 20 20 4C 44 41 20 35 36 | CLOSE1. LDA 56|
000006B0: 35 37 38 20 3A 20 4F 52 41 20 23 33 20 3A 20 53 |578 : ORA #3 : S|
000006C0: 54 41 20 35 36 35 37 38 0D 20 20 4C 44 41 20 35 |TA 56578. LDA 5|
000006D0: 36 35 37 36 20 3A 20 41 4E 44 20 23 24 46 43 20 |6576 : AND #$FC |
000006E0: 3A 20 4F 52 41 20 23 33 20 3A 20 53 54 41 20 35 |: ORA #3 : STA 5|
000006F0: 36 35 37 36 0D 20 20 4A 53 52 20 24 46 46 38 31 |6576. JSR $FF81|
00000700: 0D 20 20 52 45 54 55 52 4E 0D 20 45 4E 44 44 45 |. RETURN. ENDDE|
00000710: 46 20 43 4C 4F 53 45 31 0D 20 44 49 4D 20 53 59 |F CLOSE1. DIM SY|
00000720: 43 4C 52 31 0D 00 00 00 00 |CLR1..... |
REM GR1.;.SYSBASE1=$E000. DIM SYXLO1 ,
SYYLO1 , SYMSC1. DIM SYMSCA1 , SYMSCB1.;
. DEF PLOT1 SYCLR1 , SYXLO1 , SYYLO1. L
ET SYYLO1 AND $F8 -> SYMSC1 -> SYPNT 0 -
> SYPNT+1. LDY #4.SYPLOT1C:. LET SYPNT
+ SYMSC1 -> SYPNT. LDA SYPNT+1 : ADC #
0 : STA SYPNT+1. DEY : BNE SYPLOT1C. A
SL SYPNT : ROL SYPNT+1. ASL SYPNT : ROL
SYPNT+1. ASL SYPNT : ROL SYPNT+1. LET
SYPNT+1 + #>SYSBASE1 -> SYPNT+1. LET S
YXLO1 AND $FC + SYPNT -> SYPNT. LDA SYP
NT+1 : ADC #0 : STA SYPNT+1. LET SYXLO1
AND $FC + SYPNT -> SYPNT. LDA SYPNT+1
: ADC #0 : STA SYPNT+1. LET SYXLO1 AND
3 : TAY. LET SYGRMSK1,Y -> SYMSC1 : TYA
. ASL A : ASL A : ORA SYCLR1 : TAY. LE
T SYGRTAB1,Y -> SYMSCA1. LET SYYLO1 AND
7 : TAY. SEI. LDA 1 : LET -> SYMSCB1
AND $F8 : STA 1. LDA SYMSC1. AND (SYPN
T),Y. ORA SYMSCA1. STA (SYPNT),Y. LDA
SYMSCB1 : STA 1. CLI. RETURN.SYGRMSK1
.BYTE $3F,$CF,$F3,$FC.SYGRTAB1 .BYTE 0,
$40,$80,$C0. .BYTE 0,$10,$20,$30. .BYTE
0,4,8,$C. .BYTE 0,1,2,3. ENDDEF PLOT1.;
. DEF GR1 SYXLO1 , SYCLR1 , SYYLO1 , SYM
SC1. LDA SYXLO1 : STA 53281. LDA SYCLR
1 : ASL A : ASL A. ASL A : ASL A : ORA
SYYLO1 : STA SYCLR1. SEI. LDA 1 : LET
-> SYMSCB1 AND $F8 : STA 1. LET SYPNT =
0 : LET SYPNT+1 = $E0.GRC1. LDY #0.GR
A1 LET 0 -> (SYPNT),Y : INY : BNE GRA1.
INC SYPNT+1 : BNE GRC1. FOR SYPNT+1 =
$DC TO $DF. LDY #0.GRB1 LET SYCLR1 ->
(SYPNT),Y : INY : BNE GRB1. NEXT SYPNT+
1. LDA SYMSCB1 : STA 1. CLI. LDA 5657
8 : ORA #3 : STA 56578. LDA 56576 : AND
#$FC : STA 56576. LDA 53272 : AND #$F
: ORA #$78 : STA 53272. LDA 53265 : ORA
#32 : STA 53265. LDA 53270 : ORA #16 :
STA 53270. FOR SYPNT+1 = $D8 TO $DB.
LDY #0.GRD1 LET SYMSC1 -> (SYPNT),Y : I
NY : BNE GRD1. NEXT SYPNT+1. RETURN. E
NDDEF GR1.;. DEF CLOSE1. LDA 56578 : OR
A #3 : STA 56578. LDA 56576 : AND #$FC
: ORA #3 : STA 56576. JSR $FF81. RETUR
N. ENDDEF CLOSE1. DIM SYCLR1.....
×
C64 Image
> CLICK IMAGE PREVIEW FOR FULL MODAL