Author Topic: AGS engine PSP port  (Read 12497 times)  Share 

JJS

  • AGS Project Admins
AGS engine PSP port
« on: 15 Jul 2011, 16:27 »


This is a follow up post to the initial PSP port I presented in the engine release thread.

Now that the port has matured a bit and can be considered almost complete and more user-friendly here is a proper release thread for it. Still, this is a port of the 3.21.1115 runtime engine to the PlayStation Portable. To play it you need a PSP 2000/3000 or Go with a Custom Firmware or Homebrew Enabler. The engine will start on a PSP 1000 but due to the lower total available memory, you cannot run most AGS games.

Games can just be copied as they are into the ports folder on the PSP, no more renaming to "ac2game.dat" as in the initial version. Now the game data is autodetected. If the game data is compiled with an incompatible AGS version, the launcher will tell you so.

There are various options that can be configured in a text file. See the Readme for details please.


Source code is available on gitorious as a clone/branch of the Linux engine port:
https://github.com/adventuregamestudio

Binaries are available from my website:
http://jjs.at/software/ags.html


:= UPDATE :=

If you want to stay on top of the newest developments, you can get intermediate binaries from my daily build site:
http://jjs.at/daily/

I will put an updated version there whenever I make changes to the source.

Also there is a bug tracker here:
http://jjs.at/tracker/

Please also post feature requests and bugs there.
« Last Edit: 21 Jun 2012, 07:08 by JJS »
Ask me about AGS on PSP, Android and iOS! Source, Bug tracker, Daily builds

Joseph DiPerla

  • Joseph DiPerla, Adventure Game Creator Wannabe!
    • I can help with AGS tutoring
    •  
    • I can help with backgrounds
    •  
    • I can help with characters
    •  
    • I can help with play testing
    •  
    • I can help with scripting
    •  
    • I can help with story design
    •  
    • I can help with translating
    •  
    • I can help with voice acting
    •  
    • I can help with web design
    •  
Re: AGS engine PSP port
« Reply #1 on: 15 Jul 2011, 17:21 »
Nice work!
Joseph DiPerla--- http://www.adventurestockpile.com
Member in this community since before 1999.
-The oldest member without ever making a full game...

LimpingFish

  • Mittens Serf
  • Boink!
  • LimpingFish worked on a game that was nominated for an AGS Award!
Re: AGS engine PSP port
« Reply #2 on: 15 Jul 2011, 21:49 »
Great! :D

Some questions:

Would it be possible to build a version of this that compiles everything as an eboot? What I mean is, can a version that loads a single game automatically, bypassing the need to load a game from a seperate GUI, be implemented?

Some PSP emulators use a cache file system to avoid the PSP1000's memory limitations. Could something similar be used here?


Dualnames

  • AGS Baker
  • Dualnames worked on a game that was nominated for an AGS Award!
Re: AGS engine PSP port
« Reply #3 on: 16 Jul 2011, 00:29 »
Those are great news. Now let's make than android port :P (I doubt that's doable :P)

monkey_05_06

  • AGS Project Admins
  • Has left the building.
Re: AGS engine PSP port
« Reply #4 on: 16 Jul 2011, 00:52 »
I was actually just looking into it, and the Android NDK might actually make an AndroidGS engine port more feasible. I'm not nearly versed enough in C++ to attempt it myself, and a fair amount of the engine would probably still have to be ported directly to Java. Probably not impossible though.
Let's be honest. Most people suck at coding. I suck at coding, but at least my code is readable. To Hell with anyone too lazy to maintain consistent formatting in their code. I could deal with bad interfaces and structure if I could even read your horrible code. And that's putting it nicely. -monkey

icey games

  • Official KH tester
    • I can help with backgrounds
    •  
    • I can help with characters
    •  
    • I can help with play testing
    •  
    • I can help with story design
    •  
    • I can help with voice acting
    •  
Re: AGS engine PSP port
« Reply #5 on: 16 Jul 2011, 02:23 »
Yes!!!! :)

Dualnames

  • AGS Baker
  • Dualnames worked on a game that was nominated for an AGS Award!
