Artikel top billede

(Foto: Computerworld)

Guide: Emuler Atari ST på din Raspberry Pi

Du kan sandsynligvis huske slutningen af 1980’erne, da 8 bit-computerrevolutionen gradvis førte til fremkomsten af 16 bit-maskiner. Atari og Commodore stod i spidsen af denne revolution, og den endelige sejrherre blev Amiga. Men i en periode i slutningen af 1980’erne og begyndelsen af 1990’erne fulgte Atari godt med. Og takket være det glimrende Hatari kan man nu genoplive ST (og dens efterfølgere) på en Raspberry Pi.

Af Torben Okholm, Alt om Data

Denne artikel er oprindeligt bragt på Alt om Data. Computerworld overtog i november 2022 Alt om Data. Du kan læse mere om overtagelsen her.

1 De første trin

Du skal bruge et desktopmiljø for at køre Hatari, og vi bruger Raspbian PIXEL. Den seneste version af Hatari bruger SDL2 til at rendere grafik, og du skal derfor aktivere OpenGL-driveren, idet du erindrer, at den stadig er på eksperimentstadiet og kan være en anelse ustabil. Det betyder også, at Hatari kræver en Pi 2 [Billede A] eller bedre for at køre optimalt.

>> Du aktiverer driveren ved at åbne et Terminal-vindue, skrive sudo raspi-config og trykke Enter. Vælg “Advanced Options > GL Driver > GL (Full KMS) OpenGL Desktop Drive with Full KMS.” Genstart, når du bliver bedt om det.

Billede A

>> Nu er installationen enkel: Åbn “Pi > Preferences > Add/Remove Software”, og skriv “hatari” i søgefeltet. Du får ét hit. Vælg det, og klik “OK”. Når installationen er færdig, åbner du menuen “Pi > Games”, og her er der to muligheder: “Hatari” og “Hatari UI.” Vælg den første. Du får en meddelelse om, at der ikke kan blive indlæst en TOS-fil.

>> TOS er Ataris operativsystem, og det findes i forskellige versioner – valget afhænger af den 16 bit-Atari-maskine, du vil emulere. Heldigvis har andre gjort det hårde arbejde med at skaffe en version af TOS.

>> Før vi går videre, skal vi lige nævne en juridisk detalje: Når man kører emulatorsoftware, sker det i de fleste tilfælde ud fra den antagelse, at man ejer den originale computer og den software, man afspiller på den. Set fra et juridisk standpunkt bør man virkelig respektere det, men i praksis er der ikke andet end din samvittighed, der forhindrer dig i at køre, hvad du har lyst til.

2 Installer TOS

Lad os begynde med at anskaffe TOS til Hatari. Åbn din webbrowser, og gå til www.atariworld.org/tos-rom, hvor du kan finde hver eneste udgave af TOS – fra den oprindelige version 1.0 og op til TOS 4.92 til Atari Falcon. Hvilken skal du bruge? Det afhænger af det, du vil emulere. Den oprindelige STFM-model, der dækker de fleste behov, kører bedst på TOS 1.4, men du vil måske downloade TOS 1.02 til visse ældre spil. De, der emulerer STE – som leverede bedre grafik [Billede B] – vil have TOS 1.62, mens TOS 2.06 (begge STFM og STE) er et godt valg, når man skal kopiere masser af filer via ST’s GEM-desktop.

Billede B

>> En lille bemærkning: TOS 2.06’s rom-fil har tilknyttet de forkerte rettigheder – man skal højreklikke på IMG-fil efter at have pakket den ud og vælge “Properties > Permissions”. Sørg for, at “View Content” er sat til “Anyone”, og at “Change Content” er sat til “Only Owner,” før du klikker “OK” og kopierer filerne over.

