- entered original Bochs snapshot bochs-2000_0325a.tar.gz from
  ftp.bochs.com
- update copyright dates to 2001 for all mandrake headers
- for bochs files with other header, replaced with current mandrake header
- This revision makes the BIOS code understand that there can be either
  1 or 2 hard disks.
- int13: check how many disks first, and only return an error if DL exceeds
  the number of disks (ignoring bit 7 of course)
- added drive number arg to get_hd_geometry, so that get_hd_geometry can
  retrieve the numbers corresponding to hard drive 0 or 1
- hard_drive_post will now set up the EBDA area for drive 0 if it exists,
  then for drive 1 if it exists.
- since dataseghack was checked in with permission 664 (not executable),
  run it using "csh dataseghack"
- add BIOS that supports 2 hard disks
- add BIOS binary that supports 2 hard drive support
- oops, I mistyped the year.  This should be from the year 2001.
- updated Elpin VGA BIOS to version 2.40, same as plex86.  Kevin wrote
  to plex86 on 5/14/2001 and said that it was okay:
  > Yes, thanks to MandrakeSoft, the Elpin VGA BIOS 2.40 was licensed
  > for use in _both_ plex86 and bochs.  So you can distribute 2.40.
  >
  > Replace the text in 'bios/VGABIOS-elpin-LICENSE', with the
  > same file from the plex86 CVS tree.  Substitute bochs wherever
  > plex86 occurs.
- fixed bug in int13 code that returned disk0's geometry for either disk.
  This fixes [ #424904 ] rombios bug: both hds claim same geom
- this bios is from rev1.4 of rombios.c, which fixes
  [ #424904 ] rombios bug: both hds claim same geometry
- switch to new BIOS from 5/17/2001
- merged BRANCH-smp-bochs into main branch.  For details see comments
  in BRANCH-smp-bochs revisions.
- The general task was to make multiple CPU's which communicate
  through their APICs.  So instead of BX_CPU and BX_MEM, we now have
  BX_CPU(x) and BX_MEM(y).  For an SMP simulation you have several
  processors in a shared memory space, so there might be processors
  BX_CPU(0..3) but only one memory space BX_MEM(0).  For cosimulation,
  you could have BX_CPU(0) with BX_MEM(0), then BX_CPU(1) with
  BX_MEM(1).  WARNING: Cosimulation is almost certainly broken by the
  SMP changes.
- to simulate multiple CPUs, you have to give each CPU time to execute
  in turn.  This is currently implemented using debugger guards.  The
  cpu loop steps one CPU for a few instructions, then steps the
  next CPU for a few instructions, etc.
- there is some limited support in the debugger for two CPUs, for
  example printing information from each CPU when single stepping.
- recompiled bios with new features (multiple hd, etc.)
Kevin said to change to 'bochs' all things 'plex86'.. change this too.
- applied Cliff Hones's bios patches <cliff@aonix.co.uk>
  His change log says:
  - Makefile simplified - no longer uses tools86, dataseghack or ld86.
    Also enables warnings (-w-) and checks for undefined labels (-u-).
  - Macros used in place of multi-line #defines (so !!! conversion by
    tools86 not needed).
  - HALT() fixed [previously used ';' instead of '!!!'].  Needs port 400 to
    be added to iodev to be useful?
  - isru removed - doesn't seem to be needed now.
  - added UDIV16 (for use by bios_printf).
  - bios_printf %d implemented.
  - set_enable_a20 changed to use PS2 method, since bochs emulates this.
  - Keyboard intercept (int 15h/42h) fixed - should set CF, not assume that
    caller already has.  [The DOS keyb driver for example doesn't!]
  - Memory is scanned from C000 to F4000 for extension ROMs - this
    picks up VGA BIOS as before, and allows others to be included.
  - Comments improved for bios config table, and bit indicating RTC
    present is now set.
  - Int 9 (keyboard) now calls Int 15h/42h for key releases too.
    [Again, this is what the DOS keyb driver does.]
- applied Cliff Hones's bios patches <cliff@aonix.co.uk>
  - Makefile simplified - no longer uses tools86, dataseghack or ld86.
    Also enables warnings (-w-) and checks for undefined labels (-u-).
- this BIOS was made after applying Cliff Hones' patches
- now I/O writes to 0x400 (panic_port) actually cause a BX_PANIC message
- now the HALT macro in rombios.c writes to panic port but does not actually
  execute a "hlt" instruction.  This allows the .bochsrc to control
  whether the BIOS panic is fatal or not.
- corresponds to rombios.c revision 1.7 (fixed up HALT macro)
- fixed bugs in HALT macro, so that now it triggers a BX_PANIC message
  in iodev/unmapped.cc.