GSCats/gscats.s

110 lines
1.3 KiB
ArmAsm
Raw Normal View History

2017-07-28 22:11:25 +00:00
;
; gsshr
; GS sample application
;
; Created by Quinn Dunki on 7/9/17
;
.include "macros.s"
.include "equates.s"
2017-07-29 21:47:17 +00:00
.org $800
2017-07-28 22:11:25 +00:00
main:
NATIVE
2017-07-29 21:47:17 +00:00
mainCopyStart:
ldx #0
lda #mainBank2
sta mainCopyDest+1
mainCopyLoop:
lda mainBank2,x
mainCopyDest:
sta $020800,x
inx
cpx #endMainBank2-mainBank2
bne mainCopyLoop
lda #returnToProDOS
sta proDOSLongJump
lda #mainBank2
sta mainLongJump
jml (mainLongJump)
returnToProDOS:
SYNCDBR
EMULATION
rts
mainLongJump:
.byte 00,08,02
proDOSLongJump:
.byte 00,00,00
mainBank2:
SYNCDBR
BITS8
2017-07-28 22:11:25 +00:00
lda #$f0
sta TEXTCOLOR
2017-07-29 21:47:17 +00:00
BITS16
2017-07-28 22:11:25 +00:00
jsr initSCBs
SHRVIDEO
lda #basePalette
sta PARAML0
lda #0
jsr setPalette
2017-07-29 21:47:17 +00:00
ldx #$1111
2017-07-28 22:11:25 +00:00
jsr colorFill
jsr kbdWait
CLASSICVIDEO
2017-07-29 21:47:17 +00:00
jml (proDOSLongJump)
2017-07-28 22:11:25 +00:00
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; kbdWait
; Waits for a keystroke
;
kbdWait:
EMULATION
kbdWaitLoop:
lda KBD
bpl kbdWaitLoop
sta KBDSTROBE
NATIVE
rts
basePalette:
.word $0F00,$00F0,$000F,$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000
.include "graphics.s"
2017-07-29 21:47:17 +00:00
endMainBank2:
2017-07-28 22:11:25 +00:00
; Suppress some linker warnings - Must be the last thing in the file
; This is because Quinn doesn't really know how to use ca65 properly
.SEGMENT "ZPSAVE"
.SEGMENT "EXEHDR"
.SEGMENT "STARTUP"
.SEGMENT "INIT"
.SEGMENT "LOWCODE"