N-Gage on the 5800: the h4x diaries

28072009238-

There it is, running normally.

Summary: Just to let it clear from the start, while I could install the app, I couldn’t play any games. Leaving this warning right in the top of the post might save you some reading time. :P

I always wondered what would happen if I installed N-Gage on my 5800 ever since I saw a video of it running pretty well on an N97. I had tried it a couple times, but with no success, as I didn’t have the right installation file. Then a week or so ago, Nokia released the N-Gage sis for N97s via the software updater app. Not long after that, the standalone .sis was floating around teh interblags. I got it, and after a few things, I had the app running, this post has my impressions of the app and the how to on installing it.

First thing, of course, is getting the N97 sis. A quick google search for “N-Gage N97 sis” found me it fairly fast, but I’ll still link where I got my copy from.

Then, I opened it with one of my favorite tools, SISContents, to check the installer script and see where’s the beef causing it to not install properly on phones. Or, I wanted to remove the N97 only lock.

Screen shot 2009-07-28 at 13.39.39

The script

First thing to check: dependencies. As pointed by the first red arrow, the only dependency is Series60ProductID, which is basically a way for installers to differ between S60 and UIQ phones (as far as I know!) so the problem wasn’t there. However, as pointed by the second arrow, the whole script is a giant IF block, it checks if the phone passes those requirements, and if not, it skips the IF block. 4 of the requirements are MachineUID checks, if the phone is not a N97 (0x20014DD*) or that other UID which doesn’t match any phone (as far as I know), the installation fails.

Knowing what to change, I extracted the .sis with SISContents.

Screen shot 2009-07-28 at 12.59.43

The secret is clicking the little arrow :o

Being careful to avoid messing with the internal file structure, or extract the internal .sis files.

Screen shot 2009-07-28 at 12.59.54

This option only appears if you click extract thru the little arrow, lol

For simplicity’s sake, I moved all files that were extracted to C:\, making it simpler to edit the script file later.

Screen shot 2009-07-28 at 13.01.13

How my C: looked after all that.

  • With all the files ready, it’s time to edit the .pkg. As I noted before, I had to do a find and replace to change all mentions of the N97 Machine UID (0x20014DDD) for the 5800s (0x2000DA56).
  • Also, as SISContents does not save file paths on the .pkg, I had to find and replace all things like “folder\ for “C:\folder\ and “@sisfile.sis for “@C:\sisfile.sis so they actually point somewhere on my hard drive (just adding the C:\ is simpler, that’s why I moved everything to it).
  • And at last, my copy of makesis.exe was apparently choking on all the languages the pkg mentioned, so I removed all languages except for &EN, also removing extra localized names for the installation file (leaving just one {“N-Gage”}), for the dependencies (leaving just one {“Series60ProductID”}) and the vendor names (leaving just one {“Nokia”}). This last part sounds a little too complicated (is where I got confused at first too), so I’ll leave an example of how the headers looked in the final .pkg

; Languages
&EN
; Package header
#{"N-Gage"}, (0x20003B78), 1, 30, 1541, TYPE=SA
; Dependencies
[0x1028315F], 0, 0, 0, {"Series60ProductID"}
; Vendor names
%{"Nokia"}:"Nokia"

Or, just to make it simpler, I’ll link my final edited .pkg (save as, etc) here, make sure to edit it to reflect the right paths on your computer if you’re using it.

Anyway, now with the files in their right places, and the .pkg edited to allow the 5800, it’s time to build the .sis. You need the standard makesis.exe for 3rd/5th edition files, it’s easy to find as it comes with the sdk, but I uploaded the one I used just in case. Throw it in the same directory as the files and the .pkg, and use the following command from the folder, “makesis.exe -v N-Gage.pkg N-Gage.sis”

Screen shot 2009-07-28 at 14.31.22

Running it from C: in my case, don't mind the ¥, backslashes show up as ¥ signs in my virtual machine.

Sooooo after all that work, if everything’s done right, you get a (unsigned) N-Gage.sis file, sign it or install it in your hacked phone, and there you have it. (I won’t link my finished .sis because I’m afraaaid ooo, hacking is supposedly illegal no?) 700+ words already and I just got to the middle of the post, lol.

SuperScreenshot0066

The home tab

As I said earlier in the post, lots of things don’t work, in the next couple screenshots I’ll show things of interest.

SuperScreenshot0062

The app itself has no problem with the phone being a 5800.

SuperScreenshot0064

Arena does mind, though. You can't log in or make a new account without getting this error.

SuperScreenshot0065

Same for the Store, you get an empty store as they don't have content for a 5800.

With no working store, I resorted to downloading a .n-gage installation file from n-gage.com. There’s the save a .n-gage file on E:/n-gage/ on the phone installation method…

SuperScreenshot0057

...which apparently does work!

SuperScreenshot0063

Oops, never mind~

No matter what I did, I kept getting this error. Must be the generic “game panicked on launch” error. It installed fine, so I assume it’s an hardcoded device limitation. Note that I haven’t tried other games besides Bounce, so maybe one works. Gotta try some more later.

Another thing of interest, at least for me, is that the app seems much more snappy on the 5800 than on my N95. It does look similar, but different, in a good way. I like the way they adapted the app for touchscreens. So there’s a +1 for the N-Gage team.

Last thing I found funny, was the check for updates option, which opens this link. Even though the URL mentions the 5800 clearly, the page just calmly says there’s no update, with no errors or anything. lol.

So there you have it, a ~1000 words post that’s basically a diary for myself: A huge guide and impressions of something that in the end, does not work. It was still kinda fun to mess with it last night, and there’s still hope that some games don’t have the same device check on launch as Bounce. Although, as I mentioned, I’m kinda lazy to test all other games. So in case someone does have the patience to do what I did and finds a game that works, please leave a comment telling me about it! lol

This entry was posted in Bloggan and tagged , , , . Bookmark the permalink. Post a comment or leave a trackback: Trackback URL.

2 Comments

  1. rodrigo
    Posted August 8, 2009 at 8:40 pm | Permalink

    E ai cara beleza!!!
    Tem como voce me manda os arquivos ja editados para nokia 5800????
    Desde ja muito obrigado…

  2. adrian
    Posted October 5, 2009 at 12:31 pm | Permalink

    i too have failed too many times to remember to get the n gage working for the 5800, alas i feel your pain….. :( hopefuly in a few months however someone will have a decent clear guide as to how to do it with better software etc

Post a Comment

Your email is never published nor shared. Required fields are marked *

*
*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>