ftp://ftp.plex86.org/pub/plex86/plex86-2000_0722b.tar.gz
ftp://ftp.plex86.org/pub/plex86/linux.img
ftp://ftp.plex86.org/pub/plex86/initrd.img
OK, for anyone interested in progress so far. I'm getting part way through
booting
Linux. Should get to a HLT instruction with IF=0. Probably a panic. Not
suprising
since there's some things I know I'm not implementing yet, like updating
the A&D bits of page tables and the page dir. Linux does try to read a page
table; I just let the read slip through without updating the bits yet. :^O
Also, sounds like our email list and CVS root names will be changed soon to
plex86.
I'm working on cleaning some things up like the timer code. That plus
any feedback from you on probs running plex86, and then I'd like to
load the new code into the CVS tree. Also, we should wait on any CVS updates
unil Eelco changes the cvs root.
-Kevin
>From the ChangeLog:
- "Kevin P. Lawton" <[EMAIL PROTECTED]>: Sat Jul 22 12:26:15 EDT 2000
Added all the remaining devices from bochs to plex86: CDROM,
CMOS, floppy, ...
Moved x86 instruction emulation code to kernel/emulation.
Corresponding header info was moved to kernel/include/emulation.h.
Emulation files are compile with -DEMULATION; emulation.h
exports only a few features to the monitor without this defined.
Linux as a guest partially boots. You will need 'initrd.img' and
'linux.img' if you want to play with this. These are the initial
ramdisk and kernel image files. Should panic with a HLT with IF==0.
The VGA text framebuffer at the time of panic is dumped to the
system log. Grab these files from the ftp site.
Fixed some bugs.
Added extra options to plex86.conf and code to be able to load
Linux into memory and set up the environment as it were loaded by
a real boot-loader.
Rehashed the way time events are delivered. This is unfinished.
Eventually there will be both a wall-clock time reference for
things like GUI updates, and a VM time reference. Will fix this.
VGA updates will be slow for now. Don't worry about this for now.
Added a macro ANAL_CHECKS to config.h.in. By default it's on. Some
extra safety checks are made or debugging purposes.
There is now a bios directory. This will ultimately contain the sytem
ROM BIOS. For now, it's a null BIOS. I changed the way the kernel
image loading was hooked with the BIOS. It is independent now.
VGA IO event replaying behaves like it did previously. Events are
read from a file.
Implemented a setjmp/longjmp for use with guest excepion handling.
In the file kernel/include/vmsetjmp.h, you can also use the gcc
builtin ones as well. These calls are bracketed with CLI/STI
instructions because I was debugging stuff, and I just realized
now that I left them in there.
Need to move 'user/plugins/bios' to something more suitable like
'user/plugins/load-kernel'.
Other stuff that I forgot about. Also, there might be some legacy
debug stuff in there that I forgot about.