Grafiikkaa kasarikoneille

Demoskenen piirissä on koko sen historian ajan elänyt vahvana itse tekemisen ja laitteiden rajojen venyttämisen eetos. Kenties paras esimerkki on 1982 esitelty Commodore 64, jolle on julkaistaan edelleen uusia kekseliäitä ja näyttäviä demoja, jotka olisivat 1980-luvulla näyttäneet lähes mahdottomilta tehdä. Vaikka itse laitteisto onkin pysynyt samana, ei nykypäivän demontekijä enää toimi samoissa puitteissa kuin 25 vuoden takainen kollega: laite tunnetaan nykyään paremmin, demoefekteihin on keksitty uusia ohjelmointiratkaisuja ja käytössä on huomattavasti edistyneempiä työkaluja kuin ennen. Moderneilla tietokoneilla toimivat ristiinkääntäjät, emulaattorit, grafiikkaeditorit ja musiikkiohjelmat helpottavat ohjelmankehitystä monessa suhteessa – vaikka samalla kadotetaankin oikealla koneella tekemisen nostalginen aitous.

Commodore 64 on itselleni jo lapsuudesta 1980-luvulta hyvin tuttu laite, jolla en kuitenkaan ole itse tehnyt juuri mitään ”vakavaa”; lähinnä olen pelannut pelejä ja katsellut demoja. Niinpä oli korkea aika tarttua härkää sarvista ja ryhtyä tutustumaan koneen ominaisuuksiin tarkemmin. Lisämotivaattorina toimi marraskuussa järjestettävä Zoo 2013 -demoparty, jonka yhtenä kilpailukategoriana on Commodore 64:n PETSCII-merkistöllä tehty grafiikka. Processingilla on nopea lähteä liikkeelle, ja sainkin jo ensimmäisenä iltana aikaan alkeellisen editorin, jolla pystyi piirtämään ruudulle merkkigrafiikkaa eri väreillä.

Ruokahalu kasvaa syödessä – ohjelmistotuotannossa tätä kutsutaan nimellä ”feature creep” – ja lisäilin muutaman seuraavan päivän aikana paljon uusia ominaisuuksia, kuten kuvien tallennus erilaisiin lähdekoodimuotoihin, peruutustoiminto, leikkaa/liimaa, kohdistusristikko ja paljon muuta. Suunnittelunäkökulmasta tekeminen oli tarkkaa tasapainottelua hyödyllisten toimintojen ja turhien kuriositeettien välillä: ominaisuuksia voi aina lisätä, mutta samalla ohjelman hallittavuus ja selkeys kärsii. Samaa PETSCII-merkistöä on käytetty myös muissa Commodoren laitteissa, kuten VIC-20:ssä ja PET-sarjassa (josta nimikin on peräisin), joten yllättävän pienillä muutoksilla syntyivät sekä VIC- että PET-moodi, joissa voi piirtää kahden vanhemman koneen värirajoituksilla.

Mitä tästä opimme? Henkilökohtaisella tasolla tämä pikku projekti on toiminut johdatuksena aiemmin vaikeasti lähestyttävältä vaikuttaneeseen C64-ohjelmointiin. Editori on herättänyt jonkin verran kiinnostusta ulkomaillakin, mikä on paitsi ilahduttavaa, myös raottaa samalla ovea verrattain sulkeutuneen C64-yhteisön maailmaan. Eri merkistöjen ja konemallien lähempi pöyhiminen paljasti joitakin itselleni aiemmin tuntemattomia Commodoren historian kehityskaaria, kuten eri PET-mallien kirjon ja sen, kuinka omaa standardimerkistöä käytettiin aina Amigaan saakka (C64:n merkit ovat tosin paksumpia kuin PET:n ja VIC:n).

Ohjelma on vapaasti ladattavissa täältä: http://www.kameli.net/marq/?page_id=2717. Alla PETSCII-ohjelmalla tehty VIC-20-versio hankkeen blogista:

kotikone-vic

Advertisements

Vastaa

Täytä tietosi alle tai klikkaa kuvaketta kirjautuaksesi sisään:

WordPress.com-logo

Olet kommentoimassa WordPress.com -tilin nimissä. Log Out / Muuta )

Twitter-kuva

Olet kommentoimassa Twitter -tilin nimissä. Log Out / Muuta )

Facebook-kuva

Olet kommentoimassa Facebook -tilin nimissä. Log Out / Muuta )

Google+ photo

Olet kommentoimassa Google+ -tilin nimissä. Log Out / Muuta )

Muodostetaan yhteyttä palveluun %s