Author Topic: Will this let us play King\'s Quest on the Zaurus ?  (Read 5734 times)

_Psycho

  • Full Member
  • ***
  • Posts: 114
    • View Profile
    • http://zports.sf.net
Will this let us play King\'s Quest on the Zaurus ?
« Reply #15 on: June 21, 2004, 04:46:31 pm »
Quote
Scummvm zport is trying to set the video mode to 640x480. That\'s why is not working on your 5600, and that\'s why the version is 0.6.0-zports_c7x0-4.

Anyway, the libSDL is still not detecting your 5600. I don\'t know why. I\'m starting to think that perhaps sarien is using a statically linked libSDL. Psycho, could you throw some light on this? I\'ll also take a look at the detection code, but with that /proc/deviceinfo/product it should be detected as a 5600 correctly.

Regards.


Good possiblity, i dont remember at all if sarien was statically linked with my own libSDL (I dont think due to the size of it). But I have a look as soon as i can (this week i hope, im so busy).
Zaurus Porting Project :
http://zports.sf.net
Conics:
http://www.conics.net

cmisip

  • Sr. Member
  • ****
  • Posts: 256
    • View Profile
    • http://home.mchsi.com/~cmisip/index.htm
Will this let us play King\'s Quest on the Zaurus ?
« Reply #16 on: June 25, 2004, 08:25:21 pm »
I managed to compile the libsdl version from http://www.piro.hopto.org.  Added the entry for the 5600 ins SDL_sysvideo.cc and set the rotation to 2.  That worked.   Looking at the source, I see an entry for SDL_FB_DIRECT environment variable.  Without this setting, my sdl runs at the correct rotation.  With this setting on, they are upside down again.  I would like to be able to use SDL_FB_DIRECT because when I run testsprites I get 85 frames per second with this variable set to 1 and 60 frames per second with this variable set to 0.  The following is the output for SDL_FB_DIRECT=0

 ./testsprite
could not open for writing `../etc/zstyles/ZIvory.style.new'
keyhelper_SDL.xml loaded
 detected machine is 'Sharp SL-5600'
QT_GetRotation: Read spec from '/tmp/qtembedded-root/QtEmbedded-0.spec'
 Rot=0, Qvga=0
QT_SetVideoMode: argSize=320x240
QT_SetVideoMode: qteSize=320x240
QT_SetVideoMode: fbSize=320x240
QT_SetVideoMode: qteRotation=2
QT_SetVideoMode: userRotation=-1
QT_SetVideoMode: sdlRotation=2
QT_SetVideoMode: qteKeyRotation=2
QT_SetVideoMode: sdlKeyRotation=2
Screen is at 16 bits per pixel
Screen is in system memory
Sprite is in system memory
Sprite blit uses RLE acceleration
59.61 frames per second
../bin/qcop: not found


The following is the output with SDL_FB_DIRECT=1

 export SDL_FB_DIRECT=1
root@zaurus:/mnt/cf> ./testsprite
could not open for writing `../etc/zstyles/ZIvory.style.new'
keyhelper_SDL.xml loaded
 detected machine is 'Sharp SL-5600'
QT_GetRotation: Read spec from '/tmp/qtembedded-root/QtEmbedded-0.spec'
 Rot=0, Qvga=0
Direct paint mode
QT_SetVideoMode: argSize=320x240
QT_SetVideoMode: qteSize=320x240
QT_SetVideoMode: fbSize=320x240
QT_SetVideoMode: qteRotation=2
QT_SetVideoMode: userRotation=-1
QT_SetVideoMode: sdlRotation=2
QT_SetVideoMode: qteKeyRotation=2
QT_SetVideoMode: sdlKeyRotation=2
Screen is at 8 bits per pixel
Screen is in system memory
Sprite is in system memory
Sprite blit uses RLE acceleration
87.10 frames per second
../bin/qcop: not found

Both are run with the 5600 in landscape rotation.  Portrait results in garbage.  I notice that  the screen is 8 bits per pixel in SDL_FB_DIRECT mode, maybe that accounts for the increased frame rate.  

