thumb|Rozložení pinů obvodu Philips SAA 1099 Philips SAA 1099 je zvukový generátor vyvinutý firmou Philips. Obvod se používal v prvních verzích zvukové karty Sound Blaster a jejích předchůdcích. Je také použit v počítači SAM Coupé. Zvukový generátor Philips SAA 1099 umožňuje generovat šestikanálový stereo zvuk.
Popis obvodu Generovaný zvuk je programován pomocí 32 registrů, některé z registrů jsou ale nepoužité.
registr význam 0 hlasitost (amplituda tónu) kanálu 0 1 hlasitost (amplituda tónu) kanálu 1 2 hlasitost (amplituda tónu) kanálu 2 3 hlasitost (amplituda tónu) kanálu 3 4 hlasitost (amplituda tónu) kanálu 4 5 hlasitost (amplituda tónu) kanálu 5 6 rezervováno – nevyužito 7 rezervováno – nevyužito 8 číslo tónu v kanálu 0 9 číslo tónu v kanálu 1 10 číslo tónu v kanálu 2 11 číslo tónu v kanálu 3 12 číslo tónu v kanálu 4 13 číslo tónu v kanálu 5 14 rezervováno – nevyužito 15 rezervováno – nevyužito 16 číslo oktávy, ve které se nachází přehrávaný tón v kanálech 0 a 1 17 číslo oktávy, ve které se nachází přehrávaný tón v kanálech 2 a 3 18 číslo oktávy, ve které se nachází přehrávaný tón v kanálech 4 a 5 19 rezervováno – nevyužito 20 nastavení, ve kterých kanálech je přehráván tón 21 nastavení, ve kterých kanálech je přehráván šum 22 nastavení frekvence generátoru šumu 23 rezervováno – nevyužito 24 nastavení průběhu obálky amplitudy tónu v kanálu 2 25 nastavení průběhu obálky amplitudy tónu v kanálu 5 26 rezervováno – nevyužito 27 rezervováno – nevyužito 28 hlavní reset a povolení přehrávání 29 rezervováno – nevyužito 30 rezervováno – nevyužito 31 rezervováno – nevyužito
Registry 0 – 5 slouží k nastavení amplitudy (hlasitosti) tónu na příslušném kanále. Nezávisle na sobě se nastavuje amplituda pro levou a pravou část jednotlivých kanálů.
registr 0 (1, 2, 3, 4, 5) bit 7 6 5 4 3 2 1 0 amplituda pravé části kanálu amplituda levé části kanálu
Registry 8 – 13 společně s registry 16 – 18 slouží k nastavení generované frekvence tónu v jednotlivých kanálech. Do registrů 8 – 13 se zapisují čísla tónů, registry 16 – 18 určují, ve kterých oktávách se tyto tóny nachází.
registr 8 (9, 10, 11, 12, 13) bit 7 6 5 4 3 2 1 0 číslo tónu
registr 16 (17, 18) bit 7 6 5 4 3 2 1 0 oktáva kanálu 1 (3, 5) oktáva kanálu 0 (2, 4)
Registr 20 určuje, ve kterých kanálech je přehráván tón.
registr 20 bit 7 6 5 4 3 2 1 0 tón v kanálu 5 tón v kanálu 4 tón v kanálu 3 tón v kanálu 2 tón v kanálu 1 tón v kanálu 0
Stejným způsobem registr 21 určuje, ve kterých kanálech je přehráván šum.
registr 21 bit 7 6 5 4 3 2 1 0 šum v kanálu 5 šum v kanálu 4 šum v kanálu 3 šum v kanálu 2 šum v kanálu 1 šum v kanálu 0
Registr 22 určuje frekvenci generátoru šumu. Generátory šumu jsou v obvodu dva, jeden pro kanály 0, 1 a 2, druhý pro kanály 3, 4 a 5.
registr 22 bit 7 6 5 4 3 2 1 0 frekvence generátoru šumu pro kanály 0, 1 a 2 frekvence generátoru šumu pro kanály 3, 4 a 5
Fekvence generátoru šumu je určena kombinací bitů: 00 – 31,25 kHz, 01 – 15,6 kHz, 10 – 7,8 kHz, 11 – frekvence je odvozena od frekvence generátoru tónu v kanálu 0 pro šum v kanálech 0, 1 a 2, resp. od frekvence generátoru tónu v kanálu 3 pro šum v kanálech 3, 4 a 5, a může být v rozsahu od 61 Hz do 15,6 kHz.
V kanálech 2 a 5 může být obálka amplitudy tónu nejenom konstantní, ale také proměnná. Průběh obálky se pak nastavuje pomocí registrů 24 a 25.
registr 24 (25) bit 7 6 5 4 3 2 1 0 zapnutí proměnné obálky 0 .. pro generování průběhu obálky bude použito vnitřní časování,1 .. pro generování průběhu obálky bude použito vnější časování 0 .. čtyřbitové rozlišení průběhu obálky, 1 .. tříbitové rozlišení průběhu obálky průběh obálky amplitudy 0 .. v levé i pravé části kanálu je průběh obálky totožný1 .. v pravé části kanálu je průběh obálky inverzní
V případě vnitřního časování je průběh obálky amplitudy kanálu 2 odvozen od frekvence generátoru tónu v kanálu 1, průběh obálky amplitudy kanálu 5 odvozen od frekvence generátoru tónu v kanálu 4. V režimu vnějšího časování slouží jako zdroj hodinového signálu vstup A0, který jinak funguje jako přepínač mezi vybíráním registrů a zápisem hodnot do zvoleného registru.
Generované obálky amplitudy mají následující průběhy:
000 ________ 001 ¨¨¨¨¨¨¨¨ 010 \_______ 011 \\\\\\\\ 100 /\______ 101 /\/\/\/\ 110 /_______ 111 ////////
Registr 28 slouží k zapnutí a vypnutí obvodu jako celku a k resetu a opětné synchronizaci všech generátorů v obvodu.
registr 28 bit 7 6 5 4 3 2 1 0 reset generátorů zapnutí obvodu jako celku
Využití obvodu Sound Blaster Obvod byl použit ve zvukovývch kartách C/MS a v jejich nástupcích, kartách Sound Blaster, ve kterých byly použity dva tyto obvody pro generování 12kanálového zvuku. Pozdější verze karet Sound Blaster až do verze 2.0 sice vlastní obvod již neobsahovaly, nicméně podpůrná elektronika a patice pro oba obvody byly přítomné, takže obvod Philips SAA 1099 bylo možné do těchto karet doplnit.
SAM Coupé Philips SAA 1099 je použit v počítači SAM Coupé. Je připojen na portech 255 (zápis do zvoleného registru) a 511 (výběr registru) obvodu SAA 1099.
Sinclair ZX Spectrum Protože počítač SAM Coupé je kompatibilní s počítači Sinclair ZX Spectrum, vznikly interfacy Turbo Sound Easy, ZXM-SoundCard a TwinSound pro počítače ZX Spectrum, ve kterých je obvod Philips SAA 1099 zapojen stejně jako u počítače SAM Coupé.Turbo Sound na velesoft.speccy.czZXM-SoundCard na micklab.narod.ru Takto zapojený obvod využívá k přehrávání hudby hra Krunel. Na ZX Spectrum byly ruskými kodery převedeny téměř všechny hudby z programů pro SAM Coupé a jsou dostupné jak v prostých TAP souborech, tak v nových demokolekcích původně vytvořených pro ZXM-Soundcard.
SGI Obvod Philips SAA 1099 je součástí profesionální série IRIS (4D/50-85) a Power Series (4D/xxx) počítačů SGI, informace o přítomnosti těchto obvodů se ale nedostala do dokumentace k těmto počítačům.The Old SGI na sgistuff.net Obvod je součástí desek IO2 a IO3.
PMD 85 Na základě obvodu Philips SAA 1099 byl vytvořen hudební interface MIF 85 pro počítače PMD 85.MIF 85 - Music interface pre PMD 85 na borik.net Philips SAA 1099 je připojen na porty EF (výběr registru) a EE (zápis do vybraného registru), interface používá ještě port EC pro řízení přerušení od časovače.
Reference
Externí odkazy Philips SAA 1099 – dokumentace k obvodu SAA 1099 emulator pro Windows a několik ukázkových skladeb SAASound, knihovna pro emulaci obvodu SAA 1099 od Davea Hoopera Philips SAA-1099 Sound Chip sample pack na flstudiomusic.com – volně dostupná sada samplů vytvořená pomocí obvodu Philips SAA 1099 Philips SAA 1099 na SpeccyWiki LnxTracker – hudební editor typu ProTracker, pro Windows, podporujicí zvukové čipy AY 3-891x a SAA1099
Kategorie:Zvukové čipy Kategorie:Hardware počítačů ZX Spectrum a kompatibilních