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

Make the neutered version of HBC work in Dolphin #4468

Merged
merged 5 commits into from
Nov 30, 2016

Conversation

marcan
Copy link
Contributor

@marcan marcan commented Nov 22, 2016

HBC has anti-Dolphin code, but even without that it fails to run. Fix those problems:

  • Wii ELF detection breakage on ELFs without sections
  • NAND boot should ignore entrypoint and start at 0x3400
  • Enable secondary BATs in Wii mode by default

This change is Reviewable

@delroth
Copy link
Member

delroth commented Nov 24, 2016

@JMC47 can you indicate whether this passes basic testing? (booting from WAD, from system menu, ES_Launch, ... w/ and without IPL)

If it does LGTM and feel free to merge (or remind me to do so).

@booto
Copy link
Contributor

booto commented Nov 26, 2016

:lgtm:


Reviewed 5 of 5 files at r1.
Review status: all files reviewed at latest revision, all discussions resolved.


Comments from Reviewable

@Fallcrest
Copy link

Very interesting. Does this fix any other known issues?

@JMC47
Copy link
Contributor

JMC47 commented Nov 26, 2016 via email

@marcan
Copy link
Contributor Author

marcan commented Nov 26, 2016 via email

@JMC47
Copy link
Contributor

JMC47 commented Nov 26, 2016

I'm on windows so I'm not exactly sure if I can build it myself. I can try it out on my linux box later but, that usually ends up poorly.

@MayImilae
Copy link
Contributor

What's the status of this? Simply waiting for some more testing? This would be a good one for the progress report...

@JMC47
Copy link
Contributor

JMC47 commented Nov 30, 2016

I did get this working to a degree, but, I can't get it to actually boot any homebrew. It just hangs.

NAND titles are always started at address 0x3400 with translation off.
The entrypoint in the DOL is ignored.
When booting "cooked" executables, BATs should already be set up and
enabled. They should only really be disabled when booting NAND contents
in real mode.
@marcan
Copy link
Contributor Author

marcan commented Nov 30, 2016

Rebased and added another commit to fix the issues launching homebrew.

It's questionable whether ES_LAUNCH should write *anything* to the
command structure at all, ever, given that it never actually returns
it back through the mailbox. But it *definitely* shouldn't write
anything to it if it has just launched a DOL, because otherwise it might
clobber code/data from the just-loaded application.
@JMC47
Copy link
Contributor

JMC47 commented Nov 30, 2016

@dolphin-emu-bot rebuild

@JMC47
Copy link
Contributor

JMC47 commented Nov 30, 2016

I can confirm this now passes basic testing. Probably requires the USB pull request for full functionality. When combined we can do almost everything that console can do. Bootmii doens't work, but, that'd require starletLLE.

@Helios747
Copy link
Contributor

Good enough for me.

Also JMC wants this merged so

@Helios747 Helios747 merged commit a3d2dea into dolphin-emu:master Nov 30, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

7 participants