AGS engine PSP port

Started by JJS, Fri 15/07/2011 16:27:57

Previous topic - Next topic

JJS



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.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

Joseph DiPerla

Joseph DiPerla--- http://www.adventurestockpile.com
Play my Star Wars MMORPG: http://sw-bfs.com
See my Fiverr page for translation and other services: https://www.fiverr.com/josephdiperla
Google Plus Adventure Community: https://plus.google.com/communities/116504865864458899575

LimpingFish

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?

Steam: LimpingFish
PSN: LFishRoller
XB: TheActualLimpingFish
Spotify: LimpingFish

Dualnames

Those are great news. Now let's make than android port :P (I doubt that's doable :P)
Worked on Strangeland, Primordia, Hob's Barrow, The Cat Lady, Mage's Initiation, Until I Have You, Downfall, Hunie Pop, and every game in the Wadjet Eye Games catalogue (porting)

monkey0506

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.

Icey


Dualnames

Quote from: monkE3y_05_06 on Sat 16/07/2011 00:52:04
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!!
Worked on Strangeland, Primordia, Hob's Barrow, The Cat Lady, Mage's Initiation, Until I Have You, Downfall, Hunie Pop, and every game in the Wadjet Eye Games catalogue (porting)

Joseph DiPerla

Quote from: Dualnames on Sat 16/07/2011 00:29:07
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
Play my Star Wars MMORPG: http://sw-bfs.com
See my Fiverr page for translation and other services: https://www.fiverr.com/josephdiperla
Google Plus Adventure Community: https://plus.google.com/communities/116504865864458899575

JJS

Quote from: LimpingFish on Fri 15/07/2011 21:49:39
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 ;).)

Quote from: LimpingFish on Fri 15/07/2011 21:49:39
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, Daily builds

Calin Leafshade

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.

LimpingFish

Quote from: JJS on Sat 16/07/2011 06:37:40
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. :)
Steam: LimpingFish
PSN: LFishRoller
XB: TheActualLimpingFish
Spotify: LimpingFish

JJS

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, Daily builds

Icey

#12
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.

JJS

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, Daily builds

Icey

Thanx a bunch. I was def not thinking about putting anything in that folder.

Icey

Every game I use it says I need to create a save game folder and t can't find the Eboot.pbp

JJS

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.adventuregamestudio.co.uk/yabb/index.php?topic=43962.0

The AGS engine must be extracted to the GAMEs folder. I think you've done that right, but still:

The folder "x:PSPGAMEAGS_Runtime_for_PSP_3.21" then contains these files:
Code: ags

P:PSPGAMEAGS_Runtime_for_PSP_3.21>dir
 Datenträger in Laufwerk P: ist A

 Verzeichnis von P:PSPGAMEAGS_Runtime_for_PSP_3.21

12.05.2011  13:58    <DIR>          .
12.05.2011  13:58    <DIR>          ..
19.07.2011  08:19    <DIR>          Project 304 style
17.07.2011  23:04         3.226.402 ags321.prx
17.07.2011  23:04           232.765 EBOOT.PBP
17.07.2011  23:04             2.466 exception.prx
17.07.2011  23:04             2.958 kernel.prx
17.07.2011  23:04             9.547 License.txt
17.07.2011  23:04               709 psp.cfg
17.07.2011  23:04             7.782 readme.txt
               7 Datei(en),      3.482.629 Bytes
               3 Verzeichnis(se),    366.051.328 Bytes frei


And the folder "x:PSPGAMEAGS_Runtime_for_PSP_3.21Project 304 style" is where you extract the game files from your download:

Code: ags

P:PSPGAMEAGS_Runtime_for_PSP_3.21Project 304 style>dir
 Datenträger in Laufwerk P: ist A

 Verzeichnis von P:PSPGAMEAGS_Runtime_for_PSP_3.21Project 304 style

19.07.2011  08:19    <DIR>          .
19.07.2011  08:19    <DIR>          ..
07.07.2011  13:47        23.166.419 PMQ.NO1.exe
07.07.2011  13:47            57.368 winsetup.exe
09.07.2011  02:26               314 acsetup.cfg
07.07.2011  13:47         3.072.825 audio.vox
09.07.2011  02:02            74.112 pass3.png
               5 Datei(en),     26.371.038 Bytes
               2 Verzeichnis(se),    366.051.328 Bytes frei


When I run the port with this setup, everything works as expected for me. The error you are receiving sounds like the files are still in the wrong place, so can you please check that?
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

Icey

#17
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? :(

JJS

"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, Daily builds

Icey

So there was an update after all, I thought it was. Thank again for helping me through this.

JJS

Uploaded a small update. It fixes some bugs and adds more compatibility options. You can now force the engine to clear the sprite cache on every room change which helps reducing the memory footprint. Also there is an option to enable additional 4 MiB of RAM. While enabled, you cannot use the suspend function or Go pause feature.

Have fun! :=
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

JJS

Update time!

Version R3 adds support for engine plugins! At the moment only AGSBlend by Calin Leafshade and my recreation of the SnowRain plugin are available. But this makes e.g. Gemini Rue fully playable. A video of it can be found here: http://www.youtube.com/watch?v=p7kmyTYzG0w

If anyone is interested in compiling the open source ags_snowrain plugin for Linux or Mac or making improvements to it, be my guest. It is not 100 % the same as the Windows plugin, especially savegames are not compatible.

The source is on Gitorious and the binaries are found on my website as always (check the opening post).

(Sorry for double posting, but I thought this update warranted a thread bump.)
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

LRH

<--- Almost kinda/sorta considering getting a PSP for this reason alone.

Icey

#23
Good luck, unless you order it offline. The reason to this is because a PSP system that are sold in stores come with version 6.39.

You best chance is to find one that is already hacked, or one with a firmware lower then 6.38. I guess if you want the most up to date hack fireware then I suggest you go with 3.68 ME however I found problem with it. But there was some other people that got it working. I recommend going with 5.50 gen D.

JJS

Actually every PSP can now run (L)CFW/HEN including those with firmware 6.39. PRO, TN and ME are available for 6.39 and there is also the option of downgrading.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

Icey

So I can hack 6.39! I would like to re-hack my phat PSP however I think one is enough.

LRH

I plan on getting an older one, if I get one at all, that is :P It would be a big decision for me.

JJS

Domithan, just make sure not to get a PSP-1000 because the port doesn't run well on it. A PSP-2000 with datecode 8B and below offers you the most options in terms of CFW.


Anyway, here is another update to R4.

This one adds midi music playback and sound caching for WAVE files. You might want to check out the Fountain of Youth demo again for the soundtrack.

For midi playback you need GUS patches. The best option is to download "Richard Sanders's GUS patches" from the Allegro website. Rename the file to "patches.dat" and place it in the same directory as the Eboot.

Links to the download and source are in the opening post.


Updates will probably slow down from now on until the older engine sources are released (*fingers crossed*).
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

ddq

And don't get a PSP Go cause they suck. There are some actually good normal games on PSP too, but running AGS games on it sounds hella sweet.

Jinx1337

Quote from: JJS on Thu 28/07/2011 18:00:34
Domithan, just make sure not to get a PSP-1000 because the port doesn't run well on it. A PSP-2000 with datecode 8B and below offers you the most options in terms of CFW.


Anyway, here is another update to R4.

This one adds midi music playback and sound caching for WAVE files. You might want to check out the Fountain of Youth demo again for the soundtrack.

For midi playback you need GUS patches. The best option is to download "Richard Sanders's GUS patches" from the Allegro website. Rename the file to "patches.dat" and place it in the same directory as the Eboot.

Links to the download and source are in the opening post.


Updates will probably slow down from now on until the older engine sources are released (*fingers crossed*).

Dear JJS - not only did you grant my innermost wish of playing AGS games on the PSP, you are also responsible for porting ABUSE.
I wish I could hug you over the internet, kind sir.

Thank you for the very frequent updates; can contain my excitement for earlier AGS versions to go open source as well.

Might I suggest two things?

1) Could you somehow code a FULLSCREEN/STRETCHED graphics mode? I know it slightly botches the aspect ratio, but some people (like yours truly) just like to have the thing fullscreen. Pretty please?

2) Could you consider making a 'cursor slowdown' button? ScummVM uses the right trigger, which - when pressed and held - slows the "mouse" cursor movement down, making it much more comfortable to hunt for one-pixel-items.

Other than that, the port is wonderful.

I've never been following a project actively so much, since Exult PSP.

Once again - thank you very, very much.

Icey

If he made it where it could go fullscreen you couldn't see the the key options. And the +(D) pad slows down the cursors movement.

JJS

You're welcome!  ;D

To your questions:

1) Fullscreen mode is not implemented right now because it indeed clashes with the onscreen keyboard. But it will be implemented eventually, I just have to switch to double buffered drawing so that it doesn't flicker (as it would now).

2) As Studio3 said, the DPAD can be used but I will consider your suggestion.


Compatibility might improve soon actually because I noticed that games down to 3.1.1 are compatible with the 3.2.1 engine except for the sound system. It doesn't seem too hard to create the necessary SoundClip data structures on loading the game though.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

Jinx1337

#32
Got it!

They keyboard works good as it is now - but you could also try implementing the open source Danzeff Keyboard, which wouldn't clash with fullscreen. Then again, Danzeff would make it harder to fight, i.e. in the Quest for Glory 2.

Also, up/down/left/right could be mapped as arrow keys (which could help some games) in that situation.

Do you reckon mscard reading speed could improve? I hate those tiny little breaks between voice lines in Gemini Rue. And I'm using PRO's firmware MS SPEED UP option already ;)

What is the most optimal setting for cache in your opinion?


edit:

Oh, and lastly - do you think you'd be able to find a way to somehow optimize the PSP's memory (or maybe lessen its consumption) in the longer run? Quest for Glory 2 still crashes on me, even with the cache clearing on screen change and extra memory :(

Sorry to bother you with all the questions / suggestions - I'm just really enthusiastic about your project! Wish I could help you, but I can't code for squat. Cheers.

JJS

If using an already made keyboard I would go with Danzeff, yes. Probably with an extended charset and with button combination like in PSPVLC. But Danzeff uses several PNG images for its display and this will make the memory situation worse.

Do you know that you can create custom button mappings with the psp.cfg configuration file? I posted an example file for Gemini Rue (so that you can fight/push boxes here). Available keys are listed in the Readme file.

Memory stick performance is indeed a bottleneck but I don't see any way to fix the delay before a spoken line unless I would implement some "reading ahead" mechanism that loads the next dialog lines while the current ones are spoken. Of course this would not work too well with dialog trees and it would again consume precious memory. As for the PRO Memory Stick cache, I have no experience.

QFG II is really a very tight fit memory wise. Without the extra memory you cannot even watch the whole intro cutscene. I don't know if that can ever be made fully playable.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

Icey

Would it be possible to make it were it uses memory from the SD card? Maybe the game could use the psp memory to run however at the same time use the memory from the SD card that way the games could run maybe with out crashing unless your cards runs out of space.

Or maybe there is some other way to do this so that you wont take up a lot of space on the card like having the app take up a chunk of space then when you exit the game it restores that space.

JJS

I already touched on the subject of virtual memory here. The PSP lacks hardware support for it so it would be painfully inefficient and slow. Nevermind that the memory stick speed is low anyway even if it was technically possible.

The only way to decrease the memory footprint is to change the way AGS handles the game resources (delay loading till it is really needed and free everything immediately afterwards). Not an easy task though.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

Jinx1337

#36
Have you tried contacting the ScummVM team responsible for its PSP port?

Mainly Bluddy, MD5, jstoop or Pix? [I reckon Bluddy would be the first one to help]

They've been optimizing the PSP port in terms of memory since ages and have quite an experience with it (memory heavy games like SCI1/1.5 engine, Toonstruck, Return to Zork or even 7th Guest work wonderfully thanks to their input).

It might be a totally different situation in case of AGS (who am I to know, huh?) and I might be shooting in the dark, but thought it would be worth suggesting nevertheless.

Jinx1337

#37
As for the PRO firmware: it consists of two things as far as I'm aware.

Faster MS Card driver (which existed well before M33 firmwares, removed in newer firmwares to stop piracy [as far as I know from the scene]). It was then put as an option in M33 firmwares, removed in post-M33 and injected back with PRO (and possibly ME, but I can't vouch for that). You can enable it through Recovery Menu -> Advanced settings.

The second thing is Inferno/NPD9900 ISO driver cache. Not sure how it works, tho you can set up the cache size in MB, number and even policy (LRU or random).

Both of these things speed up the MS access CONSIDERABLY and then some more.

edit:

Oh, and wouldn't unpacking the games somehow help in accessing the files as well?

JJS

Thanks for the suggestions!

Not sure if the ScummVM guys can help as they would have to dig into the engine themselves first. I will keep that in mind though.

Unpacking the files might provide a small speedup. In fact this is not too hard to try because the engine looks for the file outside of the packfile first anyway. I will experiment with that.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

Jinx1337

Hey, it is me who ought to thank you for all the work you're putting into this. ;)

As to the ScummVM games, I figure they could at least hint at the memory workarounds they themselves came up with.

Cheers  JJS, patiently awaiting any updates to the project!

Dataflashsabot

Someone really needs to release Allegro for Android! AGS will be easy after that.

To clarify, the only thing that needs to be done in Java is a tiny wrapper to collect input and ouptut image and audio; a tiny "glue". There's no need to rewrite anything. :)

JJS

R5 released now!

This one adds compatibility for 3.1.1 and 3.1.2 datafiles. 8)

Also a bit more memory is available because the MOD player is gone (anyone knows a game that uses this format?) and the hq2x3x filter is removed as there is no filtering available on the PSP port anyway.

TTF text is now always drawn without anti-aliasing because this option corrupted some text before.

Quote from: Jinx1337 on Fri 29/07/2011 23:21:27
2) Could you consider making a 'cursor slowdown' button? ScummVM uses the right trigger, which - when pressed and held - slows the "mouse" cursor movement down, making it much more comfortable to hunt for one-pixel-items.
This is implemented too. In the default configuration is is mapped to the right trigger.

Enjoy! And please let me know any bugs/crashes/major slowdowns!


Download as always from the links in the opening post.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

Dataflashsabot

A question- how are you adding support for old versions without their source code?
Another, related question- I can drag an old AGS game over a new acwin.exe and it runs fine. Also works if I rename it to ac2game.dat. How does this work without backward compatibility? Is there any chance of this being able to run 2.x games?

JJS

