Desktop arcade – Osa 3: RetroPie

Desktop arcade – Osa 3: RetroPie

RetroPie on alun perin Raspberry Pi -korttikoneille tehty ohjelmisto retropelien pelaamiseen. Raspberry Pi:lle asennus on helpointa tehdä käyttämällä valmista levykuvaa. Vaihtoehtoisesti sen voi asentaa myös olemassa olevan Debian tai Ubuntu -pohjaisen Linux järjestelmän päälle.

RetroPie
RetroPie

Alkuperäinen suunnitelma oli käyttää vanhaa Raspberry Pi 3B+:aa tähän projektiin ja päivittää se mahdollisesti myöhemmin tehokkaampaan malliin. Suunnitelma kuitenkin muuttui kun huomasin myynti-ilmoituksen käytetystä Intel NUC -minitietokoneesta, joka olisi hinnaltaan samaa luokkaa kuin Raspberry Pi 4, mutta moninkertaisesti tehokkaampi.

Koneeseen asennettiin ensin Ubuntu Server ja sen päälle RetroPie erillisen asennus-skriptin avulla. Skripti huolehtii tarvittavien pakettien lataamisesta, kääntämisestä ja asentamisesta. Tähän operaatioon kannattaa varata laitteen tehosta ja nettiyhteyden nopeudesta riippuen aikaa. Asennuksen jälkeen EmulationStation -käyttöliittymä aukeaa ja pyytää heti ensimmäisen peliohjaimen määrittelyä.

RetroPien levykuvaa ei päivitetä kovinkaan usein. Asennushetkellä uusin versio 4.7.1 on yli vuoden vanha. Asennuksen jälkeen RetroPie kannattaakin päivittää asennuskriptin avulla. Asennuskriptin voi käynnistää komentoriviltä tai EmulationStationin valikoiden kautta.

ROM:ien asentaminen

Pelit eli ROM:t tallennetaan kunkin pelialustan mukaiseen alihakemistoon. Esimerkiksi NES-pelit tallennetaan ~/RetroPie/roms/nes -hakemistoon. Uudelleenkäynnistyksen jälkeen pelit näkyvät listana käyttöliittymässä.

Pelilistaan on mahdollista saada lisäinformaatiota kuten kuvaus pelistä, julkaisuvuosi, julkaisija, arvostelu sekä kansi-, pelikuva tai videoleike. Tätä varten ROM-hakemistosta on löydyttävä oikealla tavalla rakennettu gamelist.xml -tiedosto ja tarvittavat mediatiedostot.

RetroPie Pelilista
RetroPie Pelilista

Scraperin avulla lisätietojen tallennus saadaan automatisoitua. RetroPien käyttöliittymässä on valmiiksi oma scraper, jonka saa käynnistettyä painamalla Start -nappia ja valitsemalla Scraper. Scraper toimii välttävästi ja sitä voi käyttää yleisimpien pelien tietojen hakuun. Se ei kuitenkaan tunnista harvinaisempia pelejä tai tunnistaa tiedot väärin jolloin käyttäjä joutuu korjaamaan löydetyt tiedot. Se ei myöskään kirjoitushetkellä tue videoleikkeiden lataamista.

RetroPie Scraper
RetroPie Scraper

Vaihtoehtoinen Skyscraper on asennettavissa RetroPien optional -pakettien joukosta valikossa: RetroPie Setup > Manage packages > Manage optional packages > skyscraper. Asennuksen jälkeen Skyscraper on käytössä valikossa: RetroPie Setup > Configuration/Tools > skyscraper. Se hakee oletuksena tietonsa screenscraper.fr -tietokannasta. Tietokantaan on rekisteröidyttävä etukäteen ja tunnukset syötettävä Skyscraperin asetuksiin.

Skyscraper
Skyscraper

Kolmannessa kokeilemassani scraperissa, Skraper:ssa on graafinen käyttöliittymä. Se käyttää niinikään screenscraper.fr -tietokantaa.

Skraper
Skraper

Käyttöliittymän muokkaus

RetroPien käyttöliittymän kustomointiin on saatavilla useita erilaisia teemoja. Teemoja saa ladattua valikosta: RetroPie Setup > Configuration/Tools > esthemes. Tämän jälkeen teeman saa vaihdettua valikosta: Start > UI SETTINGS..

RetroPie Themes
RetroPie Themes

Teeman mukaiset pelien latauskuvat tylsien tekstilaatikoiden tilalle saa asentamalla launchingimages -lisäosan valikosta: Manage Packages > Manage experimental packages > launchingimages > Install from binary. Asennuksen jälkeen lisäosa löytyy valikosta: RetroPie-Setup > Configuration/Tools > launchingimages.

Latauskuva
Latauskuva

Jos käytössä on Raspberry Pi, voi pientä siistimistä käyttökokemukseen tehdä myös piilottamalla käynnistyksen yhteydessä liukuvärikuvan lisäämällä /boot/config.txt -tiedon loppuun rivin:

disable_splash=1

Vadelmalogon ja kursorin saa piiloon taas lisäämällä /boot/cmdline.txt -tiedostoon rivin:

