Czy POKEY nadaje się do tricków, tj. np. czwarty, programowy kanał SIDa? Jak te układy wypadają w porównaniu? Podobnie jak w przypadku wątku porównującemu grafikę, proszę o pomoc w redagowaniu tekstu (muzykiem też nie jestem). Chciałbym, żeby wątek mobilizował, podsuwał rozwiązania, wyjaśnił osobom mniej wtajemniczonym. W każdym razie zakopcie topory.
SID Jednoukładowy, 3-głosowy syntezator muzyczny. (Sound Interface Device) Zaprojektowany przez Roberta "Boba" Yannesa na początku lat osiemdziesiątych i był produkowany przez MOS Technology. W 1996 roku magazyn Byte umieścił go wśród dwudziestu najważniejszych wynalazków w historii komputeryzacji.
Istnieją dwie główne wersje układu: 6581 produkowany do roku 1987 oraz 8580 produkowany do roku 1992. Druga wersja ma możliwość wykonywania logicznego AND między falami (łączenia ich). Zmieniono także zachowanie filtra, wyeliminowano drobne usterki.
SID posiada trzy oscylatory, z których każdy może generować 4 różne przebiegi (piłokształtny, trójkątny, prostokątny o zmiennym wypełnieniu oraz szum). Nie ma możliwości generowania fali o kształcie sinusoidalnym, można go w symulować poprzez nałożenie filtra dolnoprzepustowego na falę prostokątną z wypełnieniem 50% Wersja 8580 kształty fal może łączyć. Struktura układu umożliwia wzajemną synchronizację oscylatorów oraz modulację kołową.
Budowa: -> trzy modulatory amplitudy -> trzy generatory obwiedni dźwięku po 4 bity na każdą (ADSR – Attack/Decay/Sustain/Release) z których każdy może przyjmować jedną z 16 wartości. -> jeden uniwersalny programowalny filtr (mogący działać jako dolno-, górno-, środkowozaporowy/-przepustowy) wejście dla zewnętrznych sygnałów audio, które można przepuścić przez filtry i zmiksować z sygnałami wewnętrznych generatorów.
Tricki: istnieje możliwość odtwarzania sampli uzyskując programowo dodatkowy, czwarty kanał.
POKEY POKEY stworzony został w latach 70. przez Atari Inc (Pot Keyboart Integrated Circuit). Układ wejścia, wyjścia oznaczony jako CO12294. Odpowiedzialny za generowanie dźwięku, obsługę klawiatury, port szeregowy, obsługę potencjometrów, generowanie liczb pseudolosowych.
Budowa:
-> cztery 8 bitowe kanały syntezy generujące obwiednię prostokątną. Istnieje możliwość wyboru jednej z trzech częstotliwości bazowych dla wszystkich generatorów, to jest 15 kHz, 64 kHz oraz 1,77 MHz.
Edit: Tricki: -Istnieje możliwość odtwarzania 4 bitowych sampli we wszystkich czterech kanałach jednocześnie lub 6 bitowych sampli na trzech kanałach jednocześnie z częstotliwością 15kHz (osiągnięto też częstotliwość 22.5kHz) -Pary generatorów (1+2 oraz 3+4) można niezależnie połączyć w jeden generator szesnastobitowy. Można wówczas używać 2 kanałów dla sampli. -Istnieje możliwość generowania fali sinusoidalnej.
Spostrzeżenia: POKEY ma wyraziste, metaliczne, dynamiczne brzmienie. Wydaje się, że dzięki czystemu brzmieniu proste melodie z gier do połowy lat `80 lepiej brzmiały na Atari. Z kolei brzmienie SIDa zyskuje przy podkreśleniu basu, zastosowaniu wygenerowanej perkusji. Dzięki takim osobom jak Rob Hubbard do SIDa zaczęto podchodzić niekonwencjonalnie. Zastosowano ciekawe rozwiązania wydobywania dźwięku, dzięki czemu zyskał on nowy wymiar i uznanie. Być może nie małą rolę odegrały tu czynniki, o które opisane są we wstępie wątku Grafika Atari XL/XE vs C64 w akapicie Rys historyczny Wzbudziły one wiele niepotrzebnych myślę emocji i nie lepiej to zostawić.
Edit:
Szczegóły zagadnień dotyczących budowy POKEYa i jego możliwości trickowych można przeczytać poniżej w postach jhusaka, mono, pavrosa
- POKEY nie został zaprojektowany po ukazaniu się na rynku komputerów Atari, wbrew temu co piszesz :) - wg "Atari Home Computer Field Service Manual" pełna nazwa POKEY-a to "Pot Keyboart Integrated Circuit", taki mały detal.
Ja się tam nie znam, ale z tego co mi wiadomo, to SID jest 3-kanałowy, POKEY 4-ro i ową różnicę da się usłyszeć w wielu grach np. w "Draconus-ie". Jak dla mnie na Atari muzyczki brzmią lepiej, na C64 czwarty głos jest jakby podpinany chwilami (programowo), jeśli w ogóle jest. Może i dźwięk wypływający z C64 brzmi nieco klarowniej niż na Atari, to jednak w moim odczuciu ten czwarty głos z POKEY-a daje zdecydowaną przewagę "maluchowi".
PS
Na Atari można uzyskać lepszą klarowność niż na C64, to moje zdanie.
Akurat w Draconusie grają tylko 'trzy' kanały, albowiem 16-bitowy bas zużywa 1 i 2 kanał POKEY'a, więc różnicę słyszeć możesz tylko w brzmieniu :)
Brzmieniowo (a w odpowiednich rękach i klarownością) SID kopie tyłek POKEY'owi, niemniej POKEY jako chip stworzony w zasadzie do generowania efektów w grach, potrafi pokazać, że muzycznie też nie jest ostatnią "fajtłapą". :)
Jakem muzyk, piszę co następuje: @xxl ma rację. 16 bitów rozumiemy jako dzielnik bazowej częstotliwości 1.77 MHz (tak mniej więcej). Na drugim generatorze odtwarzamy 4bitowe sample, bo barwa i głośność brane są z pierwszego.
Jeden z ciekawszych tricków to generowanie fali sinusoidalnej (tak tak!) na pokeyu. Powstaje ona jako fala różnicowa (dudnienie) dwóch fal o częstotliwości ultradźwiękowej. Nie działa na emulatorze Atari800.
Na pokeyu można generować 4 czterobitowe sample jednocześnie. Przy wykorzystaniu głośności połowicznej (fala prostokątna o wypełnieniu 50%) można uzyskać rozdzielczość 6 bitów sampla (64 stopnie głośności) przy pomocy 3 generatorów. Pokey pozwala na sterowanie głośnością 4 kanałów niezależnie, jednak mikser nie wypuszcza większej głośności niż 31. Stąd granie czterema kanałami przy pełnej głośności niemiłosiernie p!@#dzi. Trick: distortion (fuzz gitarowy). Słyszałem od Bookera (komodorowski muzyk, nie zboczony, tzn dopuszcza inne platformy :), że biały szum na sidzie przy b.wysokich częstotliwościach nie działa dobrze, tj. potrafi się nie wzbudzić:) Pokeyowy lepszy (jego słowa)
Pokey nie ma basów, a gtia koloru czerwonego.
Atari ma jeszcze jeden dodatkowy (jednobitowy) generator dźwięku, używany jako click klawiatury, bądź beep przy operacjach z magnetofonem.
Pokey potrafi grać jednocześnie wykonując operacje SIO (stacja dysków czy magnetofon)
Czy to wystarczy?
Klarowność to jest miałkie określenie. Dla niektórych klarowność kojarzy się z napojami wyskokowymi.
I znowu to samo co z grafiką: parę rzeczy które można zrobić na SID-zie, nie zrobisz na POKEY-u i odwrotnie. 4. kanały nie zawsze oznaczają przewagę. Na pewno P. znacznie lepiej radzi sobie z większymi częstotliwościami - o ile pamiętam S. generuje dźwięki (bezpośrednio) do ok 3kHz. Niektórzy, z którymi rozmawiałem twierdzą, że choć możliwości obu układów są porównywalne, to na S. uzyskanie dobrej muzyki jest znacznie łatwiejsze.
Możliwości dźwiękowe Atari to nie tylko POKEY, ale i GTIA (łączy je możliwość generowania sampli). POKEY: * 4 kanały o wyjściach 4-bit (16 poziomów głośności), * 8-bit regulacja częstotliwości, * możliwość 16-poziomowego sterowania wychyleniem membrany dla każdego z kanałów (sample), * 8 rodzajów zniekształceń dla dźwięku, * generowanie fali prostokątnej, * możliwość połączenia generatora 1i2 oraz 3i4 w parę co dane 16-bit kontrolę częstotliwości, * możliwość włączenia filtru górnoprzepustowego dla kanału 1 sterowanego kanałem 3 (jeśli kanały 3 i 4 są połączone w 16-0bit wtedy kontrola częstotliwości odcięcia jest 16-bit), oraz dla kanału 2 sterowanego kanałem 4, * globalna kontrola zegara bazowego: 15kHz, 64kHz, 1.77MHz, * włączenie zegara bazowego dla kanałów 1 i 3 oddzielnie na 1.77MHz niezależnie od globalnej kontroli, * możliwość włączenia filtru dolnoprzepustowego od transmisji dwutonowej (SKCTL).
GTIA: 2-poziomowe wychylenie membrany, które sumowane jest do wyjść z POKEYa. Za jego pomocą generowany jest klik klawiatury.
O ile częstotliwości dźwięków POKEYa nie są zależne od pracy CPU (CPU zapisuje rejestr i POKEY sam generuje falę o zadanej częstotliwości), o tyle częstotliwość odtwarzania sampli zależy od częstotliwości taktowania CPU, algorytmu generowania sampli, playera itd - po prostu CPU wtedy zajmuje się sam generowaniem dźwięku. W Atari jest to 1.773447 MHz w PAL i 1.789790 MHz w NTSC. Realna częstotliwość generowania sampli dla 4 kanałów to około 15kHz (demo BrullWuRfEl potrafi generować sample z 22.5kHz). Interesujące możliwości pojawiają się kiedy komputer gra równocześnie sample i syntetyki: * 4 kanały synth - każdy kanał ma 8-bit częstotliwość kanału, bez sampli * 3 kanały synth: 2x8-bit+1x16-bit, 1 kanał może grać dodatkowo sample, * 2 kanały synth: 2x16-bit, 2 kanały mogą grać sample, * 2 kanały synth: 2x8-bit, 2 kanały mogą grać sample, dwa kanały mogą mieć dodatkowo włączone filtry górnoprzepustowe, * 2 kanały synth: 1x16-bit z włączonym filtrem 8-bit + 1x8-bit, 2 kanały mogą grać sample, * 1 kanał synth: 1x16-bit z włączonym filtrem 16-bit, 3 kanały mogą grać sample, * 1 kanał synth: 1x8-bit z włączonym filtrem 8 lub 16-bit, 3 kanały mogą grać sample. Ważną kwestią jest to, że podczas transmisji kanały 1i2 (magnetofon) lub 3i4 (stacja dysków) są używane do taktowania transmisji dzięki czemu nie można grać na nich syntetyków - ale wciąż można zagrać sample.
Dostępne są rozszerzenia w postaci drugiego POKEYa (tzw. stereo), czy CoVox (4x8-bit DAC do generowania sampli).
Edit: Przy 16-bit dzielnikach można osiągnąć prawie pełny zakres Hi-Fi dla skali temperowanej (10 oktaw).
Edit 2: Zniekształcenia bazują na rejestrach przesuwnych z XORem (podobnie, jak CRC). Dostępne są rejestry: * 4-bit * 5-bit * 4+5-bit * 9-bit * 5+9bit * 17-bit * 5+17-bit * 0 - bez zniekształceń
Edit 3: Zapomniałem o klasykach GTIA: XXL wraz z Mr Beep'em zrobili ładne msx collections grające TYLKO na GTIA - Beep'em all oraz Beep'em all 2. Z moich analiz wynika, że GTIA potrafi dodać składową stałą o mniej więcej połowie maksymalnego zakresu w jedną stronę wychylenia membrany.
@jhusak - i po co takie głupoty pisać? A wg mnie najklarowniej gra klawesyn.
@Bluki - to, że na C64 jest może i łatwiej wygenerować "dobrą muzykę", wcale nie znaczy, że poprzez ową "łatwość" ów komputer zyskuje przewagę nad Atari w kwestii jakości dźwięku obu maszyn.
@Jacques - wiele muz z C64 rozwala, ale weź pod uwagę fakt, że ich odpowiedników nie wyprodukowano na Atari. Lepiej porównaj gry powstałe na obie platformy, wskaż mi spośród nich tę, która ma lepszą muzykę na Commodore.
Ja tam lubię SIDa, POKEYa i AYka. Niestety nie ma na Atari tak rozbudowanych brzmieniowo instrumentów, jak na SIDzie. A wydaje mi się, że dałoby się...
Edit: IMHO wszystko co ma AY jesteśmy w stanie zagrać POKEYem ;)
@Bluki - masz rację, to samo co z grafiką. Wskaż mi grę z czasów kiedy produkowano je na obie platformy, która jest lepsza na C64. Wg mnie większość z nich pod względem grafiki, muzyki a i też grywalności przegrywa z produkcjami atarowskimi, np. "H.E.R.O", "Oil`s Well", "River Raid", "Road Race", "Tapper" i inne, że o produkcjach Lucas Filmu nie wspomnę...;)
@Cezar Bardzo wygodne porównanie, tylko tak się składa, że najlepsze gry na C64 powstały dawno po tym, jak Atari 8bit poszło komercyjnie do grobu. A i za czasów świetności atarynki muzyczki jakoś nie porywały. Co atari potrafi pokazali moim zdaniem dopiero Polacy po 90 roku.
Na małym Atari moim skromnym zdaniem naprawdę wielka sztuka zrobić dobrą muzykę, która będzie zupełnie inna niż zwykle, czyli żadnych jazgotliwie piskliwych dźwięków, zawsze tych samych metalowych basów (od których uszy odpadają ;) ) i tak dalej. Wyjątki niestety potwierdzają regułę. Jest co prawda softsynth, emulacja covoxa, odtwarzanie sidów a nawet modów - robi wrażenie, ale raczej to nie jest coś, co da się zastosować w przynajmniej bardziej wymagających grach czy demach :)
Cezar: rzeczywiście, większa trudność w uzyskaniu dobrej muzyki ma się nijak do potencjalnych możliwości, ale ja przytoczyłem tylko wnioski z rozmów na ten temat. Może ktoś je zweryfikuje - czy naprawdę POKEY jest znacznie trudniejszy "w obejściu". Co do ogólnego efektu (grafika + dźwięk) to kiedyś miałem okazję popatrzeć na kilka gier na oba komputery. Jeśli gra była "dopieszczona", to trudno było się oprzeć wrażeniu, że na Atari (grafika i dźwięk) wygląda to przynajmniej troszeczkę lepiej.
Zasadniczym powodem "metaliczności" (komputerowy dźwięk) jest fakt, że żaden z układów nie potrafi generować fali sinusoidalnej. W tamtych czasach syntezator sin to była kupa forsy. Nie powiedziałbym jednak, że nie można znaleźć przykładów muzyki choć odrobinę "porywającej" - pierwszy z brzegu przykład: "Gyrrus" czy "Amaurote".
@Bluki, piszesz: Zasadniczym powodem "metaliczności" (komputerowy dźwięk) jest fakt, że żaden z układów nie potrafi generować fali sinusoidalnej.
ja piszę: Jeden z ciekawszych tricków to generowanie fali sinusoidalnej (tak tak!) na pokeyu. Powstaje ona jako fala różnicowa (dudnienie) dwóch fal o częstotliwości ultradźwiękowej. Nie działa na emulatorze Atari800.
Trudność pisania na pokeyu polega na: - fałszowaniu pokeya - trzeba mieć trochę słuchu albo olać :) - niektórych nut w basach nie ma. - pohamowaniu się od używania zbyt wysokich dźwięków.
A na sidzie mnie odrzuca MULTUM ustawień, które trzeba znać/ustawić, ab to nie była kolejna płaska muzyczka na Commodore. Człek się gubi muzycznie i skupia się na efektach i nigdy mu dość.
Kurczę!, rzeczywiście piszesz o sin. Chyba ślepnę na "stare lata". Na moje usprawiedliwienie, to jednak metoda trikowa, a nie bezpośrednia, ale jest. Poza tym to już sylwester, rozkojarzenie dozwolone! :)
@Jacques - wiele muz z C64 rozwala, ale weź pod uwagę fakt, że ich odpowiedników nie wyprodukowano na Atari. Lepiej porównaj gry powstałe na obie platformy, wskaż mi spośród nich tę, która ma lepszą muzykę na Commodore.
A jaką masz gwarancję, że te muzyczki w maksymalnym stopniu wykorzystują możliwości jednego i drugiego chipu? ŻADNĄ. Bo muzyk mógł znać lepiej ten czy inny sprzęt, bardziej lub mniej się przyłożyć do którejś wersji lub nawet muzykę dla obu wersji mogli stworzyć różni ludzie. Dlatego moim zdaniem sens ma porównywanie najlepszych osiągnięć na SIDa jak i na Pokeya, niekoniecznie w oparciu o ten sam utwór, bo to jakaś paranoja. W końcu mamy oceniać możlwości a nie stopień ich wykorzystania np. w muzyce z Zybexa tu i tam ;-) Tym bardziej, że Atari jest bronione na zasadzie: "nie było tylu fajnych gier, ale możliwości ma o wiele większe niż gry wykorzystywały" (co jest prawdą), więc nie wiem dlaczego mielibyśmy oceniać SIDa na podstawie shitów z wczesnych lat 80-tych (czy np. Draconusa bądź Zybexa, bo akurat na Atari muzyka wyszła świetna), tylko dlatego, że wtedy gry jeszcze powstawały równolegle na oba komputery.
Porównujmy raczej nasze szczytowe osiągnięcia X-raya, Grega, Bartmana, Liebicha, itd. z ich szczytowymi osiągnięciami na Sida (czy to sceny czy z gier-hitów).
@Mono Z twojej jakże bogatej listy, oprócz JSW cała reszta jest na komcia i brzmi moim zdaniem lepiej. Problem z pokeyem jest taki, że szybko trafił wraz z Atari 8bit do piwnicy świata IT i prawie nikt nie próbował go męczyć. Zresztą wystarczy porównać ASME do HVSC, różnica jak 1 do 10. Oprócz Hubbarda i jego JSW to dobre kawałki na pokeyu dopiero Polacy zaczęli robić.
@general_specific: Przyjacielu. Przed Polakami byli jeszcze choćby David Whittaker, Jason C Brooke, Adam Gilmore, Richard Munns. To, że ASMA jest mniej imponująca, niż HVSC to żaden argument na poparcie tezy, że dopiero Polacy zaczęli robić dobrą muzykę na POKEYa. Swoją drogą ciekaw jestem, czego dokonaliby na Atari Jeroen Tell, Chris Chuelsbeck czy inni mistrzowie SIDa. Tim Follin dla przykładu wolał beepera od AY, bo stwierdził że za dzwonek od pozytywki nie będzie pisał :D No i na tym beeperze robił 8-kanałowe kawałki.
@mono Ale oni też nie byli specjalistami od pokeya. Trza było to się machneło na nim muzykę i tyle. Whitaker z Gilmourem mają w Asmie po dziewięć kawałków każdy. Munns to jedenaście a Brooke całe trzy. Hubbard ma porywające cztery z czego exclusivem jest jeden. Zajrzyj sobie teraz ile kawałków zrobił Kuba Husak albo chłopaki z Grayscale. A co do porównania ASMY do HVSC to jest jak najbardziej na miejscu. Po prostu widać o ile bardziej SID jest/był popularny. Nawet niech z tych 39 tysięcy kawałków w HVSC tylko 10% będzie naprawdę dobre, to w wyniku dostaniesz akurat całą ASME.
Kilka faktów przemawiających raczej na rzecz SIDa: 1. Wszystkie 3 kanały SIDa mają 16-bitową regulację częstotliwości. Efekty vibrato (falowanie częstotliwości) i portamento (płynne przejście od nuty o jednej częstotliwości do nuty o drugiej częstotliwości przez zakres częstotliwości nie należacy do skali muzycznej) są znacznie lepsze (dokładniejsze, płynniejsze) przy 16-bitowej regulacji. Przy 8-bitowej regulacji POKEYa są skokowe lub niemożliwe przy wysokich częstotliwościach. Oczywiście w POKEYu można uzyskać 16-bitową regulację, ale wtedy ilość kanałów maleje. Na a gdy jeszcze chcemy mieć 16-bitowe basy to mamy tylko 2 kanały POKEYa. Jest to więc przewaga SIDa nad POKEYem. W praktyce jednak tylko jeden prowadzący głos używa efektów vibrato lub portamento, więc gdy wystarczą nam jeszcze 8-bitowe basy, to możemy grać muzykę na 3 kanałach POKEYa czyli porównywalnie do SIDa. 2. W każdym kanale SIDa możemy grać falę prostokątną z płynnie regulowanym współczynnikiem wypełnienia 0-100%. Regulacja jest 12-bitowa i niezależna dla każdego kanału. W POKEYu takiego czegoś nie ma w ogóle. Można jedynie uzyskać efekt zbliżony do regularnie falującego współczynnika wypełnienia przez użycie filtra górnoprzepustowego, ale to angażuje 2 kanały (przykład likeac64.rmt w RMT). 3. W POKEYu jest problem z dobrymi basami. W SIDzie każdy kanał ma niezależną 16-bitową regulację częstotliwości od basów do wysokich. Jeżeli weźmiemy pod uwagę standardowy zegar bazy POKEYa 64kHz dla porównania to w SIDzie uzyskujemy częstotliwości niższe aż o 3 oktawy. Sytuację w POKEYu poprawia użycie zniekształcenia $C0. Dostajemy jedną oktawę w dół (czyli brakuje już tylko 2 oktawy do najniższych basów SIDa) ale dochodzą problemy z brzmieniem. Przy użyciu zniekształcenia $C0 mamy do wyboru dwa rodzaje takich basów. Jedne to te bardziej industrialne, metaliczne ale za to stabilne. Takich używa się najczęściej. Drugie to te o lepszym bardziej naturalnym ale za to niestabilnym brzmieniu no i w nich brakuje niektórych nut. Można jeszcze zmienić zegar bazowy na 15kHz ale z tym jest kłopot bo to wpływa na wszystkie kanały i tracimy wysokie dzwięki. Można użyć jeszcze zegara 1.77MHz dla kanału prowadzącego ale to nie załatwia problemu. Możemy mieć więc jeden kanał 16-bit taktowany 1.77MHz i dwa kanały 8-bit taktowane 15kHz. Sytuacja byłaby lepsza, gdyby dało się uzyskać kombinację: jeden kanał 16-bit taktowany 1.77MHz + jeden kanał 8-bit taktowany 64kHz + jeden kanał 8-bit taktowany 15kHz ale tak się niestety nie da. 4. Jeżeli chodzi o kształt fali, to w POKEYu mamy tylko czysty prostokąt o wypełnieniu 50% lub prostokąt zniekształcony na kilka sposobów (w tym szum, który też jest falą prostokątną tylko o zmieniającej się częstotliwości). W SIDzie mamy prostokąt o dowolnym wypełnieniu (modulacja współczynnika wypełnienia daje bardzo ciekawe efekty brzmieniowe), trójkąt, piłe i szum, który jest bardziej naturalny (ma nieregularny kształt fali a nie tylko nieregularną częstotliwość, choć w praktyce rożnicy między szumami SIDa i POKEYa się raczej nie słyszy, a podobno szum SIDa nie zawsze dobrze działa). Dodatkowo w SIDzie w każdym kanale niezależnie można mieszać więcej niż jeden kształt fali. Nie wiem czy da się uzyskać wszystkie możliwe kombinacje, ale na pewno można lączyć piłę z trójkątem oraz prostokąt z trójkątem. Takie kombinacje dają ciekawe brzmienia niedostępne w POKEYu. W POKEYu można uzyskać ciekawe brzmienia przez zastosowanie filtra górnoprzepustowego. Można przy tym użyć kombinacji kanał 8-bit + filter 8-bit, kanał 16-bit + filter 8-bit i kanał 8-bit + filter 16-bit. Tego nie ma w SIDzie. Ponadto w POKEYu mamy kilka rodzajów zniekształceń prostokąta, których również nie ma w SIDzie, z tym że takie zniekształcenia bardziej nadają się do efektów dzwiękowych w grach niż do muzyki. SID ma jeszcze tzw. ring modulation. Polega to na tym, ze fala jednego kanału staje się obwiednią amplitudy drugiego kanału. Z tego co sprawdzałem, to falą modulowaną może być tylko trójkąt (ale nie jestem na 100% pewien), za modulającą dowolna. To też jest bardzo ciekawe narzędzie do uzyskiwania nowych brzmień. Np dzwięk gongu w IK+ powstaje z modulacji fali trójkątnej szumem. Tego typu efekty są raczej niemożliwe do uzyskania na POKEYu. W atarowskiej wersji IK+ dzwięk gongu uzyskałem przez połączenie czystego prostokąta z nałożonym filtrem górnoprzepustowym o zmiennej częstotliwości oraz zniekształcenia $40 o wartości częstotliwości $07 (ciekawe metaliczne brzmienie). Niemniej takiej wersji gongu daleko do oryginału. Ogólnie sądzę, że ring modulation jest w SIDzie niejako odpowiednikiem zniekształceń w POKEYu, ale jest to narzędzie dające o wiele większe możliwości. Należy jeszcze wspomnieć o efekcie synchronizacji dwóch kanałów. W SIDzie można włączyć synchronizację pomiędzy dowolną parą kanałów niezależnie. W POKEYu można włączyć synchronizację pomiędzy jedną parą kanałów (1 i 2) poprze uaktywnienie trybu dwu-tonowego. Podsumowując krótko ten punkt, SID ma o wiele większą paletę możliwych do uzyskania (w sposób cyfrowy) brzmień niż POKEY. Są jednak efekty POKEYa, których nie ma w SIDzie czyli kilka rodzajów zniekształceń prostokąta oraz cyfrowy filtr górnoprzepustowy nałożony na czysty prostokąt. Aha, dodatkowym problemem ze zniekształceniami w POKEYu jest ich niestabilność oraz zależność od kanału na którym są grane. Jest związane ze sposobem tworzenia zniekształceń przez samplowanie liczników zniekształceń. Sposobem na ten problem jest restartowanie liczników zniekształceń POKEYa przed każdą nutą w utworze. Z tym że to się odbija na generatorze liczb losowych, więc raczej nie do zastosowania w grach. 5. Filtry analogowe. W POKEYu brak. W SIDzie jest dolnoprzepustowy, górnoprzepustowy, pasmowoprzepustowy i pasmowozaporowy. Jeden wspólny ale można wybrać niezależnie, dla którego kanału ma być zastosowany. Zastosowania to m. in. wygładzanie basów, generacja sinusoidy, ciekawe efekty z modulacją częstotliwości odcięcia filtra. Można też filtrować sygnał doprowadzony do SIDa z zewnątrz (projektant pewnie myślał o kaskadowym łączeniu wielu SIDów). 6. Obwiednia ADSR. W SIDzie jest sprzętowa. W POKEYu tego nie ma ale obwiednię można w części przypadków w miarę łatwo generować programowo. To oczywiście kosztuje trochę czasu procesora ale to nie jest problem. W playerach atarowskich częsci obwiedni D (Decay - opadanie) i R (Release - wybrzmiewanie) są zazwyczaj liniowe. W SIDzie są one logarytmiczne co jest bardziej zgodne z dzwiękami instrumentów w naturze. No ale to też można uzyskać i na POKEYu tylko trzeba lepsze playery popisać. No ale jest jeszcze jedno ale. Łatwo programowo uzyskać D i R, które są stosunkowo powolne. W przypadku szybkich, jest problem bo to przecież częstotliwość wywołań playera (np 50Hz - raz na ramke, 100Hz - 2 razy na ramkę) ogranicza częstość zmian poziomów głośności. Weźmy przykładowo szybkość opadania 2 w SIDzie czyli 16 poziomów głośności na 48 milisekund. To jakieś 2,5 ramki. Przy czestotliwości playera raz na ramkę będziemy mieli skokowo tylko 3 poziomy głośności czyli 15, 7 i 0 uzyskane programowo. Przy częstotliwości 2 razy na ramkę będzie to 15, 11, 7, 3 i 0. W SIDzie będzie płynne przejście przez wszystkie poziomy głośności. Gdy szybkość opadanie będzie większa, np. 16 poziomów w 6 lub 24 milisekundy, tego nie da się w ogóle zrobić programowo przy wywolywaniu raz czy 2 razy na ramkę. Ten sam problem dotyczy narastania A (Attac) ale ta część obwiedni jest rzadziej wykorzystywana w praktyce. Zazwyczaj dźwięk rozpoczyna się już od maksymalnej swojej głośności, czyli nie ma narastania od zera. Przy okazji, Yamahy i AY-greki też mogą generować różne obwiednie sprzętowo i w przypadku dużych szybkości narastania lub opadania nie można tego dobrze odtworzyć na POKEYu. Na pocieszenie jest to, że ludzkie ucho raczej nie wychwyci niedokładności obwiedni programowej w przypadku tak szybkich zmian.
Synchronizacja ma sens jeżeli kanały grają z różnymi częstotliwościami. Polega na tym, że gdy w kanale synchronizującym rozpoczyna się nowy okres fali, wtedy kanał synchronizowany jest sprowadzany na początek okresu. Czyli jeżeli kanał synchronizujący ma okres krótszy, to okres kanały synchronizowanego nigdy nie będzie w pełni odtworzony tylko będzie skrócony do długości tego pierwszego. W przypadku dwóch prostokątów uzyskamy w ten sposób regulację współczynnka wypełnienia kanału synchronizowanego. Jeżeli okres kanału synchronizującego jest dłuższy wtedy skrócenie okresu kanału synchronizowanego będzie sie zdarzało co jakiś czas, z częstotliwością kanału synchronizującego. Robiłem próby na POKEYu i słychać było takie, jak by to nazwać, "robotyczne" brzmienie.
Robi się kolejna chora dyskusja... Co z tego, że np. SID to 3 kanały, a POKEY 4. Samurai bardzo dobrze podkreślił, że POKEY kuca, bo KUCA. Muzycy na C64 wyciskają z 3 kanałów takie cuda, że wyrywa z butów. Poza tym od kiedy ilość kanałów w czymś przeszkadza? Dobry muzyk poradzi sobie nawet z ich mniejszą ilością... przykład?
Stary, ale jary Purple Motion i rok 1994: ...
A co do samego SID'a filtry i jeszcze raz filtry. Posłuchajcie sobie kawałków np. PVCF'a z dem Reflex'u, np:
- BASS! (od 1:30) - przy okazji gretz'y dla Tight'u ;) rypneli trochę z tego demka (HARD notabene też)
i jeden z moich ulubionych:
Obydwie produkcje pochodzą z '94.
... zróbcie mi taki basik na POKEY'u - bez użycia sampli, itp dodatków.
Reasumując... Twórcy POKEY'a dali trochę ciała. SID w klimacie muzyki ma o wiele większe i lepsze możliwości. Ale i tak lubię POKEY'a, bo ma swój klimat.
Jest jeszcze jedna sprawa. Klasyka (muzyka klasyczna). Na atari byle muzyk bierze nuty i przepisuje. A commodore brakuje tego jednego kanału, trzeba rzeźbić.
Jako układ do efektów w grach - Pokey lepszy. Jako układ do Muzyki - sid lepszy. Jako układ do transmisji szeregowej - Pokey lepszy. Jako generator liczb losowych - nic ponad Pokey nie zostało wynalezione. Jako układ obsługujący klawiaturę - Pokey lepszy.
Pamiętajc)ie, że układ ay (układ General Instrument AY-3-8910 był protoplastą wszystkiego i powstał w 75 roku. Jest niezaprzeczalnym liderem. Układ yamahy na licencji miał tylko nieliczne zmiany (gorsze) oraz wspomaganie pracy ukladu procesorem doddatkowym z80 (nieliczne wersje) co niezmieniało brzmienia tylko oszczedzało czas procesorowi. przyklad pracy ay na spectrum....
tu juz nie chodzi o platforme ale o uklad co potrafil...
to 75 rok
sida lykal jak zapalczke...w zyciu takiej polilfoni nie mieliscie na swoich ukladach....
kolejny przyklad....
pomijam juz sida bo jest zjedzony przez ay totalnie, ale ciekawy jestem takiej bezposredniej konwersji pokeya na specy...tyrzeba zrobic program na atari do bezposrednich wrzutow w rejestry a potem dostroic......heheheh jest jakies zadanie na 2011 rok;p
Warto zauważyć, że SID (AY też) jest dedykowanym grajkiem, POKEY zaś obsługuje przerwania, klawiaturę, potencjometry, transmisję szeregową, zegary systemowe, generator liczb pseudolosowych (nie pominąłem czegoś? zawsze się gubię), granie, mam wrażenie, jest nieco na doczepkę. C64 bez SIDa działa, Atari bez POKEYa nie wstanie w ogóle (chyba nawet bez Antica i GTIA dałoby się uruchomić, bez POKEYA nie ma szans).
Jak na chip, który brzdąka przy okazji, to nieźle sobie daje radę. Oczywista, że SIDowi dorównać nie jest w stanie. Tym niemniej uchem laika basy choć basy SIDa rządzą (i perkusja - zdarzało mi się pomylić z samplami), to inne instrumenty wolę na POKEYu – SID mnie szybko męczy. Muza z Draconusa jest imho bezapelacyjnie lepsza na ataraku.
Acha – czy na SIDzie nie trzeba się nieco namęczyć przy odtwarzaniu sampli?
@jhusak - masz rację, harmonia klasyczna oparta jest na 4-ro głosie i tu rządzi POKEY, dla mnie to wystarczy, żeby uznać wyższość tegoż przy w miarę porównywalnych możliwościach dźwiękowych obu układów.
@Zza_parawanu - zgadzam się z Tobą, SID szybko męczy, jest jakiś taki zbyt jazgotliwy jak dla mnie.
Zjawisko męczenia lub nie może być spowodowane (nie)przyzwyczajeniem. Komodorowca pewnie męczy POKEY, przeciętny człowiek nie zniesie długo ani SIDa ani POKEYa. ;)
jeszcze dopisze... uklad ay jest taktowany jak widze podobnie jak waszy 1,78 w palu. Na Cpc oraz C64 jest to tylko 1 Mhz . Moze to niby niewielka ale w przypadku odtwarzania sampli bardzo duza róznica i nie tylko sampli ale wlasnie wpisywaniu bezposrednim zmian w rejestrach. W wielu sytuacjach to slychac. AtarowkiST ay taktowany byl rowno 2mhz no i z tej racji mozna uznac go za lepszym od speccy:) Cala sprawa wykorzystania tak ayka to sprawka Leonarda..autora wielu demek (w tym muzyczki chipowe amigowe) oraz emulatora atari st i generalnie sluzyla do odtwarzania na ayku sidow na atari st, ale znalezli sie ludzie co przeportowali wszystkie te zalozenia na speccy;p praca leonarda nad tym jest wymieniona w tym demku patisionersow i nikt jego zaslug nieominal....
Co do ogolnie pokeya to tylko linia muzyczna z jet set willy oraz x-ray wzbudzili we mnie chec sluchania pewnych kawalkow. brak basu lub jego takie dziwne dzwieczenie jest dla mojego ucha naprawde obciazajace... miker dlaczego walkujesz tak samo muzyke bez szukania jakis rozwiazan...normalnie marnujesz sie. hubart daglish gilmore wszyscy szukali alternatyw brzmien trikow w komputerach itp....
Pragne zwrocic uwage na wypowiedz kolegi Zza_parawanu. SID i AY to czipy muzyczne, POKEY to nie jest czip muzyczny.
Gdyby przyrownac czipy muzyczne do lodowek - to POKEY bylby odkurzaczem z funkcja mrozenia :). Krotko mowiac - nalezy sie zdumiewac, ze odkurzacz tak dobrze sobie radzi z funkcjami chlodniczymi, ze wszyscy uwzgledniaja go w zestawieniach lodowek...
Ze nie wspomne, ze ten odkurzacz potrafi tak pomrozic, ze niektorzy maja go za lepszego od lodowek :D
ay jest taktowany jak widze podobnie jak waszy 1,78 w palu. Na Cpc oraz C64 jest to tylko 1 Mhz . Moze to niby niewielka ale w przypadku odtwarzania sampli bardzo duza róznica
Czegoś tu nie rozumiem. Taktowanie układu muzycznego ma wpływ (chyba) na przełożenie wartości rejestru na wysokość dźwięku (czyli nuty), ale z samplami nie ma nic wspólnego (chyba że chip ma własną pamięć i sam odgrywa sample, ale przy bezpośredni wpisywaniu nie ma to kompletnie znaczenia).