Džinova 8-bitová stránka
ARM2SID
Úvod:
- Další logický krok po úspěšném ARMSIDu. ARM2SID podědil základní stavební kameny z ARMSIDu, jen jsou o krok vyspělejší.
- Díky nim přidal možnost emulace až dalších dvou čipů navíc a nebo FM syntézy s OPL2.
Popis, co to umí:
- Stejně jako ARMSID je ARM2SID náhrada obvodů MOS6581 a MOS8580 používaných v Commodore C64/C128. Opět v minimalistické podobě, ale umí hodně navíc.
- Dokáže nahradit až 3 obvody najednou, navíc umí emulovat i SFX sound expander stejně jako novější klon FM-YAM.
- Samotná emulace probíhá stejně jako u ARMSIDu, vlastnosti si lze přečist na jeho stránce.
- Případný update firmwaru přímo programem v C64/C128 bez nutnosti zasahovat do počítače.
- Nyní k sehnání zde.
Popis, co je uvnitř:
- Pár odporů, kondenzátorů, jeden stabilizátor, jeden dvojitý operační zesilovač a procesor. To je vše, součástky jen z jedné strany.
- Procesor STM32F446 (180MHz skoro 2x rychlejší než ARMSID, 2x víc FLASH paměti a 4x víc paměti RAM, víc pinů pouzdra, 2x 12bit DAC).
- O analogový výstup se stará audio zesilovač AD8646 (teď už dvojkanálový).
- Stabilizátor pro procesor 3,3V, samotný procesor má vstupy 5V tolerantní.
- Na desce je rozšiřující konektor, přes který lze buď připojit druhou patici s vyvedeným druhým řízením (chip-select a R/W signál) a druhým audio výstupem nebo konektor propojit s patřičnými signály na desce počítače napřímo bez další patice (zvlášť v případě, když v počítači patice na druhý SID není).
- Blokové schéma v PDF zde:

