Posts filed under 'retro'
Vääjäämättä koitti se päivä, kun Spectrumillekin piti jotain yritellä. Vammala Party’14:ään kyhättiin siis pieni intro, jossa on biisi, kuva ja kahdeksan “aitoa” 16×16 spriteä. Yzi teki biisin ja Terppa suurimman osan koodista sekä grafiikat; itse touhusin mukana lähinnä spriterutiinia ideoimassa, Arkos-soittorutiinia Spectrumille sovittamassa sekä kehitysympäristöä kasaamassa. Lopputulos toimii klassisella 48k-kumpparillakin, joskin ääniä varten tarvitaan AY- eli PSG-moduuli kuten Wonder AY.
Spritejen piirtely ei ole mitenkään erityisen hauskaa Spectrumilla, sillä rauta ei niitä mitenkään tue, grafiikkamuistin järjestys on mutkikas, värirajoitukset iskevät nilkkaan, eikä 48k:ssa ole edes grafiikkasivuja. Piirto- ja pyyhintäjärjestyksen on oltava niin ollen tarkkaan harkittu ja ajastettu, etteivät pallot repeile ja välky. Tero on käsitellyt aiheeseen liittyvää problematiikkaa syvällisemmin blogissaan. Aitoihin spriteihin tarvitaan tietysti reikiä varten läpinäkyvyys, mikä tarkoittaa, että uuden tulokkaan alla olevalle grafiikalle tehdään ensin maskin kanssa AND ja sitten varsinaiset pikselit lisätään päälle OR-operaatiolla. Jos jotain hyvää hakee, niin Speku on aika nopea grafiikkamuistinsa käsittelyssä, ja muisti sijaitsee ainakin normaalissa osoiteavaruudessa, toisin kuin vaikka MSX:llä.
Musiikkipuoli hoitui helposti jo tutuin konstein eli Arkos Trackerilla ja sen omiin tarkoituksiin muokatulla toistorutiinilla. Virittelyä vaati oikeastaan vain porttiosoite ja porttikomentojen muuttaminen kaksiosaisiksi. MSX:ltä tuttu
out (0xa0),a
piti muuttaa muotoon
ld bc,#65533
out (c),a
Speku on sikäli harvinainen laite, että se käyttää Z80:n täyttä 16-bittistä porttiavaruutta päinvastoin kuin muut tunnetut laitteet. Käsky on siis salaa itse asiassa out (bc),a.
Z80-konekieli oli vanhastaan tuttu, ja kun SDCC:n kanssa oli tullut säädettyä jo aiemmin sekä MSX:llä että Sharpilla, ei työkalujen kasaan saamisessa mennyt kohtuuttoman kauan. Valmiita MSXlibin rutiinejakin sai käytettyä jossain määrin sinältään. Fuse on kelpo multiplattis-emulaattori, joka osaa ajaa tap-tiedostoja suoraan komentoriviltä – eli käytännössä Makefilestä. Eniten kompurointia aiheutti lopulta käännetyn binäärin muuntaminen tap-muotoon, sillä pikaisella hakemisella löytyi vain toimimattomia tai vääränlaisia vaihtoehtoja. Lopulta löytyi onneksi bin2tap, minkä myötä viimeinenkin puuttuva palanen loksahti kohdalleen.
Hauska sivupolku tämä ainakin oli ja saattaa olla, että Spekun äärelle tulee palattua joskus tulevaisuudessakin. 48k on demokoneena tarpeettoman rajoittunut, joten 128k olisi sikäli houkuttelevampi kohde, mutta vaatisi samalla jonkin verran lisää opettelua muistin pankituksen osalta.

