Commit Graph

60 Commits

Author SHA1 Message Date
Christophe Bothamy ac91aa0d3c . changes to enable El-Torito boot. It is disabled by default in rombios.c 2002-01-30 10:30:52 +00:00
Christophe Bothamy d36bb4bdfd . BIOS image with El-Torito boot compiled in 2002-01-30 10:27:29 +00:00
Volker Ruppert 873aa0c127 - keyboard self test reads the status register to clear IRQ line
- PS/2 mouse hack removed - unmask IRQ in PIC setup
- commented keyboard buffer initialisation removed
2002-01-27 09:26:23 +00:00
Volker Ruppert 14679e9413 - floppy hardware interrupt handler issues 'sense interrupt status' if there
are no result bytes to read
2002-01-24 20:32:22 +00:00
Volker Ruppert f0937a06b9 - INT 13: number of drives is not 0 if there is only a diskd present
- hard_drive_post: DS must point to EBDA segment when initialising
  parameters for diskd
- unmask only necessary IRQs at boot time
2002-01-20 00:25:59 +00:00
Volker Ruppert ed04aff2ca - romscan routine from plex86 BIOS integrated 2002-01-15 21:22:00 +00:00
Volker Ruppert 7add6391d6 - DMA initialisation complete: unmask cascade channel 2002-01-02 09:59:32 +00:00
Volker Ruppert 17ab2fa85f - INT 13 diskette funktion 5 uses the "format track" function of the FDC
- added initialisation of PIC and DMA in POST - reboot of linux works now
2002-01-01 21:39:28 +00:00
Volker Ruppert c7b6a1c58b - int 13 floppy function 08 returns always the pointer to the param table in ROM 2001-12-26 14:53:40 +00:00
Christophe Bothamy d8d03b431c - updated version of LGPL'd vgabios 2001-12-21 23:41:49 +00:00
Bryce Denney a1a9beac3b - update to rombios.c version 1.25 2001-12-06 04:50:08 +00:00
Bryce Denney 057df9bcde - compile SMP bioses for the first time since June! 2001-12-06 04:28:30 +00:00
Volker Ruppert 014687aa97 - extended keyboard funktion waits for a key, too - don't panic 2001-12-05 20:38:32 +00:00
Volker Ruppert db4401adb8 - serial functions added, MF-II keyboard functions added, parport updates 2001-11-26 07:26:55 +00:00
Bryce Denney 26b2c0254c - this revision is based on a patch from Cliff Hones <cliff@aonix.co.uk>.
Cliff added to bios_printf the ability to print onto the console.  Bryce made
  some further changes.  Now when a panic occurs, the message is reported both
  to the Bochs log file and to the screen, and then it goes into an infinite
  busy loop.  Why an inf loop?  If I do a HLT in BIOS code, current bochs
  versions will panic immediately and the user will never see the real panic
  message.  I have mostly tested the new panic behavior by booting nonbootable
  and nonreadable disks.
2001-11-21 02:33:05 +00:00
Bryce Denney 77cdb18620 - add LGPL bios by Christophe Bothamy <cbbochs@free.fr>. When new versions
are released, I will remove VGABIOS-cbothamy-0.2a and add a file with
  the other version number.  I decided not to use the "-latest" naming
  scheme because there is no synchronization between bochs releases and
  LGPL VGA BIOS releases.  Anything that's called "latest" is bound to
  go obsolete eventually.