Does anybody know how to set a rotation of 2 with SDL_FB_DIRECT mode?

Also while I am able to run Flight of the Amazon Queen now with fast graphics, Beneath a steel sky quits without an error.   Is this game meant to run at 640x480 only?  Is that why it quits on my 5600.

Thank you very much for all your insights
Zaurus 5600
Zynergy Rootfs 1.1
Custom zImage

How Do You Do That in Linux

mteira

  • Newbie
  • *
  • Posts: 24
    • View Profile
    • http://zports.sourceforge.net
Will this let us play King\'s Quest on the Zaurus ?
« Reply #17 on: July 02, 2004, 02:53:18 pm »
Hello.
I was looking at the patches in that page you said. What I've found is that they relay in a kernel patch for rotating the framebuffer, so the blitting operations are no needed to rotate the surfaces to go on the screen.
I applied that patch to the Sharp kernel sources and compiled a new kernel for my c760. Now, I have the /proc/drivers/w100/rotation entry needed for this DIRECT_FB to run and also the w100_init_vga_rotation driver function to rotate vga modes (the original driver is only able to rotate QVGA modes).

After this, I applied the SDL patches manually on my zports SDL, and the speed was increased, not as spectaculary as yours:

# export SDL_FB_DIRECT=0
# ./testsprite
SlSharedManager: can't get proc entry
Display size = 480x640
QT_GetMachine: /proc/deviceinfo/product is 'SL-C760
'
 detected machine is 'Sharp SL-C760'
QT_GetRotation: Read spec from '/tmp/qtembedded-zaurus/QtEmbedded-0.spec'
 spec is 'Transformed:Rot270:Vga:0'
 Rot=3, Qvga=0
QT_SetVideoMode: SL-C700 Style is Input style
Your kernel is Special kernel
FBVideoMode: 640x480
QT_SetVideoMode: argSize=640x480
QT_SetVideoMode: qteSize=640x480
QT_SetVideoMode: fbSize=640x480
QT_SetVideoMode: qteRotation=0
QT_SetVideoMode: userRotation=-1
QT_SetVideoMode: sdlRotation=0
QT_SetVideoMode: qteKeyRotation=0
QT_SetVideoMode: sdlKeyRotation=0
Screen is at 16 bits per pixel
Screen is in system memory
Sprite is in system memory
Sprite blit uses RLE acceleration
27.98 frames per second
SlSharedManager: can't get proc entry
Display size = 480x640

# export SDL_FB_DIRECT=1
# ./testsprite
SlSharedManager: can't get proc entry
Display size = 480x640
QT_GetMachine: /proc/deviceinfo/product is 'SL-C760
'
 detected machine is 'Sharp SL-C760'
QT_GetRotation: Read spec from '/tmp/qtembedded-zaurus/QtEmbedded-0.spec'
 spec is 'Transformed:Rot270:Vga:0'
 Rot=3, Qvga=0
QT_SetVideoMode: SL-C700 Style is Input style
Your kernel is Special kernel
FBVideoMode: 640x480
Direct paint mode
QT_SetVideoMode: argSize=640x480
QT_SetVideoMode: qteSize=640x480
QT_SetVideoMode: fbSize=640x480
QT_SetVideoMode: qteRotation=0
QT_SetVideoMode: userRotation=-1
QT_SetVideoMode: sdlRotation=0
QT_SetVideoMode: qteKeyRotation=0
QT_SetVideoMode: sdlKeyRotation=0
Screen is at 8 bits per pixel
Screen is in system memory
Sprite is in system memory
Sprite blit uses RLE acceleration
34.46 frames per second
SlSharedManager: can't get proc entry
Display size = 480x640


Anyway is a good speed increase. Is not good enough to play Toppler at 640x480, but we are on the way. I was testing some scummvm games and they seem to work fine. Perhaps I include this patches on the next zports SDL release, but I'm afraid to break the support for some models, I don't know. Also, the need of the "special" kernel to get the speed increase is a problem.


