Helidot by Madness
;... ................................................................. ;... HeliDot by Stranger of Madness^AnaLoG............................ ;... It has started as a code optimization example.................... ;... Then it has been a 256 bytes intro for 7d9 demoparty............. ;... Only one undocumented op used (DCP) b'coz code was 258 bytes :).. ;... Thanx Skate/(Ex-Glance) for Vice to real C64 help................ ;... ...........................................20.12.2009............ ;... ................................................................. !to "helidot@7d9",cbm * = $0801 !byte $0b,$08,$00,$00,$9e,$32,$30,$35,$39,$00,$a0,$00 * = $080d tya sta $2000,y dey bne *-4 dey sty $206e lda #240 sta $206f jsr $e544 ;// Set Color And Memory Locations Of Sprites \\ ;// Also $88 Used For Lowbyte Of $d001 \\ ldy #$03 lda #$01 sta $88 sta $d026,y tya adc #$7f sta $07f7,y dey bne *-14 ;// My Old Setup Routine for Different Settings\\ ;// Which One Was Starting Point Of This Intro \\ ; ldy #$03 ; lda #$84 ; pha ; lda #$01 ; sta $d026,y ; pla ; sta $07f7,y ; sec ; sbc #$02 ; pha ; dey ; bne *-15 ; pla sty $d020 sty $d021 ;// Dot \\ sta $20c0 ;/// Transfer Heli Sprite To $2000 \\\ ldx #45 lda .spriteData-1,x sta $1fff,x dex bne *-7 ;// Sprite Setup \\ lda #%10011111 sta $d015 sta $d000 lda #20 sta ($88,x) sta $d003 lda #$8e sta $d002 sta $d01d ;2x ;// Up'n'Down \\ jsr spranim inc $d001 inc $d003 lda ($88,x) cmp #150 bne *-13 lda #30 jsr spranim !byte $cf,$01,$d0 ;dcp $d001 ;dec $d001 ;lda ($88,x) ;cmp #30 bne *-6 ldx #16 ldy #13 sty $d017 ;2y clc jsr $e50a jsr $f5c1 ;// $86 Used For Sprite Speed As A Loop Number \\ ;// Actually Heli Sprite Speed Is Controlable \\ lda #10 sta $86 lda #168 sta $d004 lda #112 sta $d005 jsr wwait inc $d005 lda $d005 cmp #164 bne *-11 inx inc $da8d,x jsr wwait dec $d005 lda $d005 cmp #112 bne *-15 jmp *-26 ;///Fix 1st And 2nd Frames Of Heli Sprite\\\ spranim: lda ($fe,x) eor #%11111000 sta ($fe,x) lda $2001 eor #%00110000 sta $2001 lda $2002 eor #%01111100 sta $2002 wwait: ldy $86 jsr $eeb3 dey bne *-4 rts .spriteData ;/// Heli Sprite Data Frame #1 \\\ !byte 255,207,252,0,48,0,0,0,0,0,48,0,0,48,0,0 !byte 252,0,0,204,0,3,3,0,3,135,0,3,207,0,0,252 !byte 0,3,207,0,4,48,128,4,0,128,14,1,192
[ back to the prod ]