MAME
MAME on kotitietokoneille tarkoitettu emulaattoriohjelma. Sen tarkoituksena on emuloida mahdollisimman tarkasti niin monta kolikkopeliä kuin mahdollista, säilyttääkseen vanhat pelit elossa ja pelattavina. Sana MAME on lyhenne sanoista Multiple Arcade Machine Emulator eli suunnilleen "kolikkopelimoniemulaattori".
MAME:sta on olemassa versio useille eri käyttöjärjestelmille kuten Windows, Mac OS X ja Unix-variantit mukaan lukien Linux.
MAME:n virallisen kotisivun mukaan sen ensimmäisen version (0.1) julkaisi helmikuussa 1997 Nicola Salmoria. Uusin versio tukee tuhansia pelejä ja tuki kasvaa versio versiolta. Kaikki pelit eivät kuitenkaan toimi pelattavasti.
MAME koostuu useasta eri komponenteista: suoritinemulaattorista, joka jäljittelee usean eri pelilaitteen suoritinta; syöte-emulaattorista, joka kuvaa pelikoneiden ohjauslaitteet PC:n ohjauslaitteille, kuten näppäimistölle; ja emulaattorista, joka emuloi pelikoneiden ääniä ja näyttölaitteita. Ainoa asia, jota MAME ei tarjoa on pelin ROM-tiedosto eli peli itse.
MAME-projekti sanoo päätarkoituksekseen dokumentoida pelilaitteita ja MAME ottaakin hyvin puhdasoppisen lähtökohdan emuloimiseen pidättäytyen käyttämästä keinoja, joilla pelien emuloimisesta tulisi nopeampaa, mutta joiden vuoksi tarkkuus kärsisi, kuten monet muut emulaattorit, esimerkiksi UltraHLE, tekevät. Esimerkiksi 3D-pelejä emuloidessaan MAME ei hyödynnä nykyaikaisten näytönohjainten ja rajapintojen tehokkaita 3D-ominaisuuksia, sillä niiden tuottaman grafiikan ulkoasua ei voi täysin määritellä.
MAME:ssa jokainen emuloitava komponentti emuloidaan matalimmalle mahdolliselle tasolle aina yksittäisiin rekistereihin ja konekielikäskyihin asti. Tämän seurauksena MAME:n tuottama emulaatio on erittäin tarkka (yleensä pikselintarkka), mutta laitevaatimukset emulaattorin ajamiseksi saattavat nousta korkeiksi. Koska MAME:n tarkoitus on emuloida pääasiassa vanhoja pelejä, suurin osa peleistä kuitenkin toimii keskitasoisella PC-tietokoneella.
Modernimmat kolikkopelikoneet käyttävät nopeita RISC-prosessoreita, matematiikkaprosessoreita ja muita laitteita, joita on hankala emuloida nopeasti. Joidenkin uudempien järjestelmien pelit eivät toimi pelattavasti edes nopeimmilla olemassa olevilla PC-tietokoneilla.
Useimmissa kolikkopelilaitteessa pelin data (joka koostuu itse pelin ajettavasta koodista, grafiikasta ja äänistä) varastoidaan ROM-siruille. Joskus käytetään myös muita medioita, kuten kasetteja, levykkeitä ja kiintolevyjä. Näiden laitteiden sisältö voidaan kopioida ulkopuoliseen muistiin tiedostoksi ”dumppaukseksi” kutsutussa prosessissa. Syntynyttä tiedostoa kutsutaan ROM-tiedostoksi, koska se sisältää kopion alkuperäisen ROM-sirun sisällöstä. Jotta peliä voisi pelata MAME:n avulla, MAME tarvitsee alkuperäisen pelin kaikkien muistisirujen sisällöt ROM-tiedostojen muodossa. MAME ei sisällä valmiiksi näitä tiedostoja tekijänoikeudellisista syistä.
ROM-tiedostot on mahdollista hankkia laillisesti seuraavilla tavoilla.Koska yllä kuvatuilla tavoilla ei ole mahdollista hankkia kuin osa ROM-tiedostoista, ja koska monet ihmiset eivät välitä tekijänoikeuslaista, leviävät ROM-tiedostot Internetissä lukuisten eri kanavien välityksellä laittomasti ilman tekijänoikeudenhaltijan lupaa. Näitä kanavia ovat ainakin www-sivut, uutisryhmät ja vertaisverkko-ohjelmat. Lähes kaikkien vanhojen kolikkopelien ROM-piirien sisällöt on dumpattu ja ladattu Internetiin. MAME-projektin ollessa nuori, asianharrastajat etsivät dumppaamista varten vanhoja kolikkopelejä muun muassa varastohalleista.
MAME:n omistaminen tai levittäminen ei sinänsä ole laitonta, koska se on vain emulaattori. Jotkin yhtiöt kuten Sony ovat yrittäneet estää emulaattoreiden levityksen, mutta ovat tässä epäonnistuneet. Tähän mennessä MAME:n kehitystyöryhmää vastaan ei ole nostettu vielä yhtään oikeusjuttua.
Vaikka emulaattorit eivät olekaan laittomia, useimmat niiden ROM-tiedostoista ovat tekijänoikeuslain alaisia. MAME:n lisenssiehdot kieltävätkin näiden tiedostojen levittämisen sen mukana.
MAME käytti omaa copyleft-tyyppistä lisenssiä vuoteen 2016 saakka, jolloin lisenssi korvattiin BSD ja GPL -tyyppisellä lisenssillä.