Możliwości audio tej konsoli są w dużym stopniu zgodne z resztą konsol z lat 80-tych. Wewnątrz układu VDP znajduje się nieco dostosowana wersja Texas Instruments SN76489 , która jest Programowalnym Generatorem Dźwięku lub 'PSG'. Jest to ten sam typ, który jest używany w NES/Famicom, choć ma inne funkcje.
Funkcjonalność
PSG może syntetyzować tylko ograniczony zestaw fal, każdy kanał przydziela pojedyńczą falę. Wcześniej przedstawiłem kilka PSG w artykule NES i Game Boy, jeśli chcesz przeczytać więcej o tego rodzaju syntezie dźwięku.
W SMS, PSG programuje się zmieniając swój zestaw zewnętrznych rejestrów za pomocą wyżej wymienionych portów I/O.
Przyjrzyjmy się teraz każdemu typowi fali, jaki może wygenerować SN76489:
Impuls

Video - Sonic The Hedgehog (1991).
Kanal impulsu.
Fale impulsowe/tonowe wytwarzają ten kultowy dźwięk z generacji 8-bitowej. Fala dźwiękowa jest generowana przez podtrzymanie napięcia, utrzymywanie go na stałym poziomie, a następnie całkowite obniżenie. Powtarzaj to w stałym tempie, a usłyszysz dźwięk.
Okres fali określi częstotliwość dźwięku (nuta). Jego cykl pracy wpływa na barwę.
Wszystko to jest obsługiwane przez PSG, które może wytwarzać trzy fale impulsowe w tym samym czasie. W szczególności SN76489 udostępnia 10-bitowy licznik na każdym kanale, który będzie używany wewnętrznie do zatrzaskiwania z dużą szybkością, co skutkuje falą impulsową o programowalnej częstotliwości.
Szum

Video - Sonic The Hedgehog (1991).
Kanal szum.
Szum to rodzaj sygnału, który jest związany z zakłóceniami. Kiedy jest wysyłany do głośnika, brzmi jak statyczny.
SN76489 zawiera rejestr przesuwny z liniowym sprzężeniem zwrotnym lub 'LFSR', który jest zasilany pewnymi danymi wejściowymi i przełączany w celu wygenerowania sygnału pseudolosowego. Zawiera pewne parametry do przełączania między szumem białym i szumem okresowym, ten ostatni kradnie trzeci kanał impulsowy i podaje go przez LFSR, aby wytworzyć dźwięk podobny do basu (impuls o cztery oktawy niższy).
Używany oscylator można również zmienić, aby zmienić wysokość tonu, do wyboru są cztery opcje.
Gry zwykle używają kanału szumu do perkusji i/lub efektów dźwiękowych.
Zmiksowane

Video - Sonic The Hedgehog (1991).
Wszystkie kanały audio.
Do tej pory omówiliśmy, co każdy kanał robi osobno, ale telewizor będzie po prostu odbierał sygnał mono ze wszystkimi kanałami zmiksowanymi przez PSG.
Wreszcie, układ zawiera również programowalne tłumiki używane do obniżania decybeli każdego kanału, skutecznie działające jako regulacja głośności.
Sekrety i ograniczenia
Podobnie jak VDP, PSG jest oczywisty, ale kryje kilka interesujących funkcji:
Rozszerzenie FM
PSG:
Click to listen
FM:
Click to listen
Interaktywny odtwarzacz dostępny w nowoczesnej edycji
Próbki dźwiękowe
Double Dragon (1987).
Japońska wersja Master System zawiera dodatkowy układ audio firmy Yamaha o nazwie YM2413. Drastycznie różni się od poprzedniego PSG, ponieważ do generowania dźwięku wykorzystuje technikę modulacji częstotliwości. Jeśli jesteś zainteresowany, pokrótce wyjaśniłem, jak to działa, w artykule o Mega Drive.
Ten dokładny układ ma dziewięć kanałów dźwięku. Każdy kanał może wybrać jeden z 16 zaprogramowanych instrumentów lub zdefiniować własny, programując nośną i modulator. Niestety w danym momencie dozwolony jest tylko jeden instrument niestandardowy. Z drugiej strony nowy instrument zapewnia kilka interesujących funkcji, takich jak sterowanie obwiednią ADSR i sprzężenie zwrotne.
YM2413 ma również drugi tryb działania zwany tryb rytmu, który zamiast tego zapewnia sześć kanałów uzupełnionych o pięć dodatkowych kanałów tylko dla instrumentów rytmicznych.
Ostateczny dźwięk jest generowany przez YM2413, który miksuje własne kanały z kanałami PSG.
Wersja Mark III nie zawierała tego układu, ale FM był dostępny jako jednostka rozszerzająca o nazwie FM Sound Unit. Reszta (europejski i amerykański Master Systems) musiała trzymać się PSG, chociaż w końcu pojawiły się instalacje innych firm.
Dokładność emulacji

Porównanie fal impulsowych za pomocą emulatorów.
NES pokazuje pewne zanikanie, podczas gdy SMS mają kształt kwadratu.
Czytając SMS Power (stronę internetową, która zbiera wiele informacji technicznych o systemie), natknąłem się na jedną interesującą sekcję o nazwie 'The imperfect SN76489' który omawia pewne rozbieżności, które napotkałem podczas pisania artykułu.
Jeśli ponownie spojrzysz na przykładowy film przedstawiający falę impulsową, zobaczysz, że jest ona wizualizowana za pomocą prawie idealnej fali prostokątnej. Generator impulsów działa poprzez zatrzaśnięcie napięcia w celu wygenerowania tonu. Jednak w obwodach elektrycznych komponenty nie przechodzą natychmiast od zera do jedynki (lub odwrotnie), zawsze występuje okres przejściowy (głównie przypisywany istnieniu filtrów w obwodzie elektrycznym).
Teraz używam emulatorów do przechwytywania oddzielnych kanałów i unikania zakłóceń podczas nagrywania, chociaż emulatory nie zawsze uwzględniają czynnik przejściowy, więc ich wynik może być bliższy 'idealnemu scenariuszowi' niż realistycznemu w elektronice lat 80-tych. Spójrz na przykładowy obraz. Obie próbki pochodzą z emulatorów, ale wydaje się, że NES-owa potencjalnie wykazuje zachowanie bliższe światu analogowemu.
W tej chwili nie mam niezbędnych narzędzi, aby potwierdzić, czy SMS powinien wykazywać podobne zachowanie. Ale jeśli tak, nie oznacza to, że to, co usłyszałeś, jest niepoprawne, tylko ma nieco inną głośność (ledwo zauważalnej).
Odtwarzanie próbek

Video - Alex Kidd - The Lost Stars (1986).
1-bitowa próbka PCM.
Chociaż SN76489 nie ma kanału PCM do odtwarzania próbek, jest kilka sztuczek które można wykorzystać do symulacji tej funkcji.
Opierają się one na kanałach impulsowych, odkryto, że jeśli poziom tonu jest ustalony na 1, poziom głośności (który zmienia amplitudę) będzie warunkował kształt przebiegu.
smspower.org opisuje różne projekty, które pozwalają na odtwarzanie 1-bitowych, 4-bitowych i 8-bitowych próbek PCM. Chociaż wymagania dotyczące pamięci gwałtownie wzrastają wraz z większą rozdzielczością i szybkością próbki, najlepsze zastosowania tych exploitów można znaleźć w grach homebrew.
Warto zauważyć, że próbki strumieniowe pochłaniają dużą liczbę cykli procesora, a w tym systemie jest tylko jeden procesor, więc gra może wymagać zatrzymania na krótki czas.