Jonathan Campbell
611fc2b387
All other SVGA chipsets have to register set_clock, why is the S3 version part of the core VGA_SetClock function? Move out
2025-01-20 16:36:50 -08:00
Jonathan Campbell
a567ae0eb0
cleanup, remove VGA sequencer-related functions that did nothing
2025-01-20 16:29:13 -08:00
Jonathan Campbell
318b3335e6
cleanup
2025-01-20 16:08:12 -08:00
Jonathan Campbell
239237bd62
cleanup
2025-01-20 01:47:31 -08:00
Jonathan Campbell
1f0b6b3af7
cleanup
2025-01-20 01:30:59 -08:00
Jonathan Campbell
79a84d5d34
Make an alternate API to access memory by physical address, not linear address. This itself is a hack because of how mmio works in DOSBox/DOSBox-X
2025-01-19 21:50:47 -08:00
Jonathan Campbell
1bf0296976
Paging: HostRead/HostWrite method parameter should be 32-bit page frame number, not Bitu
2025-01-18 13:28:45 -08:00
Jonathan Campbell
588f195328
PAGING: Cleanup, remove non-USE_FULL_TLB code
2025-01-18 13:07:31 -08:00
Jonathan Campbell
1aff9f06c3
Begin KVM core, only as clone of normal core
2025-01-17 14:12:42 -08:00
Jonathan Campbell
7e424a0c74
Savestate fix and cleanup: Yo dawg, I heard you like zlib compression so I put zlib compression in your zlib compression. What I am saying is that the ZIP compression/decompression library already provides it, there is no need to provide additional compression.
2025-01-12 07:24:28 -08:00
Jonathan Campbell
4035992975
MIDI synth (Fluidsynth): Add code to recognize Roland GS MASTER VOLUME sysex. Now PC-98 games can "fade out" the MIDI music using GS commands (Seiyoku Gakuen Seraphita)
2025-01-10 18:35:31 -08:00
Jonathan Campbell
764389c829
Add dosbox.conf option to write protect the DOSBox private area in UMB to deal with games that have fast and loose video rendering code that can corrupt that area
2025-01-09 21:38:59 -08:00
Jonathan Campbell
22b40f1732
Include map ROM call in header
2025-01-09 21:24:58 -08:00
Jonathan Campbell
a4d24f8fc7
Revise hardware scaler option to scale the window properly. Fix hardware scale calculation to scale the window properly in both dimensions for all hardware scaler options. Fix bug in hardware scale calculations that only vertically stretched the display beyond hardware2x. Disable normal scalers entirely if hardware scaling. Add comments to code explaning that if hardware scaling makes your DOS screen fuzzy you should either use a shader or go back to the none or normal2x, etc. scaler options
2025-01-09 12:17:12 -08:00
Jonathan Campbell
895fca3670
Happy new year
2025-01-01 00:30:49 -08:00
Jonathan Campbell
9391034d4f
Prepare for release
2024-12-31 21:09:03 -08:00
Jonathan Campbell
40bf81d6b9
Begin SVGA vmemdelay
2024-12-29 09:57:22 -08:00
Jonathan Campbell
ac6f282abe
It turns out the reason Windows XP can sometimes randomly BSOD, expecially in Windows if you Alt+Tab to another application, then Alt+Tab back, is that there is "helpful" code that tries to resynchronize Num+Scroll+Caps state with the guest by modifying the BIOS data area. Those addresses are valid in actual DOS mode but if you do that in the 32-bit environment of the Windows NT kernel you will cause a page fault! Limit that synchronization to DOSBox DOS kernel and real mode.
2024-12-26 01:40:51 -08:00
Jonathan Campbell
29afab77b1
Allow more memory. Divide it into regions below and above. Adjust memalias handling and how it limits memory.
2024-12-25 11:40:15 -08:00
Jonathan Campbell
a8a2d648ea
Expand paging to the logical maximum, 40-bit PSE. That is as far as we will go. Any further expansion would require Paging TLBs to become 64-bit entries and by that point you should probably use VirtualBox or QEMU to run your mega-gigabyte possibly terabyte VM anyway.
2024-12-24 22:55:00 -08:00
Jonathan Campbell
fcd3d77e6a
Begin some conversion of the code to clarify which memory addresses are linear, and which are physical, and add some explanation
2024-12-24 22:47:28 -08:00
Jonathan Campbell
dfcdf78581
Paging: constant move to header, describe functions a bit
2024-12-24 21:12:54 -08:00
Jonathan Campbell
5c63058ae5
IRQ 1 (INT9): Begin adding PCjr keyboard handling
2024-12-22 18:54:25 -08:00
Jonathan Campbell
48d37dcbcf
comments
2024-12-22 14:03:38 -08:00
Jonathan Campbell
3f41eb6123
phys_read/write functions are not used often enough to worry too much about performance, so to avoid emulator segfaults, put the system memory range check in the phys_read/write functions themselves. Add comments about the meaning of MemBase and MemSize and how they will be used when DOSBox-X eventually supports memory sizes larger than 4GB
2024-12-22 13:59:42 -08:00
Jonathan Campbell
d8d28858a1
Revise Voodoo 3Dfx linear framebuffer constants and PCI handling.
...
Restrict S3 LFB to just below BIOS, do not let the 32MB region overlap
the BIOS. Limit Voodoo 3Dfx framebuffer to stay out of system RAM.
To prevent large memsize configurations that cause S3 and 3Dfx to
conflict, add a hardware assignment system to give each device it's own
assigned LFB region of memory. This really only has an effect when space
gets cramped with large mem sizes, otherwise it has no effect. Perhaps
someday the BIOS should assign the 3Dfx, S3, and any other PCI devices
their resources like a real PC system would.
2024-12-22 10:52:17 -08:00
Jonathan Campbell
2519431b77
I can make a few more enhancements to SYSENTER/SYSEXIT, though it still does not solve BSODs
2024-12-18 17:32:02 -08:00
Jonathan Campbell
946dc5c97c
If debug mode is going to complain about "Illegal read/write" outside the bounds of system memory, at least show the physical memory address alongside the linear address to make the debug message more useful
2024-12-16 07:36:05 -08:00
Jonathan Campbell
887d29ac4a
Paging: Define struct for 4MB PSE PDT page
2024-12-15 09:56:53 -08:00
Jonathan Campbell
dcdbbefa35
PDE code in paging.cpp should use dirblock, not block
2024-12-15 09:41:43 -08:00
Jonathan Campbell
cd46a30edf
Some code cleanup in paging.cpp. Add separate struct definition for PDE vs PTE. Add notes regarding D (Dirty) bit in PDEs on Pentium and higher CPUs. It seems while 386/486 defined a D bit for PTE and PDE, the Pentium gave up on the D bit for PDE, though for PSE 4MB pages the PDE still has a D bit.
2024-12-15 09:38:06 -08:00
Jonathan Campbell
a3d5073a2b
Begin work on PSE (Page Size Extension) emulation. Limit the enable only to Pentium or higher. Reportedly Intel added it to the original Pentium but did not document it until the Pentium Pro or Pentium II
2024-12-15 08:51:31 -08:00
Jonathan Campbell
cf7b17f5a1
Internal PNGs, if not external PNGs
2024-12-09 01:16:02 -08:00
Jonathan Campbell
666309a081
Make corrections to S3 memsize
2024-12-06 20:41:33 -08:00
Jonathan Campbell
ff350a308a
Update version date
2024-12-04 17:00:19 -08:00
Jonathan Campbell
1f8f8c8989
prepare
2024-12-04 16:54:53 -08:00
Jonathan Campbell
5760a53ef8
Prepare for release
2024-12-02 17:49:33 -08:00
Jonathan Campbell
7fc19cdcc6
Correct MMX and SSE PINSRW and PEXTRW
2024-11-29 14:13:32 -08:00
Jonathan Campbell
d93a20fef1
Prepare for release
2024-10-01 23:16:36 -07:00
Jonathan Campbell
8213799c0a
Merge pull request #5222 from Allofich/cms
...
"Decouple CMS and OPL emulations" - dosbox-staging
2024-09-29 21:27:37 -07:00
Allofich
66927cb782
"Decouple CMS and OPL emulations" - dosbox-staging
2024-09-25 15:54:34 +09:00
maron2000
9f73000855
Fix loading language files by CONFIG command
2024-09-13 21:07:39 +09:00
maron2000
5137e4677a
Update langcp_map
2024-09-13 12:18:31 +09:00
Jonathan Campbell
4a161b36a7
SET /FIRST DOSBox-X extension for demos like Out of Control with lazy ass environment block parsing
2024-08-11 01:50:06 +00:00
Jonathan Campbell
b3e0e4c6f9
Add SET /ERASE as a way to clear the environment block
2024-08-11 00:56:16 +00:00
maron2000
6c82c4ef0e
Add names instead of offset values of BPB
2024-08-08 00:08:11 +09:00
maron2000
fb22a368d4
Fix some diacritics cannot be typed
2024-07-23 22:04:22 +09:00
Jonathan Campbell
7e283dc267
FAT driver, IMGMOUNT: Add code to allow directing all FAT driver access through INT 13h so that if any program depends on hooking INT 13h to intercept I/O, it will work
2024-07-09 01:57:27 -07:00
Jonathan Campbell
5a28a2e2a1
INT 13h wrapper image, DOS FAT driver int13 option
2024-07-08 23:54:31 -07:00
Jonathan Campbell
8fd696a301
Add a way for a disk image to signal disk change to the FAT driver
2024-07-08 22:53:57 -07:00