logo.nologo vt.global_cursor_default=0

Kuvan skaalaus

Laitteessa on FullHD -näyttö eli sen tarkkuus on 1920×1080 ja kuvasuhde 16:9. Vanhat pelit sen sijaan on tehty huomattavasti matalemmalle tarkkuudelle. Esimerkiksi NES:n PAL tarkkuus on 256×240 ja kuvasuhde n. 11:8. Pikselit eivät siis ole edes neliöitä. Lopullinen kuvasuhde CRT-televisiossa kuitenkin oli käytännössä aina 4:3, johon lähdemateriaalin pikselit skaalattiin. Lähes jokaisessa konsolissa on eroja käytetyn resoluutin suhteen puhumattakaan DOS -peleistä.

Pelikuva täytyy siis skaalata isommaksi ja jonkinlaisia kompromisseja on tehtävä. Parhaan kuvanlaadun saa skaalaamalla alkuperäisen kuvan suurimmalla mahdollisella kokonaisluvulla (integer scaling, perfect pixel). Esimerkiksi NES:n kuvapikselit kerrotaan neljällä jolloin kuvan tarkkuus on 1024×960. Tämä tarkoittaa FullHD -näytöllä mustia palkkeja kuvan kaikille reunoille. Jos taas halutaan käyttää näytön koko tarkkuutta, skaalataan kuva lineaarisella interpoloinnilla, jolloin kuva pehmenee hieman.

RetroPie antaa pelien skaalauksien hallintaan hyvät mahdollisuudet järjestelmä- tai pelikohtaisesti. Skaalauksen lisäksi kuvaan on mahdollista lisätä erilaisia shadereitä autentisuuden lisäämiseksi. Esimerkiksi Scanlines ja CRT -shaderit saavat kuvan näyttämään samalta kuin vanhalla kuvaputkitelevisiolla.

Shader
Shader

Tylsät mustat letterbox-reunat voi halutessaan korvata laite- tai pelikohtaisella kehyksellä: The Bezel Project on tätä varten tehty työkalu, joka lataa kehyskuvat automaattisesti. Bezel Projectia käytettäessä täytyy huomioida että pelien ROM-tiedostot on nimettävä No-Intro -käytännön mukaisesti ja että toistaiseksi kehyksiä on tarjolla isolta osalta vain USA-alueen mukaan nimettyihin peleihin.

Bezelproject
Bezelproject

DosBox

DosBox on emulaattori DOS-ohjelmille. Virallisen version kehitys on kuitenkin ollut verrattain hidasta; olemassaolevia bugeja ei ole korjattu eikä uusia ominaisuuksia ole tullut. Onneksi DosBox:lle on lukuisia rinnakkaisprojekteja, joiden kehitys on nopeampaa. Tällainen on esimerkiksi pelaamiseen optimoitu DosBox Staging. Sen saa asennettua RetroPie-Setup skriptin experimental -pakettien joukosta (Manage Packages > Manage experimental packages > DosBox Staging). DosBox Staging mahdollistaa mm. Perfect Pixel -skaalauksen.

DosBox -pelit ovat tyypillisesti omissa hakemistoissaan. Jotta vältytään komentorivin käyttämiseltä, täytyy jokaiselle pelille tehdä oma käynnistytiedosto (.conf) ja tallentaa ne roms/pc-hakemistoon. Varsinaiset pelit voi tallentaa .games -alihakemistoon, jolloin pelihakemistoja ei näytetä käyttöliittymässä. Käynnistystiedoston lopussa on osio pelin käynnistyskomennoille:

[autoexec]
# Lines in this section will be run at startup.
# You can put your MOUNT lines here.
MOUNT c /home/pi/RetroPie/roms/pc/.games
C:
cd GAME
GAME.EXE
EXIT

Parempaa ääntä DosBoxin peleihin saa käyttämällä Gravis Ultrasound, FluidSynth (GM) tai MT32 -emulointia, mikäli peli näitä tukee. Näiden käyttö saattaa vaatia alkuperäisiä ajuritiedostoja sekä midisoitinkirjastoja, joita ei tule DosBoxin mukana. Kun jokaisella pelillä on oma .conf -tiedosto, voidaan jokaiselle pelille tehdä omat asetukset myös äänien suhteen. Mieleisten ääniasetusten löydyttyä kannattaa asetukset optimoida poistamalla käytöstä ylimääräiset emuloinnit kuten SoundBlaster kun GUS on käytössä tai toisinpäin.

[sblaster]
sbtype  = none
oplmode = none
[gus]
gus = true

Muita hyödyllisiä vinkkejä:

C64 Dreams

Vastikään 40 vuotta täyttäneen Commodore 64:n fanien kannattaa tutustua C64 Dreams -projektiin. Se sisältää valtavan määrän valikoituja pelejä ja C64 -ohjeismateriaalia kuten lehtiä ja demoja. Paketti on valmis Windowsissa toimivaa Launchbox:a myöten, mutta halutessaan pelit saa myös RetroPien käyttöön.

Lopputulos:

Projektin edelliset vaiheet:

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *