Eurogamers Retroguide: Slopa diskar till C64/A500

av Jimmy Wilhelmsson (arkivlänk)
Publicerad på Eurogamer.se lördagen den 15 september 2012

Retroguiden är en artikelserie på Eurogamer.se som tar upp olika aspekter av retrospelande i modern tappning.

Det kan handla om hur du integrerar de gamla maskinerna med modern teknik men det kan också handla om emulatorer, backup, konverteringar eller bara smarta tips.

Oftast är det vi tar upp här inga världsomvälvande nyheter eller NASA-teknik, utan helt enkelt guider skrivna för att alla ska förstå.

Att plocka fram och koppla upp gammal originalhårdvara ger en viss känsla, det vet alla som dammat av sina gamla lådor på föräldrarnas vind och hittat sin ungdoms spelapparater.

I en tidigare del från förra året gick vi igenom olika sätt att koppla upp din gamla C64 och Amiga 500 till moderna tv-skärmar, och vi hann till och med prata om hur du kopplar ihop en Amiga 500 med en PC för att skriva och spara Amiga-disketter till Windows och tvärtom.

Med en diskemulator ser du till att dina filer och spel alltid fungerar.

Med en diskemulator ser du till att dina filer och spel alltid fungerar.

Att hantera Amigans 3,5”-disketter och C64s 5,75” kan också ge viss retrokänsla, men vill du få din spel- eller datorupplevelse att bli mindre frustrerande bör du satsa på diskemulatorhårdvara till båda maskinerna.

En diskemulator är ett litet hårdvarutillägg, oftast i form av ett naket kretskort, som lurar datorn att tro att den är kopplad till en diskenhet – och kan spara diskinnehåll på ett vanligt sd-kort.

Om man som jag tycker originalhårdvara är roligt, varför då satsa på modern emulation av inläsningsenheterna?

Jo, tidens tand är särskilt hård mot media och inläsningsenheter. Att kassettband är ömtåliga och lätt förstörs kan de flesta förstå, men även disketter har ett tydligt bäst före-datum som ofta sedan länge är passerat när 30 år förflutit. Särskilt Amigans disketter (som för övrigt också används av en rad andra maskiner) tycker jag verkar särdeles svåra att få fart på, om jag jämför med C64s böjligare och större variant.

Det kan alltså mycket väl vara på det viset att dina fina gamla originalspel ligger fint förpackade i sina lådor, men inte alls fungerar när du försöker starta dem. Spel som ligger på flera disketter kanske har problem med disk två eller tre, och då är ju alltihop förstört. Ska sanningen fram är originaldisketter egentligen inte av särskilt stort värde till Commodores datorer; det som verkligen uppskattas av många är däremot originallådorna i fint skick. Ironiskt nog gjorde den omfattande piratkopieringen att få ens hade dem, och ännu färre har dem kvar i dag.

Defender of the Crown på kassett är en mardröm, men med diskemulator går det som en dans.

Defender of the Crown på kassett är en mardröm, men med diskemulator går det som en dans.

Jag har under en tid provat några olika sorters diskemulatorer och tänkte kort beskriva HxC SD Floppy Drive Emulator till Amiga 500 (och alla andra datorer som använder 34-pinnars floppystation) och SD2IEC till C64. Båda emulatorerna kommer i många olika varianter och versioner, och grunden till detta är att glada entusiaster ständigt förfinar både kortet och mjukvaran som är tänkt att användas till det, vilket gör scenen för den retrointresserade ständigt levande.

I sitt grundläggande utförande behöver du inte löda eller på annat sätt göra avancerade ingrepp på en diskemulator, men i till exempel Amigans fall kan den kräva att du öppnar upp din dator och fysiskt ersätter originaldiskstationen med din emulator. Viss vana vid att öppna och rota i datorer är alltså en fördel, men så länge du är försiktig är det ingen fara.

Som vanligt tar jag som artikelförfattare inget ansvar för att saker och ting går som de ska när du provar med dina egna datorer, detta är såklart egna ingrepp vi gör på datorer som från början inte är tänkta att användas på detta vis. Ett tips är dock att komma ihåg att avmagnetisera dig själv, och kanske även dina verktyg, innan du börjar.

Jag lyckades själv, i ett annat icke-relaterat projekt, bränna sönder delar av en C64 genom att låta sladden till en joystick slarvigt hänga framför en tjock-tv innan jag satte in kontakten i joystickporten. Ett kort sprak, och sedan gick det inte längre att använda den högra delen av tangentbordet.