Re: AGS engine PSP port
« Reply #6 on: 16 Jul 2011, 02:40 »
I was actually just looking into it, and the Android NDK might actually make an AndroidGS engine port more feasible. I'm not nearly versed enough in C++ to attempt it myself, and a fair amount of the engine would probably still have to be ported directly to Java. Probably not impossible though.

if I were you, I'd get working to it, before I GET MY HANDS ON YOU. Now, work!!

Joseph DiPerla

  • Joseph DiPerla, Adventure Game Creator Wannabe!
    • I can help with AGS tutoring
    •  
    • I can help with backgrounds
    •  
    • I can help with characters
    •  
    • I can help with play testing
    •  
    • I can help with scripting
    •  
    • I can help with story design
    •  
    • I can help with translating
    •  
    • I can help with voice acting
    •  
    • I can help with web design
    •  
Re: AGS engine PSP port
« Reply #7 on: 16 Jul 2011, 03:25 »
Those are great news. Now let's make than android port :P (I doubt that's doable :P)

Its doable. Allegro is being ported to Android (In the developers spare time of course) and Android does have an SDK for C++ programmers. I think this should be next on the portability front as, I er hem, own an Android. But also, Android seems to be available for more phone companies than the iphone/pad is.
Joseph DiPerla--- http://www.adventurestockpile.com
Member in this community since before 1999.
-The oldest member without ever making a full game...

JJS

  • AGS Project Admins
Re: AGS engine PSP port
« Reply #8 on: 16 Jul 2011, 06:37 »
Would it be possible to build a version of this that compiles everything as an eboot? What I mean is, can a version that loads a single game automatically, bypassing the need to load a game from a seperate GUI, be implemented?
If you put the data files in the same directory as the eboot and rename the games executable to "ac2game.dat", the launcher will directly start that game.
Also it is possible to compile the engine as an eboot, so that you don't even have to include the launcher at all, only eboot.pbp (and exception.prx unless you are sure that your game never ever crashes the PSP ;).)

Some PSP emulators use a cache file system to avoid the PSP1000's memory limitations. Could something similar be used here?
I don't know about that. The PSP lacks an MMU and therefore "virtual memory" cannot be implemented in an efficient way. The difference between a 1000 and the other models is having about 17 MB and 48 MB heap respectively.
Unless really digging into the source code and changing the way it uses memory I don't think anything can be done for the 1000. Even the other models run out of memory with large rooms, e.g. Eternally Us crashes in the first room because it is gigantic and Of The Essence runs out of memory for the pathfinder.

Ask me about AGS on PSP, Android and iOS! Source, Bug tracker, Daily builds

Calin Leafshade

  • AGS Project Admins
  • Long live King Cat!
    • I can help with AGS tutoring
    •  
    • I can help with voice acting
    •  
  • Calin Leafshade worked on a game that was nominated for an AGS Award!Calin Leafshade worked on a game that won an AGS Award!
Re: AGS engine PSP port
« Reply #9 on: 16 Jul 2011, 14:42 »
Yea, eternally us is graphically huge and loads a lot of full screen pngs into memory. This was before i discovered doing alpha blended particles dynamically.

Leon: You need the sword first before you can get the monkey.

LimpingFish

  • Mittens Serf
  • Boink!
  • LimpingFish worked on a game that was nominated for an AGS Award!
Re: AGS engine PSP port
« Reply #10 on: 16 Jul 2011, 18:54 »
Even the other models run out of memory with large rooms, e.g. Eternally Us crashes in the first room because it is gigantic and Of The Essence runs out of memory for the pathfinder.

Ah, I see. I was specifically referring to something like MVPSP (a NEO-GEO emulator), which must generate separate cached data files on the 1000, to enable larger ROMs to run, while the same ROMs run on the 2000 and up without the need to do this; the extra memory of these models allowing the full ROM to be loaded directly. I thought something similar might be applicable to this project. Of course, this was based on my knowing exactly nothing on how these things actually work. :)

Good to know about the eboot possibilities, though.

Thanks again for the great work. :)

JJS

  • AGS Project Admins
Re: AGS engine PSP port
« Reply #11 on: 17 Jul 2011, 22:14 »
Made a small update after a bug report from here. The King's Quest I and Quest for Glory II remakes now run without crashing. There were still parts with misaligned pointers in the scripting engine and I had forgotten to update apeg when I switched from libvorbis to libtremor. The update is available through the same URL as before.

