A hangokat memória-mappelt címek írásával lehet megszólaltatni. 3+1 függetlenül állítható csatorna/szólam áll rendelkezésre, ezek közül 3 periódikus, és 1 LFSR zaj. Elérhető továbbá minden szólamra független alul-, és felüláteresztő szűrő, és ASR burkológörbe is.
256 féle frekvencia áll rendelkezésre, ahol a frekvencia a beírt érték 16-szorosa. Alkalmazható a generált hang frekvenciájára és a szűrő levágáshatárára:
¤f=x*16Hz
¤Frekvenciatartomány: 0Hz-4,096kHz
¤Háromszög
¤Szinusz
¤És ezek invertált formái
A csatornákat kis is lehet olvasni az arra szolgáló regiszterből.
A fűrészfogjelet úgy lehet elérni, hogy a háromszögjel/szinuszjel kiválasztása után 50%-nál nagyobb pulzusszélességet állítunk be. Ez a hanggenerátor (ICL8038) adottságaiból ered. A hullám és burkológörbegenerátor akkor kapcsolódik be, amikor a beírt hullámfrekvencia (nem szűrőfr.!) nem 0.
Vezérlők bitenkénti bontásban:
¤7:---
¤6-5:hanghullám
¤00:tartási szinttel megegyező feszültség digitális hangokhoz
¤01:szinusz
¤10:háromszög
¤11:pulzus
¤4-3: olvasható kimeneti mód
¤00:egyik sem
¤01:csak hanggenerátor
¤10:csak burkológörbe
¤11:hanggenerátor és burkológörbe
¤2:aluláteresztő aktiválás
¤1:felüláteresztő aktiválás
¤0:generátor invertálása (1: aktív)
Burkológörbe byte bitenkénti bontásban (lásd: lap alja):
¤7-4:felfutás/elengedés
¤3-0:tartási szint
A generátor bekapcsolásakor a hangerő a 7.-4. bitben megadott ideig növekszik a 3.-0. bitben megadott szintre, kikapcsolásakor pedig az ugyanott (7.-4. bit) megadott ideig csökken némára. Az ábrán a fekete grafikon a hozzávetőleges hangerőt jelenti, a részcímek feletti számok a bitek tartományát, a zöld sáv pedig azt, hogy mikor volt a generátor bekapcsolva.
Pulzusszélesség:
0-255 közti értéket lehet ide beírni, és a kitöltés 50%-100% között mozog. 0 jelent 50%-ot, 255 jelent 100%.ot.
LFSR zaj felbontás és algoritmus:
A $15-ös memóriacímen nem a zaj pulzusszélességét, hanem a minőségét és a visszacsatolási algoritmust lehet beállítani.
¤7-2: bitmélység
¤1-0: vissacsatolási logika száma
Digitális hangok képzése:
Ha egy, a játékkártyán tárolt hangot szeretnénk visszajátszani (akármelyik csatornán, mindegyik képes erre), akkor a hanghullámot 00-ra kell állítani, ilyenkor a csatorna kimeneti feszültsége egyenlő lesz a burkológörbe tartási szintjével. Ezután a tartási szintet kell a digitális hang mintái szerint folyamatosan állítgatni. Max. 4 bites hangot lehet kelteni. A digitális hang tárolása, és a visszajátszási frekvencia a szoftvertől függ, de mindig dekódolni kell nyers PCM-be.
Memóriatérkép:
(1. szólam, 2. szólam, 3. szólam, LFSR, funkció)
¤$00 $06 $0c $12 | frekvencia
¤$01 $07 $0d $13 |szűrőfrekvencia
¤$02 $08 $0e $14 | burkológörbe
¤$03 $09 $0f $15 |pulzusszélesség
¤$04 $0a $10 $16 | vezérlő
¤$05 $0b $11 $17 | hangkimenet
Nincsenek megjegyzések:
Megjegyzés küldése