HxC SD Floppy Drive Emulator uppför sig exakt som en diskstation i exempelvis en Amiga 500, men läser sina filer från ett vanligt sd-kort av valfri storlek. Detta innebär att inläsningshastigheten är exakt densamma som om det satt en vanlig diskstation i datorn – du får alltså ingen turboeffekt men inläsningen är klart pålitligare än med vanliga disketter och det är enklare att få filer från din PC till din Amiga 500.

Denna diskemulator använder sig av vanliga .adf-filer, vilka är välkända för dig som i dag mjukvaruemulerar Amiga 500 i Windows. Dessa .adf-filer måste dock konverteras till det särskilda .hfe-formatet och det gör du enklast med HxC-kortets medföljande PC-mjukvara i vilken du kan skapa tomma diskettfiler och även konvertera .adf-filer till .hfe i batchar, det vill säga många på en gång så att du slipper göra det en i taget.

HxC behöver kopplas med datakabel och strömsladd.

HxC behöver kopplas med datakabel och strömsladd.

Om du vill byta ut Amigans originalstation df0, vilket jag rekommenderar, måste du öppna upp huven på din dator och koppla flatkabeln och strömsladden direkt till HxC. Se till att flatkabeln sitter rätt, oftast ska röd markering sitta närmast strömkontakten men i vissa fall (som mitt) är kabeln inverterad. Då är det bara att byta håll på kabeln vid moderkortet, inget tar skada av att flatkabeln är på fel håll – det fungerar bara inte.

Däremot måste du se till att strömsladden verkligen ger 5 volt till HxC-kortet och inte 12 volt; fel håll kan skada både dator och kort. Den bruna sladden brukar vara 5v och denna ska sitta inåt kortet i fråga; oftast är strömkabeln skarvad på sådant vis att den inte går att sätta på fel håll. Kablaget inuti dator är av förklarliga skäl ganska korta, så att införskaffa en ny flatkabel samt förlänga strömsladden är att rekommendera.

HxC går att styra på två sätt; antingen via de tre knapparna och en led-display direkt på kortet eller via en filväljarmjukvara som laddas in i datorns operativsystem via en autoboot-funktion som helt enkelt består av en diskettprofil som döps till autoboot.hfe och laddas först, om du angett det i konfigurationen. I denna filväljare bläddrar du sedan enkelt bland dina mappar och filer som om det vore typ Windows, men det är såklart AmigaDOS.

Den självklara frågan är huruvida HxC kan emulera flera diskettstationer, och svaret på den frågan är ja – men att det inte är särskilt nödvändigt.

En autobootad filväljare är ett smidigt sätt att ladda filer.

En autobootad filväljare är ett smidigt sätt att ladda filer.

Jag tar det från början: HxC kan emulera både df0 och df1 (Amigans första extradrive) och därmed fungerar tvådiskmjukvara som kan använda sig av df1, och du slapp manuellt diskbyte (alla gjorde tyvärr inte det). Men HxC har en smartare lösning för diskbyten som hänger ihop med filväljarmjukvaran och dess möjlighet att binda upp till 16 diskfiler till olika slots (se bilden för detaljer).

Om du exempelvis vill spela Retrokanonen Moonstone, som består av tre diskar, så anger du redan i filväljaren vilken slot varje diskfil ska knytas till. När spelet sedan körs igång minns HxC vilka diskar du vill jonglera mellan och när spelet ber dig byta disk klickar du på en av knapparna på HxC för att bläddra fram till rätt diskfil. På led-skärmen ser du att du valt rätt och den röda, gula och gröna led-lampan samt displayen berättar för dig om laddningen sker som den ska eller om något stannat och inte fungerar, vilket inte alltid var så lätt att avgöra på själva tv-skärmen – det har hänt en del i användarkommunikation de senaste 20 åren.

HxC SD Floppy Emulator kostar runt 800 svenska kronor, beroende på vilken version och vilket utförande du vill ha. Bland annat finns det sedan i våras en specialtillverkad version som passar exakt i hålet som blir kvar efter din diskettstation och ser därmed snyggare ut än att bara har ett kort dinglandes.

Att använda SD2IEC till en Commodore 64

En diskemulator till en Commodore 64 fungerar på liknande sätt som HxC till Amiga 500, men denna äldre dators avvikande konfiguration gör dock att vissa saker är annorlunda.

I sitt grundutförande är ett SD2IEC-kort ganska mycket enklare än HxC; den har ingen led-display och heller inga knappar för att byta disketter med, även om versioner som har alla dessa saker också säljs – SD2IEC är en slags standard, och inte en produkt i sig.

