lda #$20 sta $2006 lda #$00 sta $2006 lda #$10 sta $2007
bgranm: LDA $2007 ;zakladajac, ze wczesniej juz zapisana jest wartosc 10 INC $2007 cmp #$18 BNE END LDA #$10 STA $2007END: RTS
lda $2002 ;Zresetuj stan PPUADDR lda #$20 sta $2006 lda #$20 sta $2006 ;Pierwszy widoczny tiles na NTSC lda $0F sta $2007 ;Zapisz id tilesa do podmiany lda $0E sec sbc #$1 sta $0E ;Zmniejsz ilosć klatek do odczekania o 1 bcc Resetuj_licznik jmp kontynuuj ;Nie trzeba uzupełniać ilości klatek, kontynuujResetuj_licznik: lda #$05 sta $0E ;Uzupełnij ilość klatek do odczekania zanim nastąpi podmiana tilesa. lda $0F ;Zwiększ numer wypuisywanego tilesa clc adc #$1 sta $0F cmp #$18 bne kontynuuj ;18 tiles to nie jest tiles należący do animacji. lda #$10 sta $0F ;Zresetuj ID tilesa do podmianykontynuuj: (Tutaj twój dalszy kod)
LoadNT1: LDX #$00LoadNT1Loop: LDA NameTable1,x STA $0400,x INX CPX #$00 BNE LoadNT1Loop RTS
CopyWtoV1: LDA #$20 ;load 256byte NT to 2000 STA $2006 LDA #$00 STA $2006 LDX #$00LoadNT1LoopX: LDA $0400,x STA $2007 INX CPX #$00 BNE LoadNT1LoopX RTS