diff --git a/audio.asm b/audio.asm index 60a47004..8572daaf 100644 --- a/audio.asm +++ b/audio.asm @@ -376,6 +376,7 @@ INCLUDE "crysaudio/music/RBY/meetjessiejames.asm" INCLUDE "crysaudio/music/RBY/digda01.asm" INCLUDE "crysaudio/music/RBY/field06.asm" INCLUDE "crysaudio/music/RBY/victory4.asm" +INCLUDE "crysaudio/music/RBY/kinchou01.asm" SECTION "TCG Songs 1", ROMX diff --git a/constants/map_constants.asm b/constants/map_constants.asm index b008e33c..eebc15ed 100644 --- a/constants/map_constants.asm +++ b/constants/map_constants.asm @@ -272,6 +272,9 @@ DEF FIRST_INDOOR_MAP EQU const_value map_const BATTLE_TENT, 5, 10 ; $FA map_const MT_MOON_SQUARE, 13, 7 ; $FB map_const MT_MOON_SQUARE_HOUSE, 4, 4 ; $FC + map_const CELESTE_HILL_CAVE, 20, 19 ; $FD + map_const CELESTE_HILL_OUTSIDE, 20, 18 ; $FE + map_const BRUNSWICK_GROTTO, 20, 9 ; $FF ; ooo DEF NUM_MAPS EQU const_value ; Indoor maps, such as houses, use this as the Map ID in their exit warps diff --git a/constants/music_constants.asm b/constants/music_constants.asm index b02c08ac..cc6c9aae 100644 --- a/constants/music_constants.asm +++ b/constants/music_constants.asm @@ -60,6 +60,7 @@ const MUSIC_MEET_JESSIE_JAMES const MUSIC_SAKAKI const MUSIC_VICTORY4 + const MUSIC_KINCHOU01 const NUM_SONGS diff --git a/crysaudio/music/RBY/kinchou01.asm b/crysaudio/music/RBY/kinchou01.asm new file mode 100644 index 00000000..b636211a --- /dev/null +++ b/crysaudio/music/RBY/kinchou01.asm @@ -0,0 +1,142 @@ +; +;; Kinchou01 +; +;; Converting on Fri Jul 28 15:34:53 1995 +; +;; by ver 1.02 +; + + + +Music_Kinchou01:: + channel_count 3 + channel 1, Music_Kinchou01_Ch1 + channel 2, Music_Kinchou01_Ch2 + channel 3, Music_Kinchou01_Ch3 + +;;---------------------------------------- +Music_Kinchou01_Ch1: +;;---------------------------------------- + + tempo 144 + volume 7, 7 + duty_cycle 3 + note_type 12, 12, 3 + toggle_perfect_pitch + rest 16 +.loop + rest 16 +;; P1-1 --- tied + rest 16 + rest 10 + octave 3 + note B_, 1 +;; P1-2 --- tied + octave 4 + note F#, 1 +;; P1-3 --- tied + note B_, 1 + rest 1 +;; P1-4 --- tied + note B_, 1 + note A#, 1 +;; P1-5 + note B_, 8 + rest 2 + octave 2 + note B_, 1 + octave 3 + note F#, 1 + note B_, 1 + rest 1 + note B_, 1 + note A#, 1 +;; P1-6 + note B_, 8 + rest 2 + octave 3 + note F#, 1 + note E_, 1 + note D#, 1 + rest 1 + note D#, 1 + note E_, 1 +;; P1-7 + note F#, 1 + rest 1 + note F#, 1 + note A#, 1 + note B_, 1 + rest 1 + note B_, 1 + rest 1 + note G#, 1 + rest 7 +;; P1-8 + note F#, 1 + rest 15 + + sound_loop 0, .loop + +;;---------------------------------------- +Music_Kinchou01_Ch2: +;;---------------------------------------- + +;; P2-1 +.loop + duty_cycle 3 + note_type 12, 12, 2 + octave 3 + note D#, 2 + octave 2 + note B_, 2 + octave 3 + note G_, 2 + octave 2 + note B_, 2 + sound_loop 0, .loop + +;;---------------------------------------- +Music_Kinchou01_Ch3: +;;---------------------------------------- + + note_type 12, 1, 0 +;; P3-1 - + rest 16 +;; P3-2 - +.loop + rest 16 +;; P3-3 + octave 5 + note D#, 8 + rest 2 + note C#, 2 + note D#, 2 + note E_, 2 +;; P3-4 + note F#, 2 + note E_, 2 + note D#, 2 + note C#, 2 + note D#, 8 + rest 2 +;; P3-5 --- tied + note G#, 2 + note F#, 2 + note E_, 2 + note D#, 8 + rest 2 +;; P3-6 --- tied + note F#, 2 + note E_, 2 + note D#, 2 + note D#, 8 + rest 8 +;; P3-7 --- tied + note E_, 1 + rest 7 +;; P3-8 + note D#, 1 + rest 15 + + sound_loop 0, .loop diff --git a/crysaudio/music_pointers_red.asm b/crysaudio/music_pointers_red.asm index 96287343..efe37247 100644 --- a/crysaudio/music_pointers_red.asm +++ b/crysaudio/music_pointers_red.asm @@ -54,3 +54,4 @@ Music: dba Music_MeetJessieJames dba Music_Sakaki dba Music_Victory4 + dba Music_Kinchou01 diff --git a/data/maps/headers/BrunswickGrotto.asm b/data/maps/headers/BrunswickGrotto.asm new file mode 100644 index 00000000..83ffeaa6 --- /dev/null +++ b/data/maps/headers/BrunswickGrotto.asm @@ -0,0 +1,2 @@ + map_header BrunswickGrotto, BRUNSWICK_GROTTO, FOREST, 0 + end_map_header \ No newline at end of file diff --git a/data/maps/headers/CelesteHillCave.asm b/data/maps/headers/CelesteHillCave.asm new file mode 100644 index 00000000..607cdac5 --- /dev/null +++ b/data/maps/headers/CelesteHillCave.asm @@ -0,0 +1,2 @@ + map_header CelesteHillCave, CELESTE_HILL_CAVE, CAVERN, 0 + end_map_header \ No newline at end of file diff --git a/data/maps/headers/CelesteHillOutside.asm b/data/maps/headers/CelesteHillOutside.asm new file mode 100644 index 00000000..3b3769ad --- /dev/null +++ b/data/maps/headers/CelesteHillOutside.asm @@ -0,0 +1,2 @@ + map_header CelesteHillOutside, CELESTE_HILL_OUTSIDE, CELESTE, 0 + end_map_header \ No newline at end of file diff --git a/data/maps/hide_show_data.asm b/data/maps/hide_show_data.asm index e7f90cf5..29be9209 100644 --- a/data/maps/hide_show_data.asm +++ b/data/maps/hide_show_data.asm @@ -255,7 +255,10 @@ MapHSPointers: dw GiovannisRoomHS dw NoHS ; Battle Tent dw NoHS ; Mt Moon Square - DW NoHS ; Mt Moon Square House + dw NoHS ; Mt Moon Square House + dw NoHS ; Celeste Hill Cave + dw NoHS ; Celeste Hill Outside + dw NoHS ; Brunswick Grotto, should have HS Data later. assert_table_length NUM_MAPS dw -1 ; end diff --git a/data/maps/map_header_banks.asm b/data/maps/map_header_banks.asm index bdae2c3b..87f9bae6 100644 --- a/data/maps/map_header_banks.asm +++ b/data/maps/map_header_banks.asm @@ -254,4 +254,7 @@ MapHeaderBanks:: db BANK(BattleTent_h) db BANK(MtMoonSquare_h) db BANK(MtMoonSquareHouse_h) + db BANK(CelesteHillCave_h) + db BANK(CelesteHillOutside_h) + db BANK(BrunswickGrotto_h) assert_table_length NUM_MAPS diff --git a/data/maps/map_header_pointers.asm b/data/maps/map_header_pointers.asm index e3ac44ac..6cf3f514 100644 --- a/data/maps/map_header_pointers.asm +++ b/data/maps/map_header_pointers.asm @@ -254,4 +254,7 @@ MapHeaderPointers:: dw BattleTent_h dw MtMoonSquare_h dw MtMoonSquareHouse_h + dw CelesteHillCave_h + dw CelesteHillOutside_h + dw BrunswickGrotto_h assert_table_length NUM_MAPS diff --git a/data/maps/objects/BrunswickGrotto.asm b/data/maps/objects/BrunswickGrotto.asm new file mode 100644 index 00000000..e2f73a5c --- /dev/null +++ b/data/maps/objects/BrunswickGrotto.asm @@ -0,0 +1,11 @@ +BrunswickGrotto_Object: + db $0 ; border block + + def_warp_events + warp_event 4, 11, 0, REDS_HOUSE_2F + + def_bg_events + + def_object_events + + def_warps_to BRUNSWICK_GROTTO diff --git a/data/maps/objects/CelesteHillCave.asm b/data/maps/objects/CelesteHillCave.asm new file mode 100644 index 00000000..30104472 --- /dev/null +++ b/data/maps/objects/CelesteHillCave.asm @@ -0,0 +1,11 @@ +CelesteHillCave_Object: + db $0 ; border block + + def_warp_events + warp_event 4, 11, 0, REDS_HOUSE_2F + + def_bg_events + + def_object_events + + def_warps_to CELESTE_HILL_CAVE diff --git a/data/maps/objects/CelesteHillOutside.asm b/data/maps/objects/CelesteHillOutside.asm new file mode 100644 index 00000000..60bf0ad3 --- /dev/null +++ b/data/maps/objects/CelesteHillOutside.asm @@ -0,0 +1,11 @@ +CelesteHillOutside_Object: + db $0 ; border block + + def_warp_events + warp_event 4, 11, 0, REDS_HOUSE_2F + + def_bg_events + + def_object_events + + def_warps_to CELESTE_HILL_OUTSIDE diff --git a/data/maps/songs.asm b/data/maps/songs.asm index 434be21a..ff24dad0 100644 --- a/data/maps/songs.asm +++ b/data/maps/songs.asm @@ -253,4 +253,7 @@ MapSongBanks:: db MUSIC_GYM, 0 ; BATTLE_TENT db MUSIC_VICTORY4, 0 ; MT_MOON_SQUARE db MUSIC_VICTORY4, 0 ; MT_MOON_SQUARE_HOUSE + db MUSIC_KINCHOU01, 0 ; CELESTE_HILL_CAVE + db MUSIC_KINCHOU01, 0 ; CELESTE_HILL_OUTSIDE + db MUSIC_DUNGEON2, 0 ; BRUNSWICK_GROTTO assert_table_length NUM_MAPS diff --git a/data/wild/grass_water.asm b/data/wild/grass_water.asm index cf0beed9..49b52e3b 100644 --- a/data/wild/grass_water.asm +++ b/data/wild/grass_water.asm @@ -253,6 +253,9 @@ WildDataPointers: dw NothingWildMons ; battle tent dw NothingWildMons ; mt moon square dw NothingWildMons + dw CelesteHillCaveWildMons + dw CelesteHillWildMons ; using Celeste Hill's summit for Celeste Hill Outside + dw BrunswickGrottoWildMons assert_table_length NUM_MAPS dw -1 ; end @@ -343,3 +346,5 @@ INCLUDE "data/wild/maps/BrunswickTrail.asm" INCLUDE "data/wild/maps/GarnetCavern1F.asm" INCLUDE "data/wild/maps/GarnetCavernB1F.asm" INCLUDE "data/wild/maps/GarnetCavern2F.asm" +INCLUDE "data/wild/maps/CelesteHillCave.asm" +INCLUDE "data/wild/maps/BrunswickGrotto.asm" diff --git a/data/wild/maps/BrunswickGrotto.asm b/data/wild/maps/BrunswickGrotto.asm new file mode 100644 index 00000000..0c71646e --- /dev/null +++ b/data/wild/maps/BrunswickGrotto.asm @@ -0,0 +1,17 @@ +; Another way to obtain Virdian Forest bugs, which are hard to bring up to speed post-game. +BrunswickGrottoWildMons: + def_grass_wildmons 10 ; encounter rate + db 51, BEEDRILL + db 52, BUTTERFREE + db 52, CARAPTHOR + db 51, VENOMOTH + db 53, PARASECT + db 53, PARASECT + db 53, CACTUS + db 54, SCYTHER + db 54, PINSIR + db 55, PINSIR + end_grass_wildmons + + def_water_wildmons 0 ; encounter rate + end_water_wildmons \ No newline at end of file diff --git a/data/wild/maps/CelesteHillCave.asm b/data/wild/maps/CelesteHillCave.asm new file mode 100644 index 00000000..a6dbafd5 --- /dev/null +++ b/data/wild/maps/CelesteHillCave.asm @@ -0,0 +1,18 @@ +; Pretty generic cave, only it contains the Ground-type tradables. +; Vague reference to the iconic wild Steelix. +CelesteHillCaveWildMons: + def_grass_wildmons 10 ; encounter rate + db 51, GRAVELER + db 52, MAROWAK + db 52, GRAVELER + db 51, MAROWAK + db 53, TOEDSCOOL + db 53, RHYDON + db 53, STEELIX + db 54, GOLEM + db 54, RHYPERIOR + db 55, RHYPERIOR + end_grass_wildmons + + def_water_wildmons 0 ; encounter rate + end_water_wildmons \ No newline at end of file diff --git a/maps.asm b/maps.asm index 817f6763..4460332e 100644 --- a/maps.asm +++ b/maps.asm @@ -1387,3 +1387,17 @@ INCLUDE "data/maps/objects/MtMoonSquareHouse.asm" INCLUDE "scripts/MtMoonSquareHouse.asm" MtMoonSquareHouse_Blocks: INCBIN "maps/MtMoonSquareHouse.blk" +INCLUDE "data/maps/headers/CelesteHillCave.asm" +INCLUDE "scripts/CelesteHillCave.asm" +INCLUDE "data/maps/objects/CelesteHillCave.asm" +CelesteHillCave_Blocks: INCBIN "maps/CelesteHillCave.blk" + +INCLUDE "data/maps/headers/CelesteHillOutside.asm" +INCLUDE "scripts/CelesteHillOutside.asm" +INCLUDE "data/maps/objects/CelesteHillOutside.asm" +CelesteHillOutside_Blocks: INCBIN "maps/CelesteHillOutside.blk" + +INCLUDE "data/maps/headers/BrunswickGrotto.asm" +INCLUDE "scripts/BrunswickGrotto.asm" +INCLUDE "data/maps/objects/BrunswickGrotto.asm" +BrunswickGrotto_Blocks: INCBIN "maps/BrunswickGrotto.blk" diff --git a/maps/BrunswickForest.blk b/maps/BrunswickGrotto.blk similarity index 100% rename from maps/BrunswickForest.blk rename to maps/BrunswickGrotto.blk diff --git a/maps/CelesteHillOutside.blk b/maps/CelesteHillOutside.blk index d3c9712f..2c2f8a9c 100644 Binary files a/maps/CelesteHillOutside.blk and b/maps/CelesteHillOutside.blk differ diff --git a/scan_includes.exe.stackdump b/scan_includes.exe.stackdump index 6a9a863d..2d3807bb 100644 --- a/scan_includes.exe.stackdump +++ b/scan_includes.exe.stackdump @@ -1,15 +1,15 @@ Exception: STATUS_ACCESS_VIOLATION at rip=00100401246 -rax=FFFFFFF7FFF8BFA1 rbx=0000000000000D1B rcx=0000000800000010 -rdx=0000000000000000 rsi=0000000800061DCE rdi=0000000000000000 +rax=FFFFFFF7FFF8BD51 rbx=0000000000000072 rcx=0000000800000010 +rdx=0000000000000000 rsi=00000008000640E6 rdi=0000000000000000 r8 =00000000FFFFC7C4 r9 =0000000000000000 r10=0000000100000000 -r11=0000000100401282 r12=0000000800074060 r13=0000000100403148 +r11=0000000100401282 r12=00000008000742B0 r13=0000000100403148 r14=0000000000000000 r15=0000000000000001 rbp=0000000100403156 rsp=00000000FFFFCA60 -program=C:\cygwin64\home\chipp\kep-hack\tools\scan_includes.exe, pid 1116, thread main +program=C:\cygwin64\home\chipp\kep-hack\tools\scan_includes.exe, pid 1332, thread main cs=0033 ds=002B es=002B fs=0053 gs=002B ss=002B Stack trace: Frame Function Args -00100403156 00100401246 (00800061DCE, 00000000022, 00100403166, 000FFFFCB90) +00100403156 00100401246 (008000640E6, 00000000022, 00100403166, 000FFFFCB90) 00100403156 00100401409 (00000000000, 00100000001, 00180227860, 00100407000) 00100403178 00100401C87 (00000000020, 00000000000, 00180049B11, 00180048A70) 000FFFFCD30 00180049B7D (00000000000, 00000000000, 00000000000, 00000000000) diff --git a/scripts/BrunswickGrotto.asm b/scripts/BrunswickGrotto.asm new file mode 100644 index 00000000..a978ee74 --- /dev/null +++ b/scripts/BrunswickGrotto.asm @@ -0,0 +1,6 @@ +BrunswickGrotto_Script: + jp EnableAutoTextBoxDrawing + +BrunswickGrotto_TextPointers: + + text_end ; unused \ No newline at end of file diff --git a/scripts/CelesteHillCave.asm b/scripts/CelesteHillCave.asm new file mode 100644 index 00000000..c309034e --- /dev/null +++ b/scripts/CelesteHillCave.asm @@ -0,0 +1,6 @@ +CelesteHillCave_Script: + jp EnableAutoTextBoxDrawing + +CelesteHillCave_TextPointers: + + text_end ; unused diff --git a/scripts/CelesteHillOutside.asm b/scripts/CelesteHillOutside.asm new file mode 100644 index 00000000..227ad91c --- /dev/null +++ b/scripts/CelesteHillOutside.asm @@ -0,0 +1,6 @@ +CelesteHillOutside_Script: + jp EnableAutoTextBoxDrawing + +CelesteHillOutside_TextPointers: + + text_end ; unused \ No newline at end of file