#43
The only data file difference I see between 3.2.1 and 3.1.1 is that the older file lacks the game.audioClips and game.audioClipTypes data structures. So my code reads in all music and sound files present in the data files and  generates those structures from them. And with that the game runs (there is a tiny bit more to it, but read the source for that).

Amazingly you are right and the 3.1.1 acwin.exe seemingly can run 2.72 games :o. I will look into that.

Edit: Looks like whatever backward compatibility code there was in 3.1.x is gone in the current version. For example, I don't see how the old interaction system was defined/stored.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

Dataflashsabot

Quote from: JJS on Tue 02/08/2011 17:51:43
Edit: Looks like whatever backward compatibility code there was in 3.1.x is gone in the current version.
Well shit.
Quote from: JJS on Tue 02/08/2011 17:51:43
For example, I don't see how the old interaction system was defined/stored.
As in the interaction editor? I thought that "compiled" straight to code, behind the scenes.

monkey0506

I don't see what the Interaction Editor would have anything to do with 3.1.x compatibility considering that the IE was removed in AGS 3.0. Anything 3.0+ doesn't use the IE at all, and only uses the scripts.

JJS

#46
We are talking about 2.x compatibility here  ;).

Anyway the interaction stuff is figured out because the engine still has support for the old format (I was wrong with my previous assesment). So the only big part missing is a dialog script interpreter now. There are also a few glitches (e.g. games running too fast).

Edit: Ok, I think I understand the dialog format now.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds


Jinx1337

Can hardly wait for updates!

JJS

New release R6.

This one brings mainly one thing: Compatibility with AGS 2.60 and up. ;D

There are a few glitches that occur in older games though. They are the same as running the games with the 3.1.1 Windows engine and are most likely caused by bug fixes and subtle data format changes.

A strange bug is that drawing order calculations in 2.x seem to be done differently than in the current version. This is very much noticable in the intro to Garfield. Also in Ben Jordan 7, after the Ben walks into his room in the intro he is drawn on top of the door while it is closed instead of behind it. Both Ben and the door have the same baseline value that is calculated from their y-position. Therefore is is probable that the order in which objects and characters are added to the "things to draw" list is inverted in 3.x compared to 2.x.

Also in the Ben Jordan games, especially in the deluxe versions: Ben often faces the wrong direction when entering a room. There is a script call to FaceLocation just before the room changes that turns the character around. It looks like that call is supposed to happen after the room change though. Very puzzling.


On the technical side, what was done to achieve the compatibility is adding the legacy formats to the loading function and writing a parser for the old dialog scripts. You can check that in the commit log.

As always, the download and source links are in the opening post.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

Jinx1337

#50
Awesome!

A thousand 'thank yous', JJS!

Do you remember how I asked you if decompressing the games would help achieving better loading times? What tools would I require to decompress a random game of my choice?

It is driving me beyond crazy, how every action takes ca. 1-2 seconds to process in Kings Quest games; I actually had to switch the voices off in order to play the game comfortably. :)

And can I hope for the fullscreen feature I await so much in the nearest future?


Once again, cheers to you kind sir!
Thank you!

edit:

yeah, in 7DAYS it reads the MS for about half second every time a character takes a step; loading up the 'footsteps' sound files make characters walk like slo-mo robots ;)

LimpingFish

Quote from: Jinx1337 on Mon 08/08/2011 19:59:46
Now, remember when I asked you if decompressing the games would help speeding up the loading times? What tools do I need to try and decompress a random game of choice?

Compiled AGS games are encrypted. Try an open-source game, such as this one.
Steam: LimpingFish
PSN: LFishRoller
XB: TheActualLimpingFish
Spotify: LimpingFish

Jinx1337

Quote from: LimpingFish on Mon 08/08/2011 20:15:02
Quote from: Jinx1337 on Mon 08/08/2011 19:59:46
Now, remember when I asked you if decompressing the games would help speeding up the loading times? What tools do I need to try and decompress a random game of choice?

Compiled AGS games are encrypted. Try an open-source game, such as this one.

Is that so? Just tried Infinity String - one second load times between steps when a character walks. Gah...

Other than that, it seems to run the older games just fine! Awesome job JJS!

Jinx1337

#53
Hm... "A tale of two kingdoms" doesn't show the dinner scene at all after returning the king's scepter at the very beginning of the game.

The game instead 'freezes' on a fadeout after which the dinner should happen.
The game skips the scene when you press START (mapped to the ESC key, was it?) and continues to play.

JJS

Extracting the data files is pretty straightforward with the engine source, but I don't feel comfortable with providing an extraction tool.

The delay should not be as bad as you describe though because the audio cache should have the footstep sounds loaded after the first two steps. I will try to completely get rid of the memory stick access on playing cached sounds though.

A tale of two kingdoms doesn't actually "hang". The problem is that the game tries to draw messages while the screen is faded out. Seems like this was possible in 2.x but it is not anymore in 3.x. In the current engine, the screen fading is done by a graphic filter until the screen is completely faded out. Then the engine just stops drawing anything. My guess is that the fadeout was applied differently in older versions. A quick workaround for ATOTK is to always draw the screen, even when faded out. But this causes other screens to fade out completely and then after the filter is done, switch back to full brightness. I am really not sure how to handle this.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

Dataflashsabot

Legacy compatibility? Now that's awesome! I'm going to make my very best attempt at an Android port just as soon as there's a port of Allegro.

Jinx1337

Bump!

Any updates JJS?

Cheers!

lestat666

#57
Anybody try running Maniac Mansion Deluxe ver 1.4???

I can't seem to get it to run, and the psp port of AGS doesn't tell me that it is incompatible either.

Here is the error I am getting,
Script Link failed: Runtime Error: unresolved import /GetFlashlightMinLightLevel/

I tried version 1.1 of the game too, but that gave me a different error about a file being corrupt.

I have tried setting the resolution to 320x200 and disabling music and sound, but still it is not working.
Does anyone have any advice?

Is it even possible to run this game in this build of PSP AGS?

The game is in fact working on my pc, so I know I don't have corrupted files.

I tried contact JJS directly via his website email, but haven't heard anything, so I thought I would try here.  Not sure if he is still working on the build or not. 

It would be great to get this game working on the PSP. 

Any help is greatly appreciated.
Thanks again.

Khris

MMD uses the flashlight plugin; my guess is the PSP port doesn't support plugins yet.

(GetFlashlightMinLightLevel is one of the commands added by the plugin)

lestat666

I hope JJS is still working on this.

That feature would definitely be something that would add allot of support for many games.

JJS

#60
Actually plugins are supported by the PSP port and there are already the AGSBlend and ags_snowrain plugin available. I am at the moment working on a recreation of the flashlight plugin, you can expect a new release in one or two weeks I think.

What will also be fixed is Ben Jordan facing the wrong way after entering a room. The cause for this was that the new engine doesn't put a character immediately to the new location after a script call to change the room but does so on actually changing the room only. This is why the FaceLocation() call didn't produce the desired result as the character was still standing on the old coordinates.

If I cannot figure out how to make it possible to draw after a screen fadout without glitches in other games, I will add a setting in the config file so that A Tale of Two Kingdoms becomes fully playable without disappearing text.

Edit: Almost forgot, the score sound will also be fixed (for real this time ;)).
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

monkey0506

The Flashlight plugin is deprecated though. You should just tell those MMD guys to get with the times and use the module. ::)

[/shameless plug]

lestat666

The MMD guys are no longer working on the game.  It was released back in 2004 and I read somewhere they have since gotten a cease and desist letter.  So, unfortunately, it is going to have to use the flashlight plugin.

I am really excited for the new release though.  This and ScummVM made me love my psp that much more.

I plan on playing Gemeni Rue on it soon.  It's great, because I don't get much time to sit in front of a computer, but being able to bring my gaming with me, allows me to actually get some time to play.

Icey

Just a thought. Would it be possible to port AGS to the ps3? I mean sure I could plug my psp into the TV but wheres the fun in that when the screen doesn't even line up right. Also this would allow games to run in their correct/appropriate dimensions.


Icey

But it must be possible. I think it will take more time to create a port but it has to be possible.

Khris

Sure it's possible. You could port AGS to cash registers with LCD screens; the important thing is, what's the point?
Pretty much everybody who plays console games has a laptop nowadays, too.

lestat666

That never stopped ScummVM from making all their ports.

timofonic

#68
Quote from: lestat666 on Mon 03/10/2011 02:07:29
That never stopped ScummVM from making all their ports.

Indeed...

And it's one of the nice points of the project: their romantical hacker (I mean the true hackers, the ones that revolutionized the computers) attitude :)

WARNING: Please do not talk about ScummVM! If you do it, others from this forum will accuse you of:


  • Troll
  • Traitor and conspirator of massive borg assimilation
  • Not true to the AGS community spirit
  • Killer of Bambi's mother
  • Erectile problems
  • Internet connection problems
  • Guilty of the global warming
  • Decline of adventure games and FPS games ruling the videogame industry
  • Global economical crisis
  • End of the world in 2012
  • Tons of other nonsense, unrelated, absurd and without reason arguments.
  • Many more no sense arguments too.
  • Plus some pejorative comments.
If you mention it, you will also go to hell. But not a simple hot hell with lots of sadomasochistic torture, but one full of computers where the only program available are (clonical) First Person Shooters.

All this while ScummVM project gets exponentially more success and more games supported (both from current engines and new ones).

So... What's happening? :)

JJS

Jeez... can we please remain on topic and stop the trolling  ::)

It was a perfectly legit question imho. Unfortunately I don't have a PS3, so I will not make any effort in that direction. But I am sure it would not be all that hard since porting Allegro doesn't seem to be very difficult as it can do all drawing in software and you only have to blit the final image to the screen. What remains is audio and input which should be straightforward.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

Snarky

Quote from: timofonic on Mon 03/10/2011 03:46:46
WARNING: Please do not talk about ScummVM! If you do it, others from this forum will accuse you of:


  • Troll
  • Traitor and conspirator of massive borg assimilation
  • Not true to the AGS community spirit
  • ...
  • Plus some pejorative comments.
If you mention it, you will also go to hell. But not a simple hot hell with lots of sadomasochistic torture, but one full of computers where the only program available are (clonical) First Person Shooters.

All this while ScummVM project gets exponentially more success and more games supported (both from current engines and new ones).

So... What's happening? :)

Yeah, that has never happened. Specifically, no one has ever called you names on the forum for advocating an AGS-ScummVM merger. Having people disagree with you is not the same as being persecuted for your opinion.

There's been a lot of discussion around making AGS ScummVM-compatible, and everyone tends to agree that it would be very nice in principle. However, there are practical problems in refactoring the code base, reconciling the licenses, and managing the development. The result of this is that the ScummVM devs are currently not interested in porting AGS 3.x, and since AGS 2.x remains closed-source for the moment (I'm guessing mainly because CJ hasn't had time to do anything about it), that's not feasible either.

timofonic

#71
On topic discussion: Are there plans to merge the different AGS ports and forks into a common code base?



Off topic, ignore this if you aren't interested on...

Of course, don't keep my message too serious as I was exaggerating a lot about it. I was joking about it, of course the topic is somewhat controversial but I see the AGS community a good one considering the diversity of people here. My humour can be quite weird and not so obvious, so I hope this reply can make things more clear this time :)

CJ is aware about releasing older versions and such, I even mentioned his older Visual Source Safe could be converted to Git by using the vss2git tool and some work from people could make the full repository from early AGS development days to be available to everyone. That's even better than just releasing older versions, because it can be used for a proper development process to track changes and check bug regressions. Of course he is too busy IRL and wants to do a full source code release of the editor first.

You are wrong about ScummVM Team not interested in AGS. They showed interest on it in their forums and Chris Jones showed his opinion on the matter. His main reason were

The license issue of AGS is no problem, as the Artistic License 2.0 is GPL compatible.

Also, Chris Jones changed his mind on the matter as he was against Open Source because negative experiences in the past. What are his current reasons for not using a widely used FOSS license instead now? I appreaciate his works, but it seems he still not understands the nature of the authentic Open Source that derives from the hacker ethic.

ScummVM project members don't want to control any project, that not happened and this is a wide effort done by volunteers instead some commercial group. In fact most engines have separate subteams working independently, and most of them "just" caring on their part of the code. They share a common code base in form of things like the OSystem framework (the part that does the crazy wide portability magic) and the User Interface (list of games to load, savegame management...). They are more like separate projects inside a common ecosystem.

Code refactoring is an issue, of course it is. But ScummVM Team has quite experience refactoring source code from different sources (other reimplementations, from the original game(s)...) and as their team has a good number of reverse engineering geeks they have the skills to even work with spaguetti and assembly source code. The only problem is the motivation, so it's up to motivate enough developers for the task. Some examples of code refactoring happened on ScummVM are:  Discworld, Drascula, Flight of the Amazon Queen, FreeSCI, Revolution Software games, Sarien, Soltys, Sword25 (authorized Broken Sword fangame), TrollVM...

About management, each engine is managed by a group of people (often called subteams). There's common issues, but the project management is very flexible because that's how Open Source communities work better. I'm sure all parts can have a nice agreement and solve differencies by consensus, that's how community-driven Open Source works.

ScummVM Team is very open to debating and they talk with individual and corporate entities to different kinds of topics.

In my opinion this project is strong in technical, management and legal sides.

Chris Jones Said this on the ScummVM forums too...

Quote from: CJ-AGS
I've said that, should the ScummVM team want to, they are welcome to go ahead and implement support for running AGS games into ScummVM.

I didn't want to write about this again, as it has been discussed previously in the forums. But ScummVM got mentioned, I made a joke that got interpreted wrongly and wanted to clarify the topic too. Maybe it's because I'm not a native English, so sometimes my sentences aren't understood in a correct way.

Now this it's up to Chris Jones, when he finds enough time to release all the necessary source codes and   can be possible to pragmatically discuss if both parts (ScummVM and AGS programmers' communities) are iterested on this or not. The key people are the developers of the projects, beause that's where the major and essential effort must to be done.

Quote from: Snarky on Mon 03/10/2011 11:43:19
Quote from: timofonic on Mon 03/10/2011 03:46:46
WARNING: Please do not talk about ScummVM! If you do it, others from this forum will accuse you of:


  • Troll
  • Traitor and conspirator of massive borg assimilation
  • Not true to the AGS community spirit
  • ...
  • Plus some pejorative comments.
If you mention it, you will also go to hell. But not a simple hot hell with lots of sadomasochistic torture, but one full of computers where the only program available are (clonical) First Person Shooters.

