;SDLSTL      = $0230Ñ
;SDLSTH      = $0231Ñ
;GPRIOR      = $026FÑ
;VDSLST      = $0200Ñ
;NMIEN       = $D40EÑ
;CONSOL      = $D01FÑ
;SETVBV      = $E45CÑ
;PCOLR0      = $02C0Ñ
;LOMEM       = $0080Ñ
;WSYNC       = $D40AÑ
;PRIOR       = $D01BÑ
;COLPF0      = $D016Ñ
;COLPF2      = $D018Ñ
;COLBK       = $D01AÑ
;HSCROL      = $D404Ñ
;ATRACT      = $004DÑ
;SYSVBV      = $E45FÑ
;DLISTL      = $D402Ñ
;DLISTH      = $D403Ñ
;COLOR2      = $02C6Ñ
;CHBASE      = $D409Ñ
;Ñ
;; Ñ
;; DISPLAY LIST EQUATESÑ
;; Ñ
;ADLI        = $0080Ñ
;AVB         = $0040Ñ
;ALMS        = $0040Ñ
;AVSCR       = $0020Ñ
;AHSCR       = $0010Ñ
;AJMP        = $0001Ñ
;AEMPTY1     = $0000Ñ
;AEMPTY2     = $0010Ñ
;AEMPTY3     = $0020Ñ
;AEMPTY4     = $0030Ñ
;AEMPTY5     = $0040Ñ
;AEMPTY6     = $0050Ñ
;AEMPTY7     = $0060Ñ
;AEMPTY8     = $0070Ñ
;scrolltext&255Ñ
;scrolltext/256Ñ
            *= $800Ñ
initSineTable:Ñ
 ldy #$3fÑ
 ldx #$00Ñ
; Accumulate the delta (normal 16-bit addition)Ñ
gensinlpÑ
valuehi lda #$00;valuehiÑ
  clcÑ
deltahi adc #$00;deltahiÑ
  sta valuehi+1Ñ
valuelo lda #$00;valueloÑ
deltalo adc #$00;deltaloÑ
  sta valuelo+1Ñ
; Reflect the value around for a sine waveÑ
  sta sine+$c0,xÑ
  sta sine+$80,yÑ
  eor #$ffÑ
  sta sine+$40,xÑ
  sta sine+$00,yÑ
; Increase the delta, which creates the "acceleration" for a parabolaÑ
  lda deltahi+1Ñ
  clcÑ
  adc #$06   ; this value adds up to the proper amplitudeÑ
  sta deltahi+1Ñ
  bcc nodeltaÑ
   inc deltalo+1Ñ
nodeltaÑ
; LoopÑ
  inxÑ
  deyÑ
 bpl gensinlp;:--Ñ
Ñ
;--------------------------------------------------Ñ
; ldy #$10Ñ
; lda #$00;;40Ñ
;clrlp2Ñ
; sta 704,yÑ
; adc #$02Ñ
; deyÑ
; bne clrlp2Ñ
;--------------------------------------------------Ñ
 lda #$40Ñ
 sta 623Ñ
 ;lda #$40Ñ
 sta 756Ñ
 Ñ
 lda #$11Ñ
 ldx #$00Ñ
flp2Ñ
 ldy #$08Ñ
flp1Ñ
 sta $4000,xÑ
 inxÑ
 deyÑ
 bne flp1Ñ
 clcÑ
 adc #$11Ñ
 bcc flp2Ñ
;--------------------------------------------------Ñ
plasmalpÑ
 lda #$00Ñ
 sta $D0Ñ
scrhi lda #$80Ñ
 sta $D1Ñ
Ñ
 ldx #$18;58Ñ
ylpÑ
 ldy #40Ñ
xlpÑ
vvar1 lda sineÑ
 ;clcÑ
vvar2 adc sineÑ
 ;clcÑ
vvar3 adc sineÑ
 ;clcÑ
vvar4 adc sineÑ
Ñ
 sta $CBÑ
 and #$10Ñ
 beq zerobit4Ñ
 lda #$FFÑ
zerobit4Ñ
 eor $CBÑ
 and #$0EÑ
 bne nochangzeroÑ
 ora #$03Ñ
nochangzeroÑ
Ñ
 sta ($D0),y;6Ñ
;;; sta $1000,y;;;5cyc! vs sta ($D0),y;6Ñ
Ñ
; inc vvar1+1;6cycÑ
; i dunno why opcode doesnt worksÑ
 lda vvar1+1;4cycÑ
 clc;2cycÑ
 adc #$02;2cycÑ
 sta vvar1+1;4cycÑ
Ñ
; dec vvar2+1Ñ
 lda vvar2+1Ñ
 clcÑ
 adc #$FBÑ
 sta vvar2+1Ñ
Ñ
 deyÑ
 bpl xlpÑ
Ñ
vvar11 lda #$00Ñ
 sta vvar1+1Ñ
Ñ
vvar22 lda #$00Ñ
 sta vvar2+1Ñ
Ñ
 lda vvar3+1Ñ
 clcÑ
 adc #$03Ñ
 sta vvar3+1Ñ
Ñ
 lda vvar4+1Ñ
 clcÑ
 adc #$02Ñ
 sta vvar4+1Ñ
Ñ
 lda $D0Ñ
 clcÑ
 adc #40;;;;;;;;#$78-40-40Ñ
 bcc nonext1Ñ
 inc $D1Ñ
nonext1Ñ
 sta $D0Ñ
Ñ
 dexÑ
 bne ylpÑ
vvar33 lda #$00Ñ
 sta vvar3+1Ñ
vvar44 lda #$00Ñ
 sta vvar4+1Ñ
Ñ
 dec vvar33+1Ñ
 inc vvar44+1Ñ
 Ñ
 inc vvar11+1Ñ
 dec vvar22+1Ñ
Ñ
 lda $230Ñ
 sta $d0Ñ
 lda $231Ñ
 sta $d1Ñ
;--------------------------------------------------Ñ
 inc $53Ñ
 bne nocolorÑ
 ldy #$10Ñ
adval1 lda #$01Ñ
clrlp2Ñ
 sta 704,yÑ
adval2 adc #$02Ñ
 deyÑ
 bne clrlp2Ñ
 asl adval2+1Ñ
nocolorÑ
;--------------------------------------------------Ñ
Ñ
Ñ
waitvbÑ
 lda $D40BÑ
 bne waitvbÑ
; lda $230Ñ
; sta $d0Ñ
; lda $231Ñ
; sta $d1Ñ
 ldy #$04Ñ
 ;lda #$00Ñ
 sta ($d0),y;A=0Ñ
 lda scrhi+1Ñ
 inyÑ
 sta ($d0),yÑ
 eor #$10Ñ
 sta scrhi+1Ñ
 jmp plasmalpÑ
;------------------------------------------------Ñ
;value .word 0Ñ
;delta .word 0Ñ
;valuehi = $BC40;because values seems to be zeroÑ
;valuelo = $BC41;because values seems to be zeroÑ
;deltahi = $BC42Ñ
;deltalo = $BC43Ñ
Ñ
sine = $600Ñ
