Commit Graph

17669 Commits

Author SHA1 Message Date
Cacodemon345
37edcce1fa Call timeBeginPeriod only once on startup (#6273)
Use SetProcessInformation to make the OS better handle our threads on big/small cores
2025-10-03 22:03:11 +02:00
richardg867
da018531e0 Add naming support to Win32 threads 2025-10-03 16:35:02 -03:00
richardg867
e44dfd08f5 Add thread name to the qt event loop thread [skip ci] 2025-10-03 16:34:12 -03:00
OBattler
0d1a7dd6ad Bring the two search strings in line. 2025-10-03 17:12:49 +02:00
OBattler
cf7dd1376a Fix some translations. 2025-10-03 17:02:44 +02:00
Cacodemon345
3ac3945499 Qt: revert native window behaviour for Windows (#6271) 2025-10-03 15:53:59 +02:00
win2kgamer
85bfc79a6e Use the correct onboard ViRGE device for the TC430HX (#6269) 2025-10-03 06:49:24 +02:00
Cacodemon345
b45452d434 Add ability to search for machines in machine settings (#6268) 2025-10-02 22:48:49 +02:00
OBattler
375033c5b0 FDD Audio: Remove the exe_path extern. 2025-10-02 05:13:21 +02:00
OBattler
2a41ed657d Introduce a way to open a configuration file from the ROMs directory using rom_fopen and switch the FDD Audio configuration reader to it. 2025-10-01 23:21:58 +02:00
Cacodemon345
ee86991f95 Implement Force 4:3 option for resizable windows with fullscreen behaviour (#6264)
* Revert "Fix remember size and position regression in which vertical size could grow when reopening the VM (#6239)"

This reverts commit 74aa15644d.

* Revert "Change window resizing logic when using 4:3 aspect ratio (#6233)"

This reverts commit bc085ac02f.

* Revert "Run more iterations and retested"

This reverts commit ca429dd493.

* Revert "Fix Force 4:3 Aspect Ratio not working if Resizable window is enabled #6062"

This reverts commit 717b66c660.

* Implement Force 4:3 option for resizable windows with fullscreen behaviour
2025-10-01 22:20:50 +02:00
Toni Riikonen
0beb22722a Configurable FDD sound emulation timings (#6263)
* Initial spindle emulation working for windows atleast

* Spingle motor spin-up, spin-down implemented with smooth transitions to motor-on loop.

* Moved fdd audio emulation to a separate file

* Multiple drives sound emulation

* Single sector movement sound emulations implemented

* Rename project to Immersive86Box and update details

Updated README to reflect the new project name and added details about the Immersive86Box features and future plans.

* Revise contribution guidelines in CONTRIBUTING.md

* Update vulnerability reporting instructions

* System fan-sound next feature after basic fdd sound emulation is ready

* v0.5 multitrack audio seek sfx

* Removed unnecessary stuff

* no .vs folder for git

* Added currently used fdd sound effects and readme.txt for source of the files and intallation instructions

* Add audio emulation installation instructions

Added instructions for audio emulation installation.

* Code and audio samples merged

* Simplify audio emulation installation instructions

* FDC seeking fixed, not instant anymore drive is set to busy during the operation and when it's finished at call fdc to set the appropriate fdc flags.

Also added time logic to fdd to calculate seek duration and a callback function for it.

* FDD sound samples volume control

* Menu options to enable / disable fdd sound for all drives.
DISABLE_FDD_AUDIO definition added, to disable the feature via cmake/build.

* Revert readme etc. changes

* Revert "Revise contribution guidelines in CONTRIBUTING.md"

This reverts commit 98a0478225.

* Revert "Update vulnerability reporting instructions"

This reverts commit 7d32cb659b.

* Fixed merge issue

* Removed excess files

* Fixed PCJr seeking not to break the FDC implementation. Now seeking will take the "correct" amount of time for each system and the seek time is based on the track count. E.g. 40 track FDD system causes 40 track seek time to be 80/40 * 6ms * 40 tracks + 50ms = 480ms + 50ms -> 530ms.

80 track system full seek is 80/80 * 6ms * 80 + 50ms = 530ms, 40 track seek would take 240 + 50 = 290ms.

* Fixed PS/1, PS/2 and PS/55 FDD issues.

* FDD_AUDIO: Updating samples looked in executablePath/samples and if now found there, looks in the executable directory

* Updated installation instructions

* Removed samples path strcat use

* fdd_audio 5.25 samples and support added

* FDD audio timing/volume tunings

* Timing fixes for authentity and special longer timings for PCJr

* Fixed second drive motor keeps running when first drive is only accessed.

* Fixed PCJr random failure issue, timings

* CodeQL fix for load_wav-function. Check the filename to be proper filename

* Revert "Fixed second drive motor keeps running when first drive is only accessed."

This reverts commit 307b173ae7.

* Teac 5.25" drive samples added. Added per drive audio selection to FDD settings.

* Fixed merge issue

* Fixed readme to include only Mitsumi samples under CC-BY license

* Fixes merge problem

* Fixes #6220: OS/2 Warp 3.0 install disk issue and NT 3.1 floppy disk issues. Changed the fdc->stat bit to 0x10 which states fdc busy. Previous implementation with seek time 0, set the ready flag 0x80 immediadely - which was correct for that time, but now as the drive is busy during seek, the value should 0x10. Implemented a backup for fdd commands during fdd seek to be processes after the seek is completed.

* Fixed FDD reset

* Floppy disk audio now gets settings from fdd_audio_profiles.cfg stored in roms/floppy -directory. Floppy settings audio seledtions are also populated by the settings from this config.

* Changed samples per track, not seek_duration_per_track

* Removed commented code.
Returned total_track in configration

* Fixed CodeQL errors

---------

Co-authored-by: Toni Riikonen <domppari@hotmail.com>
2025-10-01 21:07:23 +02:00
OBattler
4af766092f Also add the 600 MHz overclocked version of the 570 MHz. 2025-10-01 19:14:50 +02:00
OBattler
5d194d8e80 Added AMD K6_2 570 MHz. 2025-10-01 18:36:00 +02:00
Miran Grča
430fa409ce S3 ViRGE: Remove an excess masking line. 2025-10-01 17:52:29 +02:00
Miran Grča
fc506d02e1 S3 ViRGE: Fix the LFB mappigs to operate in accordance with the documentation.
Fix certain UVCONFIG-using games at 16 or 32 MB of machine RAM.
2025-10-01 17:45:48 +02:00
WNT50
8e482db009 Fix BIOS loading address of IBM PS/2 ESDI adapter (#6262) 2025-10-01 16:11:42 +02:00
OBattler
9deecc3c4a VLSI VL82c59x: Bring in line with code style. 2025-10-01 05:14:31 +02:00
Maxwell Scott
c35bb9749f Added more BIOSes for GA-5AX and GA-686BX (#6256) 2025-09-30 05:59:11 +02:00
OBattler
b4ce4b8575 And fix the Epson Action PC as well. 2025-09-30 05:51:13 +02:00
OBattler
9141ff80a4 And apply it again. 2025-09-30 05:49:23 +02:00
OBattler
5c8e44a6b3 Merge branch 'master' of https://github.com/86Box/86Box 2025-09-30 05:49:01 +02:00
OBattler
acbd046de8 Temporarily revert the change. 2025-09-30 05:48:50 +02:00
OBattler
4525a356ef TriGem Hawk: Set bit 3 of KBC P1, now it correctly says TriGem and not Epson. 2025-09-30 05:44:54 +02:00
Jasmine Iwanek
891982c2c4 Align array entries in machine table and format machines (#6254) 2025-09-30 04:15:10 +02:00
OBattler
55af553ac4 Fix floppy drive behavior, fixes floppy drives in turbo mode on some machines. 2025-09-29 20:19:51 +02:00
win2kgamer
4fb6e3aaac Fix warnings in vl82c59x.c and m_at_socket4_5.c (#6249) 2025-09-29 05:56:46 +02:00
win2kgamer
5c9fa029bf Implement the VLSI SuperCore/Wildcat chipsets (#6247)
* Add the VLSI SuperCore and Wildcat chipsets

* Disable logging and minor cleanups

* Add the AST Bravo MS P/90 (Rattler)

* Add the AT&T Globalyst 620 (NCR 3248)

* Add the DEC Celebris 5xx

* Add the DFI G586VPM Rev C

* Add the Packard Bell PB600

* Fix southbridge PCI Command Register writes

* Block the Cyrix 6x86 on incompatible machines

* Rename the AT&T Globalyst 620 to include the names of the NCR counterparts

* Add the Zeos Pantera Wildcat

* Add RZ-1001 variant of the RZ-1000 PCI IDE controller and made the Zeos Pantera Wildcat use it

* Add the Micronics M54Si

* Update machine_table.c

* Re-add new machines to machine table

* Update machine inits to use new KBC device names

* Use correct machine init method as NVRAM init is done by the chipset code

* Use a Phoenix KBC for the AST Bravo since the BIOS calls command D5h to show the KBC revision

* Update KBC comments in machine table

* Update VLSI 59x chipset comments

* Update machine inits for new super I/O code

* Reorganize machines and update comments

* AST readout device actually has multiple indexed registers

* Implement the AST Bravo MS ECP DMA configuration

* Implement jumpered/hardwired ECP DMA for the remaining machines

* Fix ECP DMA on the AST Bravo MS

* Move the DEC Celebris to the Socket 4/5 category

* Implement SMI I/O port read, fixes APM init on AT&T, Micronics and Zeos machines

* Convert AST readout device to new logging system

* Update KBC init to new method

* Cleanups
2025-09-29 04:48:33 +02:00
OBattler
4d35eee630 FDD: When a drive is set to turbo mode, keep it silent and bring back the fast seeks. 2025-09-29 00:15:40 +02:00
OBattler
2e0a152b3b IDE: Remove two excess logging lines. 2025-09-28 04:08:07 +02:00
OBattler
91652ab4c7 IDE: Revert the previous ATAPI shadow fix and fix it better now by simply forcibly returning 0x0000 on reading the cylinder number, fixes the actual ATAPI drive's signature being overwritten with 0x0000, fixes OS/2 Warp 3.0 and AN430TX BIOS. 2025-09-28 04:06:39 +02:00
OBattler
f922e78b61 Merge branch 'master' of https://github.com/86Box/86Box 2025-09-28 00:44:28 +02:00
OBattler
6ca6afedd5 AdLib Gold: Everything now outputs to the same 48k source in order to avoid noise caused by the YM7128's resampling which is currently tailored to that frequency. 2025-09-28 00:44:01 +02:00
Cacodemon345
4a6327da68 S3 ViRGE: Move sign bit 1 bit further to the right for K2 scaler registers (#6243)
* Fix sign position of DDA accumulator registers

* S3 ViRGE: Move sign bit 1 bit further to the right for K1/K2 scaler registers

* K1 scales are 13 bits
2025-09-27 21:58:07 +02:00
RichardG867
37eb2cb359 AD1848: Use the correct algorithm for CS423x ADPCM
Still has level and DC offset issues, but actual use cases are lacking (all validation was done with ALSA's adpcm conversion plugin)
2025-09-27 16:33:35 -03:00
Cacodemon345
bc41f8bbb6 Fix sign position of DDA accumulator registers (#6241) 2025-09-27 19:57:12 +02:00
andresdelcampo
74aa15644d Fix remember size and position regression in which vertical size could grow when reopening the VM (#6239)
* Change window resizing logic when using 4:3 aspect ratio

Change window resizing logic when using 4:3 aspect ratio to resize content only. Fixed issues in Remember size and position that are derived from the change. There is a slight flicker while resizing with force 4:3 aspect ratio.

* Fix regression that adds vertical size when showing toolbar and statusbar and remembering size and po

The recent rework on the force aspect 4:3 which needed to revisit the remembering of size and position introduced a regression that would save the size without considering the non-content window elements that could be showed or hidden. Now it calculates it accordingly.
2025-09-27 19:53:45 +02:00
Maxwell Scott
58b4af4689 Slightly name correction to Vectra VL 5 + added codename (#6237)
* Fix bus speeds for FR510 + add MSI name for Lucas

* Removed table for FR510

* Name changes to Vectra VL 5 Series 4

Also added codename.
2025-09-27 16:26:31 +02:00
David Hrdlička
c22bd0e63c Update pull request template [skip ci]
Added a checklist item for local testing validation.
2025-09-27 15:55:54 +02:00
Maxwell Scott
1fc4dda73e Add MSI name for Gateway Lucas (#6235)
* Fix bus speeds for FR510 + add MSI name for Lucas

* Removed table for FR510
2025-09-27 15:43:45 +02:00
OBattler
f692c00c6d Remove the BCM FR510 because it turned out to be improperly implemented fixes #6236. 2025-09-27 15:21:13 +02:00
Verloren50000
9ef1b19486 Add the BCM FR510 (Packard Bell/NEC OEM) ROM + update (#6231)
* machine.h: FR510 added.

* m_at_sockets7.c: BCM FR510 added, including the BIOS Selector.

* machine_table.c: BCM FR510 is now added.

* machine_table.c: fr510-generic

* m_at_sockets7.c: AGP Bridge for BCM FR510

* machine_table.c: FR510 PCIOnly

* m_at_socket7.c: Fixes at FR510

* m_at_sockets7.c: 510S228.BIN -> 510S128.BIN

* machine_table.c: an update for FR510
2025-09-27 13:32:46 +02:00
Cacodemon345
3fd58dde8f Implement YUV aperture on Mach64 VT2 (#6234)
Some GDBSTUB fixes
2025-09-27 13:32:00 +02:00
andresdelcampo
bc085ac02f Change window resizing logic when using 4:3 aspect ratio (#6233)
Change window resizing logic when using 4:3 aspect ratio to resize content only. Fixed issues in Remember size and position that are derived from the change. There is a slight flicker while resizing with force 4:3 aspect ratio.
2025-09-27 13:31:46 +02:00
OBattler
fe0277c031 FDC: Fix a warning and the incorrect status flags. 2025-09-27 13:28:23 +02:00
Toni Riikonen
836f855683 Fixes #6220 floppy disk issues with OS/2 and NT 3.1 systems (#6232)
* Initial spindle emulation working for windows atleast

* Spingle motor spin-up, spin-down implemented with smooth transitions to motor-on loop.

* Moved fdd audio emulation to a separate file

* Multiple drives sound emulation

* Single sector movement sound emulations implemented

* Rename project to Immersive86Box and update details

Updated README to reflect the new project name and added details about the Immersive86Box features and future plans.

* Revise contribution guidelines in CONTRIBUTING.md

* Update vulnerability reporting instructions

* System fan-sound next feature after basic fdd sound emulation is ready

* v0.5 multitrack audio seek sfx

* Removed unnecessary stuff

* no .vs folder for git

* Added currently used fdd sound effects and readme.txt for source of the files and intallation instructions

* Add audio emulation installation instructions

Added instructions for audio emulation installation.

* Code and audio samples merged

* Simplify audio emulation installation instructions

* FDC seeking fixed, not instant anymore drive is set to busy during the operation and when it's finished at call fdc to set the appropriate fdc flags.

Also added time logic to fdd to calculate seek duration and a callback function for it.

* FDD sound samples volume control

* Menu options to enable / disable fdd sound for all drives.
DISABLE_FDD_AUDIO definition added, to disable the feature via cmake/build.

* Revert readme etc. changes

* Revert "Revise contribution guidelines in CONTRIBUTING.md"

This reverts commit 98a0478225.

* Revert "Update vulnerability reporting instructions"

This reverts commit 7d32cb659b.

* Fixed merge issue

* Removed excess files

* Fixed PCJr seeking not to break the FDC implementation. Now seeking will take the "correct" amount of time for each system and the seek time is based on the track count. E.g. 40 track FDD system causes 40 track seek time to be 80/40 * 6ms * 40 tracks + 50ms = 480ms + 50ms -> 530ms.

80 track system full seek is 80/80 * 6ms * 80 + 50ms = 530ms, 40 track seek would take 240 + 50 = 290ms.

* Fixed PS/1, PS/2 and PS/55 FDD issues.

* FDD_AUDIO: Updating samples looked in executablePath/samples and if now found there, looks in the executable directory

* Updated installation instructions

* Removed samples path strcat use

* fdd_audio 5.25 samples and support added

* FDD audio timing/volume tunings

* Timing fixes for authentity and special longer timings for PCJr

* Fixed second drive motor keeps running when first drive is only accessed.

* Fixed PCJr random failure issue, timings

* CodeQL fix for load_wav-function. Check the filename to be proper filename

* Revert "Fixed second drive motor keeps running when first drive is only accessed."

This reverts commit 307b173ae7.

* Teac 5.25" drive samples added. Added per drive audio selection to FDD settings.

* Fixes merge problem

* Fixes #6220: OS/2 Warp 3.0 install disk issue and NT 3.1 floppy disk issues. Changed the fdc->stat bit to 0x10 which states fdc busy. Previous implementation with seek time 0, set the ready flag 0x80 immediadely - which was correct for that time, but now as the drive is busy during seek, the value should 0x10. Implemented a backup for fdd commands during fdd seek to be processes after the seek is completed.

---------

Co-authored-by: Toni Riikonen <domppari@hotmail.com>
2025-09-27 04:51:38 -04:00
OBattler
809e1f3efb Give the Jetway J-403TG with AMI BIOS the correct NVR device, fixes #6230. 2025-09-27 04:16:01 +02:00
OBattler
1dbc304b2f The forgotten isapnp.c and .h. 2025-09-27 01:28:43 +02:00
OBattler
b8b8efd454 RTL8019AS: Inform ISA PnP of the I/O base address, configured in the EEPROM even if it's programmed to start inactive, fixes the remaining I/O range check errors in RSET8019. 2025-09-27 00:56:50 +02:00
OBattler
ca1005817a RTL8019AS: Properly fix the RSET8019 IRQ check (writing 0x00 to IMR clears IRQ, writing 0x80 to CONFIG1 sets IRQ, changing IRQ does not clear it). 2025-09-27 00:04:42 +02:00