Zaurus E-UAE


E-UAE 0.8.27

28-Aug-10

E-UAE-0.8.27 runs a bit faster than the rather-overloaded 0.8.29-WIP4 version, below. You can find that binary on the utils page.

13-Jul-09

I've compiled E-UAE 0.8.29-WIP4 for the SL-C860 Zaurus with Angstrom 2007.12. Other machines may also be compatible. Here's the binary (filesize = 2770806 bytes and MD5SUM = 681d1ec379c8160752cea6bb11fdf887). It was rather difficult to compile, due to the inflexible Configure script. You need to provide your own Kickstart ROM and disk images, and a suitable .uaerc configuration file.

Note, this program is completely unaccelerated and runs quite slowly (for example, F/A-18 Interceptor runs at 2fps). I am attempting to get Notaz' Cyclone 68000 emulator working with it - I'll post more news if I succeed. Another problem is the mouse pointer: it doesn't work with the Zaurus touchscreen at all, and I needed to use x2x to control it. Here are some screen shots of the F/A-18 Interceptor demo, and some of the emulator control screen.

There are quite a few library dependencies, as shown here:

lex@zaurus:~/uae/e-uae/e-uae-0.8.29-WIP4$ ldd ./uae-current
        libgdk-x11-2.0.so.0 => /usr/lib/libgdk-x11-2.0.so.0 (0x40023000)
        libpthread.so.0 => /lib/libpthread.so.0 (0x4009e000)
        libgtk-x11-2.0.so.0 => /usr/lib/libgtk-x11-2.0.so.0 (0x400bb000)
        libz.so.1 => /usr/lib/libz.so.1 (0x403e2000)
        libdl.so.2 => /lib/libdl.so.2 (0x403fa000)
        libXext.so.6 => /usr/lib/libXext.so.6 (0x40405000)
        libX11.so.6 => /usr/lib/libX11.so.6 (0x4041b000)
        libm.so.6 => /lib/libm.so.6 (0x40502000)
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x405a4000)
        libc.so.6 => /lib/libc.so.6 (0x405b6000)
        libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0x406ba000)
        libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0x406e6000)
        libpangocairo-1.0.so.0 => /usr/lib/libpangocairo-1.0.so.0 (0x40782000)
        libpango-1.0.so.0 => /usr/lib/libpango-1.0.so.0 (0x40792000)
        libcairo.so.2 => /usr/lib/libcairo.so.2 (0x407ce000)
        libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0x40837000)
        libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0x40841000)
        libXrender.so.1 => /usr/lib/libXrender.so.1 (0x40871000)
        libXinerama.so.1 => /usr/lib/libXinerama.so.1 (0x40881000)
        libXrandr.so.2 => /usr/lib/libXrandr.so.2 (0x4088b000)
        libXcursor.so.1 => /usr/lib/libXcursor.so.1 (0x40899000)
        libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0x408aa000)
        libgdk_pixbuf-2.0.so.0 => /usr/lib/libgdk_pixbuf-2.0.so.0 (0x408b6000)
        /lib/ld-linux.so.3 (0x40000000)   
        libatk-1.0.so.0 => /usr/lib/libatk-1.0.so.0 (0x408d4000)
        libgcrypt.so.11 => /usr/lib/libgcrypt.so.11 (0x408f6000)
        libXau.so.6 => /usr/lib/libXau.so.6 (0x40940000)
        libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x4094b000)
        libpangoft2-1.0.so.0 => /usr/lib/libpangoft2-1.0.so.0 (0x40957000)
        libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x40980000)
        libpng12.so.0 => /usr/lib/libpng12.so.0 (0x409ec000)
        libexpat.so.1 => /usr/lib/libexpat.so.1 (0x40a13000)
        libgpg-error.so.0 => /usr/lib/libgpg-error.so.0 (0x40a38000)
        libnsl.so.1 => /lib/libnsl.so.1 (0x40a43000)

Old news

Eh? That's an oxymoron, innit? 'Old news'?

This is a port of E-UAE 0.8.27 to the Sharp Zaurus. It's far from finished and is a little tricky to use - mainly due to the Zaurus not having a mouse (the problem is the amount of buttons). I compiled it with the pdaXrom SDK and ran it on Kathrin rc 1.10.

I've also been able to run the same binary on the hx4700 IPAQ, which was running hx4700 Linux. I have run it on the Nokia 770 Internet Tablet as well: as usual, it needed a few extra libraries - those being libiconv and libXrandr.

Issues: you'll probably need to symlink libexpat.so.1 -> libexpat.so.0 - here's how I did that:

cd ~/
mkdir lib
cd lib
ln -s /usr/lib/libexpat.so.0.5.0 libexpat.so.1
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$PWD"
I didn't want to permanently add a symlink so I made this temporary. I than ran UAE normally, having copied the binary to ~/tmp (temporary directory for stuff):
cd tmp
./uae
I ran UAE by logging in over the network because the rc1.10 of pdaXrom has an incomplete X keymap (or something like that). I used x2x to interact with UAE's control panel. UAE ran the Commodore Dealer Demo very well, but I had to adjust the frame rate and then found that it was stuck at '0' in the GUI - so there are still a few problems - possibly connected to the sysconfig.h definitions that I guessed at while compiling (the configure script got it totally wrong).

You may need to add write permissions to the sound device for the sound to initialise, as pdaXrom normally runs X as root and I don't like doing that.

chown $USER /dev/sound/*

Links:

Mark Hart's UAE page
E-UAE's home page

Contact me at BROOKNET at IMAP dot CC (please un-spam-protect that) if you want to talk about this stuff, or just leave a message on the blog.