# HOWTO: # I've put hashes at the start of the line, so you could practically execute # This file and expect it to work to a degree. # bring up a terminal and from within /home/user (the default): wget http://a.trap.me.uk/qemu-i386 chmod 755 ./qemu-i386 # test it works ./qemu-i386 # If this seems to output directions for use, this is working. sudo gainroot mount -t binfmt_misc none /proc/sys/fs/binfmt_misc echo ':i386:M::\x7fELF\x01\x00\x00\x00\x00\x00\x00\x00\ x00\x00\x00\x00\x02\x00\x03:\xff\xff\xff\xff\xff\x fe\xfe\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfb\xff \xff:/home/user/qemu-i386:' >/proc/sys/fs/binfmt_misc/register # Your phone can now execute arbitrary statically linked x86 binaries # or with some effort, (./ld-linux.so.2 --library-path `pwd` ./filename) # any x86 linux binary. # Set up the chroot with wine... # I tarred up /etc /usr/lib /usr/X11/lib /usr/X11/bin /usr/bin /lib /bin /sbin # from (it turns out) an old slackware 10.2 install that had had wine # installed at some point in the past, ~version 0.9.14. # extract the chroot in to /chroot (or wherever you want that has space) # ... actually DON'T use rootfs space, but I'll use /chroot for ease of # writing this. # as root cd /chroot mkdir -p proc dev tmp/.X11-unix chmod 777 tmp && chmod +t tmp # I can't remember the octal for sticky in one go # copy the phone's /dev, something like: tar cf blah.tar /dev && tar xf blah.tar # by default tar strips the leading / so this probably works. mount -o bind /tmp/.X11-unix tmp/.X11-unix mount -t proc none proc mount -t devpts dev/pts vi etc/mtab etc/passwd # ... edit to suit your needs. mtab should be small with mainly just / # referenced, in passwd put a user:29999 account # TEST full x86 chroot!!! chroot /chroot # You should see: bash-2.0# Or similar, and stuff like ls should work! su - user export DISPLAY=:0 /usr/X11/bin/xterm # Oh I needed a symblink for X11 to X11R6 too, I also think I edited # /etc/ld.so.conf to contain X libs, also I lack terminal definition files # from that list of directories so I can't do some curses stuff. # After your success running xterm as x86, which itself fork()ed bash # again and showed a pretty impressive speed, you're 95% of the way # there. # Copy existing known .wine/ hierarchy ??? I think I happened to have # one in /home/damion from where I nabbed the x86 chroot stuff. # Then... wine-pthread ./sol.exe # Obviously you'll need sol.exe from XP or something and obviously you # can use whatever wine stuff you need, not just sol You need # wine-pthread, wine on its own segvs for me. I used to run wineserver # 1st, but wine-pthread can successfully fork wineserver within this # chroot without issue for me. # Profit.