Stanislav Shwartsman
f8c3968d42
Changes list made after CVS service crash:
...
- Fixed critical bug in CPU code added with one of the prev commits
- Disasm support for SSE4
- Rename PNI->SSE3 everywhere in the code
- Correctly decode, disassemble and execute 'XCHG R8, rAX' x86-64 instruction
- Correctly decode, disassemble and execute multi-byte NOP 0F F1 opcode
- Fixed ENTER and LEAVE instructions in x86-64 mode
- Added ability to turn ON instruction trace, only GUI support is missed.
Instruction trace could be enabled if Bochs was compiled with disasm
- More changes Bit32u -> bx_phy_address
- Complete preliminary implementation of SMM in Bochs, SMI is still PANICs but if you press 'continue' everything should work OK
- Small code cleanup
- Update CHANGES and user docs
2006-04-05 17:31:35 +00:00
Stanislav Shwartsman
c2455e7c1e
Fixed warning
2006-04-05 17:23:51 +00:00
Volker Ruppert
05280a1eba
- fixed handling of BIOS extensions with base address within the 0xe0000 segment
...
- fixed a warning
2006-04-05 16:58:22 +00:00
Volker Ruppert
ba597401a2
- user-defined config option support implemented
2006-04-05 16:05:11 +00:00
Volker Ruppert
6ce71008f6
- fixed submenu (child list) handling in do_menu()
...
- base parameter for do_menu() is now obsolete
2006-03-29 20:31:51 +00:00
Volker Ruppert
8d178b107b
- prepared user-defined config option support
2006-03-29 19:27:31 +00:00
Stanislav Shwartsman
a6c3ffeeb5
Fixed compilation error
2006-03-29 19:16:24 +00:00
Stanislav Shwartsman
ae2ea87c43
More fixes for SMM
2006-03-29 18:08:13 +00:00
Stanislav Shwartsman
b271bcd9c6
Fixed compilaion problem on Linux gcc 3.3.4
2006-03-28 21:09:04 +00:00
Stanislav Shwartsman
4fd9bd53c3
Change Bit32u -> bx_phy_address in memory
2006-03-28 16:53:02 +00:00
Stanislav Shwartsman
42aac37624
Fixed complilation error
2006-03-27 20:09:37 +00:00
Stanislav Shwartsman
da3d26d7f4
Preliminary implemntation of SMM save statei
...
Fixed fetchModeMask for load32bitOsStack
2006-03-27 18:02:07 +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
Stanislav Shwartsman
f3ac069c90
initialize new BX_MEM_C member
2006-03-26 19:48:54 +00:00
Stanislav Shwartsman
b8be848943
Use access_type param in getHostMemAddr, less efficient but no copy-paste at least
2006-03-26 19:39:37 +00:00
Stanislav Shwartsman
5c3fba4399
Support access to SMRAM in memory object
...
Cleanup in CPU code
2006-03-26 18:58:01 +00:00
Volker Ruppert
6cbdf98b38
- header of log options table is now always visible
...
- removed unnecessary spaces after function names
2006-03-26 15:52:31 +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
Stanislav Shwartsman
03a5c22a64
Fixed debugger help command
2006-03-24 21:01:44 +00:00
Volker Ruppert
4ca0b26b20
- fixed compile error on FreeBSD
2006-03-23 18:28:40 +00:00
Stanislav Shwartsman
bc4ca51055
Fixed disasm of 'enter' instruction in AT&T mode
2006-03-23 17:43:39 +00:00
Stanislav Shwartsman
f347ab97bf
Fixed CALL/JMP far through call gate 64
...
Decode SWAPGS and RDTSCP instructions
Indent changes in fetchdecode
2006-03-22 20:47:11 +00:00
Volker Ruppert
912b07fde8
- fixed a memory leak
2006-03-22 18:06:16 +00:00
Volker Ruppert
6048821249
- fixed a warning and some remaining unicode issues
...
- removed unnecessary spaces after function names
2006-03-19 15:35:20 +00:00
Volker Ruppert
2439c65acf
- wxWidgets unicode fixes completed
2006-03-19 09:24:10 +00:00
Volker Ruppert
6106f1c905
- some more fixes for unicode support (wxT("string") conversion)
2006-03-18 16:30:52 +00:00
Stanislav Shwartsman
a52301c56c
Remove the patch, it was successfully merged to CVS
2006-03-16 20:38:32 +00:00
Stanislav Shwartsman
d6f85c12f6
NMI support inside the CPU.
...
Added two functions to query NMI and SMI from Bochs debugger.
In future they could be used for generating NMI or SMI by user request using GUI button (could be implemented separatelly later and under configure-time or .bocshrc option)
2006-03-16 20:24:09 +00:00
Stanislav Shwartsman
a64b16391d
Remove unused vars
2006-03-15 17:57:11 +00:00
Volker Ruppert
d456b8ceb4
- fixes for unicode support in wx.cc (grabbed from FC5 patch for Bochs)
2006-03-14 18:13:08 +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
Volker Ruppert
7997876711
- implemented GTK2+ detection for wxGTK (patch by Guillem Jover <guillem@debian.org>)
...
- selection of required wx libraries to link only works with version 2.6.x
2006-03-13 17:18:33 +00:00
Volker Ruppert
96a47a4055
- fixed parameter check before calling the "Show CPU" dialog
...
- wxBochs needs to be linked with the wxWidgets core and base libraries only
2006-03-12 15:13:03 +00:00
Volker Ruppert
9a1c64721e
- fixed parameter check before calling the "Show CPU" dialog
...
- wxBochs needs to be linked with the wxWidgets core and base libraries
2006-03-12 15:11:54 +00:00
Volker Ruppert
4e4df52109
- added new function bx_stop_simulation() to stop the Bochs simulation thread
...
(used by wx). Now the siminterface no longer depends on cpu.h
2006-03-11 22:40:32 +00:00
Volker Ruppert
568b41c659
- re-implemented LogOptionsDialog based on ParamDialog
2006-03-11 10:00:56 +00:00
Volker Ruppert
9699eaeca4
- added SMP support in save/restore parameter subtree
...
- TODO: implement tab window control for SMP CPUs in wx "show cpu" dialog
2006-03-09 20:16:17 +00:00
Stanislav Shwartsman
7ba6e5a2bb
Forgot to check-in main.cc
...
But anyway - this is more clear fix which also fixes code duplication
2006-03-08 20:10:29 +00:00
Stanislav Shwartsman
4c3f229ff1
This should fix problem with non-PCI ne2k device
2006-03-08 19:28:37 +00:00
Stanislav Shwartsman
3ec2e9e7de
Fixed segfault in SMP mode
2006-03-08 19:27:56 +00:00
Stanislav Shwartsman
d74f1b9a43
Fixed bug in ENTER instruction in long mode
2006-03-08 18:21:16 +00:00
Volker Ruppert
5597fc9cf3
- fixed wx "Show CPU" dialog to make it work with the new parameter handling
...
- fixed CPU register names
- removed old parameter handling (bx_id, BXP_* symbols, param_registry, etc.)
2006-03-08 18:10:41 +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
Volker Ruppert
575a17e50f
- converted cpu state parameters to param-tree style
...
- removed old-style parameter init methods
- NOTE: the wx CPU registers dialog (debugger) currently reports nothing
- TODO: fix wx CPU registers dialog, remove remaining bx_id related stuff
2006-03-07 20:32:07 +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
0c573d15cf
- fixed compile error (missing typecast)
...
- fix for parameter objects without a parent list
- textconfig: logfile options moved to a submenu
- obsolete parameter init methods removed
2006-03-06 18:50:55 +00:00
Stanislav Shwartsman
d09e644f45
Memory access handling explanation by Brendan
2006-03-06 06:32:03 +00:00
Volker Ruppert
dd7e08de99
- remaining config options and special menus added to parameter tree
...
- parameter tree structure updated (TODO: should be moved to development.dbk)
- code cleanup: bx_options stuff and obsolete parameter access methods removed
- TODO: rewrite of shadow parameter stuff (for subtree "save_restore")
2006-03-05 10:24:29 +00:00
Stanislav Shwartsman
fc0894bbe1
Enable A20 after system reset
2006-03-04 16:58:10 +00:00
Volker Ruppert
dbe0918d59
- text snapshot check option added to parameter tree
...
- GDB stub options are now regular parameters
- syntax of text_snapshot_check bochsrc directive changed
2006-03-04 12:43:47 +00:00
Stanislav Shwartsman
93898e11b2
Missed }
2006-03-04 09:24:31 +00:00
Stanislav Shwartsman
324d75e749
Fix another broking change
2006-03-04 09:22:55 +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
Stanislav Shwartsman
e297df457a
Roll back the try to move Local APIC memory access to CPU.
...
It was fast and fine but had serious correctness problems with RMW apic access
2006-03-02 23:16:13 +00:00
Stanislav Shwartsman
6d513ed6f2
Fix indent corruption
2006-03-02 20:17:54 +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
6c392e7f3f
optimize apic code
2006-03-02 20:09:21 +00:00
Stanislav Shwartsman
7cc8bc0836
Clean and optimize
2006-03-02 17:39:10 +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
62cfd57854
- wx: fixed possible crash if parent parameter is NULL
...
- network options prepared for rewrite
- ata device enum type option handling simplified
2006-03-01 21:24:20 +00:00
Volker Ruppert
9196541d58
- fixed USB runtime parameter names
2006-03-01 17:56:32 +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
9b3be40d88
Improve OS/2 hack - save full segment (including hidden part) and not only selector value
2006-02-28 20:29:03 +00:00
Stanislav Shwartsman
a527b2cfca
first smm - implement cpu state when switching to SMM
...
smm coming soon
fixed code duplication in init.cc
2006-02-28 19:50:08 +00:00
Stanislav Shwartsman
55ceecf79b
Small optimization in icache page-write-stamp
2006-02-28 17:47:33 +00:00
Volker Ruppert
fbd61d0a00
- fixed memory leak in the parameter list method clone()
...
- removed useless parameter list method set_options() (usage caused memory leak)
2006-02-28 16:19:29 +00:00
Volker Ruppert
a31ba3c195
- simple string dialog box uses the label of the parameter if present
2006-02-28 15:48:59 +00:00
Volker Ruppert
388747feec
- removed unnecessary strdup() calls (memory leaks)
...
- strdup() is necessary for the ata device name (master/slave)
- added missing initialization of the member 'enable_handler'
- clone() method now uses the original title for the new list
2006-02-28 14:02:06 +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
32c03a3965
- enable ATA channels 1 - 3 in menu only if supported
...
- runtime setup for ATA channels now uses limit BX_MAX_ATA_CHANNEL
- simple string dialog box uses the label of the parameter if present
(otherwise the name is used)
2006-02-27 12:03:56 +00:00
Volker Ruppert
48bb9719a6
- fixed number of initializers for ATA options if BX_MAX_ATA_CHANNEL < 4
...
- changed ask_param() method argument to param pointer (fixes win32 cdrom dialog)
2006-02-27 09:37:58 +00:00
Stanislav Shwartsman
a6d2ccffba
Fixed typo
2006-02-27 06:14:42 +00:00
Volker Ruppert
f1acec3ffd
- fixed win32 floppy dialog after implementing new parameter handling
...
- fixed enabling of two ATA controllers by default
2006-02-26 22:36:01 +00:00
Stanislav Shwartsman
24077c071b
Fixed exception generated when accessing memory w/o right permissions
2006-02-26 21:44:03 +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
Stanislav Shwartsman
5e63d0bd44
iUpdate MSDEV workspaces
2006-02-24 18:36:31 +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
83bb20b6f9
Diagnostic message for possible bug in exception.cc
2006-02-24 09:49:03 +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
Stanislav Shwartsman
3dd38bcd8e
Declare bx_phy_address and bx_lin_address data types - should be used ALWAYS instead of blind Bit32u
2006-02-23 18:24:56 +00:00
Stanislav Shwartsman
79306b851c
Separate fetch/decode instruction block to stand-alone method.
...
The method could be reused when building instruction trace for DT
2006-02-23 18:23:31 +00:00
Stanislav Shwartsman
0150904e9d
Improve debug messages and optimize
2006-02-22 20:58:16 +00:00
Stanislav Shwartsman
8ba6c1178a
Fixed PANIC in CMPxx SSE instructions
2006-02-22 20:20:21 +00:00
Volker Ruppert
689d233c4f
- fixed parameter access functions in some guis
2006-02-22 19:43:55 +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
Stanislav Shwartsman
7cfa31492c
Removed --enable-pni configure option, to compile with PNI use
...
--enable-sse=3 instead (Stanislav Shwartsman)
2006-02-20 19:28:57 +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
ce3cebee79
- patch applied to CVS
2006-02-18 23:32:06 +00:00
Volker Ruppert
a4bc4cc9e0
- fixed cpu parameter handling in SMP mode
2006-02-18 17:28:18 +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
a14b2a9720
- memory parameter handling rewrite completed
...
- added BXPN_* symbols for parameter names (taken from old save/restore branch)
2006-02-17 22:27:38 +00:00
Stanislav Shwartsman
6b2ab6aa92
Fixed movhps/movlps instructions disasm
2006-02-17 17:13:58 +00:00
Stanislav Shwartsman
5c58b22f44
Fixed opcode names according to Intel docs
...
Fixed bug found during disasm validation
2006-02-17 13:34:31 +00:00
Stanislav Shwartsman
2dc81b172a
Fixed several disasm bugs
2006-02-17 13:33:05 +00:00
Volker Ruppert
4cece81589
- started implementation of the parameter tree based on patch.param-tree
...
* memory parameter handling rewritten (not yet complete)
* new reset() method for bx_list_c for recursive reset of all list members
* memory options in wx now handled in a ParamDialog (ConfigMemoryDialog removed)
* removed obsolete BXP_* constants in siminterface.h
* updated proposed parameter tree
- constant BX_N_OPTRAM_IMAGES for optional RAM images limit added
2006-02-16 21:44:17 +00:00
Stanislav Shwartsman
b966703504
print CPU mode correctly again
2006-02-14 20:14:18 +00:00
Stanislav Shwartsman
203a9caf31
SMM mode could leave together with pmode or any other (according to amd docs)
...
so we need separate bx_bool indicator in_smm instead
2006-02-14 20:03:14 +00:00
Stanislav Shwartsman
024ce249bf
Define SMM mode for future implementation.
...
I would like all next commits be aware of SMM mode.
It can't be implemented right now (too many questions w/o answers) but it will be done till next major release definitelly.
2006-02-14 19:00:08 +00:00
Stanislav Shwartsman
3a420aacaa
First step in removing of bx_num_range, fixed parser.
...
Cleaned and improved 'info idt' 'info ivt' and 'info gdt' commands
2006-02-13 21:32:21 +00:00
Stanislav Shwartsman
180667fb4e
Fixed compilation warning
2006-02-13 18:37:21 +00:00
Stanislav Shwartsman
d37f62d2b4
Support for 64-bit registers set reg = expr command
...
Print found guard cs_eip in more nice way, it was too mane leading zeroes in x86-64 mode ON
2006-02-13 18:28:14 +00:00
Volker Ruppert
4bd442e80e
- updated proposed parameter tree (cpu and keyboard stuff for save/restore removed)
...
- removed unused BXP_* constants in siminterface.h
2006-02-12 20:43:12 +00:00
Stanislav Shwartsman
6e768f81d9
Split 'show int' option to 'show extint', 'show softint' and 'show iret', allow to toggle every option separatelly.
...
Command 'show int' still supported, meaning - all three together
2006-02-12 20:43:01 +00:00
Stanislav Shwartsman
d97f264817
The patch is not required anymore, 'show int' command in debugger solves the same issue
2006-02-12 20:26:26 +00:00
Stanislav Shwartsman
2646484dc1
Fix 'show' command in Boch debugger.
...
Fully supported show-interrupts, show-mode and show-call options
Enable toggling of show options (bug report from SF)
2006-02-12 20:21:36 +00:00
Stanislav Shwartsman
22adda781e
Fix the check for cpu::count param
2006-02-12 20:05:03 +00:00
Stanislav Shwartsman
b08bccef3a
Fix wrong commit
2006-02-11 21:57:04 +00:00
Stanislav Shwartsman
de2183b00d
Add info abou reset-on-triple-fault option moving
2006-02-11 21:51:50 +00:00
Stanislav Shwartsman
d87ee21f9f
Update CHANGES
2006-02-11 21:47:22 +00:00
Stanislav Shwartsman
dbee93ebf0
Small updated in user docs
2006-02-11 21:39:59 +00:00
Stanislav Shwartsman
bc30171d4a
Remove parenthesis around 'show command' arguments
...
Fixed in lexer and parser
2006-02-11 21:19:22 +00:00
Stanislav Shwartsman
e8ec9e854b
Remove redundant 0x from FMT_ADDRX macro for cygwin
...
Moved 'show "tab"' command to 'info' (use 'info tab' now)
Fixed printing of the command
2006-02-11 20:47:22 +00:00
Stanislav Shwartsman
ace3b9916a
Print branch target linear address for all in disasm when possible (i.e. cs.base and eip supplied)
2006-02-11 19:46:03 +00:00
Stanislav Shwartsman
0bf03f370d
Support for DC and HT in SMP configurations
...
Extended format of CPU::COUNT .bochsrc option to define number of core/threads
2006-02-11 15:28:43 +00:00
Stanislav Shwartsman
fefe078a0a
Update CHANGES
2006-02-11 10:06:54 +00:00
Volker Ruppert
7a48a576b5
- fixed ROM address range check
2006-02-11 09:35:54 +00:00
Stanislav Shwartsman
9b451f43e2
Save/restore RIP/RSP only on FAULT type exceptions, not on traps
2006-02-11 09:08:02 +00:00
Volker Ruppert
37d2cf1628
- patch updated for current CVS
2006-02-10 18:58:40 +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
d7caed8655
- fixed compile error
2006-02-05 20:03:24 +00:00
Stanislav Shwartsman
5a65e1065e
Decoding functionality for Bochs disassembler.
...
Fixed 'step over' debugger command using bx_dbg_read_linear method.
Small debugger fix in cpu.cc
2006-02-05 19:48:29 +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
ab5d2b5644
- version information updated after release 2.2.6
2006-02-04 09:23:59 +00:00
Stanislav Shwartsman
c7760750d3
Fixed SMP related debugging for some methods - hardcoded BX_CPU(0) instead of BX_CPU(dbg_cpu)
...
New debugger problem discovered - most of dbg linear memory acceses not aware on paging and possible page split !
Implemented new dbg method bx_dbg_read_linear (very similar to CPU access_linear) - every debugger method should use it to read any amount of memory based on linear address.
Implemented print_stack command for x86-64 support
2006-02-02 22:33:32 +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
9a15f59e05
Fixed bug in SYSRET legacy mode
2006-02-02 17:55:48 +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
0186b3fdd1
- fixed user.dbk compilation file (missing section header added)
2006-02-01 17:20:04 +00:00
Stanislav Shwartsman
b8984e7b1d
Commit an assertion to pc_system_c constructor - check that no timers defined whne the construction is called. This is done to prevent the bug like critical APIC timer bug added in 2.2.5 and fixed in 2.2.6 release.
2006-01-31 20:43:24 +00:00
Stanislav Shwartsman
1d4fa8b327
Available back ability to use eip register as source in 'set reg = <expr>' cmd.
...
Setting the eip register still not available (deliberatelly).
I don't want to enable it util I find some easy interface to do it.
I don't want to allow setting of part of RIP register using 'set eip=<expr>' and leave the upper part unchanged ....
Remove unused test registres from debugger
Fix compilation error in cpu.h
Change trace-on/trace-off commands. Make one 'trace' command with usage of 'trace on/trace off'
2006-01-31 19:45:34 +00:00
Volker Ruppert
7646a3ecbd
- siminterface now uses the new value BX_LOG_NOTIFY_FAILED in case of failure
...
(no notify handler registered). The ask() function doesn't set the variable
bx_user_quit to 1 in that case. This prevents win32 from closing the console
window immediately in case of a bochsrc error.
2006-01-31 19:37:56 +00:00
Stanislav Shwartsman
24d4de03a1
- Fixed bug with missed ES segment override prefix
...
- Correctly disassemble x86-64 opcodes
Ia_cvttsd2si_Gq_Wsd
Ia_cvttss2si_Gq_Wss
Ia_cvtsd2si_Gq_Wsd
Ia_cvtss2si_Gq_Wss
Ia_movq_Pq_Eq
Ia_movq_Vdq_Eq
Ia_movq_Eq_Pq
Ia_movq_Eq_Vq
- Correctly disassemble Intel SSE3 opcodes (not supported by Bochs)
Ia_monitor
Ia_mwait
2006-01-31 17:42:31 +00:00
Stanislav Shwartsman
24c27deae8
Recognize XF exception (0x13) when SSE is enabled
2006-01-31 17:41:08 +00:00
Stanislav Shwartsman
934f552ea3
Fix disassembly
2006-01-30 17:39:17 +00:00
Stanislav Shwartsman
7f52ced334
Small update of user docs
2006-01-29 21:02:55 +00:00
Stanislav Shwartsman
765951b1a5
Fix problem in FLDENV/FSTENV instructions
2006-01-29 17:37:23 +00:00
Volker Ruppert
1fca3684bf
- regenerated for 2.2.6 release
2006-01-29 08:50:03 +00:00
Volker Ruppert
5ddfdbc068
- updates for 2.2.6 release
2006-01-29 08:48:50 +00:00
Volker Ruppert
5365914e00
- updated win32 installer section and list of files
...
- added latest release tags
- mention the improved show-ips feature
2006-01-29 08:44:12 +00:00
Stanislav Shwartsman
356cb066d4
Reverting back last commit from Kevin.
...
Both Intel and AMD docs say that fldenv should fault on pending exceptions.
(#MF If an unmasked x87 floating-point exception was pending)
2006-01-28 21:31:20 +00:00
Kevin Lawton
2b45a94893
fldenv does not fault on pending exceptions. Reversed the order of
...
the checks.
2006-01-28 20:52: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
Stanislav Shwartsman
c7dd4185a7
Do not pass crc32 function as parameter to memory class - it is available as global function now
2006-01-28 16:16:03 +00:00
Stanislav Shwartsman
a0345031cf
forgot to remove '0x' from FMT_ADDRX fro mingw
...
fix dump_table function to use CPU paging translation method instead of old debugger method which not supported PAE and other paging features
2006-01-28 15:10:33 +00:00
Stanislav Shwartsman
cb58d08c11
Fix MSVC warning
2006-01-28 14:48:40 +00:00
Volker Ruppert
b1a1660494
- changes updated and sorted by priority (bugfixes, improvements, documentation)
2006-01-28 12:45:51 +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
5c95708deb
Update CHANGES, added recent configure script modifications
2006-01-27 21:58:41 +00:00
Stanislav Shwartsman
95a392eddc
Enable VME by default for Pentium+ CPU
2006-01-27 21:45:50 +00:00
Stanislav Shwartsman
7974f9135d
Remove '0x' from address printf format
2006-01-27 21:35:45 +00:00
Stanislav Shwartsman
067f23e3da
Fix set 'ah,bh,ch,dh' registers from debugger
...
Enable disasm by default - in adds some useful information to debug messages in log file
Remove defines for 8bit registers from cpu.h, the x86 arch defines not match defines used by set_reg and get_reg methods.
2006-01-27 19:50:00 +00:00
Volker Ruppert
4ecd8eae70
- show IPS value in a separate field in the status bar (initial patch by sshwarts)
2006-01-27 18:04:49 +00:00
Volker Ruppert
d87085d55c
- Bochs with SDL on win32 now works with BX_SHOW_IPS enabled (FIXME: window resize
...
forces all status bar leds to enabled
2006-01-26 22:13:20 +00:00
Stanislav Shwartsman
8533f49a20
More update debugger docs according to its functionality
...
Remove old IPS measurements taken on very old Bochs version and CPU,
keep only 4 examples for IPS
2006-01-25 22:46:10 +00:00
Stanislav Shwartsman
3d38243dc0
Update patch comments
2006-01-25 22:30:07 +00:00
Stanislav Shwartsman
37eb82c69c
Totally remove the cosimulation code from Bochs.
...
The Bochs anyway even doesn't compile if cosimulation configured enabled.
But in the same time the cosimulation code only disturbs to the future development of Bochs debugger, for example adding x86-64 functionality ...
For those of you who still may want to see the cosimulation code inside I put it in patch and upload it Bochs CVS patches folder. Read comments for the patch ! ----------------------------------------------------------------------
2006-01-25 22:20:00 +00:00
Stanislav Shwartsman
aa6874cb6e
Put playback functions together, indent changes
2006-01-25 21:38:31 +00:00
Volker Ruppert
500f2b65b9
- improved warnings for deprecated bochsrc options
...
- updated documentation after adding the ips parameter to the cpu option
- fixed special character (ampersand) in debugger documentation
2006-01-25 20:07:36 +00:00
Stanislav Shwartsman
83b4f7ba05
1. remove the ability of using regnames as symbols !
...
'set $eax = <value>' is stupid when you could do expr like 'set eax = ebx + 4'
2. cleanup and optimize Bochs debugger parsing, fixed several memory leaks
2006-01-25 18:13:44 +00:00
Volker Ruppert
458e128240
- PCI BIOS: improved error message for function 'find PCI device'
2006-01-25 17:53:37 +00:00
Volker Ruppert
8de434138d
- gui tooltip support added (currently used by win32 gui only)
...
- win32 gui overrides default mouse tooltip setting depending on the configuration
2006-01-25 17:37:22 +00:00
Stanislav Shwartsman
603f4a26e3
Update CHANGES
2006-01-24 22:09:35 +00:00
Stanislav Shwartsman
5017f52b22
Try to update bochs debugger docs - new features and functionality changes
2006-01-24 22:00:07 +00:00
Stanislav Shwartsman
d257f548b9
1. implemented 'set register <name>=<expr>' command, old style 'registers <name>=<exp> command' removed, now 'r|reg|regs|registers' command shows CPU registers contents (same as 'info cpu')
...
2. new command 'u|disasm|disassemble mode-switch' - switch between Intel and AT&T disasm syntax
3. new command 'u|disasm|disassemble size=n' should be used instead of old 'set $disassembler_size=n'
4. 'h' is a new alias for 'help' command
2006-01-24 21:37:37 +00:00
Stanislav Shwartsman
557c15699f
New function - toggle syntax mode
2006-01-24 21:34:39 +00:00
Stanislav Shwartsman
a25be6faaa
Fix indent, update bx_dbg_info_flags method
2006-01-24 19:23:42 +00:00
Stanislav Shwartsman
f9cad8d272
Remove debug printf
2006-01-24 19:07:45 +00:00
Stanislav Shwartsman
18afa9fd2d
This is cumulative patch for bochs debugger, it is only very first step towards working debugger supporting all new simulator functionalitieS.
...
- move crc.cc from debugger to bochs folder and make it projct-wide and not local for debugger
- added new 'info sse' command for debugger
- extend 'modebp' command to break on any mode change
- remove unimplemened 'info program' function, it is always printed fixed text
- move debugger help to parser, cleanup and simplify it
2006-01-24 19:03:55 +00:00
Stanislav Shwartsman
f27d342968
Removed unused linux.h file
...
Indent changes for linux.cc
2006-01-24 18:21:22 +00:00
Stanislav Shwartsman
99a1f0838a
FIx opcode table
2006-01-24 18:15:55 +00:00
Volker Ruppert
01367548ca
- show win32 mouse message for min. 2 seconds when BX_SHOW_IPS is enabled
2006-01-23 21:53:57 +00:00
Stanislav Shwartsman
21352e50a9
Fix some bugs in debugger parser, cleanup
...
Add some debugger functionality
2006-01-23 21:44:44 +00:00
Stanislav Shwartsman
3e34905280
Indent fixes, add WARNING when using old style IPS directive
2006-01-23 18:39:10 +00:00
Volker Ruppert
cf5215b11e
- fixed possible hangs of the 'sdl' and 'x' gui on Linux/X11 with BX_SHOW_IPS
...
- x gui: show mouse toggle message for around 2.5 seconds after a change if
BX_SHOW_IPS is enabled
- format of the ips value changed to right aligned
2006-01-23 18:34:47 +00:00
Stanislav Shwartsman
5a5854c684
Missed ;
2006-01-22 18:18:19 +00:00
Stanislav Shwartsman
de9be40256
Fixed ROL/ROR flags anomaly (h.johansson)
2006-01-22 18:17:27 +00:00
Stanislav Shwartsman
1ff08c3d6d
Print IPS instead of mIPS to the status bar
...
Do not create show_ips virtual function if BX_SHOW_IPS is OFF
2006-01-22 18:15:48 +00:00
Volker Ruppert
8a1b7ca245
- if BX_SHOW_IPS is enabled, show mIPS value in the status bar of the Bochs
...
window (rfb, sdl and wx)
2006-01-22 16:30:48 +00:00
Volker Ruppert
a0f880b06d
- show IPS value in the status bar of the Bochs window (win32 and x11)
...
- Bochs now compiles with BX_SHOW_IPS enabled on MSVC
2006-01-22 12:31:16 +00:00
Volker Ruppert
6f28406d3a
- added parameter 'ips' to the cpu option. This parameter will replace the
...
ips option after release 2.2.6
- ips description updated
2006-01-22 10:03:38 +00:00
Stanislav Shwartsman
e75b3cde62
My update of TODO
2006-01-21 17:19:46 +00:00
Volker Ruppert
c78019285e
- first step of the TODO update
2006-01-21 16:43:45 +00:00
Volker Ruppert
d8c3336047
- removed obsolete file codingguidelines.html
...
- updated docs-html/index.html and fixed links to new docs
- improved coding guidelines (LGPL compatibility)
2006-01-21 12:51:54 +00:00
Stanislav Shwartsman
90b38ba96f
TSC is fully implemented now
2006-01-21 12:10:13 +00:00
Stanislav Shwartsman
0b971217e0
Remove patches already merged to CVS
2006-01-21 12:08:10 +00:00
Stanislav Shwartsman
9df8079206
Write to MSR_TSC implemented (patch by Bryce)
2006-01-21 12:06:03 +00:00
Volker Ruppert
b1b7b5e70d
- some more cleanup in the plugin code (non-devmodel stuff removed)
2006-01-21 09:28:49 +00:00
Kevin Lawton
88183335e9
Patch "info fpu":
...
o uses FPRi instead of ST(i)" (which was not quite right, as ST(0) was not the FPR at the TOP but alwasy fpr0).
o shows the TOP, and the tag as {s,d,e,?}.
2006-01-21 00:05:30 +00:00
Volker Ruppert
c56b918a8e
- code cleanup: removed unused defines and structure members
...
- removed plugin flag 'use_devmodel_interface' (all plugins are using it)
2006-01-20 19:12:03 +00:00
Volker Ruppert
2ad483d95d
- ported coding guidelines to docbook
...
- improved code example for BX_PIC_SMF and BX_PIC_THIS
2006-01-19 21:17:45 +00:00
Stanislav Shwartsman
23642cecdd
Update features table
2006-01-19 19:13:30 +00:00
Stanislav Shwartsman
08c15c67c0
Don't know how much it helps ...
...
First step to make bx debugger supporting x86-64. guard_found object fields conerted to bx_address for x86-64 support.
2006-01-19 18:32:39 +00:00
Volker Ruppert
99c8f9c8ae
- updated documentation after merging the new SMP configuration stuff
...
- fixed some typos
2006-01-19 18:13:28 +00:00
Stanislav Shwartsman
aacabd00f9
Generate MP tables only when APIC enabled
2006-01-18 19:11:05 +00:00
Stanislav Shwartsman
4f3b9b47c2
Update CHANGES for last commit
2006-01-18 18:54:47 +00:00
Stanislav Shwartsman
90f899fd16
Fix bug in PMULUDQ SSE instruction
2006-01-18 18:39:17 +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
c8cd1f805a
Enabled LAHF/SAHF for x86-64 mode
2006-01-17 19:50:42 +00:00
Stanislav Shwartsman
83300a66dd
Fixed printing of 64-bit values forma. When compiling with cygwin with -mno-cygwin option the format should be like in MSVC
2006-01-17 18:17:01 +00:00
Stanislav Shwartsman
f2fc4bbe5a
Generate MP tables even for single CPU configurations
2006-01-17 18:15:49 +00:00
Volker Ruppert
626149f6f2
- fixes for gcc 4.0 (grabbed from Debian unstable)
2006-01-17 17:15:29 +00:00
Stanislav Shwartsman
7739b7c8f2
Added description to BX_CPU_C defintion in main.cc
2006-01-17 08:02:25 +00:00
Stanislav Shwartsman
c92aba3776
Using back tracking in CVS I found the reason why CVS sources not compiled with configure --enable-debugger configuration (reported by Brendan).
...
Again it is andom change which cause to debugger not to compile ;(
This is definitelly GCC bug !
2006-01-17 07:58:11 +00:00
Stanislav Shwartsman
d4e4499684
Update CHANGES
2006-01-16 19:55:44 +00:00
Stanislav Shwartsman
cff3464bc3
More update for instrumentation examples (x86-64 support)
2006-01-16 19:53:11 +00:00
Stanislav Shwartsman
2ff8b93f10
Update instrumentation
...
- x86-64 update
- fixed several compilation erros
- prepared for 'determine cpu count from .bocshrc' patch
- now it works ;)
2006-01-16 19:47:18 +00:00
Stanislav Shwartsman
7bf51e48db
Print FS_MSR_BASE and GS_MSR_BASE to debug registers dump (requested in bug report [ 1406387 ] JMP instruction should display absolute address)
...
Fixed fetch mode mask initialization (bug report 1400027 Boundary instruction cache error for uninitialized memory)
For safety only - everytime when changing CS register update fetch mode mask.
Actually it need to be updated everytime when there is a chance for execute mode change or 16/32 bit mode change.
2006-01-16 19:22:28 +00:00
Volker Ruppert
f31e278df3
- added install location and link to local README.txt
...
- show "Remove" button only in the Windows software list
2006-01-15 21:00:50 +00:00
Stanislav Shwartsman
3dbf0f3b97
Bochs supports only ONE memory address space anyway so the code sould be optimized for this case a little (mainly in SMP configuration)
2006-01-15 19:35:39 +00:00
Stanislav Shwartsman
504081f282
dos2unix, add licence header
2006-01-15 19:34:03 +00:00
Stanislav Shwartsman
b59bb67ed1
Update CHANGES
2006-01-15 18:17:19 +00:00
Stanislav Shwartsman
76ac076d52
Print R8-R15 in registers dump
2006-01-15 18:14:16 +00:00
Stanislav Shwartsman
a67c1cb027
dos2unix fix
2006-01-15 17:57:48 +00:00
Stanislav Shwartsman
6913d6f152
indent change
2006-01-15 17:56:36 +00:00
Stanislav Shwartsman
5570346246
reorganize debugger code
2006-01-15 17:55:25 +00:00
Stanislav Shwartsman
652ce3c0dc
Fix for bug report:
...
bochs-Bugs-1406383 ] Local APIC TPR is ignored due to signed/unsigned mismatch
2006-01-15 17:38:40 +00:00
Volker Ruppert
fb7adb9e92
- changes updated
2006-01-15 16:35:53 +00:00
Volker Ruppert
aa0d8b1d0c
- improved developer doc based on document written by Peter "Firefly" Lund
...
- minor spelling fixes
2006-01-15 12:04:02 +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
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
Stanislav Shwartsman
a74b63eb3d
Allow writing PCE to CR4
2006-01-13 11:11:29 +00:00
Stanislav Shwartsman
0211f2260c
Fix configure checks
2006-01-13 11:10:29 +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
149a830934
Remove error for SMP config, just silently disable FAST_CALL optimization for SMF disabled
2006-01-11 19:08:10 +00:00
Stanislav Shwartsman
d7d2de421f
Remove code duplication in CPU and memory objects initialization
2006-01-11 18:22:12 +00:00
Stanislav Shwartsman
96c074f87b
Fix MP table generated by Bochs
2006-01-10 18:33:27 +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
Stanislav Shwartsman
89e3472178
Fix validate_seg_regs check
2006-01-09 19:34:52 +00:00
Volker Ruppert
22187086d7
- new user shortcut "bksl" (backslash)
2006-01-09 18:37:29 +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
2795b66f28
- missing end tag for table entry added
...
- some SMP-related updates
2006-01-08 19:15:56 +00:00