July 18th, 2014
Haalin hiljattain Huutonetistä edullisen Sharp MZ-821:n, joka asettuu kauniisti jatkumoon ensimmäisen tietokoneeni, MZ-721:n kanssa. Kasisatanen oli laitteena huomattavasti edistyneempi niin äänien kuin grafiikankin osalta, minkä lisäksi ainakin Suomessa sen sisäänrakennettuna massamuistina oli yleensä kasettia paljon rivakampi Quick Disk. Nämä Mitsumin esittelemät 2,8″ korput olivat 80-luvun formaattisodan suuri häviäjä, enkä ollut tähän mennessä moista tainnut luonnossa edes nähdä. Harvinaisuus iskee näin keräilijää nilkkaan, kun yksittäisestä korpusta saatetaan pyytää eBayllä jopa kymmentä euroa; itselleni tärppäsi kymmenen paketti viidellä kympillä.
Sharpin lisäksi samoja neliskanttisia Quick Diskejä käytettiin ainakin Rolandin ja Akain sämplereissä – omat korppuni ovatkin juuri Rolandin tekemiä (tai ainakin brändäämiä), tyyppiä QD-10. Kenties tunnetuin käyttökohde oli Japanissa kohtuullisen suosittu Famicom Disk System, joka mahdollisti Nintendon pelien lataamisen korpuille latauspisteissä. Ninkkarin versiossa on sisällä sama levy, mutta kuori on jonkin verran pidempi kaupallisista syistä, minkä lisäksi osassa korpuista oli kirjoitusaukon päällä suoja. Säätäjät kehittivät normaaleille – luultavasti halvemmille – jatkopaloja, jolla niitä pystyi käyttämään Nintendossa, kunhan vaan veisteli kyljistä levennyksen pois (ks. kuva). Modauksen luulisi onnistuvan yhtä lailla toiseenkin suuntaan perää lyhentämällä.
Rautaoksidi on rautaoksidia, mutta pelkän muodon lisäksi erona tavanomaisiin korppuihin on tallennustapa. QD ei nimittäin ole samalla tavoin jaettu uriin ja sektoreihin kuten tutummat levykkeet, vaan sitä käsitellään ikään kuin spiraalina, jolle kirjoitetaan tiedostot peräkkäin. Hajasaanti on siis hankalaa, eikä esim. Sharp tee levylle mitään varsinaista “tiedostojärjestelmää” hakemistoineen ja varaustauluineen. Toteutus on varmaan ollut yksinkertainen, mutta lopputuloksesta tulee samalla käyttäjän näkökulmasta kasettimaisen kömpelö.

Ylärivissä Ninkkarin versio ja Rolandin nimissä myyty standardikoko. Alarivissä vertailun vuoksi esim. Amstradeissa ja Spectrum +3:ssa käytetty 3″ korppu ja tavallinen 3,5″ malli. Kolme ensimmäistä ovat symmetrisiä, joten jos (ja kun) levarissa oli vain yksi lukupää, niin molemmat puolet sai käyttöön levyn kääntämällä.
edit: Ainakaan minun käsiini sattunut Ninkkarin korppu ei mennyt Sharpin asemaan millään veistelyllä. Ongelmaksi osoittautui lopulta se, että Famicomin levykkeet ovat paksumpia kuin normaalit, joten asema ei mahtunut kunnolla kiinni.
June 18th, 2014
Saarikosken Petrin kanssa kirjoittamani Great Northern Machine Wars: Rivalry Between User Groups in Finland on hartaan odottamisen jälkeen lopultakin julkaistu IEEE Annals of the History of Computingissa. Artikkeli käsittelee eri laitemerkkien kannattajien välistä sotimista 1980-luvun puolivälistä näihin päiviin. Toistaiseksi en voi tarjota kuin linkin IEEE:n sivuille, mutta eiköhän itse artikkelikin johonkin ilmaannu lähiaikoina.

edit: Täältä löytyy lähes lopullinen luonnos (Jeejee ei tykkää, jos laittaa julkaistun version näytille).
June 16th, 2014
Otimme Silvastin Antin kanssa huolettomasti vastaan vuoden 2014 ensimmäisen WiderScreenin toimitustyöt ja näin jälkiviisaana on helppo todeta, että arvioimme tarvittavan työmäärän reilusti alakanttiin 😉 Hyvin opettavainen ja palkitsevakin projekti tämä oli, mutta kirjoittajakutsun näpyttelyyn, promoamiseen, arvioijien etsimiseen, artikkelien kommentointiin ja muokkaukseen, julkaisujärjestelmän opetteluun, kääntämiseen, ja sekalaiseen jälkihoitoon on uponnut kymmeniä ja taas kymmeniä tunteja. Tuplanumeroksi paisuneeseen julkaisuun tuli lopulta kuusi vertaisarvioitua artikkelia (joista yksi tosin vanhan 4k-pätkäni käännös), kaksi katsausta ja pääkirjoitus.
Tilaisuutta ei voinut jättää käyttämättä, joten kirjoitin itsekin yhden uuden artikkelin. How Those Crackers Became Us Demosceners pureutuu vanhaan tuttuun tarinaan demoskenen synnystä. Tyypillisestihän tiedetään kertoa, kuinka kräkkereistä sukeutui laillisia luovia skenereitä, mutta prosessin yksityiskohdat ja rosot ovat vuosien varrella jo ehtineet hioutua pois. Lähestyin aihetta alkuperäisten C64-skenerien haastattelujen ja aikalaistekstien kautta ja pyrin tuomaan esille unohtuneita käänteitä sekä vastakkaistakin näkökulmaa – oliko “ero” todella niin radikaali ja miksi se tapahtui?
Alla vielä PETSCII-edikallani tekemä teemanumeron kansikuva:

edit: artikkelini herätti jo oikein ajatuksiakin: http://chipflip.wordpress.com/2014/04/15/rewiring-the-history-of-the-demoscene-wider-screen/
April 15th, 2014
Ehdin lopultakin testaamaan jo kauan sitten tilaamaani Oricin Cumulus-kortinlukijaa. Oricin valmistamat laitteet olivat muutenkin vahvasti marginaalissa, ja kalliit levarit vielä marginaalin marginaalissa, joten perusjampan tiedonsiirtomahdollisuudet ovat tähän saakka rajoittuneet lähinnä hitaaseen äänikortilta kasettiportin kautta pöristelyyn. Siispä Cumulus-projekti otettiin ilolla vastaan ja ennakkotilaajia tuli lopulta varmaan sadan nurkille. Tässä ensimmäisiä havaintoja:
- 3D-printattu kuori on hieman karu, mutta toisaalta sopii Atmosin väreihin erittäin hyvin
- Käyttöliittymä on yksinkertainen: mikrokytkimillä valitaan levytiedosto valikosta. Oricin resetointikin onnistuu valikosta (itse mikrossahan ei resettiä ole).
- Cumulus on todella tarkka muistikorteista ja tiedostojärjestelmästä. Pitää olla SDHC ja FAT32, normaali SD-kortti ei käy. Edes kaikki SDHC:t eivät suostu yhteistyöhön.
- Itselläni ja T. Heikkisellä ei ollut – onneksi – muita ongelmia toimivuuden kanssa, mutta foorumilla on ollut ties mitä kompurointia. Kaikkien koneiden kanssa Cumulus ei yksinkertaisesti vain toimi, johtuen ilmeisesti heikoista väyläsignaaleista.
- Vakiopoweri ei jaksa Cumulusta luotettavasti pyörittää, joten konetta on käytettävä esim. hiukan jäykemmällä yleismuuntajalla
- Ohjelmat tuntuvat toimivan hyvin ja lataus on nopeaa, joskaan en paljon ehtinyt vielä kokeilla
Ongelmistaan huolimatta erittäin tervetullut lisä Oricin laitevalikoimaan. Jatkossa tulevat softapäivitykset saattavat kohentaa toimivuutta – firmiksen voi päivittää myöhemmin muistikortilta. Hankin saman tien kaksi, koska nämä saattavat olla tuttuun tapaan maailmasta pian katoavia tuotteita. Sitten kun vielä keksisi jotain tekemistä itse Oricille…
March 23rd, 2014
Osallistuin eilen Miten tallentaa pelialaa? -seminaariin Tekniikan museolla. Pongista Pleikkaan -näyttely on ollut ilmeisen suosittu ja kun pelien arvo on muutenkin hiljalleen alettu tunnustaa, niin myös museot ja muut instituutiot ovat ruvenneet hiljalleen havahtumaan. Harrastajien ja pelitutkijoiden toimesta teeman ympärillä on pyöritty toisaalta jo vuosikaudet. Paikalla oli enimmäkseen museoiden ja arkistojen edustajia, jonkin verran pelialan työntekijöitä sekä muuutama tutkija. Tässä pikaisesti jokunen havainto esiin tulleista aiheista:
- TAKO (http://www.nba.fi/fi/kansallismuseo/tako) on suomalaisten museoiden yhteistyöhanke, jossa eri museoille on jyvitetty erilaisia teemoja. Pelit ovat “Tuotanto, palvelut ja työelämä” -teeman alla ja erityisesti peleihin ovat keskittymässä Espoon kaupunginmuseo, Tampereen Rupriikki sekä Tekniikan museo.
- Tällä hetkellä pelien arkistointi on vasta alkutekijöissään, vaikka kullakin museolla onkin ollut aiheeseen liittyviä näyttelyjä ja kokoelmissa on jo pelejä (sekä digitaalisia että lautapelejä).
- Vastaavia haasteita kohdataan esim. mediataiteen arkistoinnin parissa.
- Pelikonepeijoonit mainittiin useassa esityksessä aktiivisena harrastajaprojektina, jonka kanssa museoilla on ollut yhteistyötä.
- Neogamesin Koopee Hiltusen puheenvuorossa korostuivat säilytyksen moninaiset ongelmat, kuten harvinaisiksi käyvät laitteet.
- Jaakko Kemppainen esitteli omakohtaisia kokemuksiaan pelien taltioinnista. Esiin nousivat mm. omistajuuden, käyttäjien luoman sisällön taltioinnin ja palvelinpään komponenttien haasteet.
- Elokuvia tallennetaan järjestelmällisesti ja lain velvoittamana Kavin toimesta, mutta peleille ei ole vastaavaa tahoa, vaikka ne periaatteessa lain piiriin kuuluvatkin. Kavilla sekä kansalliskirjastolla on jo kokoelmissaan jonkin verran pelejä, mutta mikään yksittäinen taho ei ole varsinaisesti vastuussa pelien systemaattisesta arkistoinnista.
- Suurin osa keskustelusta käsitteli kaupallisia pelejä, mutta myös harrastajaprojektien, tekijänäkökulman ja pelikulttuurin taltiointi mainittiin.
- Professori Jaakko Suominen motivoi pelien tallentamiseen yhtäältä kulttuuriperinnön säilyttämisen ja toisaalta retrovaatioiden näkökulmasta – firmoissa tuotettua sisältöä voidaan mahdollisesti käyttää myöhemmin taloudellisestikin hyväksi.
- Pelikulttuurin moninaisuus tuli ilmi lopun keskustelussa, kun esiin nostettiin mm. pelimodit, julkaisemattomat pelit ja kansalliset erityispiirteet.
- Anna-Kaisa Kultima mainitsi erääksi ratkaisuksi resurssipulaan taltiointi- ja näyttelyprojektien tekemisen kurssien harjoitustöinä.
Pelihistoriasivustomme Videogames.fi sai tapahtumassa mukavasti näkyvyyttä ja kerroin sisällön olevan vapaasti käytettävissä esimerkiksi museoiden omien tietokantojen pohjana. Korostin omissa kommenteissani muutenkin harrastajien tekemän työn hyödyllisyyttä: peli- ja laitekeräilijöillä on valmista teknistä osaamista, omia mittavia kokoelmia ja kontakteja, joita kannattaa hyödyntää sen sijaan, että peliarkistointi aloitettaisiin museoissa tyhjästä. Käytännön esimerkkeinä mainitsin pitkäaikaissäilytykseen sopivat levykkeiden ja kasettien arkistointiformaatit sekä Kasettilamerit.
Noin kaikkiaan päällimmäiseksi tunnelmaksi jäi se, että haasteita on paljon, eikä niihin ole paljonkaan valmiita vastauksia. Museot ym. instituutiot liikkuvat harrastajiin verrattuna hitaasti ja kärsivät kroonisesta rahapulasta sekä peleihin liittyvän tietotaidon puutteesta – toisaalta museoilla olisi paljon kokemusta systemaattisesta ja tulevaisuuteen suuntautuneesta arkistoinnista. Peliyritykset puolestaan ovat kiireisiä eivätkä välttämättä tiedosta taltioinnin arvoa, mistä kertoo osaltaan paikalle saapuneiden pelialan toimijoiden vaatimaton määrä.
January 29th, 2014
Oppe nyt wanha ia noori / joilla ombi SIDhen toori.
6502:n keskyt ia mielen / iotca taidhat conecielen.
Datassette se sielun hirmutta / mutt lewari sen taas lodhutta.
Aseta sijs hyue lapsi teste / rastericesceytys ilman este.
Poceta muistiin elemes aina / nin Skenerit sinun armons laina.
(Agricola, Heikkinen & Reunanen)
January 20th, 2014
Yzin vastaavasta – ja pitkästä – listasta innoittuneena päätin itsekin kerätä vuoden 2013 puuhia yhteen paikkaan, jotta ihan itsellenikin tulee hieman kokonaiskuvaa siitä, mitä tänä kiireisenä vuonna on ehtinyt tapahtua.
Skenekoodaukset
- Ensimmäiselle ulkomaanpartylleni, Revision’13:lle, tehtiin Yzin ja Manun kanssa MSX-demo Amurisus
- Lisää MSX-tuotantoa Vammala Partyille: karaokedemo Abrels
- Ja vuoden viimeisenä MSX-demona Alternative Partyille Amurisusin (Amurisuden?) eräänlainen jatko-osa Atsarias
- Zoo’13:lle pikainen BASIC-viritys nimeltä Beisikki demo
- Ensimmäinen oikea C64-produktio, The First Ball, syntyi Heikkisen ja Yzin kanssa. Myöhemmin porttasimme hänet vielä Plus/4:lle.
- Vuoden suurin menestys oli monipuoliseksi kasvanut PETSCII-editori, joka löysi yleisönsä ilmeisen hyvin. Päätyi jopa Pouetin top 2013 -listalle työkalusarjassa.
PETSCII-Grafiikkaa
Kirjoituksia
Muita sekalaisia touhuja
Olihan sitä siinä jo. Muuten vuosi on mennyt juniorin kasvua seuratessa, länkkäreitä katsellessa ja tutkimuksen parissa. Kiitos Koneen säätiön tutkimusapurahaa on vielä ensi vuodellekin, joten kirjoittaminen jatkuu ahkerasti.
December 30th, 2013
Heikkisen Teron kanssa yhdessä kirjoittamani artikkeli Kungfumestarit kuvaputkella – kamppailuelokuvien ja -pelien suhde 1980-luvulla on juuri ilmestynyt WiderScreen-verkkojulkaisun numerossa 4/2013. Käsittelyyn otetaan karate-, kungfu- ja ninjaelokuvat sekä niiden vaikutus varhaisiin mätkintäpeleihin. Tärkeimpänä teoreettisena viitekehyksenä on remediaatio, mediasta toiseen siirtyminen. Historiaosuudesta tuli hieman pitkä, joten sivumennen artikkeli toimii myös johdantona kamppailupelien ja -elokuvien varhaisvuosiin.
December 13th, 2013
Virittelin jo aiemmin kasaan Joyduino-projektin, jolla sai emuloitua Atari-joystickiä PC:n näppäimistöltä. Projektissa oli kuitenkin kaksi ongelmaa: kolvaamista vaativa tarpeettoman mutkikas piirikortti ja hieman epämääräinen sarjaportin käsittely omalla ohjelmalla. Kuulin vasta myöhemmin, että Arduinon pinnit saa suljettua laittamalla ne input-moodiin, mikä teki kytkinpiirit tarpeettomiksi. Eli kun virtuaalisen joikkarin kytkintä ei paineta, pinni on sisääntulona ja kun painetaan, niin pinni vaihdetaan ulostuloksi ja laitetaan nollaan. Tältä pohjalta riitti tehdä triviaali johto D9-naarasliittimestä piikkirimaan, joka menee Arduinon headerin pinneihin 8..GND (ylös, nappi, alas, vasen, nappi 2, oikea, maa). Tulitusnappi 2 tässä MSX:n mukainen – muissa laitteissa saattaa olla eri piikissä. Oman C-ohjelman sijasta tein isäntäohjelman tällä kertaa Processingilla, niin se toimii saman tien useilla alustoilla. Arduinoon pitää ensin ladata Firmata, jotta Processing toimii sen kanssa. Firmata ei ole järin nopea, sillä aikaa haaskaantuu yksittäisten pinnien erikseen kääntelyyn ja protokollaan, mutta tässä tapauksessa nopeus oli ihan hyväksyttävä. Omaa, luultavasti pahempaa lägiään tulee Processingin päivitystaajuudesta, mutta sekään ei ollut vielä liikaa. Esimerkki täällä:
http://www.kameli.net/~marq/kode/joikkari.pde
Firmatan lisäksi tarvii asentaa Arduino-tuki Processingille, joten mikään avaimet käteen -ratkaisu tästäkään ei tullut. MSX:n kakkosnapin vahingossa sohimisesta voi seurata ongelmia joillakin koneilla – pinniä saatetaan käyttää muihin tarkoituksiin, joten joikkaportin pinniin 7 ei yleensä kannata kytkeä mitään. Toinen detsku on, että pelikone kannattaa käynnistää tai johto kytkeä vasta ohjelman herättyä, sillä muuten porttiin tulee ei-toivottuja painalluksia. Näppikseltä pelaaminen on jo kohtuullisen hyödyllistä, jos ehjää Atari-joystickiä ei satu olemaan, mutta vielä hyödyllisempi tämä viritelmä olisi vaikkapa joypadin kanssa. Katsotaan, iskeekö inspiraatio sellaisenkin tukemiseen jossain vaiheessa.
edit: Nappi 2 ja vasen menevät tosiaan ristiin piuhassa, koska huomasin vasta jälkikäteen, että MSX:ssä kakkosnappi onkin eri pinnissä. Helppo muuttaa koodista (ja muutenkin järjestys on aika satunnainen).
edit2: Äh, menköön. Tässä se joypad-tuki. Nappien ja kontrollerin nimeä joutunee vaihtamaan, mutta muuten toiminee suorilta: http://www.kameli.net/~marq/kode/joikkari2.pde
December 9th, 2013
Next Posts
Previous Posts