2023-08-15 16:53:05 +00:00
|
|
|
include ../../Makefile.inc
|
|
|
|
|
|
|
|
DOS33 = ../../utils/dos33fs-utils/dos33
|
|
|
|
DOS33_RAW = ../../utils/dos33fs-utils/dos33_raw
|
|
|
|
EMPTY_DISK = ../../empty_disk/empty.dsk
|
|
|
|
TOKENIZE = ../../utils/asoft_basic-utils/tokenize_asoft
|
|
|
|
LINKER_SCRIPTS = ../../linker_scripts/
|
|
|
|
|
2023-10-20 12:48:02 +00:00
|
|
|
all: second_d1.dsk second_d2.dsk
|
2023-08-15 16:53:05 +00:00
|
|
|
|
2023-10-29 02:40:01 +00:00
|
|
|
second_d1.dsk: QBOOT QLOAD music.inc \
|
|
|
|
MUSIC_INTRO \
|
|
|
|
MUSIC \
|
2023-10-05 19:02:28 +00:00
|
|
|
./part01_intropan/INTRO \
|
2023-10-29 04:51:28 +00:00
|
|
|
./part04_chess_shapes/CHESS \
|
2023-10-17 05:19:06 +00:00
|
|
|
./part05_dot_tunnel/TUNNEL \
|
2023-10-29 03:51:26 +00:00
|
|
|
./part08_gorilla/GORILLA \
|
2023-10-29 03:38:44 +00:00
|
|
|
./part09_leaves/LEAVES \
|
2023-10-29 03:23:04 +00:00
|
|
|
./part10_lens_rotozoom/LENS \
|
2023-10-29 03:16:35 +00:00
|
|
|
./part12_plasma/PLASMA \
|
2023-10-29 02:40:01 +00:00
|
|
|
./part13_plasmacube/PLASMACUBE \
|
2023-10-28 23:13:02 +00:00
|
|
|
./part14_dotbounce/DOTS \
|
|
|
|
./part15_transmission/SPHERES \
|
2023-10-17 05:19:06 +00:00
|
|
|
./part16_ocean/OCEAN \
|
2023-10-28 16:12:24 +00:00
|
|
|
./part17_polar/POLAR
|
2023-10-20 12:48:02 +00:00
|
|
|
cp $(EMPTY_DISK) second_d1.dsk
|
2023-10-29 02:40:01 +00:00
|
|
|
$(DOS33_RAW) second_d1.dsk 0 0 QBOOT 0 1
|
|
|
|
$(DOS33_RAW) second_d1.dsk 0 2 QBOOT 1 1
|
|
|
|
$(DOS33_RAW) second_d1.dsk 0 4 QBOOT 2 1
|
|
|
|
$(DOS33_RAW) second_d1.dsk 1 0 QLOAD 0 0
|
|
|
|
$(DOS33_RAW) second_d1.dsk 2 0 MUSIC_INTRO 0 0
|
|
|
|
$(DOS33_RAW) second_d1.dsk 4 0 MUSIC 0 0
|
|
|
|
$(DOS33_RAW) second_d1.dsk 10 0 ./part01_intropan/INTRO 0 0
|
2023-10-29 04:51:28 +00:00
|
|
|
$(DOS33_RAW) second_d1.dsk 15 0 ./part04_chess_shapes/CHESS 0 0
|
2023-10-29 02:40:01 +00:00
|
|
|
# $(DOS33_RAW) second_d1.dsk 16 0 ./part05_dot_tunnel/TUNNEL 0 0
|
2023-10-29 03:51:26 +00:00
|
|
|
$(DOS33_RAW) second_d1.dsk 19 0 ./part08_gorilla/GORILLA 0 0
|
2023-10-29 03:38:44 +00:00
|
|
|
$(DOS33_RAW) second_d1.dsk 21 0 ./part09_leaves/LEAVES 0 0
|
2023-10-29 03:23:04 +00:00
|
|
|
$(DOS33_RAW) second_d1.dsk 23 0 ./part10_lens_rotozoom/LENS 0 0
|
2023-10-29 03:16:35 +00:00
|
|
|
$(DOS33_RAW) second_d1.dsk 24 0 ./part12_plasma/PLASMA 0 0
|
2023-10-29 02:40:01 +00:00
|
|
|
$(DOS33_RAW) second_d1.dsk 25 0 ./part13_plasmacube/PLASMACUBE 0 0
|
|
|
|
$(DOS33_RAW) second_d1.dsk 26 0 ./part14_dotbounce/DOTS 0 0
|
|
|
|
$(DOS33_RAW) second_d1.dsk 27 0 ./part15_transmission/SPHERES 0 0
|
|
|
|
$(DOS33_RAW) second_d1.dsk 28 0 ./part16_ocean/OCEAN 0 0
|
2023-10-28 16:12:24 +00:00
|
|
|
$(DOS33_RAW) second_d1.dsk 34 0 ./part17_polar/POLAR 0 0
|
2023-10-20 12:48:02 +00:00
|
|
|
|
2023-10-28 21:28:52 +00:00
|
|
|
|
|
|
|
####
|
|
|
|
|
2023-10-29 04:51:28 +00:00
|
|
|
part04_chess/CHESS:
|
|
|
|
cd part04_chess && make
|
|
|
|
|
2023-10-29 03:51:26 +00:00
|
|
|
part08_gorilla/GORILLA:
|
|
|
|
cd part08_gorilla && make
|
|
|
|
|
2023-10-29 03:38:44 +00:00
|
|
|
part09_leaves/LEAVES:
|
|
|
|
cd part09_leaves && make
|
|
|
|
|
2023-10-29 03:23:04 +00:00
|
|
|
part10_lens_rotozoom/LENS:
|
|
|
|
cd part10_lens_rotozoom && make
|
|
|
|
|
2023-10-29 03:16:35 +00:00
|
|
|
part12_plasma/PLASMA:
|
|
|
|
cd part12_plasma && make
|
|
|
|
|
2023-10-29 02:40:01 +00:00
|
|
|
part13_plasmacube/PLASMACUBE:
|
|
|
|
cd part13_plasmacube && make
|
|
|
|
|
2023-10-28 23:13:02 +00:00
|
|
|
part14_dotbounce/DOTS:
|
|
|
|
cd part14_dotbounce && make
|
|
|
|
|
2023-10-28 21:28:52 +00:00
|
|
|
part15_transmission/SPHERES:
|
|
|
|
cd part15_transmission && make
|
|
|
|
|
2023-10-29 04:51:28 +00:00
|
|
|
part16_ocean/OCEAN:
|
|
|
|
cd part16_ocean && make
|
|
|
|
|
2023-10-28 21:28:52 +00:00
|
|
|
part17_polar/POLAR:
|
|
|
|
cd part17_polar && make
|
|
|
|
|
|
|
|
|
2023-10-27 03:14:02 +00:00
|
|
|
second_d2.dsk: QBOOT QLOAD2 MUSIC2 music2.inc \
|
2023-10-24 05:56:32 +00:00
|
|
|
./part18_3d/THREED \
|
2023-10-27 03:14:02 +00:00
|
|
|
./part19_nuts/NUTS \
|
2023-10-24 05:56:32 +00:00
|
|
|
./part20_credits/CREDITS
|
2023-10-20 12:48:02 +00:00
|
|
|
cp $(EMPTY_DISK) second_d2.dsk
|
|
|
|
$(DOS33_RAW) second_d2.dsk 0 0 QBOOT 0 1
|
|
|
|
$(DOS33_RAW) second_d2.dsk 0 2 QBOOT 1 1
|
|
|
|
$(DOS33_RAW) second_d2.dsk 0 4 QBOOT 2 1
|
|
|
|
$(DOS33_RAW) second_d2.dsk 1 0 QLOAD2 0 0
|
|
|
|
$(DOS33_RAW) second_d2.dsk 3 0 MUSIC2 0 0
|
2023-10-27 03:14:02 +00:00
|
|
|
$(DOS33_RAW) second_d2.dsk 8 0 ./part19_nuts/NUTS 0 0
|
|
|
|
$(DOS33_RAW) second_d2.dsk 12 0 ./part20_credits/CREDITS 0 0
|
|
|
|
$(DOS33_RAW) second_d2.dsk 20 0 ./part18_3d/THREED 0 0
|
2023-10-20 12:48:02 +00:00
|
|
|
|
2023-10-27 03:14:02 +00:00
|
|
|
####
|
|
|
|
|
|
|
|
part18_3d/THREED:
|
|
|
|
cd part18_3d && make
|
|
|
|
|
|
|
|
part19_nuts/NUTS:
|
|
|
|
cd part19_nuts && make
|
2023-10-05 19:02:28 +00:00
|
|
|
|
2023-10-27 03:14:02 +00:00
|
|
|
part20_credits/CREDITS:
|
|
|
|
cd part20_credits && make
|
2023-08-15 16:53:05 +00:00
|
|
|
|
|
|
|
####
|
|
|
|
|
|
|
|
QBOOT: qboot_sector.o
|
|
|
|
ld65 -o QBOOT qboot_sector.o -C $(LINKER_SCRIPTS)/apple2_800.inc
|
|
|
|
|
|
|
|
qboot_sector.o: qboot_sector.s qboot_stage2.s
|
|
|
|
ca65 -o qboot_sector.o qboot_sector.s -l qboot_sector.lst
|
|
|
|
|
|
|
|
|
|
|
|
####
|
|
|
|
|
|
|
|
QLOAD: qload.o
|
|
|
|
ld65 -o QLOAD qload.o -C $(LINKER_SCRIPTS)/apple2_1200.inc
|
|
|
|
|
|
|
|
qload.o: qload.s \
|
|
|
|
gr_offsets.s \
|
|
|
|
wait.s wait_a_bit.s \
|
|
|
|
lc_detect.s gr_fast_clear.s \
|
2023-10-28 16:12:24 +00:00
|
|
|
text_print.s start.s \
|
2023-10-27 05:04:26 +00:00
|
|
|
hgr_table.s \
|
2023-08-15 16:53:05 +00:00
|
|
|
pt3_lib_detect_model.s pt3_lib_mockingboard_detect.s \
|
|
|
|
pt3_lib_mockingboard_setup.s interrupt_handler.s \
|
|
|
|
pt3_lib_mockingboard_patch.s
|
2023-10-24 05:56:32 +00:00
|
|
|
ca65 -o qload.o qload.s -l qload.lst
|
2023-10-20 12:48:02 +00:00
|
|
|
|
|
|
|
####
|
|
|
|
|
|
|
|
QLOAD2: qload2.o
|
|
|
|
ld65 -o QLOAD2 qload2.o -C $(LINKER_SCRIPTS)/apple2_1200.inc
|
|
|
|
|
|
|
|
qload2.o: qload2.s \
|
2023-10-27 03:14:02 +00:00
|
|
|
music2.inc \
|
2023-10-20 12:48:02 +00:00
|
|
|
gr_offsets.s \
|
|
|
|
wait.s wait_a_bit.s \
|
|
|
|
lc_detect.s gr_fast_clear.s \
|
|
|
|
text_print.s start2.s \
|
|
|
|
hardware_detect.s \
|
2023-10-27 05:04:26 +00:00
|
|
|
hgr_table.s \
|
2023-10-20 12:48:02 +00:00
|
|
|
pt3_lib_detect_model.s pt3_lib_mockingboard_detect.s \
|
|
|
|
pt3_lib_mockingboard_setup.s interrupt_handler.s \
|
|
|
|
pt3_lib_mockingboard_patch.s
|
|
|
|
ca65 -o qload2.o qload2.s -l qload2.lst
|
|
|
|
|
2023-08-15 16:53:05 +00:00
|
|
|
|
|
|
|
####
|
|
|
|
|
|
|
|
SECOND: second.o
|
|
|
|
ld65 -o SECOND second.o -C ../../linker_scripts/apple2_6000.inc
|
|
|
|
|
|
|
|
second.o: second.s zx02_optim.s \
|
|
|
|
text_print.s title.s \
|
|
|
|
graphics/icekngdm.hgr.zx02 \
|
|
|
|
graphics/final3.hgr.zx02 \
|
|
|
|
graphics/mntscrl3.hgr.zx02 \
|
|
|
|
zp.inc hardware.inc qload.inc music.inc
|
|
|
|
ca65 -o second.o second.s -l second.lst
|
|
|
|
|
|
|
|
####
|
|
|
|
|
2023-10-03 20:27:24 +00:00
|
|
|
START: start.o
|
2023-10-12 05:32:15 +00:00
|
|
|
ld65 -o START start.o -C ../../linker_scripts/apple2_2000.inc
|
2023-10-03 20:27:24 +00:00
|
|
|
|
|
|
|
start.o: start.s zx02_optim.s \
|
|
|
|
text_print.s title.s \
|
|
|
|
zp.inc hardware.inc qload.inc music.inc
|
|
|
|
ca65 -o start.o start.s -l start.lst
|
|
|
|
|
|
|
|
####
|
|
|
|
|
2023-08-15 16:53:05 +00:00
|
|
|
qload.inc: generate_common QLOAD
|
|
|
|
./generate_common -a 0x1200 -s load_file qload.lst > qload.inc
|
|
|
|
./generate_common -a 0x1200 -s detect_appleii_model qload.lst >> qload.inc
|
|
|
|
./generate_common -a 0x1200 -s clear_all qload.lst >> qload.inc
|
|
|
|
./generate_common -a 0x1200 -s set_normal qload.lst >> qload.inc
|
|
|
|
./generate_common -a 0x1200 -s set_inverse qload.lst >> qload.inc
|
|
|
|
./generate_common -a 0x1200 -s wait qload.lst >> qload.inc
|
|
|
|
./generate_common -a 0x1200 -s wait_a_bit qload.lst >> qload.inc
|
|
|
|
./generate_common -a 0x1200 -s move_and_print qload.lst >> qload.inc
|
|
|
|
./generate_common -a 0x1200 -s detect_language_card qload.lst >> qload.inc
|
|
|
|
./generate_common -a 0x1200 -s mockingboard_detect qload.lst >> qload.inc
|
|
|
|
./generate_common -a 0x1200 -s clear_bottom qload.lst >> qload.inc
|
2023-08-15 18:48:24 +00:00
|
|
|
./generate_common -a 0x1200 -s clear_bottoms qload.lst >> qload.inc
|
|
|
|
./generate_common -a 0x1200 -s clear_screens qload.lst >> qload.inc
|
2023-10-29 00:13:34 +00:00
|
|
|
./generate_common -a 0x1200 -s clear_top qload.lst >> qload.inc
|
2023-08-15 16:53:05 +00:00
|
|
|
|
|
|
|
# ./generate_common -a 0x1200 -s mockingboard_patch qload.lst >> qload.inc
|
|
|
|
# ./generate_common -a 0x1200 -s mockingboard_init qload.lst >> qload.inc
|
|
|
|
# ./generate_common -a 0x1200 -s mockingboard_setup_interrupt qload.lst >> qload.inc
|
|
|
|
# ./generate_common -a 0x1200 -s disable_music qload.lst >> qload.inc
|
|
|
|
# ./generate_common -a 0x1200 -s reset_ay_both qload.lst >> qload.inc
|
|
|
|
# ./generate_common -a 0x1200 -s clear_ay_both qload.lst >> qload.inc
|
|
|
|
|
|
|
|
####
|
|
|
|
|
2023-10-20 12:48:02 +00:00
|
|
|
qload2.inc: generate_common QLOAD2
|
|
|
|
./generate_common -a 0x1200 -s load_file qload2.lst > qload2.inc
|
|
|
|
./generate_common -a 0x1200 -s detect_appleii_model qload2.lst >> qload2.inc
|
|
|
|
./generate_common -a 0x1200 -s clear_all qload2.lst >> qload2.inc
|
|
|
|
./generate_common -a 0x1200 -s set_normal qload2.lst >> qload2.inc
|
|
|
|
./generate_common -a 0x1200 -s set_inverse qload2.lst >> qload2.inc
|
|
|
|
./generate_common -a 0x1200 -s wait qload2.lst >> qload2.inc
|
|
|
|
./generate_common -a 0x1200 -s wait_a_bit qload2.lst >> qload2.inc
|
|
|
|
./generate_common -a 0x1200 -s move_and_print qload2.lst >> qload2.inc
|
|
|
|
./generate_common -a 0x1200 -s detect_language_card qload2.lst >> qload2.inc
|
|
|
|
./generate_common -a 0x1200 -s mockingboard_detect qload2.lst >> qload2.inc
|
|
|
|
./generate_common -a 0x1200 -s clear_bottom qload2.lst >> qload2.inc
|
|
|
|
./generate_common -a 0x1200 -s clear_bottoms qload2.lst >> qload2.inc
|
|
|
|
./generate_common -a 0x1200 -s clear_screens qload2.lst >> qload2.inc
|
2023-10-27 05:04:26 +00:00
|
|
|
./generate_common -a 0x1200 -s hgr_make_tables qload2.lst >> qload2.inc
|
2023-10-20 12:48:02 +00:00
|
|
|
|
|
|
|
####
|
|
|
|
|
2023-08-15 16:53:05 +00:00
|
|
|
music.inc: generate_common MUSIC
|
|
|
|
./generate_common -a 0xd000 -s pt3_init_song music.lst > music.inc
|
|
|
|
./generate_common -a 0xd000 -s mockingboard_init music.lst >> music.inc
|
|
|
|
./generate_common -a 0xd000 -s reset_ay_both music.lst >> music.inc
|
|
|
|
./generate_common -a 0xd000 -s clear_ay_both music.lst >> music.inc
|
|
|
|
./generate_common -a 0xd000 -s mockingboard_setup_interrupt music.lst >> music.inc
|
|
|
|
./generate_common -a 0xd000 -s mockingboard_disable_interrupt music.lst >> music.inc
|
|
|
|
./generate_common -a 0xd000 -s done_pt3_irq_handler music.lst >> music.inc
|
|
|
|
./generate_common -a 0xd000 -s PT3_LOC music.lst >> music.inc
|
2023-10-28 16:12:24 +00:00
|
|
|
./generate_common -a 0xd000 -s current_pattern_smc music.lst >> music.inc
|
|
|
|
./generate_common -a 0xd000 -s pt3_set_pattern music.lst >> music.inc
|
2023-10-27 03:14:02 +00:00
|
|
|
./generate_common -a 0xd000 -s copy_main_aux music.lst >> music.inc
|
|
|
|
./generate_common -a 0xd000 -s copy_aux_main music.lst >> music.inc
|
|
|
|
|
|
|
|
music2.inc: generate_common MUSIC2
|
|
|
|
./generate_common -a 0xd000 -s pt3_init_song music2.lst > music2.inc
|
|
|
|
./generate_common -a 0xd000 -s mockingboard_init music2.lst >> music2.inc
|
|
|
|
./generate_common -a 0xd000 -s reset_ay_both music2.lst >> music2.inc
|
|
|
|
./generate_common -a 0xd000 -s clear_ay_both music2.lst >> music2.inc
|
|
|
|
./generate_common -a 0xd000 -s mockingboard_setup_interrupt music2.lst >> music2.inc
|
|
|
|
./generate_common -a 0xd000 -s mockingboard_disable_interrupt music2.lst >> music2.inc
|
|
|
|
./generate_common -a 0xd000 -s done_pt3_irq_handler music2.lst >> music2.inc
|
|
|
|
./generate_common -a 0xd000 -s PT3_LOC music2.lst >> music2.inc
|
|
|
|
./generate_common -a 0xd000 -s copy_main_aux music2.lst >> music2.inc
|
|
|
|
./generate_common -a 0xd000 -s copy_aux_main music2.lst >> music2.inc
|
2023-08-15 16:53:05 +00:00
|
|
|
|
|
|
|
####
|
|
|
|
|
2023-10-20 12:48:02 +00:00
|
|
|
MUSIC: music.o qload.inc
|
2023-08-15 16:53:05 +00:00
|
|
|
ld65 -o MUSIC music.o -C $(LINKER_SCRIPTS)/apple2_d000.inc
|
|
|
|
|
|
|
|
music.o: music.s zp.inc \
|
2023-10-27 03:14:02 +00:00
|
|
|
aux_memcopy.s \
|
2023-08-15 16:53:05 +00:00
|
|
|
music/z00m_unreal2_part1.pt3 \
|
|
|
|
pt3_lib_core.s \
|
|
|
|
pt3_lib_mockingboard_detect.s \
|
|
|
|
pt3_lib_mockingboard.inc \
|
|
|
|
pt3_lib_init.s \
|
|
|
|
pt3_lib_mockingboard_setup.s \
|
|
|
|
pt3_lib_irq_handler.s
|
|
|
|
ca65 -o music.o music.s -l music.lst
|
|
|
|
|
2023-10-20 12:48:02 +00:00
|
|
|
####
|
|
|
|
|
2023-10-29 02:40:01 +00:00
|
|
|
MUSIC_INTRO: music_intro.o qload.inc
|
|
|
|
ld65 -o MUSIC_INTRO music_intro.o -C $(LINKER_SCRIPTS)/apple2_d000.inc
|
|
|
|
|
|
|
|
music_intro.o: music_intro.s zp.inc \
|
|
|
|
aux_memcopy.s \
|
|
|
|
music/z00m_unreal2_part1.pt3 \
|
|
|
|
pt3_lib_core.s \
|
|
|
|
pt3_lib_mockingboard_detect.s \
|
|
|
|
pt3_lib_mockingboard.inc \
|
|
|
|
pt3_lib_init.s \
|
|
|
|
pt3_lib_mockingboard_setup.s \
|
|
|
|
pt3_lib_irq_handler.s
|
|
|
|
ca65 -o music_intro.o music_intro.s -l music_intro.lst
|
|
|
|
|
|
|
|
|
|
|
|
####
|
|
|
|
|
2023-10-27 03:14:02 +00:00
|
|
|
MUSIC2: music2.o
|
2023-10-20 12:48:02 +00:00
|
|
|
ld65 -o MUSIC2 music2.o -C $(LINKER_SCRIPTS)/apple2_d000.inc
|
|
|
|
|
|
|
|
music2.o: music2.s zp.inc \
|
2023-10-27 03:14:02 +00:00
|
|
|
aux_memcopy.s \
|
2023-10-20 12:48:02 +00:00
|
|
|
music/second_3d.pt3 \
|
|
|
|
pt3_lib_core.s \
|
|
|
|
pt3_lib_mockingboard_detect.s \
|
|
|
|
pt3_lib_mockingboard.inc \
|
|
|
|
pt3_lib_init.s \
|
|
|
|
pt3_lib_mockingboard_setup.s \
|
|
|
|
pt3_lib_irq_handler.s
|
|
|
|
ca65 -o music2.o music2.s -l music2.lst
|
|
|
|
|
2023-08-15 16:53:05 +00:00
|
|
|
|
|
|
|
|
2023-10-27 03:14:02 +00:00
|
|
|
###
|
2023-08-15 16:53:05 +00:00
|
|
|
|
|
|
|
generate_common: generate_common.o
|
|
|
|
$(CC) $(LFLAGS) -o generate_common generate_common.o
|
|
|
|
|
|
|
|
generate_common.o: generate_common.c
|
|
|
|
$(CC) $(CFLAGS) -c generate_common.c
|
|
|
|
|
|
|
|
###
|
|
|
|
|
|
|
|
|
|
|
|
clean:
|
2023-10-27 03:14:02 +00:00
|
|
|
rm -f *~ *.o *.lst HELLO SECOND QBOOT QLOAD MUSIC START
|
2023-10-29 04:51:28 +00:00
|
|
|
cd part04_chess && make clean
|
2023-10-29 03:51:26 +00:00
|
|
|
cd part08_gorilla && make clean
|
2023-10-29 03:38:44 +00:00
|
|
|
cd part09_leaves && make clean
|
2023-10-29 03:23:04 +00:00
|
|
|
cd part10_lens_rotozoom && make clean
|
2023-10-29 03:16:35 +00:00
|
|
|
cd part12_plasma && make clean
|
2023-10-29 02:40:01 +00:00
|
|
|
cd part13_plasmacube && make clean
|
2023-10-28 23:13:02 +00:00
|
|
|
cd part14_dotbounce && make clean
|
2023-10-28 21:28:52 +00:00
|
|
|
cd part15_transmission && make clean
|
2023-10-29 04:51:28 +00:00
|
|
|
cd part16_ocean && make clean
|
2023-10-28 21:28:52 +00:00
|
|
|
cd part17_polar && make clean
|
2023-10-27 03:14:02 +00:00
|
|
|
cd part18_3d && make clean
|
|
|
|
cd part19_nuts && make clean
|
|
|
|
cd part20_credits && make clean
|