Volker Ruppert
92412a3fee
- multi sector read/write commands implemented
...
- ATA command 'set multiple mode' fixed (missing interrupt and value check)
- hard disk sector read/write rewritten and simplified
- hard disk now reporting ATA-3 supported
- updated drive buffer size for save/restore
2006-07-17 18:40:26 +00:00
Volker Ruppert
d18be4f084
- ATA command 'read multiple sectors' prepared (not working properly with Linux
...
guest and some work in the hdimage code is required)
2006-07-14 17:23:58 +00:00
Volker Ruppert
10a49f6d1c
- fixed implementation of the ATA command "set multiple mode" (TODO: multi sector
...
read/write commands)
- prepared i/o buffer for multi sector transfers
- power management commands "standby now" and "idle immediate" now returning success
2006-07-13 17:34:44 +00:00
Volker Ruppert
139ea79c70
- fixed VBE y offset check (add x offset to start address after check)
2006-07-11 07:49:23 +00:00
Volker Ruppert
60fab95d08
- fixed calculation of VBE screen height after changing virtual width
...
- setting VBE screen start causes now a panic if the bottom of the screen
would be outside of video memory
- improved VBE debug messages
2006-07-08 13:05:50 +00:00
Volker Ruppert
dbfc8f42c8
- always use geometry detection for 'vmware3' images
...
- updated documentation for hard disk images
- user.dbk: added save/restore config option and removed obsolete one
2006-06-17 07:45:27 +00:00
Volker Ruppert
a2327441ca
- endianness fixed
2006-06-16 08:56:13 +00:00
Volker Ruppert
075ee17ac9
- geometry autodetection for 'sparse' mode hard disk images added
...
- store size of virtual disk in sparse header to simplify geometry detection/check
- enabling geometry autodetection causes a panic if not supported by image
2006-06-16 07:29:33 +00:00
Volker Ruppert
02fbf84630
- geometry autodetection for 'vmware3' mode hard disk images added
...
- simplified geometry detection code
- unsupported ATAPI commands now cause a BX_DEBUG message and no addtional
error code info (avoid flooding log file)
2006-06-15 09:44:37 +00:00
Stanislav Shwartsman
9269288319
Fix SR macros mis-use. Need to add assertion into bxlist_c and check that it has no 2 params with same name inside !
2006-06-14 16:44:33 +00:00
Volker Ruppert
f2f80f7542
- geometry autodetection for 'undoable' and 'volatile' mode hard disk images added
...
- a bunch of image size handling changes
* 'hd_size' contains the size of the virtual hard disk (for geometry check/detection)
* passing the size calculated from the geometry not needed in some cases
- indent mode changes
2006-06-08 20:32:00 +00:00
Volker Ruppert
2018bf864b
- save/restore parameter init rewritten using BXRS_* macros
...
- register parameters for the wx debugger only if present (fixes memory leak)
- removed useless static variable 'first_time'
2006-06-05 18:17:04 +00:00
Volker Ruppert
61448beaa2
- geometry autodetection for 'growing' mode hard disk images added
...
- documentation updates
2006-06-05 08:00:21 +00:00
Stanislav Shwartsman
1aaf19cd09
Support for partial read/write in APIC space
2006-06-05 05:39:21 +00:00
Volker Ruppert
6730922952
- geometry autodetection for 'concat' mode hard disk images added
...
- removed all references to the old 'split-hd' feature (now: 'concat' mode)
- updated documentation for 'concat' images
2006-06-04 21:49:17 +00:00
Stanislav Shwartsman
fee48d74e0
Avoid doing strdup for param name field - most of the strdups elliminated !
2006-05-29 22:33:38 +00:00
Stanislav Shwartsman
bc3cbb49b6
Write Virtual timer save/restore using macroses
2006-05-28 20:24:51 +00:00
Stanislav Shwartsman
74308f7829
Add CMOS and DMA
2006-05-28 18:43:01 +00:00
Stanislav Shwartsman
bccab0ee1c
Clean and simplify save-restore params registration for more devices
2006-05-28 18:14:05 +00:00
Stanislav Shwartsman
286b89d763
Several x86-64 MSRs were not-initilized !
...
Fixed small save-restore bug in dma.cc
First step to make save-restore code look better (only several files processed for example)
2006-05-28 17:07:57 +00:00
Stanislav Shwartsman
8b0df8e99b
Merge SAVE_RESTORE branch to CVS
2006-05-27 15:54:49 +00:00
Stanislav Shwartsman
7c1767d17a
Partial sync with save-restore
2006-05-27 14:02:34 +00:00
Stanislav Shwartsman
8db5723921
Wow, I forgot to commit this change for NullTimer fixes !
2006-05-18 19:57:11 +00:00
Volker Ruppert
817b85045e
- fixed sharing of growing harddisk images between Windows and Linux caused by
...
different data alignment. Added a reserved 32-bit field and changed header
version to 2.0. The hdimage code can still handle version 1.0 images.
2006-05-14 21:15:33 +00:00
Volker Ruppert
6a299e61a7
- get rid of the unused description field of shadow bool and data parameters
...
(new/modified constructor)
- new constructor for bx_list_c objects without title
- shadow parameter bitmasks fixed
- functions bx_sr_before_save_state() and bx_sr_after_restore_state() prepared
- ne2k.cc: reset behaviour fixes
- sb16: some variable types changed
2006-05-14 15:47:37 +00:00
Volker Ruppert
a419ec3423
- fixed busmouse usage (wrong parameter)
2006-05-07 09:34:51 +00:00
Stanislav Shwartsman
ae6c38b202
Style and TAB2SPACE changes
2006-05-06 15:19:57 +00:00
Volker Ruppert
9340f3b3f8
- partial sync with BRANCH_SAVE_RESTORE_3 (hardware save/restore not present yet)
...
* changed data format of text files for save/restore (looks like C/C++ structures,
similar to the format used in old save/restore branches)
* don't set the initial value of shadow bool parameters
* don't set the initial value of bool parameters twice
* cpu/init.cc: missing #undef added
* ne2k.cc: variable tx_timer_active was never set to 1 (type now bx_bool)
* floppy.cc: missing initialization of the 'eot' array in reset() added
* pic.h: type of member 'byte_expected' changed to Bit8u
* pit_wrap.h: unused members removed
2006-05-01 18:24:47 +00:00
Stanislav Shwartsman
f93ab35357
Flush TLB for all CPUs when memory mapping information changed by system (A20 change, PAM write or similar events)
2006-04-29 17:21:49 +00:00
Stanislav Shwartsman
003c2f59e6
Added missed CVS header to several files
2006-04-27 15:11:45 +00:00
Stanislav Shwartsman
252c669841
Remove unused members in vga and svga (Volker)
...
Change PANIC to ERROR in keyboard port 64 handler
2006-04-27 11:58:07 +00:00
Stanislav Shwartsman
891b556fca
Remove duplicate line of code
2006-04-26 16:15:45 +00:00
Michael Brown
0944f2cd3e
Update to cope with bochs API changes
2006-04-26 00:04:49 +00:00
Michael Brown
d6a0708209
Allow for opening of persistent tuntap devices, using a
...
"/dev/net/tun:tap0" syntax for ethdev.
2006-04-25 22:52:38 +00:00
Volker Ruppert
49a642ef39
- forward PIRQ register changes to the I/O APIC inputs 16...19 if present
2006-04-23 08:46:07 +00:00
Volker Ruppert
eb2104d0de
- parameters for the wx debugger moved to a separate subtree to avoid conflicts
...
with the proposed save/restore feature
- fixed a warning in the cpu parameter handler for the wx debugger
2006-04-16 10:12:32 +00:00
Volker Ruppert
36498746c1
- some more work for the save/restore feature in the plugins and devices code
...
* register_state() will be called after init() and registers the device members
required for save/restore
* before_save_state() can do some work before the device state is saved by the
siminterface
* after_restore_state() can do some work after the device state has been
restored (updating dependant stuff)
2006-04-15 17:03:59 +00:00
Stanislav Shwartsman
663eed8cd2
Extend debug message for not-supported APM command register
2006-04-10 19:43:47 +00:00
Stanislav Shwartsman
6aadcd5208
Started implemntation of APM control and status regs
2006-04-07 10:48:54 +00:00
Stanislav Shwartsman
7cc921d1df
Prepare configure support for SSE4 implemntation (coming soon)
...
Rename _GAME configure macro to _GAMEPORT
2006-04-05 18:49:35 +00:00
Stanislav Shwartsman
c2455e7c1e
Fixed warning
2006-04-05 17:23:51 +00:00
Stanislav Shwartsman
c7d142200f
Implement SMRAM conrol register in i440fx chipset and all its functionality in memory class
2006-03-26 22:15:07 +00:00
Volker Ruppert
a63349eac5
- fixed cdrom capacity of ISO image files
...
- ATAPI cdrom read commands: starting block number needs to be checked
2006-03-26 00:38:58 +00:00
Stanislav Shwartsman
6ceac4c788
Fixed compilation error reported in #SF bug tracker
2006-03-25 18:04:15 +00:00
Volker Ruppert
26c67216ed
- check TC on every DMA cycle (partial sector transfers now supported)
2006-03-25 12:14:13 +00:00
Volker Ruppert
4ca0b26b20
- fixed compile error on FreeBSD
2006-03-23 18:28:40 +00:00
Volker Ruppert
912b07fde8
- fixed a memory leak
2006-03-22 18:06:16 +00:00
Stanislav Shwartsman
e85a90a720
Remove cpu.h -> devices.cc dependancy, kill_bochs_request moved from CPU to bx_pc_system
...
Small Icache simplification and speedup
2006-03-14 18:11:22 +00:00
Volker Ruppert
2e144d5862
- changed some function argument and return types from char * to const char *
...
(grabbed from patch included in FC5 Bochs package for wxWidgets 2.6.x)
2006-03-13 18:55:53 +00:00
Stanislav Shwartsman
4c3f229ff1
This should fix problem with non-PCI ne2k device
2006-03-08 19:28:37 +00:00
Stanislav Shwartsman
77653bcf3d
More indent and C++ style changes (explicitly write virtual before virtual desctructors).
...
The PCI read/write handlers written in new C++ - more flexible and easy-to-understand
2006-03-07 21:11:20 +00:00
Stanislav Shwartsman
242c2fa51c
Style and indent changes
2006-03-07 18:16:41 +00:00
Volker Ruppert
c66191bd13
- prepared save/restore subtree to make the conversion of the cpu and keyboard
...
parameters of the wx debugger possible
- started rewrite of shadow parameters and converted keyboard parameter stuff
- test function print_tree() now shows raw byte strings correctly
- removed unnecessary spaces
2006-03-07 17:54:27 +00:00
Stanislav Shwartsman
da0b2ac377
Update dependencies for iodev and root project folders.
...
Fixed compilation errors for 386 case
Added file header for slowdown_timer.h
2006-03-06 22:32:03 +00:00
Stanislav Shwartsman
7b6c2587a9
Now devices could be compiled separatelly from CPU
...
Averything that required cpu.h include now has it explicitly and there are a lot of files not dependant by CPU at all which will compile a lot faster now ...
2006-03-06 22:03:16 +00:00
Stanislav Shwartsman
c0aeb1b073
Substitute NULL to BX_CPU_C parameter instead of BX_CPU(0) for memory ops originated by devices
2006-03-06 19:23:13 +00:00
Volker Ruppert
e1b42d183a
- sb16 options rewritten to a parameter tree
...
- sb16 parameters stored in the device class and runtime parameter handler added
- wx: ParamDialog can currently handle only dependency lists of bool parameters
correctly (TODO: add support for numeric parameters)
2006-03-03 20:29:50 +00:00
Stanislav Shwartsman
b3420e7e56
Only indent and style changes
2006-03-03 20:15:07 +00:00
Stanislav Shwartsman
7ed117f0e0
Add 8-byte memory access support, all 8-byte memory accesses executed byte-byte before.
2006-03-03 12:55:37 +00:00
Volker Ruppert
dafe33fc84
- network options rewritten to a parameter tree
...
- disable usb options if not compiled with usb support
- usb and network dependency list created with menu->clone()
- load usb plugin only if at least one hub is present
- remaining options prepared for rewrite
- proposed parameter tree updated
2006-03-02 20:13:14 +00:00
Stanislav Shwartsman
5fad793989
move local apic handling to the access_linear function for the memory class.
...
speedup the whole simulation by 2% !
2006-03-01 22:32:24 +00:00
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