Firmware:
- Aktuální verze FW 3.17 z 21.2.2026 zde. Nebo jako obraz diskety. Nebo zde zazipovaný.
- Nezapomeňte si stáhnout nový konfigurační program.
- Oprava pro 2 MHz mód C128. Od tohoto firmwaru je ARM2SID funkční pro všechny režimy a typy komunikace s C128 (i ty, které nejsou kompatibilní s dokumentací SID).
- Do konfigurace byla přidána možnost použít vstup EXT IN (pin 26) jako analogový vstup a připojit jej k internímu směšovači, stejně jako u původního čipu. U tohoto vstupu je třeba počítat s mírným zvýšením šumu, doporučuji jej používat pouze v případě, že tuto funkci opravdu potřebujete. EXT-IN funguje pouze na hlavním čipu ARM2SID, nikoli na SID2.
- Byla také přidána možnost změnit prahovou hodnotu detekce emulace 6581/8580 podle vstupního napětí (pin 28), tzv. autodetekce. Původně je tato mez nastavena na 10,5 V, což znamená, že hodnoty pod touto hranicí indikují emulaci 8580, hodnoty nad touto hranicí emulaci 6581. S novým nastavením může být tato mez přibližně 2 V, takže pro přepínání typu emulace můžete použít logické úrovně 5 V nebo dokonce jen 3 V (pin 28 se v ARM2SID nepoužívá pro napájení, pouze pro měření napětí, pro funkci není na tomto pinu nutné napájení).
- Úprava obsluhy myší a joysticků pro vyšší stabilitu čtených hodnot.
- Další optimalizace kódu.
- Předposlední verze FW 3.15 z 23.1.2023 zde. Nebo jako obraz diskety. Nebo zde zazipovaný.
- Oprava chyby při generování šumu v nejvyšší oktávě (reportováno například v hře Crossroads II a Jumpman).
- Detekce typu SID s tímto algoritmem vrací skutečné nastavení typu v konfiguraci ARM2SIDa.
- Díky tomu, krom jiných, hraje i poslední část Wonderland XIII alespoň při nastavení ARM2SIDa na emulaci MOS6581. Prodigy jedou !
- Oprava ve špatném časování přehrávání hudby Turrican 2 - The Final Fight (dobře slyšitelné na skladbě 2).
- Doplněno nedokumentované přehrávání "žádného" průběhu, díky tomu například Boing Boom Tschak výrazně míň (cca 20dB dolů) píská.
- Úprava v generování kombinovaných waveforms (nejen) pro emulaci MOS8580, kde se víc blíží originálu (jak jen se dá u čipů, které jsou samy o sobě různé mezi sebou, závislé na teplotě, napětí a čase).
- Předcházející FW 3.14 z 16.7.2022 zde. Nebo jako obraz diskety. Nebo zde zazipovaný.
- Oprava chyby ve výšce tónu při generování šumu (reportováno například v hrách Crazy Comets a Paperboy ve verzích FW 3.11 a 3.12).
- Oprava v emulaci SFX (v některých skladbách chyběly perkuse).
- Sjednocená vzorkovací frekvence emulace SFX pro všechna nastavení (se správným nastavením referenční FM frekvence PAL/NTSC) na cca 49,7 kHz jako na originální kartě.
- Opět optimalizace na rychlost, a to nejen na běh aplikace jako takové, ale i obsluhy sběrnice.
- Rychlejší je i start aplikace, místo stovek milisekund je ARM2SID plně funkční už za míň jak 15 milisekund od připojení napájení !
- CS signály z obou patic se zpracovávají jako nezávislé přistupy (důležité pro použití v syntezátorech).
- Přidána možnost "opravit" tzv. ADSR bug, tedy chybu v generátoru obálky, která je vlastní originálním čipům a je reprodukována i v ARMSIDu. V C64 to kvůli kompatibilitě není potřeba, ale pokud používáte ARMSID v syntezátorech, mohla by vás tato funkce zajímat.
- Je možné přes konfiguraci vypnout automatické rozšíření zvuku levého knálu i na pravý kanál, pokud ten delší dobu nehraje (opět důležité pro použití v syntezátorech).
- Je tu i možnost přes konfiguraci nechat napevno hrát do obou kanálů SID jen data z levého kanálu (nastavení emulace pro jednotlivé kanály zůstává).
- Lehce poupravena jakost (Q) obvodů filtru pro ještě věrnější reprodukci MOS8580.
- Předcházející FW 3.12 z 9.9.2020 zde. Nebo zde jako obraz diskety. Nebo zde zazipovaný.
- Nová konfigurační utilita je zde. Verze včetně nové konfigurační utility je zazipovaná zde.
- Digifix pro emulaci MOS8580 je od této verze konfigurovatelný. Softwarově jde nastavit v několika úrovních a to dokonce i v opačné polaritě.
- V základním nastavení je ale řízen skutečným proudem z externího pinu. Pokud by vám softwarový Digifix chyběl, nastavte si ho přes nový konfigurační program.
- Digifix u MOS8580 vyžaduje například hra Ghostbusters, většina hlavně nových her, dem a hudeb naopak s Digifix nepočítá a ten pak může působit rušivě a přidávat do různých míst šum a hluk.
- Je zde také dotažen hotfix v generování šumu (test bit) z predchozí verze, teď už nechybí žádný zvuk ani v TestBit_4x.sid.
- V neposlední řadě byla poladěna emulace vnitřních analogových offsetů MOS6581. Ve výsledku vede k menší zkreslení některých dem (Mahoney - Musik Run/Stop) a odstranění klapání u některých her (Bubble Bobble).
- Drobný fix aktualizace čítačů generátorů při rychlých změnách.
- Opraveno nastavování nejnižší frekvence filtru pro emulaci MOS6581 (občas neodpovídala simulace nastavením).
- Předcházející FW 3.8 z 24.3.2020 zde. Nebo zde zazipovaný.
- Proti verzi 3.7 opravuje chybu v hodnotách registru OSC3 při generování šumu. Patrné například ve hře Paradroid.
- Předcházející FW 3.7 z 19.1.2020 zde.
- Proti verzi 3.6 jen marginální změny, přidáno čtení OSC3 a ENV3 registrů do emulace třetího SIDu, opravuje starší bootloadery, uživatelsky zjednodušený update.
- Proti verzi 3.5 přidána rychlá reakce pro stereo mód při použití druhé patice, pokud jsou adresovány oběpatice zároveň provede se přechod na dual-mono rovnou né až po timeoutu 15s.
- Také opraveno detekování namapovaných vyšších adres (někdy špatně detekovaná adresa ARM2SIDu v aktualizační aplikaci).
- Verze včetně nové konfigurační utility je zazipovaná zde.
- Pro update stačí nahrát do C64/C128, spustit a následovat instrukce.
- Pokud máte připojené adresy A5/A8, můžete si vyzkoušet 3SID soubory upravené pro adresy D400h,D420h a D500h ke stažení zde.
Konfigurace:
- Nová verze testovacího a konfiguračního programu z 17.2.2025 zde (zdrojový kód k nahlédnutí zde).
- Přidána detekce vícero kanálů ARM2SIDů najednou (adresy D400h,D420h,D500h,D520h,DE00h,DE20h,DF00h a 0xDF20h). Pokud je detekován více než jeden kanál ARM2SIDů, objeví se ještě před spuštěním výběr:
- Pokud je detekován jen jeden kanál ARM2SIDu, spustí se první obrazovka rovnou.
- Ukázka obrazovky konfiguračního programu:
- Lze měnit emulovaný čip MOS6581 nebo MOS8580 nebo to nechat na automatice podle napájecího napětí (nastaveno při zapnutí napájení).
- Nově lze uložit nastavení do paměti flash, bude se tak pokračovat v nastavení i při dalším zapnutí napájení.
- Na nové funkcionality - nastavení dolní mezní frekvence a strmosti filtrů je extra obrazovka po stisku klávesy E:
- Strmost filtrů pro MOS6581 odpovídá měřením uveřejněným zde.
- Pro MOS6581 lze strmost zvýšit nebo snížit v celkem patnácti krocích (-7 až +7), dolní mezní frekvenci v hodnotách 150,215 a 310Hz, pro MOS8580 v sedmi krocích pro frekvenci ladění při středním nastavení od 3kHz do 12kHz (kroky zhruba po 1/3 oktávy) a dolní mezní frekvenci také v sedmi krocích logaritmicky od 30 do 330Hz. Ukázka jiného než výchozího nastavení zde (ovládání přes kurzorové klávesy):
- Nově je v konfiguraci možnost nastavit Digifix pro emulaci MOS8580, dostaneme se k němu přes klávesu D z hlavního menu:
- Digifix můžeme nastavit buď externím odporem vůči zemi na externím pinu (stejně jako pro reálný MOS8580) nebo můžeme přepnout do softwarové emulace a nastavit úroveň v několika krocích manuálně (jedna z možností je 0% t.j. vypnout):
- Nastavení se dá uložit klávesou S do RAM ARMSIDa, vydrží tedy jen do vypnutí napájení nebo příkazu restartu:
- Nebo klávesou P trvale do flash paměti, a pak vydrží nastavení i po vypnutí napájení:
- Velmi důležitá je pro ARM2SID stránka pro nastavení mapování adres (přístupná stiskem M z hlavní stránky), výchozí nastavení vypadá takto:
- Pokud máte ARM2SID se dvěmi paticemi, je potřeba změnit nahoře nastavení PIN CONNECTIONS z WIRE na SOCKET:
- A pro stereo nastavení vybrat pro druhou patici emulaci SIDR:
- Konfiguraci opět uložíte přes klávesu P trvale nebo S do vypnutí napájení (doporučeno použít pro vyzkoušení, pokud vše funguje jak má, uložit trvale).
- Pro případ připojení přes přímé napojení signálů A5,A8 na piny procesoru a CS2,R/W2 a IO na piny expanzního konektoru, necháte nastavení na WIRE. Pak můžete měnit emulace na jednotlivých dekódovaných adresách, příklad pro přehrávání 3SID skladeb na adresách D400(left),D420(right) a D500(center):
- Přes volbu EMULATION MODE se volí mezi emulací SIDů (viz obrázky doteď), SFX sound expadnéru:
- Nebo kombinace jednoho SIDa v levém kanálu a SFX v pravém kanálu:
- V případě potřeby lze audio kanály sloučit do jednoho mono (oba kanály stereo výstupu jsou pak stejné) volbou DOWN-MIX TO MONO do polohy ON.
- Nastavené změny se projeví v emulaci až po nahrání konfigurace do RAM (klávesa S) nebo flash (klávesa P). Konfigurace uložená do RAM se vypnutím a zapnutím napájení zapomene.
- Na nové stránce s extra funkcemi můžeme "opravit" takzvaný ADSR-Bug. Toto je zajímavé pokud používáte ARMSID v nějakém syntezátoru, kde je původní chyba z originál SIDa nežádoucí. V C64 a C128 určitě tuto volbu ponechte na "NO" pro zachování stejného chování s originál SIDem.
- Další extra funkcí je vypnutí automatického rozšíření hudby z levého kanálu i do pravého, když pravý nehraje při stereo konfiguraci. Toto je opět zajímavé pokud používáte ARMSID v nějakém syntezátoru, tam je takové rozšíření zvuku na nepouživaný kanál opět nežádoucí. Nic vám však nebrání tuto vlastnost vypnout i při používání C64 nebo C128, pokud vám z nějakého důvodu vadí.
- Nakonec jde ono rozšíření dat z levého kanálu na oba naopak zapnout natrvalo, pak se data sice zpracovávají jen z adresy levého kanálu, ale přehrávají se na obou kanálech (s jejich individuálním nastavením).
<= zpět