November 2009

You are currently browsing the monthly archive for November 2009.

Devs m0skit0 and ab5000 have been working on an eLoader for the MOHH exploit in the past months. Today, m0skit0 released an alpha version of his work, named “Half Byte Loader”. He mentioned that this is currently only useful for devs, as it doesn’t allow to run homebrew yet, but let’s hope this will lead to something good in the weeks to come.

An important point to mention is that it is the first open source eLoader that’s been released, in 4 years of PSP hacking. Many thanks for that :) This could probably become the base of future homebrew loaders, and this will at least be a useful source of information for lots of devs around here!

source and download: advancedPSP



If you own a PSP that you bought recently and haven’t been following the news lately yet are interested in unlocking your PSP, the whole PSP scene certainly looks like a huge mess to you, and you probably have no clue if your PSP’s hackable or not. Things have been moving quite fast recently, so expect things to change soon, but here is the current state of PSP’s “hackingability” :

models

Below are details for each model.

PSP Phat and PSP2000 (except ta88v3)

If you own a PSP Phat (PSP-1000), or a PSP Slim (PSP 2000) that is NOT a Ta88v3, then your PSP, independently of its firmware, is 100% hackable with a pandora battery. It’s been the case for many months now, and it will not change as the exploit used for the pandora batteries is a hardware exploit and cannot be fixed with a new firmware.

PSP-3000 and TA88v3, Firmware 5.03 and below

If you are the unlucky owner of a “doomed” motherboard, but happen to have a firmware 5.03 or below, your PSP is “half-hackable” through the laughing man tiff exploit and the associated Homebrew Enabler, better known as “ChickHEN”. “half-hackable” means that your PSP can have all the features of fully hackable PSPs (homebrew, plugins, customizable themes, ISOs,…), but unlike fully hacked PSPs, if your hard-reboot your PSP, you’ll have to run the hack again. (For those who still don’t know, putting your PSP in sleep mode works fine and is the best thing to do to keep the HEN in Ram)

PSP-3000 and TA88v3, Firmware 5.50 and above

There is no “public” way to hack these PSPs currently. However lots of exploits have been made public in the past weeks, giving developers enough material to actually work on solutions for these models. A user exploit in the Game Archer Maclean’s Mercury exists up to firmware 6.10. A user exploit in the Game Medal of Honor Heroes (including Medal Of honor heroes 2) exists up to firmware 5.55. The Kernel exploit used in ChickHEN exists up to firmware 5.50, but (is not usable from a user exploit in a game). A Kernel exploit revealed by MathieuLH exists up to firmware 5.55. Team Typhoon revealed the existence of a kernel exploit up to at least firmware 6.10, but didn’t make it public. Technically, with the current public available info, these PSPs could be hacked up to firmware 6.10 for Homebrew through the Mercury Game, and up to firmware 5.55 for HEN (isos, plugins,…) through the kernel exploit revealed by MathieuLH

PSP Go

There is no “public” way to hack these PSPs currently. The PSPGo cannot technically use exploits in games. Well…it can, but as soon as a game is hacked, it gets patched. So either you own a hackable version of the game and can use it, either you’re screwed. The general idea is that we cannot use games as a “good” user exploit source for the PSPGo. Exploits still exist though, and most of the time kernel exploits valid for a given firmware will work on the PSPGo, so it’s only a matter of finding a user exploit in the XMB rather than in a game.

Vocabulary

Homebrew: User made (non official) applications. These include games such as Wagic, utilities, emulators…
ISO: In the PSP world, digital copy of a game, most of the time unencrypted, preventing it from running on an Official firmware. ISOs are often associated to game piracy.
plugin: Homebrews that are loaded in the Ram of the PSP to extend its functionalities. For example, the music plugin allows to play MP3s while playing a game or a homebrew on the PSP.
HEN: Homebrew ENabler. A program that patches the PSP Ram to allow running unsigned code (Homebrews). unlike eLoader, a HEN is in the Ram and therefore doesn’t require to be launched everytime you want to run unsigned code. To do this a HEN usually requires a Kernel exploit.
TA88v3 :A Model of Motherboard that was introduced on the PSP2000 in summer 2008. It fixes the vulnerability used by the pandora batteries. Several techniques exist to identify your PSP Motherboard. If you have a PSP 2000, the easiest way to identify if it has a “doomed” motherboard is to try a pandora kit (battery + memory stick) on it.

