Assembler-Beispiel 91 - STA ($ll), Y.asm

Aus C64-Wiki
Zur Navigation springenZur Suche springen
; Dieses Programm füllt den gesamten Bildschirm mit Leerzeichen.
; Programmstart mit SYS 49152
; Hinweis: Der Bildschirmspeicher ist nur 1000 Bytes groß. Im Beispiel
; wird der Einfachheit halber ein Bereich von 1024 Bytes überschrieben.
; Dies hat zur Folge, dass auch die Sprite-Pointer verändert werden.
 
*=$c000         ; Startadresse des Programms
 
SCREENMEM  = $fb
BLOECKE    = $04
ZEICHEN    = " "

start      lda #$00             ; $fc/$fb = $0400 = Bildschirmspeicher
           sta SCREENMEM
           lda #$04
           sta SCREENMEM+1

           ldx #BLOECKE         ; 4 Blöcke (4*256 Byte)

           ldy #$00
           lda #ZEICHEN         ; Füllzeichen = Leerzeichen
schleife   sta (SCREENMEM),Y    ; in den Bildschirm schreiben
           iny                  ; y um 1 erhöhen
           bne schleife         ; wiederhole bis y=0 (256 Durchläufe) 

           inc SCREENMEM+1      ; nächster Block des Bildschirmspeichers
           dex                  ; Blockschleifenzähler um 1 vermindern
           bne schleife         ; wiederhole bis Blockschleifenzähler=0

           rts                  ; Rücksprung zu BASIC