Unofficial Homebrew Channel For the Wii
marcan writes "The Homebrew Channel is a tool that can be installed on any Wii (no hardware mods required) that lets you run unsigned homebrew software from an SD card, or upload executables via WiFi or a USBGecko. We've tried to make it friendly for users with a simple GUI, and powerful for developers with direct upload features and reloading which we hope will make testing less painful. The channel can be installed using a DVD if you have a modchip, or using an exploit in Zelda: Twilight Princess which only requires an SD card (or any future hack or booting method). Once installed, it simply shows up as a Channel on the Wii Menu, just like any official channel. Hopefully, this and other recent developments (such as the upcoming devkitPPC r15 toolchain, much improved and with many bugs fixed) will help make the Wii an appealing platform for DIY software. And yes, it also runs Linux."
Anyone else read that as Hebrew channel? Go on and mod me down you schlemiel's. I got first post already.
I will have a sig when the market demands it.
How does this help me brew my own beer???
-- "In order to have power, I must be taken seriously." -Mojo Jojo
Finally the Wii is becoming the awesome system it should have been from the start... with products like this that should have been available long ago.
Meh.
And so it begins, watch as the Wii goes the way of the Dreamcast due to "no hardware mods needed" to run unsigned software.
No, I'm not being negative. This is just how consoles seem to die off quickly. You know, when the business model breaks down due to a large number of console sales (usually a loss) and a low number of game purchases due to them being free on P2P or usenet.
That's just an SD Gecko. It has no internal memory, it's just a way of plugging in an SD card into a memory card slot - the description is a lie. It was rather useful in the GC days, but was superseded by the internal SD slot on the Wii once we added support for it. The internal memory is not "expandable" like this.
Installed it this morning and it's very polished, looks and feels like a real Nintendo made channel. A few bits and pieces aren't fully there (no vibration when going over buttons) but it's really well done overall, and has auto-update support and loads .elfs over LAN. Also, Team Twiizers is pretty sure that it's safe currently, and they're working on a fix for bricked Wiis. They've already got a fix for semi-bricked Wiis, which is pretty cool. If you want to read up on some of the background of Wii hacking, check out their site: http://hackmii.com/
All your base are belong to Wii.
Unofficial homebrew!?! Why I never!
The website he linked to is a joke (whether the op is aware of this I do not know) but try clicking the buy this now link
Already the Nintendo Wii is home to emulators for Snes, GBA, GBC, Nintendo 64, MAME, Nes, Genesis, Master System, Game Gear and more With the homebrew channel it makes the system even better. Lets hope piracy doesnt ruin a great homebrew scene. For those interested in emulators be sure to check out Wii News http://wii-news.dcemu.co.uk/
I would hate as much as the next guy to see pirates (yeah, yeah, I know there are folks out there who just want to code 2D Tetris to work on your Wii... and there are about 10,000 pirates for every one of you, who want to play first-party Nintendo games for free) take down an IP producer I liked.
That being said, it isn't going to happen to Nintendo: they are largely pitching the console at folks who both don't pirate games and wouldn't know how to if they did (targetting customers who enjoy paying money for your product -- a novel concept!). They've sold a bazillion units -- and every one at a profit, thank you very much. They can update the firmware to remove this channel and the exploit any time you put in a first-party disk, and with the Nintendo model they can be reasonably certain that any console which is turned on in 2008 will play one of the next three Big Series releases from Nintendo. They have caused a resurgence in interest in alternate peripherals (credit also to Guitar Hero), which means that just stealing the game itself doesn't get you all of the fun. They have a very friendly online purchasing experience for many old games, which makes it less appealing to use the system as an SNES emulator (a very popular "homebrew" application in my experience).
So I'm not worried about Nintendo. Good thing, too, as I own stock in them.
Help poke pirates in the eyepatch, arr.
I'm amazed every time I see these Wii homebrew projects. As an actual DS/Wii developer I see the time that is involved setting up our official development environment and can't believe how dedicated the homebrew community is.
Those who know, do not speak. Those who speak, do not know. ~Lao Tzu
They don't seem very worried either. Virtual Console piracy is relatively popular recently, due to several massive flaws in their DRM, which also happen to enable our homebrew software (in part). They've had a fixed piece of security software install itself as part of the newest update, but they haven't flipped the right bit to enable it yet. It's been a long while. The big bug? A terribly, horribly, completely broken RSA implementation with an effective security of 8 bits - because they used strcmp() instead of memcmp() when testing signatures!
As for us, we'll still be able to run homebrew after they fix the security software. There are plenty of other bugs that we can use (most of which are not public yet, so chances are Nintendo doesn't know about them), and most do not enable VC piracy as directly as the one major bug that they "fixed".
PS3 is also designed to be able to boot Linux out-of-the-box. But the PS3 doesn't seem to be tanking because of it.
The first Playstation was one of the most widely pirated console. Yet, it was also one of the most successful.
After the first couple of years, emulation of the Gameboy was widely available. During the life-time of GameBoy Pocket, Light and Color. Emulation has been available in parallel, with a flourishing underground traffic of roms, yet you can't call the GameBoy "not successful". You know, when the business model breaks down due to a large number of console sales (usually a loss) and a low number of game purchases due to them being free on P2P or usenet. I disagree. First, few hardware maker actually sell consoles at a loss (even if they have smaller margins on the hardware compared to the software).
In the case of Dreamcast, how much of friend do you know how only bought the console (first hand from a shop) and never ran anything but burned CD-R on it ?
Everyone I know who had a Dreamcast had at least bought couple of games. Usually the same quantity as they also had cartridges for older less pirated game consoles.
It seems to me that DC piracy hasn't as much lowered games sales, as it has mainly allowed users to play that they wouldn't have bought in the first place.
What really caused the DC's downfall is a mix of not loud enough marketing (SEGA has often showed understated stats of its console, whereas most competitors used to inflate the specs), a silly price war later in the life cycle against its competitors, lots of 3rd party developers putting their project in the hold in expectation of the next playstation, and past financial disasters (the Saturn definitely tanked in the US, and only had limited success in Japan and even more limited in Europe).
The Wii is not sold at a loss. It has a lot of success in most market, out-sellling its main competitors. It's primary market is more geared toward casual and family players who aren't going to go through the hacking hassle to get the pirated software work anyway. (They usually buy on the spot the Wii and couple of fun multiplayer games Ã-la WiiSport. Then only occasionally buy additional games). It's not even in direct competition in its own market (whereas both of the competitor fight for the "hardcore player" segment).
I just can't see the Wii tanking because of this hack.
That hack will just enable creative use of the hardware by homebrewers.
And maybe enable some player to play games they weren't interested in buying in the first place.
Nonetheless, given Nintendo's past, they will probably go with great rage after all makers of such hacks, and sue them for piracy. With the net result being to so much raising sales, as mainly killing homebrew creativity.
"Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]
How about "Funny", "Interesting", and "Insightful"? Funny, as you intended it, insightful as it is insightful satirically, and interesting because it is just so danged multifaceted? Congratulations.
From what I understand all dvd access must go through IOS which is a kernel that handles IO (for more than just the DVD drive) running on an ARM processor. The IOS normally does not allow the kind of access necessary for a DVD player. There is apparently an enable dvd video system call but it is not known exactly what it does/how it functions.
This is simply rewriting history.
The Dreamcast was already close to death by the time these hacks came out. It was a combination of Sega's insufficient capital to continue advertising the Dreamcast past the 9/9/99 launch, and a steady drumbeat from Sony about how the PS2 would be a generation ahead. Sega was simply outmatched from the start.
The Dreamcast was a great console with perhaps the most interesting lineup of games, but it was always going to be a poor cousin to the PS2.
Besides, if piracy kills consoles, the PS2 would have faded about 18 months after it came out.
It was probably implemented early on, but actual support dropped because the Wii can't even be DVD licensed anyway.
"We need to get over this notion, that, for Apple to win... Microsoft must lose." - Steve Jobs, 1997
I'm speaking here as an amateur Nintendo DS developer with some experience with DevkitPro, the "toolchain" made by some guys to run stuff on Gameboy Advance, Nintendo DS, Gamecube and recently Wii, among others. I have no direct experience with Wii developing, but I think I can help you a little...
The "toolchain" is called "DevkitPPC" (a part of DevkitPro, which is available here) consists of GCC and some other utilities (many from GNU) and libraries to generate ELF executables that the Wii can run. So, basically, C and C++ are supported.
I don't know about the last version, but they're working daily on the CVS mainly with Wii updates, so expect the next version (r15) to be very nice. All this is available as a Windows installer, or you can get binaries (or the source) for Linux. I remember seeing something for OSX, but I don't know how it is nowadays.
The libraries for the NDS are very low-level stuff, with very recent additions towards higher-level stuff; so I'd imagine the Wii stuff is still very low-level.
There are some Wii examples to get you started. I don't know if the main packages include them, you can grab them here if not.
Finally, if you start developing for the Wii, expect to visit forums, dig up information on IRC and generally learn *very* low-level stuff to do anything beyond a simple "hello world".
It's not that Nintendo is worried about the platform being secure, it's that every console sold would incur a lisencing fee for DVD's Copy Protection (CSS), therefore increasing the cost of each Wii for Nintendo, and directly then for the consumer. Given this decision was made long before the Wii's success was known.
There are also people who mention the Wii's DVD drive is not meant for continious access, and that DVD playing would cause the drives to wear out faster. Why ruin a $300 system instead of a $30 DVD player?
FrangoAssado summed most of the NDS development stuff up. One thing I'd like to point out that if anyone is looking in to NDS development, to check out the Programmer's Arsenal Library, PALib. It it a good framework that takes care of a lot of the low-level stuff and allows you to develop.
Yes, C/C++ is supported.
There are no decent UI libraries yet. What you do get is direct access to the GPU with libOGC (the main homebrew library). The API is similar in spirit to OpenGL, though not directly compatible, and there is some setup needed. There's are a few examples on the devkitpro CVS (download the module 'examples'). Most are for GameCube, but don't be fooled - they can be compiled for Wii with no modifications, most of the time, by adding -mrvl to your CFLAGS and LDFLAGS. Graphics support is probably the least user-friendly part of libogc.
Input devices are quite easy to use, both GC pads and the Wiimote, in the latest version of libOGC (which requires the latest CVS devkitPPC). Once r15 is out, you'll get all of this in easy to use precompiled packages. Things like inactivity timeouts and auto-connection work out of the box, and you pretty much just call one function to scan for pads, and one function to read the current state structure.
SD filesystem support is also trivial. One init call, and then it's just stdio, using URL-ish paths: fat:/file, etc. With the Homebrew Channel, you also get your current directory set to the directory of your executable on the SD card (via argv[0]), so you can just open relative paths and they'll go to the right place on the SD card.
Networking is supported (via wlan and USB adapter), through an API that is mostly Berkeley Sockets compatible. A few things are somewhat nonstandard, but we can't do much about them - in this case, the TCP/IP stack is implemented in the IO/Security coprocessor, so we're just wrapping that interface.
Also, getting a USB Gecko is recommended. It's basically an interface that looks like a USB serial port on one end and plugs into your GC memory card slot on the other. While you can have a text console on-screen, the Gecko lets you have easy stdin/out directly from a PC, which is very useful for debugging. You can also call DEBUG_Init() and get a gdb stub listening over gecko when you get an exception, so you can easily get a backtrace and all of those goodies. We'll probably come up with something better in the future (via wifi?), but it's still a very nice, simple low-level peripheral to have.
Admittedly, the documentation now is very lacking, because most developers have been spending their time coding new features. Now that things are getting calmer and I have more time, I hope to start documenting things a lot better.