HunterDavis.com Version 3.11 For Workgroups

4Oct/09128

Z2 gaming and system update – GBA, GB/GBC, ScummVM (Sam and Max/Full Throttle Full Talkie), auto-login to Fluxbox on boot

So now that the Z2 is running debian and everything is working, it's really easy to install new programs and emulators. They are even automatically added to the fluxbox right-click mouse menu. I haven't changed or recompiled a single C file this time, this is fully "general public" ready! Here's what I've been playing with this weekend.


Before we get to the fun stuff, let's set up fluxbox to start (no more console login required)

  1. edit a file called /etc/init.d/flux
  2. the contents of this script should read

    #!/bin/sh
    su root -c startx
  3. now just: update-rc.d flux defaults
  4. Fluxbox should now start up on boot!
  • VisualBoyAdvance (GBA) runs about 10% speed with gba roms, 70% speed with gb/gbc roms. I'm guessing a straight gb/gbc emulator may run 100%
  • Scummvm runs perfectly with sound, movies, voice, everything!! when you set scale=1x in the .scummvmrc
    1. Monkey Island 2 - 100% perfect
    2. Full Throttle - 100% perfect!
    3. Zak McKracken - 100% perfect
    4. Beneath a Steel Sky - 100% perfect
    5. Flight of the Amazon Queen - 100% perfect
    6. Indiana Jones and the Fate of Atlantis - 100% perfect
    7. Indiana Jones and the last Crusade - 100% perfect
    8. Maniac Mansion - 100% perfect
    9. Simon the Sorceror 2 - Full CD Talkie - 100% perfect
    10. Sam and Max hit the road - Full CD Talkie - 100% perfect
