State of the Wii 6th of March 2008 Rather than bury it in a staff forum I am posting this in the testing area as I figured I would get peoples opinions/suggestions before finishing it up and going live (that and it is rather rapidly approaching 1am). I would not really suggest you use it if you are completely new to this (ironically I would suggest you look at the existing posts and tutorials despite this aiming to prevent the need for that) but if you have be following it a little bit you should be OK. Most of you are probably aware of the fact there have been a lot of happenings in the Wii hacking community over the last couple of weeks. This newspost attempts to distil this down into a quick summary and bypass all the junk that got mixed up in it. Topics covered Wii homebrew -Twilight exploit and ELF loader. -Initial homebrew Where to now. Wii iso signing/decryption and things that have come from it. Compressible isos Initial hacks “Region free”. Topics not covered Wii chips – the current iteration has effectively reached its zenith with the next ones expected to counteract firmware updates. Included in this is dual layer discussion of games such as Smash brothers. Wii games and the state thereof – Refer to Hadrian's release threads ( http://gbatemp.net/index.php?showtopic=76835 ) and the release topics for this one. Longstanding wii hacks/techniques- namely gamecube homebrew, dumping wii games, multi GC iso discs...... This has all been covered in more depth than is possible here and is not buried by requests, theories and tests like the new developments are. In all likelihood this post will be outdated within the week if current speed of development is anything to go by but it should help people who decided work/family/personal hygiene/food was more important and consequently missed it all. Wii homebrew. In some regards this has been overshadowed by the wii signing developments below but it is still of the utmost importance. First things first: the good news. It is possible do this without modding your wii, you only need a copy of the Wii version of Legend of Zelda Twilight Princess (if you have a chipped wii you can use a copy too) and an SD card to transfer some data although you also realistically need a gamecube memory card to SD adapter (or USBgecko) and a gamecube controller to get anything from it. You can make a SD adapter (guide from longstanding GBAtemp member scorpei): http://ngc.scorpei.com/GUIDE-SD_adapter.html or you can buy one from a large number of online shops for about $15/€15 shipped. The USB Gecko is a new device with some interesting new features, scorpei has a review for those who are interested http://wii.scorpei.com/usbgecko.html The theory Recently save games were deciphered and consequently able to be edited. You have a horse in Zelda called Epona, the hack changes Epona for a longer name which causes the game to error out (stack smash for those wanting technical terms). This initially just makes the game crash but it also has the ability to inject your own code. A short while later an ELF loader was released. For the unaware ELF is a widely used, documented and accepted standard for making programs (other notable formats include COM (old DOS programs Portable executable (mainly exe) and XBE for the original xbox. The document is very old but serves as a good introduction for the curious: http://www.ibiblio.org/pub/historic-linux/...docs/ELF-HOWTO). More information and a basic setup guide can be found on wiibrew. http://wiibrew.org/index.php?title=Twilight_Hack To use it requires files be placed at certain points on the SD card which can pose a problem for some so there are a couple of tools designed to do it. What has been done. There have been a fair few tech demos which will be mentioned at the end of this section but the main interest comes from three points: the SNES emulator http://gbatemp.net/index.php?showtopic=76374 the megadrive/genesis emulator http://gbatemp.net/index.php?showtopic=77094 the linux port. Linux is a computer kernel (the kernel is the core of the software for a computer) that has been ported to most processor types in existence (it is used on many things ranging from TVs to mobile phones and even the DS has a port). Linux however is just a kernel and does not do much by itself so people bundle stuff with it designed to perform certain tasks. Being open source and fairly well documented it can be modified into near enough any computer tool that is required and it has been ( http://distrowatch.com/ , for the most part though people refer to so called desktop linux where the aim is to create an environment for people to write documents, surf the internet, look at pictures.........) the collection of programs/tools is known as distribution or frequently by the slang term distro. This is where this comes in, many notable gamecube homebrew applications like GCOS and the mplayer port use the linux kernel as base and work from there. By getting linux to run on the wii it becomes much easier to make and port applications to run on the wii. http://www.gc-linux.org/wiki/Main_Page Other homebrew noted homebrew author emu kidid released an mp3 player. .. .. Section on tech demos. .. .. .. Dol to elf converter Not flawless but can get old cube homebrew running via this exploit. http://gbatemp.net/index.php?showtopic=76445 Tehskeen has good info here http://www.tehskeen.com/modules.php?name=News http://www.tehskeen.com/modules.php?name=N...desc&page=2 http://www.tehskeen.com/modules.php?name=N...desc&page=3 http://www.tehskeen.com/modules.php?name=N...desc&page=4 Wiibrew too http://wiibrew.org/index.php?title=Main_Page The future: most homebrew developers for the gamecube use the devkitpro subset devkitppc/libogc. The most recent version (released on the 29th of February) v14 added Wii support although only preliminary support: no wii remote, no wii hardware that was not on the gamecube such as the wifi and SD slot. Devkitpro site: http://www.devkitpro.org/ Devkitppc release news: http://www.devkitpro.org/devkitpro/devkitp...se-14-is-final/ Part2: Wii signing/ iso decryption. The section that will probably form the bulk of this post. You need a modded wii for this In mid January a tool was released to decrypt wii isos and followed up by a few more. http://gbatemp.net/index.php?showtopic=72013&st=0 While some work was done then it was not of much use for people other than spriters and the curious as you could not run any alterations. GBAtemp member Dack had a theory though. The already decrypted isos only contained files that totalled anywhere from a few tens of megabytes right up to a few gigabytes, still far short of the full (single layer) DVDs that had been used since the start of wii backups though. It turned out the most of the time the junk data in between was filled with random garbage which did not compress (rare cases such as puzzle quest did not have this and do compress nicely), the new decryption stuff could be used to predict this garbage and work around it (in this case by overwriting it with easily compressed sections that the wii does not read) http://gbatemp.net/index.php?showtopic=75227&st=0 An application called Wii scrubber was released to allow anyone to do it for their isos with some impressive results. IMPORTANT There is still some debate as to whether this works with the Trucha signer below so if you plan on using it do not scrub your isos unless you can restore them. The Trucha signer Several months back at a conference a wii hack was unveiled, it used a key that the developers had stored in the memory of the wii which was quickly read and used to allow native homebrew (native= code running using the hardware of the system, not a cut down version i.e. Gamecube homwbrew or a scripting language: the web browser homebrew). This was not released though beyond video stage, enough information was released for the technique to be replicated and thus was born the Trucha signer. In short it allows you to remove and reinsert (modified) files into Wii isos and comes with a nice GUI to aid you in this. IBNobody wrote a nice guide to getting it set up and the basics of operation (check the downloads section as some of the files are in it) http://gbatemp.net/index.php?showtopic=76657&st=0 Along come the hackers. The basic premise of hacking is that the string of 1's and 0's represents something, if you can figure out what it is that a particular section of 1's and 0's does (and now thanks to this signer run it) you can change what the game does. The developers in many cases were rather nice leaving big clues to the meaning of code sections and using well known and well documented methods of data encoding/storage: http://gbatemp.net/index.php?showtopic=72013&st=0 For more on rom hacking have a read of the rom hacking documentation project and the threads in the DS rom hacking section. http://gbatemp.net/index.php?showtopic=73394 This site is not bad either although it is geared towards PCs: http://www.acm.uiuc.edu/sigmil/RevEng/index.html This has led to several hacks and advancements in a very short space of time. Thanks Costello, initial list, there have been a few left out: http://gbatemp.net/index.php?showtopic=76765 Enable gore in Manhunt 2 (source) - Disable the drivecheck in Super Mario Galaxy (source) - Change the credits and increase characters speed in Mario Strikers (source) - Play Manhunt 2 in Italian or German (source) - Swap character's movesets in SSBB (source) - Boot SSBB without 15% trick or dual channels (source) - Boot SSBB on a single layer disc (source) multiple versions here - Remove Error 001 in SSBB (source) - Invincibility in Manhunt 2 (source) - Nitrobike hack, NTSC only (source) - Guitar Hero III customization (source) region free/video setting: (also mention datel's offering?) http://gbatemp.net/index.php?showtopic=77354&hl= main discussion thread: http://gbatemp.net/index.php?showtopic=76509 Edit: Other than finish it I reckon I will update my section on rom patching from my original rom hacking docs and add it in. PPF, BSDiff, xdelta and some form of batch file to pull off the hacks will likely be needed as well as a list of frontends/ports for another os if available.