2001-11-19 14:35:05 +00:00
Bryce Denney fad446ef63 - fix bug I created in rev 1.15 which caused all boot problems to be
reported as "not a bootable disk" even if it was "not a readable disk".
2001-11-18 16:40:26 +00:00
Bryce Denney fea759a204 - apply patch.pci from Volker Ruppert. See
[ #481546 ] pci patch (Volker Ruppert) for any followups.
2001-11-14 01:39:22 +00:00
Bryce Denney c685af1bdc - in sync with rombios.c 1.20. The change is from patch.parport by
Volker Ruppert which fixes parallel port access.
2001-11-12 01:34:20 +00:00
Bryce Denney a2efc4c5de - commit patch.parport from Volker Ruppert. I tested it by running
"copy FILE prn" in a freedos image.
2001-11-12 01:33:01 +00:00
Bryce Denney 7986ea67a7 - print "read error" when hard disk cannot read the disk image, or
seeks beyond the end
2001-10-06 08:48:28 +00:00
Bryce Denney 7140fa7090 - don't panic on int 0x13, AH=0x42 through 0x49. These are valid
MS/IBM extensions but they aren't supported.  Return an error code instead.
2001-10-05 23:58:45 +00:00
Bryce Denney daf2a9fb55 - add RCS Id to header of every file. This makes it easier to know what's
going on when someone sends in a modified file.
2001-10-03 13:10:38 +00:00
Bryce Denney 3bba2f657f - apply patch from patches/patch.lba. This is taken from plex86 cvs
and modified for bochs.  Minimal testing so far...
2001-09-19 15:30:44 +00:00
Bryce Denney f04e6fe346 - apply VPATH patch from Edouard G. Parmelan, posted to list on September 1 2001-09-14 04:19:08 +00:00
Bryce Denney aca0d3fae8 - apply BIOS patch from Barry Allard to check the boot signature
- fiddle with I/O handler for port 0x401 to allow BIOS to write a
  complete panic message
2001-08-15 04:56:00 +00:00
Bryce Denney a11b18da3a - in int13_diskette_function, return the right error code (AH=3) if a
write fails because the floppy disk was write protected.  Before, the
  floppy.cc model was unable to return this error, but now it can.
2001-06-13 07:23:26 +00:00
Bryce Denney 7a095b60e4 - now floppy controller returns a proper error response if you try to write
a read-only disk image.  For systems such as DOS that actually use the
  BIOS services, it was also necessary to add code in int13_diskette_function
  to recognize a write-protected error and return the correct error
  status code (AH=3, Carry Set).
2001-06-13 07:06:10 +00:00
Bryce Denney f1be61c30b - compiled bioses for rombios.c revision 1.13 2001-06-07 18:08:52 +00:00
Bryce Denney 7f14cc625e - This should fix the bug
[ #430472 ] DOS HIMEM "A20 line" error
  All I've done is moved the call to print_bios_banner later in the
  boot process, and the A20 problem goes away.  I wanted it early so
  that it would get printed before any panic or halt could happen.
  Oh well.
2001-06-07 18:03:29 +00:00
Bryce Denney 8ab8c40108 - fix bugs in SMP structure
- this file now corresponds with rombios.c version 1.12.
2001-06-07 13:35:42 +00:00
Bryce Denney 08fad0325e - fixed the entry count for 2 and 4 processor MP structure, and the
checksum.
- at the same time, I removed my initials from the OEM id field and changed
  it to "BOCHSCPU"  :)
2001-06-07 13:33:32 +00:00
Bryce Denney 981fb8f55b - fixed bug introduced in 1.6 which caused MP structures to be overwritten
by BCC generated data.  This was pointed out by Tom Lindström
  <tom@debet.shh.fi>, and I took his suggestion of moving the MP structures
  to the end of the file.
2001-06-07 12:29:22 +00:00
Bryce Denney 075bc4319b - replaced with 2.40 2001-06-04 03:56:26 +00:00
Bryce Denney a134d9fb86 - print messages in log on boot failure 2001-05-31 20:37:03 +00:00
Bryce Denney 954e3377b4 - print messages on boot failure 2001-05-31 20:36:05 +00:00
Bryce Denney 36d6a6527e - update bios again, but this time move to a standard filename
BIOS-bochs-latest.  Different versions of the BIOS can now be
  distinguished because they print the RCS ID into the log file
  using bios_printf.
2001-05-31 15:30:30 +00:00
Bryce Denney b198e58c72 - removed panic that I had used in debugging. Oops. 2001-05-31 15:23:10 +00:00
Bryce Denney 5ac0adc67d - do not HALT if hard drives cannot be found 2001-05-31 15:21:25 +00:00
Bryce Denney a37950bf5a - clean up rombios.txt when done 2001-05-29 14:35:45 +00:00
Bryce Denney 77a528dbb6 - fixed bugs in HALT macro, so that now it triggers a BX_PANIC message
in iodev/unmapped.cc.
2001-05-29 14:33:51 +00:00
Bryce Denney d3bc402352 - corresponds to rombios.c revision 1.7 (fixed up HALT macro) 2001-05-29 14:32:41 +00:00
Bryce Denney 071589ab79 - 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.
2001-05-29 14:28:14 +00:00
Bryce Denney 7b66643379 - this BIOS was made after applying Cliff Hones' patches 2001-05-25 01:32:59 +00:00
Bryce Denney a9260aae27 - 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-).
2001-05-24 23:24:02 +00:00
Bryce Denney 2d399f2501 - 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.]
2001-05-24 22:27:44 +00:00
Todd T.Fries c4b0977231 Kevin said to change to 'bochs' all things 'plex86'.. change this too. 2001-05-24 15:30:30 +00:00
Bryce Denney 38b35b9a48 - recompiled bios with new features (multiple hd, etc.) 2001-05-23 15:38:26 +00:00
Bryce Denney e61d00351f - 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.
2001-05-23 08:16:07 +00:00
Bryce Denney 267d834580 - switch to new BIOS from 5/17/2001 2001-05-17 21:51:16 +00:00