Comments (128) Trackbacks (2)
  1. Konqueror runs on the z2! it is very slow but never-the-less it runs! this comment posted from a debian powered zipit z2 in konqueror.

  2. epiphany runs too (also pretty slow)

  3. I’m having issues with the keyboard/mouse not working at all in X.

    I added z2mouseemu to /bin, but when i type “startx” All I see is a beautiful fluxbox with no way to move the mouse or open a console. I have to pull the battery to reboot.

    Any suggestions?

  4. Also – Thanks so much for all the work you’ve put into this. It’s really fantastic to tool around with.

  5. Hey Red,

    Use the z2mouse-option version of the mouse emu. It lets you toggle between mouse and arrows by pressing the option button. You’ll need to add this to the startfluxbox script in /usr/bin /bin/z2mouse-option &

    Good Luck!

  6. Hunter,

    Thanks a lot for the info, it helped tremendously.

    For others in my pickle:

    Here is the link to Aliosa’s page with all the keymaps and goodies and z2mouse-option etc.

    http://aliosa27.net/projects/zipit2/

    I edited /root/.fluxbox/startup and /usr/bin/startfluxbox because I wasn’t sure which was being called. setting /bin/z2mouse-option & in the startup sections worked perfectly once i CHMOD’ed the z2mouse-option file to be executable, but I noticed that all the upper row of characters were acting like a tilde constantly. ~~~~~~.

    Eventually I figured out that switching the mouse on with options switched the keymap over to something funky, turning the mouse off lets me type normally.

    With all that worked out, now I can login, startx, open up a term, and enjoy!

    @hunter – Thanks for taking a look at my problem and giving me enough info to solve it. You’re doing great work here.

  7. Been playing with the thing all night. Dillo runs great, although there’s not a lot of screen real estate. Considering uzbl.

    I need something I can use to set up WPA2 profiles for wireless. Still pondering that.

    I think I’ve got a rough battery estimate with ‘cat /proc/apm’. If you’ve got something better I’m all for it.

    Again, great work. I’m amazed how well everything works.

  8. Red-
    apt-get install wpasupplicant

    once that is done edit your /etc/wpa_supplicant.conf file

    Mine looks something like this:

    ctrl-interface=/var/run/wpa_supplicant
    ctrl-interface_group=0
    # eapol_version=1
    # ap_scan=1

    # home network
    network={
    ssid=”NAME OF HOME NETWORK”
    scan_ssid=1
    key_mgmt=WPA-PSK
    psk=”YOUR SECRET KEY HERE”
    }

    # work network
    network={
    ssid=”NAME OF WORK NETWORK”
    scan_ssid=1
    key_mgmt=WPA-PSK
    psk=”YOUR SECRET KEY HERE”
    pairwise=CCMP TKIP
    group=CCMP TKIP
    }

    Then run :
    wpa_supplicant -Dwext -ieth1-c/etc/wpa_supplicant.conf

    You should see it associate with access point
    Then start dhcp with:
    dhclient eth1

    You can start wpa and dhcp automatically through /etc/network/interfaces I just wrote a short script wpa.sh to do it for me.
    Thanks to everyone who has helped me out getting all this figured out!

  9. the z2mouse-option variant is optimized for lokiChaos’s keymap, so the first row of numbers when toggled on are all fkeys..

    use the loki version , it swaps the mouse buttons and adds play as middle click

  10. gnuboy works fullspeed from what I can tell. only tried a few roms. package is gnuboy-sdl.

    can’t figure out how to get it fullscreen or how to quit yet, though.

  11. So is the DOSbox working as well at this point or does it need some conversion after the switch to Debian?

  12. Hey Alex,

    DOSbox should work straight from the repository. If there is an issue with screen size defaulting to 640×480, I believe DOSBOX follows window manager conventions and will resize to fit the window. Otherwise we could apt-source the dosbox package, replace all the SDL 640×480 calls to 320×240, then compile it in-place on the Z2. Good Luck!

  13. Hey, is your screen scratched at all? I was cleaning the dust off my screen with my white t-shirt and it scratched the screen all to heck. Was this avoidable or do most of the screens scratch up pretty easy?

  14. My screen scratched using a micro fiber cloth. No idea how they expected teens to use this without similar end result. At least I don’t feel so bad now knowing it wasn’t just me.

  15. More Updates –

    I’ve been trying out things all day. Browsers are a top concern. Dillo works well but I can’t edit half the preferences due to tiny screen size. Conkeror is a no go, as is hv3. I’m going to try Uzbl in the near future. I couldn’t find an ARM variant for Opera Mobile, so that’s out too.

    Mouse emulation is great, thanks so much Aliosa! The [Power+F2] Combination that starts the run command box seems to bork the modifiers so I can’t use / or – properly.

    I haven’t tested the media capabilities yet. I’m trying to see what works best for basic utilitarian purposes.

    wpa_supplicant is kicking my ass. At work my wireless uses WPA2 with a username and password for credentials. I spent a few hours playing around with settings today, but I think I’m going to need something better for network management on the fly.

    On the upside, if all I wanted to do was check a few text based websites, read/write email, do some coding and listen to some streaming music, I’d be done already, which speaks to how far you guys have come in terms of turning a tween texting toy into a nerdgasm.

    I’ll post as things work/don’t work. I’m taking some screenshots too. Eventually this is going to be a long reddit post. =)

    @robertscratchupo

    My screen seems pretty resilient. It’s been making rounds all over town and dealing with dodgy thumbs like a champ.

  16. I’m usinag Links2 for web browsing, as most options and functions have direct key bindings and images work under X. It works with Gmail and I’ve used it to post here and a few other sites (I’m posting this with my Z2 even).

    Oh, and I completely airballed on prBoom/FreeDoom. if you run ” /usr/games/prboom -width 320 -height 240 ” it’ll run in a window at proper resolution and is quite playable.

  17. Hey Ryan,

    Yeah gnuboy-sdl (sdlgnuboy binary name) seems to be running 100% speed for me. You can exit by pressing the power button and the smiley face at the same time. For fullscreen, it doesn’t appear that they support anything but full integer value scaling. This is unfortunate, as 320×288 is 48 pixels too tall for the Z2. Let us know if you figure out the correct scale value. Good luck :)

  18. Anyone know how to get an Xterm to start when you start fluxbox?

    I’ve tried editing /usr/bin/startfluxbox, as well as creating a file called /home/root/.fluxbox/startup with
    xterm & in it.

    Thanks,

    Denis

  19. I’m an old Zaurus user… those machines were very similarly spec’ed to the Z2. I’m eagerly awaiting arrival of some miniSDs I ordered, but meanwhile wanted to chime in about Konqueror. There was a “slenderized” version of Konqueror that was distributed in IPK form in several Zaurus distros. I used it often with OpenZaurus, and it was quite usable on 320×240 on a 200MHz ARM chip. I imagine that there might be something similar to that old “mini-Konqueror” in the Angstrom package library… perhaps in their OPIE GUI stuff.

  20. I’ve been reading a bit about setting up the repositories for ZipIt, corect me if I’m wrong, but it looks like you need to setup a webserver on a Linux server and host your own files.

    Does anyone have a source list for appliactions like “apt-get” etc?

    Thanks,

    Denis

  21. With the debian image we can directly use the prebuilt packages in the debian repositories. Check out packages.debian.org for lists of what you can install. Only some of the repositories are set up in the image, but you can add them to your /etc/apt/sources.list

  22. I’ve been playing UQM (Starcon 2) from the repo and it’s good :)

  23. hay ll the zipit hacking your doing looks really cool and i like the windows guide im going to pick up one this week.only thing is im not to good with command line in Linux.so i have a few questions.Any way for a gui or any thing to make it easier. could you make a zip file with all the apps already set for zip it.
    can you go on the web with wifi. sorry if im asking so much if you have any info the would help me understand commaand line linux more would help great site

  24. Hey Josh,

    Check the comments threads and the sourceforge wiki, both are full of good info. The windows tutorial is mostly gui. After you go through the tutorial, your z2 should have a few apps already installed for you. You can definatly browse the net. We’re still trying out various browsers to see which one works best. I’ll probably make a post on it later this week. Good Luck!

  25. Looks like mozilla has xulrunner and fennec binaries nightly up at http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-mobile-1.9.2/ . Has anyone installed this?

  26. Hmm. Ok, tried to get the DOSbox working and no problems with apt-get dosbox, but as we suspected it comes defaulted at 640×480. I don’t have a game installed so haven’t been able to test that, but when I start it in Flux I see the pretty blue screen that is too big for the display size. Even when I click and maximize it I see the upper right corner all right, but it is obviously too big for the screen.
    Also I can only seem to get it to run correctly inside Fluxbox, haven’t been able to get it to start from the command line without bad colors and locking up the box.

    So I figured I would try the compile you commented on. I seemed to be able to do some, but ran into a snag when it came to the SDL drivers it wants. It is looking for an SDL-config file and I am unable to find in debian what package I need to download. Looks like lots of libsdl1.2debian options, but none of them seem to work that I have been able to locate. Do I need to change to a different repository?

  27. Hey Alex,

    The pre-reqs for compiling dosbox with sdl should be in the repo that is included. There are some funny sdl library names though. I know that you’ll need libsdl-mixer, libsdl-net, libsdl-image etc. If you get it cross-compiled ok we should host the changed .deb file for others to DL. Hope this works for you. Good Luck!

  28. Hunter and Karl,

    Thanks for the information, I’ll try it tonight when I get home.

  29. Is ther a better place to be asking for help? I know these are the comments, however, i figure there’s a better place for ZipIt help

    Thanks,

    Denis

  30. @ Denis: This is the best place I’ve found over the last few weeks for current and relevant Zipit stuff.

  31. @ Denis irc freenode #zipit

  32. Is anyone having these same things happen to them? The zipit boots now every time I plug it in. I also added the auto login to root and startx but when I go to halt the box with shutdown -h now it will load up X again. When I exit out of that x session it finally goes down for halt properly.

  33. Hey Drewid,

    Yeah, adding the flux script with update-rc.d means it’ll get executed at the end of every runlevel. You can probably edit the script to ignore startx on the shutdown runlevel. Good Luck!

  34. I posted this in another thread, and I don’t want to spam, but I am totally at wit’s end.

    I am a complete linux moron (I used MSDOS for years, so command lines aren’t a problem, I just don’t know them!) and I was able to get Debian working and I still can’t get the wifi working at all. I renamed the bin files, moved it to the notlibertas folder. When I load up Debian, I type in “iwconfig – eth1 . . . ” and the response is no device found. I have tried the libertas folder, I have tried the public firmware from your other post. I am very lost. Can someone help?

  35. Hey Paco,

    We can help. You’ve got debian working, that’s the hard part. Let’s do some detective work and see if we can figure out what’s going on. Do a dmesg > out.out this will output the system message log to the out.out file. Scroll through this file and see if there is any mention of libertas. If there is, we’re almost there.

    If not, sounds like it’s having trouble finding the files. After renaming the firmware as described previously, copy it into the /lib/firmware/libertas/ directory (which in the debian image also happens to point to the fat32 parition so windows users can see it also). Do a chmod 777 /lib/firmware/libertas/* so that we know the firmware files can be read by anything in the system. Now reboot, and do a dmesg > out.out. This’ll output the system message log to out.out and let us know what is up with the libertas firmware. I know one time mine wasn’t working because of a spelling error (it complained in dmessg “can’t find gspspisps868_hlp or something like that”). Let us know if this still doesn’t get you going, lots of us have had issues like this before. Good Luck!

  36. Karl
    drat you beat me on the prboom – doom game.
    It surprised me just how well it handle doom. I just need to drop the shareware wad file in there.

    I have been using Alpine for mail. seems to work great.
    I have it tagged to my gmail account.
    xpdf works for pdf files, and feh works for jpg viewing.

    Theres a bunch of cool stuff coming down the pipe it looks like.
    Fluxbox is probably going to be replaced by dwm [lighter] and the updated keymaps an z2mousemu is great.

    I also run midnight commander [mc] as my file manager. very nice inside of a xterminal [no function keys without z2mouse yet]

    Bit by bit this thing is actually turning into a practical and fun portable system.

  37. For the hell of it I downloaded and ran wireshark in X. It ran and detected the network adapter just fine (after one hell of a long load time :P )

    It actually ran and captured traffic on the wireless but the gui was a bit unmanageable at that scale. I guess I will switch back to tshark and export to .csv files. We can always dump those for analysis later.

    Has anyone tried running kismet or the like so far? I suppose my interests are more for network analysis than games – I seem to have better luck there.

  38. What’s the sleep situation on this Debian image? i.e. does it automatically go into a suspend mode after some time of inactivity, or is there a sleep command I can issue to cause it to suspend until a button press? For now, I’ve been doing a full shutdown and reboot each time I put it away. :-)

  39. Well, I moved the wifi firmware from notlibertas to libertas and that seemed to work,. but now it takes forever to load anything. I type in startx and it takes at least 2 minutes to load now. any thoughts?

  40. Hey Paco,

    Glad the wifi is working. Check your dmesg log and see if there are errors happening during startx. Not sure why you would be experiencing slowdown… Do you have swap turned on? I.e. if you do a free does it show you as having swap space? Good LucK!

  41. After reading about the zipit on this site, I got mine at Target last week. After some frustration I got everything to work and am now happily running debian: thanks!

    Some software I tried and like:
    - netsurf, a light weight browser (turn off the status bar to make it usable).
    - matchbox. Start with “xinit matchbox-session”). The nice thing is that it will make sure no program is started with its window larger than the screen.

    Question: is the source available for the mouse emulators? I would like to tinker a bit :)

  42. Question about the battery and charging indicator. When it is on and I plug it in, I get a green LED. If it is plugged in and the system boots up the light stays off. Is there something out there that controls the light so it is amber when charging and green when done, or even something internal that gives us a reasonably accurate battery state that we can execute?

    Thanks for all the information and help.

  43. @Paco: X also starts slowly for me when I try to start it with no internet connection. (when I’m at work where we use WPA2 which I still haven’t gotten working on the Zipit) When I’m home the wireless connects, and startx yields me a super-speedy graphical system. I’m not sure why, but I think that may shed some light on why you’re having issues now that your wireless is working.

    I always wait until it gives me a bad hostname error, then Ctrl+C once or twice to skip past an error and start X more quickly.

    @Alex: I use “cat /proc/apm” which spits out a percentage level that I can roughly use to see my battery level. It seems to top out for me at 80%

    ——————————

    That aside, can someone tell me what the difference is between the 2gb and 1gb images aside from the obvious?

  44. Did I brick my ZipIt?

    Went to flash it this morning following the instructions. It didn’t go as per the video (I didn’t see the text telling me the unit was backing up the firmware).

    Now the unit boots with or without the SD card to the linux screen (I see the logo and a cursor over). The cursor blinks 4 to 6 times and then stays solid. No keys work and I have to use the pin hole on the side to turn it off. When I look at the SD card, I see only the files I added, not the original firmware.

    So, is it bricked?

    Max

  45. Hey Max,

    Nope. It may have not backed up the original firmware, but as you’re seeing the Linux logo you’re in the clear. It’s trying to load the kernel files and userland from the SD card, failing (I assume you haven’t written the userland to disk yet). You can DL the wifi firmware from the website linked above (or on SF) and the userpsace linked should work fine for you too. Good Luck!

  46. WHEW!

    You’re right, I haven’t written the userland yet)

    I’ll get back to hacking it tonight and will let you know how it goes.

    Thanks,
    Max

  47. Ok. Roaming around looking at stuff associated with this. This is the W8686 WiFi chip made by Marvell Technologies Group it seems. I haven’t been able to confirm, but seems likely. On http://www.marvell.com/ they have a driver that can be downloaded that is SD 8686 driver and I was wondering if that is the driver we are currently using or if that is something different. Has anybody else seen that?

  48. Laurens,

    Were you able to get matchbox working correctly? Each time I try to start with xinit matchbox-session it just goes back to the terminal.

  49. Hey Matt,

    Try this. Copy your /usr/bin/startx to /usr/bin/startmatch and replace the fluxbox line with xinit matchbox-session. Then you’ll know your display variables and mouse emulator are set to start, etc.

  50. Hunter,

    Do I need to make the change in /usr/bin/startmatch? I’m not exactly sure where I need to make it.

  51. Do I actually make the change in /usr/bin/startmatch? I’m not sure which fluxbox line you are referencing.

  52. Hey Matt,

    Yeah, in startmatch. I believe the line that starts fluxbox is the very last line in the config file.

  53. And you right-click in flux with the stop key.

  54. Sorry for being such a n00b, but I opened starmatch in vim and I still don’t see the line you are referring to. Do you know the line number?

  55. Hello Hunter and others,

    I’ve been working pretty much all day on trying to get the mouse working. I had it to the point of startx coming up and no mouse movement, even when using options button. I added an execution of “z2mouse-option” to the /usr/bin/startfluxbox script and now I am getting an error like the following when trying to run command “su root -c startx”:

    “waiting for X server to shut down FreeFontPath: FPE “/usr/share/fonts/X11/misc” refcount is 2, should be 1; fixing.”

    A flashing cursor then continues to taunt me until it yields a new error which says “xauth: (argv):1: bad display name: “OpenZipIt:0″ in “remove” command”

    Please help!
    Thanks in advance

  56. Hey HH,

    Hrm.. Does fluxbox start if you remove the line? Are you sure the z2mouse-option binary you downloaded from aliosa27′s site into /bin is the full file and has execute permissions set? My line reads /bin/z2mouse-option & in the last line. I haven’t seen that particular error myself, but the ubuntu or debian forums may have something on it. Good luck!

  57. I just wanted to say thanks to Hunter and aliosa27 for hacking this thing together. I think the SF bay area is all out of Zipits but I managed to buy the last one at Target in Missoula, Montana when I was visiting. I bought myself a 4GB microSDHC with mini adapter by Kingston and it worked like a charm, though I had to borrow a laptop to read it as mine apparently doesn’t support SDHC. A 4GB image would be nice but I pulled it off using an Ubuntu installation CD without installing. I would suggest adding wpasupplicant to the distribution as it was a little inconvenient to have to find an open wifi access point to get the package. Typing in the braces was a pain in the butt as well – I figured out that ctrl+alt+) created a normal } but ctrl+alt+( for { added some funky control characters that annoyed nano, so I used cat > filename and edited with nano.

    My current struggles are with tworld (Tile World, a Chip’s Challenge clone that uses SDL). When I tried to run it from the command line, the display turned into flickering garbage and I had to remove the battery. From X, I can’t get keyboard input to work when the level begins. Running it also seemed to take over the keyboard, again necessitating a battery removal. (Is there a control+alt+backspace equivalent to kill the X server?) Once I figure out these issues and replace the graphics as they are way too big, it should make a nice addition. Again, thanks for your hard work!

  58. Hi Martin,

    I agree, that’s a good idea to add wpasupplicant to the image. You can edit the keymap.map and replace the { command from ctrl-alt-) to ctrl-{ etc.

    The garbled graphics you’re seeing are what happens when a program attempts to change the fullscreen resolution above 320×240. I imagive sdl is attempting to start the framebuffer when you run it from console. Mplayer was doing the same thing.

    To my knowledge there is no command to send ctrl-alt-backspace set up in the keymap. That may work to reset the x server. I have been just having an extra ssh client open to the Z2 that can kill processes remotely.

    Let us know if you get tileworld going, that’ll be a fun addition. Good Luck!

  59. Hi Hunter,

    All works on my zipit, but I’m having an AV-Sync issue when trying to use it to play video.

    I’ve tried out a couple of setups. First I used the TVersity setup. I set that solution up to transcode the videos to work with an Mpeg1/2 player.

    Next I used ffmpeg to create a mpg file and I copied that to the SD card in the zipit.

    I then ran the mplayer app first from a console (no X running) and then from an x-term. Each time, I wrote directly to the framebuffer (-vo fbdev).

    The videos definitely play, but the audio is ahead of the video.

    Can you confirm you are getting good AV Sync in your implementation?

    The only difference I see is that I used the 1 GB impage and you used the 2 GB image. I set up ~300 Megs of swap space, using the mkswap command, on the second partition (linux 83 fs) on the SD card.

    Any help would be appreciated. My goal is to get the video working welll on the device.

    Mike

  60. Hey Mike,

    I am getting audio sync perfectly with tversity. After selecting mpeg1/2, I lower the maximum bitrate of the video stream quite a bit in the custom settings. I have not tried transcoding using mplayer, but I believe there was another comment on the previous thread who had gotten that working. Good Luck!

  61. Hunter,

    Where are you setting the max bitrate in TVersity? I’m new to that app, and I don’t see a parameter offered which will allow me to reduce the stream size passed to the z2 device.

    Mike

  62. Hey Mike,

    I haven’t found a way (other than editing the xml file) to change the rate of the mpeg stream alone, but you can change the max bitrate of any video stream in general. It’s under the global settings as “max video bitrate”. This seemed to work well for me. Good Luck!

  63. is there any way to move a full size window?

  64. If you can see the title bar, yeah with the mouse. Otherwise no, not to my knowledge. Good Luck!

  65. Hey Laurens, Yeah you can get the source for the mouse emu from Aliosa27′s site.

  66. Hi, and thanks for all the work.
    I was wondering, did you manage to set the scaling governor to ondemand?
    When I do that, it crashes either right away or within minutes.
    Also, did you try to play with the USB? Any luck?

  67. Hey Radu,

    it sounds like you may be running out of memory. How much swap do you have available? You may want to try starting directly up into SVM and skipping flux altogether. As for USB, well there’s serial out and I’ve seen a USB charger mod for the Z2, but haven’t done much of that work myself. The schematics are all posted up if you’re interested though, Good Luck!

  68. Oh, sorry, I meant this as a Z2 problem in general, not when running SVM or flux. My swap is quite big, over 200MB.
    Can you try:
    echo ondemand > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

    I am curious if it is a hardware issue on mine, or some kernel problem. I was reading some ICQ logs where someone was having similar issues when trying to change the cpu frequency.

  69. Hey Radu,

    Ahhh, i gotcha. I haven’t tried to set the cpu freq on the marvell, but I’m sure somebody here can help you test. My Z2s are all loaned out to students. Hopefully somebody can try this out for you, good luck!

  70. I think the problem happens when the cpu is scalled to 104 MHZ. That’s the min frequency, and when I set it as max frequency it worked a little then crashed. And I can reproduce it.

  71. Hey Radu,

    That’s a new one on me. Does the kernel log say anything before the crash? I am curious if it’s a kernel panic or if it’s a chipset issue? Quite an interesting find.

  72. I got no messages before the crash, both on screen or on the putty terminal.
    There is nothing in the logs either (I made sure the logs are no longer written in a tempfs.
    I don’t know if this is a hardware error or software.. I guess someone else should try to reproduce it.

  73. I did some more testing and it seems that when the frequency is lowered to 104mhz it crashes only when the disk i/o happens. So maybe an issue in the SD drivers?

  74. Radu,

    That’s quite interesting. Is it any disk i/o, or just swap? I imagine it could be cache rate variable or timer based on cpu frequency… Quite interesting indeed…

  75. I don’t think it’s the cache in particular, any disk access such as ls will cause the crash (and the disk activity light gets stuck on).
    Whenever I tried this, the system was very much idle, command line interface, nothing fancy loaded, and I even had some 4MB+ of free RAM.

  76. Hey Radu,

    Not what I expected at all! I had assumed the dram timings were being munged after clock scaling and a swap write freaked out the kernel. Fascinating. Sounds like an issue with the SD driver for sure, could be a poorly written timer or something based on core clock. Thanks for the updated info, quite a mystery!

  77. When i make Scummvm full screen it’s not vertically centered and a bit of the bottom is cut off. This actually happens whenever i full screen an app. How can i fix the vertical centering?

  78. Hey Leesam,

    This doesn’t happen to me, so there’s something different in our configurations. How are you making it fullscreen? Have you changed the resolution in your .scumvmrc to 320×240? Are you running it from within a window manager? Is your xorg.conf set to 240×320@90 resolution? I usually run it from within fluxbox, .scummvmrc with resolution at 320×240, standard xorg.conf from images above. Good Luck!

  79. I’m using the debian image from the tutorial for setting it up in windows. I haven’t changed my resolution specifically in scummvm but i had changed the scale to 1x in the config file. when it’s in windowed mode everything fits onscreen within fluxbox. when i launch with the -f option for full screen thats when it centers way down. My xorg.conf file has listed Modes “240×320″

  80. Oops posted above as Anonymous

  81. Hey Leesam,

    Accidentally anon happens to me all the time :) . That’s interesting that it only happens to you in full screen mode. I’ve defiantly had this working with Full Throttle and Sam and Max, so I’m curious why it would be happening to you.

    What I imagine is happening is that when you select full screen mode within scummvm, the render context is set as the framebuffer, which would return the geometry as 240×320@90. This would at minimum cause your screen to be rendered in a bad position. If this is happening, I would say either change the .scummvmrc to have the resolution be 240×320 and set rotated output to be 1x clockwise (is that possible?, I don’t have my zipit around to test). You may also be able to manually set the .scummvmrc resolution to 320×200 (is that the correct half vga render resolution for scumm games? I recall it may have been short on the Y axis…)

    Alternatively I would try using the flux window manager fullscreen function. I believe it just maximizes the window without borders to the screen viewport. I’ve got this working in icewm and I imagine it’d work well for flux too.

    Good Luck!

  82. Thanks! I’ll take a look into all this when i’ve got a chance and post back results.

  83. Some random questions about Debian on the Z2, if someone doesn’t mind taking time to answer. :-) (and thanks!)

    (1) What happens when you close the clam-shell, will it suspend?
    (2) How’s actually typing on the machine? The Z1s were very stiff and difficult to use for long periods of time.
    (3) How long does a unit typically take to boot?

    What I’m really hoping for is a portable “word processor” that I can pull own and write notes quickly (in nano, or whatever)….

    Thanks, everyone!

  84. Hey Jeffrey,

    1. No, not by default. Screen will blank after timeout.
    2. Typing is better than Z1, but can still be a pain. keyboard driver in kernel is used to prevent repeat keys (was a problem)
    3. About 60-90 seconds, depending on what you’re booting and what kind of SD you’re booting from. Have not messed with sleep mode

    Good Luck!

  85. I’ve been trying to follow along and play some games like you guys but I seem to always run into issues like screen rotation, screen scaling, etc.

    Are you passing any command line args to address this or are there some master settings somewhere?

    I’ve tried to play games with fceu and also uqm. Sounds like people are having some success but me :(

    Any thoughts to what I’m missing?

    Thanks.

  86. Hey Jeremy,

    Are you running the emulators from within a window manager like fluxbox? If you’re running from command line, you’re going to need to pass a rotate option on the CL. If you’re running from a window manager though, the screen has already been rotated (set in the xorg.conf file), so the emulator won’t need any special rotate options passed in. Hope this help, good luck!

  87. For the battery the apm(1) command is useful, however values are weird ie. full charge can be 80% today, 90% tomorrow, and it has depleted at 60% for me one time and at 5% other times, while I’ve managed to plugged it at 1% once… so there are some strange behaviours.

    As a tip. from what I’ve seen, most times the first value read after a reboot is waay off.

    I’ve made some kernel hacking before, so I’m wondering, the oe tree in the SF svn correspond to the 2.6.29 kernel binary published in aliosa’s zipit2-audio+x+mouse.gz? I’d like to start hacking it from that sine it’s a known work source.

  88. Hey Des,

    Thanks for the tip. I usually have my z2 plugged into the wall for the past year or so, so It’ll be interesting to see if my battery profile matches yours.

    Yes, that is the same kernel source used to build aliosa’s binary. The next kernel 2.6.31 requires modification to the bootloader to work. Hope that helps in your hacking, good luck!

  89. I didn’t have a chance to try again until today. ScummVM hangs as soon as i get to an interactive portion of Beneath a steel sky or the secret of monkey island.

    I had been trying to launch fullscreen because it seems to not hang. The problem is when its launched fullscreen it is far off center.

    The intro to Monkey island is nice and smooth if i run it maximized in fluxbox but it hangs on the title text “The Three Trials”.

    I dont know if this has any bearing but i havent setup the sound yet. I haven’t cared about that so much but i dont think it would have any effect on whether a game freezes when not in fullscreen.

  90. Hey Leesam,

    Not sure why scummvm is hanging for you. Do you have the mouse emulator running before you start up scummvm? Are you using the z2mouse-option version? It could be a memory error, do you have swap enabled and how much? Do you have any ssh or terminal sessions running in the background? Are you using a debian image or your own custom image? The debian image should have audio setup by default, you’ll just need to use alsamixer to change the volume to high (far right many pages over). Hope this helps, good luck!

  91. I’m using the regular debian image mentioned in the guide. I tried a few different versions of monkey island and found one that worked!

    Haven’t found a good one for beneath a steel sky yet but at least somethings working.

    Using regular z2mouseemu, have the same amount of swap from the guide, nothing running in the background i always try on a fresh reboot.

    Looking through alsa mixer, everything seems to be ok. Going to try getting some sound out of it as soon as i get it recharged.

    Thanks!

  92. Hey Leesam,

    Glad to hear it’s working. I wonder if it is the size of the rom that dictates if it will work, or some other factor. Should be fun, good luck!

  93. Hunter Davis!
    I need help, I dont know whats wrong. I have the debian image installed.
    Whenever I try to use ANYTHING except mplayer with sound I get a kernel panic!.

    gngb, vba…etc

    WARNING: at arch/arm/mach-pxa/clock.c:45 clk_disable+0×68/0×70()
    Modules linked in: libertas_spi snd_soc_z2 snd_soc_wm8750 snd_soc_pxa2xx_i2s snd_soc_pxa2xx snd_pxa2xx_lib snd_soc_core snd_pcm_oss snd_pcm snd_mixer_oss snd_timer snd_page_alloc snd soundcore i2c_algo_bit uinput libertas lib80211 pxa27x_udc evdev [last unloaded: libertas_spi]
    [] (dump_stack+0×0/0×14) from [] (warn_slowpath+0×68/0x9c)
    [] (warn_slowpath+0×0/0x9c) from [] (clk_disable+0×68/0×70)
    r3:00000000 r2:00000000
    r7:bf0e0128 r6:bf0cdea8 r5:c1d03480 r4:c03447d0
    [] (clk_disable+0×0/0×70) from [] (pxa2xx_i2s_shutdown+0×84/0xb8 [snd_soc_pxa2xx_i2s])
    r5:c1d03480 r4:bf0ce130
    [] (pxa2xx_i2s_shutdown+0×0/0xb8 [snd_soc_pxa2xx_i2s]) from [] (soc_codec_close+0xac/0x1bc [snd_soc_core])
    r4:bf0d8d30
    [] (soc_codec_close+0×0/0x1bc [snd_soc_core]) from [] (snd_pcm_release_substream+0×64/0×98 [snd_pcm])
    [] (snd_pcm_release_substream+0×0/0×98 [snd_pcm]) from [] (snd_pcm_release+0×34/0×78 [snd_pcm])
    r4:c1d03480
    [] (snd_pcm_release+0×0/0×78 [snd_pcm]) from [] (__fput+0xc4/0x1c4)
    r8:c1fb0e00 r7:00000006 r6:00000008 r5:00000000 r4:c1f384a0
    [] (__fput+0×0/0x1c4) from [] (fput+0×34/0×38)
    [] (fput+0×0/0×38) from [] (filp_close+0×64/0×88)
    [] (filp_close+0×0/0×88) from [] (sys_close+0xa4/0xd0)
    r6:c1f384a0 r5:c1c9ae40 r4:00000006
    [] (sys_close+0×0/0xd0) from [] (ret_fast_syscall+0×0/0x2c)
    r6:002e1848 r5:002e1948 r4:002e1848
    —[ end trace fe459a179abd0f9b ]—
    ————[ cut here ]————
    WARNING: at arch/arm/mach-pxa/clock.c:45 clk_disable+0×68/0×70()
    Modules linked in: libertas_spi snd_soc_z2 snd_soc_wm8750 snd_soc_pxa2xx_i2s snd_soc_pxa2xx snd_pxa2xx_lib snd_soc_core snd_pcm_oss snd_pcm snd_mixer_oss snd_timer snd_page_alloc snd soundcore i2c_algo_bit uinput libertas lib80211 pxa27x_udc evdev [last unloaded: libertas_spi]
    [] (dump_stack+0×0/0×14) from [] (warn_slowpath+0×68/0x9c)
    [] (warn_slowpath+0×0/0x9c) from [] (clk_disable+0×68/0×70)
    r3:00000000 r2:00000000
    r7:bf0e0128 r6:bf0cdea8 r5:c1d03480 r4:c03447d0
    [] (clk_disable+0×0/0×70) from [] (pxa2xx_i2s_shutdown+0×84/0xb8 [snd_soc_pxa2xx_i2s])
    r5:c1d03480 r4:bf0ce130
    [] (pxa2xx_i2s_shutdown+0×0/0xb8 [snd_soc_pxa2xx_i2s]) from [] (soc_codec_close+0xac/0x1bc [snd_soc_core])
    r4:bf0d8d30
    [] (soc_codec_close+0×0/0x1bc [snd_soc_core]) from [] (snd_pcm_release_substream+0×64/0×98 [snd_pcm])
    [] (snd_pcm_release_substream+0×0/0×98 [snd_pcm]) from [] (snd_pcm_release+0×34/0×78 [snd_pcm])
    r4:c1d03480
    [] (snd_pcm_release+0×0/0×78 [snd_pcm]) from [] (__fput+0xc4/0x1c4)
    r8:c1fb0e00 r7:00000018 r6:00000008 r5:00000000 r4:c1f38320
    [] (__fput+0×0/0x1c4) from [] (fput+0×34/0×38)
    [] (fput+0×0/0×38) from [] (filp_close+0×64/0×88)
    [] (filp_close+0×0/0×88) from [] (put_files_struct+0xc0/0xe4)
    r6:c1fffa60 r5:00000001 r4:00000000
    [] (put_files_struct+0×0/0xe4) from [] (exit_files+0×28/0x2c)
    [] (exit_files+0×0/0x2c) from [] (do_exit+0x5b4/0×770)
    [] (do_exit+0×0/0×770) from [] (do_group_exit+0×44/0xc4)
    [] (do_group_exit+0×0/0xc4) from [] (get_signal_to_deliver+0×198/0×338)
    r4:c1a24000
    [] (get_signal_to_deliver+0×0/0×338) from [] (do_signal+0×58/0x4dc)
    [] (do_signal+0×0/0x4dc) from [] (do_notify_resume+0x2c/0×30)
    [] (do_notify_resume+0×0/0×30) from [] (work_pending+0x1c/0×20)
    —[ end trace fe459a179abd0f9c ]—

  94. Hey Soundguy,

    That’s a new one on me. Do you have swap enabled? Are you running these programs as root, or as a user? Are you running from fluxbox or console? Not sure what’s the deal, hopefully we can narrow it down. GL

  95. Hunter, I ran as a regular user, and root. Console, and X. Swap is enabled. It seems like it happens when something tries to access oss.

    When I do mplayer -ao oss it works once, then I do it a second time and the program freezes and I get that kernel panic.

    Im using the debian 2gb image.

  96. Hey Soundguy,

    Hrmm. I know that alsa is working well. Could be the oss driver is buggy, or may need some registers toggled or something. Haven’t seen this before myself. If you do an lspci | grep Audio does anything come up? Could be a lot of things hrm…. Could be the way libertas driver interacts with the oss driver. Has anyone else run into this issue?

  97. # lspci
    pcilib: Cannot open /proc/bus/pci
    lspci: Cannot find any working access method.

  98. im going to redo the userland and try the downloadable libertas firmware.
    i even tried upgrading to sid/squeeze on it over the night

  99. Hey soundguy,

    almost sounds like a permissions issue yea.. Would be interested to hear how your upgrade to squeeze went. Good Luck!

  100. Hunter, squeeze appeared to be working well, I removed it and started from scratch… I got the same error again, with a freedma message…This time i tried to use mpg123…

    I have also built a very cool ui setup, and some scripts to connect to wireless. I just need to figure out this sound issue…

    What do you think the permissions issues could be?

    pxa_free_dma: trying to free channel 0 which is already freed
    pxa_free_dma: trying to free channel 0 which is already freed
    pxa_free_dma: trying to free channel 0 which is already freed

  101. hey soundguy,

    Not sure what’s going on here. Could be alsa has a handle to the device, and isn’t playing nice with oss? What processes are running? Anything funny in the dmesg log? This is a new one on me…. Would be interested to see your UI setup, planning on a release?

  102. Hunter, Is there a recent kernel I can flash, with directions on how to do it on a system that does not have the original firmware? I am thinking maybe this could be an issue?!

  103. Actually, I was planning on releasing it… Ill take screenshots of it. Its almost windows user friendly at this point.

    As for dmesg, I dont see anything too out of the ordinary

    I do see No device for DAI WM8750 then below that it shows WM8750 Audio Codec…

    I moved the libertas firmware folder temporarily to see if that might be the cause but no luck. it still did it.

    I even installed mpg123-alsa

  104. soundguy,

    what kernel are you running? Does mpg123-alsa not work?

  105. Linux OpenZipIt 2.6.29 #1 Sat Sep 12 13:15:44 CDT 2009 armv5tel GNU/Linux

    mpg123-alsa causes the error, everything except mplayer does.

    $ lsmod | grep snd
    snd_soc_z2 4748 0
    snd_soc_wm8750 21876 1 snd_soc_z2
    snd_soc_pxa2xx_i2s 4404 1 snd_soc_z2
    snd_soc_pxa2xx 2480 1 snd_soc_z2
    snd_pxa2xx_lib 4780 1 snd_soc_pxa2xx
    snd_soc_core 39240 4 snd_soc_z2,snd_soc_wm8750,snd_soc_pxa2xx_i2s,snd_soc_pxa2xx
    snd_pcm_oss 39696 0
    snd_pcm 68241 4 snd_soc_pxa2xx,snd_pxa2xx_lib,snd_soc_core,snd_pcm_oss
    snd_mixer_oss 15056 1 snd_pcm_oss
    snd_timer 19952 1 snd_pcm
    snd_page_alloc 6560 1 snd_pcm
    snd 47932 7 snd_soc_z2,snd_soc_wm8750,snd_soc_core,snd_pcm_oss,snd_pcm,snd_mixer_oss,snd_timer
    soundcore 6064 1 snd

  106. hey soundguy,

    Do you have volume in scummvm?

  107. No I do not. Upon opening it I got the kernel panic.

  108. Ok this is odd. Alsa appears to be broken. I tried mpg123 -o oss file.mp3 and it played…. So right now I am doing dpkg-reconfigure linux-sound-base and select oss… and I am going to install libsdl1.2debian-oss

    Ill keep you posted on the status

  109. Hunter; Problem solved.

    The debian image comes configured with alsa… And alsa doesnt work

    I did as I stated in the above posting and also made a .asoundrc

    pcm.card0 {
    type hw
    card 0
    }
    ctl.card0 {
    type hw
    card 0
    }

    So heres what I have so far.

    Full X Interface with a Desktop, File Manager, Browser (fully working and configured as mobile web browser), GameBoy Emulator, and mp3 player.

    Gameboy is full screen correct aspect ratio with 95% full speed inside of xorg

  110. Hunter, I have the userland somewhat ready. Its so easy to use anyone who has used a computer once in their life can take full advantage of the Z2.

    It might peak some interest in other users developing for it.

    Is there somewhere specific you would like me to post it around here?

    Im thinking of uploading to rapidshare or a similar site.

  111. Ill do it here. Im not familiar with posting to SF; How can I do it on the SF site? I would need to create an account? Or is there a way to post it to the current developer site on SF for openzipit?

    • Hey soundguy,

      Yeah, I think you should be able to post up to the SF page with just a regular SF login. The admins for the openzipit sourceforge page should also be able to grant you post access if not.

  112. Hunter. I posted some screen-shots.
    I’m cleaning up the user-land a little bit and taking out some rough edges and unused software. So just a few more days ;)

    Its designed with an average user in mind who wants to accomplish some sort of regular every day tasks.

    I would like to find info on the battery status and maybe locate a battery monitor of some kind.

    Also is there a feature such as s2disk for ARM?

    Boots to xorg.
    Has a failsafe mode if xorg breaks.
    Currently uses ext3 (looking into switching to jffs; don’t know if its possible yet)
    Has a complete file manager.
    Media Player.
    Instant Messenger (will either be finch or pidgin)
    Document editor
    Calculator
    FTP Server/Telnet server via inetd.
    Web Browser using mobile browsing modifications with SSL(links2)
    Shortcut key(s) to task manager.
    Wifi Connection scripts G/CUI.
    This release will use Lenny, the later release should be with Sid/Squeeze

    Since a lot of this is hacked together the code name I’m giving this release is:
    scratch

    Check out the screen-shots if you want;

    http://zipit.rootnexus.org/

  113. Hey soundguy,

    Looking good! I am digging the screenshots. I think people would definitely be interested in this. You can get the battery status from /proc/apm, although you’ll need to scale it as the range appears to be from 40 to 80% when unplugged instead of 0 to 100%. I have head of s2disk working on the Zaurus, so I don’t think there’d be any problem using it on the Z2, provided the apm support is in there already. I think there’s been some discussion on this previously. Hope it works out well, good luck !!

  114. Hunter, You’re right. Im testing and polling the /proc/apm with:
    $ while true ; do cat /proc/apm; sleep 1;clear ; done

    Its not very accurate, its started at 90%
    dropped to 80% within 3 minutes.
    And it showed 6% once. between the time period and jumps back to 90% then to 80%

    Im a little bit afraid to poll it with any type of script that produces an action. But it appears to settle within about 5 minutes.

    For now I am going to make a script to read /proc/apm and awk out the #%. Once it drops to 50 or below Ill have it spit a warning with xmessage that the battery is low and to power down to avoid data loss. I guess I could set it to ignore if its above 80.. I really wanted to use s2disk to halt it at 5% remaining.

    My other thought is to halt it when it gets below 5% and just display a warning that it will shut down. At least it will happen cleanly until s2disk works.

    Do you know what the 1.13 and 1.2 numbers stand for?
    1.13 1.2 0×02 0×00 0×00 0×00 81% -1 min

    Also do you know anything about forcefully switching these 2 modes?

    Run Mode clock: 208.00MHz (*16)
    Turbo Mode clock: 312.00MHz (*1.5, active)

    • Hey soundguy,

      Yeah, you might want to change your script to average the deviation from the previous poll number. We can at least pretend the Z2 has a linear discharge profile :) Don’t know what all the numbers from /proc/apm mean, I know 2 of the rightmost registers are for powered and charging status. As for switching the CPU scaling frequency, you can do that from a script. Somebody was having issues with dynamically scaling in one of the other comments threads here on the site, probably can get the command structure etc from that discussion. Good luck!

  115. Hunter, I wrote a shell script to call a shutdown when the battery gets low, as well as provide warnings with xmessage. Im testing it out now…

    I think It can be executed from a .xinitrc without any problems.

    http://zipit.rootnexus.org/files/battery-daemon.txt

  116. FCE Ultra NES EMULATOR:
    So, I got this working very well, How can I get it full screen? I cant seem to stretch it to the size of a terminal window and full screen passes an error.

  117. I’m loving those screenshots, soundguy. I’ve been trying to set up a decent gui with the debian image. Currently I have openbox running with lxpanel from LXDE. It seems to run fairly well. There are some screenshots posted at my site if you want to take a look. Can’t wait to try out your image soundguy. Let us know when/where it can be downloaded.

  118. Hunter,mozzwald: I created a copy of the image.
    Its a little rough right now. But it shows what im trying to accomplish.

    http://zipit.rootnexus.org/files/Z2-USERLAND/SCRATCH/REVA01-PRE/

    You are welcome to try it out and give any feedback.

    Mozzwald: Im going to use your script which calls xmessage in it. I really liked that idea. I think I can incorporate it into my netconfig script.

    Check this example out. Its a little simpler. I borrowed it from a Linux forum.

    #!/bin/sh
    XMESSAGE=$(which gxmessage) || XMESSAGE=xmessage

    $XMESSAGE ” Logout Selections ” -center -buttons “Cancel”:1,”Reboot”:2,”Shutdown”:3,”Exit X”:4
    case $? in
    1) exit 0 ;;
    2) reboot ;;
    3) halt ;;
    4) killall matchbox-window-manager ;;
    esac

  119. oh. and pull as much bandwidth as you like. apparently from what i read, i pay for unlimited bandwidth and disk space.

    http://zipit.rootnexus.org/files/Z2-USERLAND/SCRATCH/REVA01-PRE/

  120. Hey very nice blog!!….I’m an instant fan, I have bookmarked you and I’ll be checking back on a regular….See ya

  121. Does anyone know if there is a way to change the screen size when playing gbc games. I’m using gngb and it’s only using about 1/3 or the screen. I’ve messed with the options a bit(res=), but it didn’t do anything.
    Thanks,

    Chris

  122. Hello,
    Okay, gngb -Y –rex=320×240 did it for me.
    Thanks,

  123. would their be anyway to get the zipit to run windows 98 with working wifi i know it seems like alot but it has the power to run it

  124. Zonemad96,

    Seems highly unlikely. You could try running it in dosbox, however the wifi drivers would not be supported.


Leave a comment

(required)