#152696 - melw - Wed Mar 19, 2008 8:21 pm
So, today I got myself a copy of Zelda Twilight Princess, installed devkitPPC and compiled the "Hello World" template. While these forums have been extremely useful with getting started with GBA and DS development, I wonder if there's anything similar available for Wii? From Google I found gcdev.com forums, which have lots of Gamecube talk - I guess this is the closest one to the subject there is, or not?
Is anyone else over here trying out Wii development right now? Would be nice to hear about your experiences and tips on how to get started.
#152717 - josath - Thu Mar 20, 2008 12:31 am
i've found so far the wiibrew.org wiki, and #wiidev on irc.blitzed.org. But wii homebrew is still very very new, nobody has written (non-horrible-hacky) wiimote support yet :(
#152720 - Kojote - Thu Mar 20, 2008 1:56 am
afaik wiibrew.org is the only reliable source for now.
i've also started a wii section at pdroms
news: http://pdroms.de/news/wii/
files: http://pdroms.de/files/wii/
i think so far only one game is missing, "ballion" i think... i might add it then the "wii" homebrew archive should be pretty complete for now.
_________________
Kojote
PDRoms - Retroguru - Giana's Return - Speckdrumm
#152737 - melw - Thu Mar 20, 2008 8:30 am
Hmm, also I missed previously the fact wiibrew.org has also forums. I guess I'll need to start wasting my time hanging on irc for a change...
Went through some Gamecube examples last night, GX seems easy enough to start with and it's nice that everything seems to work also on Wii. Just rebooting the console, loading Zelda and the gamesave every time is really painful, but I couldn't find yet how to reboot the elf-file from the SD card.
EDIT: Thanks to #wiidev:
Code: |
typedef void (*entry)(void);
entry reboot = (entry)0x80001800;
// simply call this to reboot and reload boot.elf from the front SD slot
reboot(); |
#152792 - dantheman - Thu Mar 20, 2008 10:33 pm
Weren't hackers successful in creating a "homebrew channel" so you don't have to load Twilight Princess every time anymore? I'll admit I have not been following up on the Wii homebrew scene very much at all, but I was under the impression that this "homebrew channel" acted very much like FlashMe in that the Zelda gamesave (the PassMe) is required to make the channel but is not needed after that point.
#152827 - melw - Fri Mar 21, 2008 8:40 am
Currently there's no public release of the homebrew channel, and it still requires Zelda to start. What I was after is simply faster development cycle, not going through any system menus, just pressing a button and reloading the code from the SD card.
#152876 - yellowstar - Sat Mar 22, 2008 1:54 am
melw wrote: |
Currently there's no public release of the homebrew channel, and it still requires Zelda to start. What I was after is simply faster development cycle, not going through any system menus, just pressing a button and reloading the code from the SD card. |
I don't think it will always need Zelda. Notice the Channels button in the video when he goes to the Data Managment section. I haven't checked this yet on the Wii I have access to, yet.
#152882 - tepples - Sat Mar 22, 2008 3:05 am
So Twilight Hack is a form of SaveMii. So how long do you guess it will be before Nintendo issues a new revision of Twilight Princess that includes proper bounds checking, just as MechAssault and GTA:LCS were updated when hackers used corrupt saves as tools to hack the console? Or before Nintendo issues a new revision of Wii firmware that detects and rejects Twilight Hack saves, as Sony did with PSP firmware 2.01 (plugging GTA:LCS) and PSP firmware 3.51 (plugging Lumines)?
Meow. Squeak.
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.
#152935 - yellowstar - Sat Mar 22, 2008 11:33 pm
It seems they just did...
(Nothing about what it does on Wiibrew, ect, at the time of writing this)
#152936 - Rajveer - Sat Mar 22, 2008 11:45 pm
People on some forums say that the Twilight exploit still works with the new 3.3 firmware (don't hold me responsible though).
EDIT: A new Wii System Update has been released, containing a new version of the firmware (IOS37) with a fix for the signing bug.
http://wiibrew.org/index.php?title=IOS37
#152946 - yellowstar - Sun Mar 23, 2008 4:29 am
Wiibrew wrote: |
On March 21st, Nintendo added a new version of the Wii firmware -- IOS37 -- to the Wii update servers. This version of the firmware has a fixed signature-checking function.
When a title (game, channel, etc) starts, it tells the system menu (using a field in the TMD) what version of the IOS it needs to run on -- to support this, the Wii stores all previous firmware versions. (For most Wiis, this will be IOS9, IOS11, IOS13, IOS15, IOS17, IOS20, IOS21, IOS30, IOS31, IOS33, IOS34, IOS35, IOS36, and now IOS37).
As of March 22nd, no software uses IOS37 -- the System Menu currently uses IOS30. An updated System Menu will likely use the new IOS37.
What does this mean?
* Until the system menu is updated to use IOS37, it will have no effect.
* Once the system menu is updated to use IOS37, "Trucha-Signed" discs -- or channels -- will stop working, as will the Freeloader disc.
* At that point, "homebrew channels" would be considered "invalid" by the system. The consequences of this are unclear, but that could potentially prevent the Wii from booting.
* Other versions of IOS are not affected.
|
That says there's a field in the titles, to tell the IOS which version to run. But, after that, it states that when the system menu is updated, the homebrew channels will be invalid. How can they be invalid if they attempt to tell the IOS to use a version without the bug fix?(Or wouldn't the system care about that field, and only use the latest IOS version, which would invalidate hb, in the future?)
Other than this signature bugfix, does anything really change in the IOS signature-verification between versions? So, would a channel with that field set for a newer IOS, work with our old IOS version?
They say the Zelda hack is unaffected. So, this update only affects the homebrew channel(s).
#152949 - Rajveer - Sun Mar 23, 2008 5:11 am
yellowstar wrote: |
That says there's a field in the titles, to tell the IOS which version to run. But, after that, it states that when the system menu is updated, the homebrew channels will be invalid. How can they be invalid if they attempt to tell the IOS to use a version without the bug fix?(Or wouldn't the system care about that field, and only use the latest IOS version, which would invalidate hb, in the future?) |
When the system menu is updated later on it won't be attempting to load an older firmware, it will have the newest firmware stored in the field in it's title. Just like at the moment, the current system menu has the older firmware in it's field and doesn't use the newest firmware. I think!
Does this mean that since the Twilight Princess disc has the older firmware stored in it's title and is always loaded with it, that the Twilight Hack won't be stopped? (By newer firmware anyways)
#152960 - pepsiman - Sun Mar 23, 2008 12:07 pm
[quote="yellowstar"] Wiibrew wrote: |
But, after that, it states that when the system menu is updated, the homebrew channels will be invalid. How can they be invalid if they attempt to tell the IOS to use a version without the bug fix? |
If the system menu checks the signature on a homebrew channel using IOS37 then it will notice that the signature is invalid.
The system menu will check that the signature is valid before switching to the IOS used by the channel.
The signature verification done when installing a new IOS version has the same bug, so it is theoretically possible to install a modified IOS37 that still has the bug.
#153197 - HyperHacker - Wed Mar 26, 2008 7:32 am
The signing bug and the Zelda exploit are two different things, in case that's not clear. The signing bug is easily fixed by an update. The Zelda exploit can be fixed on newer discs, but retroactively fixing it on older ones would require the firmware to either block the hacked saves or patch the game in memory.
_________________
I'm a PSP hacker now, but I still <3 DS.
#153203 - wintermute - Wed Mar 26, 2008 10:03 am
melw wrote: |
EDIT: Thanks to #wiidev:
Code: | typedef void (*entry)(void);
entry reboot = (entry)0x80001800;
// simply call this to reboot and reload boot.elf from the front SD slot
reboot(); |
|
actually no, what you really want is exit(0); This is currently dependent on current CVS libogc but will be shifted into stable fairly soon.
_________________
devkitPro - professional toolchains at amateur prices
devkitPro IRC support
Personal Blog
#153223 - melw - Wed Mar 26, 2008 4:55 pm
wintermute wrote: |
actually no, what you really want is exit(0); This is currently dependent on current CVS libogc but will be shifted into stable fairly soon. |
Good to know, thanks!
A small WIP teaser (still using straight DS resolution and graphics, and tons of things like network support left to do)