Note: Firmware 5.05 has been intentionally not mentioned as it was released to a very limited number of people.

If you own a PSP that you bought recently and haven’t been following the news lately yet are interested in unlocking your PSP, the whole PSP scene

certainly looks like a huge mess to you, and you probably have no clue if your PSP’s hackable or not.

Here is the current state of things:

Below are details for each model.

PSP Phat and PSP2000 (except ta88v3)
If you own a PSP Phat (PSP-1000), or a PSP Slim (PSP 2000) that is NOT a Ta88v3, then your PSP,

independently of its firmware, is 100% hackable with a pandora battery. It’s been the case for dozen

months, and it will not change as the exploit used for the pandora batteries is a hardware exploit and

cannot be fixed with a new firmware.

PSP-3000 and TA88v3, Firmware 5.03 and below
If you are the unlucky owner of a “doomed” motherboard, but happen to have a firmware 5.03 or below, your

PSP is “half-hackable” through the laughing man tiff exploit and the associated Homebrew Enabler, better

known as “ChickHEN”. “half-hackable” means that your PSP can have all the features of fully hackable PSPs

(homebrew, plugins, customizable themes, ISOs,…), but unlike fully hacked PSPs, if your hard-reboot your

PSP, you’ll have to run the hack again. (For those who still don’t know, putting your PSP in sleep mode

works fine and is the best thing to do to keep the HEN in Ram)

PSP-3000 and TA88v3, Firmware 5.50 and above
There is no “public” way to hack these PSPs currently. However lots of exploits have been made public in

the past weeks, giving developers enough material to actually work on solutions for these models. A user

exploit in the Game Archer Maclean’s Mercury exists up to firmware 6.10. A user exploit in the Game Medal

of Honor Heroes (including Medal Of honor heroes 2) exists up to firmware 5.50. The Kernel exploit used in

ChickHEN exists up to firmware 5.50, but (is not usable from a user exploit in a game). A Kernel exploit

revealed by MathieuLH exists up to firmware 5.55. Team Typhoon revealed the existence of a kernel exploit

up to at least firmware 6.10, but didn’t make it public. Technically, with the current public available

info, these PSPs could be hacked up to firmware 6.10 for Homebrew through the Mercury Game, and up to

firmware 5.55 for HEN (isos, plugins,…) through the kernel exploit revealed by MathieuLH

PSPGo
There is no “public” way to hack these PSPs currently. The PSPGo cannot technically use exploits in games.

Well…it can, but as soon as a game is hacked, it gets patched. So either you own a hackable version of

the game and can use it, either you’re screwed. The general idea is that we cannot use games as a “good”

user exploit source for the PSPGo. Exploits still exist though, and most of the time kernel exploits valid

for a given firmware will work on the PSPGo, so it’s only a matter of finding a user exploit in the XMB

rather than in a game.

Vocabulary
Homebrew: User made (non official) applications. These include games such as Wagic, utilities, emulators…
ISO: In the PSP world, digital copy of a game, most of the time unencrypted, preventing it from running on an Official firmware. ISOs are often associated to game piracy.
plugin: Homebrews that are loaded in the Ram of the PSP to extend its functionalities. For example, the music plugin allows to play MP3s while playing a game or a homebrew on the PSP.
HEN:Homebrew ENabler. A program that patches the PSP Ram to allow running unsigned code (Homebrews). unlike eLoader, a HEN is in the Ram and therefore doesn’t require to be launched everytime you want to run unsigned code. To do this a HEN usually requires a Kernel exploit.

We regularly get lots of brilliant user-made contents on the Wagic forums.

