mirror of
https://github.com/deater/dos33fsprogs.git
synced 2025-02-05 21:34:30 +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 \
|
||||
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_trapezoid.s \
|
||||
keyboard.s gr_run_sequence.s physicist.s \
|
||||
collision.s door.s laser.s gun.s blast.s shield.s \
|
||||
ootw_graphics/sprites/physicist.inc \
|
||||
|
@ -8,13 +8,11 @@
|
||||
|
||||
draw_trapezoid:
|
||||
|
||||
|
||||
draw_trapezoid_loop:
|
||||
|
||||
clc
|
||||
trapezoid_startx_smc:
|
||||
lda #5
|
||||
adc gr_offsets,Y
|
||||
; clc
|
||||
; lda trapezoid_x_start
|
||||
lda gr_offsets,Y
|
||||
sta trapezoid_draw_loop_smc+1
|
||||
|
||||
lda gr_offsets+1,Y
|
||||
@ -24,15 +22,35 @@ trapezoid_startx_smc:
|
||||
|
||||
trapezoid_color_smc:
|
||||
lda #$11
|
||||
trapezoid_width_smc:
|
||||
ldx #0
|
||||
ldx trapezoid_x_start
|
||||
|
||||
trapezoid_draw_loop:
|
||||
trapezoid_draw_loop_smc:
|
||||
sta $c00,X
|
||||
dex
|
||||
inx
|
||||
cpx trapezoid_x_end
|
||||
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
|
||||
trapezoid_endy_smc:
|
||||
@ -40,3 +58,14 @@ trapezoid_endy_smc:
|
||||
bne draw_trapezoid_loop
|
||||
|
||||
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
|
||||
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
|
||||
|
||||
; 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
|
||||
c15_draw_friend_cliff:
|
||||
|
Loading…
x
Reference in New Issue
Block a user