FPGASID – Ny lyd på Commodore 64

Noget af det, som gjorde Commodore 64 til et kæmpe hit, var, at den som den første computer var udstyret med en ret avanceret lydchip. Den havde tre stemmer, som hver kunne spænde over 8 oktaver og frembringe fire grundlæggende bølgeformer og kunne lægge filtereffekter på hver enkelt stemme. Det var ret avanceret, og der gik også nogle år, før at programmørerne lærte at udnytte den lille synthesizer til sit yderste.

Der er gennem tiden gjort flere forsøg på at genskabe SID-chippen, men dens helt karakteristiske lyd har vist sig svær at ramme. FPGASID er et helt nyt forsøg, og folkene bag lover, at de er tættere på end nogen andre.

Når det overhovedet kan være relevant at se sig om efter en erstatning for SID-chippen, så er det fordi, at de ofte er blandt de chips, som går i stykker. Og med chips, der efterhånden har op mod 35 år på bagen, er det godt at vide, at man kan erstatte en defekt chip med en funklende ny.

FPGASID baserer sig (som navnet antyder) på FPGA-teknologien, der ikke bare emulerer men reproducerer alle de digitale egenskaber i den oprindelige chip. Den tilstræber også at genskabe de analoge kredse i SID-chippen.

Men den er mere end bare en SID-chip. Den genskaber nemlig både den oprindelige 6581 SID-chip og den reviderede 8580-udgave, som primært blev brugt efter udfasningen af “brødkassen”.

Disse to udgaver lyder nemlig forskelligt. Filteret er betydeligt mere hørbart i 6581 end i 8580, så musik, der er skabt til 8580 kan godt lyde lidt “klemt” på en 6581. Omvendt vil nogle betegne lyden fra 6581 som varmere end lyden fra en 8580, som opleves skarpere og mere markeret.

Og som om det ikke var nok: FPGASID gør det muligt at få computeren til at håndtere hele TO lydchips i samme maskine, og på den måde afspille nyere “stereo”-kompositioner med 6 lydstemmer.

Kablelklips og konfigurering

Jeg må hellere starte med at skrive, at den test, jeg har foretaget, på ingen måde er videnskabelig. Mit formål med testen var egentlig at undersøge, om FPGASID kan matche en rigtig SID-chip, og om er bedre end den indbyggede UltiSID, som sidder på Ultimate 64-bundkortet (en fantastisk FPGA-implentering af en Commodore 64 som ALLE bør eje!).

Men inden vi går i gang, skal vi lige omkring monteringen: FPGASID leveres nemlig med et sæt kabler, som skal “klipses” på ben forskellige steder på 64’erens bundkort, hvis alle features skal udnyttes fuldt ud. Mit mål er som sagt ikke at opbygge en stereo-løsning, men blot at afprøve, hvor tæt lyden ligger på en “rigtig” SID-chip. Kablerne er således kun nødvendige for at konfigurere FPGASID.

Man skal tælle til 12 og 15, hvis man ikke skal riste sin Commodore 64, når man installerer kablerne til FPGASID.

At montere kablerne er i sig selv relativt enkelt, hvis man ikke er alt for fummelfingeret. Men da FPGASID er en halvstor fætter, kommer den på visse boards i konflikt med de komponenter, som sidder omkring SID-soklen. Det betød i mit tilfælde, at jeg måtte sætte to tomme sokler oveni SID-soklen, for derved at løfte FPGASID over komponenterne. Heldigvis havde jeg sokler på lager!

For at få plads til FPGASID på et U64-board skal den forhøjes med en ekstra sokkel. På min C64-brødkasse, måtte der to sokler oveni hinanden til, før at den gik fri af komponenterne.

Fra producenten er FPGASID konfigureret som en 6581 SID. Da jeg foretrækker den nyere 8580, valgte jeg derfor at montere chippen i en C64 for at køre konfigurationsprogrammet og indstille den til 8580. Der er mange valgmuligheder i programmet, og man kan lægge to forskellige konfigurationer ind i chippen, som man så efterfølgende kan skifte mellem ved hjælp af en kontakt. For eksempel kan man altså lægge en konfiguration ind til 6581 og én til 8580.

Hvorfor konfigurerede jeg ikke FPGASID i U64?
De medleverede kabler er en forudsætning, hvis du vil køre konfigurationsprogrammet til FPGASID. De kræver som udgangspunkt at blive forbundet til nogle specifikke benforbindelser på C64-bundkortet, fx CPU’en. På U64 kan man lodde en pin-header til P7 (FPGA I/O) pin 5 – og skabe forbindelsen ad den vej. Men angiveligt er det en risikabel sti at gå, idet FPGA I/O har direkte kontakt til FPGA’en, og der derfor er en vis risiko for at ødelægge noget i denne.

