mirror of
https://gitlab.com/camelot/kickc.git
synced 2024-10-21 02:24:34 +00:00
46 lines
677 B
NASM
46 lines
677 B
NASM
.pc = $801 "Basic"
|
|
:BasicUpstart(bbegin)
|
|
.pc = $80d "Program"
|
|
.label BORDERCOL = $d020
|
|
.label RASTER = $d012
|
|
.const DARK_GREY = $b
|
|
.const BLACK = 0
|
|
.label KERNEL_IRQ = $314
|
|
.label irq_raster_next = 2
|
|
bbegin:
|
|
lda #0
|
|
sta.z irq_raster_next
|
|
jsr main
|
|
rts
|
|
main: {
|
|
lda #<irq
|
|
sta KERNEL_IRQ
|
|
lda #>irq
|
|
sta KERNEL_IRQ+1
|
|
rts
|
|
}
|
|
irq: {
|
|
sta rega+1
|
|
stx regx+1
|
|
lda #DARK_GREY
|
|
sta BORDERCOL
|
|
lax.z irq_raster_next
|
|
axs #-[$15]
|
|
stx.z irq_raster_next
|
|
// Setup next interrupt
|
|
txa
|
|
and #7
|
|
cmp #0
|
|
bne b1
|
|
dex
|
|
b1:
|
|
stx RASTER
|
|
lda #BLACK
|
|
sta BORDERCOL
|
|
rega:
|
|
lda #00
|
|
regx:
|
|
ldx #00
|
|
rti
|
|
}
|