Volker Ruppert
154702eaca
- serial, parallel and usb options rewritten to a parameter tree
...
- bx_init_options(): local variables cleanup
- hide floppy devtype parameter (floppy media type change support not yet complete)
- wx: menu order changed
- keyboard.cc: removed obsolete FIXME
- proposed parameter tree updated
2006-03-01 17:14:36 +00:00
Stanislav Shwartsman
dfeaf141f0
Register I/O APIC as memory handler, optimize memory handlers array
2006-02-27 19:04:01 +00:00
Volker Ruppert
15efba10dd
- ata/atapi options rewritten to a parameter tree
...
- siminterface get_param_*() methods num support a base parameter like the generic
get_param() method
- new parameter lists now also have a generated id
- test function print_tree() now handles enum parameters correctly
- proposed parameter tree updated
2006-02-26 19:11:20 +00:00
Volker Ruppert
6cd4ffff28
- floppy options rewritten to a parameter tree
...
- enum parameter type method set_by_name() fixed
2006-02-24 22:35:46 +00:00
Volker Ruppert
4ef1a50a35
- new method get_param_path() returns the full path of new-style parameters
...
- keyboard type option handling simplified
- wx: show the list title as the group box title of pcidev options
2006-02-24 12:05:24 +00:00
Stanislav Shwartsman
2755fb02dd
Different was to implement bx_io_redirect_entry_t.
...
Should be fastr (elliminate redundant parse_entry calls) and more correct (aware of R/O fields)
2006-02-24 09:46:10 +00:00
Volker Ruppert
a4f412d3e8
- boot and loader options rewritten to a parameter tree
...
- wx: ParamDialog method EnableParam can now handle new-style parameters
- saving of pcidev options fixed
2006-02-23 22:48:57 +00:00
Volker Ruppert
c47508bdb1
- keyboard and mouse options rewritten to a parameter tree
...
- siminterface method ask_param() can now handle new-style parameters
- proposed parameter tree updated
2006-02-22 19:18:29 +00:00
Volker Ruppert
d4d4cbf6dd
- display and interface options rewritten to a parameter tree
...
- new enum parameter method get_selected() returns a pointer to the selected string
- proposed parameter tree updated
2006-02-21 21:35:09 +00:00
Volker Ruppert
0d4e34d124
- fixed parameter list for function read_toc()
...
- minor cleanups
2006-02-20 21:58:05 +00:00
Volker Ruppert
d364481bed
- pcidev options rewritten to a subtree of parameter "pci"
...
- save pcidev config line if enabled
- load pcidev plugin if requested
- pci parameter dependencies improved
- textconfig: show the title of a disabled submenu
2006-02-20 21:29:13 +00:00
Volker Ruppert
6311fface8
- pci options rewritten to a parameter tree
...
- proposed parameter tree updated
- pci presence flag stored in the memory code
2006-02-19 21:35:50 +00:00
Volker Ruppert
509900dff4
- clock and cmos options rewritten to a parameter tree
...
- clock/cmos menu added in textconfig and wx
- enum parameter type now supports new parameter handling
- long text format for numeric parameters added (useful when both textconfig and
wx are present)
- wx: handling of list flag USE_BOX_TITLE fixed
- textconfig: optional memory features moved to submenus
- siminterface generates a unique id for new parameters (used for wx dependencies)
- proposed parameter tree updated
- floppy options init code cleanup (still using old-style parameters)
2006-02-19 15:43:03 +00:00
Volker Ruppert
2a6261fba7
- cpu options rewritten to a parameter tree
...
- boolean parameter type now supports new parameter handling
- new parameter object constructors now supports label initialization
- bx_list_c constructor now supports title initialization
- textconfig: initial support for new parameter handling
- wx: missing CPU config dialog added
- wx: ParamDialog now handles disabled parameters correctly
- removed unnecessary spaces from function calls
2006-02-18 16:53:18 +00:00
Volker Ruppert
409e18127b
- DSP DMA timer and count now using more accurate values for 16-bit mode
...
- wave buffer size increased
- log messages improved
2006-02-09 21:59:42 +00:00
Volker Ruppert
e69a129d01
- fixed IDE register behaviour in case of a channel with one drive connected
...
* ports for error register, sector count and sector number are shared between
both drives
* status register always returns the values of the selected drive (0x00 if
not present
* set correct signature for both drives in case of reset
2006-02-06 21:27:34 +00:00
Volker Ruppert
f2de4e5d70
- some fixes in the (currently disabled) sndPlaySound feature (TODO: wave output
...
device / method should be controlled by sb16 parameter "wave=")
2006-02-05 17:13:54 +00:00
Volker Ruppert
a9a64fe3fc
- implemented readable packet log file support similar to other networking modules
...
(disabled by default)
2006-02-02 18:49:30 +00:00
Stanislav Shwartsman
6ca296de8b
Move --enable-reset-on-triple-fault option to runtime CPU::reste_on_triple-fault option in .bocshrc
...
Cleanup and optimize parser for debugger
2006-02-01 18:12:08 +00:00
Volker Ruppert
28e36a2671
- the CR start bit has no meaning in the PCI version
...
- set CR TXP bit during transmit operation
- improved various debug and error messages
2006-01-28 20:18:18 +00:00
Volker Ruppert
1e0467c8ff
- Cirrus SVGA detection fixed on OS/2 guest (from SF patch #1400358 )
2006-01-28 10:28:25 +00:00
Volker Ruppert
621a212e5a
- gcc 4.0 warning fixed
2006-01-28 08:52:16 +00:00
Stanislav Shwartsman
2c8f6f7720
Merged patch: determine number of processors to emulate through .bochsrc
2006-01-18 18:35:38 +00:00
Volker Ruppert
3e9ed43413
- code cleanup in the devices code
2006-01-17 20:16:59 +00:00
Stanislav Shwartsman
504081f282
dos2unix, add licence header
2006-01-15 19:34:03 +00:00
Volker Ruppert
373ed723ee
- any command sent to the keyboard enables the keyboard clock
2006-01-14 12:34:14 +00:00
Volker Ruppert
e939a43b3d
- invalid read/write operations now cause an error instead of a panic
...
- byte reads from port registers now supported
- report USB revision 1.0
2006-01-11 21:39:34 +00:00
Stanislav Shwartsman
5899932f0c
Merge APIC patch to the CVS.
...
- Fix lowest priority interrupt delivery from I/O APIC
- XAPIC support
- Implemented APIC bus functionality
- cleanup APIC code
2006-01-10 06:13:26 +00:00
Volker Ruppert
e662318422
- fixed timer IRQ handler with a callback function for the OUT pin (OUT pin of
...
the first timer is connected to IRQ line 0)
- code cleanup (indent mode, bool types, reset function, unused stuff)
2006-01-08 20:39:08 +00:00
Volker Ruppert
76ce7f2b22
- MSVC warnings fixed
2006-01-08 15:23:25 +00:00
Volker Ruppert
a7df662814
- only a change of the INTIN level should be handled by the I/O APIC
...
- removed I/O APIC IRQ0 hack from the PIC code
2006-01-08 12:01:25 +00:00
Volker Ruppert
ae96159f62
- fixed timer frequency reporting of the old PIT
...
- small cleanups (removed unused stuff, BX_DEBUG message for control register)
2006-01-08 09:45:11 +00:00
Volker Ruppert
886522349d
- spurious interrupt detection added
2006-01-07 18:02:16 +00:00
Volker Ruppert
b9e46e8cf4
- don't panic at unknown commands (aborting the command is okay here)
2006-01-07 12:52:05 +00:00
Volker Ruppert
3d7ddc90a5
- fixed possible division by zero error if the line offset value is 0
...
- VGA enable register implemented (enabled by default)
2006-01-07 12:10:59 +00:00
Volker Ruppert
682fd2ffdb
- fixed PIC IRQ signal handling
2006-01-05 21:57:58 +00:00
Volker Ruppert
54b9499e58
- ELCR setup was sent to wrong PIC
2006-01-02 22:26:27 +00:00
Volker Ruppert
97e1f39d8f
- I/O APIC signal handling rewritten ("backported" from qemu)
...
- don't flood the logfile if APIC EOI has no effect
- fixed a warning in the APIC code
- TODO: fix IRQ 0 handling, implement ExtINT
2006-01-01 11:33:06 +00:00
Volker Ruppert
ff7f41541f
- first attempt to fix the I/O APIC code
...
* IRQ 0, 2 and 13 are usually not connected to the I/O APIC INTIN pins
* if the IRQ line is set to inactive, clear IRR bit (same as PIC, but that
needs to be checked)
* added symbols for I/O APIC input types according to the specs
* TODO: PIC INTR is connected to INTIN0, edge/level handling in I/O APIC and
APIC code, ...
2005-12-31 14:46:21 +00:00
Volker Ruppert
00eabeb2de
- seek function added in lowlevel cdrom code (reads a block at specified address)
2005-12-27 13:21:25 +00:00
Stanislav Shwartsman
9e4a3675d3
Cleanup APIC code
...
Fixed APIC timer problem (too many registered timers) reported by Brendan
2005-12-26 19:42:09 +00:00
Volker Ruppert
682895ca77
- fixed error handling for the read ID command (bad drive, media not present)
...
- the seek command is always executed (doesn't set the EC bit)
2005-12-25 12:03:14 +00:00
Volker Ruppert
7f714b568a
- read support for 8029 ID and config registers added
2005-12-24 22:35:04 +00:00
Volker Ruppert
520da21dcf
- fixed device type checks (must be compared with FDRIVE_NONE now)
...
- fixed motor off condition for recalibrate and seek
2005-12-23 12:21:09 +00:00
Stanislav Shwartsman
90059c8faa
Non-functional changes, little bit optimize ioapic code
2005-12-13 20:27:23 +00:00
Volker Ruppert
83a799bca8
- don't include the device headers in networking/sound lowlevel code, virtual
...
and slowdown timers, hdimage and vmware3 code
- updated makefile dependencies
2005-12-10 18:37:35 +00:00
Volker Ruppert
751c0f8ea5
- splitted ATA/ATAPI emulation and image handling code. Now it is possible to use
...
the hdimage.* stuff with other mass storage interfaces (e.g. SCSI, USB)
2005-12-10 15:02:26 +00:00
Volker Ruppert
ef51fd3595
- if cmos image is enabled, save it on exit
2005-12-04 17:43:09 +00:00
Volker Ruppert
b59b3aed31
- fixed floppy media type check
...
- fixed result values after trying to access a not existing sector
2005-12-03 18:22:18 +00:00
Volker Ruppert
531c75c002
- keyboard/mouse runtime parameter handlers moved into the device code
...
- minor code cleanups
2005-12-02 17:27:19 +00:00
Volker Ruppert
f92a666e70
- minor USB updates from Ben Lunt
2005-11-30 18:34:59 +00:00
Volker Ruppert
c227c822b8
- USB runtime parameter handling prepared in the device code
2005-11-29 20:46:17 +00:00
Volker Ruppert
e753570e1f
- enable VDE networking module on Linux (same conditions as ethertap)
...
- eth_vde.cc compilation fix and TUN/TAP hack removed
- mentioned VDE and added example in documentation
2005-11-29 19:28:43 +00:00
Volker Ruppert
fd687a06c2
- fixed sparse type hd image larger than 4GB compiled with MSVC
2005-11-29 18:03:39 +00:00
Stanislav Shwartsman
ff015089b1
Fix get_EIP references in iodebug
2005-11-29 17:38:57 +00:00
Volker Ruppert
cef74b528a
- moved runtime handler for 'vga_update_interval' into the device (TODO: this could
...
be done with some parameters, e.g. mouse, keyboard, usb)
2005-11-27 17:49:59 +00:00
Volker Ruppert
e51c248aaa
- fixed size of debug message for the result of a floppy command
2005-11-25 22:29:20 +00:00
Volker Ruppert
31c23fc102
- floppy media type check added (prevents inserting of invalid media in drive,
...
e.g. 1.2MB 5.25" media in 1.44MB 3.5" drive)
2005-11-22 18:34:51 +00:00
Volker Ruppert
cbf474f7d3
- disk change line behaviour fixed (set at media removal and hardware reset,
...
cleared at the first step pulse)
2005-11-20 14:15:28 +00:00
Volker Ruppert
8fd02e184b
- floppy controller type changed to 82077AA and added a few commands to make
...
Linux detect it correctly. This changes has no effect on r/w operations.
- data rate select register partially implemented
- register reset fixes and additions
2005-11-16 21:21:35 +00:00
Volker Ruppert
fa996ca9de
- don't register i/o and memory address ranges during PCI probe
...
- PCI devices now report real base address changes only
- writes to the high word of i/o base addresses now permitted (for PCI probe)
2005-11-15 17:19:28 +00:00
Stanislav Shwartsman
5cf5aaef42
Fix compilation warnings
2005-11-14 19:03:12 +00:00
Volker Ruppert
e0f02463f9
- the step delay for the recalibrate and seek commands is now calculated from the
...
number of steps to do, the step rate time and the date rate
- the option floppy_command_delay is obsolete now, since all floppy delays are
based on the hardware specs. The usage of this option caused a warning now.
2005-11-12 10:38:51 +00:00
Volker Ruppert
3e00c16800
- define IOCTL_DISK_GET_LENGTH_INFO only if necessary
...
- fixed UPC flag in ATAPI command 'read subchannel'
- ATAPI command 'read subchannel' now returns "ISRC not recorded"
2005-11-11 22:52:57 +00:00
Volker Ruppert
902b8ec684
- better floppy write timing implementation (TC pulse is only available in DMA
...
r/w functions and must be stored in a variable)
2005-11-10 18:56:45 +00:00
Volker Ruppert
23776bab81
- more accurate timimg for floppy commands 'write normal data' and 'read ID' based
...
on a motor speed of 300 RPM
2005-11-09 19:13:32 +00:00
Volker Ruppert
611acd047c
- some more usb fixes by Ben Lunt
...
- small hack for debug messages from the start added (disabled by default)
2005-11-08 18:49:45 +00:00
Volker Ruppert
9934d3b46b
- prepared USB flash stick implementation (patch by Ben Lunt - not yet complete)
2005-11-07 19:06:05 +00:00
Volker Ruppert
3c4b32f9a4
- splitted image headers from hard drive header (TODO: split emulation and image
...
code for non-IDE interfaces)
- fixed bximage error messages
2005-11-06 11:07:01 +00:00
Volker Ruppert
9e57072f28
- ATAPI command "read subchannel format 2" now returns "UPC not recorded"
...
- changed bool types to bx_bool, false and true to 0 and 1
- some indent mode fixes
2005-11-06 08:21:38 +00:00
Volker Ruppert
82d009c632
- some more usb fixes by Ben Lunt
...
- missing interrupt on resume added
2005-11-05 12:57:18 +00:00
Volker Ruppert
355e656dd5
- ATAPI command 'read cd': Packet-DMA and raw read support added
2005-11-04 19:03:46 +00:00
Volker Ruppert
5109a7e679
- fixed toc size returned by IOCTL_CDROM_READ_TOC_EX using the size field of toc data
...
- prepared read_block() function for block size 2352
- report block number at cdrom read block panic
2005-11-02 20:26:24 +00:00
Volker Ruppert
fbd3bc709c
- missing closing bracket added
2005-11-02 16:44:00 +00:00
Volker Ruppert
107d68f385
- fixed capacity function on Windows XP using IOCTL_DISK_GET_LENGTH_INFO
2005-11-01 21:43:47 +00:00
Volker Ruppert
6d1e5d6d05
- SET FEATURES subcommands now returning success
...
- read raw toc for image files and platforms other than Windows XP implemented (ported from qemu)
- several cdrom capacity fixes / report capacity only on Bochs init and cdrom change
- flag 'using_file' must be set to 0 for WIN32 ASPI or direct access
- multisession format handling removed from harddrv.cc (now handled in cdrom code)
- ATAPI error messages improved
- prepared ATAPI buffer for block size 2352
2005-11-01 19:10:24 +00:00
Volker Ruppert
5addd3c8c6
- reply with NACK (resend) to unknown/unsupported keyboard mouse commands
...
- unnecessary return statements removed
- some messages changed
2005-10-31 15:32:18 +00:00
Volker Ruppert
71185561ad
- IDE busmaster DMA for cdroms fixed and enabled
...
- more accurate DMA timing depending on the transfer size
2005-10-30 19:18:59 +00:00
Volker Ruppert
13bfb46cdc
- IDE busmaster DMA for cdroms (packet DMA) prepared, but not enabled yet
2005-10-30 14:14:03 +00:00
Volker Ruppert
afd665f369
- some more usb fixes by Ben Lunt
2005-10-30 10:02:51 +00:00
Volker Ruppert
04d33f73fe
- PCI IDE busmaster DMA feature fixed and enabled (Win98 guest can use it without
...
errors, WinXP guest cannot enable it yet)
2005-10-29 12:35:01 +00:00
Volker Ruppert
0784eac61c
- some fixes to usb support from SF patch #1340111 by Ben Lunt
2005-10-29 09:12:39 +00:00
Volker Ruppert
d7807a9841
- allocate vbe memory dynamicly (saves memory if extension Bochs VBE is not selected)
2005-10-27 17:53:41 +00:00
Volker Ruppert
2bbf61deed
- read_block() now tries 3 times before giving up
...
- read_block() now returns a bx_bool value and panic moved to hard drive code
- insert_cdrom() now uses read_block() to test the media presence
- small code cleanups
2005-10-27 17:01:11 +00:00
Volker Ruppert
87e7dd3434
- don't allocate video memory if already done (this was wasting memory)
...
- don't init / reset Cirrus extension if disabled
- store last active BPP value independent from selected vga extension (fixes possible
panic when switching from a Cirrus 640x480 mode to standard VGA)
2005-10-27 09:32:02 +00:00
Volker Ruppert
906062fb01
- load pcivga plugin only if assigned to a pci slot and Bochs VBE is selected
2005-10-27 08:20:16 +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
Stanislav Shwartsman
34ec2c532a
Change BX_INFO to BX_DEBUG, it floods the log with a lots of messages
2005-10-23 20:42:20 +00:00
Volker Ruppert
d964eb58ad
- the Bochs BIOS and the LGPL'd VGABIOS never cause a panic at line number 0
2005-10-23 13:23:49 +00:00
Volker Ruppert
ca3ccdc096
- fixed typos in manpages, user documentation and others
...
- clock sync setting "both" was missing in the docs
2005-10-23 07:17:01 +00:00
Volker Ruppert
36187fe1ba
- fixed the slowdown timer sleep rate on platforms that don't support the usleep()
...
function. Now using the value 1 msec on all platforms.
- slowdown timer doesn't need the reset() function (it's not hardware)
2005-10-22 17:31:02 +00:00
Volker Ruppert
0a57b7360c
- the polling initiated interrupt occurs 250 usec after leaving reset state
...
- the main status register returns 0 when in reset state
- improved a panic message
2005-10-09 17:58:37 +00:00
Volker Ruppert
6a290014f6
- ATAPI command 'read cd' partially implemented
...
- cdrom name returned by ATAPI command 'inquiry' changed
- some more indent mode fixes
2005-10-02 15:44:10 +00:00
Volker Ruppert
0cacb9af0c
- deprecated option 'newharddrivesupport' removed from hard drive code
...
- sense code ASC_ILLEGAL_OPCODE added for unimplemented/unknown ATAPI commands
- some panics changed to errors
- unsupported bits message in drive and head register changed to BX_DEBUG
- improved info about not existing drive
- indent mode fixed in ATAPI packet command section
2005-10-02 10:16:54 +00:00
Volker Ruppert
9b264e8830
- don't report read/write accesses to the PCI host controller with wrong io_len
...
(guest PCI probe can flood the logfile)
- fixed indent mode in some functions
2005-10-01 17:40:07 +00:00
Volker Ruppert
9e0089fb9e
- floppy commands 0x04 and 0x4A do not reset the disk change line (SF patch
...
#1294930 by Ben Lunt)
- disk change line can be active only when the motor is on
2005-09-28 17:36:01 +00:00
Volker Ruppert
a434503a02
- PCI command register behaviour fixes in some devices
2005-09-23 19:31:12 +00:00
Volker Ruppert
ae3621fb5f
- removed temporary PCI base address initialization in the reset() functions
...
- removed obsolete parameters for usb1 and pnic (now assigned by the PCI BIOS)
- PCI base address register mechanism now leaves the flags untouched
- missing reset of pnic options added
2005-09-22 21:12:26 +00:00
Volker Ruppert
edd430d573
- base address area set to read-only (TODO: implement framebuffer base at 0x10)
...
- unnecessary io_len check removed
2005-09-18 13:02:56 +00:00
Volker Ruppert
9bc26a67d5
- PCI IDE: base address area must be read-only except BM-DMA base
...
- PCI devices: debug messages fixed
2005-09-18 09:01:05 +00:00