Man kan også konfigurere den sokkel, hvori FPGASID er monteret, til $D400-D7FF. Herefter kan man fra ConfiGuru sætte FPGASID til “Stereo”.

Og hvordan lyder den så?

Efter at have konfigureret FPGASID til at efterligne en 8580, har jeg monteret den i min Ultimate 64, og testen kan gå i gang. Min plan er at teste:

  • UltiSID 8580 (i Ultimate 64)
  • FPGASID 8580 (i Ultimate 64)
  • SID 8580 (i C64C)

Lyden overføres til mit TV, for Ultimate 64’s vedkommende digitalt via HDMI – og herfra analogt via TV’ets line-out til min computers lydkort. For C64C-udgaven er det analogt hele vejen, fra computer til tv til computer. Så her har vi den første fejlkilde, som jeg kynisk ignorerer 😉

Jeg har valgt titelmelodien til Krakout – fordi det er en ret funky melodi, og fordi den gør brug af alle tricks i bogen til at vride de vildeste toner ud af SID’en.

Lad det være sagt med det samme: FPGASID lyder i mine ører godt. Men det gør UltiSID såmænd også. Faktisk så godt, at jeg på titelmelodien til Krakout ikke ville kunne udpege originalen, hvis jeg blev præsenteret for tre forskellige optagelser.

Men skal man nørde lidt i forskellene, så er de der måske alligevel. Prøv at kigge på dette udsnit af optagelsen:

De tre udsnit (ca. 4 sekunders lyd) er taget på samme sted i melodien. Er UltiSID i virkeligheden tættere på originalen end FPGASID?

Lyden “ser” altså lidt forskellig ud, men man skal nok have bedre lytteudstyr og ører end undertegnede for reelt at registrere en forskel – i hvert fald på Krakout-melodien.

Hvis vi starter med waveformen på SID-chippen (den øverste), så er den tilsyneladende “vendt på hovedet” i forhold til de to andre. Det må skyldes kablingen et sted i overførselskæden fra computer til fjernsyn til computer, og for sammenligningens skyld burde jeg have vendt den i lydprogrammet.

Når det så er gjort, er det lige før, at jeg vil erklære UltiSID for vinderen i det konkrete tilfælde. Men døm selv – og hør ikke mindst forskellen (eller manglen på samme) i disse (mp3-komprimerede) optagelser:

Lyt selv – i disse uvidenskabelige og helt sikkert fejlkilde-behæftede optagelser af Krakout-titelmelodien. Optagelsen af den “rigtige” SID-chip er foretaget fra en rigtig Commodore 64, og altså ikke digitalt ind i fjernsynet. Hvis lyden virker mindre klar end de to andre, kan det være en forklaring.

Her er det i øvrigt værd at huske på, at på grund af de analoge elementer i Commodores SID-chip, er der faktisk stor forskel chips’ene imellem. Så hvem ved om den, jeg har sammenlignet med, er et særlig godt eksemplar – eller en lydbæ af de værre? Og kunne jeg have valgt en melodi, som stillede større krav til emuleringen (eller hvad vi nu skal kalde det) ?

Er den pengene værd?

90 Euro inklusive porto til Danmark og uden de ekstra kabler der gør, at du kan drage nytte af stereo-funktionaliteten, er pænt mange penge. Til den pris kan du uden problemer finde en brugt 64’er og skrælle den for sin SID-chip. Endnu da. For som nævnt er SID-chippen kendt for at være en skrøbelig lille sag, og her er FPGASID en super løsning, der til fulde kan leve op til de flestes krav til en lydchip.

Der kan sikkert findes SID-tunes, hvor FPGASID (og UltiSID) kommer til kort, men efter at have testet den i forskellige spil som “Monty on the Run”, “Last V8” og “Commando” og “Great Giana Sisters”, vil jeg påstå, at forskellen i daglig brug kun er teoretisk og ganske ubetydelig. Og så må vi ikke glemme, at en FPGA-baseret løsning kan softwareopdateres.

En ting, som jeg ikke har fået nævnt, men som faktisk er lidt irriterende, er de fancy røde dioder, der konstant blinker i takt til musikken. I starten er det hyggeligt at se det blinke gennem kølerribberne på computeren, men den følelse holder ikke ret længe. Umiddelbart har jeg ikke kunnet finde nogen stedet i softwaren, hvor lysshowet kunne slås fra – men mon ikke lidt sort tape kan løse det, hvis det bliver for generende?

Det røde lysshow kan godt blive lidt generende i længden.

Fortsat bliver FPGASID siddende i min Ultimate64 – for jeg bilder mig ind, at jeg vist nok, trods mine “målinger”, kan høre forskel. At lyden lige er en anelse mere luftig end UltiSID’en. Men hvad ved jeg? Det eneste jeg ved er, at skulle én af mine originale SID-chips stå af, ved jeg, hvor jeg har en helt perfekt erstatning.

Skriv en kommentar