Ready64 Forum

Commodore 64 => Programmazione, Grafica e Musica => Topic aperto da: iAN CooG - 29 Aprile 2007, 19:20:05

Titolo: Dotnet - 64bytes Intro
Inserito da: iAN CooG - 29 Aprile 2007, 19:20:05
La mia seconda entry per la limiTED (http://plus4.emucamp.com/features/limiTED) compo consiste nel ridefinire il carattere spazio con 3 punti che viaggiano a velocita' diverse, simulando un campo stellare a 3 profondita'. La versione +4 non necessitava di timing, questa per c64 si' altrimenti sfarfallava troppo.
Codice: [Seleziona]
; 3 planes starfield in 64bytes
; C64 version
; iAN CooG/HF

zp1     = $57
charval = $18
bordcl  = $d020
scrncl  = $d021
rasthb  = $d011
rastlb  = $d012
charset = $d018
space_p = $2100
clrscr  = $e536
orgstop = $F6ED

    *=$0326

    word intro
    word orgstop
intro
   ;sei
   ;A=$0d here
    jsr clrscr
   ;X=$01, Y=$84 here
    stx zp1
    stx zp1+2
    stx zp1+4
    dex;0
    stx bordcl
    stx scrncl
    lda #charval
    sta charset

lp2
    ldx #0

lpp clc
    rol zp1,x
    bcc noin
    inc zp1,x
noin
    dey
    bpl lpp

    txa
    lsr
    tay;x=0/2/4 -> y=0/1/2

    lda zp1,x
    sta space_p,x

;wait1: 10 bytes, ok
    lda rasthb
    bpl *-3
    lda rasthb
    bmi *-3

;wait2: 7 bytes, fast
   ;lda rastlb
   ;cmp #$ff
   ;bne *-5

    inx
    inx

    cpx #$06
    bne lpp
    beq lp2