tfv: move around some of the files
42
tfv/Makefile
@ -4,6 +4,8 @@ DOS33 = ../dos33fs-utils/dos33
|
|||||||
PNG2GR = ../gr-utils/png2gr
|
PNG2GR = ../gr-utils/png2gr
|
||||||
PNG2RLE = ../gr-utils/png2rle
|
PNG2RLE = ../gr-utils/png2rle
|
||||||
|
|
||||||
|
ARTDIR = ./art
|
||||||
|
|
||||||
all: tfv.dsk
|
all: tfv.dsk
|
||||||
|
|
||||||
$(PNG2RLE):
|
$(PNG2RLE):
|
||||||
@ -12,32 +14,32 @@ $(PNG2RLE):
|
|||||||
$(DOS33):
|
$(DOS33):
|
||||||
cd ../dos33fs-utils && make
|
cd ../dos33fs-utils && make
|
||||||
|
|
||||||
tfv.dsk: $(DOS33) TFV HIGHWIND.ED FIGHTING.ED
|
tfv.dsk: $(DOS33) TFV
|
||||||
$(DOS33) -y tfv.dsk BSAVE -a 0x1000 TFV
|
$(DOS33) -y tfv.dsk BSAVE -a 0x1000 TFV
|
||||||
# $(DOS33) -y tfv.dsk BSAVE -a 0x2000 HIGHWIND.ED
|
# $(DOS33) -y tfv.dsk BSAVE -a 0x2000 HIGHWIND.ED
|
||||||
# $(DOS33) -y tfv.dsk BSAVE -a 0x2000 FIGHTING.ED
|
# $(DOS33) -y tfv.dsk BSAVE -a 0x2000 FIGHTING.ED
|
||||||
|
|
||||||
|
|
||||||
tfv_backgrounds.inc: $(PNG2RLE) \
|
tfv_backgrounds.inc: $(PNG2RLE) \
|
||||||
title.png map.png \
|
$(ARTDIR)/title.png $(ARTDIR)/map.png \
|
||||||
landing.png harfco.png \
|
$(ARTDIR)/landing.png $(ARTDIR)/harfco.png \
|
||||||
belair.png \
|
$(ARTDIR)/belair.png \
|
||||||
math_office.png video_hr.png \
|
$(ARTDIR)/math_office.png $(ARTDIR)/video_hr.png \
|
||||||
collegep.png \
|
$(ARTDIR)/collegep.png \
|
||||||
umcp.png \
|
$(ARTDIR)/umcp.png \
|
||||||
dining.png metro.png talbot.png
|
$(ARTDIR)/dining.png $(ARTDIR)/metro.png $(ARTDIR)/talbot.png
|
||||||
$(PNG2RLE) asm title.png title_rle > tfv_backgrounds.inc
|
$(PNG2RLE) asm $(ARTDIR)/title.png title_rle > tfv_backgrounds.inc
|
||||||
$(PNG2RLE) asm map.png map_rle >> tfv_backgrounds.inc
|
$(PNG2RLE) asm $(ARTDIR)/map.png map_rle >> tfv_backgrounds.inc
|
||||||
$(PNG2RLE) asm landing.png landing_rle >> tfv_backgrounds.inc
|
$(PNG2RLE) asm $(ARTDIR)/landing.png landing_rle >> tfv_backgrounds.inc
|
||||||
$(PNG2RLE) asm harfco.png harfco_rle >> tfv_backgrounds.inc
|
$(PNG2RLE) asm $(ARTDIR)/harfco.png harfco_rle >> tfv_backgrounds.inc
|
||||||
$(PNG2RLE) asm belair.png belair_rle >> tfv_backgrounds.inc
|
$(PNG2RLE) asm $(ARTDIR)/belair.png belair_rle >> tfv_backgrounds.inc
|
||||||
$(PNG2RLE) asm math_office.png math_office_rle >> tfv_backgrounds.inc
|
$(PNG2RLE) asm $(ARTDIR)/math_office.png math_office_rle >> tfv_backgrounds.inc
|
||||||
$(PNG2RLE) asm video_hr.png video_hr_rle >> tfv_backgrounds.inc
|
$(PNG2RLE) asm $(ARTDIR)/video_hr.png video_hr_rle >> tfv_backgrounds.inc
|
||||||
$(PNG2RLE) asm collegep.png collegep_rle >> tfv_backgrounds.inc
|
$(PNG2RLE) asm $(ARTDIR)/collegep.png collegep_rle >> tfv_backgrounds.inc
|
||||||
$(PNG2RLE) asm umcp.png umcp_rle >> tfv_backgrounds.inc
|
$(PNG2RLE) asm $(ARTDIR)/umcp.png umcp_rle >> tfv_backgrounds.inc
|
||||||
$(PNG2RLE) asm dining.png dining_rle >> tfv_backgrounds.inc
|
$(PNG2RLE) asm $(ARTDIR)/dining.png dining_rle >> tfv_backgrounds.inc
|
||||||
$(PNG2RLE) asm metro.png metro_rle >> tfv_backgrounds.inc
|
$(PNG2RLE) asm $(ARTDIR)/metro.png metro_rle >> tfv_backgrounds.inc
|
||||||
$(PNG2RLE) asm talbot.png talbot_rle >> tfv_backgrounds.inc
|
$(PNG2RLE) asm $(ARTDIR)/talbot.png talbot_rle >> tfv_backgrounds.inc
|
||||||
|
|
||||||
###
|
###
|
||||||
|
|
||||||
|
Before Width: | Height: | Size: 709 B After Width: | Height: | Size: 709 B |
Before Width: | Height: | Size: 515 B After Width: | Height: | Size: 515 B |
Before Width: | Height: | Size: 566 B After Width: | Height: | Size: 566 B |
Before Width: | Height: | Size: 527 B After Width: | Height: | Size: 527 B |
Before Width: | Height: | Size: 356 B After Width: | Height: | Size: 356 B |
Before Width: | Height: | Size: 368 B After Width: | Height: | Size: 368 B |
Before Width: | Height: | Size: 532 B After Width: | Height: | Size: 532 B |
Before Width: | Height: | Size: 397 B After Width: | Height: | Size: 397 B |
Before Width: | Height: | Size: 489 B After Width: | Height: | Size: 489 B |
Before Width: | Height: | Size: 2.5 KiB After Width: | Height: | Size: 2.5 KiB |
Before Width: | Height: | Size: 582 B After Width: | Height: | Size: 582 B |
Before Width: | Height: | Size: 523 B After Width: | Height: | Size: 523 B |
Before Width: | Height: | Size: 541 B After Width: | Height: | Size: 541 B |
Before Width: | Height: | Size: 448 B After Width: | Height: | Size: 448 B |
Before Width: | Height: | Size: 507 B After Width: | Height: | Size: 507 B |
@ -1,98 +0,0 @@
|
|||||||
;=================
|
|
||||||
; load RLE image
|
|
||||||
;=================
|
|
||||||
; Output is BASH/BASL
|
|
||||||
; Input is in GBASH/GBASL
|
|
||||||
load_rle_gr:
|
|
||||||
lda #$0
|
|
||||||
tax
|
|
||||||
tay ; init X and Y to 0
|
|
||||||
|
|
||||||
sta CV ; ycoord=0
|
|
||||||
|
|
||||||
lda (GBASL),y ; load xsize
|
|
||||||
sta CH
|
|
||||||
iny ; (we should check if we had
|
|
||||||
; bad luck and overflows page)
|
|
||||||
|
|
||||||
iny ; skip ysize
|
|
||||||
|
|
||||||
rle_loop:
|
|
||||||
lda (GBASL),y ; load run value
|
|
||||||
cmp #$ff ; if 0xff
|
|
||||||
beq rle_done ; we are done
|
|
||||||
sta RUN
|
|
||||||
iny ; point to next value
|
|
||||||
bne rle_yskip1 ; if overflow, increment address
|
|
||||||
inc GBASH
|
|
||||||
rle_yskip1:
|
|
||||||
lda (GBASL),y ; load value to write
|
|
||||||
iny
|
|
||||||
bne rle_yskip2
|
|
||||||
inc GBASH
|
|
||||||
rle_yskip2:
|
|
||||||
sty TEMP2 ; save y for later
|
|
||||||
pha
|
|
||||||
lda #$0
|
|
||||||
tay
|
|
||||||
pla ; convoluted way to set y to 0
|
|
||||||
|
|
||||||
rle_run_loop:
|
|
||||||
sta (BASL),y ; write out the value
|
|
||||||
inc BASL ; increment the pointer
|
|
||||||
bne rle_skip3 ; if wrapped
|
|
||||||
inc BASH ; then increment the high value
|
|
||||||
rle_skip3:
|
|
||||||
inx ; increment the X value
|
|
||||||
cpx CH ; compare against the image width
|
|
||||||
bcc rle_not_eol ; if less then keep going
|
|
||||||
|
|
||||||
pha ; save out value on stack
|
|
||||||
|
|
||||||
lda BASL ; cheat to avoid a 16-bit add
|
|
||||||
cmp #$a7 ; we are adding 0x58 to get
|
|
||||||
bcc rle_add_skip ; to the next line
|
|
||||||
inc BASH
|
|
||||||
rle_add_skip:
|
|
||||||
clc
|
|
||||||
adc #$58 ; actually do the 0x58 add
|
|
||||||
sta BASL ; and store it back
|
|
||||||
|
|
||||||
inc CV ; add 2 to ypos
|
|
||||||
inc CV ; each "line" is two high
|
|
||||||
|
|
||||||
lda CV ; load value
|
|
||||||
cmp #15 ; if it's greater than 14 it wraps
|
|
||||||
bcc rle_no_wrap ; Thanks Woz
|
|
||||||
|
|
||||||
lda #$0 ; we wrapped, so set to zero
|
|
||||||
sta CV
|
|
||||||
|
|
||||||
; when wrapping have to sub 0x3d8
|
|
||||||
sec ; this is a 16-bit subtract routine
|
|
||||||
lda BASL
|
|
||||||
sbc #$d8 ; LSB
|
|
||||||
sta BASL
|
|
||||||
lda BASH ; MSB
|
|
||||||
sbc #$3 ;
|
|
||||||
sta BASH
|
|
||||||
|
|
||||||
rle_no_wrap:
|
|
||||||
lda #$0 ; set X value back to zero
|
|
||||||
tax
|
|
||||||
pla ; restore value to write from stack
|
|
||||||
|
|
||||||
rle_not_eol:
|
|
||||||
dec RUN ; decrement run value
|
|
||||||
bne rle_run_loop ; if not zero, keep looping
|
|
||||||
|
|
||||||
ldy TEMP2 ; restore the input pointer
|
|
||||||
sec
|
|
||||||
bcs rle_loop ; and branch always
|
|
||||||
|
|
||||||
rle_done:
|
|
||||||
lda #$15 ; move the cursor somewhere sane
|
|
||||||
sta CV
|
|
||||||
rts
|
|
||||||
|
|
||||||
|
|