mirror of
https://github.com/deater/dos33fsprogs.git
synced 2025-01-12 00:30:31 +00:00
32: add small file
This commit is contained in:
parent
213f68f526
commit
c3f620eedb
118
demos/32b/small.s
Normal file
118
demos/32b/small.s
Normal file
@ -0,0 +1,118 @@
|
||||
HGR_SHAPE = $1A
|
||||
HGR_SHAPEH = $1B
|
||||
HGR_HPAGE = $E6
|
||||
HGR_SCALE = $E7
|
||||
OFFSET = $FE
|
||||
HGR_ROTATE = $FF
|
||||
|
||||
|
||||
KEYPRESS = $C000
|
||||
KEYRESET = $C010
|
||||
|
||||
HGR = $F3E2
|
||||
HCLR = $F3F2
|
||||
HPOSN = $F411
|
||||
HPLOT0 = $F457
|
||||
HGLIN = $F53A
|
||||
XDRAW = $F65D
|
||||
XDRAW1 = $F661
|
||||
COLORTBL = $F6F6
|
||||
|
||||
WAIT = $FCA8 ;; delay 1/2(26+27A+5A^2) us
|
||||
|
||||
start:
|
||||
;==========================
|
||||
; Setup Graphics
|
||||
;==========================
|
||||
|
||||
; We can't use HGR as it clears the screen
|
||||
jsr HGR
|
||||
|
||||
;======================
|
||||
; Setup vars
|
||||
;======================
|
||||
|
||||
lda #1
|
||||
sta HGR_SCALE
|
||||
sta HGR_ROTATE
|
||||
|
||||
; HFNS puts X-coord in Y,X, Y-coord in A
|
||||
; HPOSN sets up GBASL/GBASH
|
||||
|
||||
loop:
|
||||
|
||||
ldy #0 ; high byte of x position
|
||||
ldx #140 ; low byte of x position
|
||||
lda #96 ; y position
|
||||
jsr HPOSN
|
||||
|
||||
ldx #<portal_vert
|
||||
ldy #>portal_vert
|
||||
jsr random_byte
|
||||
; lda HGR_ROTATE ; rotation
|
||||
jsr XDRAW
|
||||
|
||||
; jsr wait_until_keypress
|
||||
|
||||
jsr random_byte
|
||||
; lda #200
|
||||
jsr WAIT
|
||||
|
||||
jsr random_byte
|
||||
ora #$1
|
||||
and #$3
|
||||
sta HGR_SCALE
|
||||
|
||||
; lda HGR_SCALE
|
||||
; eor #$2
|
||||
; sta HGR_SCALE
|
||||
|
||||
; inc HGR_ROTATE
|
||||
|
||||
bit $C030
|
||||
|
||||
jmp loop
|
||||
|
||||
|
||||
; Shape 1
|
||||
;
|
||||
; "Portal"
|
||||
; #
|
||||
; # #
|
||||
; # #
|
||||
; # #
|
||||
; # #
|
||||
; # #
|
||||
; # * #
|
||||
; # #
|
||||
; # #
|
||||
; # #
|
||||
; # #
|
||||
; # #
|
||||
; #
|
||||
;
|
||||
; START
|
||||
; NLT NLT UP UP UP NRT UP UP UP NRT RT NDN
|
||||
; DN DN DN NRT DN DN DN DN DN NLT DN DN DN NLT
|
||||
; UP NLT UP UP UP NLT UP UP UP
|
||||
; STOP
|
||||
|
||||
portal_vert:
|
||||
.byte $1b,$24,$0c,$24,$0c,$15,$36,$0e,$36, $36,$1e,$36,$1e,$1c,$24,$1c,$24
|
||||
.byte $04,$00
|
||||
|
||||
random_byte:
|
||||
inc OFFSET
|
||||
lda OFFSET
|
||||
and #$1f
|
||||
tay
|
||||
lda start,Y
|
||||
rts
|
||||
|
||||
wait_until_keypress:
|
||||
lda KEYPRESS
|
||||
bpl wait_until_keypress
|
||||
|
||||
lda KEYRESET ; clear strobe
|
||||
|
||||
rts
|
Loading…
x
Reference in New Issue
Block a user