HiSprite/spritegen0b.s
Quinn Dunki 69e669054b Optimizations
- Added black rectangle compiling
- Got batched rendering working
2017-06-19 21:53:57 -07:00

1211 lines
12 KiB
ArmAsm

; This file was generated by HiSprite.py, a sprite compiler by Quinn Dunki.
; If you feel the need to modify this file, you are probably doing it wrong.
BLACK: ;6 bytes per row
SAVE_AXY
ldy PARAM0
ldx MOD7_2,y
jmp (BLACK_JMP,x)
BLACK_JMP:
.addr BLACK_SHIFT0
.addr BLACK_SHIFT1
.addr BLACK_SHIFT2
.addr BLACK_SHIFT3
.addr BLACK_SHIFT4
.addr BLACK_SHIFT5
.addr BLACK_SHIFT6
BLACK_SHIFT0:
ldx PARAM1
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
lda #0
sta (SCRATCH0),y
iny
iny
lda #0
sta (SCRATCH0),y
iny
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
lda #0
sta (SCRATCH0),y
iny
iny
lda #0
sta (SCRATCH0),y
iny
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
iny
RESTORE_AXY
rts ;Cycle count: 497, Optimized 26 rows.
BLACK_SHIFT1:
ldx PARAM1
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
lda #0
sta (SCRATCH0),y
iny
iny
lda #0
sta (SCRATCH0),y
iny
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
lda #0
sta (SCRATCH0),y
iny
iny
lda #0
sta (SCRATCH0),y
iny
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
iny
RESTORE_AXY
rts ;Cycle count: 497, Optimized 26 rows.
BLACK_SHIFT2:
ldx PARAM1
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
lda #0
sta (SCRATCH0),y
iny
iny
lda #0
sta (SCRATCH0),y
iny
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
lda #0
sta (SCRATCH0),y
iny
iny
lda #0
sta (SCRATCH0),y
iny
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
iny
RESTORE_AXY
rts ;Cycle count: 497, Optimized 26 rows.
BLACK_SHIFT3:
ldx PARAM1
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
lda #0
sta (SCRATCH0),y
iny
iny
lda #0
sta (SCRATCH0),y
iny
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
lda #0
sta (SCRATCH0),y
iny
iny
lda #0
sta (SCRATCH0),y
iny
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
iny
RESTORE_AXY
rts ;Cycle count: 497, Optimized 26 rows.
BLACK_SHIFT4:
ldx PARAM1
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
iny
lda #0
sta (SCRATCH0),y
iny
iny
lda #0
sta (SCRATCH0),y
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
iny
lda #0
sta (SCRATCH0),y
iny
iny
lda #0
sta (SCRATCH0),y
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
RESTORE_AXY
rts ;Cycle count: 497, Optimized 26 rows.
BLACK_SHIFT5:
ldx PARAM1
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
iny
lda #0
sta (SCRATCH0),y
iny
iny
lda #0
sta (SCRATCH0),y
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
iny
lda #0
sta (SCRATCH0),y
iny
iny
lda #0
sta (SCRATCH0),y
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
RESTORE_AXY
rts ;Cycle count: 497, Optimized 26 rows.
BLACK_SHIFT6:
ldx PARAM1
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
iny
lda #0
sta (SCRATCH0),y
iny
iny
lda #0
sta (SCRATCH0),y
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
iny
lda #0
sta (SCRATCH0),y
iny
iny
lda #0
sta (SCRATCH0),y
iny
iny
inx
lda HGRROWS_H1,x
sta SCRATCH1
lda HGRROWS_L,x
sta SCRATCH0
ldy PARAM0
lda DIV7_2,y
tay
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
lda #0
sta (SCRATCH0),y
iny
iny
RESTORE_AXY
rts ;Cycle count: 497, Optimized 26 rows.