Add the Yamaha YMF-71x (OPL3-SA2/3) audio controllers (#6200)

* Initial implementation of the Yamaha YMF-71x (OPL3-SA2/3) audio controllers

* Give the Intel AN430TX its onboard YMF-715

* Forgotten change to snd_sb_dsp.c

* Disable logging, code cleanup

* Use 32K default SB DSP DMA buffer globally and remove the Yamaha subtype

* Hook up master volume control to the OPL3 as well

* Use custom CD audio filter to apply master volume

* Initial implementation of the OPL3-SA3 bass/treble controls

* Improve CD audio volume filter

* Implement the power management registers

* Move master volume recalc to its own function and update on register write

* Correct YMF-719 PnP ROM filename

* Cleanup
This commit is contained in:
win2kgamer
2025-09-20 23:32:11 -05:00
committed by GitHub
parent cc1dd22ad0
commit b268f95b19
9 changed files with 898 additions and 4 deletions

View File

@@ -28,7 +28,8 @@ enum {
ISAPNP_CARD_DISABLE = 0,
ISAPNP_CARD_ENABLE = 1,
ISAPNP_CARD_FORCE_CONFIG = 2, /* cheat code for UMC UM8669F */
ISAPNP_CARD_NO_KEY = 3 /* cheat code for Crystal CS423x */
ISAPNP_CARD_NO_KEY = 3, /* cheat code for Crystal CS423x */
ISAPNP_CARD_FORCE_SLEEP = 4 /* cheat code for Yamaha YMF-71x */
};
typedef struct isapnp_device_config_t {

View File

@@ -240,6 +240,9 @@ extern const device_t ncr_business_audio_device;
/* Yamaha YMF-7xx */
extern const device_t ymf701_device;
extern const device_t ymf715_onboard_device;
extern const device_t ymf718_device;
extern const device_t ymf719_device;
#ifdef USE_LIBSERIALPORT
/* External Audio device OPL2Board (Host Connected hardware)*/