I was thinking that perhaps the solution is try to improve the framebuffer w100 kernel driver, and including functions for blitting and so on (using the hardware capabilities of the w100), if ATI only will release the specifications. :-(


Anyway, cmisip, thanks for the info. ;-)

Teletubbie

  • Sr. Member
  • ****
  • Posts: 252
    • View Profile
    • http://
Will this let us play King\'s Quest on the Zaurus ?
« Reply #18 on: July 12, 2004, 04:18:50 pm »
Dear cmisip,
i have downloaded scummv from your page, to try it on a 5500 with Openzaurus. The ipkg from openzaurus is somehow very special with the control files, so I have to untar the ipkg, have look at the control and pack the ipk with the old tar format, so ipkg can find them.
As I tried this, i could untar libsdl. unpacking the scummvm fails. I tried that on my debian machine and also my zaurus. I downloaded the ipk again, the same thing.
could you please have a look at the package. I would love to run the scummvm on my zaurus and a lot of other people in germany with 5500 and oz too.
Thanks and Cheers,
Sam
SL-5500G
OZ 3.3.6-pre1
Opie 1.1.4

cmisip

  • Sr. Member
  • ****
  • Posts: 256
    • View Profile
    • http://home.mchsi.com/~cmisip/index.htm
Will this let us play King\'s Quest on the Zaurus ?
« Reply #19 on: July 14, 2004, 10:29:08 pm »
I have uploaded it again.  The previous upload must not have completed.  

I am currently working on right click emulation, so BASS will not be playable at this point.
But FOTAQ should be.

Also, looking for the Quit key so I can remap it.

Have not had much time to look into these lately.
Zaurus 5600
Zynergy Rootfs 1.1
Custom zImage

How Do You Do That in Linux

cmisip

  • Sr. Member
  • ****
  • Posts: 256
    • View Profile
    • http://home.mchsi.com/~cmisip/index.htm
Will this let us play King\'s Quest on the Zaurus ?
« Reply #20 on: July 15, 2004, 02:00:35 am »
uploaded updated version.  In Beneath a Steel Sky, Right click emulated by pressing OK key while  Menu is accessed via Cancel key.
Zaurus 5600
Zynergy Rootfs 1.1
Custom zImage

How Do You Do That in Linux

Stubear

  • Hero Member
  • *****
  • Posts: 1164
    • View Profile
    • http://
Will this let us play King\'s Quest on the Zaurus ?
« Reply #21 on: July 15, 2004, 04:32:57 am »
Anyone get voices to work with Day of the Tentacle?

The version I have complains - Can't open SFX device or some such message

Anyone know what the SFX device is supposed to be?

Stu
SL-C1000, Hand converted to English with Japanese Input
Running X apps via X/Qt
iRiver USB host cable; Diatec P-Cord usb power cable (extendable); Acro's Reel Cable USB (A to A, B, Mini-B,  & Mini-B 8pin); GreenHouse 1Gb PicoDrive+; 2x256Mb Hagiwara SD cards; 128Mb Transcend CF card; 512Mb PQI CF card; AmbiCom WL1100C-CF 11B WLAN card

cmisip

  • Sr. Member
  • ****
  • Posts: 256
    • View Profile
    • http://home.mchsi.com/~cmisip/index.htm
Will this let us play King\'s Quest on the Zaurus ?
« Reply #22 on: July 31, 2004, 10:47:22 am »
I uploaded my latest compiled sarien binary on my website.  


I managed to track down the audio problem and so sound works well now  

The problem is in the struct agi_note.   chn[].ptr->dur_hi and dur_lo are somehow corrupted resulting in a very big chn[].timer which makes it seem that the sound hangs on the zaurus.   chn[]ptr is an instance of this struct and it is not exactly a multiple of 4 bytes.  I thought maybe it was being padded somehow as my test scripts showed that the z behaved like this. To test the idea, i tried using 'attribute packed' on this struct in the sound.h file and the sound problem went away.
Zaurus 5600
Zynergy Rootfs 1.1
Custom zImage

How Do You Do That in Linux