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
Volker Ruppert
7641d13614
E1000: Added support for i/o mapped register access to make DOS driver work.
2023-12-11 21:21:34 +01:00
Shwartsman
4a6ec57711
remove redundant space in comment
2023-12-10 20:44:05 +02:00
Volker Ruppert
6c955d6d2a
Update CHANGES
2023-12-10 13:29:12 +01:00
Volker Ruppert
bb477316f1
Some small bximage quiet mode changes.
...
- Show error message if a parameter is missing for quiet mode.
- Show defaults in help message.
- Added quiet mode example in manual page.
2023-12-10 11:17:21 +01:00
Volker Ruppert
35c39e46c0
Added BIOS capabiölity to enter keycode with ALT + numeric keypad.
2023-12-10 10:05:54 +01:00
Volker Ruppert
0d49d2a8df
Added 'flash_data' parameter to the romimage option.
...
This parameter defines the file name for the flash BIOS config space loaded
startup if existing and saved on exit if modified. The Bochs BIOS doesn't
use this feature yet. Updated 'romimage' option documentation.
2023-12-09 17:52:33 +01:00
Volker Ruppert
8c89528617
Fixed assertion failure on exit ( #164 ).
...
The io object should never been deleted.
2023-12-09 14:22:02 +01:00
Volker Ruppert
b03e901206
Update CHANGES
2023-12-08 14:32:26 +01:00
Volker Ruppert
20b61b31f2
Improved parsing bochsrc options passed on the command line (see issue #160 ).
...
If the last char of an argument is a colon, equal sign or comma and there is
at least one more argument, then concatenate these arguments to one and pass
it to parse_line_unformatted().
2023-12-08 14:17:40 +01:00
Volker Ruppert
edb9c7aad8
Added save/restore support for the ESCD space in the flash BIOS ROM. ( #162 )
...
These changes only have an effect when using a BIOS image designed for
real hardware (tested with asus_p6np5.bin). When using Bochs BIOS no
data will be saved / restored, since the 'flash_modified' value is
always set to 'false'. Saving ESCD data on exit is not implemented yet,
but it shouldn't be hard to do.
2023-12-07 21:45:39 +01:00
Stanislav Shwartsman
2eccb25e8f
x87: Implemented special behavior for 287-compatibility FSTP opcode: D9D8..D9DF - Behaves the same as FSTP but won't cause a stack underflow exception.
2023-12-07 12:56:02 +02:00
Volker Ruppert
54aeba83d3
Moved CMOS image runtime options setup to cmos.cc.
2023-12-05 18:16:24 +01:00
Volker Ruppert
7fcf4a419a
Added support for saving CMOS image at runtime.
...
- Added CMOS image options to runtime menu (except RTC init).
- Fixed default size of Bochs CMOS RAM (s.max_reg).
- Fixed bochsrc parse to make 'rtc_init' parameter work.
- In textconfig now using SERIES_ASK for CMOS image options.
2023-12-04 20:39:24 +01:00
Volker Ruppert
c8b370d206
Added split screen support to the 256-color VGA mode called "modeX".
2023-12-03 19:42:05 +01:00
Volker Ruppert
77eaf072b4
Update CHANGES
2023-12-03 17:20:35 +01:00
Shwartsman
9e68546126
cleanup more leafs in CPUDB
2023-12-03 17:59:48 +02:00
Shwartsman
624a7a33a4
fixed compilation
2023-12-03 16:57:58 +02:00
Shwartsman
d6e60afd9f
remove configure scripts which were used only for CI/DI and not part of the new CI/DI configuration script
2023-12-03 16:50:45 +02:00
Shwartsman
4462ff5abe
updated in CI/DI scripts
2023-12-03 16:49:40 +02:00
Shwartsman
a1060a0825
cleanups in CPUDB cpuid definitions
2023-12-03 16:46:39 +02:00
Volker Ruppert
18d1e76444
X gui: a short delay makes it show the modeless message box correctly.
2023-12-03 15:28:23 +01:00
Volker Ruppert
7f420fc260
Added modeless message box in the restore code and some related fixes.
...
- Show message box while restoring hardware state.
- Set modeless message box handle to NULL after destroying it.
- Reset all config options to default before restoring config.
- Fixed CMOS RTC value after restore if in 12-hour-mode.
- Fixed possible segfault in the plugins code caused by Voodoo plugin in VGA mode
(found at restore code testing).
2023-12-03 12:34:03 +01:00
Vort
9ac605e411
Enable asserts for MSVC Debug builds ( #158 )
...
Enabling `assert`s in Debug MSVC builds (removing of `NDEBUG` defines)
allows to catch more bugs.
No changes were made to `BX_ASSERT` handling.
Also I did not touched `vs2019-plugins` because it looks broken for me.
2023-12-03 11:16:48 +02:00
Vort
5147c20eaa
Enable static library linking for MinGW builds ( #152 )
...
This change allows to build Windows binaries without dependencies on
toolchain-specific libraries (like `libc++.dll`).
It allows to perform version updates by copying of single `bochs.exe`,
without the need for searching and distribution of linked DLLs.
---------
Co-authored-by: Volker Ruppert <Volker.Ruppert@t-online.de>
2023-12-03 09:00:23 +02:00
Benjamin David Lunt
d9bee7d87a
Added warning note ( #156 )
...
The Legacy BIOS is incapable of handling a PCI enabled VGA rom, so added
a warning to not use this particular combination.
2023-12-03 07:41:41 +02:00
Volker Ruppert
9216d228be
Treat configure script as binary file
2023-12-02 17:47:55 +01:00
Volker Ruppert
98f4180764
Added shortcut script for Github build tests.
...
In addition to release, nothing and everything, I have added "i686" for the
maximum possible i686 config and "x86-64" for the minimal 64-bit cpu config.
2023-12-02 16:26:05 +01:00
Volker Ruppert
af47384d96
Regenerated configure script and updated CHANGES.
2023-12-02 15:13:39 +01:00