Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Hello Kitty Collection - Miracle Fashion Maker (Japan) black screen #1320

Closed
benderscruffy opened this issue Feb 23, 2019 · 7 comments
Closed

Hello Kitty Collection - Miracle Fashion Maker (Japan) black screen #1320

benderscruffy opened this issue Feb 23, 2019 · 7 comments

Comments

@benderscruffy
Copy link

@benderscruffy benderscruffy commented Feb 23, 2019

using 0.7.0
nothing but a black screen

@endrift
Copy link
Member

@endrift endrift commented Feb 23, 2019

Old bug, never looked into it too deeply.

@endrift endrift added this to the mGBA 0.8.0 milestone Feb 23, 2019
@endrift
Copy link
Member

@endrift endrift commented Feb 24, 2019

Doesn't boot in any emulator. Does work on hardware though. This appears to have a similar root cause to #301 where it's reading a value from RAM and expecting it to be non-zero but it never sets it.

@endrift
Copy link
Member

@endrift endrift commented Apr 29, 2019

Looks like the RAM address (0x0200002C) gets initialized (to 0x02000140) right after the function that dies gets called. Confirmed that it gets to 0x080427AA on hardware, so it's not initialized properly on hardware yet I don't think, but for some reason it managed to break out of the loop on invalid RAM it gets into (it looks like it's trying to crawl a linked list, but the linked list is all invalid memory).

@endrift endrift modified the milestones: mGBA 0.8.0, mGBA 0.9.0 Oct 5, 2019
@endrift endrift closed this Jan 25, 2020
@endrift
Copy link
Member

@endrift endrift commented Jan 25, 2020

Fixed in 93633ea.

@michelhe
Copy link

@michelhe michelhe commented Jan 27, 2020

Hey @endrift
I've read the blog post you made about this issue, thank you for the wonderful read! 👍
I myself toy with developing a GBA emulator in rust, and this game is booting successfully for me.
I suppose its due to that I'm not implementing the "open bus" behavior at all, I just return 0 for invalid memory region accesses, or mask out invalid address bits if the region is correct.
When I move on to implement open-bus, I will sure take into account the DMA lingering on the bus 😄

@endrift
Copy link
Member

@endrift endrift commented Jan 27, 2020

If you're wondering why Minish Cap hangs when you leave the house at the beginning of the game, that's because you don't have open bus emulated

@michelhe
Copy link

@michelhe michelhe commented Jan 27, 2020

Sadly I did not get to experience that because I don't emulate EEPROM saves , but I will get there soon enough.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
3 participants