From 8c62e5ab8ad4170db43289154322c6820b6f215a Mon Sep 17 00:00:00 2001 From: Nick Downing Date: Fri, 1 Jul 2022 12:56:42 +1000 Subject: [PATCH] Trim Sky Blazer segments, analyze object and draw_misc differences --- shape/Makefile | 1 + shape/sky_blazer0_segments.txt | 16 +++++++++++++++- shape/star_blazer0_segments.txt | 21 --------------------- star_blazer/Makefile | 4 +++- star_blazer/sky_blazer.txt | 9 ++++----- star_blazer/sky_blazer0_segments.txt | 16 +++++++++++++++- star_blazer/star_blazer0_segments.txt | 21 --------------------- 7 files changed, 38 insertions(+), 50 deletions(-) diff --git a/shape/Makefile b/shape/Makefile index 3d9909c..04966e4 100644 --- a/shape/Makefile +++ b/shape/Makefile @@ -95,6 +95,7 @@ Apple\ II+\ -\ 341-0020\ -\ Applesoft\ BASIC\ Autostart\ Monitor\ F800\ -\ 2716. ../utils/a2_load.py \ --c6-rom=../orig/Apple\ Disk\ II\ 16\ Sector\ Interface\ Card\ ROM\ P5\ -\ 341-0027.bin \ --f8-rom=Apple\ II+\ -\ 341-0020\ -\ Applesoft\ BASIC\ Autostart\ Monitor\ F800\ -\ 2716.bin \ +--segments=sky_blazer0_segments.txt \ --trace=68 \ 0x17d1 \ "$<" \ diff --git a/shape/sky_blazer0_segments.txt b/shape/sky_blazer0_segments.txt index f78f516..01fd99c 100644 --- a/shape/sky_blazer0_segments.txt +++ b/shape/sky_blazer0_segments.txt @@ -1 +1,15 @@ -[0x0000,0xc000) +[0x0022, 0x0024) # vec_init_game +[0x0024, 0x0026) # vec_start_game +[0x0028, 0x002a) # vec_calculate_object_shape +[0x004e, 0x0050) # vec_draw_misc_from_table +[0x0200, 0x0202) # vec_restart +[0x0a00, 0x17f9) +[0x1800, 0x1dc6) +[0x1e00, 0x1f39) +[0x1f80, 0x2000) +[0x4000, 0x4a10) +[0x4a80, 0x4a90) +[0x4b00, 0x4dc0) +[0x4ed0, 0x4f00) +[0x4f40, 0x8c00) +[0x8c00, 0x9beb) diff --git a/shape/star_blazer0_segments.txt b/shape/star_blazer0_segments.txt index 6b7d274..9e2814f 100644 --- a/shape/star_blazer0_segments.txt +++ b/shape/star_blazer0_segments.txt @@ -1,24 +1,3 @@ -# file was constructed from a memory dump after copy protected loader ran -# after loading at 0x0300: -# [0x0300, 0x0303) is jump to crack loader -# [0x0303, 0x0a00) is junk -# [0x0a00, 0x2000) is program -# [0x2000, 0x4000) is hi-res screen 0 which is reused by the crack loader: -# [0x2000, 0x27ed) is end of program which is copied to 0x9600 -# [0x27ed, 0x3200) is junk copied after end of program at 0x9ded -# [0x3200, 0x3c00) is junk copied to end of memory at 0xb600 -# [0x3c00, 0x3f00) is junk copied to start of memory at 0x0000, except: -# [0x3c20, 0x3c22) is vec_start (duplicated in crack loader, not used) -# [0x3c22, 0x3c24) is vec_init_game -# [0x3c24, 0x3c26) is vec_start_game -# [0x3c28, 0x3c2a) is vec_calculate_object_shape -# [0x3c4e, 0x3c50) is vec_draw_misc_from_table -# [0x3e00, 0x3e02) is vec_restart -# [0x3f00, 0x3f79) is crack loader -# [0x3f79, 0x4000) is junk -# [0x4000, 0x8c08) is program -# [0x8c08, 0x8e00) is junk which I think is from the shape editor he used -# [0x8e00, 0x9600) is program [0x0022, 0x0024) # vec_init_game [0x0024, 0x0026) # vec_start_game [0x0028, 0x002a) # vec_calculate_object_shape diff --git a/star_blazer/Makefile b/star_blazer/Makefile index 2249f20..b63bb0e 100644 --- a/star_blazer/Makefile +++ b/star_blazer/Makefile @@ -128,7 +128,8 @@ sky_blazer_object_data.inc sky_blazer_object.json: \ sky_blazer_object_defs.inc \ -sky_blazer.txt sky_blazer0.ihx +sky_blazer.txt \ +sky_blazer0.ihx ./object_extract.py --disasm=$^ $@ sky_blazer_draw_misc_table.inc: sky_blazer.txt sky_blazer_draw_misc.json @@ -151,6 +152,7 @@ Apple\ II+\ -\ 341-0020\ -\ Applesoft\ BASIC\ Autostart\ Monitor\ F800\ -\ 2716. ../utils/a2_load.py \ --c6-rom=../orig/Apple\ Disk\ II\ 16\ Sector\ Interface\ Card\ ROM\ P5\ -\ 341-0027.bin \ --f8-rom=Apple\ II+\ -\ 341-0020\ -\ Applesoft\ BASIC\ Autostart\ Monitor\ F800\ -\ 2716.bin \ +--segments=sky_blazer0_segments.txt \ --trace=68 \ 0x17d1 \ "$<" \ diff --git a/star_blazer/sky_blazer.txt b/star_blazer/sky_blazer.txt index fce37f4..50a05e8 100644 --- a/star_blazer/sky_blazer.txt +++ b/star_blazer/sky_blazer.txt @@ -598,7 +598,6 @@ items 0xc062,0x0001,HW_PB1,byte 0xc065,0x0001,HW_PADDL1,byte 0xc070,0x0001,HW_PTRIG,byte -0xfb1e,0x0001,ROM_PREAD,code shapes 0x00,pixel @@ -858,10 +857,10 @@ objects 0x79,draw_mission_attack_the_tank 0x7a,draw_mission_bomb_the_icbm 0x7b,draw_mission_attack_the_tank -0x7c,draw_scoring_thanks_a_lot_comma_raly +0x7c,draw_scoring 0x7d,timer_title_display 0x7e,timer_headquarters_radar_icbm_generator -0x7f,draw_star_blazer_by_tony_suzuki +0x7f,draw_sky_blazer_by_tony_suzuki draw_misc_entries 0x00,score @@ -892,9 +891,9 @@ draw_misc_entries 0x1a,bomb_the_icbm 0x1b,scoring 0x1c,bomb_the_headquarters -0x1d,star_blazer +0x1d,sky_blazer 0x1e,by_tony_suzuki -0x1f,thanks_a_lot_comma_raly +0x1f,scoring sound_effects 0x00,ship_impact diff --git a/star_blazer/sky_blazer0_segments.txt b/star_blazer/sky_blazer0_segments.txt index f78f516..01fd99c 100644 --- a/star_blazer/sky_blazer0_segments.txt +++ b/star_blazer/sky_blazer0_segments.txt @@ -1 +1,15 @@ -[0x0000,0xc000) +[0x0022, 0x0024) # vec_init_game +[0x0024, 0x0026) # vec_start_game +[0x0028, 0x002a) # vec_calculate_object_shape +[0x004e, 0x0050) # vec_draw_misc_from_table +[0x0200, 0x0202) # vec_restart +[0x0a00, 0x17f9) +[0x1800, 0x1dc6) +[0x1e00, 0x1f39) +[0x1f80, 0x2000) +[0x4000, 0x4a10) +[0x4a80, 0x4a90) +[0x4b00, 0x4dc0) +[0x4ed0, 0x4f00) +[0x4f40, 0x8c00) +[0x8c00, 0x9beb) diff --git a/star_blazer/star_blazer0_segments.txt b/star_blazer/star_blazer0_segments.txt index 6b7d274..9e2814f 100644 --- a/star_blazer/star_blazer0_segments.txt +++ b/star_blazer/star_blazer0_segments.txt @@ -1,24 +1,3 @@ -# file was constructed from a memory dump after copy protected loader ran -# after loading at 0x0300: -# [0x0300, 0x0303) is jump to crack loader -# [0x0303, 0x0a00) is junk -# [0x0a00, 0x2000) is program -# [0x2000, 0x4000) is hi-res screen 0 which is reused by the crack loader: -# [0x2000, 0x27ed) is end of program which is copied to 0x9600 -# [0x27ed, 0x3200) is junk copied after end of program at 0x9ded -# [0x3200, 0x3c00) is junk copied to end of memory at 0xb600 -# [0x3c00, 0x3f00) is junk copied to start of memory at 0x0000, except: -# [0x3c20, 0x3c22) is vec_start (duplicated in crack loader, not used) -# [0x3c22, 0x3c24) is vec_init_game -# [0x3c24, 0x3c26) is vec_start_game -# [0x3c28, 0x3c2a) is vec_calculate_object_shape -# [0x3c4e, 0x3c50) is vec_draw_misc_from_table -# [0x3e00, 0x3e02) is vec_restart -# [0x3f00, 0x3f79) is crack loader -# [0x3f79, 0x4000) is junk -# [0x4000, 0x8c08) is program -# [0x8c08, 0x8e00) is junk which I think is from the shape editor he used -# [0x8e00, 0x9600) is program [0x0022, 0x0024) # vec_init_game [0x0024, 0x0026) # vec_start_game [0x0028, 0x002a) # vec_calculate_object_shape -- 2.34.1