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
Stanislav Shwartsman
839b841c38
added register type to register source information in decoder
2013-09-24 09:50:25 +00:00
Stanislav Shwartsman
ff79cbd596
Infrstructure change to support disasm of BxInstruction_c directly (without calling disasm)
...
The end goal will be also merging of disasm and cpu decoder to one module and remove the disasm.
Two bug fixes on the way:
TBM: fixed 64-bit TBM instructions with memory access (did 32-bit load instead of 64-bit)
BMI2: fixed operands order for PEXT/PDEP instructions
AVX2: fixed gather instruction decoding bug from decoder alias commit
2013-09-24 05:21:00 +00:00
Stanislav Shwartsman
f791802286
infrastructure change for several AVX handlers to support any VL and only 128/256
2013-09-21 20:40:57 +00:00
Stanislav Shwartsman
404b8b1475
move end of trace indication to separate 'flags' field of bx_ia_opcode. this saves a lot of code duplication and simplifies the decode tables. also on the way found missing SVM opcodes that missed 'end of trace' mark
2013-09-21 18:58:01 +00:00
Stanislav Shwartsman
047b17d415
fixed typo in makefile
2013-09-21 10:52:18 +00:00
Stanislav Shwartsman
cd55ace8c8
fixed compilation err, rename opcode and handler functions for PUSHA/POPA instructions
2013-09-21 10:03:49 +00:00
Stanislav Shwartsman
2526282ed9
small additions for avx512
2013-09-20 18:27:33 +00:00
Stanislav Shwartsman
3803ac7fbe
fixed evex override mscsr controls
2013-09-19 21:38:25 +00:00
Stanislav Shwartsman
0441f82b02
implement more AVX512 instructions
2013-09-19 20:35:55 +00:00
Stanislav Shwartsman
55f9155bc5
add new file
2013-09-19 18:32:39 +00:00
Stanislav Shwartsman
8b3a0acde9
implement first EVEX instructions - VADDPS/PD/SS/SD
2013-09-19 18:31:30 +00:00
Stanislav Shwartsman
8e71a86542
seve vex prefix value to the indication of vex prefix used
2013-09-18 18:01:48 +00:00
Stanislav Shwartsman
da0e2baf22
avoid segfault when decoding incorrectly encoded kmask op
2013-09-17 21:01:24 +00:00
Stanislav Shwartsman
d169860f6c
added masked operations to simd_pfp.h, optimize simd_int.h, rewrite dpps instr using new masked op from simd_pfp.h
2013-09-17 20:49:26 +00:00
Stanislav Shwartsman
aa25c1db6a
name convention change - search and replace
2013-09-17 17:34:20 +00:00
Stanislav Shwartsman
b6c39a3176
merge AVX and SSE .bochsrc options to single SIMD option which will configure SSE and AVX together
2013-09-16 19:50:36 +00:00
Stanislav Shwartsman
1cebe5f83d
rellback part of commit with xmm register access interface changes - doesn't work for big endian hosts
2013-09-16 19:10:42 +00:00
Volker Ruppert
ec4990a380
slirp / vnet: only one instance per Bochs session supported yet
2013-09-16 17:06:03 +00:00
Stanislav Shwartsman
0cb0acc30f
added evex decode tables - next step to populate them :)
2013-09-15 20:48:39 +00:00
Stanislav Shwartsman
1e1fa45cac
fixed makefile after file rename
2013-09-08 20:16:38 +00:00
Stanislav Shwartsman
e4a99b4294
rename avx512_mask.cc
2013-09-08 20:15:52 +00:00
Stanislav Shwartsman
132714bf29
fixed compilation w/o EVEX support enabled
2013-09-08 19:45:46 +00:00
Stanislav Shwartsman
8881800b1f
enable avx-512 in init.cc
2013-09-08 19:35:37 +00:00
Stanislav Shwartsman
7297323c69
First step of AVX512 support implementation (simplest)
...
decode and implement KMASK manipulation instructions
disasm: coming soon
2013-09-08 19:19:16 +00:00
Stanislav Shwartsman
6ddfe5fc3b
reorg avx opcodes in ia_opcodes.h. place v128 and v256 opcodes together. todo: find way to merge them sometimes
2013-09-07 18:52:31 +00:00
Stanislav Shwartsman
a6b85d9443
compress xop tables for vex.l - smaller binary size
2013-09-06 18:56:46 +00:00
Volker Ruppert
dbccb39fb7
fixed unused variable warning with BX_CPU_LEVEL <= 4
2013-09-06 06:44:05 +00:00
Stanislav Shwartsman
0fd4e3450c
update (c) for few files
2013-09-05 18:40:14 +00:00
Stanislav Shwartsman
2c9cf33b2f
update (c) for few files
2013-09-05 18:37:10 +00:00
Stanislav Shwartsman
69f947cef2
fixes and small optimizations for avx and xop decoding
2013-09-05 18:29:50 +00:00
Stanislav Shwartsman
f36364bc65
it doesn't matter if it was vex or xop ...
2013-09-05 17:52:47 +00:00
Volker Ruppert
d943feaf8e
panic if cirrus support is requested but not available to avoid segfault
2013-09-05 07:38:22 +00:00
Volker Ruppert
7c0a261751
final fix for BX_CPU_LEVEL 4
2013-09-05 06:42:17 +00:00
Stanislav Shwartsman
897bf85494
fixed bug in fma4 decoding - found now thanks to new tables re-org
2013-09-04 18:37:49 +00:00
Stanislav Shwartsman
2f957bf142
re-arrange AVX/XOP table to avoid redundant multiplication in decode. TODO: compress the tables 2x using aliases
2013-09-04 18:36:01 +00:00
Stanislav Shwartsman
bb695fd5f5
remove redundant (and incorrect) check
2013-09-04 16:47:52 +00:00
Stanislav Shwartsman
5de4907f93
anotehr fix for Bochs compiled for cpu-level=4
2013-09-04 14:23:58 +00:00
Stanislav Shwartsman
81affbe328
fixed incorrect lock prefix detection
2013-08-30 20:08:04 +00:00
Stanislav Shwartsman
c2558f52d6
generic_cpuid: fixed xsave cpuid leaf when xsave is disabled (need to clear output)
2013-08-29 19:58:31 +00:00
Stanislav Shwartsman
59c65151f5
various fixes
2013-08-29 19:43:15 +00:00
Stanislav Shwartsman
7e2ab5ca81
decode simplification for AMD XOP prefix
2013-08-28 19:56:19 +00:00
Stanislav Shwartsman
5d61c19b0b
evex support - step2
2013-08-27 20:47:24 +00:00
Stanislav Shwartsman
5fe5bf1ed6
fixed alias typo corrupting avx opcodes
2013-08-27 19:45:31 +00:00
Stanislav Shwartsman
c5f72033ad
correct vzeroupper opcode
2013-08-27 06:57:48 +00:00
Stanislav Shwartsman
735154a755
oops, typo bug in prev commit
2013-08-24 19:46:04 +00:00
Stanislav Shwartsman
65e6760915
small decode optimization
2013-08-24 19:29:43 +00:00
Stanislav Shwartsman
ba317a4ce1
fixed compilation when --enable-evex is ON
2013-08-24 18:28:09 +00:00
Stanislav Shwartsman
748a0da712
one more step in the way towards avx-512 which have more vector registers
2013-08-24 12:12:10 +00:00
Stanislav Shwartsman
25f99f76c3
remove test registers from disasm as well
2013-08-23 05:54:51 +00:00
Stanislav Shwartsman
701d88388e
fixed FCS/FDS deprecation
2013-08-22 20:21:36 +00:00
Volker Ruppert
5ac2776cd0
Added IP and UDP header data structure definitions and related code cleanups
2013-08-22 11:53:40 +00:00
Stanislav Shwartsman
3a7e336cb6
more opcode alias - now VEX.W alias
2013-08-21 18:45:36 +00:00
Volker Ruppert
7783e39b77
On Windows, the netmod plugin now must be linked with wsock32
2013-08-21 15:19:47 +00:00
Volker Ruppert
8ae2e48693
Some work on the log functions documentation
2013-08-21 10:23:50 +00:00
Stanislav Shwartsman
115ec37a4c
make decoder tables smaller using decode aliases
2013-08-21 04:52:49 +00:00
Volker Ruppert
9ce849e742
Moved ARP processing to netmod.cc to reduce code duplication
2013-08-20 17:43:24 +00:00
Volker Ruppert
dc57eaf155
Added error handling for time0 string format
2013-08-19 06:39:07 +00:00
Volker Ruppert
9f86dbfefe
Started writing log functions section and improved sound lowlevel section
2013-08-18 19:54:26 +00:00
Volker Ruppert
f46610032e
Added support to specify the initial time in ctime(3) string format
2013-08-18 17:16:16 +00:00
Volker Ruppert
2f66889661
Fixed compilation of the make_cmos_image utility
2013-08-11 08:46:56 +00:00
Volker Ruppert
122249fae8
Updated sound lowlevel and harddisk redologs sections
2013-08-10 22:50:02 +00:00
Volker Ruppert
ffdb10a902
Added separate function to handle recently removed bochsrc options
...
- added some version info about replacement and removal
- removed 'pnic' option hack
2013-08-10 07:40:38 +00:00
Volker Ruppert
920a8d54b5
Some work on the lowlevel sound support documentation
...
- split lowlevel sound driver driver section from the SB16 one
- updated SB16 section and MIDI output subsection
- added new subsection about wave input (recording)
- TODO: review wave output descriptions and add more wave input details
2013-08-09 18:55:14 +00:00
Stanislav Shwartsman
33a7063e60
bug fixes
2013-08-05 15:33:41 +00:00
Stanislav Shwartsman
362b99eba0
fixed typo in last commit
2013-08-04 19:47:19 +00:00
Stanislav Shwartsman
3fabcb00b7
VMX: CMPXHG instructions should always write to the memory destination, even if the value unchanged - it affects VMEXIT conditions for the full apic virtualization
...
Fixed also CMPXHG16B instruction (last one, others were fixed earlier)
2013-08-04 19:37:04 +00:00
Volker Ruppert
b08cb9e9fd
Regenerated after sound module changes
2013-08-04 14:35:54 +00:00
Volker Ruppert
51688143aa
Some work on the lowlevel sound support
...
- ALSA driver is now default on Linux (if present)
- SDL sound driver is now default if no platform-specific driver is available
and the SDL gui is enabled
- soundlnx.cc: sendwavepacket() now exits with error if device is not opened
- soundmod.cc: exit beep loop if sendwavepacket() returns error
2013-08-04 14:35:06 +00:00
Volker Ruppert
323aa782e0
Fixed $PCI service detection
2013-08-02 16:00:10 +00:00
Volker Ruppert
c4174b4691
Fixed $PCI service detection
2013-08-02 15:59:49 +00:00
Volker Ruppert
f672099b28
Some more work on the SB16 and lowlevel sound documentation
...
- removed SB16 section in the user doc and partly update the developer doc
- some additions in the section "Using sound"
- TODO: update the sound output classes stuff in the developer doc
2013-07-29 19:07:34 +00:00
Volker Ruppert
5990f7d583
Added new section "Using sound"
...
- some fixes and additions to the bochsrc section
- minor other changes
- TODO: remove SB16 section after updating related one in the developer doc
2013-07-28 20:38:55 +00:00
Volker Ruppert
b67bb74bd6
- updated VS2008 workspace files
2013-07-28 11:07:44 +00:00
Volker Ruppert
a45ec360b3
Fixed outdated documentation of the "cpu: count=" parameter
2013-07-27 15:33:52 +00:00
Volker Ruppert
36c48619d7
Added section about ROM images
...
- minor other changes
- TODO: write new sound documentation
2013-07-26 17:28:47 +00:00
Stanislav Shwartsman
7005afd3a8
clean up BxRepeatable attribute - not needed anymore after VL AVX field moved to new location
2013-07-26 15:42:49 +00:00
Stanislav Shwartsman
2dbe81db51
first infrastructure changes to support EVEX prefix and AVX-512 extensions recently published by Intel
2013-07-26 12:50:56 +00:00
Volker Ruppert
3e27308899
Allow to specify the platform-default sound driver directly
...
- driver names "oss", "osx" and "win" can now be used instead of "default"
- updated sound initialization messages
2013-07-25 18:47:11 +00:00
Stanislav Shwartsman
0da1d659d3
CMPXHG should always write to memory dest - affects APIC virtualization VMEXIT conditions
2013-07-24 21:06:24 +00:00
Stanislav Shwartsman
54d3dc4353
properly added sha.cc to the tree
2013-07-24 18:56:37 +00:00
Stanislav Shwartsman
2357dc5ccc
Fixed number of invocations of the BX_INSTR_LIN_ACCESS instrumentation callback in cpu/access32.cc, cpu/access64.cc and cpu/paging.cc specify the BX_READ memory access type where BX_RW really applies.
...
SF Patch #1335 by Mateusz Jurczyk
2013-07-24 18:54:18 +00:00
Stanislav Shwartsman
4c7031962e
added new sha.cc file
2013-07-24 18:47:28 +00:00
Stanislav Shwartsman
852b5c3749
implemented SHA new instructions announced in recent Intel SDM extensions document rev015
2013-07-24 18:44:22 +00:00
Stanislav Shwartsman
fd71b03353
add some definitions introduced in recent Intel SDM extensions document (rev015)
2013-07-23 20:51:52 +00:00
Stanislav Shwartsman
4a36fb3edc
fixed debug print message for BOUND instruction
2013-07-22 18:52:15 +00:00
Volker Ruppert
3202743c31
clock option: added missing documentation for the 'rtc_sync' parameter
2013-07-22 16:30:33 +00:00
Volker Ruppert
79acd6b1ab
Changed bochsrc parser order and cleanup
...
- moved some options to the top and some legacy ones to the end of the function
- added some info to the legacy keyboard options
- removed 'text_snapshot_check' keyword
- some coding style changes
2013-07-20 16:13:07 +00:00
Volker Ruppert
f3d3b65b19
Synced order of options in bochsrc sample, manual page and user doc
2013-07-20 14:26:41 +00:00
Volker Ruppert
5e0fe6cb5a
User documentation updates
...
- added new gui "vncsrv" and new bochsrc options "sound" and "speaker"
- related changes in the "sb16" and "es1370" descriptions
- started update of the SB16 documentation
- changed the order of some bochsrc options
- TODO #1 : sync the order of bochsrc options in all files
- TODO #2 : replace SB16 section by a new one (e.g. "Using sound")
- TODO #2 : update SB16 stuff in the developer doc
2013-07-18 19:09:25 +00:00
Volker Ruppert
ce4cbc4a43
Updated bochsrc manual page (vncsrv gui and sound option changes)
...
- fixed some partly invisible lines
- changed the order of some options in bochsrc sample and man page
- TODO: update docbook ducumentation
2013-07-15 17:16:48 +00:00
Volker Ruppert
1c7564b98e
Fixed possible crash when using beep thread
2013-07-14 19:01:29 +00:00
Volker Ruppert
b2f8908588
Regenerated after ALSA sound driver changes
2013-07-14 15:16:03 +00:00
Volker Ruppert
b84b0eed52
Moved ALSA sound support to a separate sound driver object
...
- ALSA stuff moved from soundlnx.* to new soundalsa.* files
- SB16 / ES1370: including specific sound driver headers not necessary
- updated dependencies
2013-07-14 15:14:53 +00:00
Volker Ruppert
9a1d889359
ES1370: implemented wave output to file (raw and VOC format)
...
- added parameters 'wavemode' and 'wavefile' to the 'es1370' option
- ES1370: added new method sendwavepacket() (similar to SB16)
- moved VOC file methods from sb16.cc to soundmod.cc and added macros for them
- SB16: minor fixes
2013-07-13 17:37:48 +00:00
Volker Ruppert
f91aa29f2b
Fixed and simplified DMA timer value calculation
2013-07-07 19:19:59 +00:00
Volker Ruppert
258505a762
Fixed wave output to VOC file
...
TODO: move VOC file code to soundmod.cc and use it for ES1370, too
2013-07-07 11:27:10 +00:00
Volker Ruppert
dd794d6d44
Some more work on the 'sound' bochsrc option
...
- added 'wavein' parameter to specify the wave input device if necessary
- if 'wavein' is not set, Bochs uses the 'waveout' value for input, too
- SB16: the 'wave' parameter is now only used to specify the filename (mode 2 or 3)
- TODO: implement 'wavemode' feature for ES1370 similar to SB16
2013-07-06 15:12:04 +00:00
Volker Ruppert
2e993f4a84
Some work on the 'sound' bochsrc option
...
- forgot to save 'sound' bochsrc line
- renamed wave output parameter to 'waveout'
- simplified sound option parsing
2013-06-30 08:21:26 +00:00
Stanislav Shwartsman
148cb1aee0
Thanks to avanced trace linking 256K entries ICache is not needed anymore.
...
Reduce to 64K entries and save memory.
2013-06-29 10:25:56 +00:00
Stanislav Shwartsman
ef0d2142ab
Allow cross-page trace linking again.
...
The SMC problem was solved in following manner:
- Every trace linked to another remembers when it was linked (a special timestamp value called traceLinkTimeStamp)
- When true SMC happens it incremements the traceLinkTimeStamp
- Jump to the linked trace won't be allowed if traceLinkTimeStamp in the link doesn't match traceLinkTimeStamp
So SMC effectively breaks all trace links and therefore I should not care for them anymore
5%-10% speedup on OS boot benchamarks observed
2013-06-29 10:16:28 +00:00
Stanislav Shwartsman
0276bdfb3e
still not allow cross page linking until SMC issue will be solved - cause Win98 crash
2013-06-28 07:51:42 +00:00
Stanislav Shwartsman
40f02e0bfb
fixed msdev warnings, update msdev workspaces - add vapic.cc and cpudb new defs
2013-06-26 19:03:00 +00:00
Stanislav Shwartsman
0c570ecb6a
clean symbols code a little
2013-06-26 18:07:01 +00:00
Stanislav Shwartsman
74c2cb0127
fixed compilation warning
2013-06-25 17:32:33 +00:00
Volker Ruppert
192aa1f369
Added global sound control option in bochsrc and config interface
...
- added 'sound' option to select the driver and the wave output device
(see bochsrc sample for details)
- the wave device option of sb16 and es1370 is now only used to set up the
wave input device (if necessary)
- cleaned up the speaker code to initialize the 'sound' case correctly
2013-06-24 19:19:12 +00:00
Stanislav Shwartsman
c42afb0a2d
allow linking of traces cross 4K page boundary
2013-06-23 21:12:03 +00:00
Stanislav Shwartsman
91b3417e57
small bugfix
2013-06-23 15:45:25 +00:00
Stanislav Shwartsman
d30d1ac93a
small bugfix
2013-06-21 14:12:46 +00:00
Stanislav Shwartsman
c7698a5589
implemented fcs/fds deprecation. added haswell to cpudb.h as well
2013-06-20 20:12:53 +00:00
Stanislav Shwartsman
b335f472bd
Added Haswell configuration to CPUDB
2013-06-20 19:33:30 +00:00
Volker Ruppert
c3740c0e6e
Added new bochsrc option to control the speaker output mode. The choices 'sound'
...
(lowlevel sound output), 'system' (system beep on Linux and Windows) and 'gui'
(forward beep to related gui methods) are available.
2013-06-16 18:52:34 +00:00
Volker Ruppert
f1c6be0bc8
Serial mouse detection fixes (required for CTMOUSE.EXE)
...
- added support for 16 bit access to serial port registers
- fixed entering mouse detection mode with DTR/RTS
- report serial port mode in log file
2013-06-16 08:36:47 +00:00
Volker Ruppert
0658109479
Recompiled after PS/2 mouse function change
2013-06-15 21:49:10 +00:00
Volker Ruppert
53cb107dbf
PS/2 mouse function: allow setting mouse packet size to 4 for wheel support
...
TODO: make driver CTMOUSE.EXE also work with mouse type 'serial_wheel'
2013-06-15 21:48:23 +00:00
Stanislav Shwartsman
769d35b06c
remove debug print from Sandy Bridge CPUID wrongly commited
2013-06-15 17:57:03 +00:00
Stanislav Shwartsman
edc3003f35
do not use cpuid:level param when it doesn't exists
2013-06-15 17:53:49 +00:00
Volker Ruppert
50190829e9
Some PC speaker output fixes
...
- change beep frequency only if the new counter value is completely written
- turn off beep on exit
2013-06-14 19:08:51 +00:00
Volker Ruppert
c5ca69da5e
Added support for changing speaker frequency while output is enabled
2013-06-11 21:04:07 +00:00
Volker Ruppert
3193de9516
Minor fixes in rfbSetPixelFormat message handling
...
- fixed error message for unsuported pixel format
- removed useless assignments
2013-06-09 17:16:16 +00:00
Volker Ruppert
c0d3cdb5c5
Set the initial status of removable devices to BX_EJECTED (fixes headerbar buttons)
2013-06-09 10:27:43 +00:00
Volker Ruppert
38e292a261
Make shared data access thread-safe
...
- use LibVNCServer macros for pthread mutex support in the keyboard / mouse code
- workaround for WIN32: use critical section stuff instead (not yet present in
LibVNCServer)
2013-06-08 06:47:52 +00:00
Volker Ruppert
9cb610464d
Several RFB changes
...
- don't quit simulation on client disconnect (reverted to original behavior)
- don't wait for client connection on startup if timeout is set to 0
- RFB color handling rewritten to fix headerbar and statusbar colors in 8 bpp
graphics modes (they no longer depend on VGA palette)
- set maximum resolution to 1280x1024 (same as vncsrv)
- minor other changes
2013-06-05 20:25:44 +00:00
Stanislav Shwartsman
9651b5d53c
bugfix: vmx preemption timer vmexit should not wakeup CPU from sleep state. cpuid: added definitions from recently published intel SDM rev047
2013-06-04 20:28:27 +00:00
Volker Ruppert
e824499639
Removed recently added "noclient" code to let vncsrv always work this way
...
TODO: Fix RFB gui to make work the same again
2013-06-04 19:10:40 +00:00
Volker Ruppert
e06b44c866
minor fixes in dimension_update(): snapshot.bmp now correctly saved on server
2013-06-03 21:27:22 +00:00
Volker Ruppert
e276742d56
vncsrv "noclient" mode and some vncsrv / rfb fixes and cleanups
...
- vncsrv: noclient mode: simulation run even without client connected
- vncsrv / rfb: parse specific options before starting server thread
- vncsrv / rfb: panic on invalid timeout value
- vncsrv: don't wait for client connection if timeout value is 0
- vncsrv / rfb: removed unnecessary newlines
2013-06-02 20:56:46 +00:00
Volker Ruppert
536887aee2
vncsrv gui code cleanup with small addition
...
- quit simulation if the client has disconnected
- changed the order of methods and function in the file
2013-06-02 14:32:45 +00:00
Volker Ruppert
9325db1b55
RFB code cleanup and small additions
...
- quit simulation if the client has disconnected
- moved update region checks to new function rfbAddUpdateRegion
- changed the order of methods and function in the file
2013-06-02 09:21:11 +00:00
Volker Ruppert
5aa2a2d50f
regenerated after vncsrv changes
2013-05-31 16:47:15 +00:00
Volker Ruppert
21feca3767
Some work on the new 'vncsrv' gui
...
- use the CXXFLAGS and link options provided by the libvncserver-config script
- added Windows support for MinGW/MSYS (compiles fine, but crashes sometimes)
2013-05-31 16:46:15 +00:00
Volker Ruppert
5618cea18b
regenerated after adding 'vncsrv' gui
2013-05-30 17:21:10 +00:00
Volker Ruppert
17b7b87a61
Added new experimental gui 'vncsrv" using the LibVNCServer library. It supports
...
higher resolutions and > 8 bpp graphics modes. The RFB gui with limited
capabilities is still available.
TODO:
- fix random segfaults in dimension_update()
- Windows (MinGW) support
- fixes for clients not supporting 'rfbEncodingNewFBSize'
- fix cursor shape after dimension update()
2013-05-30 17:18:30 +00:00
Volker Ruppert
dc1dd06794
Prepare the RFB sources for the implementation of a new gui based on the
...
LibVNVServer library. The include files will be used for both guis.
2013-05-30 09:31:21 +00:00
Volker Ruppert
0f2e7ec578
regenerated after release
2013-05-29 17:35:58 +00:00
Volker Ruppert
b04df59367
RFB code cleanup (no functional changes)
...
Updated version strings after release
TODO: implement new RFB(VNC) gui using LibVNCServer
2013-05-29 17:35:19 +00:00
Volker Ruppert
7162aeba05
regenerated for release
2013-05-26 07:18:08 +00:00
Volker Ruppert
64190fea62
- preparing release 2.6.2
2013-05-26 07:17:33 +00:00
Volker Ruppert
f38ba1e15c
- mention FreeDOS in the "guest-dos" section
2013-05-26 06:51:28 +00:00
Stanislav Shwartsman
c1df9425f5
update changes for coming 2.6.2 patch release
2013-05-24 18:29:21 +00:00
Volker Ruppert
800da0f390
some fixes for Bochs on MorphOS (based on a patch by Thore Sittly)
...
- byte-swapping stuff fixed
- TODO: gui fixes in the amigaos.cc code
2013-05-24 17:58:49 +00:00
Stanislav Shwartsman
b950de7155
add more vmx capabilities to generic cpu
2013-05-20 18:18:52 +00:00
Stanislav Shwartsman
964583a40f
Added X2APIC support to Ivy Bridge configuration
2013-05-20 18:15:35 +00:00
Stanislav Shwartsman
2bca9b8273
updates in CPUID defines after new published AMD SDM
2013-05-17 19:41:57 +00:00
Stanislav Shwartsman
1304b3fb4b
Do not report Architectural Performance Monitoring in CPUID
...
Reporting true capabilities breaks Win7 x64 installation
2013-05-07 15:34:58 +00:00
Stanislav Shwartsman
694dc8a0e1
fixed generic cpuid leafs - all std leafs > 2 were corrupted
2013-05-06 20:33:27 +00:00
Stanislav Shwartsman
b2b42dd714
small fix for LOAD_SS interrupts inhibit
2013-05-04 19:10:50 +00:00
Stanislav Shwartsman
05c711b2b5
Create initial interrupt vector offsets. Change based on sf patch #507 .
2013-04-21 20:09:49 +00:00
Stanislav Shwartsman
139ec7d538
PANIC on options which require P6 when CPU_LEVEL is set to 5 instead of ignoring them
2013-04-17 20:24:12 +00:00
Stanislav Shwartsman
3fbdf7ff03
do not recognize MTRR MSRs when mtrr is not enabled
2013-04-17 19:59:56 +00:00
Stanislav Shwartsman
9b958b3a05
allow to select CPU level = 5 from .bochsrc even when Bochs is compiled with CPU_LEVEL=6
2013-04-17 19:46:11 +00:00
Volker Ruppert
bb9eaec2dc
some fixes for Bochs on MorphOS (based on a patch by Thore Sittly)
...
- missing functions fseeko() and localtime_r() implemented in osdep.cc
- updated cdrom_amigaos.cc code
2013-04-12 17:26:27 +00:00
Stanislav Shwartsman
025fb15461
properly handle RDMSR/WRMSR of MSR_PAT when PAT feature is disabled
2013-04-11 19:41:54 +00:00
Stanislav Shwartsman
f1c7d163a1
activity state is ignored when vmenter injecting event
2013-04-09 20:36:02 +00:00
Stanislav Shwartsman
401bae4501
fixed unused var warning
2013-04-09 20:35:24 +00:00
Stanislav Shwartsman
a277d60d89
implemented vmentering to non-active cpu state
2013-04-09 15:43:15 +00:00
Stanislav Shwartsman
58f4a0994e
configure with VMX=2 for future releases
2013-04-08 18:31:25 +00:00
Volker Ruppert
fa058a9e2d
regenerated after release
2013-04-08 18:00:54 +00:00
Volker Ruppert
96ae009372
updated version strings after release
2013-04-08 17:59:55 +00:00
Stanislav Shwartsman
6a8357105b
fix for guest segment AR field size
2013-04-08 17:29:00 +00:00
Volker Ruppert
64f9c3130d
regenerated for release
2013-04-07 15:28:07 +00:00
Volker Ruppert
cb32223a6a
preparing release 2.6.1
2013-04-07 15:27:37 +00:00
Volker Ruppert
7f01e3064c
enabled USB xHCI support for release 2.6.1
2013-04-07 15:13:45 +00:00
Volker Ruppert
f8075e0ed2
- added support for converting flat to growing mode images
...
- TODO: rewrite bximage / bxcommit stuff and use hdimage C++ classes to support
more commit / conversion types and to get rid of this code duplication.
2013-04-07 07:54:52 +00:00
Volker Ruppert
e2c49cf534
updated workspace files and changes
2013-03-23 13:10:51 +00:00
Volker Ruppert
180d8a295e
initialize scroll position in WM_CREATE
...
reduce virtual window height
2013-03-19 19:26:04 +00:00
Volker Ruppert
900ac609c7
fixed disabling of dialog items in a scroll window
...
added mouse wheel support to the scroll window
minor cleanups
TODO: update workspace files, scroll window support for wx
2013-03-19 17:44:19 +00:00
Stanislav Shwartsman
25733b4387
added scrollwin.o in configure scripts for mingw
2013-03-18 20:47:08 +00:00
Stanislav Shwartsman
2bb620844f
added scrollwin.cc into Makefile
2013-03-18 20:40:21 +00:00
Volker Ruppert
d6e6bf217b
regenerated after adding scrollwin files
2013-03-18 19:09:30 +00:00
Volker Ruppert
a4a275848f
initial implementation of scrollable dialog items on WIN32
...
- scroll window has 16 visible items and the virtual size is not limited
- CPUID parameter list now using this feature
- FIXME #1 : scroll window is not resized if browse button column is present
- FIXME #2 : only one scroll window per dialog is supported
2013-03-18 19:08:26 +00:00
Volker Ruppert
0dfd73dd15
added bx_list_c flag USE_SCROLL_WINDOW for scrollable dialog items (needed by CPUID)
...
TODO: implement this feature in the win32 and wx dialog code
2013-03-17 17:16:45 +00:00
Stanislav Shwartsman
13a6524acb
hw task switch tempdr6 hanlding fix
2013-03-15 08:26:22 +00:00
Stanislav Shwartsman
913e3defd1
fixed SIPI delivery bug from one the latest checkins
2013-03-13 19:06:55 +00:00
Volker Ruppert
b532cad1d1
- changes updated
2013-03-11 19:12:00 +00:00
Volker Ruppert
d8c55883a2
added example patch that shows how to write the VDISK.DLL source
2013-03-11 18:08:42 +00:00
Stanislav Shwartsman
b6852ba027
Update CHANGES. Add --enable-voodoo to all configure samples (which are also used to build Bochs releases)
2013-03-10 20:42:46 +00:00
Volker Ruppert
674447c186
DLL HD support rewritten and enabled for WIN32
...
TODO: put sample code for VDISK.DLL into the patches directory
2013-03-08 18:25:32 +00:00
Stanislav Shwartsman
53d14c01b5
correctly signal bit 12 (nmi unblocking by iret) in vmx interruption info. todo: find how to implement it clean way
2013-03-06 21:11:23 +00:00
Stanislav Shwartsman
1a770dd260
implementation of virtual NMI
2013-03-05 21:12:43 +00:00
Volker Ruppert
e9a8ef1d65
removed flag USE_SPIN_CONTROL from the memory size parameters to fix the gui
...
configuration in Windows (up-down control only accepts 16-bit values)
2013-03-04 17:33:08 +00:00
Stanislav Shwartsman
39ae66b5a3
Suppress 'entering paged real mode' CR0 check for SVM guest
...
After a lot of thinking and browsing in the SVM arch forums I assume now that it shold be fine to enter to paged real mode under SVM guest.
The test case to consider:
(paged) real mode guest -> entering Pmode (not paged) -> disabling the Pmode back
Ths assumption still should be validated with real AMD hardware
Context: AMD's manual about CR0 intercept priority :
"Checks non-memory exceptions (CPL, illegal bit combinations, etc.) before the intercept"
The check for 'paged real mode' suposed to be illegal bit combination ...
2013-02-27 19:11:28 +00:00
Volker Ruppert
b81622cf31
added default DRB address setup for the i440FX chipset
2013-02-27 17:21:29 +00:00
Stanislav Shwartsman
ab63b22a68
SVM: implemented missed RSM, LDTR READ/WRITE, TR READ/WRITE and IRET intercepts
2013-02-25 19:36:41 +00:00
Volker Ruppert
70884d3cec
updated documentation of the memory options
2013-02-24 21:06:26 +00:00
Stanislav Shwartsman
8708d05bea
rename some VMX controls to match intel docs. added missed VMX consistency check
2013-02-24 20:22:22 +00:00
Volker Ruppert
b0d8d898c0
wx second run fix: fixed width of list views
2013-02-24 12:12:11 +00:00
Volker Ruppert
745b1bef84
wx second run fix: clear LOGFONT structure before losing it
...
fixed some warnings
2013-02-23 20:27:07 +00:00
Volker Ruppert
37b1f11fa6
cleaned up serial mode handling and some other minor changes
2013-02-23 15:15:59 +00:00
Volker Ruppert
ab57c1fb2f
found a better solution to fix the power_handler() deadlock
...
fixed bx_dbg_exit() handling for shutting down second simulation correctly
2013-02-20 18:51:39 +00:00
Volker Ruppert
209b8c9ff8
fixed deadlock in second simulation after exiting the first one with the power button
2013-02-19 19:12:44 +00:00
Volker Ruppert
9c3d374e6a
continued work for "wx second run" support
...
- memory: initialize ISA and PCI ROM variables in init_memory()
- sb16: remove items from runtime menu in destructor
- gui debugger: show dialog contents (TODO: fix remaining display issues)
- TODO: fix deadlock in bx_wx_gui::handle_events()
2013-02-18 20:52:19 +00:00
Volker Ruppert
910774513b
some work for "wx second run" support (not yet complete)
...
- bx_list_c: added support for removing parameter with other parent list
- USB HC's: remove item from runtime config on simulation exit
- initialize bx_user_quit in bx_begin_simulation()
- only remove optional plugin from list if alrady unloaded
2013-02-17 08:27:43 +00:00
Volker Ruppert
058c0e05fb
- removed wx debugger dialogs (enhanced gui debugger now almost stable with wx)
2013-02-16 12:22:13 +00:00
Volker Ruppert
a6bce2031c
two important fixes for the gui debugger in wx (GTK)
...
- fixed closing the debugger window from wx (power button / ask dialog)
- OnKillSim(): bx_user_quit must be set to 1 to exit the debugger wait loop
2013-02-15 22:22:51 +00:00
Volker Ruppert
638a1a2157
fixed stepN command in SMP mode
2013-02-15 20:06:09 +00:00
Volker Ruppert
e44176f597
run stepN command in the simulation thread to avoid deadlock in wxBochs
...
GTK init is not required in the wxGTK case
removed unnecessary include
2013-02-15 15:47:16 +00:00
Volker Ruppert
5416e462e9
moved debugger notify callback functions to enh_dbg.cc
2013-02-14 21:06:20 +00:00
Stanislav Shwartsman
e43ac349a6
fixed injected exception err code check for unrestricted guests
2013-02-14 19:31:42 +00:00
Stanislav Shwartsman
40669115e1
use different formatter for printing phy address in paging dbg messages
2013-02-14 19:30:59 +00:00
Volker Ruppert
98598e4da9
some fixes for the GTK debugger window for the wx case (to be continued)
...
- run GTK main loop only if wx (wxGTK) is not active
- don't try to destroy debugger window twice
2013-02-14 08:36:52 +00:00
Volker Ruppert
3109ad3d87
minor fixes for the gui debugger with wx on Windows
2013-02-13 11:13:28 +00:00
Stanislav Shwartsman
7188166653
added more FMT_PHY_ADDRX64 cases definition
2013-02-12 21:33:00 +00:00
Stanislav Shwartsman
66c9274bdb
max physical addr size is 48 bit so print less characters
2013-02-12 21:26:23 +00:00
Volker Ruppert
97de484efb
use enhanced gui debugger instead of classic wx debugger if BX_DEBUGGER_GUI == 1
...
The Windows version looks almost stable, but the GTK version fails in some cases.
That's why the classic wx debugger is still available if BX_DEBUGGER_GUI is set to 0.
- added function close_debug_dialog() to handle the simulation stop case in wx
- disable all the wx debugger related code if BX_DEBUGGER_GUI is set to 1
- added enhanced debugger specific init code similar to the code in sdl.cc
- include debugger related resources on Windows
- TODO: make the GTK / wxGTK case stable and remove the wx debugger
2013-02-12 21:08:35 +00:00
Stanislav Shwartsman
9c8c25b7ef
warning fix
2013-02-12 16:36:49 +00:00
Volker Ruppert
7eda0feb6f
fixed some compiler warnings
2013-02-12 13:31:40 +00:00
Volker Ruppert
3822dc7692
fixed critical GTK warning if only one cpu is present
...
fixed some compiler warnings
2013-02-12 11:15:05 +00:00
Volker Ruppert
f37d6e676f
removed duplicate comment, updated / added copyright and added license
...
TODO: remove wx debugger and use enhanced gui debugger instead
2013-02-10 21:26:51 +00:00
Volker Ruppert
88e1033b90
the "show keyboard" dialog has been removed some time ago
2013-02-10 16:39:58 +00:00
Volker Ruppert
f314df2d1b
use bx_dbg_exit() for a correct simulation shutdown if gui debugger is closed
...
use usleep() if available in the debug command wait loop
2013-02-10 13:37:25 +00:00
Volker Ruppert
de4a5ecd79
fixed segfault when closing debugger gui window while simulation is running
2013-02-10 08:47:17 +00:00
Volker Ruppert
e9302f4c13
don't execute hdimage save functions if the save/restore path is empty
...
reset save/restore path after completing save or restore process
2013-02-09 14:21:58 +00:00
Volker Ruppert
addd85e408
don't overwrite log actions per device if default is unchanged
...
- after parsing command line only update actions if default has changed
- bx_init_hardware(): extra update of log actions in quick start mode not needed
2013-02-05 20:57:40 +00:00
Volker Ruppert
7d32178e72
full support for saving log options per device (from bochsrc and config interface)
...
simplified setting up log options per device after parsing bochsrc / command line
2013-02-04 18:51:07 +00:00
Volker Ruppert
48b345d06f
save log options per device (from original bochsrc - runtime changes not handled yet)
...
code cleanup in bx_write_param_list() and other parts of the bochsrc save code
2013-02-03 18:28:25 +00:00
Volker Ruppert
0821a9027c
use the new bx_param_string_c method isempty() in bx_write_configuration()
...
the screenmode, fullscreen and disk_win32 parameters are platform-dependent
2013-02-03 12:14:29 +00:00
Volker Ruppert
2d552af7a2
fixed possibly wrong raw byte string after simply pressing the enter key
2013-02-02 16:52:54 +00:00
Volker Ruppert
0fbd1b3eff
now using new bx_param_string_c method sprint() in enhanced debugger
...
skip special value "none" in display library options
2013-02-02 16:02:08 +00:00
Volker Ruppert
b6f9c738fd
simplified code using new bx_param_string_c method sprint()
...
TODO: use sprint() in enhanced debugger
2013-02-02 08:49:55 +00:00
Volker Ruppert
17970857b8
added new bx_param_string_c methods isempty() and sprint()
...
- isempty() returns 1 if string length is 0 or string has special value "none"
- sprint() copies the formatted / converted string into a buffer
- use new methods in some parts of the code (TODO: win32 dialogs)
- check for the special value "none" to avoid failures
2013-02-01 19:13:58 +00:00
Volker Ruppert
8a15e3ae59
Removed disabled bochsrc parser code that checked the parameter enable flag.
...
Renamed symbol BOCHSRC_HIDDEN to CI_ONLY for parameters that appear in the CI,
but not in bochsrc. The parser no longer fails if this flag is set.
2013-01-30 16:43:58 +00:00
Stanislav Shwartsman
59f0445699
simplify dump .bochsrc for clock sync option
2013-01-28 20:49:24 +00:00
Stanislav Shwartsman
af65d7e953
remove parsing of deprecated vga_update_interval .bochsrc option - it will produce an error now
...
allow parsing of disabled options via param tree to avoid parse error
2013-01-28 20:29:12 +00:00
Stanislav Shwartsman
ec971d0ce8
add #VE exception specific VMCS fields into VMCS bitmap
2013-01-28 20:20:54 +00:00
Stanislav Shwartsman
863e1a0f8a
fixed compilation with debugger enabled
2013-01-28 18:26:56 +00:00
Volker Ruppert
ecd07ae76b
update generated files
2013-01-28 17:53:50 +00:00
Stanislav Shwartsman
64df073617
implemented virtualization exception feature
2013-01-28 16:30:25 +00:00
Stanislav Shwartsman
d38fce8218
preparation for future extension in translate_linear - I would like to return data to caller through tlbEntry
2013-01-27 19:27:30 +00:00
Volker Ruppert
f9dca3c76b
some keyboard bochsrc option changes
...
- moved 'user_shortcut' option to the keyboard option
- added new bx_param_c option value BOCHSRC_HIDDEN for parameters that should
only be available in the config interface. The new bochsrc option save and
parser function skip parameters with this flag set. This is useful for
parameters that will be set from the parser in a different way.
- save keyboard bochsrc line using the parameter list directly
- parse keyboard bochsrc options (except 'keymap') using the parameter list
- user shortcut: old-style syntax has already been removed
- increased minimum value for the keyboard's 'serial_delay'
2013-01-27 19:09:24 +00:00
Volker Ruppert
a86b91d7a1
parse cpu bochsrc options (except 'count') using the parameter list
...
- fixed small bugs in the new parser code
2013-01-27 12:11:19 +00:00
Volker Ruppert
2daadfcd85
parse serial, parallel and sound bochsrc options using the parameter list
...
- fixed small bug in the ne2k parser code
- added warnings to the new parser code
2013-01-26 18:17:23 +00:00
Volker Ruppert
b1cc217ea8
parse mouse and ata resource bochsrc options using the parameter list
...
- fixed possible segfaults in the new parser code
- use the new parser code partly for the ata device and nic options
2013-01-26 13:32:28 +00:00
Volker Ruppert
1365e2fbe0
parse cpuid bochsrc options using the parameter list
...
- TODO: use this feature for some other bochsrc options
2013-01-26 07:52:14 +00:00
Volker Ruppert
0ae6a3f6f0
save the optional plugin control bochsrc line using the parameter tree
2013-01-25 18:37:03 +00:00
Volker Ruppert
8e4e08cad7
changed USB cdrom media status parameter type to bx_param_enum_c
...
- moved media status names to the siminterface code
- textconfig: fixed possible segfault in runtime options prompt
2013-01-25 17:56:40 +00:00
Volker Ruppert
42cd945c35
i430FX: set up DRB address registers depending on memory size
...
- TODO #1 : do the same for the i440FX chipset
- TODO #2 : implement DRAM module detection mode in the memory code
2013-01-25 15:52:39 +00:00
Stanislav Shwartsman
016e112ac2
fixed compilation err with vmx=1
2013-01-23 19:04:53 +00:00
Volker Ruppert
b5dd859da8
changed floppy media status parameter type to bx_param_enum_c
2013-01-23 17:56:57 +00:00
Stanislav Shwartsman
a0c9522fef
fix compilation with no vmx enabled
2013-01-22 19:06:20 +00:00
Volker Ruppert
c2b57c5a56
save the ata device options using the parameter tree
...
- removed parameter "present" and use the new drive type "none" instead
- re-implemented cdrom media status parameter as a bx_param_enum_c
- TODO: change floppy media status parameter type to be consistent
2013-01-22 18:26:49 +00:00