All this while ScummVM project gets exponentially more success and more games supported (both from current engines and new ones).

So... What's happening? :)

Yeah, that has never happened. Specifically, no one has ever called you names on the forum for advocating an AGS-ScummVM merger. Having people disagree with you is not the same as being persecuted for your opinion.

There's been a lot of discussion around making AGS ScummVM-compatible, and everyone tends to agree that it would be very nice in principle. However, there are practical problems in refactoring the code base, reconciling the licenses, and managing the development. The result of this is that the ScummVM devs are currently not interested in porting AGS 3.x, and since AGS 2.x remains closed-source for the moment (I'm guessing mainly because CJ hasn't had time to do anything about it), that's not feasible either.

monkey0506

This isn't even so much about merging or compatibility with ScummVM as it is about you telling us how wildly unsuccessful AGS will be if we don't adapt exactly the same project model. You yourself said that the Artistic License is "GPL compatible" and then in the same breath turn to ask, to the point of being reprimanding, why Chris hasn't used a "widely used FOSS license" instead of using one that he personally felt would reserve his rights whilst giving the freedom of opening the source.

Both the editor and the engine are now open-sourced, the only piece missing is the compiler itself. The engine is powerful and dynamic enough that new functions, properties, and structs can even be added without requiring changes to the compiler. The only thing you would need the compiler source for would be to include new keywords or operators, or include other features of a similar nature.

So, the compiler source really has nothing to do with portability.

As for the forks you've mentioned, nearly every user-submitted change has already been merged into the main codebase, and those that haven't likely will be in the next version.

Please, stop complaining about how deviant we are from the "norms" of FOSS. This is CJ's program that he started, and until very recently has been the sole author of, more than a decade ago. Seriously, I think he has some idea of what he's doing at this point.

timofonic

It's not about norms, it's how it works after all. Projects need organization, he'd currently quite busy and no other people has steped up at this time for the management tasks.

The interesting thing is to have a very portable engine, that would probably require a considerable effort to have the AGS runtime on a wide variety of platforms.

I appreacite his "rights" and such, but I also appreciate my rights as user. But please not start an ideological/technical debating.

Anyway, this is just speculating because it's up to CJ for the task. And it's offtopic...

Quote from: monkey_05_06 on Mon 03/10/2011 16:26:13
This isn't even so much about merging or compatibility with ScummVM as it is about you telling us how wildly unsuccessful AGS will be if we don't adapt exactly the same project model. You yourself said that the Artistic License is "GPL compatible" and then in the same breath turn to ask, to the point of being reprimanding, why Chris hasn't used a "widely used FOSS license" instead of using one that he personally felt would reserve his rights whilst giving the freedom of opening the source.

Both the editor and the engine are now open-sourced, the only piece missing is the compiler itself. The engine is powerful and dynamic enough that new functions, properties, and structs can even be added without requiring changes to the compiler. The only thing you would need the compiler source for would be to include new keywords or operators, or include other features of a similar nature.

So, the compiler source really has nothing to do with portability.

As for the forks you've mentioned, nearly every user-submitted change has already been merged into the main codebase, and those that haven't likely will be in the next version.

Please, stop complaining about how deviant we are from the "norms" of FOSS. This is CJ's program that he started, and until very recently has been the sole author of, more than a decade ago. Seriously, I think he has some idea of what he's doing at this point.

pcj

Quote from: timofonic on Mon 03/10/2011 17:44:43I also appreciate my rights as user.

What rights are those, the ability to demand that the author change his code to accommodate your wishes? I'm not familiar with those.
Space Quest: Vohaul Strikes Back is now available to download!

Snarky

Well, the discussions on the ScummVM forums showed that while making AGS and ScummVM compatible was an attractive idea technically, there didn't seem to be a way for the projects to work together that both AGSers and ScummVM devs would be happy with. So the idea was shelved for now.

As for the rest of it, if someone wants to make it happen, they can. It's just a matter of stepping up to the task and putting in the work. Refactoring, porting, even source control, bug tracking and all the rest doesn't magically happen just because you adopt some particular development model. You need people to do the work. Ultimately, the form of the project will be decided by those who pitch in.

Icey

So how did this start anyways.

lestat666

I can't believe I started that with one comment.  WHOOPS....

So in the new release, with the flashlight plugin implemented, should Maniac Mansion Deluxe run in that release or is that still for a future release?

I also just want to say, that I appreciate all the work you are doing on this.


JJS

#78
New release: R7!

This one brings mainly backwards compatibility fixes:
- Talk animations are fixed for Sierra style speech because they now default to speed 5 instead of using the respective global var.
- Narrator text is now displayed after a fade out in ATOTK. Seems like 2.x always does a fade-in if a message box is displayed.
- Fixed various wrong character loops in Murder in a Wheel caused by different FaceLocation() logic in the 3.x engine.
- Fixed Ben Jordan looking the wrong direction after entering a room. This was caused by the 3.x engine not setting the new char coordinates immediately after a room change request so that the FaceLocation() call would operate on the old location.
- Fixed Ben Jordan being chained to the ceiling in the game show scene. E: Fixed that again, it was also caused by the FaceLocation() logic.
- Fixed invisible mouse cursor in certain dialogs. The 2.x engine implicitly makes the cursor visible when starting a dialog, the 3.x one doesn't.
- Fixed the game show not ending in BJ5. This was caused by a bug in my old style dialog script interpreter that caused the StopDialog() function to not work.

Also a flashlight plugin workalike was added.

Download and source link as always in the OP.

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

lestat666

Maniac Mansion Deluxe is working!

I am a happy camper   ;D

Jinx1337

JJS, are you still working on this project?

I truly hope it doesn't end up abandoned.

I love the October update, however I am still hoping for the stretched widescreen support.
However, I still get loading times between sound effects like footsteps (which result in 2 sec pauses between steps the characters take).

lestat666 - I am getting these in Maniac Mansion Deluxe as well (apart from "X days a..." games); you sure have these playing smoothly?

Cheers and all the best, JJS

lestat666

Really???

That is strange...... I just loaded up MMD.  I hadn't started it yet because i am playing gemeni rue.   No delays for footsteps when in front of the Mansion.  What mod are you using?  I wonder if that has something to do with it.  I am running pro B 10 on a psp fully hackable 2000.  Is yours a 1000?  I know the 1000s only have 32MB RAM instead of 64.....  that could have something to do with it too.

I actually came here because I ran into a problem with Gemini Rue, which i thought was fully functional.  I am getting an error at the point where i take the photo I got from Kenneth and stick it in the Terminal in the second Act.  The says Data Pack received (this is part of the game) and then I get this error.

And internal error has occured blah blah...
if problem persists, post at AGS technical forum.
(ACI version 3.21.1115)
Error: Unable to create local script: Runtime Error: unresolved import 'List'

Any ideas anybody??


lestat666

So I tried loading my save game on my pc to get past this point and i get an error stating unable to open, saved with a different interpreter.... ERRR!

Guess i am going to have to wait to see what everyone's take is on it, as I am officially stuck due to the error, unless I replay the whole game to this point on my pc....
I'd rather play it on the psp though.. looks so much better on a smaller screen.

Thanks for everyone's help.

JJS

This is most likely a bug that was introduced with a backward compatibility fix. It should work again in this version based on the latest changes in the GIT repository: http://jjs.at/temp/AGS_Runtime_for_PSP_3.21_git.zip
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

Jinx1337

Quote from: lestat666 on Thu 05/01/2012 02:02:43
Really???

That is strange...... I just loaded up MMD.  I hadn't started it yet because i am playing gemeni rue.   No delays for footsteps when in front of the Mansion.  What mod are you using?  I wonder if that has something to do with it.  I am running pro B 10 on a psp fully hackable 2000.  Is yours a 1000?  I know the 1000s only have 32MB RAM instead of 64.....  that could have something to do with it too.

PSP 2000, fully hacked with latest PRO as well (memstick speed up turned on in recovery as well).

I'll try getting to it tommorow and recording a video of said delay.

Sane Co.

Has jjs fixed flashlight.prx yet? Just wondering.

JJS

Jinx1337, do you have the sound cache enabled? This is done with setting "cache_size = x" in the "sound" category of "psp.cfg", with x being bigger than 0. Standard is 10.

Quote from: Sane Co. on Fri 06/01/2012 03:13:07
Has jjs fixed flashlight.prx yet? Just wondering.
What is broken about it?
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

Sane Co.

When I try to play either (a) The book the box or the key or (b) the new Ben Jordan 8 demo. An error message appears saying that Error: agsflashlight.prx is an old incompatible version. On any ags port I have tried.

Icey

Maybe it's from dump file or something I don't know I'm just taking a guess here.

JJS

Quote from: Sane Co. on Fri 06/01/2012 14:51:45
When I try to play either (a) The book the box or the key or (b) the new Ben Jordan 8 demo. An error message appears saying that Error: agsflashlight.prx is an old incompatible version. On any ags port I have tried.
Should be fixed in the newest version. You can get it here: http://jjs.at/daily
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

Sane Co.

jjs thank you for all your effort. i'll see if it works when i get to my computer.
thanks,
sane co.

lestat666

#91
Quote from: JJS on Thu 05/01/2012 08:40:28
This is most likely a bug that was introduced with a backward compatibility fix. It should work again in this version based on the latest changes in the GIT repository: http://jjs.at/temp/AGS_Runtime_for_PSP_3.21_git.zip

Quote from: JJS on Fri 06/01/2012 20:44:13
Quote from: Sane Co. on Fri 06/01/2012 14:51:45
When I try to play either (a) The book the box or the key or (b) the new Ben Jordan 8 demo. An error message appears saying that Error: agsflashlight.prx is an old incompatible version. On any ags port I have tried.
Should be fixed in the newest version. You can get it here: http://jjs.at/daily

What is the difference between the GIT version and the dailies versions and what version should I get?

Also, are those private links?  I can't seem to navigate to the links you provided on your actual website.  I can only seem to link to them from here.  Not that it really matters,  I was just curious because it seems we can keep even more up to date than just with the official releases.

Quote from: JJS on Fri 06/01/2012 07:29:44
Jinx1337, do you have the sound cache enabled? This is done with setting "cache_size = x" in the "sound" category of "psp.cfg", with x being bigger than 0. Standard is 10.

Did this happen to fix it Jinx1337?  I am curious, because I never had the problem and never changed any settings.

Thanks everyone for the quick input.  I thought i was going to have to wait a while.

Jinx1337

#92
Unfortunately, nope - the newest version didn't fix it.

Didn't know you have a daily build site tho, JJS - thanks for the link!

I've recorded how the game behaves (tried setting sound cache to 10, 20, 40 and even 1 [and 0] to disable it, but that doesn't seem to affect anything in my case).

MMD: http://dl.dropbox.com/u/22299599/Video%2007.01.2012%2006%2012%2043.mov
7 Days: http://dl.dropbox.com/u/22299599/Video%2007.01.2012%2006%2021%2051.mov

It is most apparent in the second video, when two guys walk together (and apparently, the sound effects overlap). Notice how the memcard LED blinks, showing the evident MS reading; as if nothing gets cached at all.
It happens in every game with footsteps sounds.

edit:
glad to have this thread alive again :)

JJS

Quote from: lestat666 on Sat 07/01/2012 02:53:23What is the difference between the GIT version and the dailies versions and what version should I get?
Get the daily build, it is most up to date and also includes the relevant fix for Gemini Rue. I only now decided to also build "developer" versions of the PSP engine, so there is nothing about it on the website yet.

Jinx1337, I will investigate this further.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

lestat666

There is only one other hardware thing i can think of if it is not a software issue.

What kind of memory stick do you have. 
I am using an 8GB Sony Memory Stick PRO-HG Duo HX.

I keep my regular Sony pro-duo as my Magic Memory stick.

If you are using a regular pro duo, i know they have slower read speeds.
The one I am using is 30MB a sec instead of 20...   

They are only 20 bucks brand new and come with a high quality reader.
Maybe you can try that out.

If this isn't the case, it maybe a software issue that JJS has to sort out.

LRH

#95
I have a handful of games that seem to crash on startup. Two of them are mine. Could this have something to do with having the games in windowed/fullscreen mode or anything simple like that?

Edit: Ugh, nevermind. I was being an idiot, I guess. I didn't realize it doesn't handle D3D9. Switching it to DirectDraw 5 fixed the games that don't work.

Jinx1337

Quote from: lestat666 on Sat 07/01/2012 22:20:33
There is only one other hardware thing i can think of if it is not a software issue.

What kind of memory stick do you have. 
I am using an 8GB Sony Memory Stick PRO-HG Duo HX.

I keep my regular Sony pro-duo as my Magic Memory stick.

If you are using a regular pro duo, i know they have slower read speeds.
The one I am using is 30MB a sec instead of 20...   

They are only 20 bucks brand new and come with a high quality reader.
Maybe you can try that out.

If this isn't the case, it maybe a software issue that JJS has to sort out.


I'm pretty positive I have the very same card, and it also shows up as a MAGIC GATE, so I know its legit.
Did you check the movies I posted? You don't get the same reading that I'm getting?

Weird indeed :)

lestat666

Well, Gemini Rue is working again, so that is great.

In MMD, I can't see any weird behavior in the vid you posted other than it hickups a little.  I guess mine does that sometimes.  And it does read the mem card when taking steps.  I guess i just never noticed it.  It isn't that noticeable for me.

This is kinda off topic, but I was trying to get Abuse for the psp working, which I got off your site.

The official abuse files are now updated to 0.8.  I followed all the instructions, but i get a bunch of errors about not being able to open sfx and some other file.....  I can't remember and then it kicks me back to the menu.

Any help is appreciated.
thanks.

JJS

For Abuse you need the "old" data files: http://abuse.zoy.org/attachment/wiki/download/abuse-data-2.00.tar.gz

There is always an access to the memory stick when a sound is played even if it is present in the cache. I don't really know what is read from the MS, but the sound is taken from the cache. The videos look pretty much like what I get on my PSPs. Probably the slight delay is simply from setting up and playing the sound. So it might be unavoidable.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

lestat666

I did notice one small thing with MMD too.

Sometimes when the text is over another object, it sometimes casts a ghost effect or double letters.

Not sure if this could be fixed.
Thanks again.


Gilbert

It is only two days, which is too early for bumping with a double post.

Don't do that again.

Jinx1337

Quote from: JJS on Sun 08/01/2012 18:40:55The videos look pretty much like what I get on my PSPs. Probably the slight delay is simply from setting up and playing the sound. So it might be unavoidable.