Btw. LimpingFish, I tried Dead Hand on my Go and it runs there. Unfortunately the 3d is too much for the PSP so that it only displays at 1 fps.
Ask me about AGS on PSP, Android and iOS! Source, Bug tracker, Daily builds

icey games

  • Official KH tester
    • I can help with backgrounds
    •  
    • I can help with characters
    •  
    • I can help with play testing
    •  
    • I can help with story design
    •  
    • I can help with voice acting
    •  
Re: AGS engine PSP port
« Reply #12 on: 18 Jul 2011, 05:55 »
Sorry but how do I set it up? I got the app on my psp(5.50 gen d full) however I dont know were I should place games and if I have it set up right on my memory card. I can see the app on psp btw.
« Last Edit: 18 Jul 2011, 06:01 by Studio3 »

JJS

  • AGS Project Admins
Re: AGS engine PSP port
« Reply #13 on: 18 Jul 2011, 07:07 »
You just copy the whole folder that contains your AGS game into the folder with the EBOOT.PBP file.

For example you got the port in "x:\PSP\GAME\ags\", then you copy the data files of a game into "x:\PSP\GAME\ags\my ags game\". That folder then contains the game exe, audio.vox, speex.vox, etc. Every game you want to add gets its own folder.


Unfortunately I spoke too soon for QFG II, that game seems to randomly crash from lack of memory later on (the fix was for making it start at all).
Ask me about AGS on PSP, Android and iOS! Source, Bug tracker, Daily builds

icey games

  • Official KH tester
    • I can help with backgrounds
    •  
    • I can help with characters
    •  
    • I can help with play testing
    •  
    • I can help with story design
    •  
    • I can help with voice acting
    •  
Re: AGS engine PSP port
« Reply #14 on: 18 Jul 2011, 07:21 »
Thanx a bunch. I was def not thinking about putting anything in that folder.

icey games

  • Official KH tester
    • I can help with backgrounds
    •  
    • I can help with characters
    •  
    • I can help with play testing
    •  
    • I can help with story design
    •  
    • I can help with voice acting
    •  
Re: AGS engine PSP port
« Reply #15 on: 19 Jul 2011, 06:48 »
Every game I use it says I need to create a save game folder and t can't find the Eboot.pbp

JJS

  • AGS Project Admins
Re: AGS engine PSP port
« Reply #16 on: 19 Jul 2011, 07:41 »
Alright, let's make sure that we got a compatible game and that the folders are set up correctly.

For example your game from here: http://www.bigbluecup.com/yabb/index.php?topic=43962.0
Ask me about AGS on PSP, Android and iOS! Source, Bug tracker, Daily builds

icey games

  • Official KH tester
    • I can help with backgrounds
    •  
    • I can help with characters
    •  
    • I can help with play testing
    •  
    • I can help with story design
    •  
    • I can help with voice acting
    •  
Re: AGS engine PSP port
« Reply #17 on: 19 Jul 2011, 08:24 »
I dont see some of those files. And the Eboot is inside bin however the way you have it shown is that it is in the AGS folder. If I use the AGS folder then the icon is damaged however when I use the bin folder out side of the AGS folder with the ebout/psp.cfg inside it it shows but I get that error even though the game is in that folder with eboot.

What's a bear to do? :(
« Last Edit: 19 Jul 2011, 08:39 by Studio3 »

JJS

  • AGS Project Admins
Re: AGS engine PSP port
« Reply #18 on: 19 Jul 2011, 08:31 »
"bin" folder? Are you using the old version that I initially posted in the engine thread?

Please download the current one from the URL given in the opening post.
Ask me about AGS on PSP, Android and iOS! Source, Bug tracker, Daily builds

icey games

  • Official KH tester
    • I can help with backgrounds
    •  
    • I can help with characters
    •  
    • I can help with play testing
    •  
    • I can help with story design
    •  
    • I can help with voice acting
    •  
Re: AGS engine PSP port
« Reply #19 on: 19 Jul 2011, 08:44 »
So there was an update after all, I thought it was. Thank again for helping me through this.