Sometimes, the result is not only brilliant, it is awesome. This is the case of the Theme “Final Saga” posted by Ilya B yesterday. I was amazed to see such a gorgeous and coherent theme. Pretty much all graphics have been redone, and the theme includes some really cool avatars. It’s not difficult to do better than the current default avatars in Wagic, but these ones are truly excellent. This is now the Theme I use on my PSP :)

How to install:

  1. Download the theme here and put it in your “WTH/Res/themes” folder
  2. Launch the game, and in the options > user, select the “Final Saga” Theme
  3. There is a bug currently with fonts in Wagic 0.9.1, so if you want the theme fonts (I highly recommend them), download this additional file and extract it into your Res/graphics folder

Don’t hesitate to say thanks to Iliya B for this awesome work. And use the opportunity to browse the forums for extra contents ;)

Freeplay released his exploit for the game Mercury a few hours ago. The reason is that the vulnerability has been patched in firmware 6.20, making any further work on this exploit useless. Sony also immediately updated the game on the PSN store so that it now requires firmware 6.20.

Matieuhlh, member of the team prometheus (the team who created the Pandora Batteries), and a respected hacker on the PSP scene, revealed that Freeplay actually stole the code from a private SVN. To prove this, Mathieulh released the original sources of the exploit, as well as the sources for a kernel exploit that has been patched in firmware 6.00.

Further development of these exploits will most likely lead to custom firmwares and/or HEN for PSPs up to the firmware 6.00. This is of course interesting only for owners of Ta88v3 and of PSP3000. Owners of PSPGo can still pray for a future XMB exploit, and owners of older models of PSPs can use pandora batteries, independently of their firmware. As usual, if you like homebrews, don’t upgrade. And avoid buying a PSPGo :P

People interested in working on these vulnerabilities (user and kernel) can download them here

Source:MForMature

This image is not hosted on wololo.net. All rights reserved Wizards of the Coast. wololo.net is not related to Wizards of the Coast. The terms Wizards, Coast, of, the, and Magic, are (c) Hasbro. Elves were invented by Wizards of the Coast, and have not been a part of popular culture for centuries. Treefolks are not a copyright infrigement of Tolkiens work. Its a different word.

This image is not hosted on wololo.net. All rights reserved Wizards of the Coast. wololo.net is not related to Wizards of the Coast. The terms 'Wizards', 'Coast', 'of', 'the', and 'Magic', are (tm) Hasbro. Elves were invented by Wizards of the Coast, and have not been a part of popular culture for centuries. Treefolks are not a copyright infrigement of Tolkien's work. It's a different word.

Rares, creator of MTGForge, recently received a DMCA notice asking him to remove some links to his game provided on his blog (hosted by google).

Why he received it is still unclear, but it seems his game is infringing some copyright owned by Wizards of the Coast (this needs to be confirmed).

Wizards of the Coast are well known for threatening lots of players, blog owners, and fan-made games.

MTGForge is a free, fan made java game that allows to play with a limited set of MTG cards against a limited AI. It doesn’t offer the same experience as any existing product sold by WotC, neither is it a competitor to their business. It brings attention to Magic the Gathering to a broader audience, and provides free promotion for MTG. WotC should make a difference between protecting their copyrights and attacking the people that help them.

Please do not hesitate to post this piece of news on your blog, or on forums dedicated to Magic The Gathering. Maybe if enough people talk about this bad behavior, Wizards will realize it can hurt their image to do a witch hunt against every fanmade game.

As far as I’m concerned, I believe that a game invented more than 15 years ago should be in the public domain, and WotC should create new games rather than relying on their cash cows (Magic and D&D). But that’s a different story.

I personally got threatened by WotC’s lawyers less than a year ago. Yet I regularly receive emails from people who’ve come back to Magic after playing Wagic, years after they stopped playing the original game…

I understand it’s a complex issue, and their lawyers are probably just doing their job. But in the end it’s all a matter of money. If it costs them more to insult their clients than letting us do our fan work in peace, they’ll stop. So spread the word, people.