Aw, shucks.

I've noticed how sound intesive ScummVM games "stream" the audio without any hiccup, rather than pre-load it; maybe that would help?

Yeah, I don't know crap about coding. Don't mean to sound like a 'know-it-all-smart-ass' or anything ;)
Just thinking out loud.

lestat666

#103
I think the reason SCUMM on the psp can stream the audio so effectively is that it is not being taxed by using midi music.

It uses adlib still, unlike the pc version.

AGS uses midi.... so that with the sound effects maybe just taxes the system too much.

That is my best guess....

The hiccuping is really apparent during the gun fights in Gemini Rue.  Again, I think this is due to midi being used.  I just puts too much of a strain on the system.

JJS, did you happen to see the ghosting effect I was talking about with the text in Maniac Mansion Deluxe?

Sane Co.

#104
For some reason the port doesn't recognize the blackwell legacy I put it in the folder and it doesn't notice it. It says I have no games.

lestat666

Have you gotten other games working on the port?

I am guessing you have, or you wouldn't have posted to the forum.

You have to install the game on a pc and then copy over the install directory, not just the setup exe.

If this was already done, I am at a loss on this one without testing it myself.

Could be that the port doesn't have a plug in it needs to run the game.

Sane Co.

I just started playing around with it again, I have got games working on it right now even. but it is quite weird I have re-downloaded  then tried a different version. It doesn't notice: heed, airwave, hubris or the blackwell legacy. And I know I've played heed and airwave on there. A game it does notice is ^_^. It's really quite weird.

JJS

Quote from: Sane Co. on Mon 06/02/2012 18:51:46It's really quite weird.
Indeed because the games you list work for me in the latest version from http://jjs.at/daily (but they should also in R7). Are you sure they are correctly placed on the memory stick? The game files have to be in a direct subfolder of the engine (e.g. in ms0:/PSP/Game/AGS/My game/).
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

Icey

jjs would it be possible for the AGS sockets plug-in to work on the PSP? It's the online plug-in btw.

lestat666

Hey there JJS.

I love that you have made the dailies available.  It kind of makes us all beta testers now and probably makes your job easier in finding bugs.

Anyway, the ghosting effect I mentioned before in Maniac Mansion deluxe is all fixed now.  That is great.

Although, I found one other bug with the game.  Music does not work with it.  Digital sound is fine.  I noticed it when starting the game right after I pick my characters.  A song is supposed to start playing when it says "20 years ago" and the meteor crashes.  The song never starts but the sound effects are all here.  I checked it on my pc to confirm the song is supposed to be there.  Hope this can be fixed... maybe I am just configuring something wrong.

Also, I can't see to get the keyboard working in this game.  It comes up when I hit select, but I can't get the keys to work... especially F4 which is how you save.
Is this just a matter of configuring the psp.cfg for different key mapping??

thanks.

JJS

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

lestat666

#111
Yea thanks.

I realized after making the post that I deleted the patches.dat files when I updated AGS.

At first I was thrown off because Gemini Rues music was working.... then realized maybe it doesn't use midi.  After remembering the music was working before and then putting the old AGS and it still not working, I remembered about the files.

There are no problems with the  buttons either.

I thought F4 was for saving, but it is F5.   I just need to map the buttons to my liking.
Thanks.

Sorry about having you look into this... man i feel like an idiot now.

lestat666

I know this is a double post, but it has been quite a while since this thread has been active.
And this is kind of a new issue.

Anyway,  JJS, I just wanted to let you know that R8 is working great, but the dailies you have been posting have old versions of the plugins.  Specifically, the ones I noticed, were Snowrain and Flashlight.  On some of your latest dailies releases, when I try to run Gemini Rue and Maniac Mansion Deluxe, I get that error saying the plugins are old and incompatible.

Just thought I would let you know for future daily releases.
Thanks.

JJS

Thanks for the report! The issue with the plugins should be fixed now. Also new daily builds are available.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

lestat666

Hey there again JJS.

Found another glitch with AGS R8 when running Maniac Mansion Deluxe.

I tested it first on my pc too before posting here.  I played to the same spot on my pc and it did not crash.  The spot this happens is when Weird Ed answers the door when his package arrives.

On the PSP, however, when I reach the same spot, I get this error. 

An error has occured.  Please contact the game author for support, as this is likely to be a scripting error and not a bug in AGS.
(ACI version 3.21.1115)

in "(unknown section)", line 702
from ""(unknown section)", line 762
from ""(unknown section)", line 2801
from ""(unknown section)", line 2985

Error: NewRoom: room change requested to invalid to invalid room number -1


Now normally I would have assumed it was a game error due to the nature of the error, which is why I tested it on my pc where it worked perfectly fine.

Can this be fixed?
Thanks a lot.

JJS

Does this still happen with the latest daily build? It is the same error described here: http://jjs.at/tracker/view.php?id=58 and I thought I had it fixed.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

lestat666

Cool, I will try it with the new daily build.

Since I last left a post, I had used R8 due to the issues I had posted with the daily builds.
I usually only update AGS after finishing a game, so I never got the latest daily build yet.

I will try that and let you know.

Thanks for the quick response.

lestat666

The new daily works.

Thanks!

EchosofNezhyt

Hey if we ever get a vita CFW I do want on vita.

On a more serious note if someone got it running on android not only would it spark point and click games in to popularity anymore it would be a easy money maker for sure.

I have keyboard skins on the market and I was make 700 a month with out doing a single thing untill they banned better keyboard now it drop to 15 but hell I still get a free dinner every month haha.

JJS

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

lestat666

I am sure there will be a vita CFW eventually.  Might take a little longer than it did with the psp because they probably have the anti hacking built into the system already and took precautions the second time around.

AGS still runs fairly well on a 2000 and 3000 psp though.  There is just some slight delay with the audio, but it isn't horrible unless it is something that has quite a bit of audio at once.  The gunfights in Gemini Rue were a bit tedious due to this, but still playable.

It would run perfectly on a vita, but I think we are getting a bit ahead of ourselves with that one this early in the game.

Crimson Wizard

This may be not the right place to ask, since the thread is called "PSP port", plus I am going to speak of the source code, yet...

JJS, can you please elaborate, is the source from "ags-for-psp" supposed to be buildable under windows as well? I can see VC solutions there and "Windows" folder for platform-specific libs, but want to be sure.

If the answer is yes, here goes another question. I tried to build the acwin project (the engine), and got errors in Gl/glext.h at this point:
Code: "Gl/glext.h"

#elif defined(_WIN32)
typedef __int32 int32_t;
typedef __int64 int64_t;
typedef unsigned __int64 uint64_t;
#else


It looks like one of the allegro headers defines these types (int32_t, int64_t) prior to glext.h; here what I see in astdint.h:
Code: "astdint.h"

#elif defined ALLEGRO_I386 && defined ALLEGRO_LITTLE_ENDIAN
   #ifndef ALLEGRO_GUESS_INTTYPES_OK
      #warning Guessing the definitions of fixed-width integer types.
   #endif
   #define int8_t       signed char
   #define uint8_t      unsigned char
   #define int16_t      signed short
   #define uint16_t     unsigned short
   #define int32_t      signed int
   #define uint32_t     unsigned int
   #define intptr_t     int32_t
   #define uintptr_t    uint32_t
#else

Does that normally compiles for you? Do I miss anything?

BigMc

It should work, JJS provides daily builds for Windows. Maybe it's time for a thread "AGS engine Windows port"?

JJS

It does build for me, but I guess nobody else has ever tried it on his system. I looked at the header and I had commented out the offending lines in <gl/glext.h>, oops. Up until now I only used the Windows OpenGL driver to ease the development of the iOS/Android OpenGL implementation, so it is all around hacky.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

EchosofNezhyt

Wow awesome jjs thanks for the android port! :D

Alan v.Drake

Quote from: JJS on Thu 07/06/2012 10:30:48
It does build for me, but I guess nobody else has ever tried it on his system. I looked at the header and I had commented out the offending lines in <gl/glext.h>, oops. Up until now I only used the Windows OpenGL driver to ease the development of the iOS/Android OpenGL implementation, so it is all around hacky.

Ah, I thought it was my glext.h fault, I too had commented out those lines to make it compile. Yes, someone did try :P

- Alan

ShadowNev

#126
Quote from: Sane Co. on Thu 02/02/2012 02:42:55
For some reason the port doesn't recognize the blackwell legacy I put it in the folder and it doesn't notice it. It says I have no games.
I have same issue.
I tried with "AGS_for_PSP_2012-06-20_19-17-10.zip" and "AGS_Runtime_for_PSP_3.21_R8.zip"
when i place Blackwell Legacy in folder with AGS it's work well, when i place it under "ms0:\PSP\GAME\AGS\The Blackwell Legacy" i get "no games"

UPDATE: When I left in sub-folder only "game.exe" and "winsetup.exe" games appears in AGS list of games, when I place rest of files back, again "no games"

JJS

I don't have the game, so I cannot check myself. Are there any other "exe" files beside game.exe and winsetup.exe in the folder? I guess there is unins000.exe (which should not be a problem), but are there others?
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

ShadowNev

Thank you
After some research i found how to fix. There was wrong file structure, after renaming "ac2game.dat" to "ac2game.ags"
The Blackwell Legacy and The Blackwell Unbound run normal, but now I have other issue with "Gemini Rue" and "Resonance" they both crashed to BSOD

ShadowNev

#129
New bug?
I tried Gimini Rue with "AGS_Runtime_for_PSP_3.21_R8.zip" and it starts well.
But with "AGS_for_PSP_2012-06-20_19-17-10.zip" crashed to BSOD

UPDATE:
When I try run "Resonance" I get this exception.log:
Code: AGS
Exception details:

Exception - Bus error (data)
EPC       - 0884E574 / gro Application.text + 0004A574
Cause     - 1000001C
Status    - 60008613
BadVAddr  - 01FDFD3E
zr:00000000 at:08C50000 v0:00000001 v1:00000001
a0:00000000 a1:0BAFBE88 a2:00000001 a3:0000006C
t0:08A590A4 t1:00000078 t2:08A590AC t3:08C30000
t4:00000000 t5:00000000 t6:08C30000 t7:DEADBEEF
s0:000000F0 s1:08A70000 s2:08B00000 s3:08A70000
s4:08B00000 s5:08A70000 s6:08AB29B0 s7:08A70000
t8:DEADBEEF t9:DEADBEEF k0:0BBBFF00 k1:00000000
gp:08A62DC0 sp:0BBBF0D8 fp:00000055 ra:0884E554


and when I try run The Blackwell Deception i get:
Code: AGS
There was a problem initializing graphics mode 640 x 480 (32-bit).
(Problem: 'The requested adapter mode is not supported')
Try to correct the problem, or seek help from the AGS homepage.

Possible causes:
* your graphics card drivers do not support this resolution. Run the game setup program and select the other resolution.
* the graphics driver you have selected does not work. Try switching between Direct3D and DirectDraw.
* the graphics filter you have selected does not work. Try another filter."

I try switching between Direct3D and DirectDraw but with no luck :(

JJS

I cannot test on the PSP anymore because I now only have a PSP 1000. It lacks memory to load big games like Gemini Rue. But I will try to figure out what could cause the error.

Resonance is probably too large for the PSP memory. It might not run on the PSP at all.

Blackwell Deception is made for 640x480 resolution, but the PSP can only load low-res games (320x200 and 320x240). Scaling down the screen would in theory be possible (like it is done on Android and iOS) but again the memory on the PSP is very limited and is just not enough for high-res games.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

ShadowNev

It's very sad, those type games perfect look on PSP (same as ScummmVM games looking better on PSP than on anything else).
But thank anyway for answer.

lestat666

#132
Hey JJS.... what happened to your psp 2000??? man that sucks.

I have a few bugs to report... hopefully they can be fixed without a psp 2000.

Here is the error I get with the latest daily for Gemini Rue
Exception details:

Exception - Bus error (instr)
EPC       - 00000000 / gro Application.text + F77FC000
Cause     - 10000018
Status    - 40008613
BadVAddr  - 01140C04
zr:00000000 at:08C40000 v0:00000000 v1:08A70000
a0:08A75CE0 a1:08A1CF78 a2:08B00000 a3:00000006
t0:08A594B4 t1:00000020 t2:08A594BC t3:0BABEA86
t4:0BABEA68 t5:0BABEA80 t6:00000001 t7:00000002
s0:00000001 s1:08A75D24 s2:08A70000 s3:0000006C
s4:08A75C84 s5:08B00000 s6:08B00000 s7:08B027F4
t8:00000009 t9:089568B0 k0:0BABFF00 k1:00000000
gp:08A631D0 sp:0BABEB58 fp:08B00000 ra:08840FCC

Hopefully this is enough info to fix this one.

I have a few bugs to report too with Maniac Mansion Deluxe and AGS in general.
First, on the onscreen keyboard, the number 6 appears twice.

Now with MMD.
On the screen where I select my team, if I hit the left or right buttons which I have mapped to F2 and F3 respectively, the game crashes and gives me this error.  At least I think this is it.... it goes two fast and I just grabbed what was in the exception log.

Exception details:

Exception - Unknown 16
EPC       - 088F65F0 / gro Application.text + 000F25F0
Cause     - 1000003C
Status    - 20008613
BadVAddr  - 01140C04
zr:00000000 at:DEADBEEF v0:000F4240 v1:529ED631
a0:001ED631 a1:4F6B189A a2:000000A5 a3:00000000
t0:0BAFEE40 t1:13DAC616 t2:E400007F t3:001AC616
t4:00000026 t5:001AC616 t6:00000000 t7:00000000
s0:8F8644A8 s1:00E18190 s2:08C40000 s3:0BAFEE78
s4:08C40000 s5:80000000 s6:DEADBEEF s7:DEADBEEF
t8:DEADBEEF t9:DEADBEEF k0:0BAFEF00 k1:00000000
gp:08A62DC0 sp:0BAFEE70 fp:0BAFEEC0 ra:088F65C8

As long as I don't hit those buttons, it is fine... but I thought this may be an easy fix.

Lastly, there is a scripting problem at the end of the game.  If I use Dave, the main character, to beat the game, when the ending shows, it freezes at a certain point and the mansion blows up.  Basically what happens is when you enter the lab, a timer starts ticking and you have to do certain actions before it runs out or the mansion blows up.  Even when I complete the said actions, it just freezes at a certain point until this timer, which is supposed to stop, runs out and shows what would have happened had I not completed what I was supposed to in time.  I hope this makes sense.  Now this does not happen if I beat the game with one of the other 2 kids.  I think it is because Dave appears in the ending, and if he is used to beat the game, it activates this glitch...  If you use another kid, he is available to show up in the ending.

I am in the process of trying resonance on a previous daily since this could be a similar error to what is happening with Gemini.  I will let you know... I am guessing it just will not work period as the requirements are steep, but it is worth a shot.

Couple last things... We were talking about the VITA previously.  Since regular psp games seem to work on the VITA, does this mean that AGS could possibly work in its current state once a CFW is made for the VITA? with minimal programing changes.  Just a general question I was curious about. 

And lastly, another general curiosity question.  Why is it that AGS is so limited on the psp.  Why can SCUMM run games that require a significant amount of power compared to other games on AGS, without hiccuping ex.  Monkey Island 3 runs flawlessly on SCUMM but the Quest for Glory 2 remake can't run among others.  Is it due to the code being messy or is it something else.  I was just wondering with this one. 

Anyway, sorry for the long post... hopefully some of this could be fixed... thanks a bunch JJS for your hard work.  If you need someone to test for you, since you lack a good enough psp... I am willing to lend my time.
Thanks.

JJS

QuoteHere is the error I get with the latest daily for Gemini Rue
I cannot see what causes this from the error message. When does this crash happen in the game?

QuoteFirst, on the onscreen keyboard, the number 6 appears twice.
Doh! I will fix that.

QuoteOn the screen where I select my team, if I hit the left or right buttons which I have mapped to F2 and F3 respectively, the game crashes and gives me this error.
This is a scripting error in the game. It is also present in the original Windows version.

QuoteLastly, there is a scripting problem at the end of the game.
Probably a backward compatibility problem in the engine. Do you have a savegame that demonstrates the error? I would rather not have to play through the whole game myself :)

