mirror of
https://github.com/deater/dos33fsprogs.git
synced 2025-01-13 22:30:49 +00:00
mode7: build demos from the same source
This commit is contained in:
parent
97fda48ff3
commit
660066f593
@ -9,18 +9,26 @@ all: mode7.dsk
|
||||
$(DOS33):
|
||||
cd ../dos33fs-utils && make
|
||||
|
||||
mode7.dsk: $(DOS33) MODE7
|
||||
$(DOS33) -y mode7.dsk BSAVE -a 0x1000 MODE7
|
||||
mode7.dsk: $(DOS33) MODE7_ISLAND MODE7_CHECKERBOARD
|
||||
$(DOS33) -y mode7.dsk BSAVE -a 0x1000 MODE7_ISLAND
|
||||
$(DOS33) -y mode7.dsk BSAVE -a 0x1000 MODE7_CHECKERBOARD
|
||||
|
||||
###
|
||||
|
||||
MODE7: mode7.o
|
||||
ld65 -o MODE7 mode7.o -C ./apple2_1000.inc
|
||||
MODE7_ISLAND: mode7_island.o
|
||||
ld65 -o MODE7_ISLAND mode7_island.o -C ./apple2_1000.inc
|
||||
|
||||
mode7.o: mode7.s \
|
||||
mode7_island.o: mode7.s island_lookup.s island_map.inc \
|
||||
fast_multiply.s utils.s zp.inc sprites.inc
|
||||
ca65 -o mode7.o mode7.s -l mode7.lst
|
||||
ca65 -o mode7_island.o mode7.s -D ISLAND_MAP=1 -l mode7.lst
|
||||
|
||||
MODE7_CHECKERBOARD: mode7_checkerboard.o
|
||||
ld65 -o MODE7_CHECKERBOARD mode7_checkerboard.o -C ./apple2_1000.inc
|
||||
|
||||
mode7_checkerboard.o: mode7.s checkerboard_lookup.s \
|
||||
fast_multiply.s utils.s zp.inc sprites.inc
|
||||
ca65 -o mode7_checkerboard.o mode7.s -D CHECKERBOARD_MAP=1 -l mode7.lst
|
||||
|
||||
clean:
|
||||
rm -f *~ *.o MODE7 *.lst
|
||||
rm -f *~ *.o MODE7 MODE7_ISLAND MODE7_CHECKERBOARD *.lst
|
||||
|
||||
|
BIN
mode7/mode7.dsk
BIN
mode7/mode7.dsk
Binary file not shown.
@ -1,6 +1,3 @@
|
||||
ISLAND_MAP = 0
|
||||
CHECKERBOARD_MAP = 1
|
||||
|
||||
.include "zp.inc"
|
||||
|
||||
;===========
|
||||
@ -966,9 +963,9 @@ screenx_loop:
|
||||
|
||||
nomatch:
|
||||
; Get color to draw in A
|
||||
.if ISLAND_MAP=1
|
||||
.if .def(ISLAND_MAP)
|
||||
.include "island_lookup.s"
|
||||
.elseif CHECKERBOARD_MAP=1
|
||||
.elseif .def(CHECKERBOARD_MAP)
|
||||
.include "checkerboard_lookup.s"
|
||||
.endif
|
||||
|
||||
@ -1063,9 +1060,9 @@ done_screeny:
|
||||
; the high-performance per-pixel version has been inlined
|
||||
lookup_map:
|
||||
|
||||
.if ISLAND_MAP=1
|
||||
.if .def(ISLAND_MAP)
|
||||
.include "island_lookup.s"
|
||||
.elseif CHECKERBOARD_MAP=1
|
||||
.elseif .def(CHECKERBOARD_MAP)
|
||||
.include "checkerboard_lookup.s"
|
||||
.endif
|
||||
|
||||
@ -1111,7 +1108,7 @@ gr_offsets:
|
||||
.word $428,$4a8,$528,$5a8,$628,$6a8,$728,$7a8
|
||||
.word $450,$4d0,$550,$5d0,$650,$6d0,$750,$7d0
|
||||
|
||||
.if ISLAND_MAP=1
|
||||
.if .def(ISLAND_MAP)
|
||||
.include "island_map.inc"
|
||||
.endif
|
||||
|
||||
@ -1166,7 +1163,7 @@ fixed_sin_scale:
|
||||
; .byte $A6,$8A,$76,$68,$5C,$53,$4B,$45,$40,$3B,$37,$34,$30,$2E,$2B,$29
|
||||
|
||||
; we can guarantee 4 cycle indexed reads if we page-aligned this
|
||||
.align 256
|
||||
;.align 256
|
||||
horizontal_lookup:
|
||||
.byte $0C,$0B,$0A,$09,$09,$08,$08,$07,$07,$06,$06,$06,$05,$05,$05,$05
|
||||
.byte $04,$04,$04,$04,$04,$04,$04,$03,$03,$03,$03,$03,$03,$03,$03,$03
|
||||
|
Loading…
x
Reference in New Issue
Block a user