Det här kortet, precis som andra kort, behöver ström för att fungera – men ingen ström kommer ur den serialport dit du normalt kopplar din 1541-diskdrive (som ju är självförsörjande med egen nätdel) och det är ju hit även din SD2IEC måste kopplas. SD2IEC har löst detta problem med en extra kontakt som kopplas till kassettporten, och det enda syftet med detta är att hämta 5v för att driva kortet. Ganska smart, faktiskt.

Ett SD2IEC-kort där de gula kablarna visar var pinne 1 och 2 sitter.

Ett SD2IEC-kort där de gula kablarna visar var pinne 1 och 2 sitter.

Eftersom din SD2IEC emulerar en diskdrive tror din C64 till 100 procent att det är en sådan den pratar med. Alltså kan du inte boota upp direkt med en filväljare och börja välja och vraka bland spel och filer. Istället använder du exakt samma kommandon för att ladda spel från SD2IEC som du har gjort med en vanlig diskdrive, vilket i klartext betyder att du måste skriva in LOAD ”$”,8 och därefter RUN för att se sd-kortets innehåll.

Varför det fungerar på detta vis? Jo, en C64 kan inte boota upp med en diskett, som senare datorer gör – den startar ju med en inbyggd BASIC-tolk och därefter är det upp till användaren att bestämma vilken inläsning som ska användas; disk, kassett, cartridge eller tangentbord.

Detta kan dock tyckas vara omständligt, och därför känns det mer naturligt att börja med att ladda in en filväljare för att lättare sköta laddningarna därifrån. Det finns många sådana att välja mellan, och i mitt fall har jag döpt den till FB för att korta ned laddningskommandot. Att ladda min filväljare kräver alltså att jag skriver LOAD ”FB”, 8 och därefter RUN. Men sedan tar joystick eller piltangenter över och jag kan välja och vraka bland filerna.

SD2IEC laddar i sitt grundutförande inte heller in snabbare än en 1541-II, men däremot bra mycket snabbare än föregångaren 1541. Bland filtyperna som stöds hittar du både .d64 och.prg, så både diskett- och kassettspel funkar fint att ladda in och ingen konvertering behövs.

Ordning och reda, diskfiler och diskfilslista i samma mapp.

Ordning och reda, diskfiler och diskfilslista i samma mapp.

Väl inne i filväljaren får du upp dina mappar som du redan har lagt in på sd-kortet från en PC. Det är smart av flera anledningar att lägga varje spel i en egen mapp. Anledningen till detta är att spel som kräver mer än en disk behöver en särskild fil som berättar vilka disketter du vill bläddra mellan för det aktuella spelet. I en textfil kallad autoswap.lst listar du rad för rad upp filnamnen på diskarna, exempelvis:

dotc_s1.d64
dotc_s2.d64

Detta är det enda sättet för SD2IEC att veta vilka diskar du vill bläddra mellan. En sådan textfil behöver du ha i varje mapp där mer än en disk behövs för att ladda in spelet; annars kommer inte diskbytena att fungera. Att ha alla diskfiler i en röra i rootkatalogen är alltså inte smart.

Ett potentiell problem för den ohändige är att SD2IEC i grundutförandet inte levereras med diskbytarknapp, så om du behöver en och vill slippa löda själv bör du se till att en sådan finns färdigbyggd. I min version fanns ingen sådan knapp, men genom att släppa ström mellan pinne 1 och 2 (i raden av tio pinnar på kanten av kortet) via en vanlig strömbrytare signalerar jag ett sådant diskbyte.

Typisk diskbytarskärm, när du bytt diskimage är det bara att klicka på knappen och köra vidare.

Typisk diskbytarskärm, när du bytt diskimage är det bara att klicka på knappen och köra vidare.

Förresten, när du ändå håller på och släpper ström mellan pinnar kan det vara bra att veta att du genom att applicera en strömbrytare mellan pinne 1 och 3 i user-porten resetar datorn och tömmer minnet. Det är bättre än att stänga av med huvudströmbrytaren, eftersom det sliter mer på moderkortet än en simpel reset. Efter C64 har i stort sett alla datorer en inbyggd resetfunktion, men här snackar vi ju om 1982.

Så när en diskbytarskärmen dyker upp trycker du på knappen och led-lamporna på SD2IEC blinkar till lite. Du får aldrig reda på vilken disk som just nu ligger inne, såvida du inte har en lyxvariant med led-skärm som skriver ut det. Men i de flesta fall består ett C64-spel inte av mer än två disketter ändå. Sedan är det bara att klicka på joystickknappen och om rätt disk är inne fortsätter spelet att ladda.

Har du förstått allt om diskemulatorer till Commodores datorer? Fråga gärna, så ska vi försöka svara så gott vi kan.

Ha det så kul!