Sonic and Sega Retro Message Board: Sonic Advance 1 Android Port Decompile - Sonic and Sega Retro Message Board

Jump to content

Hey there, Guest!  (Log In · Register) Help
  • 3 Pages +
  • 1
  • 2
  • 3
    Locked
    Locked Forum

Sonic Advance 1 Android Port Decompile Any use for this?

#1 User is offline evilhamwizard 

Posted 21 July 2014 - 02:10 PM

  • Posts: 1158
  • Joined: 16-June 04
  • Gender:Male
  • Wiki edits:109
A few years a go, Sonic Advance 1 was ported to Android platforms in Japan. The port eventually made it's way to the states I believe by GameLoft. The original Japanese port, however, has symbol names for functions and variables/boolean. The GameLoft versions seems to have been truncated of both data and code. I noticed that there were a multitude of Java/Android decompilers out there. Perhaps we can find use with the knowledge we can get from this version?

Check this out. I ran AndroChef Java Decompiler on the .dex executable which was converted to a .jar:

Posted Image

We had a link to the Japanese APK when the game just came out, but I can't seem to find the original Japanese APK anywhere. I can provide the files, just not the package. The files themselves are interesting too. All the music is MIDI, either it's the original I have no idea (fun fact: the GameLoft version uses OGGs, and the mobile phone ports of the game use MIDIs. The 1UP midi used in the mobile phone port in particular was actually converted from the original rom using GBA2MID, lel). The sound effects are all ogg files. Tiles were converted to .png.

You can download the extracted files here, along with the decompiled java stuff. Just open the .jar up in your favorite archive explorer, the decompiled code are in the .java files.

#2 User is offline Aerosol 

Posted 21 July 2014 - 02:17 PM

  • FML and FU2
  • Posts: 7627
  • Joined: 27-April 08
  • Gender:Male
  • Location:Not where I want to be.
  • Project:Sonic (?): Coming summer of 2055...?
Haha wait, this is the source code to Sonic Advance in Java?

#3 User is offline Overlord 

Posted 21 July 2014 - 02:24 PM

  • Cat-herder
  • Posts: 14494
  • Joined: 12-January 03
  • Gender:Male
  • Location:Berkshire, England
  • Project:VGDB
  • Wiki edits:3,204
I'm pretty sure I've got the APK saved somewhere, but it's worth noting it doesn't really run on Western devices. Certainly none I've tried.

#4 User is offline ICEknight 

Posted 21 July 2014 - 02:43 PM

  • Posts: 9289
  • Joined: 11-January 03
  • Gender:Male
  • Location:Spain
  • Wiki edits:18

View PostOverlord, on 21 July 2014 - 02:24 PM, said:

I'm pretty sure I've got the APK saved somewhere, but it's worth noting it doesn't really run on Western devices. Certainly none I've tried.

It runs on my LG Optimus Black, but I don't really remember if I needed to modify something in it...

I hope this will make it possible to remove that darn framerate limit.
This post has been edited by ICEknight: 21 July 2014 - 02:44 PM

#5 User is offline Pexs 

Posted 21 July 2014 - 07:31 PM

  • Posts: 106
  • Joined: 01-February 12
  • Gender:Male
  • Location:Around here somewhere.
Whoa. That's the source? Like, the SOURCE source?


Oh heck. I didn't know how much I wanted this until just now.

#6 User is offline evilhamwizard 

Posted 21 July 2014 - 07:47 PM

  • Posts: 1158
  • Joined: 16-June 04
  • Gender:Male
  • Wiki edits:109
Not really the source code. This is a decompile of the executable from the Japanese version of the Android port with symbol names. Either or not they are the original symbol names I'm not too sure.

I noticed that some function couldn't be decompiled with the program I used, so I don't think this is entirely useful yet.
This post has been edited by evilhamwizard: 21 July 2014 - 07:47 PM

#7 User is offline Xeta 

Posted 22 July 2014 - 01:57 PM

  • コミュニティ謎
  • Posts: 249
  • Joined: 23-April 14
  • Gender:Male
  • Location:That box that so frequently gets overlooked.
  • Project:Nothing.