QuoteSince regular psp games seem to work on the VITA, does this mean that AGS could possibly work in its current state once a CFW is made for the VITA?
If either a Vita CFW or a CFW for the PSP emulator of the Vita is released, AGS should run the same as on the PSP.

QuoteMonkey Island 3
The AGS engine is not really optimized for low memory devices. Also game authors might do things with scripts that are faster but use more memory because memory is not a concern for the PC anymore. ScummVM engines are written from scratch with the constraints of the lower powered devices in mind, so they are better optimized in that regard.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

lestat666

Still have not gotten around to trying Resonance yet on a previous build... not too optimistic but will get back to you on this one.

With Gemini Rue, it happens right at boot up.  It never gets into the game.  You just get the blue screen of death and it quits to the menu.  I think it does this on the last 2 builds.  Same thing happens with Resonance, which is why I wanted to try it on a build that Gemini Rue worked on.

Anyway, with MMD, I do have a save game.  It is right at the end just outside the door to the lab.  If you need a short walk through of what to do, let me know. Where can I send the save.  I might need a few days to get it to you.  Thanks.

Sane Co.

Ben Jordan 8 starts well, but when you want to go to the library the first time it gives you the blue screen on R8

JJS

QuoteAnyway, with MMD, I do have a save game.  It is right at the end just outside the door to the lab.  If you need a short walk through of what to do, let me know. Where can I send the save.  I might need a few days to get it to you.  Thanks.
You can send it to jjs@jjs.at, thanks! A walkthrough from that point or a hint on where exactly I am in the game so that I can look it up would be very much appreciated.

QuoteBen Jordan 8 starts well, but when you want to go to the library the first time it gives you the blue screen on R8
Can you post the exception log?
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

Sane Co.

here's the log
Exception - Unknown 16
EPC       - 088A543C / gro Application.text + 000A143C
Cause     - 1000003C
Status    - 60008613
BadVAddr  - C6500900
zr:00000000 at:DEADBEEF v0:0A08C20C v1:0A08C208
a0:08A1B61C a1:FFFFFFFF a2:09D5DBD0 a3:00000000
t0:0BABD9F0 t1:1EFF3E81 t2:000001A2 t3:00000000
t4:11DF46A2 t5:00000000 t6:00000000 t7:00000000
s0:08B10000 s1:00000000 s2:0A08C1D0 s3:00000004
s4:00000000 s5:00000037 s6:0A4A7FB0 s7:0A08C1D0
t8:DEADBEEF t9:0885BA94 k0:0BABFF00 k1:00000000
gp:08A62DC0 sp:0BABDA20 fp:0BABDCDC ra:088A59A8


lestat666

#138
K, so I did a bit of work here. 

QuoteRESONANCE
Tried Resonance on a bunch of daily versions, even one that runs Gemini Rue.... all give the blue screen of death.  This is not surprising with Minimum Requirements such as this. [1.8 GHz Processor, 512MB RAM (1 GB recommended), 3D graphics card compatible with DirectX 9.0c, 1GB HDD, Mouse, Keyboard.]

So this won't run on a psp.... Although it will run nice on a VITA once that is hacked.

QuoteGEMINI RUE
Anyway with Gemini Rue, the last daily version to run it is April 24th, 2012.

Here are the error messages for the subsequent versions of the dailies I tried.
Daily 05-15
An internal error has occured.
Post on AGS forum
Error Plugin'ags_snowrain.prx' is an old incompatible version.

Daily 05-18 & 05-23 have the same error as 05-15

Now Daily 05-28, 06-05 & 06-11 give the blue screen of death with the exact same exception error details.
Here it is

Exception details:

Exception - Bus error (instr)
EPC       - 00000000 / gro Application.text + F77FC000
Cause     - 10000018
Status    - 40008613
BadVAddr  - 01140C04
zr:00000000 at:08C40000 v0:00000000 v1:08A70000
a0:08A75990 a1:08A1CC28 a2:08B00000 a3:00000006
t0:08A59164 t1:00000020 t2:08A5916C t3:0BABEA7E
t4:0BABEA60 t5:0BABEA78 t6:00000001 t7:00000002
s0:00000001 s1:08A759D0 s2:08A70000 s3:00000068
s4:08A75934 s5:08B02454 s6:08AF0000 s7:08B00000
t8:00000009 t9:08956564 k0:0BABFF00 k1:00000000
gp:08A62E80 sp:0BABEB50 fp:08B00000 ra:08840CCC

06-20, 07-08, & 08-03 give the exact same blue screen of death with some of the address blocks being different
mostly in the last row and a few others.
Here are the exception errors.

06-20
Exception details:
Exception - Bus error (instr)
EPC       - 00000000 / gro Application.text + F77FC000
Cause     - 10000018
Status    - 40008613
BadVAddr  - 01140C04
zr:00000000 at:08C40000 v0:00000000 v1:08A70000
a0:08A75A20 a1:08A1CCB8 a2:08B00000 a3:00000006
t0:08A591F4 t1:00000020 t2:08A591FC t3:0BABEA86
t4:0BABEA68 t5:0BABEA80 t6:00000001 t7:00000002
s0:00000001 s1:08A75A60 s2:08A70000 s3:00000068
s4:08A759C4 s5:08B024E4 s6:08AF0000 s7:08B00000
t8:00000009 t9:089565FC k0:0BABFF00 k1:00000000
gp:08A62F10 sp:0BABEB58 fp:08B00000 ra:08840D34

Daily 07-08
Exception details:

Exception - Bus error (instr)
EPC       - 00000000 / gro Application.text + F77FC000
Cause     - 10000018
Status    - 40008613
BadVAddr  - 01140C04
zr:00000000 at:08C40000 v0:00000000 v1:08A70000
a0:08A75CE0 a1:08A1CF78 a2:08B00000 a3:00000006
t0:08A594B4 t1:00000020 t2:08A594BC t3:0BABEA86
t4:0BABEA68 t5:0BABEA80 t6:00000001 t7:00000002
s0:00000001 s1:08A75D24 s2:08A70000 s3:0000006C
s4:08A75C84 s5:08B00000 s6:08B00000 s7:08B027F4
t8:00000009 t9:089568B0 k0:0BABFF00 k1:00000000
gp:08A631D0 sp:0BABEB58 fp:08B00000 ra:08840FCC

Daily 08-03
Exception details:

Exception - Bus error (instr)
EPC       - 00000000 / gro Application.text + F77FC000
Cause     - 10000018
Status    - 40008613
BadVAddr  - 01140C04
zr:00000000 at:08C40000 v0:00000000 v1:08A70000
a0:08A75C60 a1:08A1CF38 a2:08B00000 a3:00000006
t0:08A5942C t1:00000020 t2:08A59434 t3:0BABEA86
t4:0BABEA68 t5:0BABEA80 t6:00000001 t7:00000002
s0:00000001 s1:08A75CA4 s2:08A70000 s3:0000006C
s4:08A75C04 s5:08B00000 s6:08B00000 s7:08B02774
t8:00000009 t9:08956868 k0:0BABFF00 k1:00000000
gp:08A63150 sp:0BABEB58 fp:08B00000 ra:08840FCC

Hopefully this can help you pin point the error.

QuoteYou can send it to jjs@jjs.at, thanks! A walkthrough from that point or a hint on where exactly I am in the game so that I can look it up would be very much appreciated.


As for the save game in Maniac Mansion, I will get right on that.  Thanks.

JJS

The bug preventing Gemini Rue from loading should be fixed in the newest daily build. Please try Resonance again because the bug would affect it too.

Also thanks for the save file and the description for MMD. I can reproduce your error, but I don't have a lead on what causes it yet.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

lestat666

K, Gemini Rue is working again.  :cool:

I tried Resonance as you suggested.  Got another blue screen of death, but the exception was a bit different.

I got
Your PSP has crashed.
Exception details:

Exception - Bus error (data)
EPC       - 0884E92C / gro Application.text + 0004A92C
Cause     - 1000001C
Status    - 60008613
BadVAddr  - 01140C04
zr:00000000 at:08C50000 v0:00000001 v1:00000001
a0:00000000 a1:0B9FBF48 a2:00000001 a3:0000006C
t0:08A5942C t1:00000078 t2:08A59434 t3:08C30000
t4:00000000 t5:00000000 t6:08C30000 t7:DEADBEEF
s0:000000F0 s1:08A70000 s2:08B00000 s3:08A70000
s4:08B00000 s5:08A70000 s6:08AB2D90 s7:08A70000
t8:DEADBEEF t9:DEADBEEF k0:0BABFF00 k1:00000000
gp:08A63150 sp:0BABF098 fp:00000054 ra:0884E90C

Is this one hopeless due to the system requirements, or is there possibly another glitch that can be fixed?
Thanks again for all your efforts.

Funny thing I found... BTW, were putting all this effort into getting this deluxe version of maniac mansion working when I found this today.

Night of the Meteor

Although, MMD is almost running perfectly and this project is probably at least a year or two away still.

Joseph DiPerla

I do not see the system requirements as being an issue as Gemini Rue and Resonance are pretty much same as far as graphic intensity. I mean, Resonance might have more sprites and animation on screen going on at once, however, I highly doubt that it would affect gameplay on a psp since the PSP is capable of playing games that are very powerful 3d games. The scripting although might be far more advanced than Gemini Rue, but again, I do not think it would affect its performance on the PSP. At the very least, even if it was a performance issue, Resonance would still play, but it would be choppy.

I am thinking that perhaps it has something to do with the versions of AGS in which both games were compiled with. One being compatible with the port, while the other might still have some bugs to work out.

Correct me if I am wrong people.
Joseph DiPerla--- http://www.adventurestockpile.com
Play my Star Wars MMORPG: http://sw-bfs.com
See my Fiverr page for translation and other services: https://www.fiverr.com/josephdiperla
Google Plus Adventure Community: https://plus.google.com/communities/116504865864458899575

JJS

#142
The only real problem on the PSP is the limited RAM. 64 MiB is just not enough. Cpu-wise it can run most games just fine unless they have a lot of scripting.

E: From the exception log it is pretty clear that Resonance runs out of memory.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

Joseph DiPerla

#143
Not that this would be an easy (or possible) task, or even one that would make a difference, but, would it be possible to use PSP storage space as a type of Virtual RAM for the game so it would run? Again, I know VRAM is not an appropriate substitute for RAM, but would that be possible? I am totally pulling that out of my butt as right now I am REALLY sleep deprived since my daughter woke up 7 times during the night and now woke me up at 5:30 am and is up for the long haul.

EDIT: I guess others have thought up the same thing, but are saying its not possible:

http://forums.qj.net/psp-speculation/124574-virtual-ram-using-mem-stick.html
http://share.blog.us.playstation.com/ideas/2010/08/06/psp-virtual-memory/

I have not read this in its entirety, but it might suggest a work around:
http://forums.ps2dev.org/viewtopic.php?p=31028
Joseph DiPerla--- http://www.adventurestockpile.com
Play my Star Wars MMORPG: http://sw-bfs.com
See my Fiverr page for translation and other services: https://www.fiverr.com/josephdiperla
Google Plus Adventure Community: https://plus.google.com/communities/116504865864458899575

lestat666

That is an interesting concept...

I don't think it is possible, but I guess we will see what JJS says.

I don't hold too much hope for Resonance on the go until the VITA is hacked.

I'll wait for your response with MMD.  Hopefully a lead can be found...
I am pretty sure it doesn't do this in the windows version, or I would have been able to find something on google concerning this, or on the AGS forums.

Thanks JJS.

Joseph DiPerla

#145
Read my modified post above yours lestat.

Edit: Doing this will also free up some memory:  delete a txt file in the flash 0 file that will increase the memory slightly
Joseph DiPerla--- http://www.adventurestockpile.com
Play my Star Wars MMORPG: http://sw-bfs.com
See my Fiverr page for translation and other services: https://www.fiverr.com/josephdiperla
Google Plus Adventure Community: https://plus.google.com/communities/116504865864458899575

JJS

#146
Not feasible at all because the CPU of the PSP does not have an MMU. This means there is no hardware to translate virtual addresses into physical memory. A software-only MMU replacement would theoretically be possible but hard to implement and absolutely unusably slow at the same time.

Edit: Please don't mess around with flash0! It will not help at all and I don't want you guys to brick your PSP.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

lestat666

I've given up on Resonance for now personally.

I will probably just play in on my computer.

Sane Co.

Any headway with BJ8? I posted the log earlier.

lestat666

Did you try the latest daily?

Here is the link to the dailies.

August 12th is the latest one.

AGS Dailies

Hopefully the next one has MMD and BJ8 bugs fixed.  Gemini Rue is now fixed =)

JJS

#150
R9!

