Volker Ruppert
a1872535ca
Voodoo: fixed randomly missing color palette updates.
2023-12-29 15:18:06 +01:00
Stanislav Shwartsman
e3612c30f8
Implement support for LA57 and 5-level paging
2023-12-29 14:48:38 +02:00
Volker Ruppert
157d3a9189
Next attempt to fix the Voodoo hang on exit.
...
It occurred with the pthreads library only and should be fixed now.
2023-12-29 10:25:38 +01:00
Volker Ruppert
29fbdb48da
Set default value for SB16 dmatimer to 1000000 and updated docs.
2023-12-28 20:32:14 +01:00
Volker Ruppert
917ac4c79d
Fixed some Voodoo issues.
...
Temporarily disable fifo_reset() in recompute_video_memory(). FIFO handling must
be observed and a better solution must be found.
Fixed hang after pressing power button: destructor modification was required since
the swapbuffer command can depend on vertical retrace.
2023-12-28 19:04:20 +01:00
Volker Ruppert
326114f4e7
Updated LGPL'd VGABIOS to version 0.8b.
2023-12-28 08:54:56 +01:00
Volker Ruppert
9d1df2915c
VGA mem_write(): added missing update flag in chain4 mode.
2023-12-27 23:24:46 +01:00
Volker Ruppert
aa23a09afd
VGA mem_write(): moved and fixed CGA specific code.
...
Removed disabled BX_DEBUG code and VGA_TRACE_FEATURE symbol.
Some other small fixes and cleanups.
TODO #1 : review MAP13 addressing in case start address > 0.
TODO #2 : review chain4 code in medm_write().
2023-12-26 11:16:59 +01:00
Volker Ruppert
de4876e2c4
VGA mem_write(): in text mode don't mark graphics tiles for update.
...
TODO: Check special cases code in mem_write() for correctness.
2023-12-25 21:03:53 +01:00
Shwartsman
5b61b51498
more optimal version for VDPBF16PS
...
avoid constly softfloat calls when masked
2023-12-25 16:26:28 +02:00
Shwartsman
ddff78a16c
style and disasm updates, no functional impact
2023-12-25 14:57:05 +02:00
Vort
aed0c5e954
Prevent output of fraction of sample ( #193 )
...
Fixes #134 .
2023-12-25 12:00:31 +02:00
Shwartsman
7c9bab8182
handle getexp methods though templates
2023-12-25 08:07:07 +02:00
Stanislav Shwartsman
ef30a12afb
avoid accidential zero of the mask, due to Bit64u computation overflow (1 << 64) == 1
2023-12-24 22:37:02 +02:00
Stanislav Shwartsman
e7f2450220
fix XSAVE leaf resporting in CPUID
2023-12-24 20:12:30 +02:00
Shwartsman
00831a09d7
optimize load vector methods
2023-12-24 19:57:07 +02:00
Volker Ruppert
8a4941f670
Some cleanups in the recently fixed code.
2023-12-24 14:41:47 +01:00
Stanislav Shwartsman
662d8ec279
fix bug from previous commit
2023-12-24 15:04:31 +02:00
Stanislav Shwartsman
eb6d4f5fc8
use simpler method to write XMM register while clearing AVX upper part
2023-12-24 14:45:04 +02:00
Volker Ruppert
e3eb603ad4
Some fixes for the VGA mode 0x13 (issue #188 and discussion #108 ).
...
- Shift start address by 2 in update() code and mem_write().
- Added split screen support for this mode.
- Some code cleanups.
2023-12-23 21:37:08 +01:00
Shwartsman
b4effb58af
fix compilation with minimalistic config
2023-12-23 22:10:22 +02:00
Shwartsman
19dbd7314b
convert more instructions to template
2023-12-23 22:01:13 +02:00
Shwartsman
8e76c9b6bb
move many SSE/AVX/AVX512 methods to template functions
2023-12-23 21:00:51 +02:00
Shwartsman
120ad141b3
reduce code duplication by merging equivalent methods
2023-12-23 19:12:03 +02:00
Shwartsman
f3053e49bd
fixed warnings in x.cc
2023-12-23 16:44:00 +02:00
Shwartsman
0aaefe37e5
simplify Build workflow
2023-12-23 16:33:41 +02:00
Volker Ruppert
664fdae152
Fixed mouse toggle check (issue #181 ).
...
Clear out other keys/buttons when pressing one of the modifier keys.
2023-12-23 10:32:15 +01:00
Shwartsman
f1bab0c057
fixed MSR bit defines from FRED feature
...
minor update for WRMSRLIST instruction from today's SDM update
2023-12-23 10:34:03 +02:00
Volker Ruppert
84989e883f
Update CHANGES
2023-12-23 08:30:36 +01:00
Volker Ruppert
f0350b575a
Updated LGPL'd VGABIOS images from https://github.com/bochs-emu/VGABIOS .
2023-12-23 08:22:54 +01:00
Volker Ruppert
b63b1225a8
Fixed backward screen-to-screen copy operation for > 8 bpp modes.
2023-12-21 10:53:13 +01:00
Vort
75ea1c2222
Prevent crash in get_retrace ( #185 )
...
Fixes #184 .
2023-12-20 13:35:51 +02:00
Shwartsman
fc919cd132
use true/false instead of 0/1 for bool in the cpu code
2023-12-19 20:44:56 +02:00
Shwartsman
1a2544b1bb
fixed typo in comment
2023-12-19 19:51:37 +02:00
Stanislav Shwartsman
54e88eee92
more correction for CPUID leaf 0xD
2023-12-18 15:58:18 +02:00
Saulius Krasuckas
f221984d89
Fix niclist.exe crash when writing to string returned by PACKET.DLL ( #179 )
...
Seemingly Npcap returns a read-only string and `niclist.exe` tries to
modify (tokenize) it using `strtrok()`.
That results in the crash: #161
Probably related to
https://github.com/the-tcpdump-group/libpcap/pull/949 .
Here is my try at fixing this.
For successful modification I propose to use a stack-allocated copy
instead of the original (const) version string.
Now
[packetWin7/Dll/Packet32.cpp#L159](https://github.com/nmap/npcap/blob/a41bc6a/packetWin7/Dll/Packet32.cpp#L159 )
seems to initialize `const char PacketLibraryVersion[]` from the define
`WINPCAP_VER_STRING`, which seems to be of arbitrary length:
```
__declspec(dllexport) const char PacketLibraryVersion[] = WINPCAP_VER_STRING;
```
Let's search for the longest string present in their repo:
```
$ git log -u version.h | awk 'BEGIN { FPAT="(([^ \t]+)?(\"[^\"]+\")?)+" } /^.*define.+WINPCAP_VER_STRING.+[0-9]/ { gsub(/"/, "", $NF); print $NF }' | sort -Vu | while read; do printf "%4s %s\n" ${#REPLY} "${REPLY}"; done | sort -n
4 0.01
4 0.03
4 0.04
4 0.05
4 0.06
4 0.07
4 0.08
4 0.09
4 0.10
4 0.11
4 0.78
4 0.80
4 0.81
4 0.82
4 0.83
4 0.84
4 0.85
4 0.86
4 0.90
4 0.91
4 0.92
4 0.93
4 0.94
4 0.95
4 0.96
4 0.97
4 0.98
4 1.00
4 1.10
4 1.20
4 1.30
4 1.31
4 1.40
4 1.50
4 1.55
4 1.60
4 1.70
4 1.71
4 1.72
4 1.73
4 1.74
4 1.75
4 1.76
4 1.77
4 1.78
5 0.991
5 0.992
5 0.993
5 0.994
5 0.995
5 0.996
5 0.997
6 0.9981
6 0.9982
6 0.9983
6 0.9984
6 0.9985
6 0.9986
6 0.9987
6 0.9988
6 0.9989
6 0.9990
6 0.9991
6 0.9992
6 0.9993
6 0.9994
6 0.9995
6 0.9996
6 0.9997
7 0.08 r8
7 0.08 r9
7 0.09 r2
7 0.09 r3
7 0.09 r4
7 0.09 r5
7 0.09 r6
7 0.09 r7
7 0.09 r8
7 0.09 r9
7 0.10 r2
7 0.10 r3
7 0.10 r4
7 0.10 r5
7 0.10 r6
7 0.10 r7
7 0.10 r8
7 0.10 r9
7 0.78 r2
7 0.78 r3
7 0.78 r4
7 0.78 r5
7 0.99-r1
7 0.99-r2
7 0.99-r3
7 0.99-r4
7 0.99-r5
7 0.99-r6
7 0.99-r7
7 0.99-r8
7 0.99-r9
8 0.08 r10
8 0.09 r10
8 0.09 r11
8 0.09 r12
8 0.09 r13
8 0.10 r10
8 0.10 r11
8 0.10 r12
8 0.10 r13
8 0.10 r14
8 0.10 r15
8 0.10 r16
8 0.10 r17
8 0.10 r18
10 4.1.0.2980
10 4.1.0.3001
```
So it's 10 characters. (Sorry for the long Bash one-liner)
Also I visited the older code from WinPcap, and it seems it used a
64-byte long string:
[packetNtx/Dll/Packet32.c#L105](https://github.com/wireshark/winpcap/blob/267327e/packetNtx/Dll/Packet32.c#L105 )
```
char PacketLibraryVersion[64];
```
So I assumed it's safe to allocate the same on stack.
2023-12-18 13:00:59 +02:00
Shwartsman
d794b516e1
rewrite XSAVE/XRESTORE CPUID leaf reporting,
...
fixed several bugs and made code correct for all future XSAVE extensions
2023-12-18 11:35:55 +02:00
Stanislav Shwartsman
54831068df
implement RDMSRLIST/WRMSRLIST instructions (+related VMX extensions) ( #176 )
2023-12-16 21:59:34 +02:00
Shwartsman
accb975173
use true/false for boolean values insetad of 0 and 1
2023-12-16 19:07:03 +02:00
Shwartsman
e9c39194f2
update CHANGES
2023-12-16 16:55:56 +02:00
Vort
ee528baa03
Expand maximum resolution for Banshee and Voodoo 3 from 1600x1280 to 1920x1440 ( #175 )
...
Fixes #174 .
2023-12-16 16:51:18 +02:00
Shwartsman
e68ae599af
added comments and consts for CPUID definitions
2023-12-16 10:10:48 +02:00
Shwartsman
cd350d8548
adopting hack listed in https://github.com/bochs-emu/Bochs/issues/147 to solve hang
2023-12-16 08:45:53 +02:00
Vort
02704120a3
Implement Voodoo 3 writes with length 8 ( #173 )
...
Fixes #172
Co-authored-by: Stanislav Shwartsman <stlintel@gmail.com>
2023-12-16 08:28:59 +02:00
Shwartsman
0fbf559276
fix bx_banshee_c::mem_read unknown access length warning
2023-12-16 08:24:08 +02:00
Shwartsman
e67fb33443
fix potentially un-initialized value warning
2023-12-15 22:49:34 +02:00
Shwartsman
438fd787c3
attempt to warn (BX_ERROR) for unsupported read/write size
2023-12-15 22:31:49 +02:00
Vort
30db11d271
Fix memory corruption when reading Voodoo ROM ( #169 )
...
Fixes #131 .
2023-12-15 22:24:57 +02:00
Volker Ruppert
50258bf32e
Improved Ne2k bootrom parameter description.
2023-12-14 23:01:11 +01:00
Volker Ruppert
5fec28cb17
Partly fixed display errors found in game Prehistorik 2 (issue #166 ).
...
- Fixes in MAP13 disabled mode (VGA mode 6): half dot clock, color support
- Modified method get_vga_pixel(): now using row start address as an argument
2023-12-13 17:15:09 +01:00