Volker Ruppert
401321d500
Added symbol BX_NULL_PREFIX and fixed textconfig log options table.
...
If log module name not specified, use device log prefix converted to lower
case as the name and simplified setting up some short prefixes.
2013-12-31 09:20:08 +00:00
Volker Ruppert
c6dd095321
Added new method for the init of the readonly registers in the PCI config space
...
and cleaned up the PCI devices code.
2013-12-30 22:39:21 +00:00
Volker Ruppert
eced151cde
Use data conversion macros based on bx_bswap* and remove temporary code
2013-12-30 17:13:18 +00:00
Volker Ruppert
ae659d14fd
Changed initial value of the parameter "enabled" to 1 for network, sound and
...
usb device plugins. Loading the plugin means that the user wants to enable it.
Disabling the device on the command line and in the config interface is still
possible.
2013-12-30 14:37:04 +00:00
Volker Ruppert
e5ed796acf
Some work on the Voodoo emulation
...
- destructor: free memory only when initialized
- parameter 'enabled' must be initialized with 1 (TODO: fix other plugins)
- PCI register fixes (Voodoo2 now detected, but not usable)
2013-12-30 12:50:34 +00:00
Volker Ruppert
59b07e4b61
The plugin version now uses the native DLL handling code for all Windows ports.
...
Skip configure checks for libtool / ltdl and no longer link with mingwex.
2013-12-29 20:04:44 +00:00
Volker Ruppert
a767ec0b1b
The plugin version now uses the native DLL handling code for all Windows ports.
...
Skip configure checks for libtool / ltdl and no longer link with mingwex.
2013-12-29 20:04:16 +00:00
Volker Ruppert
443f04703c
Added / modified device log prefixes
2013-12-29 12:56:52 +00:00
Volker Ruppert
fc4538a131
Some fixes / improvements in logging system
...
- fixed pluginlog init in non-plugin mode
- reduced logprefix length limit and use it for the related string parameter
- increase the device prefix size to 6
- TODO: change some more device prefixes
2013-12-29 10:41:11 +00:00
Volker Ruppert
acc4c6c2c8
Some fixes and cleanups
...
- in wx we had two logfunctions for the siminterface (removed duplicate init)
- renamed siminterface prefix to "SIM"
- moved variable "pluginlog" to the plugin interface
- fixed / removed some forward declarations
2013-12-29 08:45:28 +00:00
Volker Ruppert
2666953de9
Modified win32 resource files based on patch.mingw-resources. We already use
...
forward slashes partly in the rc files without errors in MSVC, so we should
use it for all include paths to fix MinGW warnings. Removed original patch.
2013-12-28 15:11:13 +00:00
Stanislav Shwartsman
350e3544ae
fixed #UD condition for multi-byte prefix opcodes VEX/EVEX/XOP
2013-12-28 12:57:21 +00:00
Volker Ruppert
98545762b6
Keyboard code cleanup
...
- BX_CPU_LEVEL < 3 doesn't exist in Bochs
- verbose debug output removed
- tab2space and minor coding style changes
2013-12-28 12:00:19 +00:00
Volker Ruppert
a208a86aa0
Mention the now working bus mouse in the docs
2013-12-28 08:41:57 +00:00
Volker Ruppert
59faa4d3ae
Rewrite of the MS busmouse support to make it work with DOS and Win95 drivers.
...
The device exists for some years now, but it was never functional and it is not
yet mentioned in the docs. After studying Linux kernel sources and a lot of
tests it is now usable. A configure option doesn't exist, so it must be enabled
in config.h. At runtime it is only loaded if the mouse type is set to 'bus'.
2013-12-27 17:47:44 +00:00
Volker Ruppert
49c639e00d
Removed obsolete stuff from the gui code
2013-12-26 20:51:46 +00:00
Volker Ruppert
bd89ed053d
Some work on the wx toolbar
...
- disable most of the buttons if no simulation is running
- save/restore button calls restore function at configuration time
- disable code related to the config button
2013-12-26 08:37:51 +00:00
Volker Ruppert
a603fe4471
Added mouse wheel support to the rfb and vncsrv guis
2013-12-25 09:48:53 +00:00
Volker Ruppert
bb90270b8d
Use WIN32 thread functions for Cygwin, too.
2013-12-24 22:43:49 +00:00
Volker Ruppert
1ce8d5de2f
Several wxWidgets fixes and improvements
...
- send wheel data to the PS/2 mouse emulation (wx mouse wheel support works now)
- show selected mouse toggle method in toolbar help and message box
- added capability to start the simulation with the power button
2013-12-24 17:18:46 +00:00
Stanislav Shwartsman
e6af0565bd
convert BX_INFO message to BX_DEBUG
2013-12-24 14:59:00 +00:00
Volker Ruppert
67b3157e13
Domumentation updates and cleanups
2013-12-24 08:55:07 +00:00
Volker Ruppert
2aa810012a
Some work on the Voodoo Graphics emulation (Voodoo2 still not detected)
...
- assign the correct register access map for the Voodoo2 model
- improved debug and error message output
- minor coding style changes
2013-12-23 21:58:29 +00:00
Volker Ruppert
8f5408e653
Fixed some gcc 4.8.1 warnings
2013-12-23 11:31:32 +00:00
Stanislav Shwartsman
e902a83a60
fixed segfault in AVX emulation
2013-12-22 21:16:10 +00:00
Stanislav Shwartsman
ada455c4b9
just coding style
2013-12-22 20:48:26 +00:00
Stanislav Shwartsman
52c80539ef
fixed uninitialzied variable which caused unpredictable behavior in some cases (randomly ignoring params during loading .bochsrc)
2013-12-22 20:47:30 +00:00
Stanislav Shwartsman
e200d04ad5
implemented two AVX512 unsigned CVT instructions
2013-12-22 19:53:03 +00:00
Volker Ruppert
ef7e02c12c
Added bochsrc option for the Voodoo Graphics emulation. Some code for Voodoo2
...
model exists, but needs to be verified.
2013-12-22 19:50:29 +00:00
Volker Ruppert
a1f8794654
Fixed compilation with Cygwin
...
- reverted changes in SVN revision 10985 (-DWIN32 now works again with Cygwin)
- don't link Bochs.exe or RFB gui with wsock32.dll in the Cygwin case
- the win32 gui doesn't need to be linked wsock32.dll at all
2013-12-22 12:17:44 +00:00
Volker Ruppert
e3862e34e5
Fixed compilation with Cygwin
...
- reverted changes in SVN revision 10985 (-DWIN32 now works again with Cygwin)
- don't link Bochs.exe or RFB gui with wsock32.dll in the Cygwin case
- the win32 gui doesn't need to be linked wsock32.dll at all
2013-12-22 12:17:28 +00:00
Volker Ruppert
3d93ca1b64
Fixed panic when using multiple CD-ROM drives (now using name cdrom1, cdrom2,...)
2013-12-22 08:11:35 +00:00
Stanislav Shwartsman
776cabf4fe
move canonical check of high part of page split access to another function to fix code duplication
2013-12-21 21:56:55 +00:00
Stanislav Shwartsman
543b6c8254
compilation fix
2013-12-21 21:08:35 +00:00
Stanislav Shwartsman
979e10b725
added simd_int.h functions for future use
2013-12-21 20:46:27 +00:00
Volker Ruppert
11571f0ecf
Improvements and cleanups for the textconfig runtime menu
...
- added menu item for saving configuration
- use existing cdrom runtime menu instead of hardcoded items
- some code cleanups after cdrom option changes
2013-12-20 17:53:00 +00:00
Volker Ruppert
85f548250e
Added memsize mask to simplify code
2013-12-18 17:55:32 +00:00
Stanislav Shwartsman
8c3309bac0
regen dependencies for CPU sources
2013-12-17 21:15:15 +00:00
Stanislav Shwartsman
e30e66e481
insertf64x4 decode fix
2013-12-17 21:00:19 +00:00
Stanislav Shwartsman
da0cec4300
implemented AVX-512 VINSERTF*/VINSERTI* opcodes
2013-12-17 20:38:19 +00:00
Volker Ruppert
8914ff6e37
Renamed "ltdl.h" to "ltdl-bochs.h" to avoid conflicts with the include file
...
that is a part of the libtool package. Updated Makefile dependencies.
TODO: check if we can get rid of the ltdl*.* files (this would be possible if
the ltdl library is always available if libtool is present).
2013-12-17 19:58:43 +00:00
Volker Ruppert
58019a1649
Renamed "ltdl.h" to "ltdl-bochs.h" to avoid conflicts with the include file
...
that is a part of the libtool package. Updated Makefile dependencies.
TODO: check if we can get rid of the ltdl*.* files (this would be possible if
the ltdl library is always available if libtool is present).
2013-12-17 19:57:40 +00:00
Stanislav Shwartsman
fc2cc377f8
fixes for AVX-512
2013-12-17 19:16:08 +00:00
Stanislav Shwartsman
5b2779ee03
mention SIMD .bochsrc option in CHANGES
2013-12-17 17:21:52 +00:00
Volker Ruppert
517e6d4aef
Removed items that we have completely done and updated others
2013-12-17 17:19:53 +00:00
Stanislav Shwartsman
9b5cd124fb
update CHANGES to 16th Dec, 2013
2013-12-17 17:15:45 +00:00
Stanislav Shwartsman
734d1c7af8
implemented VFIXUPIMM AVX-512 opcodes
2013-12-17 16:44:46 +00:00
Volker Ruppert
dc455982f0
Added list of changes after release Bochs 2.6.2 (no release plans yet)
2013-12-16 23:03:48 +00:00
Volker Ruppert
5229b72d32
SVN repository cleanup: removed non-release tags and merged branches up to Bochs 1.3
...
Some SVN-related documentation fixes and updates
2013-12-16 17:53:02 +00:00
Stanislav Shwartsman
cdbc8a3f6f
remove accidentally committed code
2013-12-15 20:50:02 +00:00
Stanislav Shwartsman
18f6a67d9d
bugfix
2013-12-15 20:33:24 +00:00
Stanislav Shwartsman
51d0161148
implement few AVX-512 unsigned convert instructions
2013-12-15 20:07:57 +00:00
Stanislav Shwartsman
d3107f9f25
remove statement with no effect
2013-12-15 19:58:15 +00:00
Stanislav Shwartsman
7f98bbaea0
fix for float32_to_uint32_round_to_zero
2013-12-15 19:45:23 +00:00
Stanislav Shwartsman
8707e0626d
starting to implement some AVX512 convert opcodes
2013-12-15 19:20:03 +00:00
Volker Ruppert
acd0fe11b5
Added volume control support per channel for stereo samples
...
TODO: do the same for mono samples (requires data doubling in emulation)
2013-12-15 17:09:18 +00:00
Volker Ruppert
15ab8d32c2
SVN repository cleanup: removed all non-release tags before Bochs 1.1.2.
...
User doc: fixed initial release tag.
2013-12-15 14:11:17 +00:00
Volker Ruppert
2b5d6bc2a3
Updated release tag table and added corresponding SVN revision
2013-12-15 09:52:01 +00:00
Volker Ruppert
ea7997210d
Some work on the wave volume control support
...
- ES1370: implemented CODEC registers (AK4531 mixer) and wave volume control
- Moved wave volume application code to new method pcm_apply_volume() and use
it for both soundcards
- TODO: stereo support
2013-12-14 17:43:12 +00:00
Stanislav Shwartsman
a9b4513b8a
insert/extractps do not support EVEX.b
2013-12-14 12:48:26 +00:00
Stanislav Shwartsman
cbcf30e911
implement EVEX SAE (suppress all exceptions) contol, implement AVX512 INSTERT/EXTRACTPS opcodes
2013-12-14 12:45:06 +00:00
Volker Ruppert
fe3196e260
Added basic volume control support for wave output
...
TODO #1 : add stereo support (volume control per channel)
TODO #2 : add volume control for the ES1370
2013-12-13 15:58:27 +00:00
Stanislav Shwartsman
15756a31cd
implemented EVEX MOVD/MOVQ opcodes, fixes in softfloat
2013-12-13 12:05:47 +00:00
Stanislav Shwartsman
374b8f615a
softloat: implemented some more unsigned integer vs float conversions
2013-12-12 21:00:59 +00:00
Stanislav Shwartsman
9c179bade8
fixed evex.b validation condition
2013-12-10 21:48:17 +00:00
Stanislav Shwartsman
258a60f3fa
Implemented AVX512 EXPAND/COMPRESS instructions
...
Fixed memory access size for AVX shift instructions with shift count in memory
Do not allow to encode with EVEX.b instructions which do not support implicit broadcast
softfloat: prepare float32/64 to uint32 conversion functions
2013-12-10 21:09:46 +00:00
Stanislav Shwartsman
69c798bf29
fixed compilation warnings from gcc 4.8.1
2013-12-10 21:08:14 +00:00
Volker Ruppert
ba748560d6
Added basic scroll window support for wx ParamDialog
2013-12-10 19:34:56 +00:00
Stanislav Shwartsman
9a4d947a28
implemented avx-512 cvt*2si instructions
2013-12-09 20:52:39 +00:00
Stanislav Shwartsman
ccb1d86d6e
code cleanups
2013-12-09 20:36:24 +00:00
Volker Ruppert
f534e8f6f6
win32ParamDialog: added separate functions for handling child windows and buttons
...
floppy dialog: update controls after setting path with the browse button
2013-12-09 20:23:23 +00:00
Stanislav Shwartsman
d20c81417c
Implemented VSHUFF32x4/64x2, VSHUFI32x4/64x2 AVX512 instructions
...
Implemented AVX512 blend instructions
Do not allow setting of EVEX.b in reg form when no floating point exceptions could be generated by instruction
2013-12-09 19:09:37 +00:00
Stanislav Shwartsman
4c78ca8c1c
implemented mask load for most of the load+op instructions. all take care for instructions which do not support maksing of memory exceptions (shuffle and permutes)
2013-12-08 21:54:59 +00:00
Volker Ruppert
eebeb7a06a
Replaced floppy dialog by a new implementation based on win32ParamDialog
...
- DONE: create image feature
- DONE: OK button forces a media change
- TODO: set status and media type after browse button
win32ParamDialog changes:
- changed base IDs for dialog child items
- set enum and bool parameters only if modified
- several changes for the floppy dialog
2013-12-08 21:22:50 +00:00
Stanislav Shwartsman
8836d1aa2d
added mask destination to disasm
2013-12-08 17:01:30 +00:00
Volker Ruppert
f008f0989f
Simplified floppy parameter handling
...
wx floppy dialog now forces a media change by clicking OK (same as win32dialog)
wxdialog.cc: one more whitespace cleanup
wxdialog.h: removed unused members
2013-12-08 11:32:13 +00:00
Volker Ruppert
a3de279d3a
Floppy runtime config dialog parameter handling rewritten
...
TODO: use modified version of win32ParamDialog for floppy config (similar to wx)
2013-12-07 22:58:41 +00:00
Stanislav Shwartsman
0621f2a983
extend movddup/sldup/shdup to 512-bit vlen
2013-12-07 20:58:32 +00:00
Stanislav Shwartsman
d681bd868f
fixed typo bug in xmm accessor definition
2013-12-07 20:48:41 +00:00
Stanislav Shwartsman
1e474ede51
fixed corrupted fetchdecode from svn rev12001
2013-12-07 20:30:27 +00:00
Stanislav Shwartsman
7ed017a56d
implemented avx-512 gather/scatter
2013-12-07 20:15:56 +00:00
Stanislav Shwartsman
3154c3682e
fixed decoding of RDRAND instructions
2013-12-07 07:17:04 +00:00
Stanislav Shwartsman
8c3d0aed7a
added #UD condition for wrong EVEX.LL setting
2013-12-05 20:40:53 +00:00
Stanislav Shwartsman
085161ca49
more debugger fixes
2013-12-05 19:26:40 +00:00
Stanislav Shwartsman
ca2793ac76
Debugger: fixed param tree access to 64-bit variables (need to use get64() instead of get())
...
Debugger: if AVX-512 if not supported by current configuration do not print high256 of vector registers and zmm15..zmm31 in AVX command
Implement VBROADCASTF64x4, VBROADCASTF32x4, VBROADCASTFI64x4, VBROADCASTI32x4 AVX-512 instructions
Fetchdecode optimizations and bugfixes
2013-12-05 19:17:16 +00:00
Stanislav Shwartsman
cfc8a0ad38
get rid of BX_MEM_NO_VVV decoding form (by splitting just two opcode groups using Split11B)
2013-12-04 20:15:22 +00:00
Stanislav Shwartsman
401caf168d
Implemented VPERMILPS/PD AVX512 instructions
...
Implemented VPTERNLOGD/Q AVX512 instructions
Implemented VPBROADCASTD/Q, VPBROADCASTPS/PD AVX512 instructions
Implemented VTEST* AVX512 instructions
Bugfixes in EVEX decoding tables
2013-12-04 18:30:44 +00:00
Volker Ruppert
0c2cb0536a
regenerated after ssize_t change
2013-12-04 17:05:49 +00:00
Volker Ruppert
fb70da3e3e
Added check for type ssize_t
...
List the supported ethernet modules
2013-12-04 17:04:15 +00:00
Stanislav Shwartsman
a5153c348f
fixed bugs in vcmp* avx512 opcodes
2013-12-03 22:16:22 +00:00
Stanislav Shwartsman
ccdd21a76b
small diet to the avx-512 files - remove code duplication
2013-12-03 21:32:04 +00:00
Volker Ruppert
495dd21691
Added wxWidgets mouse wheel support
2013-12-03 20:08:30 +00:00
Stanislav Shwartsman
18922fa1a3
added sanity check assert
2013-12-03 17:41:13 +00:00
Stanislav Shwartsman
6d9b16e0f7
Implemented VCMPPS/PD/SS/SD AVX512 instructions
...
Implemented AVX512 shift/rotate instructions
2013-12-03 15:44:23 +00:00
Stanislav Shwartsman
ba505677d2
bugfix for avx-512 masked load with mask all-zero
2013-12-02 20:46:26 +00:00
Stanislav Shwartsman
a85a9081b7
use shorter opcode names in the debug prints (skip the BX_IA_ prefix)
2013-12-02 20:06:59 +00:00
Stanislav Shwartsman
a421c921d0
fixed typo in configure script
2013-12-02 19:57:49 +00:00
Stanislav Shwartsman
0683b00535
implemented more avx-512 opcodes
2013-12-02 19:16:48 +00:00
Stanislav Shwartsman
79456eb7e1
Implemented VPCMP* AVX512 instructions
...
Implemented VMOVNTPS/PD/DQ AVX512 instructions
Implemented VMOVNTDQA AVX512 instruction
Bugfixes for AVX-512
2013-12-02 18:05:18 +00:00
Stanislav Shwartsman
b78489628d
make use of new accessor
2013-12-01 22:21:55 +00:00
Stanislav Shwartsman
287523e19a
add dedicated 8bit low register accessor
2013-12-01 22:18:38 +00:00
Stanislav Shwartsman
4aa5199d0c
added missing decoding for avx-512 fma flavor
2013-12-01 21:50:19 +00:00
Stanislav Shwartsman
4f158aef5f
Fixed 8-bit opmask read
...
Added opmask printout for AVX dump in dbg_main.cc
2013-12-01 20:50:01 +00:00
Stanislav Shwartsman
c7b03eb00b
implement avx-512 vpabsd/q instructions
2013-12-01 20:10:39 +00:00
Stanislav Shwartsman
2b83146ae2
more avx-512 instructions implemented
2013-12-01 19:39:18 +00:00
Volker Ruppert
e141fbf848
Several parameter-related improvements in the serial and parallel code
...
- Open output file on demand (failure causes BX_ERROR)
- Simplified bochsrc options cleanup
- serial: improved parameter dependencies
2013-12-01 18:26:37 +00:00
Volker Ruppert
73b2402538
Fixed some runtime config issues
...
- es1370: fixed wave file parameter name
- wx cdrom dialog: use the first item of the cdrom runtime parameter list
- wx ParamDialog: always pause the simulation thread while setting parameters
- wx ParamDialog: call SIM->update_runtime_options() before continuing simulation
2013-12-01 16:02:31 +00:00
Stanislav Shwartsman
37d6403681
typo fix 2
2013-11-30 19:57:03 +00:00
Stanislav Shwartsman
32c91015a7
typo fix
2013-11-30 19:55:10 +00:00
Stanislav Shwartsman
fb2521a1fe
implemented avx-512 vsqrt instructions
2013-11-30 19:33:08 +00:00
Stanislav Shwartsman
7db6c647b0
fixed memory access decoding in presence of evex prefix
2013-11-30 18:51:27 +00:00
Stanislav Shwartsman
ac82b38736
fixed typos causing compilation err
2013-11-30 18:39:22 +00:00
Stanislav Shwartsman
d082c6a0f9
implemented avx-512 masked load instructions
2013-11-30 18:37:25 +00:00
Stanislav Shwartsman
f76c85dca9
fixed 512-bit VL encoding in EVEX
2013-11-29 21:05:29 +00:00
Stanislav Shwartsman
b820b7af57
fixed zmm reg name in disasm
2013-11-29 20:52:34 +00:00
Stanislav Shwartsman
c3b666d4ed
fixed zmm reg name in disasm
2013-11-29 20:49:20 +00:00
Stanislav Shwartsman
61deec2689
fixed zmm reg name in disasm
2013-11-29 20:48:31 +00:00
Stanislav Shwartsman
11f082af82
Implemented VMOVDQU32/VMOVDQA32/VMOVDQU64/VMOVDQA64 AVX512 instructions
...
Implemented VCOMISS/VCOMISD/VUCOMISS/VUCOMISD AVX512 instructions
Fix vector length values for AVX-512 (512-bit vector should have length 4)
support mis-alignment #GP exception for VMOVAPS/PD/DQA32/DQ64 AVX512 instructions
move AVX512 load/store and register move operations into dedicated file avx512_move.cc
2013-11-29 20:22:31 +00:00
Stanislav Shwartsman
031583dbd9
moved avx masked load/store operations to separate functions
2013-11-29 18:15:48 +00:00
Volker Ruppert
7f3552614d
Some wxWidgets fixes
...
- Fixed ParamDialog::isGeneratediD() (browse button of last item could fail)
- Disable menu items without runtime options
- Partial whitespace cleanup
2013-11-29 16:37:50 +00:00
Stanislav Shwartsman
21bb1363ac
avx512 move functions introduced
2013-11-29 11:10:34 +00:00
Stanislav Shwartsman
1a735e9fdf
bugfix for decoding segment prefix with EVEX
2013-11-28 21:28:50 +00:00
Stanislav Shwartsman
4680c22d0e
implemented avx-512 masked register moves
2013-11-28 20:58:31 +00:00
Volker Ruppert
3a22a7de61
Sound runtime options support completed
...
- SB16: log file name now also available as a runtime option
- SB16: changed order of the runtime options and minor other changes
- ES1370: changed the "wavemode" parameter type to bx_param_enum_c and set up
more accurate dependencies (similar to SB16)
- ES1370: wave mode and file name now available as a runtime option
2013-11-28 20:47:34 +00:00
Volker Ruppert
0be25b75fe
Fixed some runtime dialog issues
...
- Show disabled runtime parameters
- Don't do anything if a dependent parameter's control ID is not found
- process dependent lists only for a few control notification messages
- Added second try to find the control ID for a parameter (browse all lists)
2013-11-26 20:09:01 +00:00
Stanislav Shwartsman
b7f950aa5c
more coding for avx512
2013-11-26 19:22:31 +00:00
Volker Ruppert
84b088c0c0
Revert a change I did only for testing
2013-11-25 21:14:26 +00:00
Volker Ruppert
f3a6fbd235
Simplified setup of special runtime menus / dialogs
...
- If the runtime flag of a bx_list_c object is set, all it's items are set up
as runtime options.
- Set the runtime parameter for all top-level runtime-only lists. Setting up
each single parameter is no longer needed.
2013-11-25 21:07:39 +00:00
Stanislav Shwartsman
1beeb33b51
implemented avx-512 fma instructions (in seperate file), fixes in avx-512 decoding tables
2013-11-25 20:42:24 +00:00
Volker Ruppert
375b033117
wxWidgets keyboard / mouse fixes:
...
- Release mouse capture on simulation exit
- Don't handle keyboard / mouse events if the simulation is not running
2013-11-24 19:36:47 +00:00
Volker Ruppert
4edfc93ac2
- Added capability to change the wave output mode at runtime
...
- Always initialize the lowlevel sound driver (for wave input / recording)
- Wave input (recording) is now independent from the wave output mode
- Changed the "wavemode" parameter type to bx_param_enum_c and set up more
accurate dependencies
- Minor related changes
2013-11-24 14:04:34 +00:00
Volker Ruppert
eed48eb69e
- Added capability to change the midi output mode at runtime
...
- Some other related changes and cleanups
2013-11-22 18:28:21 +00:00
Volker Ruppert
4ea9e6d57e
- Added capability to change the midi output device at runtime.
...
- Moved SB16 runtime options to a separate submenu
2013-11-20 21:37:43 +00:00
Stanislav Shwartsman
eb9778220d
fixed decoding of 0f3a opcode map
2013-11-20 20:46:03 +00:00
Stanislav Shwartsman
8602804086
another fix for commands debugger parser
2013-11-20 18:40:10 +00:00
Stanislav Shwartsman
b553591bb4
fixed compilation error under AVX
2013-11-20 17:33:57 +00:00
Stanislav Shwartsman
acbf278346
allow device names with numbers in info device without quotes
2013-11-20 17:21:56 +00:00
Stanislav Shwartsman
ee40564a5f
remove unneeded vga keyword from lexer
2013-11-20 16:56:26 +00:00
Stanislav Shwartsman
7f8429c643
fix code duplication in fetchdecode modules
2013-11-20 16:00:24 +00:00
Stanislav Shwartsman
ab87549b6b
Updates to Bochs debugger:
...
AVX command split into two: YMM command and ZMM command for AVX-256 and AVX-512.
Later new command AVX will be added whch will print complete AVX state according to what is defined currently, including OPMASK registers
info device <name>
and
info device <name> <string>
could be also used now without having to include device name in quotes as "name".
old style "qouted" option also still working
added missing info cpu command to the help
2013-11-19 21:53:55 +00:00
Volker Ruppert
bfc9748600
- Added capability to change the midi and wave output files at runtime.
...
- Some related fixes and cleanups
2013-11-19 19:04:21 +00:00
Volker Ruppert
081f51d316
Regenerated after Makefile changes
2013-11-18 16:58:00 +00:00
Volker Ruppert
aa0554e5d9
- Build niclist.exe on Windows even if plugins are enabled
...
- Some fixes for the install_win32 target
- Documentation updates
2013-11-18 16:49:56 +00:00
Volker Ruppert
299cec4907
Calculate VGA text cursor blink counter based on default frequency 1.875 Hz.
2013-11-16 12:10:28 +00:00
Volker Ruppert
df1a3158ec
Added full support for the LTDL_LIBRARY_PATH with MSVC plugins. Using the
...
semicolon as item separator similar to ltdl. TODO: make the MSVC plugin
handling work with the other win32 ports.
Minor cleanups in the plugin code.
2013-11-16 11:24:51 +00:00
Volker Ruppert
fc6b64c1b5
Added minimal support for LTDL_LIBRARY_PATH with MSVC plugins. Only one path
...
is supported for now (TODO: add support for a path list similar to ltdl).
Fixed documentation for LTDL_LIBRARY_PATH (Windows path separator).
2013-11-15 19:14:31 +00:00
Volker Ruppert
c64dceadb4
Fixed MIDI output to file and some minor changes
2013-11-14 18:11:23 +00:00
Volker Ruppert
d75a04b48d
Fixed segfault when writing to MIDI file.
2013-11-12 21:45:49 +00:00
Volker Ruppert
dfae141275
Added capability to specify the ID of the MIDI device to use. If not specified,
...
the default MIDI mapper will be used.
2013-11-11 20:44:38 +00:00
Stanislav Shwartsman
bcd83998a9
fixed function prototype mismatch resulting in compile err
2013-11-11 18:14:10 +00:00
Stanislav Shwartsman
9b22ba7edf
softfloat: added float to uint64 conversion operations (based on QEMU patch by Tom Musta)
2013-11-10 19:08:12 +00:00
Stanislav Shwartsman
f66a49a570
fixed some msdev warnings
2013-11-10 17:36:13 +00:00
Volker Ruppert
2756931a40
regenerated after gcc 4.8 plugin fix
2013-11-10 17:26:25 +00:00
Volker Ruppert
d281d743e9
Fixed plugins compilation with gcc 4.8.1
2013-11-10 17:00:21 +00:00
Volker Ruppert
e228219474
regenerated after cdrom changes
2013-11-10 11:22:23 +00:00
Volker Ruppert
9554a2133e
Always enable the portable ISO image file support. The option --enable-cdrom now
...
only controls the presence of platform-specific code to access CDROM/DVD devices
2013-11-10 11:14:42 +00:00
Stanislav Shwartsman
3be7e5884b
added lock prefix used info into bx_Instriction_c and use it in disasm
2013-11-08 21:43:21 +00:00
Volker Ruppert
b9944b43b5
Some small fixes
...
- bochs.h: fixed gcc 4.8 warning
- config.h.in: fixed newline
- extplugin.h: fixed VS2008Ex plugins compilation
- gui.cc: fixed tooltip
2013-11-07 19:38:23 +00:00
Volker Ruppert
b1d4a96983
Rewrite of the lowlevel cdrom code
...
- class cdrom_base_c now provides portable ISO image access methods
- platform specific classes implement access to cdrom/dvd devices
2013-11-06 11:15:22 +00:00
Volker Ruppert
b452803be5
Preparing lowlevel cdrom rewrite
...
- use #if BX_SUPPORT_CDROM instead of #ifdef LOWLEVEL_CDROM
- devices with cdrom support now use the base class cdrom_base_c
- cdrom count variable moved to cdrom.cc
- cdrom_misc.cc: don't use ioctl's for ISO files
2013-11-05 18:06:39 +00:00
Volker Ruppert
9e43d90ce6
Added disk image info mode to determine the image format, geometry and size
2013-11-03 16:13:35 +00:00
Volker Ruppert
c2b1d9119d
Added VMDK version 4 disk image creation support (ported from Qemu).
...
The 'vmware4' mode now also supported as conversion target and for resize.
2013-11-03 07:41:29 +00:00
Volker Ruppert
e29957cca2
Removed 'delete' (-d) option and added new 'backup' (-b) option.
...
In convert/resize mode a backup can be created if the new file name
is not specified or the same as the source file name. In commit mode
both base image and redolog file are affected by the backup switch.
Added Linux specific file copy code using '/bin/cp'.
2013-11-02 15:58:59 +00:00
Volker Ruppert
f8ea396a2c
Several fixes for compiling Bochs successfully in Cygwin64
2013-11-01 18:19:52 +00:00
Volker Ruppert
5b9d937cc1
Make sure winsock.h is included in serial.cc and eth_win32.cc
...
Including winsock.h not needed in pc_system.cc
Don't specify architecture in gcc 4.7+ example
2013-11-01 16:26:59 +00:00
Volker Ruppert
57272ac32e
Added sanity checks to the vmware4 and vvfat mode to avoid data corruption.
...
Some compilers need special options to pack structures correctly.
Added example for gcc 4.7+ on Windows to shortcut script.
2013-11-01 11:34:51 +00:00
Volker Ruppert
635774e1da
Fixed fat_datetime() on Windows to take account of the daylight savings time.
...
Show expected modification date/time in case of a panic.
2013-10-29 20:52:38 +00:00
Volker Ruppert
30a79f7ab8
regenerated after bximage fixes
2013-10-28 20:44:09 +00:00
Volker Ruppert
08b66534aa
bximage fixes for compiling with VS2008Ex DLL plugins
2013-10-28 20:31:34 +00:00
Volker Ruppert
2c779f60da
bximage convert / resize: show source disk image mode
...
hdimage undoable / volatile: log base disk image mode
vmware4: fixed 'cylinders' calculation
2013-10-27 19:23:59 +00:00
Volker Ruppert
7f19435887
Fixed some gcc 4.8.1 warnings
2013-10-27 15:13:19 +00:00
Volker Ruppert
66b311a8a6
Some work on the new bximage utility
...
- added support to use 'concat' and 'dll' mode images as convert source.
A prefix ("concat:" or "dll:") must be added to the path since autodetection
doesn't work for these modes.
- create: fixed virtual disk size calculation based on C/H/S
- convert / resize (interactive mode): use original filename as the template for
the new one if not specified on the command line
2013-10-25 19:10:09 +00:00
Stanislav Shwartsman
4b03247287
fixed compilation error with vs2008
2013-10-25 05:36:10 +00:00
Volker Ruppert
b1d92bd976
Documentation updates for the new bximage utility
2013-10-24 17:35:22 +00:00
Stanislav Shwartsman
d9fc472ba7
Added VMEXIT instrumentation callback
...
Fixed possible RSP corruption in SMP mode - the speculative_rsp variable might be not reset properly
2013-10-23 21:18:19 +00:00
Volker Ruppert
1fb469e77f
Started user doc update for bximage
...
Added legacy bximage and manual page to installation
Fixed some warnings
2013-10-23 15:22:09 +00:00
Volker Ruppert
bce8268c6f
Added new redolog_t method commit() for the bximage commit mode, using the fast
...
algrithm of bxcommit.
2013-10-23 08:35:21 +00:00
Volker Ruppert
519b369f56
Removed obsolete ASPI cdrom access code for Win9x/ME
2013-10-22 19:46:46 +00:00
Volker Ruppert
70d91b179b
fixed bximage warnings in MSVC
...
check if size is specified for "quiet" resize
treat size values without suffix as megabytes
2013-10-22 19:26:42 +00:00
Stanislav Shwartsman
494d0ac821
Remove obsolete configure check (cygwin does not have this problem anymore)
...
Also Bochs doesn't use the math library functions!
2013-10-21 19:26:07 +00:00
Volker Ruppert
ce7f013ff2
bximage: manual page updates and minor code fixes
2013-10-21 18:26:00 +00:00
Volker Ruppert
13fde0c2d5
- updated VS2008 workspace files after adding new bximage utility
2013-10-20 21:25:01 +00:00
Stanislav Shwartsman
d52adaa0ee
improve debug print to the log file which is printed in case of triple fault - tell VMX host/guest info
2013-10-20 16:41:34 +00:00
Stanislav Shwartsman
6f9400d4e8
TDM gcc under cygwin called x85_64_unknown-cygwin - fix configure script to support it
2013-10-20 14:48:38 +00:00
Volker Ruppert
a70d507bd2
Rename legacy bximage utility to 'bximage_old' and the new one to 'bximage'
...
TODO #1 : update MSVC workspaces and documentation
TODO #2 : remove legacy utilities bximage_old and bxcommit after next release
2013-10-20 10:43:01 +00:00
Volker Ruppert
0236e5f591
bximage_new: improvements for non-interactive (quiet) mode
...
- all operations now also working with one file name parameter
- suppress BX_INFO output in quiet mode
2013-10-20 07:30:36 +00:00
Volker Ruppert
4802fac2de
bximage_new: Added VPC dynamic type image creation support (ported from Qemu).
...
The 'vpc' mode now also supported as conversion target and for resize.
2013-10-19 21:16:10 +00:00
Volker Ruppert
2f134b5a0c
bximage_new: fixes for the non-interactive mode
2013-10-19 10:20:37 +00:00
Volker Ruppert
b5a57e7818
Some work on the new bximage utility
...
- added support to resize images (currently supported: flat, growing and sparse)
- added image file name check and renaming if necessary
- set minimum hard disk size to 10 MB
- vmware4: make header structure available for usage in bximage
2013-10-18 19:36:50 +00:00
Stanislav Shwartsman
7790e994eb
do not touch inline definition under C++ - added issue #1 in SF bug 1342
2013-10-17 19:22:16 +00:00
Volker Ruppert
05412afa18
bximage_new fixes and improvements
...
- fixed include order for win32
- added support to specify disk size in gigabytes on the command line
2013-10-17 16:00:26 +00:00
Volker Ruppert
a72135b56b
bximage_new on win32: added missing include file
2013-10-16 19:33:30 +00:00
Volker Ruppert
f923e5e4cf
bximage_new on win32
...
- fixed link failure on MSVC
- added win32 specific code for flat image creation
2013-10-16 18:55:43 +00:00
Stanislav Shwartsman
39f2f172b5
fixed PAUSE/NOP decoding bug in prev commit
2013-10-16 05:46:57 +00:00
Stanislav Shwartsman
8bcc8cf073
split PREFETCH opcode to Group16 for better disasm of bxInstruction_c
2013-10-15 21:21:28 +00:00
Volker Ruppert
88a1d3f6e7
bximage_new: hard disk image creation implemented (flat, growing, sparse)
...
TODO #1 : port win32 specific creation code for flat images from bximage.c
TODO #2 : add support to create (and convert to) vmware and vpc format images
2013-10-15 18:00:39 +00:00
Stanislav Shwartsman
59af88ea50
fixed memory bug found by gcc 4.8.1 warning
2013-10-15 17:28:06 +00:00
Stanislav Shwartsman
940c2a1c8e
fixes for disasm
2013-10-15 17:19:18 +00:00
Volker Ruppert
579dfc40df
bximage_new: implemented floppy image creation
2013-10-14 20:40:41 +00:00
Stanislav Shwartsman
e1012f1165
add vmcs revision id interface to CPUID class
2013-10-14 18:35:56 +00:00
Volker Ruppert
f3e10ea276
regenerated after adding support for the new bximage utility
2013-10-14 15:58:19 +00:00
Volker Ruppert
3d91e86ac1
bximage_new: added MSVC nmake support, added to default build system (targets
...
'all' and 'clean'), minor code changes
TODO: floppy / hard disk image creation, add to VS2008 workspace
TODO: finally remove the legacy utilities bximage and bxcommit
2013-10-14 15:57:10 +00:00
Volker Ruppert
f622a042c4
Added initial version of a new bximage utility written in C++ for image
...
creation, conversion and rodolog commit. Image creation support is not
present yet and the executable has not been added to standard compile yet.
TODO #1 : add floppy and hard disk image creation support (from bximage.c)
TODO #2 : implement support for conversion to vmware and vpc formats
TODO #3 : add MSVC (nmake and workspace) support
2013-10-13 20:30:51 +00:00
Volker Ruppert
6025e38333
preparing hdimage code for the the compilation with a new bximage utility
...
written in C++ supporting image creation, conversion and redolog commit
2013-10-13 14:33:55 +00:00
Stanislav Shwartsman
9fb7384e6b
finish sse tables cleanup in disasm and fetchdecode
2013-10-11 20:09:51 +00:00
Volker Ruppert
282a0983f6
small fix and cleanup
2013-10-11 18:08:35 +00:00
Stanislav Shwartsman
05d2bb2b9a
fixed typo bug caused spurios #UD on SSE shift
2013-10-11 06:20:42 +00:00
Stanislav Shwartsman
5fc491e9b6
resolve aliases after actually decoding base instr
2013-10-11 05:58:30 +00:00
Stanislav Shwartsman
34025e469f
resolve aliases after actually decoding base instr
2013-10-11 05:54:18 +00:00
Stanislav Shwartsman
582bf84bae
apply same optimization to disasm as well
2013-10-10 21:00:26 +00:00
Stanislav Shwartsman
46e36b463b
size-optimization for SSE opcode tables
2013-10-10 20:21:15 +00:00
Stanislav Shwartsman
2ec138f96e
Apply patch from developers mailing list:
...
bx_debug: allow expressions instead of numerals, where relevant
by Samium Gromoff
fix code duplication in fma handlers
2013-10-09 20:04:05 +00:00
Stanislav Shwartsman
0b2e533a55
more avx512 instructions done
2013-10-09 19:45:36 +00:00
Stanislav Shwartsman
d6d1c707df
implemented set of integer avx512 instructions
2013-10-08 19:44:52 +00:00
Stanislav Shwartsman
70230049fa
opmask_ok support in fetchdecode32.cc
2013-10-08 18:40:10 +00:00
Stanislav Shwartsman
09254eb474
avx512 implementation fixes and next steps
2013-10-08 18:31:18 +00:00
Volker Ruppert
c4412e95b9
bxcommit: added capability to commit undoable redolog to a growing mode base image
...
bximage: minor cleanups
TODO: write a new bximage utility in C++ and use the hdimage classes to create
and convert all image modes and to commit redologs to all base image modes.
2013-10-08 17:53:14 +00:00
Stanislav Shwartsman
8446685ba2
fixed FPU and MMX disasm
2013-10-07 20:55:43 +00:00
Stanislav Shwartsman
5724013e7d
updates to AVX512 decoding and CPUID
2013-10-07 20:39:34 +00:00
Stanislav Shwartsman
37a3a76cbb
optimize old disasm code
2013-10-07 19:23:19 +00:00
Stanislav Shwartsman
d68a7ca953
add option to skip mem datasize printing in disasm
2013-10-07 19:12:12 +00:00
Stanislav Shwartsman
cb0eee9456
disasm fixes
2013-10-07 19:02:53 +00:00
Stanislav Shwartsman
059769e2a6
disasm bug fixes
2013-10-06 20:42:13 +00:00
Stanislav Shwartsman
f0b917ca15
disasm fixes
2013-10-06 19:27:40 +00:00
Stanislav Shwartsman
e55611df21
disasm fixes
2013-10-06 19:04:52 +00:00
Stanislav Shwartsman
add8eea761
disasm bug fixes
2013-10-06 18:37:56 +00:00
Stanislav Shwartsman
f1f35a236c
disasm: Id form in 32-bit should be sign-extended to 64-bit
2013-10-06 18:10:58 +00:00
Stanislav Shwartsman
a392612b03
fixed compilation err in cpu-level=3 config
2013-10-06 18:01:25 +00:00
Volker Ruppert
ebdd3b4d38
slirp / vnet TFTP support: implemented timeout mechanism
2013-10-06 15:32:40 +00:00
Stanislav Shwartsman
e1512ccaf8
fixed warning under new MSDEV compiler
2013-10-05 19:35:00 +00:00
Stanislav Shwartsman
fd370a4d41
fixes in disasm, added example of using bxInstruction_c disasm into dbg_main.cc (commented out for now)
2013-10-05 19:32:09 +00:00
Stanislav Shwartsman
b1d703e47c
fixed compilation with x86-64 off
2013-10-05 18:51:28 +00:00
Stanislav Shwartsman
67bce7af97
fixed memref disasm
2013-10-05 11:00:31 +00:00
Stanislav Shwartsman
d4bfbffdbb
disasm fixes
2013-10-05 08:34:09 +00:00
Stanislav Shwartsman
c9a1f259cb
fixed compilation error in new disasm module under SMP config
2013-10-04 18:14:54 +00:00
Stanislav Shwartsman
5842d09434
rename call_far and ret_far opcodes to converge between two disasm modules
2013-10-04 17:47:52 +00:00
Stanislav Shwartsman
ba1249ed15
disasm fixes
2013-10-04 17:26:56 +00:00
Stanislav Shwartsman
85b0402668
fixes for disasm
2013-10-02 19:23:34 +00:00
Stanislav Shwartsman
8c60799e72
fix for new disasm interface
2013-10-01 20:17:21 +00:00
Stanislav Shwartsman
5331e8d4d3
rename disasm variable
2013-10-01 20:12:28 +00:00
Stanislav Shwartsman
e592f81209
updates to internal disasm
2013-10-01 18:47:55 +00:00
Stanislav Shwartsman
147d788022
few fixes in new disasm module
2013-09-30 20:16:52 +00:00
Stanislav Shwartsman
fd383435f0
- Initial code for bx_Instruction_c disassembler which (together with Bochs decoder) will replace Bochs disasm module someday (very soon).
...
The code already knows to disasm most of the opcodes with their operands.
- Split according to OSIZE opcodes RDFSBASE/WRFSBASE / RDGSBASE/WRGSBASE both for disasm and performance
- Minimize amount of opcode forms in ia_opcodes.h again.
For example Udq means the same as Wdq but with no memory form.
2013-09-30 19:01:42 +00:00
Volker Ruppert
a4b1c2a654
slirp / vnet: increased TFTP buffer size (max. file size 64 MB with blksize=1024)
2013-09-29 09:08:24 +00:00
Volker Ruppert
afa9226312
fixed and updated documentation for bochsrc option 'romimage'
2013-09-28 09:26:54 +00:00
Volker Ruppert
a8f1834c38
slirp / vnet TFTP support:
...
Detect and reply all supported TFTP extension options for both read and write
operations. Use 'blksize' value if smaller than buffer size.
TODO: increase buffer size, implement timeout mechanism
2013-09-28 08:56:54 +00:00
Volker Ruppert
4b59e6b884
slirp / vnet: added support for multiple TFTP sessions
...
slirp: fixed minimum eth packet size for builtin replies
2013-09-27 11:47:59 +00:00
Stanislav Shwartsman
01c0f07e4e
fixed compilation error under cygwin which defines WIN32
2013-09-26 19:51:30 +00:00
Stanislav Shwartsman
fa06b26c88
Make possible to deliver instruction name for disasm directly from bx_ia_opcode_name (some opcodes were renamed).
...
Fixed bug in stack optimization in 64-bit mode (should result in some speedup)
ia_opcode.h - eliminate some OP_M cases when they actually meant "value of specific type in the memory"
example: "MOVBE Md, Gd" actually means "MOVBE Ed, Gd"which just not have reg/reg form.
2013-09-26 18:54:32 +00:00
Stanislav Shwartsman
9bed769cdd
fixed typo in enable-evex option in configure script
2013-09-24 20:47:40 +00:00