mirror of
https://github.com/deater/dos33fsprogs.git
synced 2025-01-14 13:33:48 +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):
|
$(DOS33):
|
||||||
cd ../dos33fs-utils && make
|
cd ../dos33fs-utils && make
|
||||||
|
|
||||||
mode7.dsk: $(DOS33) MODE7
|
mode7.dsk: $(DOS33) MODE7_ISLAND MODE7_CHECKERBOARD
|
||||||
$(DOS33) -y mode7.dsk BSAVE -a 0x1000 MODE7
|
$(DOS33) -y mode7.dsk BSAVE -a 0x1000 MODE7_ISLAND
|
||||||
|
$(DOS33) -y mode7.dsk BSAVE -a 0x1000 MODE7_CHECKERBOARD
|
||||||
|
|
||||||
###
|
###
|
||||||
|
|
||||||
MODE7: mode7.o
|
MODE7_ISLAND: mode7_island.o
|
||||||
ld65 -o MODE7 mode7.o -C ./apple2_1000.inc
|
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
|
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:
|
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"
|
.include "zp.inc"
|
||||||
|
|
||||||
;===========
|
;===========
|
||||||
@ -966,9 +963,9 @@ screenx_loop:
|
|||||||
|
|
||||||
nomatch:
|
nomatch:
|
||||||
; Get color to draw in A
|
; Get color to draw in A
|
||||||
.if ISLAND_MAP=1
|
.if .def(ISLAND_MAP)
|
||||||
.include "island_lookup.s"
|
.include "island_lookup.s"
|
||||||
.elseif CHECKERBOARD_MAP=1
|
.elseif .def(CHECKERBOARD_MAP)
|
||||||
.include "checkerboard_lookup.s"
|
.include "checkerboard_lookup.s"
|
||||||
.endif
|
.endif
|
||||||
|
|
||||||
@ -1063,9 +1060,9 @@ done_screeny:
|
|||||||
; the high-performance per-pixel version has been inlined
|
; the high-performance per-pixel version has been inlined
|
||||||
lookup_map:
|
lookup_map:
|
||||||
|
|
||||||
.if ISLAND_MAP=1
|
.if .def(ISLAND_MAP)
|
||||||
.include "island_lookup.s"
|
.include "island_lookup.s"
|
||||||
.elseif CHECKERBOARD_MAP=1
|
.elseif .def(CHECKERBOARD_MAP)
|
||||||
.include "checkerboard_lookup.s"
|
.include "checkerboard_lookup.s"
|
||||||
.endif
|
.endif
|
||||||
|
|
||||||
@ -1111,7 +1108,7 @@ gr_offsets:
|
|||||||
.word $428,$4a8,$528,$5a8,$628,$6a8,$728,$7a8
|
.word $428,$4a8,$528,$5a8,$628,$6a8,$728,$7a8
|
||||||
.word $450,$4d0,$550,$5d0,$650,$6d0,$750,$7d0
|
.word $450,$4d0,$550,$5d0,$650,$6d0,$750,$7d0
|
||||||
|
|
||||||
.if ISLAND_MAP=1
|
.if .def(ISLAND_MAP)
|
||||||
.include "island_map.inc"
|
.include "island_map.inc"
|
||||||
.endif
|
.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
|
; .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
|
; we can guarantee 4 cycle indexed reads if we page-aligned this
|
||||||
.align 256
|
;.align 256
|
||||||
horizontal_lookup:
|
horizontal_lookup:
|
||||||
.byte $0C,$0B,$0A,$09,$09,$08,$08,$07,$07,$06,$06,$06,$05,$05,$05,$05
|
.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
|
.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