The new version gives more game compatibility because the memory footprint of the engine has been reduced quite a bit (about 12 MB). I did this by replacing the static array for the state-saving rooms (number < 300) by a dynamic allocation scheme. So a lot more games should now load on a PSP 1000 (I got Gemini Rue to run on it).

Resonance might now just be able to start if the additional memory is enabled. But I don't think that it will be playable for long.

The error in Ben Jordan 8 has been fixed (more liked worked around). It was in fact an FPU exception being caused by a multiplication with NAN. It seems to be related to the clock drawing in the library because the clock doesn't work. But at least the game doesn't crash anymore.

Download version R9 from http://jjs.at/software/ags.html


Edit: Fiddled around a bit more and now Resonance is down from ~105 MB to ~68 MB at the point where you take control of the character. These values are from my Windows build which has about a 35 MB overhead. So I suppose it would now run a PSP. Make sure the configuration file has these values:
Code: ini
[compatibility]
enable_extra_memory=1
clear_cache_on_room_change=1


I updated the R9 version and created a daily build. So either of them works as they are the same.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

lestat666

R9 is great!

But I have some good news and bad news about it after testing.

Good news, Gemini Rue is working perfectly.

Resonance actually loads and goes into the game, but it is highly unplayable.  The audio in the videos is very choppy and the actual game runs in slow mo.  I have my psp clocked at 333/166 for the clock speed in game too, and this makes no difference, and I tried the memory settings you had.  So... it loads, no crashing, but the psp cpu is just not strong enough to run it smoothly.  I am sure when there are effects on the screen, this gets even worse.  Again... it is probably due to the 1.8 ghz minimum requirements.

Maniac Mansion Deluxe loads perfectly fine too.
But.... now my saved game will not load to test to see if that bug was fixed......
No saved games load.  When I load them... I get the blue screen of death with this exception error.  Strangely enough, it looks like the same one Resonance had previously.  Here it is.

Exception details:

Exception - Bus error (instr)
EPC       - 04800000 / gro Application.text + FBFFC000
Cause     - 10000018
Status    - 40008613
BadVAddr  - 158E176E
zr:00000000 at:DEADBEEF v0:08A5AA54 v1:08A5AA4C
a0:0901E950 a1:08C58804 a2:00000004 a3:00000000
t0:08C622B4 t1:08C58804 t2:08F9398F t3:0BABBE70
t4:08A5A71C t5:DEADBEEF t6:DEADBEEF t7:DEADBEEF
s0:08C58984 s1:00000006 s2:08C58970 s3:08A7D880
s4:00000001 s5:08A77E90 s6:08C622B4 s7:00000001
t8:DEADBEEF t9:DEADBEEF k0:0BABFF00 k1:00000000
gp:08A643E0 sp:0BABBE98 fp:00000032 ra:08884FC8

It is still amazing you reduced the amount of memory this uses.

Hope these MM Deluxe errors are possibly to fix.... can't win them all I guess.

Thanks for all your hard work, we appreciate it.  :smiley:

JJS

Please try this daily build: http://jjs.at/daily/AGS_for_PSP_2012-08-27_12-41-46.zip

It should fix the save related problem. But that specific bug in MMD should still exist, I haven't implemented any fix for that.


Also thanks for trying Resonance. It's nice to hear that it runs because that proves the effectiveness of the changes. A shame that it is so slow though. The PSP is always clocked at 333 Mhz in AGS, so that it doesn't make a difference is expected.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

lestat666

That worked.
Thanks.

I found another place the previous endgame bug happens. 

The first I mentioned previously, is when you beat the game with Dave.

Again, if you beat the game with one of the other kids and Dave is alive, no glitch.

Now here is where I found the other bug... If you kill Dave off, and then try to beat the game with another kid, same bug.  This is probably because Dave is technically in this ending.  Well, his grave stone is, so the glitch is activated.

It seems it only happens in any of the endings Dave or his gravestone appears.  If he doesn't appear, then the ending is fine.

Do you have any leads or ideas as to what is causing this bug in Maniac Mansion?
Thanks again JJS.

Joseph DiPerla

Is it possible this is a glitch specific to just MMD? In other words, can it be that its game related and not engine related?
Joseph DiPerla--- http://www.adventurestockpile.com
Play my Star Wars MMORPG: http://sw-bfs.com
See my Fiverr page for translation and other services: https://www.fiverr.com/josephdiperla
Google Plus Adventure Community: https://plus.google.com/communities/116504865864458899575

lestat666

#155
I don't think so...  I hadn't played to the end of it with the windows version, but I tried to find some mention of it on google, and the ags website.

There is no mention of this glitch anywhere, and I looked long and hard, which is what leads me to believe it is engine related.

Any leads on the glitch yet?
Thanks for all your hard work JJS.

lestat666

#156
Have some new info concerning the maniac mansion glitch.

I have played through the PC version with the same characters as I did on the psp version and can officially confirm that the glitch does not exist in the pc version.

I will send you a saved game so you can take a look.  It might help with figuring out the glitch.

Thanks again.

Update to this post.
I tried the new dailies... nothing seems to be working.
In the November release, Gemini Rue and Resonance give me the blue screen of death....
and Maniac Mansion loads, but when I start a save game it either gives me a blue screen without loading, or i walk around for a bit and then get what looks like the blue screen but zoomed in with a red background instead.

In the december release, I get a black screen that says
"You must create and save a game first in the AGS editor before you can use this engine.
If you have just downloaded AGS, you are probably running the wrong executable.
Run AGSEditor.exe to launch the editor.

unable to find ms0:......... etc."

It says something along those lines for all 3 games I tried loading in the December release....
I figured before putting up the exception logs for the Nov daily, it might be beneficial to fix the error in the Dec daily first.
If you want the exception logs, let me know.

Thanks.

Crimson Wizard

#157
Quote from: lestat666 on Wed 05/12/2012 11:25:28
In the december release, I get a black screen that says
"You must create and save a game first in the AGS editor before you can use this engine.
If you have just downloaded AGS, you are probably running the wrong executable.
Run AGSEditor.exe to launch the editor.

unable to find ms0:......... etc."
That seem to be related to some recent changes... I probably know what's wrong (and who did it  :-[). We'll look into this asap.

JJS

#158
The problem is with the MakeAbsolutePath() function because it assumes that paths are always like Windows- oder Unix-paths. But on the PSP they are a weird mixture. You have sort of drive letters (like ms0: or ef0:) and forward slashes. I will commit a (temporary) fix.

The crashes are plugin related... again. It is most definitely something stupid that I did. I won't need crash logs because I can reproduce the errors.

Edit: I spoke too soon. The crash is in the script interpreter. Maybe misaligned data? I will investigate this further.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

Crimson Wizard

Quote from: JJS on Wed 12/12/2012 18:09:01
Edit: I spoke too soon. The crash is in the script interpreter. Maybe misaligned data? I will investigate this further.
If that's the case, it won't be difficult to fix. These reads and writes to data of unknown type are located solely in RuntimeScriptValue implementation and could be just replaced with memcpy.

JJS

Yes, I found three problematic instances in runtimscriptvalue.cpp. All of them write/read int32 to/from global data. I added a new #define that enables the memcpy() procedure since it is not necessary on x86 and - by the looks of it - ARM.

But there is still something wrong. I get a very bad crash that unfortunately takes out the whole system including the debugger. It shows the same exception address in all games I tried but it doesn't point into the text segment. It might be wrong though, or there is a jump to the same invalid address somehow. Edit: Yeah, that would be the other crash lestat666 mentioned.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

lestat666

Wow, this is the most traffic this thread has had in months.
Well, other than what I posted  :tongue:

That maniac mansion bug that existed previously, is it related to any of these current ones or is it completely unrelated?  That bug i mentioned months ago doesn't generate a crash, but it is essentially failing to launch a scripted sequence.

Are these other major bugs only present in the PSP port?

Thanks for all your efforts.

JJS

Maniac Mansion bug is a general backward compatibility problem.

The two latest bugs were indeed only present on the PSP. The "red screen" crash was due to a too small stack size on the audio thread, the other one unaligned data (see previous post).
They should both be fixed now.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

lestat666

The general backward compatibility problem with maniac mansion.

Is it even fixable?


Crimson Wizard

Quote from: lestat666 on Sun 16/12/2012 21:45:56
The general backward compatibility problem with maniac mansion.

Is it even fixable?
Do you mean loading olde savegames? There were some changes made in the past to how they are saved. Atm we aim at savedgames compatibility with AGS 3.2.1.1115 (latest official release) (but I think some of the earlier 3.+ versions should load fine too).
Which build did you use to save the game with?

JJS

No, it is about this bug (quote from a few pages back):
QuoteLastly, there is a scripting problem at the end of the game.  If I use Dave, the main character, to beat the game, when the ending shows, it freezes at a certain point and the mansion blows up.  Basically what happens is when you enter the lab, a timer starts ticking and you have to do certain actions before it runs out or the mansion blows up.  Even when I complete the said actions, it just freezes at a certain point until this timer, which is supposed to stop, runs out and shows what would have happened had I not completed what I was supposed to in time.  I hope this makes sense.  Now this does not happen if I beat the game with one of the other 2 kids.  I think it is because Dave appears in the ending, and if he is used to beat the game, it activates this glitch...  If you use another kid, he is available to show up in the ending.

I think it is fixable, but as of yet the reason for the bug is not known. It might be because a change in room switching logic maybe.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

lestat666

Found more bugs in the latest daily.

Resonance loads ok... didn't have any save games to test since it is unplayable due to slowness on the psp.

Gemini Rue
Start a new game, and it works ok in the little intro, but once the title is shown and the game starts if I hit the start button which is mapped to bring up the menu (ie escape key), the game freezes.  This only happens if I try to do it before the cinematic is done... if I wait until it is done and the cursor comes up, it works fine.  This button is used to also skip cinematics, so it can could cause a potential problem.  Although, it seems to work fine in the intro part because it is not gearing up to start a playable section of the game.  When hit during the intro, it is skipping to another cinematic... hope this makes sense.

Second bug in Gemini Rue.
Trying to load any saved game at any time gives an error.  The menu comes up, but when you pick your game to load and hit load, you get this message.
Black screen,
An error has occured. Please contact the game author for support, as this is likely to be a scripting error and not a bug in AGS.  ACI version 3.21.1115

Error: Restore_Game: Game has changed (audio types), unable to restore.

Maniac Mansion Bug.
When trying to load some save games, not all, I get the blue screen of death.

Exception details:

Exception - Address load/inst fetch
EPC       - 08895C58 / gro Application.text + 00091C58
Cause     - 10000010
Status    - 60008613
BadVAddr  - 00000017
zr:00000000 at:DEADBEEF v0:FFFFFFFF v1:08B30000
a0:00004BE4 a1:00004BE4 a2:0BABFC80 a3:00000000
t0:0BABFC80 t1:08AA0000 t2:00000000 t3:00000001
t4:08A70000 t5:0000030C t6:DEADBEEF t7:DEADBEEF
s0:08B299DC s1:08B20000 s2:08AA5638 s3:00000000
s4:00000000 s5:00000000 s6:DEADBEEF s7:DEADBEEF
t8:DEADBEEF t9:088BB674 k0:0BABFF00 k1:00000000
gp:08A84A50 sp:0BABFD18 fp:0BABFE40 ra:08895E68

Not exactly sure why I get this with only some of the save games.

As far as the other general backwards compatibility bug, I am just waiting on getting that fixed so I can play through the first maniac mansion on the psp with the other characters.  I don't have much time to play through it on my computer and it looks much better on the psp due the smaller screen. 

Thanks again for all your hard work.

Crimson Wizard

There was one change in save game routine lately, which actually fixed incompatibility with 3.21.1115. There is a range of builds between when the mistake was first introduced and when it was fixed, and savegames made with any of that builds are now incompatible.
"Game has changed (audio types)" message is directly related to this. Not sure about MM's BSD.

If you really need those savegames (like to test particular moments) I think we may make a simple utility that converts savegames to 3.21.1115-compatible format. It would also help if you can remember which build did you use to play games when you made those saves (like which date, approximately, that was).

JJS

QuoteWhen trying to load some save games, not all, I get the blue screen of death.
This crash happens in the audio code, not sure why yet.

QuoteAs far as the other general backwards compatibility bug, I am just waiting on getting that fixed so I can play through the first maniac mansion on the psp with the other characters.  I don't have much time to play through it on my computer and it looks much better on the psp due the smaller screen.
Should be fixed in the newest build.

The problem was that SetPlayerCharacter() behaved differently on 2.61 and lower. It would set the new character and change to its room regardless of whether that character was already the player. Newer versions of the engine just ignore the command if the new character is the same as the current player character. Interestingly the documentation to SetPlayerCharacter() does not mention this.
Because of this behaviour, the end scene never triggers as it runs in the room where "Dave" is. But if "Dave" is already the player, the room switch never happens.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

lestat666

QuoteIf you really need those savegames (like to test particular moments) I think we may make a simple utility that converts savegames to 3.21.1115-compatible format. It would also help if you can remember which build did you use to play games when you made those saves (like which date, approximately, that was).

As for when I played it....  I don't remember the exact build.
I know for a fact it was in May sometime, but I had been using the same build since March maybe?

What I can tell you for sure is the last build that the save games worked.
I know this for a fact that they worked with this one 2012-08-27 12.41.46.
This was the last one they loaded properly with.  So if they can be converted to this one, they should work.

Hope this helps.


QuoteShould be fixed in the newest build.

The problem was that SetPlayerCharacter() behaved differently on 2.61 and lower. It would set the new character and change to its room regardless of whether that character was already the player. Newer versions of the engine just ignore the command if the new character is the same as the current player character. Interestingly the documentation to SetPlayerCharacter() does not mention this.
Because of this behaviour, the end scene never triggers as it runs in the room where "Dave" is. But if "Dave" is already the player, the room switch never happens.

No time to test it right now, but I will let you know when I get a chance.


QuoteThis crash happens in the audio code, not sure why yet.

Looks like this is the last thing to make it completely playable.
I might not be able to test the compatibility fix until this is fixed.

Thanks again.
You guys are great.




JJS

QuoteLooks like this is the last thing to make it completely playable.
I might not be able to test the compatibility fix until this is fixed.
Can you easily reproduce that crash? If so, I would be interested in save games that crash like this. The one savegame you provided loads fine for me.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

Crimson Wizard

