OESF Portables Forum
Model Specific Forums => Sharp Zaurus => Zaurus - pdaXrom => Topic started by: ikm on June 06, 2004, 07:47:26 pm
-
Being a big fan of the Lucas games, I made this to be able to actually play, not just for the sake of completeness.
This version is meant to run from the console (framebuffer) only.
Here are the features:
Hardware 320x240 fullscreen -- works real fast and smooth;
Operates with touchscreen directly (via libts) -- no more mouse emulation problems;
Hardware backside buttons are mapped to be handy, so it is perfectly possible to play with a clamshell closed;
Has a built-in suspend functionality, you can select it from the in-game menu.
Using this version of ScummVM, I have successfully completed \"Day Of The Tentacle\", full talkie version. In fact, I was enjoying the every moment of it. Other Lucas games should work fine too. Even \"Full Throttle\", the complete CD version with movies and speech, works just great (but you will obviously need a 512Mb card to hold it :)
Enjoy the playing!
-
ikm, this is great! Thanks!
Sooo, where did I put my old Lucas Arts disks?!
-
Thankyou very much ikm - much appreciated
-
I have a little problem using the 2x modes, as the stylus moves the cursor only over the top-left half of the screen, and I can only move cursor on the whole screen using keyboard .
I understand this is libts related, any clue to fix this?
-
I have a little problem using the 2x modes, as the stylus moves the cursor only over the top-left half of the screen, and I can only move cursor on the whole screen using keyboard .
I understand this is libts related, any clue to fix this?
Yes, this is a known problem. I didn\'t get to fix it just because I thought that
1) pure 640x480 games would be too slow to be playable, and would take too much flash space anyway, so nobody would likely try playing them.
2) as for 320x240 games, I thought that using 2x scaling modes don\'t make much sense since 3.7\" screen is too small to notice much difference anyway, but the speed would degrade quite significantly.
Would you please comment on this?
In case you actually think that using 2x modes make sense, I guess I can fix it to work with them.
-
well i think the 2x mode makes sense as we have a native 640x480 res and apart from pointer issue games seem to run smootly even with 2x scaling. I didn\'t try to compile scummvm myself but i think that it should be feasible to add a command line option (or env var) to switch the two modes. Maybe you could post some compile instructions?
Another nice thing would be enable (if there\'s a driver in kernel) the hardware midi...
Last question: did you compile mp3 support in via libmad? Using this I could fit day of the tentacle on a SD
-
Ok, I\'ll fix it then.
And yes, mp3 support is compiled in.
-
I have fixed the problem and uploaded the updated package.
p.s. There is no hardware midi in Zaurus unfortunately, but the adlib emulation in ScummVM works quite nice. Well, there is a possibility to use timidity as a software wavetable synthesizer, but that would require a bit of work and I doubt it is worth it.
-
great work!!!
now stylus works perfectly, and mp3 support too.
-
Where was this uploaded to? I'd like to try it out. Thanks.
-
http://www.pdaxrom.org/unstable/ (http://www.pdaxrom.org/unstable/) , it works fine with RC2.
Fabian
-
I just tried it with Full Throttle (loading from a Samba share) and it works great. One suggestion I have, though, is that there should be an option to invert the screen. It'd be a lot easier to play in tablet-mode if the OK/Cancel buttons were on the top instead of the bottom.
-
I just tried it with Full Throttle (loading from a Samba share) and it works great. One suggestion I have, though, is that there should be an option to invert the screen. It'd be a lot easier to play in tablet-mode if the OK/Cancel buttons were on the top instead of the bottom.
Unfortunately, I don't see any simple way to flip the screen that way. But well, if you need this to invoke the action menu in Full Throttle, the one normally invoked with the right mouse button, you can achieve the same effect just by double tapping, without any hardware buttons at all.
-
Actually, the right mouse button brings up the inventory. You have to hold the left mouse button in for about a second to bring up the action menu.
-
Actually, the right mouse button brings up the inventory. You have to hold the left mouse button in for about a second to bring up the action menu.
Ah yes, that's right, I already forgot the thing So, to bring up the action menu, you double tap with the stylus instead of holding mouse button for a second, that would be right
-
I've tried the double-tap, but found it too unreliable and went back to using the buttons. It's still very much playable with the buttons (although I can't figure out how to move the bike in the combat scenes) but it would be more convenient if flipped.
Anyway, if you can't, you can't, but if you do come across an sdl_flip() command or something along those lines, it would be a good feature to have in a future version of the port.
-
I've tried the double-tap, but found it too unreliable and went back to using the buttons. It's still very much playable with the buttons (although I can't figure out how to move the bike in the combat scenes) but it would be more convenient if flipped.
Anyway, if you can't, you can't, but if you do come across an sdl_flip() command or something along those lines, it would be a good feature to have in a future version of the port.
I played with the double tap all the time, well, maybe it's a matter of taste
To navigate your bike you should put the cursor to be touching either left or right screen boundary. You move your stylus either to the extreme left or to extreme right, only then the bike will be steering. To cancel the effect, tap the screen in the middle, so the cursor is no longer near the boundary. It is possible to complete all the fighting in the canyon solely on the Zaurus, I've managed to do it. I haven't tried the racing episode though, as I rememered it was quite hard even on the regular PC... Well, in case it is impossible on the Zaurus, I've heard there is some cheat in the game to bypass it, don't really know about it.
ScummVM doesn't use the SDL_Flip() function, it updates the screen only where necessary. I recall some dirty region lists maintained... Looking now, the main process seems be happening in the update_screen() function, in backends/sdl/sdl.cpp, but I don't really want to grok in all the subtleties in order to perform the rotation. Well, patches are always welcome, and the thing is perfectly hackable on the regular PC
-
Oh yeah, forgot that there actually was an SDL_Flip() function that switches between framebuffers. I was using it as an example of a way to quickly and easily invert the screen, although if SDL only updates on a region-by-region basis then that sort of thing would be tough to implement even if that function did exist.
Well, it'd be pretty easy to implement, actually, but you'd lose all the performance benifits of only updating by region.
-
Oh yeah, forgot that there actually was an SDL_Flip() function that switches between framebuffers. I was using it as an example of a way to quickly and easily invert the screen, although if SDL only updates on a region-by-region basis then that sort of thing would be tough to implement even if that function did exist.
Well, it'd be pretty easy to implement, actually, but you'd lose all the performance benifits of only updating by region.
Note that it is not SDL that maintains dirty rects, but ScummVM. The sdl.cpp file mentioned is part of the ScummVM source code, not of an SDL.
-
Now that the RC3 is out, it is now possible to switch the Xserver to 320x240 via xrandr. Furthermore, it is possible to invert the screen via xrandr, too! I'm going to update the ScummVM package shortly, now suited for running within X, with xrandr, new upstream version, and with the Simon and BASS problems fixed. Stay tuned
-
Oh yeah, forgot that there actually was an SDL_Flip() function that switches between framebuffers. I was using it as an example of a way to quickly and easily invert the screen, although if SDL only updates on a region-by-region basis then that sort of thing would be tough to implement even if that function did exist.
Well, it'd be pretty easy to implement, actually, but you'd lose all the performance benifits of only updating by region.
Note that it is not SDL that maintains dirty rects, but ScummVM. The sdl.cpp file mentioned is part of the ScummVM source code, not of an SDL.
That was a typo. I meant to say "if ScummVM only updates on a region-by-region basis...", not SDL.