Commit Graph

2418 Commits

Author SHA1 Message Date
Valerio
1a4588292f gcc strict code style, removed an annoying unuseful printf 2025-10-26 17:19:42 +01:00
Valerio
5a226e463a merge master 2025-10-26 11:14:52 +01:00
RichardG867
d1f101f9ee Add fallback for unknown CONFIG_BIOS names 2025-10-25 16:56:15 -03:00
RichardG867
aa9101418a Naming fixes to the HP Vectra Series 2 [skip ci] 2025-10-25 14:28:27 -03:00
TC1995
d26ec73d0d Add proper clock generators to the V7 cards.
1. Add a variant of the ICS1494 clock generator specifically for the Radius HT209 card.
2. Add the ICD2047 clock generator to the HT216-32 card.
3. Add the previously missing 7.00 BIOS revision of the VGA 1024i HT208 card.
2025-10-24 21:32:14 +02:00
Jasmine Iwanek
57704c9624 Support for Serial card in PCjr modem slot 2025-10-21 23:32:20 -04:00
Jasmine Iwanek
27ac9cf6e6 Support for PCjr keyboard IR reciever option
Currently disabled as it Error B's
2025-10-21 23:03:10 -04:00
Jasmine Iwanek
cee8fa0ae4 Allow PCjr FDC to be disabled 2025-10-21 21:59:27 -04:00
Jasmine Iwanek
43db1f3dfe Fix typo in gameport.h 2025-10-21 20:09:17 -04:00
Jasmine Iwanek
b36381e76c Share Joystick code 2025-10-21 20:09:16 -04:00
MaxwellS04
5b0267e4d3 Added the 1999 v4.51PG BIOS to P5VX-B 2025-10-21 16:28:37 +07:00
Jasmine Iwanek
817bfa5aec Additional Joystick options 2025-10-20 21:32:34 -04:00
toggo9
ab7de13297 Add two more HP Vectra models. (#6359)
* Add two 430FX-based Vectras code.

* Add two 430FX-based Vectras machine table entries.

* Organize the 430FX-based Vectras code.

* Add machine definitions for the two 430FX-based Vectras.

* Add the Vectra 500 Series xxx/MT to the GPIO values from the VL/5...

makes it report CPU clocks properly.

* Darn, forgot something.

* Updated and fix the BIOS selector for VE 5/xxx Series 2
2025-10-18 18:52:49 +02:00
TC1995
6e282068b9 Corrections to displays (October 18th, 2025) (rebase) (#6358)
1. In the STG code, separated the STG1703 without its built-in clock as 1702 while keeping the one with the clock as 1703.
2. Added the ICS2494AN-324 clock generator used by the et4000w32 series.
3. Return 0x98 as the ID of the ATT498 ramdac.
4. Corrected the pixel clocks of the IBM RGB528 while keeping its current compatibility and exactness of the refresh rates of its clocks.
5. Added a variable reference clock of the SDAC/GenDAC for future use.
6. The clocks of the TVP3026 have been implemented for a while. Some corrections have been made (plus color key r/w).
7. Mach64 enhanced mode doesn't use scrollcache (bits 0-3 of attrregs 0x13), fixes some pixels being off (mainly in win3.1x)
8. Reorganized the cirrus 54xx built-in clock for proper refresh rates.
9. Proper reorganization of the et4000w32 series of chipsets and their cards supporting them, from cursor to clocks to ramdacs plus a 24bpp acceleration fix for the w32p series (about pixels being processed in bitblt).
10. Removed the PCI videomagic card as its bios doesn't have the PCIR header while making sure the plain ISA/VLB w32 and ISA only w32i (now named Axis Microdevice) support 2mb of vram properly.
11.  Added the Hercules Dynamite VL Pro based on the w32i chip (and VLB).
12. Initialize the et4000w32 cards with misc bit 0 set as well as crtc31 bit 6 for rs2 connection to the ramdac.
13. Refactored the S3 Pre-ViRGE code to have proper refresh rates and clocks and added the 805I as a member of the chips (ID 0xa8).
14. Replaced the S3 805I Elsa Winner 1000 ISA bios with a more supported one for our code using the SDAC.
15. Added proper 24bpp acceleration to the Visionx68 chips.
16. Fixed wrong colors in the 911/924 15/16bpp acceleration when used for the first time.
17. Match the ViRGE mapping to the pre-ViRGE one per manual/datasheet.
18. Correct as best as possible the TGUI9400 clocks.
2025-10-18 03:26:11 +02:00
Maxwell Scott
812ee8d75a ECS P6BXT-A+ overhaul + additional BIOSes for machines & a misc. change (#6347)
* Added beta v4.51G BIOS to P5MP3

* Added the earliest 4.51PG BIOS to AX59 Pro

Also internal_name corrections

* Added the non-OEM(?) BIOS to 6110Zu

* Added the non-OEM 4.51PG and unofficial 6.00PG

BIOSes to Compaq Compaq ProSignia S31x, which is renamed into ECS P6BXT-A+.

Also unblock Cyrix CPUs as well as unofficial 6.00PG BIOS supports them.

* Removed the v4.51PG due to POST failure

Also slightly changed the maximum voltage bus to 124MHz per unofficial v6.00 BIOS, corrected the BIOS name per the BIOS screen on that BIOS, and added the author credit.

Also lowered the minimum memory on LG IBM MS-6106 to 8mb.

* Added the 050591 BIOS to DataExpert 386WB

* Renamed 386WB to 386C

* Make configurations intact

Per OBattler.
2025-10-15 09:37:52 +02:00
Maxwell Scott
ad2499e1c0 Additional BIOSes for six selected machines + few misc. changes (#6339)
* Added Tulip BIOS to Tyan Tsunami ATX

* Added non-OEM BIOS to TriGem Delhi-III + renamed

* Added the 1999 4.50PG BIOS to FIC PT-2000

* Added Rainbow BIOSes to MS-5119 and FMB

Also added codenames/original names to ValuePoint P60, PowerMate Vxxx, and E-1000

* Added the earliest v4.51PG BIOS to AOpen AX6BC

Also corrected the latest BIOS name to FIC PT-2000

* Correct the BIOS version names for AX6BC

* Changed the name for HP i440ZX machine

* Slightly change the notes for Delhi-III
2025-10-13 16:58:59 +02:00
Cacodemon345
05fe82a205 Give all PC87307 machines the earlier GPIO behaviour (#6332) 2025-10-12 21:40:29 +02:00
Verloren50000
727b1d059d Add BIOS selector and 1996 BIOS to the NEC PowerMate Vxxx (#6324)
* Add BIOS selector and 1996 BIOS to the NEC PowerMate Vxxx

Add a BIOS selector and the 1996 BIOS to the NEC PowerMate Vxxx.

* m_at_socket5.c: Version 4.04 -> Version 4.05
2025-10-12 05:31:14 +02:00
José Miguel Sánchez García
7727065b5b Add DFI K6BV3+ (rev. A+) motherboard (#6318) 2025-10-11 03:55:08 +02:00
Maxwell Scott
c0159caee7 Add two OEM BIOSes to 2 Intel machines + two misc changes (#6310)
* Added Bravo MS-T BIOS for Intel Monaco

-Move Atlantis machine above Thor machine
-Correct the name for Zeos Pantera Wildcat

* Added Gateway 2000 latest BIOS of Intel Zappa

* Fixed a compile-breaking mistake
2025-10-10 22:56:20 +02:00
toggo9
fadc8c37b8 Add the IBM PC 330/350 type 65x6. (#6315)
* Change BIOS loading (temporarily)

* Change GPIO related stuff on the PC 330 65x6...

CPU clock is now properly reported up to 166 MHz.

* Add IBM PC 330 type 65x6 machine table entry.

* Add IBM PC 330 type 65x6 machine definition.

* Fix a compile breaking error.

* Block AMD K5/Cx686 CPUs from the IBM PC 330/350 type 65x6.

* Correct the PC 330/350 ROM path.
2025-10-10 20:54:27 +02:00
Miran Grča
566ac10b7b Update video.h: Force the upper 8 bits of every 32-bit color to all 1's. 2025-10-10 03:32:27 +02:00
Cacodemon345
775b30f877 Use correct BIOSes for Intel Advanced/MA (Monaco) (#6306)
Existing one is renamed to Intel Advanced/AS (Atlantis)
2025-10-09 11:20:48 +02:00
mw308
9077501f7e Add Abit AH4T (#6304)
* Add Abit AH4T

* Remove DX4 support from AH4
2025-10-08 19:12:31 +02:00
Cacodemon345
5b7ac6fa21 Add Intel Advanced/MA (Monaco) (#6297) 2025-10-08 16:10:42 +02:00
bozoscum
151e0bdd16 more Multitech PC-500/500+ modifies (#6298)
* add DTK PIM-TB10-Z BIOS 2.39

* change Multitech PC-500/PC500+ KBC type to XTClone

* 1. add ISA RTC century field to support Multitech onboard RTC
2. hard-coded I/O port and IRQ for Multitech onboard RTC until
   find a prorper way to obtain correct value from machine config
2025-10-08 15:39:40 +02:00
mw308
7d4c1d831d Add some CD drives (#6299)
* Add some CD drives

* Renamed internal name for the GCD-R560B
2025-10-08 15:39:28 +02:00
Cacodemon345
5f6aa3b44e Add ATi Mach64 VT emulation (#6300) 2025-10-08 15:38:32 +02:00
Cacodemon345
a2d7e9383d Add ATi WinCharger (ATi Mach64CT) emulation (#6293) 2025-10-07 19:03:18 +02:00
Jasmine Iwanek
3f5b88ac8f More Joystick/gameport related changes (#6285)
Fix a warning, correct a device name, formatting
2025-10-06 17:17:30 +02:00
mw308
65cf2649f1 Added HDD model tag capability and extra MS-6119 BIOS (#6287)
* Added HDD version tag capability

* Added additional PB MS-6119 BIOS
2025-10-06 17:16:42 +02:00
bozoscum
39b249fedf Some modifications for Multitech machines (#6258)
* add alternative OEM model names for Multitech machines

* add Multitech PC-700 BIOS 3.30

* add Multitech PC-900 / Commodore PC-40 BIOS v2.07a.xc

* add Multitech PC-500+ BIOS 4.03 and 4.06

* correcting display name of Multitech BIOS 3.10 to 3.1

* merge with origin/master

* fix github-advanced-security check error 'uninitialized local variable'

* implement the Multitech onboard ISA RTC device
2025-10-06 03:28:00 +02:00
Verloren50000
774a1a7f08 Add the MSI MS-6147 Machine (#6270)
* machine.h: MSI MS-6147 added.

* m_at_slot1.c: MSI MS-6147 added.

* machine_table.c: MSI MS-6147 added.
2025-10-06 03:26:58 +02:00
win2kgamer
0b09681c46 Add the Sony Vaio PCV-130/150 (#6282)
* Add the Sony Vaio PCV-130/150 as a selectable BIOS for the AN430TX

* Add Sony CDU-611 24x CD-ROM drive

This may not have been the drive included in the Vaio PCV-130/150 but is contemporary, is the correct speed and satisfies the vendor-locked CD-ROM driver on the recovery CD.
2025-10-05 21:35:09 +02:00
Jasmine Iwanek
8ac8461dd3 Header cleanups (2/2) (#6275) 2025-10-04 03:40:32 +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
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
Maxwell Scott
c35bb9749f Added more BIOSes for GA-5AX and GA-686BX (#6256) 2025-09-30 05:59:11 +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
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
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
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
OBattler
1dbc304b2f The forgotten isapnp.c and .h. 2025-09-27 01:28:43 +02:00
Verloren50000
4180909840 Add BIOS selector and the mid-1999 BIOS to the ABit AB-LX6 (#6224)
* machine.h: Configuration added for ABit AB-LX6

* m_at_slot1.c: Configuration is almost there for ABit AB-LX6

* Congratulations! BIOS Selector for ABit AB-LX6 is complete.
2025-09-26 05:21:12 +02:00
OBattler
ae369dc34d RTL8019AS and ISA PnP: More fixes. 2025-09-25 00:58:53 +02:00
OBattler
01c410479b RTL8019AS and ISA PnP fixes: fixes PNPODI.COM. RTL8019AS now detects the card but thinks there's an IRQ conflict. 2025-09-24 15:16:59 +02:00
OBattler
087a005664 More AdLib Gold fixes. 2025-09-23 20:46:24 +02:00
OBattler
288b6454ee AdLib Gold: Correctly use separate pseudo-stereo X and Y for the two sources. 2025-09-23 17:55:46 +02:00