HA – Ich kann es noch…
Über 20 Jahre ist es her, dass ich es zum letzten Mal getan habe, aber ich kann es noch. Einer kleine Fingerübung in 6502 Assembler. Memorymap und KickAss sei dank…
.pc =$0801 // 2011 SYS 2062 basicstart: .byte 12, 8, 219, 7, 158, 32 .byte 50, 48, 54, 50, 0, 0, 0 lda #$00 sta $d020 // Border black sta $d021 // Background black // Address of screen($0400) in zeropage $03/$04 lda #$00 sta $03 lda #$04 sta $04 // Address of gamefield in Zeropage $05/$06 lda #< Gamefield sta $05 lda #> Gamefield sta $06 ldx #$00 rowloop: ldy #$00 colloop: lda ($05),y sta ($03),y iny cpy #$0b bne colloop // next row: add 32 to source and 40 to target clc lda $03 adc #$28 sta $03 lda $04 adc #$00 sta $04 clc lda $05 adc #$20 sta $05 lda $06 adc #$00 sta $06 inx cpx #$0b bne rowloop rts Gamefield: .text "+---------+ +---+" .text "! ! +-----+ ! !" .text "! ! ! +----+ !" .text "! ! ! !" .text "! ! ! +----+ !" .text "! ! +-----+ ! !" .text "! +---+ ++ ++" .text "! ! ! ! " .text "! +-+ +-------------+ ! " .text "! ! ! ! " .text "+---------+ +-----------------+ " .text "01234567890123456789012345678901"