Kan man produsere en oppdatert versjon av Commodore 64 uten å ty til emulatorer? Vi tar en titt på Ultimate 64.
Retrodatamaskiner og -konsoller er i vinden som aldri før. Den siste tiden har vi sett flere av konsollene bli gjenfødt og reprodusert med moderne løsninger, som oftest via emulering. Noen har også tatt steget ut og laget en hardware-versjon med enten ASIC eller FPGA. En av fordelene med å bruke ASIC og FPGA er at man får en såkalt hardware-implementasjon som jobber i sanntid, og dermed totalt eliminerer forsinkelse («latency»), et av de vanligste problemene med emulatorer.
FPGA-implementering av Commodore 64
Ultimate 64 er en implementasjon av klassikeren Commodore 64 i FPGA. Denne idéen er i seg selv ikke ny, og det finnes tidligere eksempler på dette, blant annet C64 DTV (ASIC-basert Commodore 64 i en joystick utviklet av Jeri Ellsworth), Turbo Chameleon (FPGA-basert cartridge for Commodore 64 produsert av Individual Computers, som også fungerer som en komplett maskin i frakoblet modus) og MiST FPGA (Generisk FPGA-basert datamaskin med støtte for ulike systemer, inkludert Commodore 64).
Turen er nå altså kommet til nederlandske Gideon Zweijtzer, allerede kjent for sin innsats på Ultimate II+ som er en ekspansjonscartridge for Commodore 64. For de som ikke kjenner til denne, er det en enhet som gir brukeren en fullverdig implementasjon av blant annet diskettstasjon og kassettspiller, i tillegg til en del andre finesser. Dette betyr at du kan fylle opp en minnepenn med såkalte image-filer av disketter, kassetter og cartridger, og kjøre dem ved hjelp av de innebygde funksjonene. Ganske ut av det blå presenterte han i fjor idéen sin om et nytt hovedkort som skulle være Commodore 64-kompatibelt på sin egen supportgruppe på Facebook, med spørsmål om interessen ville være stor nok til å kunne få til et lite parti på rundt 200 enheter.
I løpet av de neste dagene skulle han få merke at interessen var langt høyere enn han kunne forestille seg. Før det hadde gått en uke hadde allerede 500 interesserte meldt seg, så det er tydelig at Gideon har truffet en nerve hos entusiastene.
De første hovedkortene har nå dukket opp hos de som var så heldige å få sikret seg et da det midlertidig ble åpnet for bestillinger. Årsaken til det begrensede antallet bestillinger er at Gideon har ønsket å benytte den første batchen som en slags verifisering på at det ikke er noen problemer med designet, før et større antall blir produsert. Skulle det vise seg å være alvorlige feil i designet er det langt billigere å erstatte eller reparere 100 kort enn det er å gjøre det samme med 1000 kort, og den beste måten å teste dette på er jo nettopp å la brukerne med sine ulike bruksmønstere få gjøre litt av testjobben, noe det har vært åpenhet om hele veien. Det er likevel lite sannsynlig at det kommer til å oppdages noen feil som ikke skyldes firmware, siden Gideon i forkant har produsert prototyper som ble brukt til feilsøking og feilretting.
Ett av de første hovedkortene havnet selvsagt hos undertegnede, som av enkelte trolig vil anses å være bittelitt over middels opptatt av plattformen. Som man kan se av bildet over er dette et fullverdig hovedkort med alle opprinnelige porter på plass, med en liten forskjell. Userporten (den som ser ut som en litt bred kassettspillerport) mangler og er byttet ut med to USB-porter, HDMI-utgang og en ethernet-port. For de som absolutt må ha userporten, så vil det senere bli mulig å kjøpe et adapter som kan kobles til en egen header på hovedkortet, som gir deg denne porten tilbake.
Utover dette er det også noen små forskjeller på portene på siden av maskinen. Den mest åpenbare er at kontakten til strømforsyningen ser annerledes ut, og i motsetning til originalen som krever en strømforsyning med 5V DC og 9V AC, nøyer dette hovedkortet seg med et DC-adapter på mellom 7,5V og 15V. Derfor vil det også være enkelt å skaffe et nytt dersom behovet skulle melde seg.
Den tradisjonelle av/på-bryteren er erstattet med en multifunksjonsknapp. I avslått tilstand vil ett trykk slå den på, og i påslått tilstand vil ett trykk ta deg inn i Ultimate-menyen. Et trykk som varer i mer enn to sekunder men under syv sekunder vil gjøre en soft reset / reboot, mens å holde knappen inne i syv sekunder vil skru av maskinen.
En fullverdig erstatning?
Før vi går nærmere inn på hva Ultimate 64 kan gjøre er det på sin plass å påpeke at dette er et produkt som er mest rettet mot entusiastmarkedet, og de som ønsker en løsning som er nærmest mulig den originale maskinen. Det er altså ikke noe ferdig satt opp system slik som de ulike mini-variantene av konsoller og nå også den nylig utgitte TheC64 Mini er, men det er likevel en del ved denne løsningen som er ment å gjøre det enklere enn å ta i bruk enn en original maskin. Ultimate 64 er utformet for å passe i alle varianter av kasser den originale maskinen kom i, og har kontakt for det originale tastaturet. Har man ikke en ekstra kasse og/eller tastatur til rådighet er det på ingen måte umulig å bruke hovedkortet. Vanlige USB-tastatur skal kunne brukes, men i nåværende firmware-versjon fungerer ikke dette. Gideon har bekreftet at det er en feil, og at den vil rettes snarlig.
Siden det i praksis betyr at man står helt fritt til å velge hva slags kasse man vil montere kortet i er det ikke usannsynlig at det på et senere tidspunkt vil komme produkter på markedet som er tilpasset formålet, men enn så lenge må man ta kreativiteten til hjelp.
Observante lesere kan ha lagt merke til at det står to SID-brikker (Sound Interface Device) i dette hovedkortet. Disse følger ikke med og er heller ikke en forutsetning for at maskinen skal fungere, siden SID også er implementert i FPGA-en. «Kjennere» vil likevel kunne føle at lydbildet er noe ukorrekt, og derfor har Gideon valgt å utstyre kortet med ikke én, men to sokler etter sterkt ønske fra entusiastene. Disse støtter både den eldste (6581) og den nyeste modellen (6582 / 8580) og kan brukes enten samtidig eller hver for seg basert på oppsett og programvare.
Det første som møter en når man skrur på denne maskinen er en skjerm som er velkjent for mange, oppstartskjermen til Retro Replay. Dette fordi FPGA-en ikke bare inneholder en fullverdig C64, men også firmwaren til hele Ultimate II+, som har Retro Replay aktivert som standard. Så selv om du kan koble til en kassettspiller, diskettstasjon eller cartridge så er det ikke nødvendig. Fordi Ultimate II+ er integrert i samme FPGA betyr det også at det ikke er noe behov for ekstra kabler som er tilfelle når man kobler en Ultimate II+ til en original Commodore 64.
Med andre ord, det eneste du trenger utenom selve maskinen er strømadapter, joystick og videokabel. Her kan du enten bruke HDMI eller analog kabel av standardtypen som brukes til C64. Både kompositt og S-Video er støttet, samt at med en annen kabel-konfigurasjon kan man til og med få RGB. Som en ekstra bonus finnes en tredje USB-port som befinner seg på andre siden av hovedkortet, og derfor vil være tilgjengelig for en permanent lagringsenhet som ikke stikker ut fra maskinen.
Hvor bra fungerer det hele egentlig?
Ultimate 64 støtter stort sett alle de samme filtypene som emulatorer (.d64, .g64, .prg, .crt, .tap, .t64), og er derfor ikke bundet av noen restriksjoner på hva du kan kjøre av spill eller programvare. I løpet av den drøye uka kortet har vært testet, så er det blitt testet på en rekke ulike spill og demoer, samt litt forskjellig hardware. Kompatibiliteten med kassettspiller og diskettstasjon er upåklagelig og jeg hadde generelt godt hell med cartridger, men ikke alle var like stabile. Jeg hadde for eksempel litt problemer med å få ting til å kjøre ordentlig så lenge jeg hadde Action Replay-cartridgen min koblet til, men cartridge-støtten er i likhet med andre ting ikke 100% ferdig.
Noe annet det var knyttet stor spenning til i forkant var softwarekompatibiliteten siden firmwaren fortsatt er å anse som uferdig, og her ble jeg veldig positivt overrasket. Etter å ha fått installert versjon 1.02 av firmwaren var det generelt lite problemer å finne med spill. Et fåtall spill hadde noen mindre grafiske «glitcher», men siden dette var snakk om tre spill av i alt rundt hundre som ble testet er dette absolutt godkjent. Som en slags stresstest ble også noen originalspill testet på en ekstern diskettstasjon. Siden kopibeskyttelsen på originalspill ofte bruker hardwaren på måter som er litt utenfor spesifikasjonene ville derfor dette hatt en høy sannsynlighet for å feile hvis noe var uriktig implementert, men her virket alt jeg testet.
Ved testing av demoer ser resultatene noe annerledes ut, men det er fremdeles langt bedre enn hva som på forhånd var forventet. Det var noen tilfeller av demoer som ikke kjørte overhodet, samt noen med veldig tydelig «glitching», men jeg vil likevel anslå at rundt 80-90% av demoene jeg testet ikke hadde problemer overhodet. Hadde dette vært et sluttprodukt hadde det for entusiasten ikke vært bra nok, men siden dette er i startfasen og det allerede er gitt tydelig beskjed om at firmwaren ikke er ferdig er dette mer enn godkjent.
Årsaken til at langt flere demoer feiler enn spill er fordi demoer ofte benytter egenskaper i grafikkbrikken eller prosessoren som er både udokumentert og utilsiktet fra utviklernes side. Siden dette er udefinert og udokumentert oppførsel er det også mer krevende å etterligne det i FPGA-en, og det er nok også her mye av utfordringene med å forbedre firmwaren til Ultimate 64 vil ligge i tiden fremover. I følge Gideon er målet at han i løpet av 2018 skal ha en tilnærmet perfekt implementasjon, og basert på det jeg har sett så langt så virker det veldig sannsynlig at det skal la seg gjøre.
Hvem er dette for?
Som nevnt tidligere i artikkelen er målgruppen primært entusiastene, men hvem som helst som ønsker seg en opplevelse så nært originalen som mulig kan få mye glede av produktet. Selv om det krever noe av den samme kunnskapen man måtte ha på 80-tallet for å få brukt maskinen, er den likevel vesentlig enklere i bruk. Veldig mye kan startes og styres fra det medfølgende menysystemet som er langt mer brukervennlig enn de fleste emulatorer. Dersom du behersker en emulator vil du derfor ikke ha noe som helst problem med å ta i bruk maskinen, og skulle du likevel stå fast finnes det god hjelp å få fra Facebook-gruppen eller fra Gideon direkte.
Det er utvilsomt et stort pluss og et viktig steg i utviklingen at hovedkortet inneholder en HDMI-utgang, som også inkluderer lyd fra både originale lydbrikker og FPGA. Som nevnt i starten av artikkelen er det ingen forsinkelse å snakke om ut fra selve enheten verken via HDMI, eller den analoge videoporten, men på noen tv-er kan man likevel oppleve det som kalles input-lag på grunn av at bildebehandlingen ofte tar litt tid. Koblet til en PC-skjerm var det derimot like responsivt som en original Commodore 64 på en god gammel kasse-tv.
Det er vanskelig å finne noe negativt å si om dette produktet. At det ikke er ferdig kan det ikke trekkes for, for det var hele tiden klart ved bestillingstidspunktet. I tillegg så overbeviser dette så bra at jeg tror jeg ville slitt med å skille den fra en ekte maskin i blindtest. Skulle det være noe som eventuelt får dette til å virke noe avskrekkende, måtte det være den relativt høye prisen i forhold til mange andre produkter ment å trigge nostalgien.
I skrivende stund koster Ultimate 64 ca. 173 euro pluss frakt og mva. Sett i forhold til hva man får er derimot prisen veldig lav. Til sammenligning koster Individual Computers sitt Reloaded V2, som er et hovedkort til Commodore 64 der du selv må ha alle hovedbrikkene fra maskinen fra før, 185 euro, og da må du fremdeles ha en enhet for datalagring og eventuelt annet tilbehør Ultimate 64 erstatter. Det kan også nevnes at bare FPGA-en på kortet har en listepris på mellom 300-500 kroner avhengig av leverandør, så kommer kostnader til andre komponenter og tiden det faktisk har tatt å utvikle, produsere og teste produktet. Har man rom i budsjettet til et sånt utlegg er det altså ingen grunn til å rynke på nesa av prisen, Ultimate 64 er nemlig verdt hver eneste krone.
Denne maskinen er også planlagt utstilt på Retrospillmessen i Sandefjord i år for de som måtte ha lyst til å se den i aksjon.