diff --git a/src/main.asm b/src/main.asm index 9f2fff9..d092379 100644 --- a/src/main.asm +++ b/src/main.asm @@ -9,7 +9,7 @@ count = $128 org $a000 WORD coldstart - WORD warmstart + WORD coldstart BYTE #$41, #$30, #$c3, #$c2, #$cd coldstart SUBROUTINE @@ -52,15 +52,17 @@ coldstart SUBROUTINE lda #$15 sta $2e - ; setup fake chrin - ; sei + jsr clear_color_ram + +pm: + lda #message + jsr $cb1e + + ; jmp . + ; lda #0 - ; sta fake_current_byte - ; lda #fake_chrin - ; sta $325 - ; cli + ; jsr $c871 jmp $c483 ; BASIC @@ -84,55 +86,29 @@ fake_chrin SUBROUTINE clc rts - ; jsr $e3a4 ; initialize BASIC RAM locations - ; ldx #$00 ; BASIC execute pointer - ; ldy #$10 - ; stx $7a - ; sty $7b - ; save to 7a !!!!!! - - ; BASIC "RUN" - ; lda #$8a - ; sta $200 - ; lda #$0 - ; sta $201 - ; lda #$8a - ; jmp $c7ed - - -warmstart SUBROUTINE +clear_color_ram SUBROUTINE lda #$02 ldx #$00 -clear_color_ram: - sta $9400,x - sta $9500,x +.loop: sta $9600,x sta $9700,x dex - bne clear_color_ram + bne .loop + rts +print_message SUBROUTINE ldx #$00 print: lda message,x - beq infine_loop + beq .end sec sbc #$40 - sta 7724,x - sta 7746,x - sta 7768,x - sta 7790,x + sta 7834,x inx jmp print - -infine_loop: - ldx #$00 -loop: - stx 7680 - dex - bne loop - jmp infine_loop - +.end: + rts copycode SUBROUTINE sei @@ -190,7 +166,7 @@ copyloop: ; rts message: - BYTE "CIAO DEVELER BY GIOMBA",#$0 + BYTE #$0d,#$0d,"TYPE 'RUN'",#$0d,"THEN WAIT 20 SEC",#$0d,#$0d,#0 basicdemo: .incbin "res/stillenacht.raw"