ref: 8995d8ad4f5f496f5abca5b971974ba35a142a2d
parent: 96fd9d9faee95acbec5f2f00fa7191faf99697ba
author: Snesrev <snesrev@protonmail.com>
date: Thu Sep 29 21:31:40 EDT 2022
Fix gfx glitch with lanmolas in misery mire (#126)
--- a/sprite_main.c
+++ b/sprite_main.c
@@ -15436,9 +15436,15 @@
}
void SpritePrep_Swamola_InitializeSegments(int k) { // 9d9c80
- static const uint8 kBuggySwamolaLookup[6] = { 0x1c, 0xa9, 0x03, 0x9d, 0x90, 0x0d }; // wrong bank
- //int j = k * 32;
- int j = kBuggySwamolaLookup[k];
+ int j;
+
+ // The snes code uses the wrong bank.. Causes glitches with lanmolas in misery mire
+ if (enhanced_features0 & kFeatures0_MiscBugFixes) {
+ j = k * 32;
+ } else {
+ static const uint8 kBuggySwamolaLookup[6] = { 0x1c, 0xa9, 0x03, 0x9d, 0x90, 0x0d }; // wrong bank
+ j = kBuggySwamolaLookup[k];
+ }
for (int i = 0; i < 32; i++, j++) {
swamola_x_lo[j] = sprite_x_lo[k];
swamola_x_hi[j] = sprite_x_hi[k];