OK. As promised -
Before I describe how I have Bochs running DOS on my C860, you need to be aware of a major, but easily avoidable, hazard.
Bochs is not aware of the event if DOS crashes or terminates. So you do not return to Bochs itself where you could exit gracefully to the bash prompt. Even if you close the terminal, each Bochs session will still be running and using resources blind in the background. PS does not show these sessions. You need to use "PS x" to see their pids.
When I first started working with Bochs, I had several running copies go orphaned in background and the performnce of my C860 began to dramatically drop. I had just opened WhatsUpOnZ to check for & kill any such processes, when my memory bar in the applet tray went abruptly to bright red (the first & only time that I have seen it do so), and my C860 immediately locked up entirely. No responce to ANY keys or stylus.
After pulling the battery several times & a long wait on the final pull, the system booted normally and seemed to be running OK, For all of about 30 seconds, at which point it hard locked again. Each time that I could coax it to reboot, the system would run for some varriable but relatively short period of time and then freeze.
It appears that the sudden low memory condition, caused by multiple rogue copies of Bochs (perhaps 2 or 3 at most), corrupted some system file(s) needed at some point shortly after bootup. I didn't have the luxury time to try to figure out exactly which files were bunged but I had done an NAND backup not long before the crash. So I restored from NAND. And proceeded again with a LOT more caution.
Do NOT allow background sessions of Bochs to build up! After each DOS crash or termination, open another terminal and run "ps x" to get the pid of the Bochs process. Then "kill -kill (pid)" to terminate the session! This is essential. Otherwise you may have a semi-brick! And it wouldn't hurt to do an NAND back up frequently when working with the program.
OK - you have been warned.
This has been tested on C860s with standard Sharp ROM v1.20 & 1.31 with no obvious differences.
First link to:
and download Bochs 1.4.1 from:
Note that the author says:
" I have misplaced my zaurus and I will not be maintaining the software on this page."
"Bochs x86 emulator. Compiled to use the console, but there's an X option which I didn't use because i'm not running X on my zaurus at the moment. I tested it with freedos, and input was extremely slow. Also, I had to reduce the amount of memory in the bochs settings to keep it from running out of memory and crashing. Still, I think it's really cool that it works at all. There are some demo packages for it here."
("here" is http://bochs.sourceforge.net/diskimages.html)
The IPK is a TAR-GZ type and installed without problems on my C860s. It includeds the two depends lib files. Before you can run Bochs, you need an image of a bootable disk or diskette for the OS you intend to run.
The only DOS at the link to images on Sourceforge is a FreeDOS version which runs VERY slowly under Bochs and crashes frequently for no obvious reason. This was what i was working with when I locked up my C860. I was sufficiently frustrated such that I decided to try making a boot image of PC DOS v7 instead.
Several programs that claimed to write and access these raw sector IMG files produced ones that Bochs could not use. I was finally able to make a Bochs acceptable 1.44Mb FDD IMG using RawWrite for windows version 0.5 by John Newbigin, that I found on a Red Hat distro CD in my stash.
I made a PC DOS v7 bootable 1.44Mb floppy img & a blank 1.44Mb "B:" img using RawWriteW then made a 4Mb "C:" img and a 10Mb "D:" img using the "bxutility" program included with Bochs. The "bxutility" program is simple to use and well documented.
Make sure that your bootable floppy has FDISK, SYS, FORMAT, XCOPY and so forth before you img it.
This is my file layout
/home/QtPalmtop/bochs/1.4.1 ...... files installed by Bochs
/home/QtPalmtop/bochs/bin ........ img files
/home/QtPalmtop/bochs/latest ..... sym linked by install to 1.4.1
My "bochsrc" config file is:
# configuration file generated by Bochs
romimage: file=/home/QtPalmtop/bochs/1.4.1/BIOS-bochs-latest, address=0xf0000
floppya: 1_44=/home/QtPalmtop/bochs/bin/a.img, status=inserted
floppyb: 1_44=/home/QtPalmtop/bochs/bin/b.img, status=inserted
diskc: file=/home/QtPalmtop/bochs/bin/4MbC.img, cyl=121, heads=4, spt=17
diskd: file=/home/QtPalmtop/bochs/bin/10MbD.img, cyl=306, heads=4, spt=17
# no parport #1
# no sb16
# no ne2k
# no loader
keyboard_mapping: enabled=0, map=
To start, change the "boot c" line to "boot a", boot the floppy image, Format C: with the /S option. Copy whatever files that you want. Then switch to your 2nd terminal and "ps x" - "kill -kill (pid)" to terminate the Bochs session.
Now change the boot line back to "boot c" and restart Bochs. You should have DOS from "hd C:".
DOS in a Bochs runs signifiantly faster under opie-embeddedkonsole 220.127.116.11 than it does under qkonsole 0.9.3-20040205. Plus Konsole uses less memory than Qkonsole & Konsole shows the "" char instead of the yen char. Attempto at running in qkonsole "with magnified screen" (ie: in portrait with the keyboard acessable) were excruciatingly slow and had repeated hangs and crashes.
OK. enough for one over long post. I have some more notes that I'll contribute later, but this should be enough to let folks dupliate the process safely.
Some screen shot PHGs are attached in a ZIP to show what you should expect to see.