tower beam almost done
This commit is contained in:
parent
5b6ee97644
commit
a3fa44cfb5
|
|
@ -168,6 +168,7 @@ $(DISKIMAGE): $(ASSEMBLE) $(CC1541)
|
||||||
-f "scrmap" -w tilemap.bin.lz \
|
-f "scrmap" -w tilemap.bin.lz \
|
||||||
-f "intrbmp" -w title_320-prepared.zx0.prg \
|
-f "intrbmp" -w title_320-prepared.zx0.prg \
|
||||||
-f "tower" -w tower.zx0.prg \
|
-f "tower" -w tower.zx0.prg \
|
||||||
|
-f "towerbm" -w tower_beam.zx0.prg \
|
||||||
$@
|
$@
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -8,3 +8,6 @@ cat title_320-prepared.zx0 >> title_320-prepared.zx0.prg
|
||||||
zx02/zx02 tower.bin tower.zx0
|
zx02/zx02 tower.bin tower.zx0
|
||||||
printf "\x00\x80" > tower.zx0.prg
|
printf "\x00\x80" > tower.zx0.prg
|
||||||
cat tower.zx0 >> tower.zx0.prg
|
cat tower.zx0 >> tower.zx0.prg
|
||||||
|
zx02/zx02 tower_beam.bin tower_beam.zx0
|
||||||
|
printf "\x00\x80" > tower_beam.zx0.prg
|
||||||
|
cat tower_beam.zx0 >> tower_beam.zx0.prg
|
||||||
|
|
@ -180,7 +180,146 @@ code_start:
|
||||||
;sta frame_delay
|
;sta frame_delay
|
||||||
;jsr wait_loop
|
;jsr wait_loop
|
||||||
|
|
||||||
/*
|
;jsr intro
|
||||||
|
|
||||||
|
lda #$0b
|
||||||
|
sta $d011
|
||||||
|
|
||||||
|
sei
|
||||||
|
ldx #<introname
|
||||||
|
ldy #>introname
|
||||||
|
jsr loadraw
|
||||||
|
|
||||||
|
lda #0
|
||||||
|
sta ZX0_src
|
||||||
|
lda #$80
|
||||||
|
sta ZX0_src+1
|
||||||
|
lda #0
|
||||||
|
sta ZX0_dst
|
||||||
|
lda #$10
|
||||||
|
jsr zx02
|
||||||
|
|
||||||
|
ldx #<sidname
|
||||||
|
ldy #>sidname
|
||||||
|
jsr loadraw
|
||||||
|
|
||||||
|
ldx #<towername
|
||||||
|
ldy #>towername
|
||||||
|
jsr loadraw
|
||||||
|
|
||||||
|
lda #<fake_kernal_irq
|
||||||
|
sta $fffe
|
||||||
|
lda #>fake_kernal_irq
|
||||||
|
sta $ffff
|
||||||
|
|
||||||
|
lda #1
|
||||||
|
sta $d01a
|
||||||
|
|
||||||
|
jsr run_nufli_bmp
|
||||||
|
sei
|
||||||
|
jsr init_2x
|
||||||
|
lda #$0b
|
||||||
|
sta $d011
|
||||||
|
|
||||||
|
jsr clr_txt
|
||||||
|
ldx #<story_writ
|
||||||
|
ldy #>story_writ
|
||||||
|
jsr write_txt3
|
||||||
|
ldx #$30
|
||||||
|
ldy #$01
|
||||||
|
jsr init_timer
|
||||||
|
lda #1
|
||||||
|
sta timer_mode
|
||||||
|
|
||||||
|
lda #0
|
||||||
|
sta ZX0_src
|
||||||
|
lda #$80
|
||||||
|
sta ZX0_src+1
|
||||||
|
lda #0
|
||||||
|
sta ZX0_dst
|
||||||
|
lda #$20
|
||||||
|
jsr zx02
|
||||||
|
|
||||||
|
:
|
||||||
|
lda timer_reached
|
||||||
|
beq :-
|
||||||
|
|
||||||
|
ldx #$b8
|
||||||
|
ldy #$01
|
||||||
|
jsr init_timer
|
||||||
|
lda #2
|
||||||
|
sta timer_mode
|
||||||
|
:
|
||||||
|
lda timer_reached
|
||||||
|
beq :-
|
||||||
|
|
||||||
|
jsr init_bmp
|
||||||
|
|
||||||
|
lda #0
|
||||||
|
sta vbl
|
||||||
|
|
||||||
|
lda #$11
|
||||||
|
sta frame_until
|
||||||
|
jsr wait_frame_until_2x
|
||||||
|
|
||||||
|
ldx #$6c
|
||||||
|
:
|
||||||
|
jsr wait_frame
|
||||||
|
jsr wait_frame
|
||||||
|
dex
|
||||||
|
bpl :-
|
||||||
|
|
||||||
|
lda #$0b
|
||||||
|
sta $d011
|
||||||
|
|
||||||
|
jsr clr_txt
|
||||||
|
ldx #<scenario_writ
|
||||||
|
ldy #>scenario_writ
|
||||||
|
jsr write_txt2
|
||||||
|
ldx #$80
|
||||||
|
ldy #$01
|
||||||
|
jsr init_timer
|
||||||
|
lda #1
|
||||||
|
sta timer_mode
|
||||||
|
|
||||||
|
ldx #<towerbeamname
|
||||||
|
ldy #>towerbeamname
|
||||||
|
jsr loadraw
|
||||||
|
lda #0
|
||||||
|
sta ZX0_src
|
||||||
|
lda #$80
|
||||||
|
sta ZX0_src+1
|
||||||
|
lda #0
|
||||||
|
sta ZX0_dst
|
||||||
|
lda #$20
|
||||||
|
jsr zx02
|
||||||
|
|
||||||
|
:
|
||||||
|
lda timer_reached
|
||||||
|
beq :-
|
||||||
|
|
||||||
|
ldx #$90
|
||||||
|
ldy #$01
|
||||||
|
jsr init_timer
|
||||||
|
lda #2
|
||||||
|
sta timer_mode
|
||||||
|
:
|
||||||
|
lda timer_reached
|
||||||
|
beq :-
|
||||||
|
|
||||||
|
jsr init_bmp
|
||||||
|
|
||||||
|
lda #0
|
||||||
|
sta vbl
|
||||||
|
|
||||||
|
lda #$1f
|
||||||
|
sta frame_until
|
||||||
|
jsr wait_frame_until_2x
|
||||||
|
|
||||||
|
jmp *
|
||||||
|
|
||||||
|
|
||||||
|
intro:
|
||||||
lda #0
|
lda #0
|
||||||
jsr sfx_init
|
jsr sfx_init
|
||||||
|
|
||||||
|
|
@ -245,103 +384,7 @@ code_start:
|
||||||
lda #120
|
lda #120
|
||||||
sta frame_delay
|
sta frame_delay
|
||||||
jsr wait_loop
|
jsr wait_loop
|
||||||
*/
|
rts
|
||||||
|
|
||||||
lda #$0b
|
|
||||||
sta $d011
|
|
||||||
|
|
||||||
sei
|
|
||||||
ldx #<introname
|
|
||||||
ldy #>introname
|
|
||||||
jsr loadraw
|
|
||||||
|
|
||||||
lda #0
|
|
||||||
sta ZX0_src
|
|
||||||
lda #$80
|
|
||||||
sta ZX0_src+1
|
|
||||||
lda #0
|
|
||||||
sta ZX0_dst
|
|
||||||
lda #$10
|
|
||||||
jsr zx02
|
|
||||||
|
|
||||||
ldx #<sidname
|
|
||||||
ldy #>sidname
|
|
||||||
jsr loadraw
|
|
||||||
|
|
||||||
ldx #<towername
|
|
||||||
ldy #>towername
|
|
||||||
jsr loadraw
|
|
||||||
|
|
||||||
lda #<fake_kernal_irq
|
|
||||||
sta $fffe
|
|
||||||
lda #>fake_kernal_irq
|
|
||||||
sta $ffff
|
|
||||||
|
|
||||||
lda #1
|
|
||||||
sta $d01a
|
|
||||||
|
|
||||||
jsr run_nufli_bmp
|
|
||||||
sei
|
|
||||||
jsr init_2x
|
|
||||||
lda #$0b
|
|
||||||
sta $d011
|
|
||||||
;ldx #3
|
|
||||||
;:
|
|
||||||
;jsr wait_frame
|
|
||||||
;dex
|
|
||||||
;bpl :-
|
|
||||||
jsr clr_txt
|
|
||||||
ldx #<story_writ
|
|
||||||
ldy #>story_writ
|
|
||||||
jsr write_txt3
|
|
||||||
ldx #$30
|
|
||||||
ldy #$01
|
|
||||||
jsr init_timer
|
|
||||||
lda #1
|
|
||||||
sta timer_mode
|
|
||||||
|
|
||||||
lda #0
|
|
||||||
sta ZX0_src
|
|
||||||
lda #$80
|
|
||||||
sta ZX0_src+1
|
|
||||||
lda #0
|
|
||||||
sta ZX0_dst
|
|
||||||
lda #$20
|
|
||||||
jsr zx02
|
|
||||||
|
|
||||||
:
|
|
||||||
lda timer_reached
|
|
||||||
beq :-
|
|
||||||
|
|
||||||
ldx #$b8
|
|
||||||
ldy #$01
|
|
||||||
jsr init_timer
|
|
||||||
lda #2
|
|
||||||
sta timer_mode
|
|
||||||
:
|
|
||||||
lda timer_reached
|
|
||||||
beq :-
|
|
||||||
|
|
||||||
jsr init_bmp
|
|
||||||
|
|
||||||
lda #0
|
|
||||||
sta vbl
|
|
||||||
|
|
||||||
lda #$11
|
|
||||||
sta frame_until
|
|
||||||
jsr wait_frame_until_2x
|
|
||||||
|
|
||||||
ldx #$6c
|
|
||||||
:
|
|
||||||
jsr wait_frame
|
|
||||||
jsr wait_frame
|
|
||||||
dex
|
|
||||||
bpl :-
|
|
||||||
|
|
||||||
lda #$0b
|
|
||||||
sta $d011
|
|
||||||
jmp *
|
|
||||||
|
|
||||||
|
|
||||||
wait_frame:
|
wait_frame:
|
||||||
@loop:
|
@loop:
|
||||||
|
|
@ -365,6 +408,13 @@ story_writ:
|
||||||
.byte "tomoo yamane"
|
.byte "tomoo yamane"
|
||||||
.res 40-(12+11+5), ' '
|
.res 40-(12+11+5), ' '
|
||||||
|
|
||||||
|
scenario_writ:
|
||||||
|
.res (40-24)/2, ' '
|
||||||
|
.byte " scenario written by "
|
||||||
|
.res (40-24)/2, ' '
|
||||||
|
.res (40-24)/2, ' '
|
||||||
|
.byte " tomoyoshi miyazaki"
|
||||||
|
.res (40-24)/2, ' '
|
||||||
|
|
||||||
clr_txt:
|
clr_txt:
|
||||||
lda #$80
|
lda #$80
|
||||||
|
|
@ -846,6 +896,7 @@ fontname: .byte "font",0
|
||||||
sidname: .byte "sid", 0
|
sidname: .byte "sid", 0
|
||||||
introname: .byte "intrbmp", 0
|
introname: .byte "intrbmp", 0
|
||||||
towername: .byte "tower", 0
|
towername: .byte "tower", 0
|
||||||
|
towerbeamname: .byte "towerbm", 0
|
||||||
|
|
||||||
darmtower_txt:
|
darmtower_txt:
|
||||||
.res (40-26)/2, ' '
|
.res (40-26)/2, ' '
|
||||||
|
|
@ -904,6 +955,36 @@ write_txt3:
|
||||||
bne :-
|
bne :-
|
||||||
rts
|
rts
|
||||||
|
|
||||||
|
write_txt2:
|
||||||
|
stx text_ptr
|
||||||
|
sty text_ptr+1
|
||||||
|
|
||||||
|
ldx #0
|
||||||
|
ldy #0
|
||||||
|
:
|
||||||
|
lda (text_ptr), y
|
||||||
|
sec
|
||||||
|
sbc #$20
|
||||||
|
ora #$80
|
||||||
|
sta $400+11*40, x
|
||||||
|
iny
|
||||||
|
inx
|
||||||
|
cpx #40
|
||||||
|
bne :-
|
||||||
|
|
||||||
|
ldx #0
|
||||||
|
:
|
||||||
|
lda (text_ptr), y
|
||||||
|
sec
|
||||||
|
sbc #$20
|
||||||
|
ora #$80
|
||||||
|
sta $400+13*40, x
|
||||||
|
iny
|
||||||
|
inx
|
||||||
|
cpx #40
|
||||||
|
bne :-
|
||||||
|
rts
|
||||||
|
|
||||||
upload_text:
|
upload_text:
|
||||||
lda #$34
|
lda #$34
|
||||||
sta $01
|
sta $01
|
||||||
|
|
|
||||||
BIN
loader/samples/minexample/tower_beam.bin
Normal file
BIN
loader/samples/minexample/tower_beam.bin
Normal file
Binary file not shown.
BIN
loader/samples/minexample/tower_beam.zx0
Normal file
BIN
loader/samples/minexample/tower_beam.zx0
Normal file
Binary file not shown.
BIN
loader/samples/minexample/tower_beam.zx0.prg
Normal file
BIN
loader/samples/minexample/tower_beam.zx0.prg
Normal file
Binary file not shown.
Loading…
Reference in a new issue