PS: if Wagic or MTGForge have made you buy some WotC products (you hadn’t played the game in years and Wagic made you want more so you bought Zendikar cards and participated to an official draft event, or you own an XBox360 and wanted to try it out because the AI AI is a bit frustrating, etc…), please post your experience :)

I have been working on Wagic for more than 2 years now, and it’s become quite big for a homebrew game. In terms of gameplay and features of course, but also in terms of source code. I use a small application named CLOC to count the number of lines of code in Wagic, and I was amazed at how the source code for Wagic keeps on getting bigger with time.

Wagic now has 70′000 lines of code.

As a comparison, a “standard” Custom Firmware for the PSP has around 25′000 lines of code.

Out of curiosity, I ran CLOC on several open source projects of the PSP community and here are the results:

Project NameLines of Code3rd gen Equiv.
Wagic70′000 (including 40′000 for JGE)85′000
DSON PSP (DS Emulator)37′000 (including 28′000 from the PC emulator)32′000
CFW 3.10 OE23′00021′000
Battlegrounds 3D 0.4 (tank game in 3D)12′00010′000
PSP Mancala (Mancala Game)3′2002′500

(3rd gen equiv. Is CLOC’s attempt at comparing projects written in various languages. It assumes for example that one line of assembly code does way less than one line of C, itself doing less than one line of C++)

What does this show? Well, pretty much nothing, except that the number of lines of code in a project are not directly related to its popularity :P

A “standard” homebrew game with basic features, that is still more than a “proof of concept” will have between 2′000 and 10′000 lines of C/C++ code (I didn’t try any LUA game).

A basic rule of thumb is that a programmer alone can maintain around 20′000 lines of code. The number of lines of code in a program give no specific indication on the quality of the code itself, but there are two obvious things: Maintenance and bugs increase with the number of lines of code. I’m not saying that Wagic has 15 times more bugs than Battleground 3, but that it is highly probable that Wagic has 2 times more bugs than when it had only 35′000 lines of code.

Well, if we want a project to grow bigger, add more features, at some point we have to increase the code size. What are the solutions to deal with it?

  1. Version control. I can’t imagine a project with more than 10′000 lines of code that is not version controlled. We use SVN for Wagic, there’s a free service provided by google code for that. So far it’s great. Other projects use their own SVN servers (such as the PSP SDK at ps2dev). Other solutions such as Git exist. I don’t think any software project can expect to grow without at least a basic version control system
  2. Bugs tracking. I used to write down every single bug on a piece of paper. This works half well when you’re alone on the project, assuming it’s always the same piece of paper. Let me withdraw that: it doesn’t work. You end up forgetting things. Inputting the bugs in a system that will help you keep records is a great idea. I’m happy we progressively shifted to that in the Wagic project. Google code offers this service as well. There are alternatives such as mantis,…
  3. Automated tests. I gave up the idea of having human beings test every single feature in Wagic after the second release I think. There is no way you can get people test thousands of cards in an acceptable amount of time. Depending on the project, automated testing can be hard to implement. Unit tests are fairly easy to implement in languages such as Java, but I haven’t taken the time yet to implement unit tests in Wagic. Wagic does regression tests, which is basically a way of making sure that a new feature does not break old ones. We have lots of progress to do in this area
  4. Reduce the quantity of source code. One other thing I haven’t taken the time to do seriously yet. The best solution to reduce maintenance is of course to reduce the size of stuff to maintain. Wagic has lots of dead code, or code that could be optimized/refactored. We try to do some cleanup regularly, for example by removing hardcoded cards, and instead softcode them (which also improves the parser, that’s a good thing). Often, cleaning up the card codes doesn’t reduce the total amount of code though. But it allows us to code 50 cards when it was only possible to code 1 initially.

These are the four things we use on a daily basis to work on Wagic, and that proved efficient over the months to increase the quality of the game. It is far from perfect of course. We are experimenting with other things (such as a wiki) to improve documentation and communication between devs…we’ll see how it goes.

« Older entries