#171
Quote from: lestat666 on Tue 18/12/2012 10:42:07
What I can tell you for sure is the last build that the save games worked.
I know this for a fact that they worked with this one 2012-08-27 12.41.46.
This was the last one they loaded properly with.  So if they can be converted to this one, they should work.
Can you upload these saved games somewhere?

lestat666

QuoteCan you easily reproduce that crash? If so, I would be interested in save games that crash like this. The one savegame you provided loads fine for me.

I know of one savegame that does it for sure.  Some worked and some crashed, so I will have to go through them.
I will specify which ones worked and which ones crashed.  You want them just sent to your email again?
I may not be able to do this until tomorrow.  Should be able to get it done for sure by the weekend.

QuoteCan you upload these saved games somewhere?
Where did you want me to send these?  I usually just emailed them to JJS.
I can send all of them as there are only 6 max I think.

QuoteStart a new game, and it works ok in the little intro, but once the title is shown and the game starts if I hit the start button which is mapped to bring up the menu (ie escape key), the game freezes.  This only happens if I try to do it before the cinematic is done... if I wait until it is done and the cursor comes up, it works fine.  This button is used to also skip cinematics, so it can could cause a potential problem.  Although, it seems to work fine in the intro part because it is not gearing up to start a playable section of the game.  When hit during the intro, it is skipping to another cinematic... hope this makes sense.

What about this bug in Gemini Rue?  Was this one fixed in that build?  This is kind of a strange one as it never happened before.  This is when starting a new game too... not just when loading a save game, which currently doesn't work at all.

JJS

Quote from: lestat666 on Tue 18/12/2012 20:57:31What about this bug in Gemini Rue?  Was this one fixed in that build?  This is kind of a strange one as it never happened before.  This is when starting a new game too... not just when loading a save game, which currently doesn't work at all.
I have a hard time reproducing this. The game never "freezes" for me when skipping cutscenes, but it takes a long time to get to the next playable section. What I mean is that when I skip the "operation scene" it takes about 20 seconds, then skipping the next scene (which ends with "MH, where are you?") takes more than 40 seconds. These times might well we longer now than in previous versions because the script interpreter lost a bit of speed.

QuoteWhere did you want me to send these?  I usually just emailed them to JJS.
I can send all of them as there are only 6 max I think.
You could use some file hoster like rapidshare or megaupload. Or mail them to me, I will host them on my server.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

lestat666

#174
Sorry for the Novel.  Did lots of testing.

QuoteI have a hard time reproducing this. The game never "freezes" for me when skipping cutscenes, but it takes a long time to get to the next playable section. What I mean is that when I skip the "operation scene" it takes about 20 seconds, then skipping the next scene (which ends with "MH, where are you?") takes more than 40 seconds. These times might well we longer now than in previous versions because the script interpreter lost a bit of speed.

K, tried and see what you mean.  I thought it froze but it just takes forever.  As far as the loss of speed of the script interpreter... it makes the game a bit painful to play.  It is quite choppy now. Not unplayable, but it is fairly noticeable.  Especially when you are outside and it is raining.  It depends on the size of the room too.  First screen is not to bad but the one to the right of that is.  Skipping when you walk across the screen takes a bit of time too depending on how far you told him to walk.  It is the same kind of thing that plagued the shooting sequences, but not as bad as that, although I am afraid to see what one of those shooting sequences is like now... I don't have a save game at one to test it.  Plus the save games aren't loadable yet. What ended up causing this?  Can it be fixed?

I noticed you fixed the sleep mode bug.  Before, when you would put the psp in sleep mode, it would come back to the blue screen with an error... now it comes back.  This is really nice.

(Update)
Found another bug, realized the sleep mode bug is not fixed.  It is just delayed due to the script interpreter slow down.  Instead of coming back to a blue screen, you can play for a couple mins and then it comes up.
Here is the exception log.  It might change every time though.

Exception details:

Exception - Bus error (data)
EPC       - 08844DB8 / gro Application.text + 00040DB8
Cause     - 1000001C
Status    - 40008613
BadVAddr  - 03140D04
zr:00000000 at:DEADBEEF v0:00000000 v1:00000406
a0:0904D458 a1:FFFFFFFF a2:00000000 a3:0904C5D0
t0:09048550 t1:0904A590 t2:DEADBEEF t3:DEADBEEF
t4:DEADBEEF t5:DEADBEEF t6:DEADBEEF t7:DEADBEEF
s0:08B30000 s1:08AA5658 s2:08AA0000 s3:000003A2
s4:08E8AEAC s5:00000001 s6:000000A4 s7:00000402
t8:DEADBEEF t9:DEADBEEF k0:0BABFF00 k1:00000000
gp:08A84A70 sp:0BABFC50 fp:00000064 ra:08844DB8

Happens in Maniac Mansion too.

Exception details:

Exception - Address load/inst fetch
EPC       - 089B1814 / gro Application.text + 001AD814
Cause     - 10000010
Status    - 60008613
BadVAddr  - 89209016
zr:00000000 at:DEADBEEF v0:89209016 v1:00000002
a0:0BABFA80 a1:00000000 a2:0BABFA80 a3:89209016
t0:00000000 t1:00000002 t2:89209016 t3:0BABFA80
t4:DEADBEEF t5:DEADBEEF t6:DEADBEEF t7:DEADBEEF
s0:7FCD924A s1:00000002 s2:08BA12EC s3:0BABFA80
s4:08B40000 s5:08A7A8E8 s6:00000002 s7:09063450
t8:DEADBEEF t9:088C70C4 k0:0BABFF00 k1:00000000
gp:08A84A70 sp:0BABFA50 fp:00000002 ra:089AF5B8


QuoteThis crash happens in the audio code, not sure why yet.
Concerning the saves causing this.
For Mansion Save Slot 1, 3 & 7 cause the blue screen crash.
2, 4, 5, 6, 8, 9, 10, & 11 load fine.
I emailed you the saves.

QuoteHad another bug in Gemini, but I think it was fluke related to sleep mode as it only happened once.
Black screen, something about not being able to draw some sprite.
There was one change in save game routine lately, which actually fixed incompatibility with 3.21.1115. There is a range of builds between when the mistake was first introduced and when it was fixed, and savegames made with any of that builds are now incompatible.
"Game has changed (audio types)" message is directly related to this. Not sure about MM's BSD.

I also emailed you the Gemini Rue Saves.  Can you make sure Crimson Wizard get's these if he wants them? or maybe you can work with them in the same way he wanted, to make a converter.  You know what would be really neat is a converter that can convert the saves from pc to psp and vice versa as well as a converter that can convert between AGS versions

QuoteThe problem was that SetPlayerCharacter() behaved differently on 2.61 and lower. It would set the new character and change to its room regardless of whether that character was already the player. Newer versions of the engine just ignore the command if the new character is the same as the current player character. Interestingly the documentation to SetPlayerCharacter() does not mention this.
Because of this behaviour, the end scene never triggers as it runs in the room where "Dave" is. But if "Dave" is already the player, the room switch never happens.

Other Maniac Mansion bug at the end is fixed.  Thanks.

Crimson Wizard

Script speed issue is something I feared... I know few things that could be changed right away to improve this. Unfortunately, I do not have PSP, so I won't be able to see the impact myself.

JJS

#176
I will look at the crashes. And I didn't do anything about possible standby problems but this is always a problem on the PSP. Usually I have the extra memory enabled in the config file and therefore I cannot use suspend mode anyway :-)

I uploaded the Gemini Rue saves here: http://jjs.at/temp/grsaves.zip Since they are from the PSP version, I am not sure if they will restore correctly in the Windows build because it uses different save data for the snow/rain plugin. But I tried and they show the "audio types" error before that becomes a problem.

Did you already send me the MMD saves?
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

lestat666

#177
I tried to send them, but I got a post master delivery error due to exceeding your email space.

After zipping them, they are only 1.8 Megs, so they should be fine now to be emailed.  I guess I should have thought of that previously.   :-[  I emailed them to you now.

Hopefully the speed issues could be fixed. On the August 29th build, Gemini is working.  It does take a bit to skip the scene that ends with "MH Where are you", but overall the rest of the scenes skip good with only a slight delay, and it is not choppy during the actual playing of the game except the gun fights (although it was always choppy here)  This build may be slightly slower than previous builds... can't tell as I no longer have them, but it is so slight the game is still very playable.

It could give you a starting point with seeing what was changed.

Crimson Wizard

Quote from: lestat666 on Mon 24/12/2012 16:26:41
It could give you a starting point with seeing what was changed.

The whole script interpreter changed  (wtf)

JJS

Updated the port with a suspend fix. It should now be pretty stable. The crashes are not really occuring later because of the changed script interpreter though. Problem is that files which are open while suspending don't normally get reopened and repositioned after resuming. So the next time a resource is loaded (a sprite, music, new room) the game crashed with a blue screen or showed an engine error about corrupted sprites etc.

Also added another fix for multithreaded audio. This does not help with the crashing MMD savegames but it is related to the same problem. So hopefully it doesn't occur in the future.

The PSP is not very fast to begin with (333 Mhz MIPS with small caches) so it could never run script heavy games at full speed (not even close). As an example, the main menu of Beacon has a water effect on it that causes now 4 fps max while with the old script interpreter it was about 7 fps. Gemini Rue is another problem because it plays a lot of sound effects in the shooting scenes combined with scripting. Since the PSP is very slow while reading from the memory stick this is of course problematic.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

Crimson Wizard

Sad to hear. 3 fps drop won't be a problem if that was a drop from 40 to 37. When it drops from 7 to 4 it hurts more, I think :/.
I will try to make few changes to interpreter, removing unnecessary real-time fixups (that turned out to be a bad idea, don't know - or remember - what I was thinking), hopefully that will make it a little faster.

I found I may actually see some difference on Windows, if I run the game with "--fps" argument, then max out fps by Ctrl+E (did not know about that, but found occasionally in the code). In this situation Gemini Rue runs stably at 140 fps in common places; in the rainy rooms it jumps between 133-137, and during gunfights it drops occasionally from 140 to 130-133. Still that's not very accurate estimation, so I'll have no choice but to ask users to report their fps.

lestat666

It's nice to see this isn't dead yet.

I actually came to the psp scene only a year and a bit ago, so it is still very new to me and has plenty of novelty with a huge library of games yet to be played.

With kids... buying the latest thing on the market is just not an option due to expense.

Anyway, if you need any help with testing, let me know.
I can try to see what happens once you make those changes to the script interpreter.  Might be able to get just a few frames that makes all the difference. 

Can those Maniac Mansion saves be fixed or is the current fix you put in that prevents it in the future all that can be done?

And is a converter for the saves from Win to PSP and vice versa and/or between AGS versions, which could fix the MM Saves possible?

Thanks for all your work with this, even though it seems I might be the only person still interested in the psp version at the moment.  :) :smiley:

Crimson Wizard

#182
Quote from: lestat666 on Thu 27/12/2012 02:13:26
It's nice to see this isn't dead yet.
Huh... dead? We just started. :)

Quote from: lestat666 on Thu 27/12/2012 02:13:26
Can those Maniac Mansion saves be fixed or is the current fix you put in that prevents it in the future all that can be done?
And is a converter for the saves from Win to PSP and vice versa and/or between AGS versions, which could fix the MM Saves possible?

Let's clear this out first. The savedgames should be compatible between platforms. That's our goal. If they don't this has to be considered as something to be fixed.
Actually, I thought this is already working, in basic case... I remember JJS mentioned that plugins can save their data too and it is not portable, but I personally haven't looked into that.

Regarding the older savedgames. They were not compatible between some platforms. Additionally, as I said, there was a mistake introduced somewhere in August/September, that made them save and load differently from official 3.21.1115 AGS. Now this mistake is fixed, but this also means that all the games saved in this period became incompatible.

Now, portability is one issue, and it should be dealt with separately.
As for converting older savegames, I hope it will be not difficult, since we have all changes history stored, it's just loading game old way and saving new way.

BTW, I could miss something, where can I see those Maniac Mansion saves?

JJS

#183
QuoteBTW, I could miss something, where can I see those Maniac Mansion saves?
Sorry, didn't know you wanted them too. I uploaded them here now: http://jjs.at/temp/Maniac_Mansion_Saves_AGS.zip

I guess the "dead" comment was more about the PSP port than AGS in general. Honestly I find it pretty hard to keep all the ports working. Somehow they seem to erode over time and even though I think nothing has changed that would break them, they still break either in building or (even worse) while running. :-\


Edit: About plugin compatibility. The opensource snow/rain and flashlight plugins by default save in their own format. While loading they support three cases:
1. No plugin data saved. This happens when the plugin stub is used, that means no plugin was loaded and the plugin functions were just dummies inside the engine. Before the plugins were written this was the only way the ports saved the plugin data.
2. New plugin data. Can be loaded as is.

Then there is a compatibility mode (enabled by a define, only for snowrain) where they will just read as many bytes as the original plugin on loading and write as many 0 bytes on saving. This is just so they can load files that were saved with the original plugin and it is not enabled by default.

Ideally the plugin should detect that it is supposed to load old plugin data but I remember the problem is that there is no interface for seeking back in the savefile exposed by AGS. Just taking the FILE* pointer given by AGS directly still works on the PSP though but not on Windows IIRC.

Really, the best way to have this plugin interface would be that the engine knows exactly how much data a plugin has written and just reads that on load and passes it as a buffer to the plugin. Then on save it should also receive a buffer and write that itself. Then it would be trivial for the engine to just skip a plugin when loading and a plugin could do whatever with the whole saved data.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

Crimson Wizard

Quote from: JJS on Thu 27/12/2012 07:58:36
Really, the best way to have this plugin interface would be that the engine knows exactly how much data a plugin has written and just reads that on load and passes it as a buffer to the plugin. Then on save it should also receive a buffer and write that itself. Then it would be trivial for the engine to just skip a plugin when loading and a plugin could do whatever with the whole saved data.
This is how dynamic objects are deserialized, and those, created by plugins. That would be safer too, I guess.
However, what about the compatibility between little and big endian platforms? Should engine rely on plugin's ability to interpret data properly?

JJS

Interesting question. Right now the plugins read/write in native byte order which is indeed not the best way. Since plugins can save any kind of data (which is just a binary blob to the engine) they have to do the endianness conversion themselves I think.

Maybe - instead of a raw buffer - the plugins should receive a MemoryStream object to which they can write data with endinaness translating methods. Just like the engine does with the game data.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

lestat666

It's interesting to read what you guys are writing back and forth, even though it is all foreign to me.

My programing experience is limited to Touring hehe... grade 11 programming.

