PicoMEM Audio - FreddyVRetro/ISA-PicoMEM GitHub Wiki
Sound cards emulated (PicoMEM 1.X):
- Adlib (OPL2) using the emu8950 code : https://github.com/digital-sound-antiques/emu8950
- CMS / Game Blaster / Dual SAA1099
- Tandy / SN76489
- Mindscape Music Board / Dual AY-3-8910
- Covox
PicoMEM 2.x:
- "Adlib" is OPL3
- General MIDI (Using TinySoundFont)
- Gravis UltraSound
For the PicoMEM 2.x ONLY
Multiple games or application require Gravis Drivers/Patch (sounds) to work.
Then, you need to Dowload the GUS Drivers
(ultrasnd.zip)
Copy the files there in the Disk image or PC Disk : C:\ULTRASND
Don't run the SETUP program, you need to configure manually the GUS variables:
The Gravis UltraSound needs 2 environment variable to be defined.
The ULTRASND one is needed for PMINIT automatic configuration and also for GUS detection by games.
Add this line in the AUTOEXEC.BAT:
SET ULTRASND=x,y,y,z,z
x is the GUS base port, it can be set to 220, 230, 240, 250, 260 The recommended value is 240. (With SB at 220)
y is the DMA number, it need to be placed on the SAME DMA where the Jumper are placed on the PicoMEM.
z is the IRQ number, it can be 3 or 7 and a Jumper MUST be placed on this interrupt.
Warning : For the moment, as the PicoMEM Interrupt is automatically configured to the Highest IRQ, IRQ 7 is not usable.
SET ULTRASND=240,1,1,5,5
The ULTRADIR is needed for Games to find the drivers and samples (Patch) location.
SET ULTRADIR=C:\ULTRASND
ULTRINIT.EXE may not work and is not needed for the PicoMEM.
PMINIT will start the GUS emulation and it will use the ULTRASND variable parameters.
Add PMINIT /GUS 1 in the AUTOEXEC.BAT or run it when you need the GUS emulation.
The IBM PC Junior and then Tandy 10000 Computers used the TI SN76489 audio chip.
The PicoMEM can emulate this chip, you can start the emulation via the BIOS or PMInit.
Tandy emulation and PC AT :
The Games are programmed to use the Tandy chip on its default port : C0
On AT machines, this port is used by the DMA Controller, then the games need to be modified to be able to work.
There is link to Port redirector tools and various info on this Vogons Thread:
https://www.vogons.org/viewtopic.php?t=54249
Games supporting Tandy : https://www.mobygames.com/attributes/attribute/32/
Software like VGMPlay and Mod Master XT can modify the Tandy port natively.
The Creative Music System is the first Creative sound card, made of 2x Phillips SAA1099 Chip.
VGM Wiki : https://www.vgmpf.com/Wiki/index.php?title=Creative_Music_System
Games supporting CMS : https://www.mobygames.com/attributes/attribute/42/
The Mindscape Music Board use 2x AY-3-8910 audio chip.
It is supported by only one application and maybe one or two games.
WARNING: Its default base port is 300h, then, can conflict with lot of things (NE2000, XTIDE, HDD...)
It can be also used to replay MSX, Atari ST, Amstrad CPC and others music via VGM files.
I am currently updating Mod Master XT to support it.
Aditionnal registers are added to allow for Clock frequency change.
ian VGMPlay supporting the Mindscape : https://github.com/ianromanick/vgmplay
Trixter Mindscape Video : https://www.youtube.com/watch?v=Eeo4INoGyRY
Mindscape files/resources : http://archives.oldskool.org/pub/drivers/Mindscape/Music%20Board/
Currently, the PicoMEM must stop the Audio mixing during disk access.
Then, when a game load data while having music playing, the sound may start to cut.
To avoid this, Audio is calculated in advance so that the sound does not cut during short disk access. (few sectors)
New (May 2024 Firmware): Audio mix is forced after every Disk access, then, reduce these audio STOP.
The PicoMEM can now produce Audio via an I2S DAC.
The DAC used is the GY-PCM5102 DAC, you can get it from various vendors like Amazon, Aliexpress...
The DAC should be soldered on the Spare / I2S DAC Connector.
! The pin name does not match the names on the module, it is normal.
Before soldering the DAC, be sure that it is configured correctly:
Check the solders jumpers (1 to 4) on the bottom of the board.
More details / Photo on the PicoGUS Wiki :
https://github.com/polpo/picogus/wiki/Building-your-PicoGUS#assembly-order
PicoMEM 1.2A board integrate the DAC, so, of course, no need to add it :)