===========#==#=======#===============================================#=====
----------------------|YM2149/AY-3-8910 Sound Chip |-----
===========#==#=======#===============================================#=====
$FFFF8800.B|R-|PSG_SEL|Read Data |
|-W| |Register Select |
$FFFF8802.B|rW|PSG_DAT|Write Data |
| | | PSG Register 14 - Port A %RICDPBAS |
| | | Reset IDE 0:no,1:reset (slow down)---+||||||| |F
| | | Internal Speaker 0:on,1:off-----------+|||||| |F
| | | Centronics Strobe----------------------+||||| |
| | | Reset DSP 0:no,1:reset------------------+|||| |F
| | | Printer Select In------------------------+||| |
| | | Drive B select 0:on,1:off-----------------+|| |
| | | Drive A select 0:on,1:off------------------+| |
| | | Side select 0:side1,1:side0-----------------+ |
| | | NOTE: side select polarity is deliberate. |
| | | Bit set selects side 0. Preserve bits 3-7 |
| | | when writing; they carry RTS, DTR and the |
| | | Centronics strobe. |
| | | PSG Register 15 - Port B %xxxxxxxx |
| | | Centronics Data Port-----------------++++++++ |
===========#==#=======#===============================================#=====
----------------------|DMA, CODEC, ADC, DAC, DSP-Transmit/Receive |-----
===========#==#=======#===============================================#=====
$FFFF8900.W|RW|SND_DMA|Sound-DMA-Control %____RPRP F_EL__EL |F,STE
| | | Timer A after Record/Play-------++|| | || || |F
| | | MFP I/O 7 after Record/Play-------++ | || || |F
| | | Frame Registers 0:play,1:record------+ || || |F
| | | DMA record Enable/Loop-----------------++ || |F
| | | DMA play Enable/Loop-----------------------++ |F,STE
$FFFF8903.B|RW|SND_FSH|Frame Start Hi |F,STE
$FFFF8905.B|RW|SND_FSM|Frame Start Mi |F,STE
$FFFF8907.B|RW|SND_FSL|Frame Start Lo |F,STE
$FFFF8909.B|RW|SND_FCH|Frame Count Hi |F,STE
$FFFF890B.B|RW|SND_FCM|Frame Count Mi |F,STE
$FFFF890D.B|RW|SND_FCL|Frame Count Lo |F,STE
$FFFF890F.B|RW|SND_FEH|Frame End Hi |F,STE
$FFFF8911.B|RW|SND_FEM|Frame End Mi |F,STE
$FFFF8913.B|RW|SND_FEL|Frame End Lo |F,STE
$FFFF8920.W|RW|SND_SMC|Sound Mode Control %__SS__PP MB____FF |F,STE
| | | DAC to track %SS--------------++ || || || |F
| | | Play %PP+1 tracks-----------------++ || || |F
| | | 0:Stereo,1:Mono----------------------+| || |F
| | | 0:8bit,1:16bit------------------------+ || |F
| | | CORRECTED 2026: the mono/stereo line printed |
| | | both states as 0. Per EmuTOS bios/dmasound.c |
| | | the bit set means mono, and per the Atari |
| | | Compendium 00 = 8-bit stereo, 01 = 16-bit |
| | | stereo, 10 = 8-bit mono. |
| | | Falcon:(unused)--STE: 6258 Hz--------------00 |F,STE
| | | Falcon:12292 Hz--STE:12517 Hz--------------01 |F,STE
| | | Falcon:19668 Hz--STE:25033 Hz--------------10 |F,STE
| | | Falcon:49170 Hz--STE:50066 Hz--------------11 |F,STE
$FFFF8922.B|RW| - |Microwire Data Register |STE
$FFFF8924.B|RW| - |Microwire Mask Register |STE
===========#==#=======#===============================================#=====
----------------------|Falcon Sound Matrix and CODEC |-----
===========#==#=======#===============================================#=====
$FFFF8930.W|RW|SND_CBO|Crossbar Output Select Controller |F
$FFFF8932.W|RW|SND_CBI|Crossbar Input Select Controller |F
$FFFF8934.B|RW|SND_FDE|Frequency Divider, External Sync |F
$FFFF8935.B|RW|SND_FDI|Frequency Divider, Internal Sync |F
$FFFF8936.B|RW|SND_RTS|Record Tracks Select |F
$FFFF8937.B|RW|SND_CIS|CODEC Input Source |F
$FFFF8938.B|RW|SND_CAD|CODEC ADC Input |F
$FFFF8939.B|RW|SND_GAI|Gain settings %LLLLRRRR |F
$FFFF893A.W|RW|SND_ATT|Attenuation settings %LLLLRRRR |F
$FFFF893C.W|R-|SND_CST|CODEC Status |F
$FFFF8940.W|RW|SND_GPD|GPIO Data Direction |F
$FFFF8942.W|RW|SND_GPI|GPIO Data |F
| | | MISSING: this whole block was absent, which is|
| | | what the old "DSP registers still missing" |
| | | note referred to. Addresses from the Atari |
| | | Compendium; $FFFF893C from EmuTOS |
| | | bios/dmasound.c. Bit-level detail for the two |
| | | crossbar registers and the frequency divider |
| | | table is in the Compendium and still needs |
| | | adding. |
Back to Memory Map for Atari ST,STE,TT and Falcon