mirror of
https://github.com/deater/dos33fsprogs.git
synced 2025-02-11 01:30:53 +00:00
ootw: c15: more trapezoids
This commit is contained in:
parent
d43a0a97b5
commit
18da26db37
@ -274,6 +274,7 @@ OOTW_C15: ootw_c15.o
|
|||||||
ootw_c15.o: ootw_c15.s \
|
ootw_c15.o: ootw_c15.s \
|
||||||
gr_copy.s gr_copy_offset.s gr_fast_clear.s gr_pageflip.s gr_unrle.s \
|
gr_copy.s gr_copy_offset.s gr_fast_clear.s gr_pageflip.s gr_unrle.s \
|
||||||
gr_putsprite.s gr_putsprite_flipped.s gr_putsprite_crop.s \
|
gr_putsprite.s gr_putsprite_flipped.s gr_putsprite_crop.s \
|
||||||
|
gr_trapezoid.s \
|
||||||
keyboard.s gr_run_sequence.s physicist.s \
|
keyboard.s gr_run_sequence.s physicist.s \
|
||||||
collision.s door.s laser.s gun.s blast.s shield.s \
|
collision.s door.s laser.s gun.s blast.s shield.s \
|
||||||
ootw_graphics/sprites/physicist.inc \
|
ootw_graphics/sprites/physicist.inc \
|
||||||
|
@ -8,13 +8,11 @@
|
|||||||
|
|
||||||
draw_trapezoid:
|
draw_trapezoid:
|
||||||
|
|
||||||
|
|
||||||
draw_trapezoid_loop:
|
draw_trapezoid_loop:
|
||||||
|
|
||||||
clc
|
; clc
|
||||||
trapezoid_startx_smc:
|
; lda trapezoid_x_start
|
||||||
lda #5
|
lda gr_offsets,Y
|
||||||
adc gr_offsets,Y
|
|
||||||
sta trapezoid_draw_loop_smc+1
|
sta trapezoid_draw_loop_smc+1
|
||||||
|
|
||||||
lda gr_offsets+1,Y
|
lda gr_offsets+1,Y
|
||||||
@ -24,15 +22,35 @@ trapezoid_startx_smc:
|
|||||||
|
|
||||||
trapezoid_color_smc:
|
trapezoid_color_smc:
|
||||||
lda #$11
|
lda #$11
|
||||||
trapezoid_width_smc:
|
ldx trapezoid_x_start
|
||||||
ldx #0
|
|
||||||
|
|
||||||
trapezoid_draw_loop:
|
trapezoid_draw_loop:
|
||||||
trapezoid_draw_loop_smc:
|
trapezoid_draw_loop_smc:
|
||||||
sta $c00,X
|
sta $c00,X
|
||||||
dex
|
inx
|
||||||
|
cpx trapezoid_x_end
|
||||||
bne trapezoid_draw_loop
|
bne trapezoid_draw_loop
|
||||||
|
|
||||||
|
; add in 8.8 fixed point (should we make this 6.2 instead?
|
||||||
|
clc
|
||||||
|
lda trapezoid_x_start+1
|
||||||
|
adc trapezoid_left_slope+1
|
||||||
|
sta trapezoid_x_start+1
|
||||||
|
|
||||||
|
lda trapezoid_x_start
|
||||||
|
adc trapezoid_left_slope
|
||||||
|
sta trapezoid_x_start
|
||||||
|
|
||||||
|
clc
|
||||||
|
lda trapezoid_x_end+1
|
||||||
|
adc trapezoid_right_slope+1
|
||||||
|
sta trapezoid_x_end+1
|
||||||
|
|
||||||
|
lda trapezoid_x_end
|
||||||
|
adc trapezoid_right_slope
|
||||||
|
sta trapezoid_x_end
|
||||||
|
|
||||||
|
|
||||||
dey
|
dey
|
||||||
dey
|
dey
|
||||||
trapezoid_endy_smc:
|
trapezoid_endy_smc:
|
||||||
@ -40,3 +58,14 @@ trapezoid_endy_smc:
|
|||||||
bne draw_trapezoid_loop
|
bne draw_trapezoid_loop
|
||||||
|
|
||||||
rts
|
rts
|
||||||
|
|
||||||
|
|
||||||
|
trapezoid_x_start:
|
||||||
|
.byte 0,0
|
||||||
|
trapezoid_left_slope:
|
||||||
|
.byte 0,0
|
||||||
|
trapezoid_x_end:
|
||||||
|
.byte 0,0
|
||||||
|
trapezoid_right_slope:
|
||||||
|
.byte 0,0
|
||||||
|
|
||||||
|
@ -559,9 +559,52 @@ c15_room1_foreground:
|
|||||||
cmp #1
|
cmp #1
|
||||||
bne c15_draw_friend_cliff
|
bne c15_draw_friend_cliff
|
||||||
|
|
||||||
|
lda #$11
|
||||||
|
sta trapezoid_color_smc+1
|
||||||
|
|
||||||
|
ldy #46
|
||||||
|
lda #36
|
||||||
|
sta trapezoid_endy_smc+1
|
||||||
|
|
||||||
|
lda #0
|
||||||
|
sta trapezoid_x_start+1
|
||||||
|
sta trapezoid_x_end+1
|
||||||
|
|
||||||
|
lda #2
|
||||||
|
sta trapezoid_x_start
|
||||||
|
lda #15
|
||||||
|
sta trapezoid_x_end
|
||||||
|
|
||||||
|
lda #2
|
||||||
|
sta trapezoid_left_slope
|
||||||
|
lda #128
|
||||||
|
sta trapezoid_left_slope+1
|
||||||
|
|
||||||
|
lda #0
|
||||||
|
sta trapezoid_right_slope
|
||||||
|
lda #128
|
||||||
|
sta trapezoid_right_slope+1
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
jsr draw_trapezoid
|
jsr draw_trapezoid
|
||||||
|
|
||||||
|
; shot2
|
||||||
|
; startx = 3
|
||||||
|
; endx = 14.5
|
||||||
|
; left_slope = 2.0 0 1 0 0 1
|
||||||
|
; right_slope = 0.33 0.66 1.00 1.33 1.66 1.99
|
||||||
|
; starty=46, endy=30
|
||||||
|
|
||||||
|
; 1/2 1/4 1/8
|
||||||
|
; 0.33 in binary = .0 1 1 .25+.125=.375
|
||||||
|
|
||||||
|
; shot3
|
||||||
|
; startx = 17, endx=19
|
||||||
|
; left_slope=2
|
||||||
|
; right_slope=2
|
||||||
|
; starty=32, endy=28
|
||||||
|
|
||||||
|
|
||||||
; Room 5 friend slowly working to left
|
; Room 5 friend slowly working to left
|
||||||
c15_draw_friend_cliff:
|
c15_draw_friend_cliff:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user