38 lines
577 B
ArmAsm
38 lines
577 B
ArmAsm
* = $0801 ; basic bootstrap
|
|
!byte $0c, $08, $0a, $00, $9e, $20
|
|
!byte $34, $30, $39, $36, $00, $00
|
|
!byte $00
|
|
|
|
* = $1000 ; actual progrem starts here
|
|
|
|
ldx #$08 ; Screen colours
|
|
stx $d020
|
|
ldx #$00
|
|
stx $d021
|
|
|
|
jsr $e544 ; clear screen
|
|
jsr print_string
|
|
|
|
loop:
|
|
lda $dc01 ; Scans the keyboard buffer
|
|
cmp #$ef ; If user presses Space ($ef) then quit
|
|
bne loop
|
|
|
|
rts
|
|
|
|
print_string:
|
|
ldx #$00
|
|
print_loop:
|
|
lda message,x
|
|
|
|
cmp #$0 ; return on null terminator
|
|
bne print_continue
|
|
rts
|
|
|
|
print_continue:
|
|
sta $0428,x
|
|
inx
|
|
jmp print_loop
|
|
|
|
message !scr "welcome to scat os@"
|