Nice job, I'd probably be able to put some of these MIDIs to good use in some hacks and other projects. =P

#8 User is offline winterhell 

Posted 22 July 2014 - 04:03 PM

  • Posts: 747
  • Joined: 16-October 10
  • Gender:Male

View PostPexs, on 21 July 2014 - 07:31 PM, said:

Whoa. That's the source? Like, the SOURCE source?


Oh heck. I didn't know how much I wanted this until just now.

And then you remember that DIMPS made it and you wake up from the nightmare.

#9 User is offline MainMemory 

Posted 22 July 2014 - 04:07 PM

  • Every day's the same old thing... Same place, different day...
  • Posts: 3369
  • Joined: 14-August 09
  • Gender:Not Telling
  • Project:SonLVL
  • Wiki edits:1,339
I would be interested in this, if it used the same formats for sprites/animations and level data, but it probably doesn't.

#10 User is offline LordOfSquad 

Posted 22 July 2014 - 04:14 PM

  • don't get butthurt if your get memed on
  • Posts: 4056
  • Joined: 19-February 08
  • Gender:Male
  • Location:Winnipeg, MB
  • Project:Scriptwriting, working, dying.
  • Wiki edits:1
Someone had told me once that Advance used engine assets directly from the original trilogy, or that they had access to said assets while developing it. I've never seen a first-hand source say anything along those lines though. Any truth to it that you guys know about? My quick glance at the wiki didn't dig up much.

#11 User is offline ICEknight 

Posted 22 July 2014 - 04:34 PM

  • Posts: 9289
  • Joined: 11-January 03
  • Gender:Male
  • Location:Spain
  • Wiki edits:18
Other than the similar physics and debug mode coordinates display, I don't think there's been anything concrete that connects the advance and classic engines...

But if that was the case, perhaps this would allow to... port the game to the Mega Drive? :O

#12 User is offline evilhamwizard 

Posted 22 July 2014 - 05:16 PM

  • Posts: 1158
  • Joined: 16-June 04
  • Gender:Male
  • Wiki edits:109

View PostMainMemory, on 22 July 2014 - 04:07 PM, said:

I would be interested in this, if it used the same formats for sprites/animations and level data, but it probably doesn't.


I checked. It doesn't. The tiles are all png images, and none of the animation/palette/stage collision placement data files seem to be anywhere in the US rom. Unless the original rom compressed stuff though...

The only thing I remember hearing about long a go about the trilogy/advance game connection were physics related. I'm not too familiar with how the Megadrive games work, though.

#13 User is offline Hitaxas 

Posted 22 July 2014 - 05:50 PM

  • SEGA: Sorry Classic Sonic, we are sending you back to 1994
  • Posts: 1432
  • Joined: 30-September 07
  • Gender:Male
  • Location:Back in Litchfield,CT
  • Project:Sonic: Super Deformed (head director) - Slowly working on it.
  • Wiki edits:196

View PostICEknight, on 22 July 2014 - 04:34 PM, said:

But if that was the case, perhaps this would allow to... port the game to the Mega Drive? :O


While this would be neat, I think a port to the 32x might be easier if that's possible. Porting to the Mega Drive/Genesis would require a lot of recoloring of many objects due to the amount of colors this game used.

However maybe the music can be ported, I haven't looked through it all yet but some of the simple jingles, like the end of act music uses few enough channels for such a thing.

Either way this is interesting stuff here. Going to poke around things a bit. :)

#14 User is offline Montblanc 

Posted 22 July 2014 - 07:12 PM

  • Posts: 23
  • Joined: 08-December 11
I have this .apk, it's v.1.0.0:

http://www76.zippysh...55487/file.html

When I found it it the file was named sonicadvance_signed so I don't know what was modified. Also it runs awfully on all my devices.

#15 User is offline Clownacy 

Posted 22 July 2014 - 07:46 PM

  • Needs to make an avatar
  • Posts: 309
  • Joined: 06-July 13
  • Gender:Male
  • Location:Englandland
So, quick question: Was is bad programming or Java that made this run like mud?

  • 3 Pages +
  • 1
  • 2
  • 3
    Locked
    Locked Forum

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users