Yea.... never even dabbled in visual basic, although I am guessing you guys use c++ which is way over my head.
You are explaining it pretty well though.

You guys all self taught or did you go to school for programming?

Crimson Wizard

Quote from: lestat666 on Fri 28/12/2012 01:07:40
You guys all self taught or did you go to school for programming?
I guess I am ~80% self-taught, but on retrospect, that would hugely simplify things if at least half of that 80% was taught to me by (a good) teacher :). Self-teaching is very much based on trial and error, unfortunately, and that costs more time and effort.

Crimson Wizard

#188
I seem to confused two savegame problems. MMD saves can actually load with the latest engine build, do they? At least I was able to load them on Windows (with small hack which skipped plugin data). I only wonder, why are they so huge related to windows saves. The saved plugin data was about 80 bytes :/.

EDIT: err, actually nevermind. I forgot that saved game incrases in size when player visits more rooms. :)

So, the problem with these saves was crashes in sound system, right?
I'll look into Gemini Rue saves then.

JJS

QuoteI only wonder, why are they so huge related to windows saves :/.
Do you mean they are smaller if you load a game and then save it again in Windows or if you start a new game in Windows and then save it. Because savegames become larger the farther you get in the game since they contain the roomstatus of every room you have visited so far.

E: Well, beaten.

QuoteSo, the problem with these saves was crashes in sound system, right?
Yes, some of them crash in the sound routines after loading.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

Crimson Wizard

#190
Here's savegames for Gemini Rue, that could be loaded with recent build: http://www.mediafire.com/?7ai7boeck2176i2
Please tell if they load for you on PSP. I had to use a hack when loading them on Windows to test if they are working, so it was not a "correct" test.

lestat666

#191
Good news,
The Gemini Saves work now.
Bad news, new saves don't work in the old build where the interpreter has not been changed and Gemini works doesn't run slow.
Guess I will just keep my old saves for this build.

Maniac Mansion saves do not work with the Dec 26th build.
They still need to be converted to work, although I know JJS has fixed this error for future releases.

Bug at the end Maniac still good, so no problems there.

Resonance has some weird red screen when loading, but if you wait long enough, it loads properly.

I guess all that is left now is to fix the realtime interpreter issues you were talking about and converting the MM saves to work.

Crimson Wizard

Quote from: lestat666 on Mon 31/12/2012 11:34:03
Bad news, new saves don't work in the old build.
Well, obviously they don't.

Quote from: lestat666 on Mon 31/12/2012 11:34:03
They still need to be converted to work, although I know JJS has fixed this error for future releases.
If I understood correctly, the saves format is okay, so it does not need to be coverted. The reason is in audio crash. Probably related to what audio state was stored in save game, but I do not know if that is possible to fix this just in there.

lestat666

So these saves will not work then....

It's not that big a deal anyway, since they aren't the main saves.  Only a couple of them are busted...
I can just scrap those two I guess.

So the only thing left then is the real time interpreter stuff.
If that is sped up, then those two games will be fully functional.

Thanks again for taking the time to work on this.

lestat666

Hey there,
I just downloaded the latest daily, dated Jan 17, 2013.

Everything seems to still be working ok with the 3 games, although I can't tell if anything was changed with the script speed issue.  It still isn't as fast as the Aug Build, but it might be minimally faster than the Dec build...  but I can't be sure.

Was anything changed with this?
Was also curious what other updates were done with the newest build.

Crimson Wizard

Quote from: lestat666 on Sat 19/01/2013 03:46:36It still isn't as fast as the Aug Build, but it might be minimally faster than the Dec build...  but I can't be sure.

Was anything changed with this?
Few minor things were changed, and from what you say it seems it did not affect the performance much.
I keep thinking on this problem, but it might take some time before I address it, for I want to make some other changes first.

Shane 'ProgZmax' Stevens

#196
Tested this on my PS Vita and my games launch but suffer from a variety of problems, mostly related to being locked at the low speed of the psp and the limited memory.  If there was a setting to adjust these from inside the emulator that would probably resolve 90% of the issues with it other than some mapped keys not responding. Other than that (and a fit to screen option) I'm well impressed.  In some ways it actually works better than the android version!

lestat666

New PSP build
All three games work great still.

No change in speed.

lestat666

The builds are coming out too fast for me to keep up with =P

So in that case, I will test after every 3 to 5 or so, unless they slow down again.
Hopefully nothing breaks in between those.
Harder to find which build it happened with when I skip a few.
Oh well.
Thanks for keeping the PSP port alive.

Crimson Wizard

Quote from: lestat666 on Sat 02/02/2013 02:58:00
The builds are coming out too fast for me to keep up with =P
:) Yes, we are fixing various errors here and there, which are not directly related to certain port, so unless you played bugged games, you wont notice any difference.
It may probably be better to check after every 2-3 weeks. Or maybe we should print changelog somewhere...

Crimson Wizard

I made profiling for engine running Gemini Rue (using AMD Code Analyst), on Windows, not on PSP though, so its a bit difficult to tell if PSP will have same results.
Few script interpreter functions are between highest positions in the list of time-eaters (and I am going to see what can be done about that eventually).
But the two top time spending positions belong to graphical functions stretch_line15 (18%) and _colorconv_blit_15_to_32 (~64%).
Is there a way to run similar test on PSP, or PSP emulator (don't know if running on emulator will be suitable)?

lestat666

I think JJS may have to answer that one.

I honestly have no idea.  I never noticed anything reporting that information, although I seem to remember something report the fps.... but I could be thinking of something else.

JJS

There is an option for profiling on the PSP using gprof. I made a build for that and ran it on the Beacon and Gemini Rue main menu. These are the resulting logs: http://jjs.at/temp/profiling.zip .

Not sure how useful they are because the profiling makes the games run a lot slower. Not sure about Beacon but Gemini Rue went down from the usual 25 to 15 fps. I guess this will mess with everything that is timing related so the drawing/script processing ratio might be off. Also not sure if optimization is turned on while generating code for profiling.

The log indicates the most of the time is spent in ccInstance::ReadOperation.
Ask me about AGS on PSP, Android and iOS! Source, Daily builds

lestat666

Test the Feb 9th Build.

I see you switched back to the old save format as the MMD saves now load and the new Gemini Rue saves didn't.
Loaded up the old ones and they worked.

Everything seems to still be working.
Can't tell if there were any speed improvements.
Seems like there might have been.

Let me know if I am mistaken.

Keep up the good work.

Crimson Wizard

#204
Yes... there was another change in save format, hopefully the last one. Sorry for that :(.
I started writing Savedgame Converter, but did not finish, because of other pressing issues.
I will eventually make it, because I want my own Gemini Rue saves back too :).


I also found a way to increase the speed a bit, it is even noticable on Windows when there's slight desync between animation and music in cutscenes. Will be putting it to the current version soon.

lestat666

Awesome.
I wonder how it will affect the bullet sequences in Gemini Rue.
Or is that a limit of the PSP processor?

davoker

#206
Hello, this is translated Spanish, forgive me if you don't understand T_T

I had an error with the game "Primordia" at AGS port v3.21 R9 for PSP

Code: AGS
Exception details:

Exception - Bus error (data)
EPC       - 088AEF08 / gro Application.text + 000AAF08
Cause     - 1000001C
Status    - 60008613
BadVAddr  - A4E015E8
zr:00000000 at:08C50000 v0:00000001 v1:00000140
a0:000000C8 a1:00000000 a2:00000000 a3:00000000
t0:00000000 t1:00000000 t2:00000140 t3:000000C8
t4:08A5AA74 t5:DEADBEEF t6:DEADBEEF t7:DEADBEEF
s0:09B7F680 s1:00000000 s2:00000000 s3:00000000
s4:00000140 s5:000000C8 s6:000000C0 s7:08B03980
t8:DEADBEEF t9:088F6B38 k0:0BABFF00 k1:00000000
gp:08A643B0 sp:0BABE2A8 fp:0000000C ra:0887B8C0


Note: Resolution play game 320x200 or 320x240


Thx ^_^

Crimson Wizard

Quote from: davoker on Sat 30/03/2013 13:15:08
I had an error with the game "Primordia" at AGS port v3.21 R9 for PSP
What is port 3.21 R9? I know 3.21 was previous version for all ports, is it possible to know the build date somehow?

lestat666

I was just wondering if there were any speed improvements implemented in the last 2 builds in March.

Figured it was easier to ask before testing.  Saves me some time =P

I will check if anything else is not working when I test for the speed issues.

I am doubtful if Primordia would run at full speed on a psp.
It will probably be choppy.
Especially since it has system requirements similar to Resonance.

Crimson Wizard

#209
Quote from: lestat666 on Sat 30/03/2013 17:49:34
I was just wondering if there were any speed improvements implemented in the last 2 builds in March.
I made a change I mentioned back in the end of february, it should be already in the recent builds. That change improved performance, maybe not drastically, but noticable even on Windows during some sequences. I would like to know how it affects PSP.

E: the change was made 24th February, so it should be in any later build.

davoker

That is the version that I got this here:

http://jjs.at/software/ags.html#screenshots

Just below "download" this version 3.21 R9 (Adventure Game Studio runtime PSP port - version 3.21.1115, got this release months ago, creation date not the, but this is the date of the EBOOT.)PBP:

[imgzoom]http://i1304.photobucket.com/albums/s522/davoker/eboot_zpsc941214c.png[/imgzoom]

P.S: The game "Prodigal" background sound crashes the PSP also, no sound works fine, has a solution?

P.S2: It would be a luxury to be able to play well "primordia" in the PSP *O* (Or Resonance, that it have not yet hehe)
Many hours of happiness with the AGS hahaha

Thank you and sorry for the trouble and please forgive my English  :-[

Crimson Wizard

#211
@davoker, "agosto" means "august", is it? August 2012 is a pretty old one... The only good thing is that it may be faster than the ones that followed, because we did some tweaks to the engine, that made it slower, unfortunately. Hopefully recent update made it faster again (still need to be tested).
But there were a lot of bug fixing and compatibility improvement, so I suggest you try the recent port build:
http://jjs.at/daily/AGS_for_PSP_2013-03-10_15-27-38.zip

You may check those daily builds in the future:
http://jjs.at/daily/

I don't know why JJS hasn't updated the port on that page you downloaded it from...

davoker

#212
Yes, "agosto" is august hehe

I've used version daily you put:

http://jjs.at/daily/ -> http://jjs.at/daily/AGS_for_PSP_2013-03-10_15-27-38.zip

The same thing that in the version which comment you above, one of the errors out is this: "Error: load_room: not enough memory to load room background" (apart from other errors that refer to sprites[type error black screen]), my PSP is a SLIM model 2000, if it's worth.

P.S: That version was just testing it after writing the second post, I saw it in the Forum, "Resonance" with that version is almost playable, but will still slow, little is left hehehe

Thx ;-D

lestat666

K, that mean's I have not tested it yet.

I will get to it in the next couple of weeks and let you know.

lestat666

So I tested stuff and some things seem faster and some seem slower.

Seems like the bigger the room in Gemini, the slower.
Ex.  Start screen with the rain is slow when moving the cursor and sometimes the sound skips.  Same with another.

Also, any rooms that have things moving are really slow.

Although I did notice a speed up with skipping scenes.  Especially that one at the beginning, but still not as fast as it used to be.

I tested the Apr 9th build.

Crimson Wizard

#215
Weird  ???

E: I would really need to set up psp emulator to see how my changes affect profiling...

Crimson Wizard

#216
JJS, can you please make a test PSP build of "develop" branch? It features simplified Bitmap class without inheritance and virtual functions (that was redundant, and removing them allowed me to make many getters inline).
Not sure if that is the only reason, but with that sound stutters less (or not at all), which I noticed on Windows playing "Gemini Rue" and "Metal Dead" games.
Just curious if that affects PSP in any way.

JJS

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

lestat666

Since I just tested the prev build, I am going to take a break again for a bit.
Really short on time lately.

I will test again in a few weeks to a couple months.
Hopefully no other glaring problems come up during that time, making it hard to figure out which build caused the problem.

sonneveld

Does anyone still use the PSP port?

Crimson Wizard

#220
The PSP builds are now available for download from the build server:
http://teamcity.bigbluecup.org/viewType.html?buildTypeId=AdventureGameStudio_EnginePsp

To download one, choose the version ("master" is latest stable AGS), and click on "Artifacts" column.

I must note that we had trouble running this port on emulator, because as soon as we run any game, emulator crashed. It is possible that PSP build was broken, for last time it was tested on actual device in 2013.

Cassiebsg

#221
I have a PSP, I'll give it a try as soon as I have the time and post here. ;)

EDIT: Errmmm... guess not. It's asking for login and password. ???

EDIT2: Never mind, just noticed a link saying "login as guest". :-D
There are those who believe that life here began out there...

Crimson Wizard

Quote from: Cassiebsg on Mon 28/09/2015 13:44:10
EDIT2: Never mind, just noticed a link saying "login as guest". :-D
Yes, just login as guest :).

sonneveld

Quote from: Cassiebsg on Mon 28/09/2015 13:44:10
I have a PSP, I'll give it a try as soon as I have the time and post here. ;)
Sweet!  If you have a chance, could you compare with JJS's own builds?

Cassiebsg

I'm actually not sure it'll work with mine, think mine it's a 1000 and readme says 2000/3000/GO. :-\:(
There are those who believe that life here began out there...

Crimson Wizard

Quote from: Cassiebsg on Tue 29/09/2015 18:22:02
I'm actually not sure it'll work with mine, think mine it's a 1000 and readme says 2000/3000/GO. :-\:(
Try small simple games for starters, which do not require much resources, maybe even create a new game in Editor using default template.

morganw

I just acquired a 1000. I can load a game without any problems using the latest master build from the build server, but it doesn't find the patches.dat file to get MIDI working. I compared it with the last build available from JJS, and with this build it seems to find the patches.dat file (no warning as the game starts, plus a lengthy delay before the game comes up - I guess it's actually caching audio data at this point). I don't actually get any audio with either build, but perhaps that's because the 1000 doesn't have enough memory.

InfernalGrape

#227
Hi. So I have a PSP, which AGS version I need to use to make a game for it?

Is it 3.2.1 basically? Also, which build is best to use? JJS website is still available, but "build server" isn't anymore, right?

By the way, PSP Homebrew Development community just opened a game making jam that would last until 21 October. If anyone is interested.

P.S.
Also, is it possible to turn specific game into sort of standalone eboot instead of basically using AGS port as emulator where you choose needed game from inside?

SMF spam blocked by CleanTalk