Commit Graph

272 Commits

Author SHA1 Message Date
Volker Ruppert
458e128240 - PCI BIOS: improved error message for function 'find PCI device' 2006-01-25 17:53:37 +00:00
Volker Ruppert
0f363841dd - removed obsolete SMP BIOS images 2006-01-14 08:30:18 +00:00
Volker Ruppert
480fbb29d1 - removed static MP tables from rombios.c and MP bios images from Makefile 2006-01-13 17:36:27 +00:00
Volker Ruppert
990fdd3ec9 - LGPL'd VGABIOS updated to version 0.5d (minor bugfixes) 2005-12-29 09:37:12 +00:00
Volker Ruppert
b2e19d7e09 - APM function 0x05 (cpu idle) implemented (tested with Win98)
- unused commented stuff removed
2005-12-26 10:36:52 +00:00
Volker Ruppert
ae37bb9815 - fixed disk size reporting > 64 GB (SF patch #1389776) 2005-12-25 09:11:59 +00:00
Volker Ruppert
c92fd65c65 - enabled support for harddisks with up to 127 GB in Bochs and bximage
- BIOS harddisk detection message is now okay if size is < 64 GB
2005-11-06 16:50:30 +00:00
Volker Ruppert
7b8ed58815 - end-of-track (EOT) condition implemented
- set valid EOT value in BIOS floppy read/write functions
- added hack to make older Bochs BIOS version work with EOT feature
2005-10-27 07:38:20 +00:00
Volker Ruppert
d232d245f4 - APM function 0x10 (get capabilities) implemented
- stubs for APM functions 0x08 and 0x0f added
- rebuild bios images if apmbios.S is modified
2005-10-24 11:14:37 +00:00
Volker Ruppert
50a0de2746 - disable i/o and memory space access while initializing PCI base address registers 2005-09-24 08:10:10 +00:00
Volker Ruppert
8d883ec645 - fixed PCI i/o base address initialization 2005-09-19 21:09:42 +00:00
Volker Ruppert
fb5b86b11c - PCI i/o and memory base address initialization added 2005-09-18 21:45:05 +00:00
Volker Ruppert
62f28d8f79 - pause key detection implemented
- preparing PCI i/o and memory init function
2005-09-17 17:43:45 +00:00
Volker Ruppert
9121053af9 - keyboard interrupt handler fixes (patch by japheth)
* pass all keycodes received by INT 09h to keyboard intercept
  * don't wait for second keycode if an extended keycode is detected (set flag only)
2005-09-16 16:05:14 +00:00
Volker Ruppert
8851f2523a - fixed enhanced keycode flag for key releases
- modified bios startup messages
2005-09-15 18:07:32 +00:00
Volker Ruppert
f9e7aa39af - fixed flag for enhanced keycode 0xE0 (final part) 2005-09-09 18:56:42 +00:00
Volker Ruppert
08fe825e41 - fixed flag for enhanced keycode 0xE0 2005-09-09 16:34:21 +00:00
Volker Ruppert
b4269dca92 - new function floppy_prepare_controller() simplifies some floppy functions and
makes panic no longer necessary
- bios banner now shows active features
- indent mode fixed in modified sections
2005-09-04 09:38:28 +00:00
Volker Ruppert
9a282850c7 - fixed URLs for mtools on win32 and rombios documentation 2005-09-02 15:38:46 +00:00
Volker Ruppert
2e8dccf684 - fixed floppy return status if media not present (MS-DOS expects value 0x80)
- more accurate handling of the floppy recalibrate function (removed panic)
- small code cleanups and optimizations in the floppy code (e.g. do .. while loops,
  always using 0040:003e for the floppy interrupt flag)
- small updates ported from the PC BIOS project
2005-08-26 17:47:16 +00:00
Volker Ruppert
86c3c68dc4 - fixes for OS/2 in the floppy and rombios code (patch from Robin Kay)
* support for XDF images added
  * floppy controller should hang if media not present
  * rombios has to reset the floppy controller after read/write failure
2005-08-24 20:45:57 +00:00
Volker Ruppert
b6f484f606 - fixed INT 09h keyboard flags handling 2005-08-14 17:19:44 +00:00
Volker Ruppert
c688161ddf - INT 70h has destroyed the upper word of EAX; save/restore all 32-bit registers now 2005-08-13 08:53:59 +00:00
Volker Ruppert
e5b7fa1b4b - fixed segment and offset in int70h and modify the high bit only 2005-08-12 19:50:45 +00:00
Volker Ruppert
67a977fbf3 - LGPL'd VGABIOS updated to version 0.5c 2005-07-07 18:05:10 +00:00
Volker Ruppert
218e6b8450 - missing scancodes for F11 and F12 added to translation table
- unknown scancode info message improved
2005-06-14 18:23:03 +00:00
Volker Ruppert
975d040ed5 - LGPL'd VGABIOS updated to version 0.5b (minor bugfixes) 2005-05-24 19:18:21 +00:00
Volker Ruppert
57a8322ac4 - applied patches by Alex Beregszaszi
* serial debug output to COM1 for the rombios (disabled by default)
  * added missing trailing newlines in info/panic messages
- log_bios_start() must initialize serial port for the serial debug feature
- comments for the parallel and serial detection code added
2005-05-07 15:56:27 +00:00
Stanislav Shwartsman
5243bd8bf2 Update MP tables comments in rombios 2005-05-04 16:05:05 +00:00
Volker Ruppert
37f92c320a - applied patches by Alex Beregszaszi
* cross-compilation support for the bios
  * "user-settable" bios build date string
  * hexadecimal nuber cosmetics, #0x instead #$
- use real build date for the bios build date string
- simplified printer status handling
2005-04-30 11:11:16 +00:00
Volker Ruppert
c5b7f5e3ef - applied patches by Alex Beregszaszi
* function INT 15h AH=88h implemented
  * added stub for function INT 16h AX=6f02h
  * writes to debug/info/error/panic ports can be disabled now
2005-04-28 17:54:32 +00:00
Stanislav Shwartsman
e4768c94d3 added sanity checks from patch
[Bochs-developers] [PATCH] some sanity checks in bios
by Alex Beregszaszi [alex@fsn.hu]
2005-04-27 18:29:27 +00:00
Stanislav Shwartsman
19750b0324 Fixed highest_priority_int calculation function
Fixed I/O APIC ID for 8CPU configuration to match BIOS tables
Remove I/O APIC initialization when INIT IPI received
2005-04-27 18:09:27 +00:00
Volker Ruppert
b1dc8c910d - 4-cpu SMP table fixed (patch by jermar@itbs.cz) 2005-04-26 20:23:07 +00:00
Volker Ruppert
69d610c254 - APM support for 16 bit protected mode added (patch from Struan Bartlett) 2005-04-06 18:05:47 +00:00
Volker Ruppert
002853978c - LGPL'd VGABIOS updated to version 0.5a (including Cirrus support) 2005-03-07 21:53:39 +00:00
Volker Ruppert
561e617362 - using fixed values for the diskette parameter table instead of int vector 0x1E
fixes floppy problems in Win9x guests
2005-02-13 08:48:23 +00:00
Volker Ruppert
8affb6d10b - fixed macros for debug output
- string memory now starts at 0xcc00 to have enough space for all debug messages
2005-02-05 23:10:52 +00:00
Volker Ruppert
5ec5e89575 - pcibios fixes by lukewarm (SF patch #1114826)
* pcibios: preserve esi and edi
 * pcibios: ignore high-word of edx when calling FIND_PCI_DEVICE
 * pcibios_real: set readable descriptor to ds when error (for 16bit PM)
 * bios_printf: replace immediate value 0xf000 with get_CS (for 16bit PM)
- Win98 cdrom boot fixed (patch by Magnus Damm)
2005-02-02 19:14:24 +00:00
Volker Ruppert
3f909bd46d - fixed real mode PCI BIOS error reporting 2005-01-31 18:36:54 +00:00
Volker Ruppert
0785fe48b2 - don't panic when an unsupported mouse packet size is requested 2005-01-27 18:05:09 +00:00
Volker Ruppert
5499cb0c34 - PS/2 mouse scaling functions implemented
- int15_function_mouse(): removed unused variables
2005-01-02 09:46:34 +00:00
Volker Ruppert
e0c5b9d7af - Win9x CD boot fixed (SF patch #1087537 by lukewarm) 2004-12-20 17:02:20 +00:00
Volker Ruppert
5a36efedfa - mouse type 'none' added (no mouse connected)
- added emulation of the PS/2 mouse port without a mouse connected (some OS's
  still detect a mouse)
- fixes for the mouse type 'serial_wheel' (the wheel still doesn't work in Win98)
2004-12-07 21:13:20 +00:00
Volker Ruppert
faafc6a93a - mouse type 'none' added (no mouse connected)
- added emulation of the PS/2 mouse port without a mouse connected (some OS's
  still detect a mouse)
- fixes for the mouse type 'serial_wheel' (the wheel still doesn't work in Win98)
2004-12-07 21:06:35 +00:00
Volker Ruppert
ebf9cb86ca - PS/2 mouse functions "set sample rate" and "get device id" implemented
- presence of the EBDA segment doesn't depend on the PS/2 mouse option
2004-12-05 16:41:46 +00:00
Volker Ruppert
a15de4430b - boot sequence with up to 3 boot devices inplemented. The sequence is stored
in the CMOS regs 0x3d and 0x38. TODO: change config option "boot" to use this
  feature.
2004-10-15 15:37:01 +00:00
Volker Ruppert
5d7cc42431 - extented floppy parameter table (floppy fix for NT4 from qemu written by Mike
Nordell and Derek Fawcus)
- int 13h diskette function 08h should return the pointer to the floppy parameter
  table stored in int 1Eh
2004-10-04 19:31:02 +00:00
Volker Ruppert
a6d14987cd - PCI IRQs must always be level sensitive (setup ELCR1/ELCR2 in pcibios init) 2004-10-02 12:29:54 +00:00
Volker Ruppert
0fd0fc7384 - pci irq initialisation added (TODO: initialize pci memory + i/o space) 2004-09-25 17:23:06 +00:00