tower beam almost done

This commit is contained in:
AArt1256 2025-11-17 13:20:59 +03:00
parent 5b6ee97644
commit a3fa44cfb5
6 changed files with 184 additions and 99 deletions

View file

@ -168,6 +168,7 @@ $(DISKIMAGE): $(ASSEMBLE) $(CC1541)
-f "scrmap" -w tilemap.bin.lz \
-f "intrbmp" -w title_320-prepared.zx0.prg \
-f "tower" -w tower.zx0.prg \
-f "towerbm" -w tower_beam.zx0.prg \
$@

View file

@ -7,4 +7,7 @@ printf "\x00\x80" > title_320-prepared.zx0.prg
cat title_320-prepared.zx0 >> title_320-prepared.zx0.prg
zx02/zx02 tower.bin tower.zx0
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

View file

@ -180,7 +180,146 @@ code_start:
;sta frame_delay
;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
jsr sfx_init
@ -245,103 +384,7 @@ code_start:
lda #120
sta frame_delay
jsr wait_loop
*/
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 *
rts
wait_frame:
@loop:
@ -365,6 +408,13 @@ story_writ:
.byte "tomoo yamane"
.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:
lda #$80
@ -846,6 +896,7 @@ fontname: .byte "font",0
sidname: .byte "sid", 0
introname: .byte "intrbmp", 0
towername: .byte "tower", 0
towerbeamname: .byte "towerbm", 0
darmtower_txt:
.res (40-26)/2, ' '
@ -904,6 +955,36 @@ write_txt3:
bne :-
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:
lda #$34
sta $01

Binary file not shown.

Binary file not shown.

Binary file not shown.