Commit Graph

27 Commits

Author SHA1 Message Date
cassidoxa
69fd6015e6 Some more annotations 2022-11-25 01:08:07 -05:00
cassidoxa
524a27d680 Merge branch 'master' into quickswap 2022-11-24 19:05:24 -05:00
cassidoxa
7426ce5945 More RAM labels
Fixed tablets checking for item collected, uses NpcFlags+1
Deleted mantle.asm, moved to lampmantlecone.asm
2022-11-24 18:34:35 -05:00
cassidoxa
09d15f3294 Another WRAM label pass
Deleted compression.asm
2022-11-22 00:36:39 -05:00
cassidoxa
788cceaab9 Continue labeling and documentation in ram.asm, main rando block
Deleted several unused modules and some commented code
Reorganized some routines to clean up modules
Moved some memory into mirrored WRAM
Refactored NMI hook aux routine
Removed old fake flipper fix
2022-11-16 21:38:28 -05:00
cassidoxa
43f753b517 ram.asm initial commit. Replaced all address defines with labels
Value defines styled without quotes, # moved to load/store/cmp site
Added registers.asm (copied from spannerisms JP disassembly)
Added a bunch of length annotations
Deleted old or trivial commented out code
Deleted: ganonfixes.asm, map.asm, seedtag.asm
Replaced obsolete credits.asm with creditsnew.asm
Moved scratch space at $7F5020-3F to mirrored WRAM (7E1E70-8F)
Moved clock RAM to mirrored WRAM (7E1E90-9F)
dialog.asm: FreeDungeonItemNotice preserves callee-preserved scratch RAM
Toast buffer moved to mirrored WRAM (7E1E0E-0F)
servicerequest.asm: long store to $012E converted to word length store
2022-11-05 00:50:25 -04:00
cassidoxa
6b2e7a5c34 Fix check for Tower of Hera boss defeated
Improve room data documentation
2022-10-25 22:38:19 -04:00
cassidoxa
3e2362b7ca Implement initial SRAM table
Data in initialsramtable.asm gets copied to SRAM on save file init
Frontend will be responsible for setting this, requires frontend changes
Changed some label names to disambiguate WRAM and SRAM labels
Deleted open mode
2022-02-03 20:25:32 -05:00
cassidoxa
b91ac58b47 Merge branch 'master' into sram 2022-01-20 11:16:31 -05:00
Catobat
f3d1e99421 Fix Tower of Hera boss music bug 2022-01-19 19:52:01 +01:00
cassidy
fa76b61df0 Change addresses to labels and remove SRAM trace calls 2021-12-16 17:19:54 -05:00
cassidy
e4d917c47c First pass-through adding labels
Added items, equipment, and tracking/indicators
Added playername changes
Removed some defines
2021-12-16 17:19:54 -05:00
qwertymodo
aa30da01f9 Fix dark woods and mountain music w/7 crystals 2020-06-06 18:01:27 -07:00
qwertymodo
6259a813b1 Fix title screen delay (bass version) 2020-06-06 18:01:27 -07:00
qwertymodo
dd6fd2576f Fix endgame dark woods music 2019-10-12 13:04:45 -07:00
qwertymodo
bb2fdc8041 Overworld ambient SFX fixes 2019-10-12 13:04:45 -07:00
qwertymodo
0c032c7d06 Fix post-Aga1 Kakariko music 2019-10-12 13:04:45 -07:00
qwertymodo
5b307e421c Add new N-SPC commands FA (mute) and FB (unmute) 2019-10-12 13:04:45 -07:00
qwertymodo
569722dc3c Always play track 7 in Kakariko, regardless of game phase 2019-09-06 14:46:29 -07:00
qwertymodo
78bb832b67 Fix lost woods music when mirroring 2019-09-06 14:45:41 -07:00
qwertymodo
9cf065271c Fix bunny music for non-inverted DM 2019-08-28 10:25:05 -07:00
qwertymodo
a75926b9e6 Fix inverted mode flute loading light world music 2019-08-21 19:05:02 -07:00
qwertymodo
bf49cde0ea Change dark woods to track 15 2019-08-21 19:05:02 -07:00
qwertymodo
80bc569279 Fix inverted bunny music 2019-08-21 19:05:02 -07:00
Kevin Cathcart
a94e0e8012 Fixes for Tagalongs for ER
Fixes various tagalong issues that affect Entrance Randomizer, most
involving frog/blacksmith
2018-02-23 19:57:11 -05:00
Kevin Cathcart
55473a4d01 GT in Kakariko music fix
This fixes music stopping partway up GT when
the player encounters a "PsychoSoldier" (MathOnNapkin's name). Both types
of this sprite sharethe same audio code. They have code to play special
music if chasing link in Kakariko. That is fine in vanilla or item
rando, but if they try to play this music in a dungeon located in
kakariko, this will cause the music to just stop, because that song is
not avaiulable in the dungeon music bank.

This patch fixes this by adding an extra check to make sure we are in
the overworld before playing this song.
2018-01-20 11:21:00 -05:00
Kevin Cathcart
bf2b119748 Fix music in Entrance Randomizer
This commit fixes the wrong music when leaving certain caves bug in
Entrance Randomizer.

The vanilla games decides what music to play when re-entering the
overworld in code in `PreOverworld_LoadProperties`. One of the main
things the game uses to decide the correct music is the overworld screen
being loaded. Obviously that is ideal. But it also sometimes bases its
decision on the underworld screen you are leaving.

Why would they do that? Well some screens can be re-entered from
houses/etc that play at half volume. Nintendo did not want to have the
music restart from the begining when leaving those locations, so they
explictly coded the non-half-volume locations to set the music for that
screen, and let the half music volume cases fall though, and get handled
by a special case later in the process.

There is a better apporach though. Simply determine what music should be
playing for this overworld screen, looking only at the overwold screen
index. Then see if "half-volume music" is the last played song command.
If so, check what the actual song playing is. If it matches song for the
overworld screen we are entering, then play the full volume command.
Otherwise play the song for the screen we are entering (which by virtue
of being a new song will always play full volume).

This patch implements that better approach. It basically moves the music
selection code from `PreOverworld_LoadProperties` into the custom code
bank, removes the checks for specific underworld locations, and makes
sure the last bit of code run before actually setting the music is the
one to handle half music, as described above.
2018-01-20 11:20:59 -05:00