mirror of
https://github.com/deater/dos33fsprogs.git
synced 2024-06-08 00:29:35 +00:00
riven_hgr: auto-generate pointers from png
This commit is contained in:
parent
fc8e3c657e
commit
103e8dcfcd
|
@ -52,6 +52,7 @@ dome.o: dome.s zp.inc hardware.inc \
|
|||
hgr_sprite.s hgr_tables.s \
|
||||
keyboard.s \
|
||||
hgr_14x14_sprite.s \
|
||||
graphics_sprites/pointer_sprites.inc \
|
||||
graphics_dome/dome_graphics.inc
|
||||
ca65 -o dome.o dome.s -l dome.lst
|
||||
|
||||
|
|
|
@ -1,862 +0,0 @@
|
|||
finger_point_sprite:
|
||||
|
||||
;===============
|
||||
; point sprite
|
||||
;===============
|
||||
|
||||
point_sprite_l: ; X 654 3 210
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $63 ; 0 110 0 011
|
||||
.byte $66 ; 0 110 0 110
|
||||
.byte $2c ; 0 010 1 100
|
||||
.byte $6c ; 0 110 1 100
|
||||
.byte $78 ; 0 111 1 000
|
||||
.byte $70 ; 0 111 0 000
|
||||
.byte $70 ; 0 111 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
|
||||
point_sprite_r: ; X 654 3 210
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $0A ; 0 000 1 010
|
||||
.byte $2A ; 0 010 1 010
|
||||
.byte $2D ; 0 010 1 101
|
||||
.byte $37 ; 0 011 0 111
|
||||
.byte $3F ; 0 011 1 111
|
||||
.byte $3F ; 0 011 1 111
|
||||
.byte $1F ; 0 001 1 111
|
||||
.byte $1F ; 0 001 1 111
|
||||
.byte $1F ; 0 001 1 111
|
||||
|
||||
point_mask_l: ; X 654 3 210
|
||||
.byte $9f ; 1 001 1 111
|
||||
.byte $8f ; 1 000 1 111
|
||||
.byte $8f ; 1 000 1 111
|
||||
.byte $8f ; 1 000 1 111
|
||||
.byte $88 ; 1 000 1 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $81 ; 1 000 0 001
|
||||
.byte $81 ; 1 000 0 001
|
||||
.byte $83 ; 1 000 0 011
|
||||
.byte $87 ; 1 000 0 111
|
||||
.byte $8f ; 1 000 1 111
|
||||
.byte $8f ; 1 000 1 111
|
||||
|
||||
point_mask_r: ; X 654 3 210
|
||||
.byte $ff ; 1 111 1 111
|
||||
.byte $fe ; 1 111 1 110
|
||||
.byte $fe ; 1 111 1 110
|
||||
.byte $fe ; 1 111 1 110
|
||||
.byte $e0 ; 1 110 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $c0 ; 1 100 0 000
|
||||
.byte $c0 ; 1 100 0 000
|
||||
|
||||
|
||||
finger_grab_sprite:
|
||||
;===============
|
||||
; grab sprite
|
||||
;===============
|
||||
|
||||
grab_sprite_l: ; X 654 3 210
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $4c ; 0 100 1 100
|
||||
.byte $4c ; 0 100 1 100
|
||||
.byte $58 ; 0 101 1 000
|
||||
.byte $58 ; 0 101 1 000
|
||||
.byte $70 ; 0 111 0 000
|
||||
.byte $73 ; 0 111 0 011
|
||||
.byte $77 ; 0 111 0 111
|
||||
.byte $7e ; 0 111 1 110
|
||||
.byte $7c ; 0 111 1 100
|
||||
.byte $7c ; 0 111 1 100
|
||||
.byte $78 ; 0 111 1 000
|
||||
.byte $70 ; 0 111 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
|
||||
grab_sprite_r: ; X 654 3 210
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $0d ; 0 000 1 101
|
||||
.byte $0d ; 0 000 1 101
|
||||
.byte $0d ; 0 000 1 101
|
||||
.byte $6d ; 0 110 1 101
|
||||
.byte $6f ; 0 110 1 111
|
||||
.byte $7f ; 0 111 1 111
|
||||
.byte $3f ; 0 011 1 111
|
||||
.byte $3f ; 0 011 1 111
|
||||
.byte $3f ; 0 011 1 111
|
||||
.byte $1f ; 0 001 1 111
|
||||
.byte $1f ; 0 001 1 111
|
||||
.byte $0f ; 0 000 1 111
|
||||
.byte $0f ; 0 000 1 111
|
||||
|
||||
grab_mask_l: ; X 654 3 210
|
||||
.byte $b3 ; 1 011 0 011
|
||||
.byte $81 ; 1 000 0 001
|
||||
.byte $81 ; 1 000 0 001
|
||||
.byte $83 ; 1 000 0 011
|
||||
.byte $83 ; 1 000 0 011
|
||||
.byte $84 ; 1 000 0 100
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $81 ; 1 000 0 001
|
||||
.byte $81 ; 1 000 0 001
|
||||
.byte $83 ; 1 000 0 011
|
||||
.byte $c7 ; 1 100 0 111
|
||||
.byte $c7 ; 1 100 1 111
|
||||
|
||||
grab_mask_r: ; X 654 3 210
|
||||
.byte $f2 ; 1 111 0 010
|
||||
.byte $e0 ; 1 110 0 000
|
||||
.byte $e0 ; 1 110 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 100 0 000
|
||||
.byte $c0 ; 1 100 0 000
|
||||
.byte $e0 ; 1 110 0 000
|
||||
.byte $e0 ; 1 110 0 000
|
||||
|
||||
|
||||
;======================
|
||||
; finger left
|
||||
;======================
|
||||
; TODO
|
||||
|
||||
finger_left_sprite:
|
||||
|
||||
finger_left_sprite_l: ; X 654 3 210
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $63 ; 0 110 0 011
|
||||
.byte $66 ; 0 110 0 110
|
||||
.byte $2c ; 0 010 1 100
|
||||
.byte $6c ; 0 110 1 100
|
||||
.byte $78 ; 0 111 1 000
|
||||
.byte $70 ; 0 111 0 000
|
||||
.byte $70 ; 0 111 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
|
||||
finger_left_sprite_r: ; X 654 3 210
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $0A ; 0 000 1 010
|
||||
.byte $2A ; 0 010 1 010
|
||||
.byte $2D ; 0 010 1 101
|
||||
.byte $37 ; 0 011 0 111
|
||||
.byte $3F ; 0 011 1 111
|
||||
.byte $3F ; 0 011 1 111
|
||||
.byte $1F ; 0 001 1 111
|
||||
.byte $1F ; 0 001 1 111
|
||||
.byte $1F ; 0 001 1 111
|
||||
|
||||
finger_left_mask_l: ; X 654 3 210
|
||||
.byte $ff ; 1 001 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 000
|
||||
.byte $ff ; 1 000 0 000
|
||||
.byte $ff ; 1 000 0 000
|
||||
.byte $ff ; 1 000 0 000
|
||||
.byte $ff ; 1 000 0 001
|
||||
.byte $ff ; 1 000 0 001
|
||||
.byte $ff ; 1 000 0 011
|
||||
.byte $ff ; 1 000 0 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
|
||||
finger_left_mask_r: ; X 654 3 210
|
||||
.byte $ff ; 1 111 1 111
|
||||
.byte $fe ; 1 111 1 110
|
||||
.byte $fe ; 1 111 1 110
|
||||
.byte $fe ; 1 111 1 110
|
||||
.byte $e0 ; 1 110 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $c0 ; 1 100 0 000
|
||||
.byte $c0 ; 1 100 0 000
|
||||
|
||||
|
||||
;====================
|
||||
; finger right
|
||||
;====================
|
||||
; TODO
|
||||
|
||||
finger_right_sprite:
|
||||
finger_right_sprite_l: ; X 654 3 210
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $63 ; 0 110 0 011
|
||||
.byte $66 ; 0 110 0 110
|
||||
.byte $2c ; 0 010 1 100
|
||||
.byte $6c ; 0 110 1 100
|
||||
.byte $78 ; 0 111 1 000
|
||||
.byte $70 ; 0 111 0 000
|
||||
.byte $70 ; 0 111 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
|
||||
finger_right_sprite_r: ; X 654 3 210
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $0A ; 0 000 1 010
|
||||
.byte $2A ; 0 010 1 010
|
||||
.byte $2D ; 0 010 1 101
|
||||
.byte $37 ; 0 011 0 111
|
||||
.byte $3F ; 0 011 1 111
|
||||
.byte $3F ; 0 011 1 111
|
||||
.byte $1F ; 0 001 1 111
|
||||
.byte $1F ; 0 001 1 111
|
||||
.byte $1F ; 0 001 1 111
|
||||
|
||||
finger_right_mask_l: ; X 654 3 210
|
||||
.byte $ff ; 1 001 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 000
|
||||
.byte $ff ; 1 000 0 000
|
||||
.byte $ff ; 1 000 0 000
|
||||
.byte $ff ; 1 000 0 000
|
||||
.byte $ff ; 1 000 0 001
|
||||
.byte $ff ; 1 000 0 001
|
||||
.byte $ff ; 1 000 0 011
|
||||
.byte $ff ; 1 000 0 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
|
||||
finger_right_mask_r: ; X 654 3 210
|
||||
.byte $ff ; 1 111 1 111
|
||||
.byte $fe ; 1 111 1 110
|
||||
.byte $fe ; 1 111 1 110
|
||||
.byte $fe ; 1 111 1 110
|
||||
.byte $e0 ; 1 110 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $c0 ; 1 100 0 000
|
||||
.byte $c0 ; 1 100 0 000
|
||||
|
||||
|
||||
;====================
|
||||
; Finger turn left
|
||||
;====================
|
||||
finger_turn_left_sprite:
|
||||
|
||||
finger_turn_left_sprite_l: ; X 654 3 210
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $63 ; 0 110 0 011
|
||||
.byte $66 ; 0 110 0 110
|
||||
.byte $2c ; 0 010 1 100
|
||||
.byte $6c ; 0 110 1 100
|
||||
.byte $78 ; 0 111 1 000
|
||||
.byte $70 ; 0 111 0 000
|
||||
.byte $70 ; 0 111 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
|
||||
finger_turn_left_sprite_r: ; X 654 3 210
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $0A ; 0 000 1 010
|
||||
.byte $2A ; 0 010 1 010
|
||||
.byte $2D ; 0 010 1 101
|
||||
.byte $37 ; 0 011 0 111
|
||||
.byte $3F ; 0 011 1 111
|
||||
.byte $3F ; 0 011 1 111
|
||||
.byte $1F ; 0 001 1 111
|
||||
.byte $1F ; 0 001 1 111
|
||||
.byte $1F ; 0 001 1 111
|
||||
|
||||
finger_turn_left_mask_l: ; X 654 3 210
|
||||
.byte $ff ; 1 001 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 000
|
||||
.byte $ff ; 1 000 0 000
|
||||
.byte $ff ; 1 000 0 000
|
||||
.byte $ff ; 1 000 0 000
|
||||
.byte $ff ; 1 000 0 001
|
||||
.byte $ff ; 1 000 0 001
|
||||
.byte $ff ; 1 000 0 011
|
||||
.byte $ff ; 1 000 0 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
|
||||
finger_turn_left_mask_r: ; X 654 3 210
|
||||
.byte $ff ; 1 111 1 111
|
||||
.byte $fe ; 1 111 1 110
|
||||
.byte $fe ; 1 111 1 110
|
||||
.byte $fe ; 1 111 1 110
|
||||
.byte $e0 ; 1 110 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $c0 ; 1 100 0 000
|
||||
.byte $c0 ; 1 100 0 000
|
||||
|
||||
;=====================
|
||||
; Finger turn right
|
||||
;=====================
|
||||
; TODO
|
||||
|
||||
finger_turn_right_sprite:
|
||||
|
||||
finger_turn_right_sprite_l: ; X 654 3 210
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $63 ; 0 110 0 011
|
||||
.byte $66 ; 0 110 0 110
|
||||
.byte $2c ; 0 010 1 100
|
||||
.byte $6c ; 0 110 1 100
|
||||
.byte $78 ; 0 111 1 000
|
||||
.byte $70 ; 0 111 0 000
|
||||
.byte $70 ; 0 111 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
|
||||
finger_turn_right_sprite_r: ; X 654 3 210
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $0A ; 0 000 1 010
|
||||
.byte $2A ; 0 010 1 010
|
||||
.byte $2D ; 0 010 1 101
|
||||
.byte $37 ; 0 011 0 111
|
||||
.byte $3F ; 0 011 1 111
|
||||
.byte $3F ; 0 011 1 111
|
||||
.byte $1F ; 0 001 1 111
|
||||
.byte $1F ; 0 001 1 111
|
||||
.byte $1F ; 0 001 1 111
|
||||
|
||||
finger_turn_right_mask_l: ; X 654 3 210
|
||||
.byte $ff ; 1 001 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 000
|
||||
.byte $ff ; 1 000 0 000
|
||||
.byte $ff ; 1 000 0 000
|
||||
.byte $ff ; 1 000 0 000
|
||||
.byte $ff ; 1 000 0 001
|
||||
.byte $ff ; 1 000 0 001
|
||||
.byte $ff ; 1 000 0 011
|
||||
.byte $ff ; 1 000 0 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
|
||||
finger_turn_right_mask_r: ; X 654 3 210
|
||||
.byte $ff ; 1 111 1 111
|
||||
.byte $fe ; 1 111 1 110
|
||||
.byte $fe ; 1 111 1 110
|
||||
.byte $fe ; 1 111 1 110
|
||||
.byte $e0 ; 1 110 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $c0 ; 1 100 0 000
|
||||
.byte $c0 ; 1 100 0 000
|
||||
|
||||
|
||||
;=====================
|
||||
; finger match
|
||||
;=====================
|
||||
; TODO
|
||||
|
||||
finger_match_sprite:
|
||||
.if 0
|
||||
finger_match_sprite_l: ; X 654 3 210
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $63 ; 0 110 0 011
|
||||
.byte $66 ; 0 110 0 110
|
||||
.byte $2c ; 0 010 1 100
|
||||
.byte $6c ; 0 110 1 100
|
||||
.byte $78 ; 0 111 1 000
|
||||
.byte $70 ; 0 111 0 000
|
||||
.byte $70 ; 0 111 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
|
||||
finger_match_sprite_r: ; X 654 3 210
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $0A ; 0 000 1 010
|
||||
.byte $2A ; 0 010 1 010
|
||||
.byte $2D ; 0 010 1 101
|
||||
.byte $37 ; 0 011 0 111
|
||||
.byte $3F ; 0 011 1 111
|
||||
.byte $3F ; 0 011 1 111
|
||||
.byte $1F ; 0 001 1 111
|
||||
.byte $1F ; 0 001 1 111
|
||||
.byte $1F ; 0 001 1 111
|
||||
|
||||
finger_match_mask_l: ; X 654 3 210
|
||||
.byte $ff ; 1 001 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 000
|
||||
.byte $ff ; 1 000 0 000
|
||||
.byte $ff ; 1 000 0 000
|
||||
.byte $ff ; 1 000 0 000
|
||||
.byte $ff ; 1 000 0 001
|
||||
.byte $ff ; 1 000 0 001
|
||||
.byte $ff ; 1 000 0 011
|
||||
.byte $ff ; 1 000 0 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
|
||||
finger_match_mask_r: ; X 654 3 210
|
||||
.byte $ff ; 1 111 1 111
|
||||
.byte $fe ; 1 111 1 110
|
||||
.byte $fe ; 1 111 1 110
|
||||
.byte $fe ; 1 111 1 110
|
||||
.byte $e0 ; 1 110 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $c0 ; 1 100 0 000
|
||||
.byte $c0 ; 1 100 0 000
|
||||
.endif
|
||||
|
||||
;======================
|
||||
; finger match lit
|
||||
;======================
|
||||
; TODO
|
||||
|
||||
finger_match_lit_sprite:
|
||||
.if 0
|
||||
finger_match_lit_sprite_l: ; X 654 3 210
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $63 ; 0 110 0 011
|
||||
.byte $66 ; 0 110 0 110
|
||||
.byte $2c ; 0 010 1 100
|
||||
.byte $6c ; 0 110 1 100
|
||||
.byte $78 ; 0 111 1 000
|
||||
.byte $70 ; 0 111 0 000
|
||||
.byte $70 ; 0 111 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
|
||||
finger_match_lit_sprite_r: ; X 654 3 210
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $0A ; 0 000 1 010
|
||||
.byte $2A ; 0 010 1 010
|
||||
.byte $2D ; 0 010 1 101
|
||||
.byte $37 ; 0 011 0 111
|
||||
.byte $3F ; 0 011 1 111
|
||||
.byte $3F ; 0 011 1 111
|
||||
.byte $1F ; 0 001 1 111
|
||||
.byte $1F ; 0 001 1 111
|
||||
.byte $1F ; 0 001 1 111
|
||||
|
||||
finger_match_lit_mask_l: ; X 654 3 210
|
||||
.byte $ff ; 1 001 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 000
|
||||
.byte $ff ; 1 000 0 000
|
||||
.byte $ff ; 1 000 0 000
|
||||
.byte $ff ; 1 000 0 000
|
||||
.byte $ff ; 1 000 0 001
|
||||
.byte $ff ; 1 000 0 001
|
||||
.byte $ff ; 1 000 0 011
|
||||
.byte $ff ; 1 000 0 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
|
||||
finger_match_lit_mask_r: ; X 654 3 210
|
||||
.byte $ff ; 1 111 1 111
|
||||
.byte $fe ; 1 111 1 110
|
||||
.byte $fe ; 1 111 1 110
|
||||
.byte $fe ; 1 111 1 110
|
||||
.byte $e0 ; 1 110 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $c0 ; 1 100 0 000
|
||||
.byte $c0 ; 1 100 0 000
|
||||
.endif
|
||||
|
||||
;=========================
|
||||
; finger key sprite
|
||||
;=========================
|
||||
; TODO
|
||||
|
||||
finger_key_sprite:
|
||||
.if 0
|
||||
finger_key_sprite_l: ; X 654 3 210
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $63 ; 0 110 0 011
|
||||
.byte $66 ; 0 110 0 110
|
||||
.byte $2c ; 0 010 1 100
|
||||
.byte $6c ; 0 110 1 100
|
||||
.byte $78 ; 0 111 1 000
|
||||
.byte $70 ; 0 111 0 000
|
||||
.byte $70 ; 0 111 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
|
||||
finger_key_sprite_r: ; X 654 3 210
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $0A ; 0 000 1 010
|
||||
.byte $2A ; 0 010 1 010
|
||||
.byte $2D ; 0 010 1 101
|
||||
.byte $37 ; 0 011 0 111
|
||||
.byte $3F ; 0 011 1 111
|
||||
.byte $3F ; 0 011 1 111
|
||||
.byte $1F ; 0 001 1 111
|
||||
.byte $1F ; 0 001 1 111
|
||||
.byte $1F ; 0 001 1 111
|
||||
|
||||
finger_key_mask_l: ; X 654 3 210
|
||||
.byte $ff ; 1 001 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 000
|
||||
.byte $ff ; 1 000 0 000
|
||||
.byte $ff ; 1 000 0 000
|
||||
.byte $ff ; 1 000 0 000
|
||||
.byte $ff ; 1 000 0 001
|
||||
.byte $ff ; 1 000 0 001
|
||||
.byte $ff ; 1 000 0 011
|
||||
.byte $ff ; 1 000 0 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
|
||||
finger_key_mask_r: ; X 654 3 210
|
||||
.byte $ff ; 1 111 1 111
|
||||
.byte $fe ; 1 111 1 110
|
||||
.byte $fe ; 1 111 1 110
|
||||
.byte $fe ; 1 111 1 110
|
||||
.byte $e0 ; 1 110 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $c0 ; 1 100 0 000
|
||||
.byte $c0 ; 1 100 0 000
|
||||
.endif
|
||||
|
||||
;===========================
|
||||
; finger red sprite
|
||||
;===========================
|
||||
; TODO
|
||||
|
||||
finger_red_page_sprite:
|
||||
|
||||
finger_red_sprite_l: ; X 654 3 210
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $63 ; 0 110 0 011
|
||||
.byte $66 ; 0 110 0 110
|
||||
.byte $2c ; 0 010 1 100
|
||||
.byte $6c ; 0 110 1 100
|
||||
.byte $78 ; 0 111 1 000
|
||||
.byte $70 ; 0 111 0 000
|
||||
.byte $70 ; 0 111 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
|
||||
finger_red_sprite_r: ; X 654 3 210
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $0A ; 0 000 1 010
|
||||
.byte $2A ; 0 010 1 010
|
||||
.byte $2D ; 0 010 1 101
|
||||
.byte $37 ; 0 011 0 111
|
||||
.byte $3F ; 0 011 1 111
|
||||
.byte $3F ; 0 011 1 111
|
||||
.byte $1F ; 0 001 1 111
|
||||
.byte $1F ; 0 001 1 111
|
||||
.byte $1F ; 0 001 1 111
|
||||
|
||||
finger_red_mask_l: ; X 654 3 210
|
||||
.byte $ff ; 1 001 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 000
|
||||
.byte $ff ; 1 000 0 000
|
||||
.byte $ff ; 1 000 0 000
|
||||
.byte $ff ; 1 000 0 000
|
||||
.byte $ff ; 1 000 0 001
|
||||
.byte $ff ; 1 000 0 001
|
||||
.byte $ff ; 1 000 0 011
|
||||
.byte $ff ; 1 000 0 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
|
||||
finger_red_mask_r: ; X 654 3 210
|
||||
.byte $ff ; 1 111 1 111
|
||||
.byte $fe ; 1 111 1 110
|
||||
.byte $fe ; 1 111 1 110
|
||||
.byte $fe ; 1 111 1 110
|
||||
.byte $e0 ; 1 110 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $c0 ; 1 100 0 000
|
||||
.byte $c0 ; 1 100 0 000
|
||||
|
||||
;=====================
|
||||
; finger blue sprite
|
||||
;=====================
|
||||
; TODO
|
||||
|
||||
finger_blue_page_sprite:
|
||||
|
||||
finger_blue_sprite_l: ; X 654 3 210
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $63 ; 0 110 0 011
|
||||
.byte $66 ; 0 110 0 110
|
||||
.byte $2c ; 0 010 1 100
|
||||
.byte $6c ; 0 110 1 100
|
||||
.byte $78 ; 0 111 1 000
|
||||
.byte $70 ; 0 111 0 000
|
||||
.byte $70 ; 0 111 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
|
||||
finger_blue_sprite_r: ; X 654 3 210
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $0A ; 0 000 1 010
|
||||
.byte $2A ; 0 010 1 010
|
||||
.byte $2D ; 0 010 1 101
|
||||
.byte $37 ; 0 011 0 111
|
||||
.byte $3F ; 0 011 1 111
|
||||
.byte $3F ; 0 011 1 111
|
||||
.byte $1F ; 0 001 1 111
|
||||
.byte $1F ; 0 001 1 111
|
||||
.byte $1F ; 0 001 1 111
|
||||
|
||||
finger_blue_mask_l: ; X 654 3 210
|
||||
.byte $ff ; 1 001 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 000
|
||||
.byte $ff ; 1 000 0 000
|
||||
.byte $ff ; 1 000 0 000
|
||||
.byte $ff ; 1 000 0 000
|
||||
.byte $ff ; 1 000 0 001
|
||||
.byte $ff ; 1 000 0 001
|
||||
.byte $ff ; 1 000 0 011
|
||||
.byte $ff ; 1 000 0 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
|
||||
finger_blue_mask_r: ; X 654 3 210
|
||||
.byte $ff ; 1 111 1 111
|
||||
.byte $fe ; 1 111 1 110
|
||||
.byte $fe ; 1 111 1 110
|
||||
.byte $fe ; 1 111 1 110
|
||||
.byte $e0 ; 1 110 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $c0 ; 1 100 0 000
|
||||
.byte $c0 ; 1 100 0 000
|
||||
|
||||
|
||||
;========================
|
||||
; finger white page
|
||||
;========================
|
||||
; TODO
|
||||
|
||||
finger_white_page_sprite:
|
||||
|
||||
finger_white_sprite_l: ; X 654 3 210
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $63 ; 0 110 0 011
|
||||
.byte $66 ; 0 110 0 110
|
||||
.byte $2c ; 0 010 1 100
|
||||
.byte $6c ; 0 110 1 100
|
||||
.byte $78 ; 0 111 1 000
|
||||
.byte $70 ; 0 111 0 000
|
||||
.byte $70 ; 0 111 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
.byte $60 ; 0 110 0 000
|
||||
|
||||
finger_white_sprite_r: ; X 654 3 210
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $00 ; 0 000 0 000
|
||||
.byte $0A ; 0 000 1 010
|
||||
.byte $2A ; 0 010 1 010
|
||||
.byte $2D ; 0 010 1 101
|
||||
.byte $37 ; 0 011 0 111
|
||||
.byte $3F ; 0 011 1 111
|
||||
.byte $3F ; 0 011 1 111
|
||||
.byte $1F ; 0 001 1 111
|
||||
.byte $1F ; 0 001 1 111
|
||||
.byte $1F ; 0 001 1 111
|
||||
|
||||
finger_white_mask_l: ; X 654 3 210
|
||||
.byte $ff ; 1 001 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 000
|
||||
.byte $ff ; 1 000 0 000
|
||||
.byte $ff ; 1 000 0 000
|
||||
.byte $ff ; 1 000 0 000
|
||||
.byte $ff ; 1 000 0 001
|
||||
.byte $ff ; 1 000 0 001
|
||||
.byte $ff ; 1 000 0 011
|
||||
.byte $ff ; 1 000 0 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
.byte $ff ; 1 000 1 111
|
||||
|
||||
finger_white_mask_r: ; X 654 3 210
|
||||
.byte $ff ; 1 111 1 111
|
||||
.byte $fe ; 1 111 1 110
|
||||
.byte $fe ; 1 111 1 110
|
||||
.byte $fe ; 1 111 1 110
|
||||
.byte $e0 ; 1 110 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $80 ; 1 000 0 000
|
||||
.byte $c0 ; 1 100 0 000
|
||||
.byte $c0 ; 1 100 0 000
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
@ -116,6 +116,8 @@ really_exit:
|
|||
|
||||
.include "graphics_dome/dome_graphics.inc"
|
||||
|
||||
.include "common_sprites.inc"
|
||||
;.include "common_sprites.inc"
|
||||
|
||||
.include "graphics_sprites/pointer_sprites.inc"
|
||||
|
||||
.include "leveldata_dome.inc"
|
||||
|
|
|
@ -80,9 +80,9 @@ really_draw_grab:
|
|||
and #DIRECTION_ONLY_POINT
|
||||
bne special_but_point
|
||||
|
||||
lda #<finger_grab_sprite
|
||||
lda #<grab_sprite
|
||||
sta INL
|
||||
lda #>finger_grab_sprite
|
||||
lda #>grab_sprite
|
||||
jmp finger_draw
|
||||
|
||||
special_but_point:
|
||||
|
@ -110,7 +110,9 @@ really_not_special:
|
|||
|
||||
; otherwise, finger_point
|
||||
|
||||
|
||||
finger_point:
|
||||
.if 0
|
||||
; holding item takes precednce
|
||||
lda HOLDING_ITEM
|
||||
cmp #HOLDING_MATCH
|
||||
|
@ -168,11 +170,12 @@ white_finger:
|
|||
sta INL
|
||||
lda #>finger_white_page_sprite
|
||||
jmp finger_draw
|
||||
.endif
|
||||
|
||||
real_finger_point:
|
||||
lda #<finger_point_sprite
|
||||
lda #<point_sprite
|
||||
sta INL
|
||||
lda #>finger_point_sprite
|
||||
lda #>point_sprite
|
||||
jmp finger_draw
|
||||
|
||||
check_cursor_left:
|
||||
|
@ -217,17 +220,17 @@ finger_left:
|
|||
lda #1
|
||||
sta IN_LEFT
|
||||
|
||||
lda #<finger_left_sprite
|
||||
lda #<left_sprite
|
||||
sta INL
|
||||
lda #>finger_left_sprite
|
||||
lda #>left_sprite
|
||||
jmp finger_draw
|
||||
|
||||
finger_right:
|
||||
lda #1
|
||||
sta IN_RIGHT
|
||||
lda #<finger_right_sprite
|
||||
lda #<right_sprite
|
||||
sta INL
|
||||
lda #>finger_right_sprite
|
||||
lda #>right_sprite
|
||||
jmp finger_draw
|
||||
|
||||
finger_uturn_left:
|
||||
|
@ -235,9 +238,9 @@ finger_uturn_left:
|
|||
lda #2
|
||||
sta IN_LEFT
|
||||
|
||||
lda #<finger_turn_left_sprite
|
||||
lda #<uturn_left_sprite
|
||||
sta INL
|
||||
lda #>finger_turn_left_sprite
|
||||
lda #>uturn_left_sprite
|
||||
jmp finger_draw
|
||||
|
||||
finger_uturn_right:
|
||||
|
@ -245,9 +248,9 @@ finger_uturn_right:
|
|||
lda #2
|
||||
sta IN_RIGHT
|
||||
|
||||
lda #<finger_turn_right_sprite
|
||||
lda #<uturn_right_sprite
|
||||
sta INL
|
||||
lda #>finger_turn_right_sprite
|
||||
lda #>uturn_right_sprite
|
||||
jmp finger_draw
|
||||
|
||||
finger_draw:
|
||||
|
|
42
games/riven_hgr/graphics_sprites/Makefile
Normal file
42
games/riven_hgr/graphics_sprites/Makefile
Normal file
|
@ -0,0 +1,42 @@
|
|||
include ../../../Makefile.inc
|
||||
|
||||
ZX02 = ~/research/6502_compression/zx02.git/build/zx02 -f
|
||||
PNG_TO_HGR = ../../../utils/hgr-utils/png2hgr
|
||||
LINKER_SCRIPTS = ../../../linker_scripts
|
||||
DOS33 = ../../../utils/dos33fs-utils/dos33
|
||||
EMPTY_DISK = ../../../empty_disk/empty.dsk
|
||||
TOKENIZE = ../../../utils/asoft_basic-utils/tokenize_asoft
|
||||
PNG2GR = ../../../utils/gr-utils/png2gr
|
||||
PNG2SPRITES = ../../../utils/gr-utils/png2sprites
|
||||
HGR_SPRITE = ../../../utils/hgr-utils/hgr_make_sprite
|
||||
|
||||
all: pointer_sprites.inc
|
||||
|
||||
####
|
||||
|
||||
pointer_sprites.inc: pointer_sprites.png
|
||||
$(HGR_SPRITE) -l point_sprite pointer_sprites.png 0 0 13 14 > pointer_sprites.inc
|
||||
$(HGR_SPRITE) -l point_mask pointer_sprites.png 0 15 13 29 >> pointer_sprites.inc
|
||||
$(HGR_SPRITE) -l grab_sprite pointer_sprites.png 28 0 41 14 >> pointer_sprites.inc
|
||||
$(HGR_SPRITE) -l grab_mask pointer_sprites.png 28 15 41 29 >> pointer_sprites.inc
|
||||
$(HGR_SPRITE) -l right_sprite pointer_sprites.png 0 30 13 44 >> pointer_sprites.inc
|
||||
$(HGR_SPRITE) -l right_mask pointer_sprites.png 0 45 13 59 >> pointer_sprites.inc
|
||||
$(HGR_SPRITE) -l left_sprite pointer_sprites.png 28 30 41 44 >> pointer_sprites.inc
|
||||
$(HGR_SPRITE) -l left_mask pointer_sprites.png 28 45 41 59 >> pointer_sprites.inc
|
||||
$(HGR_SPRITE) -l uturn_right_sprite pointer_sprites.png 0 60 13 74 >> pointer_sprites.inc
|
||||
$(HGR_SPRITE) -l uturn_right_mask pointer_sprites.png 0 75 13 89 >> pointer_sprites.inc
|
||||
$(HGR_SPRITE) -l uturn_left_sprite pointer_sprites.png 28 60 41 74 >> pointer_sprites.inc
|
||||
$(HGR_SPRITE) -l uturn_left_mask pointer_sprites.png 28 75 41 89 >> pointer_sprites.inc
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
####
|
||||
|
||||
clean:
|
||||
rm -f *~ *.o *.lst *.zx02 *.hgr pointer_sprites.inc
|
||||
|
BIN
games/riven_hgr/graphics_sprites/pointer_sprites.png
Normal file
BIN
games/riven_hgr/graphics_sprites/pointer_sprites.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 950 B |
|
@ -5,87 +5,71 @@
|
|||
; SPRITE in INL/INH
|
||||
; Location at CURSOR_X CURSOR_Y
|
||||
|
||||
; left sprite AT INL/INH
|
||||
; right sprite at INL/INH + 14
|
||||
; left mask at INL/INH + 28
|
||||
; right mask at INL/INH + 42
|
||||
; sprite at INL/INH
|
||||
; mask at INL/INH + 28
|
||||
|
||||
hgr_draw_sprite_14x14:
|
||||
|
||||
; set up pointers
|
||||
; set up pointers for sprite
|
||||
lda INL
|
||||
sta hds_smc1+1
|
||||
lda INH
|
||||
sta hds_smc1+2
|
||||
|
||||
clc
|
||||
lda INL
|
||||
adc #14
|
||||
sta hds_smc2+1
|
||||
lda INH
|
||||
adc #0
|
||||
sta hds_smc1+2
|
||||
sta hds_smc2+2
|
||||
|
||||
; setup pointers for mask
|
||||
|
||||
clc
|
||||
lda INL
|
||||
adc #28
|
||||
sta hds_smc3+1
|
||||
lda INH
|
||||
adc #0
|
||||
sta hds_smc3+2
|
||||
|
||||
clc
|
||||
lda INL
|
||||
adc #42
|
||||
sta hds_smc4+1
|
||||
lda INH
|
||||
adc #0
|
||||
sta hds_smc3+2
|
||||
sta hds_smc4+2
|
||||
|
||||
|
||||
ldx #0
|
||||
hgr_14x14_sprite_yloop:
|
||||
txa
|
||||
pha
|
||||
|
||||
lsr ; get Ypos from X
|
||||
|
||||
clc
|
||||
adc CURSOR_Y
|
||||
|
||||
tax
|
||||
lda hposn_high,X
|
||||
tay ; point GBASL/GBASH to Ypos row
|
||||
lda hposn_high,Y
|
||||
sta GBASH
|
||||
lda hposn_low,X
|
||||
lda hposn_low,Y
|
||||
sta GBASL
|
||||
|
||||
; ldx #0
|
||||
; ldy #0
|
||||
; pla
|
||||
; tax
|
||||
|
||||
; calc GBASL/GBASH
|
||||
; jsr HPOSN ; (Y,X),(A) (values stored in HGRX,XH,Y)
|
||||
ldy CURSOR_X ; point to Xpos
|
||||
|
||||
pla
|
||||
tax
|
||||
|
||||
ldy CURSOR_X
|
||||
|
||||
lda (GBASL),Y
|
||||
lda (GBASL),Y ; load background color
|
||||
hds_smc3:
|
||||
and point_mask_l,X
|
||||
and point_mask,X
|
||||
hds_smc1:
|
||||
ora point_sprite_l,X
|
||||
ora point_sprite,X
|
||||
sta (GBASL),Y
|
||||
|
||||
iny
|
||||
inx
|
||||
|
||||
lda (GBASL),Y
|
||||
hds_smc4:
|
||||
and point_mask_r,X
|
||||
and point_mask,X
|
||||
hds_smc2:
|
||||
ora point_sprite_r,X
|
||||
ora point_sprite,X
|
||||
sta (GBASL),Y
|
||||
|
||||
inx
|
||||
cpx #14
|
||||
cpx #28
|
||||
bne hgr_14x14_sprite_yloop
|
||||
|
||||
rts
|
||||
|
|
Loading…
Reference in New Issue
Block a user