>> Hvis du er indstillet på at følge loven, og du ikke har en Atari liggende og samle støv på loftet, kan du prøve EmuTOS i stedet (http://emutos.sourceforge.net/en). Det er en gratis version af TOS, der kan køre på fysiske computere via diskette, men du skal være forberedt på, at det er knald eller fald, når det gælder de spil og den software, du er i stand til at afvikle.

>> Når du skal downloade din version af TOS, vælger du linket “English US”. Der bliver gemt en zip-fil i din Overførsler-mappe, og den skal du bruge om lidt. Nu har du alle de elementer, som du skal bruge til at begynde at konfigurere selve Hatari. Sidst i artiklen finder du en firtrins-gennemgang med de skridt, du skal foretage.

3 Download diskette-imagefiler

Som landet ligger, er din Hatari-opsætning nu en fuldt fungerende Atari-maskine. Det eneste, der mangler, er software. De fleste spil blev leveret på disketter, og også her er det omstændelige arbejde med at konvertere ST-disketter til imagefiler, som din Pi kan bruge, blevet gjort af andre. Alt, hvad du skal gøre, er at finde og downloade disse imagefiler, der findes i formaterne MSA, ST og STX.

>> Der findes en lang række af sites, som tilbyder imagefiler. Du kan google “Atari ST ROMs”, hvis du vil se en lang liste. Hvis du kan leve med, at listen er på fransk (Chromium tilbyder at oversætte siderne for dig), kan vi især anbefale www.planetemu.net/roms/atari-st-games-st. Du vil se, at nogle spil er opregnet adskillige gange ud fra den, der har leveret imagefilerne. Prøv en, og download en anden, hvis den første ikke virker.

>> Ligesom med rom’er bliver diskette-imagefiler downloadet i zip-format, og du skal derfor først pakke dem ud. Dernæst bliver du præsenteret for filer i formaterne .ST eller .STX format (de knytter sig til Hatari, og du kan kende dem på et fint diskette-ikon). Dem kan du lagre hvor som helst på din harddisk, men vi anbefaler, at du opretter en særlig mappe – for eksempel “atarist” – i din hjemmemappe, så bliver de nemmere at finde.

Kompatibilitets-problemer

Hvis du er heldig, kan du spille nogle spil, før du kommer ud for et, der ikke virker. Begynd med at besøge http://bit.ly/hatari-compat, hvor du kan se en liste over ST-programmer, der er kendt for at give problemer. Hvis det ikke hjælper, kan du tjekke det site, hvorfra du downloadede disken, for at se, om der nogen specifik konfiguration, du bør bruge. Hvis du kører et ældre spil, kan du prøve at bruge ST-tilstand med TOS 1.02 med henblik på kompatibilitet. Undgå at allokere mere end 2 MB ram til din virtuelle ST, fordi timingen kan give problemer –1 MB er nok til de fleste spil.

Nogle spil og demoer er meget kræsne, når det gælder disketteemulation. Tryk på F12, klik “Floppy Disks”, og fravælg “Fast Floppy Access” for at se, om de nu vil lade sig indlæse rigtigt. Andre justeringer omfatter fravalg af “Boot Faster” og “Patch Timer-D” under “System.” Hvis den er gal med skærmen, kan du prøve forskellige indstillinger for “Video Timing”.

Det kan være bøvlet at skifte indstillinger, men Hatari gør det muligt at gemme flere konfigurationsfiler ved at ændre navnet på .cfg-filen. På den måde kan du have flere opsætninger (for eksempel STFM, STE og Falcon) og skifte mellem dem. Hatari indlæser som standard filen hatari.cfg ved art, men du kan hurtigt skifte ved at trykke F12 efterfulgt af “Load Config.”

4 Spil ST-spil

Der er to muligheder, når man skal indlæse disketter i Hatari. Den enkleste løsning er simpelthen at gå til den mappe, der rummer dine imagefiler, og dobbeltklikke på .ST- eller .STX-filen. Hatari starter med den konfiguration, du har gemt under hatari.cfg. Efter en pause, der kan være temmelig lang, kommer den kendte grønne ST-desktop frem, eller også bliver spillet automatisk indlæst. Dobbeltklik om nødvendigt på ikonet for A-drevet efterfulgt af spilfilen for at komme i gang.

>> Hvis du har tænkt dig at spille et spil, der ligger på to disketter, er det nemmere at begynde fra selve Hatari: Tryk F12 for at fremkalde konfigurationsskærmbilledet [Billede C], og klik “Floppy Disks”. Klik “Browse” ved siden af “Drive A” for at indlæse den første diskette på A-drevet, og gentag proceduren med “Drive B” for den næste diskette. Lad “Auto Insert B” være tilvalgt, og klik så “Return to Main Menu” efterfulgt af “OK.”

Billede C

>> Hold øje med statusbjælken nederst på skærmen. Den viser, at disketten stadig er ved at blive indlæst. Det kan være en langsom proces, men man kan skrue op for hastigheden ved at vælge “Fast Floppy Access” under “Floppy disks” i Hataris konfiguration. En anden metode består i at gå til Fast Forward-tilstand – tryk AltGr-X, så går det lidt hurtigere. Tryk igen for at vende tilbage til normal hastighed. Når processen er færdig, kommer spillets hovedskærmbillede frem, og nu er det et spørgsmål om at navigere rundt med mus, tastatur eller spilcontroller.

>> Sidstnævnte arrangerer du ved at trykke F12 og klikke på “Joysticks”. Herfra kan du vælge, om du vil frakoble porten, bruge et “rigtigt” joystick eller definere de taster, der skal bruges til at simulere joysticket, nemlig op, ned, venstre, højre og skyd
[Billede D]. Man kan konfigurere op til fire porte – to almindelige ST-joysticks plus yderligere STE-joypads.

>> Når det gælder om at bruge et rigtigt joystick, bør enhver spilcontroller, der er tilsluttet og genkendt af din Raspberry Pi, være umiddelbart synlig. For eksempel blev vores kabelforbundne PC/PS3 Gioteck-controller øjeblikkelig genkendt. Som du har bemærket under definering af taster til at simulere et joystick, var ST-joysticks enkle og understøttede kun fire bevægelsesretninger og en skydeknap – brug den analoge stick og den øverste skydeknap til at emulere joysticket, mens den sekundære skydeknap emulerer mellemrumstasten.

Billede D

5 Opret dine egne blanke disketter

Hvis du prøver software, der i sin tid blev leveret på magasinernes forside-cd’er, er det sandsynligt, at denne software blev komprimeret med henblik på at få mere plads på disken. Du skal derfor pakke den ud på en separat “disk” – vi kommer til harddiske om et øjeblik, men hvis du simpelthen vil køre software fra dens eget virtuelle diskette-image, klikker du på “Create Blank Image” på “Floppy Disks”-konfigurationsskærmen. Brug standardindstillingerne – 80 tracks, ni sektorer og to sider – giv din diskette et navn, og klik på “Create.”

>> Nu skal du vælge, hvor du vil gemme disketten – din standardmappe er bedst – og igen opkalde den efter det spil, du vil kopiere over på den. Klik “OK” efterfulgt af “Back” og “Drive B:” for at sætte den ind i B-drevet. Nu kan du enten kopiere den komprimerede fil over, før du dobbeltklikker på den for at pakke spillet ud, eller du kan bruge forsidediskens eget program til at udpakke filerne på den nye disk. Men husk: Det går langsomt.

6 Der er andet i verden end spil

Nu har du en fuldt fungerende Atari-maskine, der kører ved en fornuftig hastighed. Hvis du kun er interesseret i at genopleve fortidens gyldne stunder, bør du nu have alt det, der skal til for at spille spil på din Atari. Men du kan gå endnu videre ...

>> Først skal du betragte ST som andet end blot en spille-maskine. Den var også kendt som et musikværktøj, og i takt med at markedet for spil aftog, blev der stadig udviklet større applikationer – fra videoredigering og til tekstbehandling til desktoppublishing. Besøg www.planetemu.net/machine/atari-st, hvor du kan finde et større udvalg af titler, herunder demoer, forsidediske og public domain-programmer.

>> Antallet af titler er stort, og du bliver måske træt af at skulle trykke F12 for at skifte mellem disketter. Brug AltGr-D til at skifte diske, efterfulgt af AltGr-R for at foretage en varm reset eller AltGr-C for at få en kold reset. Eller hvorfor ikke koble en virtuel harddisk til sin ST? Tekstboksen forneden viser den enkleste metode til at tilføje en enkelt ACSI-harddisk på 80 MB. Du kan duplikere dette blanke image og oprette flere harddiske, men du kan kun tilkoble en ad gangen.

>> En anden mulighed er GEMDOS, der gør det muligt at åbne en mappe på lageret på din Raspberry Pi som et virtuelt drev. Det gør det nemmere at kopiere filer direkte til drevet fra dit Pi-lager. Bemærk dog, at du enten skal bruge en dedikeret harddisk-driver, eller også skal du få adgang til drevet ved hjælp af EmuTOS, der er født til at understøtte GEMDOS.

>> Hvis du går i gang med et gammelt spil eller to, vil du sandsynligvis gerne vide, hvordan du gemmer dine bedrifter. Hvis selve spillet har en gemmefunktion, kan du altid oprette et blankt disketteimage, som vi har skitseret det tidligere, og sætte det ind i B-drevet. En anden mulighed er at bruge Hataris egne hukommelsessnapshots-funktioner, og de er naturligvis hurtigere.

>> Begynd med at trykke F12 og vælge “Memory.” Klik på “Save”, angiv et passende filnavn (med det altafgørende efternavn .sav), og klik på “OK.” Vend tilbage til spillet, hvor du til enhver tid kan trykke på AltGr-K for at opdatere den gemte fil med dine seneste fremskridt, eller AltGr-l for at genindlæse det seneste gemte niveau.

>> Her kan du også tage screenshots – tryk på AltGr-G for at tage et skærmbillede i png-format. Tryk på AltGr-A for at optage en AVI-film (“Rec”-knappen på Hataris statusbjælke bliver rød), og tryk igen for at stoppe optagelsen. Til sidst kan du trykke på AltGr-Y for at begynde og slutte optagelsen af din ST’s lyd. Alt det optagede materiale ligger nu i din hjemmemappe.

Billede E

>> Din Atari-maskine emulerer en RGB-farvemonitor, der kan skifte mellem lave og medium opløsninger. Hvis du vil køre programmer med høj opløsning såsom dtp-software, trykker du F12, klikker “Atari Screen” og vælger Mono” [Billede E].

konfigurer din virtuelle Atari ST

1. Kopier TOS-filer

Åbn File Manager. Dobbeltklik på den downloadede TOS-zip-fil for at åbne den i Archive Manager, og træk så .img-filen ind i din Overførsler-mappe. Når det er gjort, trykker du på F4 for at åbne et Terminal-vindue, der peger mod Overførsler-mappen. Skriv det følgende (erstat tos102uk.img med imagefilen): $ sudo cp tos102uk.img /usr/share/hatari

2. Indstil systemtype

Åbn nu Pi-menuen, og vælg “Games > Hatari”. Klik på “OK” ved skærmbilledet “Could not load TOS file”. Når hovedvinduet kommer frem, klikker du på “System.” Hatari er som standard konfigureret til at emulere STFM, men du kan vælge en anden Atari-maskine fra listen. Vælg “Boot faster by patching TOS & sysvars”. Uanset hvilken maskine du vælger, går indlæsningen lidt hurtigere.

3. Vælg ROM og RAM

Gå tilbage til hovedmenuen, og klik på “ROM.” Klik på “Browse” for at vælge det TOS-image, du kopierede i det første trin – sørg for, at det passer til den Atari-maskine, du emulerer. Klik på “Back to main menu” igen efterfulgt af “RAM.” Der bliver som standard allokeret 1 MB, og det er tilstrækkeligt til gaming. Gå ned til 512 K for nogle ældre spil, hvis de nægter at blive indlæst.

4. Vælg diskette, og gem konfigurationen

Klik nu på “Floppy Disks” efterfulgt af “Browse” ved siden af “Default Floppy Images Directory”. Her vælger du den mappe, du har lagret dine diskimages i. Vælg “Fast Floppy Access” for at få hurtigere indlæsning, men læg mærke til, at nogle diske ikke virker (i så fald hjælper det måske at fravælge denne funktion). Klik på “Back to main menu” efterfulgt af “Save config” for at gemme din opsætning.

7 MIDI for musikere

ST var elsket af musikere på grund af de indbyggede midi-porte, og det blev brugt af for eksempel Queen til The Miracle. Hvis du har et USB-til-midi-kabel, kan du tilslutte et midi-keyboard og for eksempel bruge Cubase [Billede F].

>> Først skal du sikre, at dit kabel er blevet genkendt af Raspbian. Åbn et Terminal-vindue, og skriv:
$ lsusb

Billede F

>> Din midi-adapter bør være på listen. Skriv det følgende, der bekræfter, at der er mindst en midi-port til rådighed.
$ aplaymidi -l

>> Nu åbner du Hatari, trykker på F12 og klikker på “Devices.” Klik på de to “Browse”-knappper under “Enable MIDI Emulation”, og peg dem i retning af den midi-tekst, der kommer frem under /dev/snd. Marker “Enable MIDI Emulation”, og genstart dit virtuelle ST.

>> Hvis du ikke har en midi-enhed, kan du prøve en software-midi-synthesizer. Installer først Virtual MIDI Piano Keyboard ( “Pi > Preferences > Add/Remove Programs” efter “vmpk”). Så starter du QSynth fra “Pi > Sound & Video” efterfulgt af VMPK. I VMPK vælger du “Edit > Connections”, klikker på forbindelsen “Output MIDI” og vælger “FLUID Synth” for at forbinde de to. Tryk på de virtuelle taster, og nu bør du kunne høre lyd, der bekræfter, at sagerne fungerer.

Åbn Terminal, og skriv:
$ sudo modprobe snd-virmidi
$ aconnect -i -o
>> Noter klienttallene, og skriv så følgende:
$ aconnect <sender> <receiver>
>> Erstat <sender> med klienttallet for VMPK Output og <receiver> med klienttallet for den første Virtual Raw MIDI-port.
Gentag nu kommandoen, men denne gang skal du erstatte <sender> med Virtual Raw MIDI-porten og <receiver> med Synth Input-porten. Det kan for eksempel se sådan ud:
$ aconnect 128 28
$ aconnect 28 130

>> Åbn nu Hatari, tryk på F12, klik på “Devices”, og peg det så mod den korrekte forbindelse. Marker “Enable MIDI Emulation”, og nu kan du bruge din virtuelle synthesizer til at overføre musik til sekvenseringssoftware som Cubase, mens du lytter til resultatet gennem QSynth. Og så er vi færdige.