Volker Ruppert
171697da03
Fixed save/restore with debugger enabled.
2024-02-17 09:23:39 +01:00
Volker Ruppert
cc162522bb
Fixed compilation with VGA_MEM_FIX not set.
2024-02-17 08:59:00 +01:00
Volker Ruppert
9e6d839caa
VGA_MEM_FIX: Force a refresh of the text buffer on mode change and restore.
2024-02-17 08:53:25 +01:00
Volker Ruppert
75d76db967
Cirrus: Added support for 4-bpp VBE modes with original VGABIOS.
2024-02-16 14:23:56 +01:00
Benjamin David Lunt
e4d8ca494f
Update usb_ehci.cc ( #271 )
...
No reason to stop executing the Async list simply because the driver
didn't clear the IAA bit in the Status register.
Normally, a driver should clear it, but there is no instruction in the
specification to stop the Async list simply because this bit isn't
cleared.
Debug log is still present to inform the user.
Co-authored-by: Volker Ruppert <Volker.Ruppert@t-online.de>
2024-02-15 16:53:29 +01:00
Volker Ruppert
1ff88fdd05
VGA_MEM_FIX: Added text buffer in legacy format to simplify text update.
...
Using character / attribute pairs expected by the gui text update makes the
update code simpler and faster.
TODO: If possible add a buffer for active text font data.
2024-02-13 17:38:52 +01:00
Shwartsman
7b5fb0b749
AVX-512 VREDUCE* should never raise #Denormal, #Overflow or #Underflow
2024-02-12 21:15:43 -06:00
Volker Ruppert
57d38ffb86
VGA_MEM_FIX: Added memory size mask to fix planar VGA modes.
2024-02-12 22:12:34 +01:00
Volker Ruppert
117f71a185
VGA_MEM_FIX: Some odd/even mode changes for correctness.
...
Offset must be shifted left by 2 instead of 1.
Even offset writes can go to plane 0 and 2, odd ones to plane 1 and 3.
2024-02-12 16:58:38 +01:00
Volker Ruppert
30c1e74627
VGA_MEM_FIX: Next attempt to fix odd/even mode related issues.
...
Now using the sequencer 'odd/even disable' switch to determine mode.
2024-02-11 17:11:48 +01:00
Volker Ruppert
549d052e34
VGA_MEM_FIX: Picked a better name for the sequencer odd/even disable switch.
2024-02-11 14:49:12 +01:00
Volker Ruppert
0e5800bf98
VGA_MEM_FIX: Fixed cursor address of the invisible cursor.
...
Now using the highest address of the default text mode buffer.
2024-02-11 13:40:02 +01:00
Volker Ruppert
39155bd3ae
VGA_MEM_FIX: Temporary fix for special memory access mode in modeX.
...
In odd/even mode fall back to planar mode if "chain odd/even" bit is 0.
2024-02-11 09:37:06 +01:00
Volker Ruppert
945ee597f0
Added currently disabled set of fixes for the VGA memory management.
...
- Added disabled definition VGA_MEM_FIX in vgacore.h. The VGA core code works as
usual unless you uncomment the define.
- Added correct implementation of the "chain four" and "odd/even" addressing mode.
This should fix the Debian / GRUB boot issue (#257 ) with both Bochs VBE and Cirrus.
- Added some compatibility code to make the gui text update work as usual.
- Tested all VGA modes except 256-color word mode (no test case).
- Some more testing with old DOS games may be required before I enable it by default
and finally remove the legacy code.
2024-02-10 17:30:24 +01:00
Volker Ruppert
fd68912dc7
Small cleanups in the VGA core code.
...
The text snapshot buffer is now allocated dynamicly.
2024-02-10 14:00:09 +01:00
Shwartsman
e7ef67f89b
bugfix for float64_getmant
2024-02-10 13:27:16 +01:00
Volker Ruppert
4ab88c3d8f
Cirrus: The first MB of video memory is always accessible.
2024-02-10 10:36:39 +01:00
Volker Ruppert
5c715aa9a3
Fixed clipping parameters in Banshee/Voodoo3 (issue #236 ).
...
Added 'clip_mask' with width depending on model.
Fixed VGA display issue discovered with Voodoo3.
2024-02-09 15:03:32 +01:00
Volker Ruppert
e5ff346368
Some fixes and cleanups after latest changes.
...
- Fixed Cirrus text mode output.
- VBE now using it's own 'line_offset' value.
- Since font change is now handled in update(), removing gui method set_text_charbyte().
2024-02-09 14:34:01 +01:00
Volker Ruppert
e53cf3b962
VBE/VGA: More accurate implementation of GRUB save/restore support.
...
Added VGA chain4 mode read/write support from VBE frame buffer.
Handle charmap update in update() using modified 'vga_mem_udated' flag.
Added temporary code for chain four memory addressing.
TODO: VGA memory handling rewrite including odd/even mode support.
2024-02-08 23:05:48 +01:00
Stanislav Shwartsman
c3269722f4
fixed spelling in comment
2024-02-07 00:18:06 +02:00
Volker Ruppert
1221217a7d
VBE: Preserve original line offset while in VBE mode.
2024-02-06 21:49:59 +01:00
Volker Ruppert
4e6b4165f5
Added workaround for the save/restore function of the GRUB bootloader.
...
The VGA core needs an extensive rewrite to support it correctly with
both Bochs VBE and Cirrus.
2024-02-06 20:36:15 +01:00
Stanislav Shwartsman
ad8c21437f
fix segfault @ 'step all' command in single-processor config
2024-02-05 22:06:24 +02:00
Benjamin David Lunt
3525a89b7a
Update usb_xhci.cc ( #262 ) : The EDTLA should be updated for OUT going packets too.
...
The EDTLA should be updated for OUT going packets too.
2024-02-05 07:08:31 +02:00
Benjamin David Lunt
17a7a30c10
Update usb_xhci.cc ( #260 ) : Don't check the size of a non-existent segment in an event ring table.
...
Don't check the size of a non-existent segment in an event ring table.
2024-02-05 07:08:05 +02:00
Benjamin David Lunt
f1e4e6757e
Update usb_xhci.cc ( #255 )
...
Update conditional compilation due to conflicting statements in
different versions of the specs on the `ep_context->ep_state` value
initialization during a `SetAddress` command.
2024-02-04 08:12:04 +02:00
Volker Ruppert
6391cf0093
Fixes for VBE 4-bpp modes support.
...
Row address must be 32 bit wide and VGA compatible display end is limited to 1023.
TODO: Fix VGA compatible setup for VBE modes in VGABIOS.
2024-02-03 18:02:10 +01:00
Volker Ruppert
cd0feed380
VGA core: Added support for extended 4-bpp modes (tested with Cirrus).
2024-02-03 14:51:12 +01:00
Vort
5474eb6963
Cirrus: Add support for palette modes with pixel frequency > 85 MHz ( #254 )
...
It allows to use 1152x864x8 mode with [original
BIOS](https://github.com/bochs-emu/Bochs/files/14130753/cl-gd5446_pci_vga_bios_version_1.31.zip ).
2024-02-03 14:12:40 +01:00
Stanislav Shwartsman
37341c8838
fixed massive code duplication
2024-02-02 22:36:56 +02:00
Volker Ruppert
6aec66d210
Cirrus: Fixed tile x/y calculation for double scan and double width.
2024-02-02 20:49:38 +01:00
Volker Ruppert
ca482ab98e
Cirrus: Handle double scan and double width at banked memory writes.
...
TODO: Cursor still looks incorrect with modeset test program.
2024-02-02 19:00:15 +01:00
Stanislav Shwartsman
f3537f282a
Legacy form of XRSTOR loads the MXCSR register from memory whenever the
...
RFBM[1](SSE) or RFBM[2](AVX) is set, regardless of the values of XSTATE_BV[1] and XSTATE_BV[2]
2024-02-02 08:43:36 +02:00
rofl0r
fb8fc563ab
bximage: flush stdout after asking a question ( #251 )
...
otherwise the question may not even arrive there, depending on the
implementation-defined behaviour of stdio buffering.
fixes display of questions with musl libc.
2024-02-01 22:54:31 +02:00
Shwartsman
88fb948088
updates to paging code for debugability and code duplication reduction
2024-02-01 15:15:26 +02:00
Shwartsman
3ed8639bfa
some style notation to avoid errors and make code cleaner to read
2024-01-30 20:08:42 +02:00
Volker Ruppert
92eb0e12be
Cirrus: Added double width support to fix up aspect ratio in double scan mode.
...
TODO: Hardware cursor code untested - test program doesn't use it.
2024-01-30 18:28:47 +01:00
Song Ziming
9b5c43821e
Init LDR whenever x2APIC mode is enabled ( #250 )
...
According to Intel SDM vol3 11.12.10.2 (Deriving Logical x2APIC ID from
the Local x2APIC ID), "The LDR initialization occurs whenever the x2APIC
mode is enabled".
2024-01-30 08:47:22 +02:00
Stanislav Shwartsman
e54048c163
XSAVEC/XSAVEC: don't allow 'compaction' of SSE state
...
this bug also prevented win10 from booting
2024-01-29 22:11:08 +02:00
Volker Ruppert
347a1bef56
Voodoo3: In double width mode also double hardware cursor width.
...
Improved mode reporting and fixed possible segfault caused by invalid pitch.
2024-01-29 19:33:29 +01:00
Stanislav Shwartsman
cf40e63b87
XRSTOR: correct 'format' for case compaction is not enabled
2024-01-29 19:40:21 +02:00
Stanislav Shwartsman
7aa8489b1a
fixed severe XRSTOR emulation issue, prevented boot of Win10
2024-01-29 18:40:19 +02:00
Stanislav Shwartsman
6554f9b7b6
a little code optimization, no impact on correctness
2024-01-29 15:28:25 +02:00
Stanislav Shwartsman
0cfa33733e
correct clear_busy for shadow stack in case of IRET - should use old SSP
2024-01-29 15:08:54 +02:00
Stanislav Shwartsman
b373890b05
fix supervisor shadow stack EPT violation detection
2024-01-28 22:03:57 +02:00
Stanislav Shwartsman
2f0338fe0c
fixed bug in MOVDIR64B - source and destination were swapped
2024-01-28 21:38:57 +02:00
Stanislav Shwartsman
41202ebb68
bugfix for supervisor shadow stack and VMX
2024-01-28 20:57:43 +02:00
Volker Ruppert
d4d1fff83b
NE2000: Don't check PCI slot config in parser, but then in init code.
...
TODO (for other devices):
The parser code should not expect that a specific config parameter is
already set. Only the device init code should bring all things together.
2024-01-28 17:50:14 +01:00
Volker Ruppert
14f6753ad8
Voodoo 1/2: Final attempt to implement byte writes correctly.
...
Simply shift byte to the right position and write 0's elsewhere.
2024-01-28 16:57:17 +01:00
Shwartsman
4de017762a
fixed permission check for CET
...
added SSP save/restore is SMM code
fixed CET_S state in_use calculation
2024-01-28 17:25:21 +02:00
Volker Ruppert
4ee4b89102
Voodoo 1/2: Next attempt to implement byte writes.
...
New code: read 32-bit, mask out required byte, apply new byte, write 32-bit.
2024-01-28 14:43:58 +01:00
Volker Ruppert
caef53a4a1
Voodoo 1/2: Added support for dword aligned byte writes.
...
TODO: For unaligned writes the voodoo_w() function needs to be modified.
2024-01-28 11:05:16 +01:00
Volker Ruppert
2c4b9e9457
Don't set up tiles for update if screen parameters are invalid.
2024-01-28 10:31:06 +01:00
Benjamin David Lunt
19fc78d2db
Update usb_xhci.cc ( #245 )
...
reset closer to real hardware
2024-01-28 08:42:41 +02:00
finnbrudal
106e7fa03a
Fix XHCI Address Device command ( #244 )
...
Was sending the SET_ADDRESS request using the wrong (old) slot context.
2024-01-28 07:22:09 +02:00
Stanislav Shwartsman
58663d3c68
fix bug intoduced in c4689f284c
2024-01-27 23:05:38 +02:00
Volker Ruppert
3ec05e8f05
Voodoo 1/2: Added support for 8 and 16 byte writes (issue #241 ).
...
Also added 16-bit read support. Odd data size and address support not done yet.
2024-01-27 18:58:22 +01:00
Stanislav Shwartsman
c4689f284c
fix spurious read of potentially non-existing SECONDARY_VMEXIT_CTRLS
2024-01-27 18:38:14 +02:00
Stanislav Shwartsman
b685996081
fixed compilation
2024-01-27 18:30:22 +02:00
Stanislav Shwartsman
ae61538847
create classes for Vmexec controls for robustness
2024-01-27 18:04:00 +02:00
Stanislav Shwartsman
035fb1edaa
create class for Pin-Based VMEXEC controls for robustness
...
create class for Vmentry controls for robustness
create class for Vmexit controls for robustness
2024-01-27 15:14:29 +02:00
Stanislav Shwartsman
38b1bbf4ff
Implemented VMX 'Shadow Stack Prematurely Busy' and secondary VMEXIT controls
2024-01-27 13:34:51 +02:00
Stanislav Shwartsman
e14b126198
fixed rounding to float16 (found during AVX512_FP16 development)
...
used Softfloat3 code as reference
2024-01-26 22:53:39 +02:00
Stanislav Shwartsman
093d4428ec
read less bits for mask with DOUBLE precision elements
2024-01-26 20:36:29 +02:00
Shwartsman
0e1c5e35ff
added error message for unimplemented access len in bx_voodoo_1_2_c::mem_read_handler
2024-01-26 09:45:00 +02:00
Volker Ruppert
30a61c2a51
Banshee/Voodoo3 fixes in mem_write_linear (issue #231 ).
...
- Applied memory mask to start address.
- Consider half mode and double width for redraw setup.
2024-01-25 19:57:28 +01:00
Shwartsman
437ddc96fc
Addressing Black screen in Descent II: Destination Quartzon 3dfx OEM with Voodoo #238
2024-01-24 17:04:21 +02:00
Shwartsman
995e8fb6c6
let Bochs debugger switch CPU by simply typing 'cpu N' command insetad of doing 'set $cpu = N'
2024-01-23 23:13:20 +02:00
Shwartsman
164772103a
use 'a' as 'all' in debugger
2024-01-23 19:25:56 +02:00
Shwartsman
b5bcbfced0
fix segfault @exit with debugger introduced by previous commit
2024-01-23 16:11:15 +02:00
Shwartsman
fb42896000
better support of SMP in debugger methods
2024-01-23 11:08:05 +02:00
Stanislav Shwartsman
ae0c9df317
compile stand alone disasm tool even if BX_DEBUGGER is configured in
2024-01-22 22:13:28 +02:00
Volker Ruppert
a663b9d1d0
Minor Banshee/Voodoo3 changes.
...
- Update pens when switching from / to 3D mode.
- Improved BX_ERROR message for unimplemented feature.
2024-01-22 20:23:40 +01:00
Volker Ruppert
75757e9852
Banshee/Voodoo3: Fixed overlay stride.
2024-01-22 16:37:18 +01:00
Stanislav Shwartsman
a2296e5d2a
when printing instruction disassembly in debugger add status "(halted)" about halted CPU
2024-01-21 23:00:55 +02:00
Stanislav Shwartsman
c1a65ff7c4
introduce a method to switch dbg_cpu when needed
2024-01-21 22:39:59 +02:00
Shwartsman
0141f2767c
fixed compilation for i386 config and with no SVM
2024-01-21 22:03:53 +02:00
Shwartsman
e960e574f4
this annoying message happens always when debugger is closed
...
change to BX_INFO
2024-01-21 17:44:17 +02:00
Shwartsman
8abfde13d7
complete support of SVM Nested Walk in dbg including 'page' command
2024-01-21 17:44:17 +02:00
Volker Ruppert
ea0b208970
Cirrus: Implemented double scan support for color depth > 8.
...
TODO: Screen width not adjusted yet (should be done similar to Voodoo3).
2024-01-21 10:09:30 +01:00
Benjamin David Lunt
9820cf934e
Update ohci_core.cc ( #232 )
...
On a buffer underrun (Short Packet), we still need to update the CBP
---------
Co-authored-by: Volker Ruppert <Volker.Ruppert@t-online.de>
2024-01-21 06:56:35 +01:00
Benjamin David Lunt
7851bf8ce1
Update hdimage.cc ( #233 )
...
Change an ERROR to a PANIC when a .lock file is found.
2024-01-21 06:39:48 +01:00
Volker Ruppert
7ad1fd0088
Update CHANGES.
2024-01-20 23:27:30 +01:00
Volker Ruppert
db0d16ff09
Banshee: Double the screen width in 'half mode' if height > width.
2024-01-20 22:30:47 +01:00
Shwartsman
f014160835
Add Bochs intenal debugger welcome message and improve help command
2024-01-20 21:09:46 +02:00
Volker Ruppert
ab32c8a2bb
Update CHANGES and 'vga: update_freq' in docs.
2024-01-20 10:59:34 +01:00
Shwartsman
4eae91f1ca
addressing issue Possible Undefined Behavior in NEG_EdR() and NEG_EdM() #227
2024-01-20 08:19:43 +02:00
Shwartsman
35abc682cb
Merge fix for "Crash when floppy image file is missing #229 "
2024-01-20 07:53:26 +02:00
Shwartsman
d9d07c03ec
update CHANGES with critical ADOX fix
2024-01-19 20:35:54 +02:00
Shwartsman
dd9aaa7325
Fixed OF flag for ADOX instruction
...
The OF flag defintion is different from OF of other instructions
Instead it is defined as:
The instruction sets the OF flag with the **carry** generated by the unsigned addition of the operands.
2024-01-19 20:30:47 +02:00
Volker Ruppert
6e48bc78fc
VGA core: Implemented a more accurate vertical timing.
...
Now using one timer with two alternating periods. A modification of the timer code
wasn't necessary. The update mode vsync is not yet affected by this change.
2024-01-19 18:40:13 +01:00
Volker Ruppert
4112a10fbd
Update changes
2024-01-18 23:42:45 +01:00
Volker Ruppert
b382358e80
Banshee: Attempt to fix redraw in case bitblt is used in 3D mode.
2024-01-18 20:32:29 +01:00
Volker Ruppert
6770a355ae
Cirrus: Fixed redraw issue caused by misaligned bitblt region.
...
If x0 + width exceeds the screen width, mark tile(s) on the left side of the screen, too.
This should finally fix issue #221 .
2024-01-17 22:12:30 +01:00
Volker Ruppert
c66d6f1a0e
Cirrus: Fixed possible segfault caused by missing address wrap.
...
- Added address wrap in cpu-to-video transparent bitblt.
- Added BX_DEBUG for address wrap detection and fixed redraw parameters.
TODO: Check other methods for possible segfaults.
2024-01-17 19:23:08 +01:00
Shwartsman
9d5bfa9064
UINTR: uitt_addr[3:0] are reserved and must be cleared before reading UITT entry
2024-01-17 14:52:49 +02:00
Stanislav Shwartsman
0f677ccfc6
change comments
2024-01-16 21:23:45 +02:00
Stanislav Shwartsman
c5436a4891
update CHANGES
2024-01-16 20:58:39 +02:00
finnbrudal
3455581a71
Cirrus: BLT System-to-screen Dword Pointer (GR2F[6:5]) implemented ( #223 )
...
Bits 5-6 of the left side clipping register have been implemented.
Co-authored-by: Volker Ruppert <Volker.Ruppert@t-online.de>
2024-01-16 19:10:06 +01:00
Stanislav Shwartsman
f8d1050a3f
Implemented SVM VM_CR_MSR and INIT redirection feature ( #220 )
...
Save and restore SVM MSRs
2024-01-16 07:42:28 +02:00
Vort
ba7c8ed57a
Cancel topmost mode after leaving fullscreen mode ( #224 )
...
`HWND_TOPMOST` should be cancelled with `HWND_NOTOPMOST` when it is not
needed anymore.
Co-authored-by: Volker Ruppert <Volker.Ruppert@t-online.de>
2024-01-16 00:03:32 +01:00
Volker Ruppert
8528604888
Cirrus: Corrected redraw fix for backward BitBlt.
2024-01-15 23:28:23 +01:00
Volker Ruppert
bcfe5e129f
Cirrus: Fixed redraw values for backward BitBlt.
2024-01-15 17:11:25 +01:00
Shwartsman
d965a16a7d
cosmetic updates for SVM code
2024-01-14 20:30:04 +02:00
Volker Ruppert
77fffc1336
SDL: Cleaned up fullscreen toggle functions.
...
FIXME: Window height sometimes not restored correctly (observed on Linux / X11).
2024-01-14 17:49:44 +01:00
Volker Ruppert
103b4fa8eb
SDL2: Save / restore window position when using fullscreen toggle.
...
FIXME: Display updates can fail after toggle (observed on Linux / X11).
2024-01-14 17:00:05 +01:00
Shwartsman
e4deec2aca
cleanups and code updates before thinking of INIT redirection implementation for AMD SVM
2024-01-14 12:55:43 +02:00
Shwartsman
61a35063c5
remove all ifdefs from features.h
...
I'd like features bitmasks to be independent on Bochs compilation flags
so let all flags to be 'exists' even if corresponding feature is not compiled in.
2024-01-14 12:51:41 +02:00
Volker Ruppert
9fdb898dfe
SDL / SDL2: change fullscreen toggle to key combination ALT+ENTER.
...
TODO: Fix some issues related to this feature.
2024-01-14 11:41:01 +01:00
Volker Ruppert
04ed1e8fd2
Some more VGA timing handling chages.
...
- Changing status of 'update_mode_vsync' is no longer supported at runtime.
If disabled, changing the value is only valid between 1 and 75.
- Modify vtotal_usec if frequency to high before activating vsync_timer.
2024-01-14 10:13:39 +01:00
Volker Ruppert
2585b6ff68
SDL2: Don't show dialog box if Bochs is killed with SIGTERM.
2024-01-14 07:01:31 +01:00
Stanislav Shwartsman
144367c2d4
Enable ia32_spec_ctrl virtualization for SPR
2024-01-13 22:05:45 +02:00
Stanislav Shwartsman
b2cf7860dc
VMX: Implemented MSR IA32_SPEC_CTRL Virtualization VMX extension
...
fixed few typos in error messages
2024-01-13 21:58:23 +02:00
Volker Ruppert
7e7c7c45ef
Attempt to fix HPET reset in legacy mode (issue #218 ).
2024-01-13 20:13:23 +01:00
Stanislav Shwartsman
540c7bbf64
update and cleanup CHANGES
2024-01-13 20:53:54 +02:00
Volker Ruppert
1ebe15e3fc
Rewrite of the VGA timing code.
...
- Added VSYNC timer handler using vertical total usec. The calling time is defined
as vertical retrace end and it updates the CRTC start address like real VGA does.
It also calculates the display start time used when reading the input status register.
The VSYNC timer is disabled in Voodoo / Banshee modes.
- Improved VGA timing calculation (e.g. vertical blanking and retrace start).
2024-01-13 19:33:35 +01:00
Shwartsman
63539d32dc
fixed complation for .conf.nothing
2024-01-13 19:38:04 +02:00
Stanislav Shwartsman
0c1027e243
extract paging exception checking logic to separate function and solve a lot of code duplication
2024-01-13 17:47:42 +02:00
Stanislav Shwartsman
d037138e4e
extract Protection Keys handling code to separate function
2024-01-13 15:57:13 +02:00
Stanislav Shwartsman
adb50a9210
implemented "advanced VM-exit information for EPT violations"
...
comes in complementary with VMX MBE control which was already in the model
2024-01-13 15:22:58 +02:00
Stanislav Shwartsman
b84b922da3
remove unused 'shadow stack' bookkeeping from paging attributes
2024-01-13 11:57:30 +02:00
Stanislav Shwartsman
9fc53de186
VMX: PML address saved should be always 4K aligned
...
Fixes #217
2024-01-13 09:43:28 +02:00
Volker Ruppert
dbc1f5d93a
Cirrus: Fixed color expand bitblt with dword granularity enabled.
2024-01-13 05:18:07 +01:00
Stanislav Shwartsman
997fd85ec9
Set EFLAGS.RF on triple fault before shutdown or VMEXIT
2024-01-12 21:12:17 +02:00
Stanislav Shwartsman
ceaffe85d3
move code from paging.cc to access.cc
...
intoduce a function to solve code duplication
2024-01-12 21:08:14 +02:00
Stanislav Shwartsman
6977fc05d9
VMX: adjust RFLAGS saved into guest state on VMEXIT according to VMX documentation:
...
For APIC-access VM exits and for VM exits caused by:
- EPT violations
- EPT misconfigurations
- page-modification log-full events or
- SPP-related events
the value saved depends on whether the VM exit occurred during delivery of an event through the IDT ...
also handle RFlags saved if VMEXIT was caused directly by an event that would normally be delivered through the IDT
should fix #215
2024-01-12 20:01:53 +02:00
Volker Ruppert
5b6872168a
Banshee: Attempt to implement 8 and 16 byte writes to CMDFIFO.
...
- The mem_write_handler() splits 16 bytes writes in two 8 bytes writes.
- In mem_write() the 8 byte writes to CMDFIFO are split in two 32-bit writes.
2024-01-12 18:56:49 +01:00
Volker Ruppert
75fe93bc03
Updated MSVC workspace files.
2024-01-12 17:48:16 +01:00
Volker Ruppert
71d9b7e720
Documentation updates.
2024-01-12 16:12:26 +01:00
Stanislav Shwartsman
081f3aa349
update CHANGES with recent fixes made by Volker
2024-01-12 13:02:36 +02:00
Stanislav Shwartsman
ddb9aeff59
fixups in CHANGES file
2024-01-12 12:56:34 +02:00
Shwartsman
6f4f217a08
implemented AMX_FP16 and aMX_COMPLEX, fixes for daz handling in AVX_NE_CONVERT FB16
...
updated CHANGES
2024-01-12 12:38:31 +02:00
Stanislav Shwartsman
167942816a
regen Makefile.in dependencies
2024-01-12 01:10:47 +02:00
Stanislav Shwartsman
0eab037907
dynamically allocate VMCB_CACHE only if SVM is actually enabled by CPU model
...
also reduces include dependency on svm.h
2024-01-12 00:56:09 +02:00
Stanislav Shwartsman
d6769cecfc
AMX was added to 'release' conf but not to 'everything'
2024-01-12 00:30:53 +02:00
Stanislav Shwartsman
6b48d6e33f
resolution for SF bug #1460 Incorrect "Blocking by NMI" bit when handling NMI VM-exit
...
as well as
resolution for Test stuck due to incorrect Virtual NMI handling #211
which appear the same problem
2024-01-12 00:19:44 +02:00
Shwartsman
9e36971e0f
fixed TILELOADD/TILESTORED and TDPBF16PS
2024-01-11 21:04:14 +02:00
Shwartsman
8dca1e0e07
correct implementation of AMX TDPBxxD instructions
2024-01-11 20:20:33 +02:00
Volker Ruppert
b8054277cb
Fixed compilation with PCI disabled.
...
When switching to Voodoo 1/2 update timer only if update_mode_vsync is enabled.
Still TODO: update docs.
2024-01-11 18:30:39 +01:00
Volker Ruppert
fc6703a2f7
VGA update timer using vertical frequency now supported by Voodoo devices.
...
TODO: update docs.
2024-01-11 17:48:11 +01:00
Shwartsman
89d992b5b8
fixed ( #214 ) wrong MSR name typo in MSR error message
...
in real mode exceptions should not push error code to stack so the same should be for VMEXIT due to HW exception from unrestricted real mode guest (fixes #211 )
2024-01-11 08:10:42 +02:00
Shwartsman
77bbdca17a
change from USB Debugger branch by Ben, rename variable
2024-01-10 21:25:03 +02:00
Stanislav Shwartsman
cc87b23738
regen configure after AMX added
2024-01-10 20:23:55 +02:00
Stanislav Shwartsman
3a02e85599
AMX support ( #212 )
2024-01-10 20:13:25 +02:00
Volker Ruppert
cfa7276cb9
Added support for driving the VGA display update timer with VSYNC.
...
- Using the special value of 0 enables this feature. In that case the vertical
frequency is used for the display updates. The update() method is called at
the "vertical retrace end" time and sets the time of the display start. This
value is used to set the vertical retrace indicator in VGA register 0x03da.
- This feature is not yet enabled if Voodoo support is present. The Voodoo device
has it's own vertical timer and needs some more testing and possibly some changes.
2024-01-09 21:48:19 +01:00
Shwartsman
c04fb9a6ba
Fixed decoding of AVX-VNNI instruction (typo in decoder tables)
...
mention AVX-VNNI in CHANGES
2024-01-09 09:14:39 +02:00
Shwartsman
e5ef6d6a47
According to documentation (8254.pdf), mode 6 is the same as mode 2 and mode 7 is the same as mode 3.
2024-01-08 20:27:59 +02:00
Volker Ruppert
f06346afcb
Voodoo Banshee: added missing type cast in mem_write().
2024-01-07 22:05:41 +01:00
Volker Ruppert
9dbca8951e
Fixed Banshee read from ROM and mem_write() for any size and endianness.
2024-01-07 19:33:58 +01:00
Volker Ruppert
0d3a63b08d
Updated LGPL'd VGABIOS to release 0.8c.
2024-01-07 17:27:30 +01:00
Volker Ruppert
a566b1e69d
PCI MMIO space is not disabled if the Cirrus card is in VGA mode.
2024-01-07 13:55:43 +01:00
Volker Ruppert
c13ef56378
Increase maximum VGA update frequency to 75 and default to 10.
...
Small cleanups in the VGA code.
2024-01-07 11:15:04 +01:00
Shwartsman
54961f0326
fix buffer overflow with LA57
2024-01-07 07:37:18 +02:00
Volker Ruppert
080cf72f5f
Fixed CGA address wrap.
2024-01-06 16:31:04 +01:00
Volker Ruppert
c9c0237af3
Fixed start address in emulated CGA mode.
2024-01-06 15:05:33 +01:00
Volker Ruppert
6d433ec44b
Missing horizontal pel panning support added in modeX.
...
Added error messages for unsupported features (EGA only ?).
TODO: horizontal pel panning support missing or incorrectly implemented in other
graphics.
2024-01-06 11:29:39 +01:00
Shwartsman
cda3ed5a60
update CHANGES
2024-01-05 20:33:47 +02:00
Shwartsman
b24bf1dae2
CPUID: Added Xeon Sapphire Rapids CPU definition
...
Features PKS, WAITPKG, UINTR, AVX512_BF16, MOVDIRI/MOVDIR64, LA57, SERIALIZE and more
Not yet supported but will be added in future: AVX512_FP16, AMX
2024-01-05 19:54:37 +02:00
Shwartsman
a67fb31d4f
LA57: attempt to change (not just clear) LA57 in long mode cause #GP
2024-01-05 18:46:56 +02:00
Volker Ruppert
3a73e8a0b2
Fixed address wrap in non-chain4 256-color VGA mode called modeX.
...
There were blinking dotted lines visible in old DOS games (#205/#206).
2024-01-05 14:36:42 +01:00
Shwartsman
6893743a5b
prevent trace linking aftre portin/portout instructions as well
2024-01-05 09:12:01 +02:00
Shwartsman
27d48ecb94
HandlersChaining Optimization: mark IN/OUT instructions as TraceEnd, they could have significant side effects like raising interrupts which have to be handled
...
resolves issue #207
2024-01-05 08:45:10 +02:00
Volker Ruppert
1f8eb7b608
First step to fix the timer code for speaker sound output.
...
There is some output now, but not really music yet.
2024-01-04 19:26:27 +01:00
Shwartsman
41c2bb8bee
fix for LA57 cr4 checks, thanks Ben for pointing this out
2024-01-04 08:35:33 +02:00
Volker Ruppert
071f5c72f7
Reduce VGA vertical screen size if blanking starts before display end.
2024-01-03 23:48:24 +01:00
Volker Ruppert
210ea89b36
Voodoo Banshee / Voodoo3 hardware cursor fixes ( #202 / #203 ).
...
- Fixed crash in "half mode" (line doubling).
- Fixed redraw_area() values (must be unsigned).
2024-01-02 21:30:28 +01:00
Shwartsman
05b187f851
update CHANGES with SB16, keyboard, VGA and Voodoo fixes done by Volker
2024-01-02 21:49:48 +02:00
Volker Ruppert
f48acd833f
Some speaker output fixes.
...
- Increase buffer size and allocate buffer dynamicly.
- Make sure the beep_level is correctly set up in dsp_generator().
- TODO: fix timer code for usable sound output with the speaker.
2024-01-01 19:43:33 +01:00
Volker Ruppert
7985fa1ebb
X11: changed set_font() message to BX_DEBUG.
2024-01-01 11:20:05 +01:00
Volker Ruppert
10811e13ed
SB16: added 16-bit write support for even i/o addresses.
2023-12-31 16:05:20 +01:00
Volker Ruppert
1699f30d64
Reduce default keyboard serial delay to 150 to avoid timeouts.
...
Some cleanups in the keyboard code.
2023-12-31 10:47:10 +01:00
Shwartsman
b93b9ad881
fixed comments in bf16.h
2023-12-29 22:45:59 +02:00
Stanislav Shwartsman
07d28c60b8
generic cpuid fix dump_cpuid
2023-12-29 21:53:15 +02:00
Stanislav Shwartsman
75a7151fbf
let generic CPUID to use MTF VMX extension
2023-12-29 21:50:40 +02:00
Stanislav Shwartsman
ec7ef85ed9
exclude cpuid.h from cpu.h to reduce compilation dependency
2023-12-29 21:27:24 +02:00
Volker Ruppert
63ab5ea24a
Align SB16 DMA buffer size to 4 to avoid crash in 16-bit stereo mode.
2023-12-29 19:49:58 +01:00
Volker Ruppert
be1baa295c
Implemented secondary VGA charmap support.
...
All guis with 'new_text_api' and the graphical text snapshot working with it.
2023-12-29 17:47:44 +01:00
Shwartsman
133f1136d3
fix compilation with no x86-64 compiled in
2023-12-29 17:56:47 +02:00
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
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
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
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