F I. 2 1 5 .2 Tietokonekulttuurin erikoislehti 2015.2 S K R O L L I
2 2 3 Pääkirjoitus 4 Kuvamerkkien uusi aika Kuvilla juttelu ja emojit hämärtävät kirjoituksen määritelmää. 10 UNSCII uudistaa Miljoonien symbolien merkkigrafiikkaa. 44 Aikavälikertaus muistin tukena Jäikö vitsa vääntämättä. 2 1 5 . 70 Pelimuseo syntyy hartiavoimin Joukkorahoitetaan Tampereesta Suomen pelipääkaupunki! 71 Skrollitöllö Juttelimme peleistä ja tekniikasta teekkareiden televisiostudiossa.. 60 Ohjelmoi Oculus Riftille Unelmien virtuaalimaailma omaan silmikkoon. 28 Verkkovakoilun tekninen ulottuvuus Isoveli kyttää kaikkialla – näin rihmatkin viedään yltäsi. 36 Konekielen kiemurat Jos sen haluaa tuntea, sen kanssa on pakko jutella. 22 Mittausdataa Jollasta Sailfish-ohjelmointisarjan toisessa osassa antureiden ja kompassin käyttö. 20 Speedrunien vimma Näihin suorituksiin ei ihminen pysty. 25 Croutonilla lisäkiiltoa Chromebookiin Kepeästä kattavaan käyttikseen ja takaisin. Onnistuu! 64 Mikrokivikausi 30 vuotta Testikuvia erään sarjan matkalta. 12 Ei näin! Neo Geo -perheen tyyris tarina. 57 Varmuuden hinta Sertifikaateilla varmistetaan luottamuksen ketju. 66 Satunnainen samooja Nordic palaa luolastoihin. 16 Upeat ja unohdetut Unix-koneet Ammattikäytöstä hyljätyt koneet herättävät harrastajissa intohimoja. 9 Kolumni – Janne Sirén Autoilu uusiksi Teslan johdolla. Aikavälikertaus auttaa! 48 Unity 3D Pirteistä pikkupeleistä komeaan kolmedeehen – Unity taipuu moneen. 52 Raspista vanhan ajan kotitietokone RISC OS Picon avulla halpa nykyrauta taipuu perinteiseen Basic-ohjelmointiin
Tästä syystä kansa tarvitsee kaikkien niiden apua, jotka ovat kohdanneet nettiriippuvuutta jo kauan sitten. Tuttava toisensa jälkeen huumaantui Facebookista, koukuttui siihen ja alkoi osoittaa samoja riippuvuuden merkkejä kuin irc-addiktit vuosia aiemmin. Samalla riippuvuudesta on tullut yhä vaikeammin havaittavaa. Eikä asiaa auta se, että suositut nettipalvelut on alun alkaenkin suunniteltu koukuttamaan käyttäjänsä – eiväthän ne muuten olisi suosittuja. Vasta vuosien kuluttua sain nettisuhteeni kunnolla ruotuun kokeiltuani useita erilaisia itsekurituskeinoja. Jos olet kärsinyt nettiriippuvuudesta, niin avaudu kokemuksistasi! Jos huomaat kavereissasi tuttua oirehdintaa, niin ota asia puheeksi! Kansan on jo korkea aika päästä kollektiivisesta somehuumastaan vaiheeseen, jossa se tunnistaa ongelmansa ja hakee siihen apua. Korpela, Miikka Lehtonen, Sakari Leppä, Asser Lähdemäki, Jussi Määttä, Markus Ottela, Manu Pärssinen, Mikko Rasa, Markku Reunanen, Minna Sarakontu, Janne Sirén, Outi Sorsa, Mikko Torvinen, Jari Viitala, Wallu Julkaisija Skrolli ry Painopaikka Tammerprint, Tampere, ISSN 2323-8992 (painettu) ISSN 2323-900X (verkkojulkaisu) 441 878 Painotuote Auta nettiriippuvaista kansaa! Useimmilla lukijoilla lienee kokemusta peleistä tai nettipalveluista, joista ei meinaa päästä irti millään. Television turruttavasta ja passivoivasta vaikutuksesta on paasattu jo vuosikymmeniä. Koska yhteysminuutteja ei enää tarvinnut laskea, virtuaaliseen ihmemaahan saattoi olla uppoutuneena vaikka koko valveillaoloaikansa. Pahimmillaan kaupassa käyminenkin vaati ponnisteluja, kun turruttavasta irc-virrasta piti irrottautua muutamaksi minuutiksi. Sittemmin koko kansa löysi ympärivuorokautisen nettisosiaalisuuden ilot. 3 Ville-Matias Heikkilä päätoimittaja Skrolli Tietokonekulttuurin erikoislehti Yhteydenotot toimitus@skrolli.fi Ircnet: #skrolli Päätoimittaja Ville-Matias Heikkilä Toimituspäälliköt Toni Kuokkanen & Ninnu Koskenalho Taiteellinen johtaja Risto Mäki-Petäys Kuvatoimittaja Mitol Meerna Mediamyynti Jari Jaanto Talous Anssi Kolehmainen Muu toimitus Mikko Heinonen, Jukka O. Koukuttavia viestimiä on toki ollut aiemminkin. Opiskelu kärsi. Rajoitan edelleen yhteysja tavoitettavuusaikojani, vaikkei pakottavaa irkinkyttäystarvetta olekaan enää vuosiin ollut. Netissä roikkuminen on vuorovaikutteisen luonteensa vuoksi pienempi paha kuin telkkarin edessä löhöäminen, mutta sen ongelmia ei osata vielä tunnistaa samalla tavoin. Netti kulkee taskussa mukana, ja runsaasta sosiaalisen median käytöstä on tullut suorastaan normi, josta poikkeavaa oudoksutaan. Nettiriippuvuuden kanssa nuoruudessaan kamppailleelle tämän seuraaminen oli vaivaannuttavaa. Pääkirjoitus Etukannen kuva: Wallu. Oma suhteeni nettiin muuttui silloin ongelmalliseksi. Moni on varmasti myös kamppaillut vakavamman addiktion kanssa. Kauppinen, Ronja Koistinen, Sade Kondelin, Teemu Likonen, Annika Piiroinen, Manu Pärssinen, Antti Pöllänen, Suvi Sivulainen, Kalle Viiri Tämän numeron avustajat Tapio Berschewsky, Yrjö Fager, Eric Hartin, Tero Heikkinen, Chris Helenius, Nordic the Incurable, Jukka K. V uosituhannen vaihteen aikoihin kiinteiden laajakaistayhteyksien saatavuus parani huomattavasti
Kuvamerkkien käyttö on osittain jo varsin vanha ilmiö. 2 4 K irjoitetussa viestinnässä on aina käytetty pieniä, noin kirjaimen kokoisia kuvia tekstin joukossa. Tekniikka on nyt taas mahdollistanut kuvamerkkien helpon käytön. voivat olla symboleita. Tosin menettelyn yleisyys on vaihdellut, ja sitä vähensivät sellaiset viestintämuodot, joissa ei voinut käyttää kuvia. Sanaa ”symboli” voidaan käyttää myös hyvin laajassa merkityksessä niin, että myös ikonit, indeksit, tavalliset kuvat, esineet, eleet, sanat ym. Sitä käytetään tietokoneohjelmissa yleisesti Kuvamerkkien uusi aika Emojit ja muut kuvamerkit ovat tulossa mukaan viestintäämme, ja kirjoitettu kieli saa kuvakirjoituksen piirteitä. Korpela, Minna Sarakontu Kulttuuri. Ensinnäkin kuvamerkkejä käyttävät yhä useammat ihmiset yhä useammissa yhteyksissä, ja merkkien monipuolisuus lisääntyy. Symboli on täysin sovinnainen, joskin sovinnaisuuden aste vaihtelee. Ikonin ja indeksin ero on suhteellinen. Se on jo levinnyt laajalle monissa nykyajan viestintämuodoissa, kuten kuva 1 havainnollistaa. Ne voivat myös kehittyä symboleiksi, kuten on käynyt esimerkiksi levykettä esittävälle ikonille. Korpela Kuvat: Mitol Meerna, Jukka K. Teksti: Jukka K. Osasyy tähän on, että suomen kielessä ei ole Peircen käsitteistön sanaa ”sign” vastaavaa termiä vaan sana ”merkki” tarkoittaa tavallisimmin kirjoitusmerkkiä (character). Indeksin ymmärtäminen sen sijaan riippuu vahvasti kokemuksesta ja kulttuuristakin. Ikonille on ominaista, että sen voi ymmärtää intuitiivisesti: se esittää kohdettaan graafisesti. Esimerkiksi kiinalaisen kirjoituksen elementti ” ” (CJK RADICAL FIRE) on sinänsä sovinnainen, mutta siinä voi kyllä nähdä tulen ikonin tai indeksin (hiilloksen). Toiseksi kuvamerkkejä on ruvettu laajamittaisesti standardoimaan ja määrittelemään nimenomaan merkeiksi, joilla on omat koodinsa merkkikoodissa (Unicodessa) ja joita siksi voidaan käyttää tekstissä kuten kirjaimia. Peircen esittämässä analyysissa erotetaan toisistaan merkkien (signs) eri lajeja seuraavasti: • ikoni on kohteensa kuva eli näkyvästi sen kaltainen; esimerkiksi kuva nuotiosta esittää tulta • indeksi viittaa kohteeseen syy-yhteyden kautta; esimerkiksi savu viittaa tuleen • symboli viittaa kohteeseen vain, koska se on otettu sellaiseen käyttöön ja se on vakiintunut tai siitä on sovittu; esimerkiksi suomen sana ”tuli” tai englannin sana ”fire” on tässä mielessä symboli. Siinä, mitä nyt on tapahtumassa, on kuitenkin kaksi olennaista uutuutta. Tämä muuttaa jopa kirjoituksen käsitettä: sanan ja kuvan ero hämärtyy. 2 1 5 . Ikonista symboliksi Filosofi Charles S
Kuvamerkeiksi voidaan tulkita ainakin • wingdings-merkit, esimerkiksi , jotka on nykyisin koodattu myös Unicode-merkeiksi • emoji-merkit kuten • sekalainen valikoima muita merkkejä, esimerkiksi (house). Muutamia Unicoden version 7 mukanaan tuomista 250 uudesta emojimerkistä. Kuva 4. Esimerkiksi ” ” on tavallinen merkki Unicodessa: U+263A WHITE SMILING FACE. Hymiöt ovat erikoistapaus merkkigrafiikasta, jota on käytetty ja käytetään keinovalikoiman todellisten tai luuloteltujen rajoitusten takia. 5 tarkoittamaan Tallenna-toimintoa, vaikka levykkeiden käyttö on loppunut. Kysymykseen myös vastattiin: ”Selvyyden vuoksi hymiö kannattaa sijoittaa virkKuva 1. Ote Netlingo-sivuston hymiösanastosta. Jos tiedostossa olevassa tekstissä on kuvamerkki, se tallentuu muiden merkkien tavoin omalla koodillaan. Kuva 3. Hymiöistä kuvamerkkeihin Jo jonkin aikaa monet ohjelmat ovat muuntaneet hymiöitä kuviksi esimerkiksi niin, että kun käyttäjä kirjoittaa kolme merkkiä ”:-)”, ohjelma sisäisesti muuntaa ne kuvaksi tai kuvamerkiksi tai vain näyttää sen tilalla hymynaaman. Teoreettisessa luokituksessa hymiötä voidaan kuitenkin pitää ikonina. Kuvamerkki on kirjoitusmerkki, joka esittää jotain asiaa tyylitellyn kuvan tavoin. Usein kyse on vain graafisesta ilottelusta: kehitellään merkkiyhdistelmiä, jotka voisivat tarkoittaa jotain (kuva 3). Kuvat ja kuvamerkit ovat paljon luonnollisemman näköisiä kuin hymiöt, ja niihin saa paljon enemmän vaihtelua: … Kaikkein tavallisimmat hymiöt saattavat kuitenkin jäädä käyttöön, koska ne ovat vakiintuneet kirjoituksen osaksi. Hymiöiden viehätystä lisäsi se, että niiden ymmärtäminen ja käyttö vaatii oivaltamista tai oppimista. Merkkiyhdistelmä ”:-)” näyttää hymyileviltä kasvoilta vain, jos sitä katsoo pää vasemmalle kallistettuna. Kuvamerkkien avulla juttelua Whatsappissa. Levykkeen kuva oli alkujaan ikoni, mutta nykyisin se on yleensä tallentamisen symboli.. Kuvamerkki – siis mikä. Merkkigrafiikassa käytetään merkkiyhdistelmiä, jotka voidaan hahmottaa kuvioiksi. On jopa kysytty kielitoimistolta, miten hymiöiden käyttö vaikuttaa välimerkkien käyttöön – siis kysytty muodollisia sääntöjä aika epämuodollisten ilmausten käyttöön. Kuva 2. Se ei myöskään ole täsmällinen käsite, koska merkin kuvallisuus on tulkinnanvaraista. Alkuperäisen idean mukaiset hymiöt ovatkin hitaasti väistymässä, ja perussyykin on ilmeinen. Jopa merkin ”>” tai merkkiparin ”->” käyttöä voidaan pitää merkkigrafiikkana: niitä käytetään niiden ulkoasun takia oikeamman symbolin kuten nuolen ”?” sijasta. Monet eivät ole koskaan nähneet levykettä saati käyttäneet sitä, mutta tunnistavat silti levykesymbolin tarkoittavan tallentamista (kuva 2). Hymiöiden tulo Hymiöt (smileys, emoticons) otettiin käyttöön 1980-luvulla viestinnän elävöittämiseen tilanteessa, jossa voitiin käyttää vain merkkipohjaista viestintää. Sitä voidaan käyttää tekstissä kuten muitakin merkkejä, joiden merkitys on olennaisesti graafinen, kuten ” ” (tiimalasin merkki, HOURGLASS U+231B). Kuvamerkkiin vaikuttavat fonttiasetukset kuten muihinkin merkkeihin: se voi muuttaa kokoa, väriä ja fonttia. Merkkigrafiikasta käytetään myös nimitystä Ascii-grafiikka tai Ascii-taide, silloin kun merkeistä sommitellaan isoja kuvioita. ”Kuvamerkki” ei ole vakiintunut termi, mutta hyödyllinen. Netistä löytyy lukemattomia hymiöiden kokoelmia, joissa useimmat ovat pitkälti tuntemattomia ja täysin tarpeettomia
Sen sijaan kuva on kiinteä. Esimerkiksi emoji, jossa on lautanen, veitsi ja haarukka, tarkoittaa yleensä pikemminkin ruokailua kuin näitä kolmea esinettä. Periaatteessa kuvamerkki ei ilmaise abstraktia ideaa vaan jotakin konkreettista ja näkyvää. Kuvakirjoituksen uudessa tulemisessa tekniikat pysynevät yksinkertaisempina. Lisäksi kuvamerkki voi olla olennaisesti riippuvainen kulttuurista. Kuva 5. Lisäksi voidaan julkaista väliversioita. Unicoden versiossa 7 merkkeihin tulivat värit. 2 6 keen päättävän välimerkin perään” (Kielikello 4/2009). Kulttuurisidonnaisia emoji-merkkejä. Niissä on olennaista, onko laatikkoon kiinnitetty lippu alhaalla vai ylhäällä, mutta tämä ei välttämättä sano mitään ihmiselle, joka ei tunne amerikkalaista käytäntöä. Emojit ovat luonteeltaan yleensä vahvasti ikonisia: ne esittävät jotakin näkyvää asiaa. Vaikka esimerkiksi tiimalasin merkki tarkoittaa vain tiimalasia, ei esimerkiksi jotain abstraktia ajan kulumisen ideaa, sen ulkoasu voi vaihdella. Tulevaisuudessa voimme ehkä valita kuvamerkkien ”ihonvärin”. Toisaalta samaa kohdetta esittäviä emoji-kuvia on usein paljon erilaisia, jolloin kuvan valinnalla ilmaistaan myös asenteita ja tunteita. Emoji-merkit Sana ”emoji” liitetään usein sanaan ”emootio”, mutta yhteys on satunnainen. Unicode nimittäin määrittelee nyt kuvamerkeille mahdollisuuden sekä mustavalkoiseen esitykseen (tai oikeastaan yksiväriseen) että moniväriseen esitykseen (gemoji), kuten kuva 6 havainnollistaa. Jotkin emojit ovat hyvin kulttuurisidonnaisia, Japanin kulttuurista riippuvia, mutta suuri osa on yleisinhimillisiä. Tosin kovin nopeaa merkkien lisääminen ei voi olla. Vanhempi tapa on liittää kuvamerkkiin muita graafisia merkkejä, jotka jollain sovinnaisella tavalla rajoittivat merkitystä. Samat merkit kahdella fontilla: CLOSED MAILBOX WITH LOWERED FLAG, MONEY WITH WINGS ja FATHER CHRISTMAS.. Koska kirjainkirjoitus on jo keksitty, on luonnollista käyttää selittäviä sanoja. Viestit voivat täten olla hyvin tiiviitä, mutta tulkinnanvaraisia. 2 1 5 . Vielä yksinkertaisempaa on käyttää useita kuvamerkkejä yhden käsitteen ilmaisemiseen. On koodattu ensisijaisesti vain sellaisia symboleita, joilla on todistettavissa olevaa käyttöä merkkeinä tekstissä, ei vain graafisina alkioina esimerkiksi julisteissa. Kuvamerkkien kulttuuririippuvuus Merkin ja kuvan keskeinen ero on, että merkin ulkoasu riippuu fontista, joskus paljonkin. Vielä yksinkertaisempaa on, että kuvilla esitetään vain sellaisia asioita, että ne ovat asiayhteydessä yksikäsitteisiä; muu esitetään sanoilla. Lause ”Nyt mä ja sit ” toimii hyvin, koska lyhyet pikkusanat tekevät selväksi, että kuvataan omia aikomuksia eikä esimerkiksi tehdä ehdotusta; tämän tekeminen pelkillä kuvamerkeillä olisi varsin vaikeaa, vaikka kuvamerkit ilmaisevatkin toiminnan sisällön hyvin. Kuva 6. Emojit tulivat laajaan käyttöön ensin japanilaisissa tekstiviesteissä. Käytännössä kuvamerkin muoto voi vaihdella fontin mukaan paljonkin. Sateenkaarta esittävä Unicodemerkki värillisenä gemojina ja mustavalkoisena, vaikeammin hahmottuvana glyyfinä. Emoji-merkin käsite ei ole täsmällinen, vaan on eri tulkintoja siitä, mitä kuvamerkkejä pidetään emojimerkkeinä. Unicode-standardissa on noin miljoona koodipaikkaa merkeille, ja vakaaksi tarkoitettu päätös on, että koodiavaruutta ei tästä laajenneta. Kuvamerkkien virta Unicodeen on siis avattu. Nyt kuitenkin Unicodeen on lisätty suuri määrä kuvamerkkejä, ja lisää on tulossa. Monitulkintaisuuden ongelma Vanhassa kuvakirjoituksessa käytettiin eri tekniikoita kuvien rajoitusten ja monitulkintaisuuden hallitsemiseksi. Kuvamerkkejä standardoidaan Merkkikoodien määrittelyssä, joka on nykyisin olennaisesti Unicodestandardin kehittämistä, on aiemmin suhtauduttu nihkeästi kuvamerkkeihin. On ajateltu, että jos mitä tahansa graafisia symboleja ruvetaan lisäämään merkkikoodiin, päädytään suureen sekaannukseen ja lopulta koodiavaruuden loppumiseen. Emojien yhdestä osajoukosta käytetään Unicode-standardissa nimeä ”emoticons”, mutta ne esittävätkin kasvojen ilmeitä ja eleitä, esimerkiksi (WEARY CAT FACE). Osaa niistä käytetään yhä. Kuvamerkkiin voidaan liittää sanoja tai lyhenteitä selventämään niitä. Vuonna 2016 julkaistavaan versioon 9 on ehdolla vain 38 uutta kuvamerkkiä. Unicode-standardin version 7 julkistuksen yhteydessä päätettiin, että uusi versio julkaistaan vuosittain kesäkuussa. Kuva 7. Tulkinnanvaraisuutta lisää se, että emojit on usein tarkoitettu indekseiksi. Sana ”emoji” tarkoittaa japanissa kuvamerkkiä. Unicoden versiossa 7 (kesällä 2014) tuli 250 uutta kuvamerkkiä (emoji-merkkiä), joista on muutama näyte kuvassa 4. Esimerkiksi erilaiset postilaatikkomerkit esittävät amerikkalaisia laatikoita. Todellisia tiimalaseja on erilaisia, samoin tyyliteltyjä tiimalaseja. Kuvamerkkien ulkoasu voi kuitenkin vaihdella suuresti (kuva 5)
Tietokoneissa olevat fontit eivät yleensä päivity yhtä helposti kuin käyttöjärjestelmät ja selaimet. Microsoft on toteuttanut muun muassa Segoe UI Symbol -fontin laajennetun version automaattisen päivittämisen järjestelmäpäivitysten osana. Verkkosivuilla on mahdollista käyttää web-fontteja eli sivun mukana automaattisesti latautuvia fontteja. TekijänoikeusKuva 8. Käytännössä fonttien valikoima riippuu ensisijaisesti käyttöjärjestelmän versiosta, toissijaisesti siitä, mitä sovellusohjelmia on asennettu, koska fontteja tulee myös niiden mukana. Keinona on teknisesti se, että emoji-merkkiä seuraava Unicodemerkki VARIATION SELECTOR-16 (U+FE0F) on pyyntö esittää emojimerkki ”emoji-tyyliin”, merkki VARIATION SELECTOR-15 (U+FE0E) taas pyytää ”tekstityyliä”. Kuvamerkkejä voi myös kopioida ja liittää tekstistä toiseen, esimerkiksi verkkosivulta getemoji.com sähköpostiin tai Facebook-päivitykseen. Jokaisen käyttäjän on pitänyt erikseen hankkia eri fonttien uudet versiot ja uudet fontit. Niille on annettu abstrakteja nimiä kuten EMOJI MODIFIER FITZPATRICK TYPE-5. Tosin toistaiseksi melko harvat ohjelmat tukevat näitä tekniikoita. Tämä on lisännyt sitä ongelmaa, että ihmistä esittävässä merkissä on määrätty ihonväri, joka on käytännössä lähes aina ollut vaalea. 7 Unicode määrittelee myös tavan valita tällaisten esitystapojen välillä. Tämän takia on laadittu luonnos, joka määrittelee kuvamerkkeihin yhdistettäviä väritysmerkkejä, ”skin tone modifiers” (kuva 7). Kuva 9. Tavallisempaa on, että ohjelma käyttää kiinteästi jompaakumpaa tyyliä. Eri ohjelmissa voi olla omia merkkipalettejaan, jotka voivat olla ryhmiteltyjä tai hierarkkisia (kuva 8). Voi kestää hyvin kauan – kymmenen vuottakin –, ennen kuin Unicodeen lisätty merkki on useimpien käyttäjien saatavilla. Kyseinen fontti sisältää suurehkon valikoiman kuvamerkkejä. Fontit rajoittavat Uutta merkkiä ei voi esittää, ennen kuin se on toteutettu johonkin fonttiin. Tilanne on kuitenkin muuttumassa. Kirjoittamisen tekniikoiden paljous Kuvamerkkejä voi kirjoittaa kaikilla merkkien kirjoittamisen yleisillä tekniikoilla, kuten järjestelmän merkkipaletista valitsemalla tai merkin Unicode-numeroa käyttävillä tekniikoilla. Whatsappin hierarkkinen kuvamerkkivalikko: yläriviltä valitaan aihepiiri, esimerkkitapauksessa eläimet, kasvit yms. Lisäksi kuva vetää huomion puoleensa. Väritysmerkit eivät tarkoita yksinkertaista värittämistä, vaan ne voivat muuttaa sekä ihon että tukan väriä. Kuvien tunnistaminen on nopeampaa kuin tekstin lukeminen. Tällöin muut voivat heti nähdä, minkätyyppisestä päivityksestä on kyse. Sama koskee HTML5-sovelluksia eli Javascriptillä tehtyjä, HTML:ää ja CSS:ää käyttäviä, web-selaimessa suoritettavia sovelluksia. Facebookin tilapäivityksessä saa hymiökuvaketta napsauttamalla listan, josta voi valita kuvan viestinsä alkuun.. Tämä on tärkein syy, joka rajoittaa kuvamerkkien käyttöä digitaalisessa viestinnässä ja johtaa usein kuvien käyttöön kuvamerkkien sijasta. Esimerkiksi Facebookissa voi tilapäivityksen helposti aloittaa kuvakkeella (kuva 9). Ohjelmat saattavat tarjota hyvinkin aktiivisesti mahdollisuutta kuvalliseen ilmaisuun tekstin yhteydessä. Tasa-arvoa merkkeihin Edellä mainittiin, että Emoji-merkeillä voi olla myös monivärinen ulkoasu yksivärisen ohella. Lisäksi joissakin ohjelmissa emojeja voi kirjoittaa Unicode-nimiensä avulla esimerkiksi siten, että :rocket: tuottaa merkin ” ”, jonka Unicode-nimi on ROCKET
Miksi emojit ovat levinneet muuallekin ja ovat yleisiä yhteyksissä, joissa voisi hyvin käyttää yhteistä kieltä. Miksi japanilaiset ovat ottaneet neljän kirjoitusjärjestelmänsä (kanji, hiragana, katakana ja latinalainen) rinnalle vielä aivan uuden, ikään kuin tuhansissa kanji-merkeissä ei olisi tarpeeksi opettelemista. Varhaisimmat säilyneet kirjoitukset ovat paljolti varastokirjanpitoa ja veroluetteloita, joissa esitetään konkreettisia esineitä. Sen sijaan ikoneilla voi säestää viestiä tai jopa esittää koko viestin. Siinä merkittiin vain konsonantit ja nekin epäjohdonmukaisesti: sama kirjain saattoi olla kahden eri konsonantin merkki. Kirjainkirjoitus tarjosi myös mahdollisuuden ilmaista paljon monimutkaisempia ja käsitteellisempiä asioita kuin kuvakirjoitus. Sen sijaan niillä on oma osansa viestinnän suuressa murroksessa, jossa tavallinen viestintämme muuttuu moni-ilmeisemmäksi. Kuvamerkit ovat usein hauskoja ja piristäviä, ja monet ohjelmat suorastaan tyrkyttävät niitä kirjoittajille. Lyhyitä viestejä kirjoitettaessa aitoon kuvittamiseen ei yleensä viitsitä ryhtyä, vaikka se olisikin monin tavoin helpompaa kuin ennen. Kun puolisolle lähetetään ostoslista, voidaan mukaan laittaa vaikkapa kuva halutusta tuotteesta – tai yksinkertaisimmassa tapauksessa vain . Kuvamerkeillä on osansa tässä kokonaisuudessa. Kuvamerkit ovat näennäisen helppoja, mutta kuvakirjoitus ei ole ollenkaan niin yksiselitteistä ja helposti luettavaa kuin voisi luulla. Viesti ehkä menee jotenkin perille, mutta ei ole mitään takeita siitä, että vaikutus on haluttu. Ilmeisin ratkaisu olisi esittää kuvamerkin tilalla sen nimi, mutta tätäkään ei vielä ole toteutettu.. Sillä voitiin sanoa kaikki, mikä voidaan sanoa puhutulla kielellä. Koska kuvamerkit ovat yleensä pienikokoisia, niiden tunnistaminen on vaikeaa, jos näkö ei ole terävä. Kirjainkirjoitus syntyi, kun muutamia merkkejä ruvettiin käyttämään äänteitä tarkoittamassa. Olemme tottuneet lukemaan kuvitettuja tekstejä ja pidämme niistä. Ei piirretty taloa vaan parilla vedolla taloa muistuttava kuvio. Alamme jo tottua siihen, että arkipäiväiseen viestiinkin voi liittää saman laitteen kameralla otetun kuvan. Kirjoitus palaa juurilleen Kirjoituksen alkumuoto oli kuvakirjoitus. Lisäksi on symboleja, jotka eivät ole graafisesti kuvailevia vaan sovinnaisia mutta luonteeltaan kielestä riippumattomia ja enemmänkin käsitteen kuin sanan merkkejä, kuten ”€” ja ”%”. Kuvia tulkitaan eri tavoilla, kuten sanojakin. Esimerkiksi talokuvio, joka oli totuttu lukemaan esimerkiksi ”bet” (seemiläinen taloa tarkoittava sana), otettiin b-äänteen merkiksi. Näkövammaisten avuksi on kehitetty apuvälineitä kuten puhesynteesi ja Braille-laitteet, jotka esittävät tekstin pistekirjoituksella. Kirjanpidon kaltaisten tekstien ohella vanhimpia tekstejä ovat lyhyet rukoukset ja muut uskonnolliset tekstit sekä omistamista osoittavat merkinnät. Kuvakirjoituksen yksi ilmeinen etu on kieliriippumattomuus, mutta emoji-merkit ovat erityisen suosittua japaninkielisessä viestinnässä, jossa kielimuuria ei ole. Tämäkään ei riitä selitykseksi, koska kuvakirjoitusta käyttävät ihmiset tyypillisesti osaavat ihan hyvin lukea ja kirjoittaa ja ovat usein hyvin koulutettuja. Kuvamerkit eivät ole hetken huumaa, mutta eivät ne itsessään myöskään merkitse vallankumousta. 2 8 syistä kyseeseen tulevat yleensä vain vapaat fontit. Ehkä syynä oli aluksi tarve kirjoittaa ihmisten ja jumalien nimiä, koska niitä oli vaikeaa tai mahdotonta esittää kuvamerkeillä. Tämä tosin riippuu suuresti siitä, esittääkö ohjelma käyttäjälle kontekstista riippuvia valikkoja, joissa on sellaisia kuvamerkkejä, joita hän todennäköisesti haluaa käyttää. Usein ne ilmaisevat yksinkertaisia konkreettisia esineitä tai asioita taikka esittävät tyylitellysti tunteenilmauksia. Kuvakirjoitus ei ole koskaan kadonnut, vaan se on säilynyt kirjainkirjoituksen ohella, esimerkiksi opasteissa joko yksinään tai tekstin lisäksi. Kuvamerkkien Brailleesitystä ei kuitenkaan ole määritelty. Tulevaisuudessa kynnys myös tekstin typografiseen muotoiluun, kuvien piirtämiseen, äänitteiden ja videoleikkeiden lisäämiseen alenee tai häviää. Kirjoituksen ei tarvitse olla täydellistä ollakseen hyödyllistä. Viestinnän murros vai ohimenevä muoti. Haaste esteettömyydelle Kuvien käyttö on aina ongelmal lista sokeille ja usein myös heik konäköisille. Tämä päti siitä huolimatta, että varhaisin kirjainkirjoitus oli monin tavoin puutteellista. Olisi helppoa ajatella, että kyseessä on muoti-ilmiö, johon väsytään melko pian. Kuvakirjoituksen yksi etu on, että se ei vaadi lukueikä kirjoitustaitoa – eikä nykyisin edes piirustustaitoa, koska merkkejä voidaan poimia valikoista. Toisaalta se on jatkunut jo kauan monissa yhteyksissä ja on niistä leviämässä laajemmalle. Kuvakirjoitus ei välttämättä suju kovinkaan nopeasti verrattuna sanojen kirjoittamiseen. Miksi kuvakirjoitus on nyt yleistymässä. Visuaalinen havainnollisuus tuntuu muodostuneen keskeiseksi tavoitteeksi, varsinkin tunteiden ilmaisussa. Teksti, tekstin muotoilut, kuva, ääni ja liikkuva kuva muodostavat keinovalikoiman, jota käytetään aina tilanteen mukaan. 2 1 5 . Erikoisaloilla saattaa juokseva tekstikin yhä sisältää kuvakirjoitusainesta kuten halkaisijan merkki ” ” ja suuntaa osoittava nuoli ”?”. Uusia emoji-merkkejä on toistaiseksi vain parissa vapaassa fontissa (Quivira, Symbola). Kuvat riittivät siihen, mutta käytännön tarve pakotti yksinkertaiseen, viitteelliseen esitykseen. Puhesynteesissäkin ne tuottavat ongelmia
Janne Sirén. Keskitunnelia ei nelivedosta edes löydy, sillä moottoreita voi olla enemmän kuin yksi. Jarruenergian talteenotto taas on niin voimakasta, että auto jarruttaa kaasua nostamalla. Suuri osa autotehtaiden satavuotisista kulttuureista liittyy pienten räjähdysten millintarkkaan hallintaan teräsmöhkäleen sisällä. Perustuksilleen riisuttu Tesla muistuttaa isoa rullalautaa, jossa on ratti. Sitten uusi tulokas Tesla Motors uskalsi kyseenalaistaa nykytiedon. Kun miljardi-investointeja polttomoottorialustoihin tehnyt autotehdas tarttuu sähköautoon, tulos kuulostaa Saksasta hiljattain tihkuneelta suunnitelmalta: lukuisia pieniä akkuja ripoteltuna vapaisiin koloihin, keskitunneliin, moottoritilaan ja jopa ovitaskuihin. Vasara ja nauloja Autojätit ylpeilevät modulaarisilla alustoillaan, joista syntyy auto useaan eri kokoluokkaan. Moni autoilun itsestäänselvyyksistä liittyy siis polttomoottoriin eikä olekaan enää itsestään selvää. Model S on aina päällä. Piilaaksolaisella Tesla Motorsilla ei ole takanaan sataa vuotta, vasta kymmenkunta. Virtanappia tai moottorin esilämmitystä ei siis tarvita. Koska myöskään päästöjä ei ole, matkustamon lämmitystä ja ilmastointia voi käyttää vaikka tallissa. Rahavirrat taas muodostuvat polttomoottorien jatkuvasta huollon tarpeesta. Auto vain on: hiljaa mutta valmiina. Minimaalinen rakenne mahdollistaa myös akuston vaihtamisen autopesulaan mahtuvalla robotilla. Alustoja yhdistää vuosisatainen, kovassa käytössä ollut konsepti: polttomoottori, vaihteisto, pitkittäinen keskitunneli pakoputkelle tai vetoakselille (ajalta, jolloin vetäviä ja ohjaavia pyöriä ei vielä osattu yhdistää) sekä bensatankki. Sille, jolla on jo kädessään vasara, kaikki näyttää naulalta. Sähköautoa ei käynnistetä eikä sammuteta. Määräaikaishuollon käsite muuttuu, koska sähköautossa harva asia likaantuu tai liikkuu ja Teslan ohjelmistopäivitykset tulevat langattomasti perille. Sähköauto onkin yleensä pohjimmiltaan vain bensa-auto, jossa polttomoottorijärjestelmän tiloja on uusiokäytetty. Yritys valmistaa vain sähköautoja ja kokoaa akkupatteristoja. Niinpä sähköautoista tulee bensa-autojen puolivillaisia kopioita, lyhyen matkan golfkärryjä, joissa vähät akut kutistavat tavaratilan. Tutut huollot kuten hihnat, sytytystulpat ja öljyt jäävät historiaan. Tesla Model S on ensimmäinen moderni sähköauto, jonka koriin ei ole suunniteltu polttomoottoria öljysäiliöineen, jäähdyttimineen, vaihteistoineen, putkistoineen, vaimentimineen, katalysaattoreineen ja bensatankkeineen. Kyytiin mahtuu seitsemän. Rullalauta on kuin tyhjä taulu, jolle rakentaa. Ensimmäisessä Tesla Roadsterissa vuonna 2008 akut oli vielä pakattu Lotukselta lainatun korin nelisylinterimoottorin paikalle, mutta siihen yhtäläisyydet loppuvatkin. Parin vuoden päässä vartovan massamalli Model 3:n on vihjattu aloittavan rohkeamman linjan. Klassisen auton osista jatkoon ovat päässeet ainoastaan neljä pyörää, jousitus, ratti ja jarrut. Etupenkkien välissä ei ole vaihteistoa vaan lattia tai lokero, ja takapenkin lattia on kauttaaltaan tasainen. Monet polttomoottoriauton totuudet eivät koske sähköautoa, mutta voivat kyllä pilata sen. Model S:ää onkin kutsuttu automaailman Iphoneksi, sillä se on saanut kilpailevat ratkaisut näyttämään absurdin monimutkaisilta. Auto ei tärise eikä savua parkissa eikä liikennevaloissa, sillä tyhjäkäyntiä ei ole. Ilman vaihteistoa vääntö on aina välitöntä ja katkotonta. Kolumni Keksi pyörä uudelleen Sähköauto antoi odottaa itseään pitkään. Takakontti on syvä, ja sen lattiasta nousee tarvittaessa lisäistuimia. Vieläköhän silloin muut sovittelevat akkuja bensatankkiin. Autokoulu uusiksi Model S:n lattian muodostaa sileä akkulevy 300–500 ajokilometrille. Sekin alkoi sujua vasta, kun ymmärrettiin, että vanhat faktat eivät enää pitäneet paikkaansa. Yhdessä Teslakin on silti yhä konservatiivinen: Model S on ulkoisesti varsin perinteisen näköinen. Vaikka Model S on vain sulavalinjainen viistoperä, takaja etukonteissa on tavaratilaa kuin maasturissa – jopa 1790 litraa. Renkaiden välissä on yksi tai kaksi pientä ja yksinkertaista, urheiluauton ripeää sähkömoottoria. It is what you know, but just ain’t so.” Osuva oivallus pätee myös teknologian murroksiin, kuten sähköauton kehittämiseen. Keulassa on voitu panostaa kolariturvallisuuteen, kun polttomoottorin tilavaatimuksia ei ole. 9 ” It isn’t what you don’t know that gets you into trouble. Tesla yhdistelee pieniä litiumioniakkuja suuriksi kokonaisuuksiksi. Tesla on aina verkossa, joten lämpöä voi säädellä kännykällä. Sähköauton voi ”tankata” öisin kotitöpselistä ja Teslan sähköautot lisäksi ilmaiseksi Superchargerilla, joista ensimmäiset avattiin Suomeen toukokuussa. Model S oppii käyttäjänsä ajoaikataulut ja lämmittää tai jäähdyttää matkustamon valmiiksi
Tasalevyisten fonttien vertaileminen vastasi kysymykseen: mikäli fontissa on grafiikkamerkkejä, yleensä vain PC:stä tutut merkit on toteutettu jokseenkin kunnollisesti. Jälkimmäisiin kuuluvat niin Commodore 64:n, Amigan, Atari ST:n kuin PC:nkin oletusfontit, joten valinta oli tältä osin selvä. 2 1 5 . Kyse ei selvästikään ole kehitysvastarinnasta: esimerkiksi Ecman päätteenohjausstandardin mukaiset laajemmat väripaletit on omaksuttu niin MUDeihin kuin muutamiin suosittuihin merkkigrafiikkaeditoreihinkin. 2 10 P ari vuotta sitten halusin selvittää, onko Unicode löytänyt tiensä perinteiseen merkkigrafiikkaan. Nimen voi ajatella yhdistelmäksi termeistä Unicode, ANSI ja ASCII. Koska myös tavallisia kirjaimia, numeroita ja välimerkkejä on käytetty merkkigrafiikkaan, piti myös ne ottaa syyniin. Unscii-fontti yrittää ratkaista ongelman. Paksuviivaiset 8×8-fontit ovat yllättävän samankaltaisia Ascii-alueensa osalta. Teksti ja kuvat: Ville-Matias Heikkilä Unicoden grafiikkamerkit keskittyvät alueelle 2500-25FF, joka näyttää Unsciin 8×8-versiossa tältä.. Kyseessä oli selvä muna–kana-ongelma: ennen kuin Unicode-palikkagrafiikka pääsisi kehittymään, pitäisi olla kunnollinen referenssifontti, jollaista ei kuitenkaan synny olemassa olevan grafiikkaperinteen puuttuessa. ”Oikean” toteutustavan löytämiseksi piti siis kaivaa esiin ne vanhat järjestelmäfontit, joilla näitä merkkejä on alun perin käytetty. Otin vertailujoukkoon mukaan myös Atari XL:n ja Amstrad CPC:n ROM-fontit ja BBC Micron grafiikkatilafontin. Palikkavalikoimien osalta on kuitenkin pitäydytty perinnemerkistöissä – miksi ihmeessä. Merkkejä tutkimaan Unscii-fontti syntyi halusta luoda 8×8 pikselin tasalevyinen bittikarttafontti, joka tukisi niin perinteistä kuin uuttakin merkkigrafiikkaa mahdollisimman hyvin. 8×8 pikselin järjestelmäfontteja on karkeasti kahdenlaisia: ohutviivaisia, joissa viiva on yhden pikselin levyinen, ja paksuviivaisia, joissa paksuus on vaakasuunnassa kaksi pikseliä. Osoittautui, että hyvin vähäisesti. Myöhemmin fontista alkoi syntyä tavallista pääteja ohjelmointikäyttöä varten myös 8×16-versio, josta olen mielinyt vaihtoehtoa iänikuiselle PC:n VGA-fontille. Monet kirjaimet, numerot ja välimerkit ovat identtisiä liki koko Kulttuuri UNSCII uudistaa Merkkigrafiikan päivitys Unicode-aikaan Unicodessa on monia palikkagrafiikan kannalta herkullisia merkkejä, mutta juuri kukaan ei käytä niitä. Unicode-konsortio ei ota kantaa siihen, kuinka grafiikkamerkit pitäisi toteuttaa: niille on tarjottu paikat vain alaspäinyhteensopivuuden vuoksi
Uusia merkkejä löytyi lisäksi CPC:n, Atarin kotimikrojen, EACA Colour Genien, Mattel Aquariuksen, Sharp MZ:n ja TRS-80:n ROM-fonteista sekä Applen Sabine10merkistöstä. Funktio ilmoittaa itsenäisen merkin leveydeksi aina yhden solun, ellei sitä ole erikseen määritelty täysleveäksi itäaasialaismerkiksi, jolloin leveys on kaksi solua. Suurin osa grafiikkamerkeistä on kaksitavuisia, joten täydellisen fontin pitäisi pystyä esittämään ne sekä yhden että kahden solun kokoisina. Esikuvana ovat olleet etenkin PC:n 8×16-kokoinen VGAfontti ja Windowsin 8×15-kokoinen Fixedsys, jotka ovat läheistä sukua paksuviivaisille 8×8-fonteille. Esimerkiksi kiinalaisperäiset sanamerkit ovat täysleveitä. Tekstitiedostot käännetään BDF-muotoon Perl-skripteillä ja BDFmuodosta tuotetaan PCFja TTF-versiot erillisillä työkaluilla. Fixedsysin harrastelijavetoinen Unicode-versio Fixedsys Excelsior olisi tyyliltään yhteensopivampi, mutta sen lisenssi on turhan epämääräinen. Grafiikan piirtelyyn sain innoketta myös Simulaatio-demotapahtumaan työstämäni merkkigrafiikkademon kautta. Esimerkiksi X:n ja Y:n viivat yhdistyvät luontevasti merkkeihin \, / ja |. Skripti asemoi glyyfit uusiksi ja skaalaa ne tarvittaessa wcwidthin mukaisiksi, mutta viivanleveyteen ei kosketa. Suosituista merkistöistä esimerkiksi Petscii, Teksti-TV, Videotex ja jopa VT100 sisältävät useita käyttökelpoisia grafiikkamerkkejä, joita ei ole Unicodessa – tämä siitä huolimatta, että näitä tukevia laitteita on ollut käytössä miljoonittain. Länsimaiset pääteohjelmat käyttävät merkin leveyden määrittämiseen yleensä wcwidth() -funktiota. 11 vertailuryhmässä, joten niissä pääsi etenemään mainiosti enemmistöperiaatteella. Suuri osa viivapohjaisesta Ascii-grafiikasta on piirretty Amigan Topaz-fontille, joten joitakin sen piirteitä on suosittu. Monet täysleveät grafiikkamerkit pystyy esittämään tyydyttävästi kahden puolileveän Unicode-merkin yhdistelmänä, mutta esimerkiksi taiwanilaisessa BBS-grafiikassa suosittuja kulmakolmioita ei. Demoa varten on tosin koottu merkeistä suppeampi, 256 merkin valikoima. Idässä käytäntö on kuitenkin erilainen: merkin leveys riippuu siitä, käytetäänkö merkin siirtokoodauksessa yhtä vai kahta tavua. Olemassa olevat merkkigrafiikkaeditorit eivät taivu kovinkaan helposti Unicodeen eivätkä tekstieditorit merkkigrafiikkaan. Koeajo Unsciita on kehitysvaiheessa testattu niin grafiikassa kuin normaalissa päätekäytössäkin: ohjelmoinnissa, tekstinmuokkauksessa ja irkkauksessa. Tein palikkagrafiikkakokeiluja varten aluksi joitakin makroja tekstieditoriin ja myöhemmin puhtaalta pöydältä oman grafiikkaeditorin. Puolitetut merkit helpottavat myös mittasuhdemuunnoksissa, esimerkiksi 40×25 merkin ruudulle piirretyn kuvan venyttämisessä samanmuotoiseen 80×25 merkin ikkunaan. Esikuvia ja ryöstöretkiä Unsciin 8×16-versio on muodostettu 8×8-fontin pohjalta siten, että grafiikkamerkkien mitat on pidetty solun suhteen mahdollisimman ennallaan mutta tekstiglyyfejä on mataloitettu ja kaunistettu. Kaksi eri leveyttä Monet Unicoden grafiikkamerkeistä ovat peräisin kiinalais-japanilaiskorealaisista merkistöistä (CJK), joten otin tarkasteluun myös japanilaisen NEC PC:n ja muutaman itäisen MSXkoneen ROM-fontit. Muutamia typografisia ongelmia on korjattu: toisiinsa helposti sekoittuvien merkkien erottuvuutta on parannettu etenkin ohjelmointikäyttöä ajatellen ja tekstijäljestä on tehty tasaisempaa pidentämällä kapeiden I-, ija l-kirjainten päätteitä. Varsinaisia grafiikkamerkkejä vertaillessani osoittautui, ettei monille niistä ole lainkaan Unicode-paikkaa! Fonttiprojektista tuli siis myös kartoitusprojekti, jossa kävin läpi kaikki mahdolliset grafiikkamerkkejä sisältävät perinnemerkistöt ja järjestelmäfontit. Sen glyyfit ovat oikeankokoiset – 8×16 ja 16×16 pikseliä – mutta ne eivät ohutviivaisina istu Unsciin tyyliin. Niinpä tärkeimmistä grafiikkamerkeistä on Unsciissa tarjolla myös vasen ja oikea puolisko erikseen. Unscii on toteutettu piirtämällä sen glyyfit tekstitiedostoihin pistettä ja risuaitaa käyttäen. Tätä kirjoitettaessa Unscii on vaiheessa, jossa sen kehtaa jo laittaa julkisesti ladattavaksi. Muita esikuvia ovat olleet X-ikkunointijärjestelmän lihavoidut 8×13ja 9×15-fontit sekä VT420-päätteen 10×16-fontti. Unifont pyrkii olemaan mahdollisimman kattava bittikarttafontti. Unsciin Unicode-kattavuus ei ole sellaisenaan kovinkaan hyvä, minkä huomaa esimerkiksi jonkun kopioidessa IRC:hen kiinankielistä tekstiä tai foneettisia ääntämisohjeita. Tämän vuoksi 8×16-Unsciista on myös versio, johon on haettu puuttuvat glyyfit skriptin avulla GNU Unifontista. Päätin sijoittaa nämä merkit Unsciissa PUA-alueelle (Private Use Area), eli koodipaikasta U+E000 alkaen. Tekstitiedostoissa on lisäksi fonttien Unicode-paikat sekä erilaisia ohjauskäskyjä, joita on projektin edetessä määritelty lisää tarpeen mukaan. Käy siis lataamassa fontti vaikkapa Skrollin sivulta http:// skrolli.fi/2015.2 ja kerro kokemuksistasi! Koska seuraava etappi tulee olemaan jonkinlaisen grafiikkakilpailun järjestäminen, ovat myös merkkigrafiikkapiirrokset hyvin tervetulleita – niin värittömät kuin värillisetkin! Unscii muistuttaa tekstimerkkiensä osalta mikrotietokonemaailman järjestelmäfontteja.. Tarvittaessa mallia on otettu myös suosituista tasalevyisistä vektorifonteista, joita ovat DejaVu Sans Mono, Lucida Console, Monaco ja Inconsolata. Näissä koneissa merkeillä on kaksi mahdollista leveyttä: puolileveä (8 pikseliä) ja täysleveä (16 pikseliä)
Teksti: Mikko Heinonen Kuvat: Mikko Heinonen, Manu Pärssinen, Wikimedia Commons Pelit Neo Geo MVS:n pelimoduuli (AES-moduuli oli saman kokoinen). SNK teki menestyneitä kolikkopelejä ja siinä sivussa äärimmäisen pelikonsolin. Koska jokainen pelilevy sisälsi myös kaiken sen pyörittämiseen tarvittavan elektroniikan, oli pelin vaihtaminen toiseen usein huomattava investointi. Mittakaavana NES:n peli. SNK:n vuonna 1990 esitelty tarjokas oli nimeltään Neo Geo Multi-Video System. Kasetit olivat hitaita ja mekanismi epäluotettava, joten järjestelmä ei yleistynyt. Ikarin myötä SNK alkoi varovasti kiinnostua myös kotilaitteiden markkinoista. Peliä saattoi vaihtaa yksinkertaisesti vaihtamalla ROM-moduulin toiseen, ja tarjolla oli myös versioita, joihin sopi useampi peli kerralla. 2 1 5 . Se latasi pelin pieneltä mikrokasetilta, kun kabinetti käynnistettiin. Monivideojärjestelmä syntyy Eräs pelihallien perusongelma oli, että kolikkopelien uusiminen oli kallista. Käytännössä se oli kuin turboahdettu pelikonsoli, joka asennettiin kolikkopelin kabinettiin. Rauta oli tuon ajan mittapuulla erittäin järeää: suorittimina toimivat rinnakkain Motorola MC68000 ja Zilog Z80, grafiikkapiiri puski ruudulle 380 spriteä 4096 värillä, äänet soivat 15 kanavan voimin ja moduuleilla oli muistitilaa jopa 330 megabittiä, myöhemmin pankitettuna vieläkin enemmän. Sen ensimmäiset pelit olivat useimpien aikalaistensa tavoin teknisesti vaatimattomia, eivätkä useimmat niistä kohonneet suuriksi menestyksiksi. Jo varhaisessa vaiheessa tähän markkinarakoon oli tarjoutunut monenlaista yrittäjää, kuten Data Eastin Cassette System. Neo Geo AES:n mukana toimitettiin myös laadukas ohjain.. Kukaan muukaan ei ollut saanut ratkaistua ongelmaa tavalla, joka olisi todella houkutellut pelinkehittäjiä. Laatu parani hiljakseen, mutta vasta vuoden 1986 Ikari Warriors saavutti niin suurta suosiota, että se käännettiin liki kaikille kodeissa käytetyille pelialustoille. Se hankki muun muassa oikeudet kehittää pelejä Nintendo Entertainment Systemille. Etenkin heille, jotka sattuivat olemaan miljonäärejä. MVS olikin välitön menestys. Idea oli pohjimmiltaan yksinkertainen, mutta kukaan ei ollut aiemmin ympännyt sitä näin kyvykkääseen rauEi näin! Siis Noinko Kallis. Pelaajat kuitenkin osasivat vaatia uutuuksia ja vaihtelua pelivalikoimaan. 2 12 S hin Nihon Kikaku -niminen yhtiö syntyi 1970-luvun lopussa Japanin kasvaville kolikkopelimarkkinoille. Tämä panostus ei lopulta tuottanut kuin kaksi peliä, mutta se oli epäilemättä eräänlaista alkusoittoa seuraavalle suurelle seikkailulle: oman pelikonsolin kehittämiselle
Myös CD-version myynti jäi vaatimattomaksi: lähteissä puhutaan alle 600 000 kappaleesta. Eipä silti, itse moduulit olivat myös paljon suurempia kuin kilpailijoilla. Siinä missä esimerkiksi Sega Megadriveä myytiin 40 miljoonaa kappaletta, Neo Geon myynti ei koskaan rikkonut edes miljoonan rajaa. Hopeakiekkoja ja jonglööreita Oli melko selvää, että Neo Geo AES:stä ei voisi koskaan tulla jättimenestystä, jos sen pelit maksaisivat konsolin verran. Teknisten seikkojen lisäksi Neo Geo MVS -emolevy. Edistyneempi CDZ-versio oli sentään varustettu tuplanopeuksisella asemalla. Tämän vuoksi kotija ammattimoduulien nastajärjestykset sotkettiin niin, etteivät ne sopineet ristiin. Vaarana oli, että kekseliäät operaattorit hankkisivat AES:n moduuleita ja peluuttaisivat niitä rahaa vastaan. Kun Neo Geo lopulta saatiin Suomeen, konsolin saattoi saada reilulla puolellatoista tuhannella markalla (nykyrahassa inflaatio huomioiden noin 350 €), mikä ei sinällään ollut kohtuutonta. Pelinsä saattoi jopa tallentaa pelihallissa ja jatkaa sitten kotona tai päinvastoin. Liiankin edistynyttä viihdettä Neo Geo MVS oli käytännössä eräänlainen pelikonsoli ilman kuoria. Neo Geo CD:stä ilmestyi kolme eri mallia, tässä niistä toinen eli ”toploader”.. Oli muutenkin vaikeaa tarjota käytännössä samaa tuotetta kahteen eri hintaan: halvemmalla kuluttajille ja kalliimmalla ammattikäyttöön. Muistikapasiteetiltaan suurimmat pelit maksoivat kuitenkin lähes yhtä paljon kuin itse konsoli, eli jopa kolmintai nelinkertaisesti sen, mihin Nintendon ja Segan asiakkaat olivat tottuneet. Vuonna 1994 SNK yritti uudelleen Neo Geo CD:llä. Mutta SNK tekisi silti konkurssin. Huipputekniikalla on luonnollisesti huippuhinta, joten AES:stä tuli varsin kallis. Ratkaisu laski pelien hinnan murto-osaan entisestä. Alalla, joka on aina kulkenut tekniikan eturintamassa, tämä on hämmästyttävä suoritus. SNK tarjosi sitä ensin lähinnä vuokrakäyttöön ja hotelleihin, mutta päätyi lopulta asiakaspalautteen perusteella julkaisemaan koneen myös myyntiin loppuvuodesta 1990. Konsolin korkeahko hinta oli lopulta pienempi pulma kuin se, että pelit maksoivat aivan poskettomasti. Hulppea hinta oli seurausta siitä, että pelit olivat itse asiassa täsmälleen samoja kuin MVS:llä. Myös itse Neo Geolle julkaistaisiin pelejä vielä yli vuosikymmen myöhemmin. CD-ROMin käytöstä seurasi kuitenkin uusi ongelma, sillä sen lukunopeus ei päätä huimannut. Pelit oli siirretty halvemmalle tallennusvälineelle, josta ne ladattiin konsolin muistiin. Asema toimi 1Xnopeudella eli latasi parhaimmillaan 150 kilotavua sekunnissa. Se oli aikansa tuotteeksi todella edistynyt laite ja tarjosi muun muassa muistikorttipaikan pelin tallennukseen. Kuluttajatuotetta oli kuitenkin varsin hankalaa markkinoida siihen hintaan, joka AES-moduuleihin lätkäistiin. Alle kymmenessä vuodessa käytännössä koko kolikkopeliteollisuus siirtyisi käyttämään vastaavia järjestelmiä. Siksi ei ollut mikään valtava loikkaus tehdä siitä ihan oikeakin pelikonsoli: Neo Geo Advanced Entertainment System. Latauspalkin päällä jonglööraava apina lakkasi huvittamasta varsin pian. Kolikkopeleissä moduulien tuotantokustannukset eivät olleet suurikaan haitta, sillä operoinnissa hyvä peli ansaitsi kyllä hintansa takaisin. 13 taan. Ne vaativat esimerkiksi paljon kalliita muistipiirejä. Tyypillinen kerralla muistiin ladattava osio saattoi olla liki 10 megatavua, joten pelaaja sai tottua odottelemaan
Pachinko-koneiden valmistaja Aruze osti SNK:n vuonna 2000 ja lähes ensi töikseen lopetti sen toiminnot Japanin ulkopuolella. Mukana oli varsin laadukkaan tuntuinen ohjain ja paketissa toimitettiin nippu vanhoja Neo Geo -pelejä muistikortilla. Lisänurinaa aiheutti se, että kaivatun laiteohjelmistopäivityksen sai ainoastaan ostamalla uuden pelipaketin. No sopisiko se taskuun. Kahden miljoonan kappaleen myynti oli SNK:lle paljon, mutta kilpailijaan nähden liki olematonta. Firma on tavallaan edelleen olemassa ja sen konsolit ja pelit nauttivat ansaittua kulttimainetta. SNK teki nopean korjausliikkeen, lopetti Pocketin myynnin ja julkaisi jo seuraavana vuonna Neo Geo Pocket Colorin. Jollain tavalla tämä tosin sopikin kuvioon, sillä Neo Geolla ei ole oikein koskaan pelattu ilmaiseksi. SNK:lla ei ollut tarjota mitään vastaavaa, eikä se onnistunut houkuttelemaan järjestelmälleen ulkopuolisia kehittäjiä. Heitä tosin ilahdutti se, että varsin pian markkinoille saapui sovittimia, joilla AES:llä saattoi pelata MVS:n pelejä. Syykin oli selvä: Game Boysta oli juuri julkaistu uusi Color-versio, kun taas NGP oli varustettu mustavalkonäytöllä. Se oli sitten Sega Game Gearin ensimmäinen konsoli, joka onnistui tekemään minkäänlaista lovea Nintendon monopoliin. 2 14 asiaan vaikutti varmasti myös se, että Neo Geon pelit olivat käytännössä ainoastaan kolikkopelikäännöksiä. Teknisestä etevyydestä huolimatta koneelle ei koskaan ilmestynyt mitään kovin syvällistä pelattavaa, sillä pieni konekanta ei houkutellut julkaisijoita. Pelaamme enemmän SNK:n perustaja Eikichi Kawasaki näki jo ennen konkurssia, että laiva ajaa pian kiville. Kuvaavaa oli, että NGPC:lle myytiin kaapelia, jolla sen saattoi yhdistää toiseen menestyjään – Sega Dreamcastiin. Tällä välin itse yhtiö oli joutunut pahoihin vaikeuksiin. Neo Geo MVS oli jo vanhentunut, sen seuraaja Hyper Neo Geo 64 ei lähtenyt koskaan nousukiitoon ja rahat olivat lopussa. Vanhan Neo Geon kanssa laitteella ei tosin ollut tekemistä kuin nimen ja tiettyjen pelisarjojen verran. Nintendo Game Boyn menestyksestä innostuneena myös SNK päätti kokeilla siipiensä kantavuutta taskupelien markkinoilla. Se oli muuten sama laite, mutta pystyi tuottamaan 2,7 tuuman näytölleen peräti 146 väriä – kolminkertaisesti Game Boy Coloriin nähden. Tekninen tinkimättömyys kuitenkin teki laitteesta liian arvokkaan massamarkkinoille. Niitä taas vapautui operointikäytöstä myyntiin lopulta paljon halvemmalla kuin kotiin tarkoitetut pelit olivat koskaan olleet, mikä teki koko nastajärjestyskikkailusta melko tarpeetonta. Neo Geo Pocketin myynti käynnistyi kovin vaatimattomasti. NGPC kävikin heti kaupaksi aivan eri tavalla. Valitettavasti etenkään ensimmäisen valmistuserän laiteohjelmisto ei ollut totuttua Neo Geo -laatua, mikä suututti monet konsolin vanhat fanit. Vuodesta 2003 yritys on toiminut nimellä SNK Playmore, hallinnoiden lähinnä SNK:n arvokkaimpia pelisarjoja kuten Metal Slug, King of Fighters ja Samurai Shodown sekä niiden käännöksiä eri alustoille. Hän perustikin vähin äänin Playmore Corporationin, jolle SNK:n raadon arvokkaat osat siirtyivät väistämättömän tapahduttua. Vuonna 2012 SNK Playmore antoi Tommo-nimiselle valmistajalle lisenssin tehdä Neo Geosta uusintaversion nimellä Neo Geo X. Sori, Näin Kävi Ei näin! -artikkelisarjan mittapuulla SNK ei ole sieltä epäonnistuneimmasta päästä. Neo Geo Pocket Color.. Tavoilleen uskollisesti NGP:stäkin tehtiin laadukkaan tuntuinen laite: etenkin mikrokytkimillä toteutettu ohjaussauva on edelleen yksi parhaista lajissaan. Tämä ei laivaa kääntänyt, vaan SNK kaatui konkurssiin loppuvuodesta 2001. Pelien äänet pätkivät ja kuvanlaatu oli suttuinen. Tunnetta hukatusta potentiaalista on silti vaikea välttää. 2 1 5 . Hämmentävästi jopa myymättömät, länteen tarkoitetut Neo Geo Pocket Colorit ja niiden pelit kuljetettiin takaisin Japaniin ja paketoitiin siellä uudelleen paikallisille markkinoille. Neo Geo jäi alkuperäisen maineensa vangiksi ja todellisten hardcore-pelaajien herkuksi. Päällimmäinen syy oli varmasti se, että Pokémon-villitys ampui Nintendon ja Game Boyn aivan uudelle kasvu-uralle. Myös hinta oli varmuuden vuoksi ruuvattu yläkanttiin. Pienet myönnytykset massatuotannolle olisivat ehkä varmistaneet suuremman suosion ja sitä kautta tuotekehityksen paremman jatkuvuuden. Neo Geo olisi voinut olla paljon enemmänkin kuin vain pelihallien hirmu ja hc-pelaajien salaseuran jäsenkirja. Kolmas yritys nähtiin vuonna 1998, kun Neo Geo Pocket ilmestyi. Hyvä tekniikka, liki 40 tunnin toiminta-aika yksillä paristoilla ja SNK:n laadukkaat arcade-pelit vetosivat ostajiin aluksi, mutta sitten veto alkoi hiipua. Linux-pohjainen käsikonsoli oli mahdollista liittää Neo Geo AES:n näköiseen telakkaan, jolla se yhdistyi televisioon
Suomen pelimuseo-hanke on syntynyt Vapriikissa sijaitsevan Mediamuseo Rupriikin, Pelikonepeijoonien ja Tampereen yliopiston yhteistyöprojektina. TEHDÄÄN SUOMEN PELIMUSEO YHDESSÄ.. OSALLISTU JOUKKORAHOITUKSEEN: www.mesenaatti.me/suomenpelimuseo Museokeskus Vapriikkiin Tampereelle avataan loppiaisena 2017 Suomen pelimuseo, joka kertoo suomalaisen pelaamisen monikymmenvuotisen historian sen ansaitsemissa puitteissa. 15 Suomalainen pelikulttuuri ansaitsee museon! Tue meitä ostamalla lippu ennakkoon ja pääset tutustumaan museoon jo ennen avajaisia
Vähemmän tunnettuja ovat vanhat ammattilaiskoneet – kuten Unix-työasemat ja -palvelimet. Unix-työasemat eivät ole olleet aikoihin realistisesti varteenotettava vaihtoehto PC-raudalle. Työasemia on usein käytetty myös palvelimina, ja useimmilla valmistajilla on ollut valikoimissaan myös työasemamallien kanssa yhteensopivia palvelinmalleja. Varhainen esimerkki jälkimmäisentyyppisestä koneesta on Xerox Alto (1973), joka tunnetaan graafisen käyttöliittymän ja Ethernetlähiverkon pioneerina. Myöhemmin valmistajat alkoivat keskittyä yksinomaan palvelimiin. Henkilökohtaisen tietokoneen idea nosti kuitenkin päätään kahdelta suunnalta: toiset halusivat rakentaa halvoista mikropiireistä jotain juuri ja juuri tietokoneeksi kelpaavaa, toiset taas unelmoivat laitteista, joissa ”täysiverisen” tietokoneen resurssit keskitettäisiin yhden käyttäjän palvelemiseen. Mikron ja minin ristisiitokset Tietokoneen käyttö oli 1970-luvulla enimmäkseen ositusajoa. Ne poikkeavat viehättävillä ja omituisilla tavoilla vaikkapa Linuxia ajavista PC-koneista mutta ovat kuitenkin sen verran lähellä niitä, että käyttökokemus on samankaltainen. Useilla valmistajilla oli tämän vuoksi talousvaikeuksia, ja ne rupesivatkin keskittymään superlaskentaja palvelinrautaan. 1980-luvun alussa alkoi markkinoille kuitenkin tulla yrityksiä, jotka kehittivät Unix-pohjaisia yhden käyttäjän koneita: Apollo Computer, Sun Microsystems, Silicon Graphics. Niiden tausta on kuitenkin toisenlainen. 2 16 U nix-työasemat ovat työpöytäkokoluokan koneita, jotka on suunniteltu ajamaan jotain Unix-sukuista käyttöjärjestelmää. Työasemakoneita on käytetty etenkin sellaisissa raskaissa ammattitehtävissä, joihin ”varsinaisten” mikrotietokoneiden rahkeet eivät ole riittäneet. Niissä on kuitenkin edelleen oma hohtonsa ja vanhan ajan ammattilaisuskottavuutensa. 80-luvun työasemat perustuvat yleensä Motorolan 68000-sarjan suorittimeen, joka muistuttaa käskykannaltaan edellämainittuja Digitalin minitietokoneita. Ne ovat myös fyysisesti sen verran pieniä, ettei niitä harrastavan tarvitse hankkia varastohalleja laitteiston säilömiseen. Pitkälle viety valmistajakohtaisuus johti myös yhteensopivuusongelmiin eri Unixvarianttien välillä. 2 1 5 . Unix suunniteltiin alkujaan ositusajokäyttöjärjestelmäksi, jota käytettiin tekstipäätteiden yli Digitalin PDP-11ja VAX-minitietokoneilta. Alkujaan avoimesti kehitetty Unix-käyttöjärjestelmä alkoi tällöin kaupallistua ja samalla jakautua valmistajakohtaisiin variantteihin. Myöhemmin myös Digitalin ja IBM:n kaltaiset konkarit hyppäsivät kelkkaan. 1990-luvulla käytössä olivat 32ja 64-bittiset RISCsuorittimet, jotka kukin laitevalmistaja yleensä kehitti ja valmisti itse. Työasemien tuotanto lopetettiin, tai ne vaihdettiin PC-pohjaisiksi. Tällaisia ovat olleet esimerkiksi teollisuussuunnittelu, 3D-grafiikka ja tieteellinen tutkimus. Vuosituhannen vaihteen tienoilla PC-koneet olivat ottaneet Unixtyöasemat jo monin tavoin kiinni. Mitä sillä voi tehdä. Käytöstä poistettuja työasemakoneita rupesi enenevässä määrin päätymään harrastajille. Unix-koneita on harrastettu etenkin rakentamalla niistä palvelimia ja verkkoja. Eri laitteistot ja käyttöjärjestelmät erilaisine hienouksineen ja kommervenkkeineen tuovat touhuun sellaista mielenkiintoisuutta, mitä pelkästä Upeat ja unohdetut Unix-koneet Vanha kotitietotekniikka on monille läheistä. Siinä, missä PC:t ovat alkujaan kotitietokoneita, jotka laajentuivat ammattikäyttöön, ovat Unix-työasemat pikemminkin isojen koneiden kutistettuja versioita. Teksti: Ville-Matias Heikkilä Kuvat: Mikko Torvinen, Wikimedia Commons-käyttäjät Shieldforyoureyes, Zymos, Brian Pitts, Napoli Roma, Thomas Kaiser, Fluff, Modano, Thomas Schanz, allaboutapple.com Rauta
Unix-koneet ovat kaiken kaikkiaan varsin mielenkiintoisia vekottimia. Näyttö liitetään usein 13w3tai koaksiaalirgb-liittimellä eikä millään PC:stä tutulla. Jos koneen levy on tyhjennetty tai poistettu, pääsee harrastaja ensi töikseen etsimään käyttöjärjestelmän ja asentamaan sen. Screenin kaltaiset virtuaalipääteohjelmistot paikkaavat kuitenkin yhteensopivuusongelmat. Asennuksen voi yleensä käynnistää myös verkon yli TFTP:llä, mutta se vaatii usein toisen koneen, joka ajaa samaa käyttöjärjestelmää. Jos siis romun seassa tulee vastaan vanha Unix-työasema, -palvelin tai vaikkapa pääte, kannattaa se ehdottomasti ottaa talteen – ainakin jos vaihtoehtona on vanha kuluttaja-PC-klooni. Ehkä tunnetuin tekstipäätteiden valmistaja on Digital, joka kehitti standardin asemaan nousseen VT100:n. Monista perinteisistä Unix-käyttöjärjestelmistä ilmestyy edelleen uusia päivitysversioita, käytetäänhän niitä edelleen tärkeissä palvelinkoneissa. Esimerkiksi CDEtyöpöytä ja Motif-kirjasto ovat X-ikkunointijärjestelmän ”avoimia” lisäosia, jotka eivät koskaan yleistyneet Linuxpuolella kaupallisuutensa vuoksi. Ongelmia voivat kuitenkin tuottaa vanhojen päätteiden rajalliset väripaletit ja monien uusien ohjelmien hinku OpenGL-rajapintoihin. Se kuitenkin tarkoittaa yleensä valmistajariippumattomuutta eikä vaikkapa koodin julkisuutta. Päätteet koostuvat yleensä kuvaputkinäytöstä, samoihin kuoriin rakennetusta päätelogiikasta ja erillisistä syöttölaitteista, ja ne saa varsin pienellä vaivalla käyttöön niin Unix-koneiden kuin nykyisten Linux-PC:idenkin jatkeeksi. Jos tarjolla on Gnu-ohjelmistopaketteja, ne kannattaa asentaa. Vaikka käytännössä kaikki nykyisin käytetyt pääte-emulaattorit ovatkin VT100-yhteensopivia, on eri valmistajien päätteissä hyvin paljon vaihtelua ohjauskoodeissa. SGI Onyxin liitäntöjä. Asentamisessa voi olla omat konstikkuutensa – esimerkiksi asennus-CD ei välttämättä boottaa ellei CD-aseman blokkikoko ole oikea. Erään harrastajan Unix-työasemakokoelma.. 17 Linux-tunkkauksesta ei saa. Näppäimistöt ja hiiret ovat yleensä täysin vierasta tavaraa. Sunin 64-bittinen UltraSPARC 1 -suoritin. X-ikkunointijärjestelmä on alusta asti käyttänyt asiakas-palvelin-mallia, joten periaatteessa mitä tahansa X-ohjelmaa saa käytettyä X-päätteellä aina nykyisiä webbiselaimia myöten. Nyrkkisääntönä voi pitää, että jos jokin ohjelma toimii Raspberry Pi’n Linuxilla, niin sen saa toimimaan myös 90-lukulaisessa työasemakoneessa. Ongelman voi ratkaista joko juottamalla tai tyytymällä sarjaporttipäätteeseen. Aidon ohjelmiston löytäminen saattaa joskus vaatia hieman tuuria, ja jos sitä ei ole, voi konetta usein testata myös Linuxin tai NetBSD:n kaltaisilla vapailla unixeilla. Valmistajan oma C-kääntäjä osaa yleensä tehdä matalan tason optimoinnit paremmin kohdesuorittimella, mutta GCC on yhteensopivampi ja päihittää korkeamman tason optimoinneissa. Päätteitä on karkeasti kahdenlaisia: RS232liitäntäisiä tekstipohjaisia ”tyhmiä päätteitä” ja Ethernet-verkon yli toimivia graafisia X-päätteitä. Kaupallisten unix-kalujen toiminta eroaa usein jonkin verran Gnusta, mikä aiheuttaa yhteensopivuusongelmia. Kaupallisessa Unix-maailmassa saattaa usein törmätä open-sanaan. Laitteilla voi kuitenkin toki tehdä muutakin. Päätteet Unix-koneita on aina käytetty myös monen käyttäjän palvelimina, joten Unix-rautaa etsiessä törmää varmasti ennen pitkää myös päätteisiin. Omalaatuiset ongelmat Kun Unix-kone on haalittu kotiin, seuraa yleensä joukko ongelmia. SGI Onyxin Geometry Engine GE10näytönohjain. Kiintolevyt, optiset asemat ja jopa korppuasemat ovat useimmiten SCSIpohjaisia kaikissa paitsi aivan peeseemäisimmissä halpismalleissa
Digital Equipment Corporation Digital Equipment Corporation valmisti tietokonekomponentteja jo 50-luvulla. Näiden lisäksi Alphalla voi ajaa OpenVMS:ää ja jotenkuten jopa Windows NT:tä. SGI:n kehittämiä ovat myös Playstation 1:n ja Nintendo 64:n näytönohjauslaitteistot, ja molemmat konsolit käyttävät SGI-työasemien tapaan MIPS-suorittimia. Alphalla ajettava Unix-variantti oli aluksi nimeltään OSF/1, josta se vaihtoi nimensä ensin Digital Unixiksi ja sitten Tru64:ksi. Silicon Graphics Silicon Graphics perustettiin Sunin tapaan 1982. Ultrix toimii VAXin lisäksi myös PDP-11:ssä ja MIPS-pohjaisissa DECstation-työasemissa. Sun on rampauttanut tahallaan halvempien työasemiensa ominaisuuksia, jotta kalliimmat koneet vaikuttaisivat riittävän paljon paremmilta. 32-bittinen SPARCstation 1 oli vuonna 1990 Jyrki J. Yhtenäismuistiarkkitehtuurin ansiosta koko enimmillään gigatavun muistikapasiteetti on käytettävissä näytönohjaukseen. Firma siirtyi 68000:sta MIPS-arkkitehtuuriin vuonna 1986 ja osti MIPSin kokonaan itselleen 1992. Sunin osti vuonna 2009 tietokantayhtiö Oracle. Kasvin ”unelmamikro”, joka jäi sadan tonnin hinnastaan johtuen pelkäksi haaveeksi. J. IRIX-käyttöjärjestelmällä ja sen myötä myös SGI-raudalla on huono maine palvelinkäytössä kilpailijaansa Suniin nähden reikäisyytensä ja epävakautensa vuoksi. DEC:n osti vuonna 1998 PC-raudasta tunnettu Compaq, jonka taas osti Hewlett-Packard vuonna 2002. Sunin Unix-variantti on nimeltään SunOS tai Solaris. Silicon Graphics International, joka on lakiteknisesti eri firma kuin vuonna 2009 konkurssin tehnyt alkuperäinen SGI, keskittyy X86-pohjaisiin supertietokoneisiin ja palvelimiin. Vaikka VAXin oletuskäyttöjärjestelmä onkin firman oma VMS, joka ei ole mitään sukua Unixille, oli sille alusta asti tarjolla myös DEC:n oma Unix-variantti Ultrix. 2 18 Sun Microsystems Sun Microsystems perustettiin 1982, ja 68000-pohjainen Sun-1 julkaistiin samana vuonna. Viimeiseksi Alphaksi jäi vuonna 2004 ilmestynyt 21364, kun HP päätti keskittyä superlaskennassa PA-RISCja IA64-laitteistoihin.. Suosituimpiin SGI:n työasemiin kuuluu vuonna 1996 julkistettu ”edullinen” O2, jonka yläpään malleissa on muun muassa sisäänrakennettu kamera. SGI on profiloitunut alusta asti 3D-grafiikkaan, ja etenkin 90-luvun Hollywood-tietokonegrafiikka antoi sille nimeä ja näkyvyyttä. Kun Skrollin päätoimittaja kymmenen vuotta myöhemmin hankki kyseisen laitteen, pyydettiin siitä enää 150 markkaa. Solaris on saatavilla myös X86:lle ja on käytettävissä ilmaiseksi ei-kaupalliseen käyttöön. Esimerkiksi halvoissa näytönohjaimissa on käytetty PC:stä tuttuja piirejä, joiden kiihdytysominaisuuksia ei kuitenkaan tueta lainkaan. Jurassic Park -elokuvan surullisenkuuluisessa Unix-hakkerointikohtauksessa esiintyy 64-bittinen Crimson-työasema, joka ajaa kolmiulotteista fsn-tiedostonhallintasovellusta. 2000-luvulla varsin yleisiä työpöydillä ovat olleet graafiset Sunray-päätteet, joiden hienoutena on mahdollisuus istunnon ”siirtämiseen” päätteeltä toiselle id-kortin avulla. Sen ensimmäinen tuote oli IRIS 1000 -grafiikkapääte, mutta IRIS 2000 ja 3000 olivat jo täysverisiä Unix-työasemia. 2 1 5 . Indigo-työasemassa näytönohjauslaitteisto voi olla suurempi kuin koneen varsinainen emolevy. Vuonna 1992 DEC otti käyttöön oman 64-bittisen RISC-arkkitehtuurinsa, Alphan. Vuonna 1987 julkistetussa Sun-4:ssä yhtiö siirtyi omaan SPARC-suoritinperheeseensä. DEC:n ensimmäisenä Unix-työasemana voidaan pitää VAX-pohjaista VAXstationia, joka tuli markkinoille 1984. MIPS ja IRIX hylättiin jo aikapäiviä sitten. Edelleen teollisuusstandardin asemassa oleva OpenGL-grafiikkarajapinta syntyi alun perin vuonna 1992 IRIS GL -grafiikkakirjaston pohjalta. SPARC-suorittimien ja niitä käyttävien supertietokoneiden kehitystyö jatkuu edelleen. Unix kehitettiin alkujaan DEC:n PDP-8ja PDP-11-minitietokoneilla, mistä se käännettiin myös 32-bittisille VAXkoneille 70-luvun lopulla. Alpha on tunnettu laskentanopeudestaan, ja myös itse Cray valitsi sen 90-luvun supertietokoneisiinsa. Alphan oli jossain vaiheessa tarkoitus syrjäyttää myös PC:n X86, ja harrastajien käsiin päätyneet Alpha-laitteet ovatkin usein nimenomaan Alpha-suoritinta käyttäviä PC-emolevyjä. O2 oli parina vuonna Suomen Assemblyilläkin kilpailupalkintona. Sunraylla voi etäkäyttää niin X-ikkunointia kuin Windowsiakin. Myös IDE-levyohjainten ajurit ovat täysin suoritinvetoiset. SGI on 3D-kiihdytyslaitteiston pioneereja. Solariksella ja Sunin raudalla yleensäkin on erityisen hyvä maine palvelinkäytössä, jossa se on osannut hyvin hyödyntää isoja suoritinmääriä
HP:n tekstipäätteet eivät ole VT-yhteensopivia, oletusarvoinen C-kääntäjä soveltuu lähinnä vain HP:n oman koodin kääntämiseen, merkistöt ja komentoargumentit ovat erilaiset ja niin poispäin. NeXT Computer, NeXTcube ja NeXT station perustuvat Motorolan 68030ja 68040-suorittimiin ja multimediapotkua antavaan 56001-DSP:hen. POWERin pikkuveljeksi tuli Applen ja Motorolan kanssa yhteistyössä kehitetty PowerPC, jota on käytetty myös tavallisten kuolevaisten koneissa. Käyttöjärjestelmänä NeXTeissä on NeXTSTEP, joka on Mach-mikroytimeen ja BSD:hen perustuva Unix – eivätkä muutkaan yhtäläisyydet myöhempään Applen Mac OS X:ään ole sattumaa. Varhaiset HP 9000:t käyttivät 68000-suorittimien lisäksi myös pinopohjaisia FOCUS-suorittimia. IBM oli kuitenkin pitänyt sitä pöytälaatikossa vuosikaudet, joten muut ehtivät tuotteistaa riscinsä ensin. HewlettPackard Hewlett-Packard on valmistanut erikokoisia tietokoneita ja laskimia oheislaitteineen 1960-luvulta alkaen. Suurkoneluokan mikroprosessorien kehitys on IBM:llä edelleen hyvin käynnissä. Nämä koneet tukevat IBM:n oman Unix-variantin AIXin lisäksi myös Linuxia ja AS/400:n peruja olevaa IBM i -käyttöjärjestelmää. Vaikka se onkin sinänsä tehokas ja luotettava, se tekee monet asiat eri tavoin kuin muiden valmistajien unixit. IBM 6150 eli RT PC perustui PC-koneissa käytettyyn PS/2-runkoon, mutta suorittimeksi oli vaihdettu IBM:n oma ROMP. Korppujen sijaan NeXTit käyttävät magneto-optisia levyjä, joiden kapasiteetti on 256 megatavua. Myöhemmin System p yhdistettiin System i:hin eli entiseen AS/400:aan, jolloin muodostui Power Systems -niminen palvelinja supertietokoneiden mallisto. HP:n Unix-käyttöjärjestelmä HP-UX on monille edelleen kirosana. PA-RISCin tilalle tuli vuonna 2003 Intelin IA-64 eli Itanium, minkä myötä fiktiiviseen HAL 9000:een viittaavasta mallinimestä vihdoinkin luovuttiin. Lisäksi HP osti vuonna 1989 Apollo Computerin, jolla oli omia työasemiaan. Nykyiset HP-UXia ajavat koneet ovat Itanium-pohjaisia HP Integrity -palvelinkoneita. NeXTSTEPistä on olemassa myös X86-, SPARCja PARISC-koneilla toimiva versio OpenStep.. NeXT Steve Jobsin vuonna 1985 perustaman NeXTin historia jäi varsin lyhyeksi, mutta se sai 1990-luvun kynnyksellä julkaistua muutaman Unix-työaseman, jotka ovat merkittäviä muutenkin kuin kuutionmuotoisten koteloidensa vuoksi. HP-UXin lisäksi ne ajavat myös Linuxia, Windows Serveriä ja yritysostojen myötä HP:lle tulleita NonStopia ja OpenVMS:ää. Tarjolla oli myös erillinen RISC-kiihdytinkortti omine näytönohjaimineen, mutta ohjelmisto ei koskaan hyödyntänyt sitä kunnolla. Suosituimpia PA-RISC-työasemia ovat olleet PC:n kilpailijoiksi 1990-luvun puolivälissä tarkoitetut 32-bittiset 712 ja 715, joihin PC:n näppäimistöt, hiiret ja näytöt käyvät suoraan, mutta jotka päihittävät esimerkiksi 2D-näytönkäsittelyn nopeudessa aikakauden PC:t reilusti. POWER-suorittimien ohella IBM on kehittänyt zEC-suorittimia, jotka huipputehokkuudestaan huolimatta ovat edelleen konekieliyhteensopivia IBM:n 60-luvun lippulaivan S/360:n kanssa. Esimerkiksi järjestelmäohjelmistot on kirjoitettu Objective-C:llä, ja X-ikkunoinnin sijaan on käytössä oma grafiikkaratkaisu omine käyttöliittymäinnovaatioineen. Näistä siirryttiin 80-luvun loppupuolella HP:n omaan PA-RISC-arkkitehtuuriin. Intel jatkaa Itanium-suoritinten kehitystyötä edelleen. 19 International Business Machines Suurista keskuskoneistaan ja PC:stä tunnettu tietotekniikkapioneeri IBM tuli Unix-työasemamarkkinoille vuonna 1986. IBM vaihtoi järjestelmäperhei densä brändäystä vuosituhannen vaihteessa, ja RS/6000:sta tuli täl löin System p. ROMPia voidaan pitää ensimmäisenä RISC-mikroprosessorina, olihan IBM kehittänyt sen jo 1981. ROMPin syrjäytti vuonna 1990 POWER, jota käyttävät työasemat, palvelimet ja supertietokoneet saivat yhteisen nimen RS/6000. Unix-maailmaan HP siirtyi vuonna 1984 aloittamansa HP 9000 -malliston myötä
Siinä missä käytännön any% ja 100% on suunniteltu pelattavaksi siten, että ne voi suorittaa oikea ihminen oikealla raudalla, TAS poistaa ihmisen yhtälöstä. Jos pelin saa pelaamalla tilaan, jossa esimerkiksi jokin valikoista muuttuu heksaeditoriksi, on tätä sallittua käyttää. Jos glitchaamalla pääsee pelin ensimmäisestä kentästä suoraan viimeiseen, ei tätä suinkaan jätetä hyödyntämättä. Hämärää historiaa Speedrunien historiaa on vaikea selvittää, sillä niitä on todennäköisesti ollut yhtä kauan kuin läpipelattavia pelejä ylipäätään. Kysymyksiä riittää yhtä paljon kuin katsojiakin. Siinä missä any%-peluun aikana tavoitellaan vain lopputekstejä, 100%-juoksussa toteutetaan myös jokainen pelin sisäinen tavoite. Haastetta ja mielenkiintoa kasvatetaan tästä hakemalla nopeinta läpipeluuta, kun tietyllä tavalla glitchaaminen ei olekaan sallittua. Yleensä TAS:eissa käytetään emulaattoria, joka mahdollistaa pelaaSpeedrunien vimma Ennätysjahtia ja huimaa viihdettä Speedrunit ovat nousseet nettija striimiyhteisön suosioon viime vuosien aikana – mutta mitä ne oikeastaan edes ovat. 2 1 5 . Pelaaja voi käynnistää pelin uudestaan niin monta kertaa kuin haluaa tai skipata pelistä niin paljon kuin haluaa, kunhan käyttää pelistä löytyviä tekniikoita. Samalla kun uusia tekniikoita löytyy, luodaan myös uusia speedrun-kategorioita. Häiriön voi aiheuttaa monilla tavoin riippuen siitä, miten ja mille alustalle peli on tehty. Uusia rajoituksia syntyy haasteen etsimisestä ja pelin pitämisestä mielenkiintoisena sitä paljon pelaavalle. Teksti: Eric Hartin Kuvat: Sakari Leppä, Eric Hartin, Mikko Heinonen. Ennen nykymuotoista internetiä niiden levittäminen on kuitenkin ollut kuitenkin vaikeaa, sillä suoritus on pitänyt nauhoittaa VHSkasetille tai DVD:lle. 2 20 T äytyykö koko peli pelata läpi. Viimeaikainen speedrun-innostus johtunee siitä, että Youtuben ja Twitchin aikakaudella kuka tahansa voi nauhoittaa itsensä haluamaansa peliä tahkoamassa. Tästä on hyötyä etenkin silloin, kun se mahdollistaa pelin nopeamman läpipelaamisen. Näin varsinkin vanhojen Nintendoja Super Nintendo -pelien suoritukset ovat saavuttaneet yleisön, joka arvostaa taitavaa pelaamista. Entä jos, entä jos.... any%, 100% Karkein jako speedrunien välillä voidaan tehdä niin sanottujen any% ja 100% -kategorioiden välillä. Joudumme esimerkiksi vastaamaan uuteen kysymykseen: mikä ylipäätään lasketaan läpipelaamiseksi. Joitain vanhempia esimerkkejä löytyy silti. Kelpaako se, jos näkee lopputekstit. Siitä on vaikea parantaa tavalla, joka tekisi läpäisyn mielekkääksi toisella tai kolmannella kerralla. Yksinkertaisimmillaan speedrunissa läpäistään videopeli mahdollisimman nopeasti. Näin suoritus saatiin muotoon, jossa sen pystyi lataamaan vanhan koulukunnan modeemillakin. Oma kategoria itsessään on niin sanottu TAS, eli Tool-Assisted Speedrun. Quakessa pelinsä pystyi nauhoittamaan pieneksi datatiedostoksi, joka sisälsi ainoastaan pelaajan toiminnot. Jos Pokemonin läpäisee 20 sekunnissa, luodaan uusia kategorioita, joihin panostaa – 20 sekunnin läpipeluu kun on mielenkiintoinen vain sen yhden kerran. Glitchaaminen, eli pelien saattaminen hetkellisesti häiriötilaan, on yleistä varsinkin koneavusteisissa speedruneissa. Yleensä kategorioiden määrä kielii siitä, että peliä on pelattu ja pelataan edelleen paljon. Ensimmäiset varsinaista julkisuutta saaneet speedrunit olivat Quaken Quake Done Quick -demot. Tämän vuoksi speedruneihin on luotu kategorioita, joita on useita erilaisia jokaiselle pelille. Speedrunien työkalut ovat yleensä vapaat. Tarkemmin tutkiessa asia monimutkaistuu. Ei ole lainkaan tavatonta, että speedrun-videon kommenteissa epäillään, onko tässä todella pelattu peli läpi vai kenties huijattu
Jos aihe kiinnostaa eivätkä speedrunit olleet ennestään tuttuja, tämän parempaa aikaa niiden löytämiselle ei olekaan. Toisaalta tarkoituksena on saada kelloon nopein aika millä keinolla hyvänsä, mutta yhtälailla saatetaan tavoitella viihdyttävää läpipeluuta. Mega Manista tehdyn koneavusteisen läpipeluun pääasiallinen tarkoitus on esitellä Mega Man -moottorin erikoisuuksia pikemminkin kuin juosta peli läpi ennätysajassa. Tämä on kuitenkin täysin kelvollinen ja luvallinen tapa pelata. Lisätietoja: • Speed Demos Archive http://www.speeddemosarchive.com • Summer Games Done Quick http://www.gamesdonequick.com • TASvideos http://tasvideos.org Mieleenpainuvia speedrun-ennätyksiä Ninja Gaiden, 12 minuuttia Ninja Gaidenin ennätykset ovat siitä mielenkiintoisia, että pelin vanhuudesta ja läpipeluiden verrattaisesta lyhyydestä huolimatta peliä ei glitchata tekemään outoja asioita, vaan läpipeluut ovat rehtejä ja pikaisia juoksuja paikasta A paikkaan B. Quake Done 100% Quickestissa pelataan peli alle 50 minuutissa läpi – ja samalla ammutaan jokainen vihollinen ja tutkitaan jokainen salahuone.. Ei olekaan ihme, että aikojen saatossa siitä on löydetty jos jonkinlaisia kikkoja. Se myös hyväksyy läpipeluita useassa eri formaatissa: ne voidaan jaotella esimerkiksi osittaisiin juoksuihin ja juoksuihin, jotka on tehtävä yhdellä kertaa tai joissa sallitaan pelin käynnistäminen välissä. Koneavusteisille läpipeluille onkin oma sivustonsa, TASvideos. Mega Man, 12 minuuttia 23 sekuntia Myös Mega Man on dokumentoitu tarkkaan ja myös siitä on löydetty vuosien varrella lukemattomia temppuja. 21 misen ruutu ruudulta, itse kirjoitettuja peliä pelaavia botteja tai kumpaakin yhtä aikaa. Alun perin kolikkopelisuorituksia kirjaava Twin Galaxies on speedrun-yhteisön mielestä kelvoton kirjaamaan speedrun-suorituksia: se haluaisi nimittäin kieltää läpipeluut, joissa peli glitchataan. Sivustolla listataan rutkasti asioita, joiden täytyy olla kunnossa, ennen kuin nauhoitus hyväksytään. Alle kahdessa minuutissa suoritettu suoraan lopputeksteihin hyppäävä läpipeluu näyttää helpolta, mutta taustalla on pikkutarkkaa muistimanipulaatiota pelin aikana. Jos peli läpäistään hyppäämällä ensimmäisestä ruudusta lattian läpi suoraan lopputeksteihin, jää viihdearvo olemattomaksi. Super Mario World, 1 minuutti 41 sekuntia Super Mario World on Super Nintendon ehkä dokumentoiduin peli. Sivusto hyväksyy pääosin vain alkuperäisillä alustoilla tehtyjä läpipeluita – emulaattorisuorituksia ei hyväksytä, sillä niistä on vaikeampi nähdä, onko peluu koneavusteinen vai ei. Vaikka TAS on luotu näyttämään pelin rajat, tavoitellaan siinäkin usein viihdyttävää esitysmuotoa. Pääasiassa tämä tarkoittaa, että peliä ei ole muokattu millään tavalla, ja että emulointi täyttää tietyt hyvin tarkat kriteerit. Quake, 48 minuuttia Ja mikäli pelkkien glitchien tiiraaminen alkaa väsyttää, voi aina seurata Quakea. Ihan kaikkea ei sekään hyväksy. Mega Man X & X2, 2 tuntia 43 minuuttia Koneavusteisissa läpipeluissa kahden tai useamman pelin pelaaminen samoilla syötteillä, eli pelaamalla kahta peliä yhtaikaa yhdellä ohjaimella, on jo vanha juttu. Eritoten kesällä nähtävä Summer Games Done Quick on uusienkin speedrun-katsojien mieleen, sillä sen aikana nähdään kymmenien pelien läpipeluut oivallisen selostuksen ja kikkojen selitysten kera. TAS:issa näytetään missä pelin rajat kulkevat ja millaisia ne ovat. Sen tekeminen oikeasti pelaamalla on sen sijaan harvinaisempaa. Monia koneavusteisia läpipeluita varten saatetaan avata peli ja tutkia, missä ohjelmakoodin muistipaikat kulkevat. TAS:in suunnittelu saattaa kestää useita kuukausia ja vaatia jopa vuosien ennakkosuunnittelua. Toisekseen läpipeluun tulee olla nopeampi kuin aikaisemmat suoritukset päästäkseen sivustolle – tai ainakin huomattavasti viihdyttävämpi. Tavoitteet vaihtelevat Speedrunin tekoa lähestytäänkin usein monesta kulmasta. Speedruneilla, kuten monilla muillakaan yhteisöillä, ei ole monoliittistä tuomarointielintä. Kenties tällä hetkellä käytetyin sivusto on Speed Demos Archive, joka oli alkujaan omistautunut Quake-läpipeluille. Joskus nämä tavoitteet ovat toistensa kanssa yhteensopimattomat. Hyvä esimerkki siitä, mitä voi tehdä, kun pistää tarpeeksi aikaa lempipeleihinsä. Monesti päätavoite ei olekaan nopein läpipeluu, vaan pikemminkin pelin bugien ja ominaisuuksien esittely
Käytännössä se tarkoittaa seuraavan rivin lisäämistä projektin .yaml-tiedoston Requires-kohtaan: qt5-qtdeclarative-import-sensors >= 5.2 Näin tarvittavat rajapinnat asennetaan puhelimeen samalla kuin itse sovelluskin. Tässä artikkelissa opettelemme hyödyntämään niitä ohjelmallisesti. accuracy: Kertoo lukeman tarkkuuden (arvo 0–1). 2 1 5 . Keskitymme artikkelissa QML-rajapintoihin, mutta käytettäville QML-objekteille on lähes suorat vastineet myös Qt:n C++-rajapinnassa. Se otetaan käyttöön lisäämällä määrittelyn alkuun seuraava rivi: import QtSensors 5.2 Antureiden QML-rajapinta ei ole välttämättä puhelimessa valmiina, joten ohjelmaprojektiin on lisättävä ajonaikainen riippuvuus kyseisiin rajapintoihin. Koodi. Kiihtyvyysanturi Accelerometer AccelerometerReading x, y, z: Tyypiltään qreal. Ohjelman testaamiseen tarvitaan siis oikea Jolla-laite. Ilmoittavat kulmanopeuden akseleiden ympäri. Tärkeimmät perityt ominaisuudet ovat dataRate, active ja reading. Valitettavasti esimerkkiohjelmaa ei voi täysin testata Sailfishin kehitysympäristön virtuaalikoneessa, sillä useimmille Jollan oheislaitteille ei toistaiseksi ole minkäänlaista emulaatiota. dataRate-ominaisuuden avulla annetaan mittaustaajuus hertseinä. Rajapinta perustuu Sensor-olioon, josta periytetään kaikille anturityypeille oliot. Ilmoittavat kiihtyvyyden akseleiden suuntaan. Teksti ja koodi: Asser Lähdemäki Kuvat: Mitol Meerna, Asser Lähdemäki Anturi Perusolio Lukemaolio Lukemaolion ominaisuuksia Kompassi Compass CompassReading azimuth: Tyypiltään qreal. 2 22 J olla-puhelin sisältää älypuhelimille tyypillisiä antureita ja oheislaitteita, esimerkiksi kompassin, kiihtyvyysanturin ja gyroskoopin. Asettamalla active arvoon true anturi alkaa lähettää mittausarvoja. Artikkelin esimerkkiohjelma on testattu Qt 5.2ja Sailfish OS 1.1.4.29 (Äijänpäivänjärvi) -versioilla. Gyroskooppi Gyroscope GyroscopeReading x, y, z: Tyypiltään qreal. Oletamme, että Sailfish Silica -käyttöliittymien oliot ovat lukijalle tuttuja. Joillakin muilla versioilla esimerkit eivät ehkä toimi ilman pieniä muutoksia, vaikka rajapinnat pyritäänkin pitämään yhteensopivina eri versioiden välillä. Nyt on sopiva aika ottaa peräsimestä tukevampi ote ja suunnata syvemmille vesille. Anturit ja lukemaolioiden ominaisuuksia. Taulukko 1. Kertoo kulman suhteessa pohjoiseen. Aloitetaan purjehdus opettelemalla Jollan antureiden käyttöä. Mittausdataa irti Jollasta Sailfish-ohjelmointi, osa 2 Skrollin numerossa 2014.2 tutustuttiin Sailfish-ohjelmoinnin perusteisiin. Anturirajapinta Antureita luetaan melko yksinkertaisen oliorajapinnan kautta
reading.azimuth : property real accuracy: readingReady . Kaikki lukemaoliot perivät ominaisuuden timestamp, jossa on viimeisimmän mittausarvon aikaleima mikrosekunteina. Se osoittaa lukemaolioon, joka periytyy Reading-oliosta. // Muita ohjauskomponentteja SectionHeader { text: qsTr("Indicators") } CircleIndicator { anchors.horizontalCenter: parent.horizontalCenter anchors.top: content.bottom value: Math.abs(360 sensor.angle) maxValue: 360 } } } Listaus 1. Jälkimmäisellä asetetaan lukeman tulkintamoodi, kun laite käännetään eri asentoon. Kuva 1. Arvot siis muuttuvat puhelimen asennon mukaan. Olion laskeman arvon havainnointia varten on toteutettu CircleIndicator-komponentti, joka näkyy kuvassa 2. Kuva 2. Toisin sanoen puhelimen USB-liittimen puoleinen pää vastaa perinteisen kompassin neulan pohjoiseen osoittavaa päätä. Akselit ja positiiviset kiertosuunnat. Kolmannessa sarakkeessa on kyseisen anturityypin lukemaolio ja neljännessä sen hyödyllisimmät ominaisuudet. 23 Arvot luetaan reading-ominaisuuden avulla. Kompassin käyttö Tämän artikkelin esimerkkiohjelma on jaettu Sailfishille ominaisesti eri sivuihin. Artikkelissa käytetyt anturioliot ovat taulukossa 1. Antureiden aikaleimat riippuvat rajapinnan toteutuksesta, ja eri antureiden aikaleimojen ei taata olevan synkronoituja keskenään. Sensor-olion muista ominaisuuksista mainittakoon skipDuplicates ja axesOrientationMode. Kompassisivun koodi. Esimerkkiohjelman kompassisivu.. Ensin mainitun avulla estetään lukeman muutoksesta ilmoittava readingChanged-signaali, kun perättäiset lukemat ovat samat. Muut ominaisuudet riippuvat anturista ja sen lukemaoliosta. Koodilistauksissa kolme pistettä tarkoittaa, että kohdasta on poistettu selitettävän asian kannalta epäolennaista koodia. Saman anturin aikaleimojen erotukset kertovat tarkasti kahden mittauksen välisen ajan, mutta esimerkiksi kiihtyvyysja kulmanopeuslukemien aikaleimojen erotus ei välttämättä anna mittaustapahtumien välistä aikaa luotettavasti. Akselit on oletuksena sidottu puhelimeen, kuten kuvassa 1 on esitetty. Jokaisen esitellyn anturin lukemiselle on omat sivunsa. import QtQuick 2.0 import Sailfish.Silica 1.0 import QtSensors 5.2 import "../components" Page { id: root property bool readingReady: sensor.reading != null Compass { id: sensor active: activationSwitch.checked dataRate: 25 property int angle: readingReady . reading.calibrationLevel : } Column { id: content width: parent.width PageHeader { title: qsTr("Title") } SectionHeader { text: qsTr("Controls") } TextSwitch { id: activationSwitch text: qsTr("Running") anchors.horizontalCenter: parent.horizontalCenter checked: true } ... Listauksessa 1 on kompassin käyttöesimerkki. Kompassiolio ottaa anturilta saadut arvot ja laskee niistä maan magneettisen pohjoisnavan suuntaisen viivan ja positiivisen y-akselin suunnan välisen kulman. Kompassianturi mittaa maan magneettikenttää ja antaa tuloksena x-, yja z-komponentit. Oletuksena käytetään puhelimen pystyasentoa riippumatta laitteen todellisesta asennosta
Esimerkiksi jos laitetta pyöräyttää pöydällä, mittaus antaa yhdelle akselille aluksi suuren arvon, joka sitten pienenee pyörimisen hidastuessa. Esimerkkiohjelmassa näkyvä punainen neliö liikkuu pystyja vaakasuunnassa kiihtyvyyden yja x-komponenttien mukaan. sensor.reading.y : 0) : z_pos: zSwitch.checked . ... Lisäksi esimerkkiohjelmassa on toteutettu muita sivuja, jotka havainnollistavat esimerkiksi paikannusta, järjestelmän rajapintoja, äänitehosteiden toistamista ja kameran käyttöä. Row { width: parent.width TextSwitch { width: parent.width / 3 id: xSwitch text: "X" } ... sensor.reading.z : 0) : max_pos_abs: 15 } } Listaus 2. Esimerkkiohjelma on saatavissa sivulta http:// skrolli.fi/2015.2. Kiihtyvyydet on ilmoitettu lukuarvoina ja havainnollistettu liikkuvalla neliöllä. Näpäytysanturilla voi toteuttaa näpäytyseleitä. Läheisyysanturi kertoo, onko puhelimen yläosassa sijaitseva anturi peitetty vai ei. Valoisuusanturille on kaksi oliota, joista toinen mittaa suoraan valoisuutta. Kulmanopeudet ilmoitetaan radiaaneina sekunnissa. (readingReady . Kiihtyvyyden mittauksessa on otettava huomioon, että painovoiman aiheuttama putoamiskiihtyvyys on mukana mittaustuloksessa. Muita antureita ovat esimerkiksi valoisuus-, läheisyysja näpäytysanturit. // Y ja Z TextSwitchit } SectionHeader { text: qsTr("Indicators") } Label { x: Theme.paddingLarge width: parent.width 2 * Theme.paddingLarge text: qsTr("along X-axis: %1<br>along Y-axis: %2<br>" + "along Z-axis: %3") .arg(readingReady . sensor.reading.x : 0) .arg(readingReady . Painovoiman vaikutuksen voi poistaa laskennallisesti, joskin tulos on epätarkka. Näitä ominaisuuksia käsitellään mahdollisesti Skrollin tulevissa numeroissa. Eikä se tähän lopu Jolla tarjoaa monia muitakin antureita, joista osalle on toteutus esimerkkiohjelman koko versiossa. Kiihtyvyysmittaussivu. Z-komponenttia havainnollistetaan muuttamalla neliön kokoa. Ainoastaan mittaustulosten etumerkkejä on muutettu, jotta havainnollistuksessa neliö liikkuisi luonnollisiin suuntiin. Kiihtyvyysanturin lukeminen. Ohjelman käyttöliittymän kytkimillä X, Y ja Z voidaan asettaa akseleiden mittauksen havainnollistus pois päältä. Kulmanopeuden mittaussivu on lähes identtinen kiihtyvyyden mittaussivun kanssa, ja siinä käytetään samaa havainnollistustapaa. 2 1 5 . sensor.reading.y : 0) .arg(readingReady . Lisätietoa QML-anturirajapinnan dokumentaatio: http://doc.qt.io/qt-5/qtsensors-qmlmodule.html. Listauksessa 2 on ohjelmakoodi kiihtyvyyden lukemiseen, ja ohjelman käyttöliittymä näkyy kuvassa 3. (readingReady . Kuva 3. sensor.reading.z : 0) } } AccelerationIndicator { anchors.bottom: parent.bottom height: parent.height content.height x_pos: xSwitch.checked . (readingReady . Ohjelma on monilta osin sama kuin kompassiesimerkissä, joten yhteiset osat on merkitty koodissa kolmella pisteellä. Kulmanopeuden mittaus kertoo, kuinka nopeasti laite pyörii akseleidensa ympäri. 2 24 Liiketilan ja asennon muutokset Kiihtyvyyteen ja kulmanopeuteen päästään käsiksi Accelerometerja Gyroscope-olioiden kautta. Kiihtyvyys ilmoitetaan perusyksikössä m/s². Accelerometer { id: sensor alwaysOn: true active: activationSwitch.checked dataRate: 10 } property bool readingReady: sensor.reading != null Column { id: content width: parent.width PageHeader { title: qsTr("Acceleration including gravity") } SectionHeader { text: qsTr("Controls") } ... Kuvassa 1 on vakioasetuksilla käytetyt akselit ja kiertosuunnat, joiden suhteen kiihtyvyys ja kulmanopeus mitataan. Parannusehdotukset esimerkkisovellukseen ovat tervetulleita. -sensor.reading.x : 0) : y_pos: ySwitch.checked . Toinen valitsee anturin arvojen perusteella määrätyn arvon, esimerkiksi ”hämärää” tai ”kirkasta”
Crouton ei ole virtuaalikone kuten vaikkapa VirtualBox tai VMware. Vaikka C720:ssä on nopeampi suoritin, se ei kuitenkaan ole itsestään selvästi parempi vaihtoehto, sillä muisti on vanhemmasta mallista poiketen integroitu kiinteästi emolevylle ja asemaksi kelpaa vain M.2/NGFF-tyyppinen SSD-kiintolevy. Rajoittunutta ohjelmatarjontaa ja riippuvuutta pilvipalveluista voi onneksi helpottaa asentamalla laitteeseen täysiverisen Linux-työpöydän, joka toimii rinnakkain Chrome OS:n kanssa. Hankkeen sivut ja tiedostot sijaitsevat osoitteessa https:// github.com/dnschneid/crouton. Teksti: Markku Reunanen, Tero Heikkinen Kuvat: Markku Reunanen, Tero Heikkinen, Chris Helenius Rauta. Vankilasta ei ole pääsyä kuin hyvin rajallisesti Chromen puolelle, mikä pitää käyttöjärjestelmätiedostot turvallisesti erossa toisistaan – Croutonilla on siis käytännössä mahdotonta sekoittaa konetta käyttökelvottomaan kuntoon. Merkittävä hyöty perinteisempään dualboot-järjestelyyn verrattuna on se, että konetta ei tarvitse käynnistää uudelleen, vaan sekä natiiveja että Linux-ohjelmia voi ajaa samaan aikaan. Lyhyesti selitettynä kyse on chrootvankilasta, jossa Linux-jakelun kuten Ubuntun kaikki tiedostot säilytetään yhdessä Chrome OS:n hakemistossa (/usr/local/chroots). Croutonin voi toki asentaa muillekin Chromebookeille, mutta ARM-pohjaisissa laitteissa ei tueta esimerkiksi grafiikkakiihdytystä lainkaan, joten hyödyt jäävät niillä selvästi pienemmiksi. Molemmat ovat varmoja valintoja Crouton-koneeksi, sillä ne ovat laajalle levinneitä, jo iäkkäitä malleja – ja juuri siksi hyvin tuettuja. Chrome OS -laitteita voisi hyvin kutsua Google-päätteiksi, sillä ne on sidottu tiukasti hakukonejätin verkkopalveluihin aina sisäänkirjautumisesta lähtien. Koneet eroavat muutenkin varustukseltaan: C710:ssä on vielä Ethernet sekä HDMI:n lisäksi VGA-liitin, siinä missä tuoreemmassa mallissa pitää pärjätä pelkällä langattomalla verkolla ja HDMI:llä. Sen voi helposti vaihtaa, mutta laitekokonaisuuden hinta nousee samalla ja takuuhuollossa saatetaan nikotella rikkinäisen tarran vuoksi. Googlella työskentelevän David Schneiderin luomus, Crouton, on näppärä keino asentaa laitteisiin tavallisia Linux-ohjelmia, joilla muuten puutteellinen ohjelmistovalikoima laajenee. Kannattaakin ennen ostopäätöstä tarkistaa, onko koneessa kaksi vai neljä gigatavua muistia. C720:ssä on vakiona Croutonin kannalta onnettoman pieni, yleensä 16-gigainen SSD. Croutonilla lisäkiiltoa Chromebookiin Googlen selainpohjainen Chrome OS on lipunut vaivihkaa valtavirran käyttöjärjestelmäksi, erityisesti edullisten Chromebook-pikkukannettavien ansiosta. 25 C hrome OS:n sydämessä sijaitseva Linux-ydin ei ole samalla tavoin rajoittunut kuin esimerkiksi Androidin, vaikka konepellin alle pääsy onkin oletuksena tehokkaasti estetty. Tekniset tiedot on syytä lukea huolella ennen hankintaa tai asennusta, sillä Acerinkaan kaikki Chromebookit eivät ole enää Intelpohjaisia. Koneen valinta Tämän artikkelin pohjana ovat kokemukset kahdesta Acerin Chromebook-kannettavasta, C710:stä ja jonkin verran uudemmasta C720:stä
Vielä tiiviimpää yhteyttä eri työpöytien välillä halajavan kannattaa hakea Web Storesta Crouton Integration -laajennus, jonka kautta leikepöydän saa jaettua ympäristöjen välillä. Vaikka käynnistyskomennot saattavat näyttää alkuun sekavilta, päästään työpöydälle itse asiassa nopeammin kuin monissa pöytäkoneissa tai Chromebookille kehitetyssä dualboot-Linuxissa. Aito Ubuntu-jakelu sisältää paljon sellaisia sovelluksia, joita ei ainakaan toisKehittäjätilan käynnistysruutu – ei paineta sitä välilyöntiä!. Alla on kehotus painaa välilyöntiä, mitä ei kuitenkaan kannata tehdä, ellei halua poistaa kehittäjätilaa ja samalla koko Crouton-asennusta. Sitä kautta voidaankin jo asentaa itse chroot-vankila: sudo sh ~/Downloads/crouton -t lxde Tässä tapauksessa koneeseen menisi Ubuntun oletusversio (12.04) sekä kallisarvoista muistia säästävä kevyt LXDE-työpöytäympäristö. Jatkossa kone siirtyy aina käynnistyessään valkoiseen ruutuun, jossa on tietokoneen kuva ja punainen huutomerkki. ”sudo startlxde ”, minkä jälkeen LXDE:n pitäisi ilmestyä näkyviin lähes välittömästi. Ennen pitkää kone käynnistyy kokonaan uudestaan ja pyytää tavalliset sisäänkirjautumisja asetustiedot. LXDE:ssä oikoteitä voi lisätä tiedostoon .config/openbox/ lxde-rc-xml. Muita vaihtoehtoja ovat esimerkiksi Xfce tai Unity. Kun Crouton on saanut asennuksen loppuun, voidaan käynnistää haluttu chroot-vankila, esim. Palautustikun luominen onnistuu Chrome Web Storesta löytyvällä Chromebook Recovery Utility -ohjelmalla. Osassa Linuxtyöpöytäympäristöistä on valmiit asetusohjelmat näppäimistölle; minimalistisessa LXDE:ssä ääkköset ja erikoismerkit saa ensi hätään käyttöönsä komentamalla ”setxkbmap fi ”. Kone saattaa kysyä käyttäjätunnusta, joka on vakiona ”chronos”. Eri ympäristöt jakavat sentään saman Downloads-kansion, mikä onkin moniin tarkoituksiin aivan riittävää. Croutonin kautta täytyy lisäksi asentaa hieman hämmentävästi nimetty extension-laajennus. Joissakin versioissa shiftin painaminen ei ole tarpeen. Salasanaa ei tarvita. Chrome OS:n ja chroot-vankilan välillä ei ole lähtökohtaisesti juurikaan yhteyksiä. Hämärämpiä ongelmia voivat aiheuttaa laitetiedostojen väärät käyttöoikeudet. Ctrl-D vie jälleen toisen näköiseen ruutuun, jossa varmistetaan siirtyminen kehittäjätilaan. Skandinaaviset näppäimet, äänet ja erinäiset laiteajurit saattavat tuottaa aluksi pieniä ongelmia. Tässä vaiheessa käydään lataamassa Croutonin sivulta asennusohjelma, joka tallentuu muiden tiedostojen tapaan Downloads-hakemistoon. Komennolla ”shell” päästään vuorostaan Linuxista tuttuun komentorivikehotteeseen. Tästä ei kuitenkaan tarvitse olla huolissaan. Varmuuskopion tekeminen on muutenkin kannatettava ajatus, koska sillä saa aina pelastettua mahdollisesti sotketun asennuksen. Xiwi taas tuo mukanaan mahdollisuuden ajaa Linux-työpöytää Chrome-ikkunan sisällä, mikä on kylläkin harmillisen hidasta. 2 1 5 . 2 26 Ennen aseman vaihtoa Chrome OS:n järjestelmätiedostot pitää tallentaa vähintään neljän gigatavun muistitikulle, josta järjestelmän voi palauttaa uudelle asemalle. Jos vaikutukset jäävät puolittaisiksi, voi syynä olla tyhjäksi jäänyt /etc/default/ locale-tiedosto, johon voi lisätä rivin ”LANG=en_US.utf8” ja käynnistää chroot-vankilan uudestaan. MIDI-laitteet alkoivat toimia esimerkkiasennuksessa vasta muuttamalla oikeudet seuraavalla käskyllä: sudo setfacl -m u:omakäyttäjätunnus:rw / \ dev/snd/* Ohjelmia, ohjelmia Seuraavaksi on aika nauttia tehdyn työn digitaalisista hedelmistä. Vaihto tapahtuu näissä malleissa järjestelmän palautusnäkymästä, johon pääsee painamalla Escapeja virkistä/F3-näppäimet pohjaan ja näpäyttämällä sitten virtanappia. Perustoiminta ja tärkeimmät säädöt Kun työpöytä on käynnissä, voi ympäristöjen välillä siirtyä näppäinyhdistelmillä Ctrl-Alt-Shift-paluu/F1 ja -eteenpäin/F2. Chrome OS lähtee käyntiin painamalla Ctrl-D tai odottamalla hetken, minkä jälkeen siirrytään tavalliseen sisäänkirjautumiseen. Ruutuun tulee iso keltainen huutomerkki ja varoitus Chrome OS:n puuttumisesta tai vahingoittumisesta. Jos LXDE:n ruutu jää mustaksi, voi näytön virkistää painamalla Ctrl-Alt-virkistä/ F3. Painamalla selaimessa Ctrl-Alt-T aukeaa crosh-komentotulkki (Chrome Shell). Alkuinnostuksen jälkeen huomataan pian, etteivät kaikki yksityiskohdat olekaan vielä kunnossa. Kehittäjätila ja Croutonin asennus Jotta Croutonin asennus olisi mahdollista, pitää Chromebook ensin laittaa kehittäjätilaan. Chromebookin näppäimet esimerkiksi näytön kirkkaudelle ja äänenvoimakkuudelle eivät nekään toimi suoraan, sillä ylärivin napit näyttäytyvät Linux-työpöydälle tavallisina funktionäppäiminä. Uusimmissa versioissa tämä tosin tuntuu olevan jo tarpeetonta
IRC-asiakkaita, mutta niiden laatu ei vakuuttanut, ja Skype puuttuu tällä hetkellä kokonaan. Eräs toistaiseksi ratkaisematon pulma on se, että aikavyöhykkeet ja tiedostojen aikaleimat eivät noudata normaaleja käytäntöjä: usb-asemille tallentuvat tiedostot näkyvät Chromessa oikein, mutta muualla niiden päiväys on kaksi tuntia pielessä. Hiemankin Linux-taitoinen saa kuitenkin varsin kohtuullisella säätämisellä koneestaan irti monenlaista uutta, joten vaivannäkö kannattaa. Ensimmäisiä ilmeisiä käyttökohteita on ohjelmointi: kääntäjiä, editoreita, versionhallintaohjelmia ja kirjastoja löytyy joka lähtöön. Sama koskee VirtualBoxin vaatimia moduuleja, joita ei voi kääntää normaalilla tavalla – hyvästi siis virtualisointi. Erilaiset pikaviestimet XChatista Skypeen ovat nekin helposti saatavilla. Crou tonin kautta asentuvat ohjelmointityökalut, grafiikkaja musiikkiohjelmat, emulaattorit ja komentorivityökalut laajentavat Chrome bookin käyttömahdollisuuksia kauas nettiselailun tuolle puolen. Esimerkkeinä toimiviksi todetuista kehitysympäristöistä mainittakoon tässä Processing ja Arduino. Edes Chrome OS ei ole pomminvarma, ja kun sen kylkeen lisätään vielä Crouton, ilmenee toisinaan outoilua, jonka syy saattaa jäädä epäselväksi. Chroot-vankila käyttää samaa ydintä kuin Chrome OS, mistä aiheutuu joitakin rakentavaa laatua olevia ongelmia. Tavalliset HID-standardin mukaiset hiiret, näppäimistöt, joystickit ynnä muut ovat onneksi tuettujen joukossa. Chrome OS valittaa joka kerran, kun LXDE:ssä lisää ja poistaa laitteen; tätä tosin tapahtui jostain syystä ainoastaan C720:llä. Muita vastaan tulleita pikku ongelmia ilmeni esimerkiksi usb-asemien liittämisen kanssa. 27 taiseksi ole saatavilla Chrome OS:lle. Testasimme pikaisesti VICEn (8-bittiset Commodoret), Fusen (ZX Spectrum), DOSBoxin (PC), UAE:n (Amiga), Hatarin (Atari ST), openMSX:n sekä ScummVM:n, jotka kaikki pyörähtivät Acereilla käyntiin moitteettomasti. Harrastuneempi säätäjä voi toki kääntää ytimen itsekin, mutta moinen operaatio ei ole aivan Pertti Peruskäyttäjän ulottuvilla ja saattaa vaarantaa järjestelmän sujuvan toiminnan. Pelkkään päivittäiseen nettiselailuun tai Google Docsin näppäilyyn Chrome OS on varsin riittävä ja sujuvampi kuin vaikkapa LXDE. Chrome OS:n ohjelmistopäivityksistä saattaa niistäkin aiheutua päänsärkyä, jota helpottaa Croutonin päivitys vivulla -u. Jopa 3D-mallinnusohjelma Blenderiä pystyy käyttämään kohtuullisesti, kunhan pitää odotuksensa realistisina. Muut tavanomaiset Linux-työkalut, kuten Gimp-kuvankäsittely, LibreOffice ja Audacity-äänieditori, toimivat kuten pitääkin. Jopa Steam on mahdollista saada asennettua pienellä vaivalla, ja etenkin grafiikkaominaisuuksiltaan jykevämpi C720 jaksaa pyörittää kohtuudella vanhempia 3D-pelejä. Jo pelkästään Ubuntun valikoimista löytyy jonkin verran viihdykettä ja emulaattorien kautta sitäkin enemmän. Ei siis kannata järkyttyä, jos jonakin päivänä Linux-työpöytä ei ilmestykään näkyviin. Crouton on myös pelaajan ystävä. Ytimeen ei ole vakiona käännetty järin laajaa laitetukea, joten kovin erikoiset lisälaitteet eivät siten toimi. Videoiden katselu onnistuu sujuvasti monelta muultakin alustalta tutulla VLC:llä, joka toistaa eksoottisetkin tiedostot (jos ääni katkeilee, kannattaa vaihtaa PulseAudio käyttöön asetuksista). Chrome OS:llekin on kyllä esim. Chromebook tai Chromebox taipuu pienellä vaivalla myös pieneksi mukana kulkevaksi palvelimeksi. Lopuksi Kuten edeltä lienee jo käynyt ilmi, Croutonin kanssa askartelu ei sovi aivan kaikille. Ainoaksi kauneusvirheeksi jäi VICEn heikosti toimiva koko ruudun tila, joka tosin lienee LXDE:n käyttämän Openboxin eikä Croutonin ongelma. Croutonin rajoitukset Asiat toimivat yleisesti ottaen hyvin, mutta aivan kaikki ei näin kokeellisessa ympäristössä tietenkään suju ilman kompurointia. LXDE-työpöytä ja sekalaisia ohjelmia.
Ne salpaavat rationaalista ajattelua ja luovat sosiaalista painetta olla kyseenalaistamatta, ovatko hevosmiesten kiinniottoon käytetyt menetelmät tehokkaita, relevantteja, tai edes varsinainen päämäärä. Jotta verkkovalvonnasta voi saada yleiskuvan, on tärkeää ymmärtää sen historiaa ja kuinka tekniikka on keVerkkovakoilun tekninen ulottuvuus Tiedustelupalveluiden perinteinen verkkotiedustelu on laajentunut massavalvonnaksi: Digitaalisessa panopticonissa on elettävä olettaen, että näkymätön tarkkailija saattaa koska tahansa tutkia viestinnän ja päätelaitteen sisällön. 2 28 I nternetin kaltainen neutraali, sensuuriton, anonyymi ja yksityinen viestintäympäristö on välttämätön modernin tietoyhteiskunnan terveelle kehittymiselle. Monet autoritaaristen maiden hallinnot pelkäävät arabikevään kaltaista, sisäisistä jännitteistä syntyvää vallankumousta. Miten verkkovakoilu tapahtuu teknisesti. Epäeettinen verkkovalvonta on rakennettu kolmen pilarin varaan: juridiikan, politiikan sekä tekniikan. 2 1 5 . Järjestelmän kerrotaan seulovan terroristeja, mutta viimeaikaisista paljastuksista ilmenee, kuinka kohteita ovat paitsi toisinajattelijat ja journalistit, myös tavalliset kansalaiset. Ongelman ratkaisu edellyttää muutoksia jokaisessa niistä. Yhdysvalloissa lukuisat ilmiantajat ovat tuoneet julkisuuteen epäkohtia siitä, kuinka teknologiaa väärinkäytetään henkilökohtaisen tai kansallisen edun tavoitteluun riippumatta siitä, miten valvonnasta on säädetty laissa tai ihmisoikeussopimuksissa. Teksti: Markus Ottela Kuvat: Mitol Meerna, Markus Ottela, Wikimedia / Matt Crypto, Electronic Frontier Foundation Royal Air Forcen Menwith Hillillä sijaitsevat Echelon-järjestelmän radome-kuvut. Entä voiko siltä voi suojautua. Ne ovat siksi alkaneet vainota katalyyttina toimivia toisinajattelijoita, journalisteja sekä aktivisteja. Kuva: Matt Crypto.. Samalla verkon sananvapautta rajoitetaan sensuroinnin ja massavalvonnan keinoin, ja perusteena käytetään niin sanotusti neljää infokalyptista hevosmiestä: terrorismi, huumekauppa, järjestäytynyt rikollisuus sekä pedofilia herättävät hyvin vahvoja tunteita. Tämä artikkeli tarkastelee ensisijaisesti massavalvonnan teknistä puolta sekä teknisiä suojautumismenetelmiä
Kryptografian vientirajoitusten kontrollointi kävi kuitenkin mahdottomaksi, sillä vahvat salausohjelmistot, kuten PGP, vuotivat ulkomaille sananvapauden turvaamana, koneluettavana paperivuorena. Salausalgoritmien käyttöönotto tapahtui kuitenkin takkuillen, ja monesti ne eivät olleet oletuksena päällä. Kolmas paljastus tapahtui vuonna 2008, kun Thomas Tamm vuoti tietoja vuosina 2002–2004 toimineesta Stellar Wind -ohjelmasta, jolla kerättiin kansalaisten viestiliikennettä sekä tietoja näiden rahaliikenteestä ja verkkokäytEFF:n Deep Crack -supertietokone. Uutisen mukaan ”NSA etsii Echelonin avulla tietoa potentiaalisista terroristeista, mutta suuri osa kerättävistä tiedoista koskee taloutta.” EP:n 2001 julkaisema kertomus suositti juridisten ja poliittisten keinojen lisäksi kansalaisia ja julkishallintoa muun muassa salaamaan kommunikaationsa sekä suosimaan ja tukemaan avoimen lähdekoodin ohjelmistoja. Euroopan Parlamentin valiokunta teetätti Echelonista selvityksen, jonka alustavasta versiosta Helsingin Sanomat uutisoi 27.2.1998 otsikolla ”Isoveli elää verkossa”. Isoveli lapsenkengissä Toisen maailmasodan päätyttyä IsoBritannian ja Yhdysvaltojen väliaikainen tiedusteluyhteistyö jatkui 1946 allekirjoitetulla UKUSA-sopimuksella. Kryptosota Euroopan Parlamentin mahdollisuus suosittaa viestien vahvaa salaamista edellytti historiallisesti merkittävää poliittista prosessia, jonka lähtöasetelma on syynä järjestelmien haavoittuvuutteen vielä tänäkin päivänä. Vuonna 2006 teleoperaattoriyhtiö AT&T:n teknikko Mark Klein paljasti yrityksen tiloissa sijaitsevan 641a-nimisen huoneen, jossa mannertenvälinen valokuituliikenne haaroitettiin NSA:n tietokoneille analysoitavaksi. RSA-avainpituudet vapautuivat, ja vuotta myöhemmin Electronic Frontier Foundationin (EFF) Deep Crack -supertietokone mursi silloisen Data Encryption Standard (DES) -salauksen. Merikaapeleiden kuuntelu onnistui vähitellen ympäri maailmaa, sillä 80-luvun puoliväliin mennessä myös muut englanninkieliset länsimaat – Kanada, Australia sekä Uusi-Seelanti – olivat liittyneet sopimukseen, muodostaen Five Eyes (FVEY) -nimisen yhteenliittymän. 1960-luvulla tapahtui teknologinen harppaus, ja mannertenvälinen kommunikaatio siirtyi vähitellen satelliitteihin. Tilannetta pahensi tiedustelua valvovan komitean haltuunsa saamat piirustukset, joista kävi ilmi, että poliittisten tahojen valvonta on alusta alkaen rakennettu osaksi Echelon-järjestelmää. Osaltaan kaupallisen sektorin painostuksesta presidentti Bill Clinton poisti kaupallisen kryptografian vientä rajoittavalta ’munitions list’ -listalta vuonna 1996. 29 hittynyt ja skaalautunut vanhentuneen lainsäädännön mahdollistamana. Syntyi tarve uudelle symmetriselle salausalgoritmille. Vientirajoitukset haittasivat myös elektronisia kauppaja pankkiyhteyksiä. Kuva: Electronic Frontier Foundation.. Tiedustelupalvelut seurasivat perässä, ja Iso-Britannian Government Communications Head Quartersin (GCHQ) ensimmäinen satelliittilinkkien kuunteluasema nousi Etelä-Britannian Morwenstowiin jo vuonna 1971. Vientirajoitusten vuoksi esimerkiksi Netscape joutui heikentämään selaimensa vientiversiossa RSA-salausalgoritmin avainpituuden 1024:stä 512 bittiin. Nelivuotisen avoimen kilpailun jälkeen marraskuussa 2002 National Institute of Standards and Technology valitsi Rijndael-nimisen algoritmin uudeksi Advanced Encryption Standardiksi (AES). Uutinen herätti pelkoa vuosien 1972–74 Watergate-skandaalin toistumisesta, jossa opposition jäseniä salakuunneltiin. GCHQ ja NSA tekivät tiivistä yhteistyötä, ja seuraavan vuosikymmenen aikana valtioiden kuunteluasemat yhdistettiin Echeloniksi kutsutulla laajaverkolla. Verkkovalvonta ei kuitenkaan päättynyt. Echelon paljastui vuonna 1988, kun Lockheed Martinin työntekijä Margaret Newsham vihelsi pilliin kertomalla lehdistölle, että Iso-Britannian Menwith Hilliltä käsin oli kuunneltu yhdysvaltalaisen senaattorin Storm Thurmondin puheluita. Liikenteen kuuntelu oli helppoa, sillä satelliittiliikenne oli salaamatonta, kuten myös 70-luvulla käyttöön tulleet valokuidut, ensimmäiset matkapuhelinverkot sekä Arpanet, josta kehittyi 1990-luvun alkuun mennessä kaupallinen Internet. Yhdysvalloissa käytiin 1990-luvulla niin sanottu kryptosota (crypto wars), jossa osapuolina olivat turvallista ja yksityistä viestintää vaativa cypherpunk-liike sekä kryptografian vientirajoituksia vaativa tiedusteluyhteisö. Vahva kryptografia oli lopulta kaikkien käytettävissä ja Foundation for Information Policy Research julisti vuonna 2005 kryptosodan voitetuksi. Echelonin satelliittitiedustelu vanhentui 2000-luvulla, mutta signaalitiedustelu pysyi ajan tasalla, kun uudempi tiedonsiirtoteknologia, kuten valokuitu sekä mikroaaltolinkit, kytkettiin järjestelmään. Samana vuonna NSA:n vanhempi työntekijä Thomas Drake paljasti tietoja viestintää analysoivasta Trailblazer-ohjelmasta. Myös GSM:n A5/1ja satelliittiyhteyksien A5-GMR-1-algoritmeille oli vientirajoitettuja maita varten omat heikennetyt versiot A5/2 ja A5GMR-2. Yksi ensimmäisistä elektronista viestintää vakoilevista ohjelmista oli Yhdysvaltojen National Security Agencyn (NSA) vuosina 1967-73 ajama Minaret, joka nauhoitti yli seitsemän tuhannen tarkkailulistalle valitun kohteen puheluita
FVEY-jäsenmaat poislukien suurvaltojen verkkovakoilukyvyistä on saatavilla hyvin rajallisesti tietoa. Ajanlasku Snowdenin jälkeen ”Julkisesti väitämme, että havainnointikykymme hämärtyy, mutta todellisuudessa pääsymme parantuu jatkuvasti. Verkkovakoilu SSO:n Prism-järjestelmä mahdollistaa tietojen hakemisen ainakin Microsoftin, Yahoon, Googlen, Facebookin, PalTalkin, AOLin ja Applen palvelimilta. Siellä hän tutki dokumentintekijä Laura Poitraksen sekä The Guardianin toimittaja Glenn Greenwaldin kanssa tuhansia huippusalaiseksi luokiteltuja asiakirjoja, joita Snowden oli aiemmin lähettänyt Poitrakselle. Snowdenin asiakirjat eivät valitettavasti pysty tarjoamaan täydellistä kokonaiskuvaa valvonnasta, sillä NSA luokittelee muun muassa Core Secrets -informaation ’Exceptionally Controlled Information’ -kategoriaan (ECI), jota ei kirjoiteta lainkaan paperille. Trailblazerin korvanneessa Turbulence-ohjelmassa näitä tarvitaan yhdeksän. Snowdenin asiakirjoista käy ilmi, kuinka lakkautetut ohjelmat ovat jatkuneet uusien koodinimien alla hyväksikäyttäen jäsenvaltioiden etuoikeutettua roolia globaalissa verkossa. NSA:n Special Source Operations (SSO) on ottanut hoteisiinsa Stellar Windin ja laajentanut projektia niin, että pelkästään massavalvontajärjestelmän yläkategoriat tarvitsevat kahdeksan erillistä koodinimeä. Totuus on, että NSA ei koko historiansa aikana ole kerännyt enemmän kuin tällä hetkellä.” -Edward Snowden, Citizenfour11 Toukokuussa 2013 Booz Allen Hamiltonilla työskentelevä NSA:n infrastruktuurianalyytikko Edward Snowden lensi Hong Kongiin. Spekuloinnin sijaan todettakoon, että eri suurvaltojen rajojen sisällä tekniset keinot ovat korkeintaan NSA:ta vastaavalla tasolla. Upstream ja Prism ovat SSO:n kaksi tärkeintä ohjelmaa.. Suurvaltojen kansalaisten oikeus yksityisyyteen omalta hallinnolta on kuitenkin monesti huonommalla tolalla kuin FVEY:n kansalaisilla omissa jäsenmaissaan. 2 1 5 . Lisäksi ylivoimainen osa ohjelmistoyrityksistä, internetin palveluista sekä internetin globaalin luottamuksen takaavista yrityksistä sijaitsee Yhdysvalloissa. Lisäksi kaikki osapuolet kehittävät ja ostavat järjestelmiin kilpaa hyökkäysohjelmistoja. Ohjelman yhteistyöyritykset vastasivat Snowden-asiakirjojen väitteisiin vältellen, lähinnä kieltäen ykNSA:n Utahin osavaltion Bluffdaleen rakentama datakeskus. Uutisointi asiakirjoista alkoi jo samalla viikolla, ja aiheeseen liittyvät otsikot ovat täyttäneet lehtien etusivuja ympäri maailmaa samaa tahtia, kun asiakirjoja on osattu tulkita ja nimiä sensuroida. Kuva: Electronic Frontier Foundation. FVEY-yhteenliittymän kyky harjoittaa globaalia massavalvontaa on kuitenkin poikkeuksellinen, koska suurin osa internetin runkoverkoista kulkee sen jäsenvaltioiden läpi. Vaikka asiakirjat ovatkin tarjonneet tähän asti perusteellisinta tietoa valtioiden verkkovakoilumenetelmistä, on huomautettava, että vasta noin 4 000 sivua arvioidusta 57 000:sta on julkaistu. Näitä paljastuksia seurasi uutishiljaisuus, jonka rikkoivat lähinnä Wikileaksin vuonna 2011 julkaisemat valvontajärjestelmiä myyvien yritysten katalogit sekä Wired-lehden maaliskuun 2013 artikkeli Utahiin rakennettavasta NSA:n Mission Data Repository -datakeskuksesta. Verkkohyökkäysten osalta suurvallat ovat samalla viivalla, sillä kaikkien osapuolten internetiin kytketyt laitteet tulevat samoista tehtaista. 2 30 täytymisestä
Todiste siitä, että avaimia vaaditaan, on U.S. Lavabit on tiedettävästi ensimmäinen yritys joka teki periaatepäätöksen ennemmin sulkea palvelu, kuin vaarantaa käyttäjien yksityisyys. Teknisesti kahdentaminen tapahtuu taivuttamalla valokuitua siten, että pieni osa valosta karkaa vakoilulaitteiston vastaanottimeen. Yksikään yrityksistä ei kuitenkaan kieltänyt suoraan yhteistyötä NSA:n kanssa. Amerikka + Karibia 40 Gb ps 5 Gb ps 11 Gbps Internetin alueellinen kaistanleveyskapasiteetti maailmassa vuonna 2011.. Tilaa sanavalinnoilla kikkailulle siis on, mutta ainoat keinot toteuttaa asiakirjojen väittämä pääsy sekä reaaliaikaiseen kommunikaatioon että palvelimelle tallennettuihin tietoihin on joko automatisoitu kanava palvelimeen tai jatkuva ”mies-välissähyökkäys” (man-in-the-middle attack) jokaista käyttäjää vastaan. vs Lavabit -oikeudenkäynti, jossa liittovaltio vaati National Security Letter -kirjeen nojalla Ladar Levisonia luovuttamaan yrityksensä yksityisen RSA-avaimen siitä huolimatta, että näin toimiminen vaarantaisi satojen tuhansien käyttäjien yksityisyyden. Asiakirjoista käy myös ilmi, että ainoastaan liittovaltion poliisi FBI on yhteydessä Prism-ohjelman kumppaneihin. Sen mukaan vuonna 2012 RSA:n osuus oli 90, DHE:n 5 ja ECDHE:n 5 prosenttia. RSA:n yleisyys on vakava ongelma. Lisäksi GCHQ:lla on Tempora-niminen, Stormbrew’tä vastaava runkoverkon kuunteluohjelma. Stormbrew vastaa Yhdysvaltojen-, ja Oakstar ulkomaiden rannikoilta nousevista merikaapeleista. Toinen SSO:n ohjelma on Upstream, jonka alla toimii neljä ohjelmaa: Fairview ja Blarney kahdentavat Yhdysvaltojen sisäistä valokuituliikennettä yhteistyössä sikäläisten teleyritysten kanssa. NSL oli samalla myös vaitiolomääräys, eli nyBroad Oak seuraa TLS:n trendejä. Jos FVEY:llä olisi pääsy palveluntarjoajien yksityisiin RSA-avaimiin, Upstream pystyisi purkamaan jopa 90 prosenttia maailman salatusta verkkoliikenteestä. 31 sittäisiä pääsymenetelmiä kuten takaportin (Google) tai suoran pääsyn (Facebook). Näiden toiminta perustuu diskreetiksi logaritmiksi kutsuttuun matemaattiseen ongelmaan, jolla on niin kutsuttu perfect forward secrecy (PFS) -ominaisuus, joka estää Upstreamilla kerätyn liikenteen takautuvan ja passiivisen purkamisen. Upstreamiin liittyy olennaisesti myös NSA:n USS Jimmy Carter -sukellusvene, jonka The Atlantic uutisoi vuonna 2006 kykenevän kuuntelemaan merenpohjassa kulkevia valokaapeleita. Tällöin päästään käsiksi paitsi viestiliikenteen metadataan ja salaamattomaan sisältöön, myös potentiaalisesti niin sanotusti naiivisti salattuun sisältöön, jonka symmetristä sessioavainta suojaa kättelyssä staattinen RSA-avain. Jälkimmäiset avaintenvaihtoprotokollat ovat Diffie-Hellman Ephemeral sekä Elliptic Curve DHE. 4,9 72 Gb ps 2,72 1 Gbps 1,3 45 Gb ps 2,9 46 Gb ps Eurooppa USA + Kanada Afrikka 343 Gbps Aasian ja Tyynenmeren alue Latinal. Salauksen purkaminen GCHQ:n Broad Oak -ohjelma kerää tilastoja internetin yleisimmän salauksen, TLS:n (entinen SSL), trendeistä kuten avaintenvaihtoalgoritmien suhteellisista määristä
Vaikka modernit sertifikaatit käyttävätkin laskennallisesti murtamattomia RSA-2048/4096ja AES-algoritmeja, CNE:n maininta viittaa siihen, että yksityisiä RSA-avaimia myös varastetaan palvelimilta. 2 32 kyiset verkkoyritykset eivät ole pystyneet kertomaan, mikäli myös niiltä on vaadittu yksityisiä avaimia. Päätelaitehyökkäykset Snowden-asiakirjojen mukaan NSA:lla on käytössään välineitä, joilla se voi tunkeutua myös älypuhelimien kaltaisiin päätelaitteisiin. Niiden toteutus on ollut alun alkaenkin teknisesti huono, joten SIM-korttien vaihtaminen olisi lähinnä purkkaratkaisu, joka loisi valheellisen turvallisuuden tunteen. Vaihtoehtoisesti NSA voisi hioa läpi SIM-korttien kryptoprosessorin kerros kerrokselta ja kaivaa salausavaimen sirusta muun muassa tunnelielektronimikroskoopilla. Operaattorit katsoivat vakoilun edellyttävän lähiympäristössä toimimista, mutta koska operaattorin järjestelmät ovat kytköksissä Internetiin, ohjelmistoimplantit löytävät tiensä verkosta operaattorin järjestelmiin. Menetelmät ovat ECIluokiteltua tietoa, ja tiedusteluyhteisön sisällä jopa niistä spekulointi on kielletty. NSA:n asiakirjojen mukaan SIM-kortin tavoin yleiskäyttöinen GID-avain on pystytty irrottamaan Applen A4-prosessorista. NSA pystyisi näet edelleen varastamaan salausavaimen joko operaattorilta tai suoraan SIM-kortista. Lisäksi myös tietokoneiden TPM-siruista on kyetty hakemaan henkilökohtaisia salausavaimia. Asiakirjat mainitsevat kuitenkin, että menetelmät pohjautuvat päätelaitehyökkäyksiin (Computer Network Exploit tai CNE), postipalveluiden välittämien pakettien peukalointiin (interdiction), suhteisiin alan yritysten kanssa sekä matemaattisiin menetelmiin. Laskennallinen murtolujuus tai palvelimen sijoitus FVEY:n juridisen toimivallan ulkopuolelle ei siis ole minkäänlainen tae turvallisuudesta. Tästä ei kuitenkaan ole apua, sillä päätelaitteen salaus toimii vain datan ollessa levossa eli puhelimen ollessa pois päältä. CA-yritysten yksityisillä avaimilla on mahdollista luoda väärennettyjä sertifikaatteja, eli niitä ei tarvitse varastaa palvelimilta. NSA:n Bullrun-ohjelma mahdollistaa erilaisten yleisten salausprotokollien kuten TLS:n, SSH:n sekä joidenkin VPN-, VoIPja pikaviestiprotokollien purkamisen. Tämän myötä monet yritykset, kuten Apple, ovat ilmoittaneet salaavansa jatkossa puhelinten tiedot oletusarvoisesti. Snowden-asiakirjoihin perehtynyt tietoturvatutkija ja toimittaja Jacob Appelbaum kertoo LibrePlanetin avauspuheessaan NSA:lla olevan yhteyksiä sertifikaatteja myöntäviin yrityksiin (CA). Ratkaisuksi tietomurtoon on ehdotettu SIM-korttien vaihtoa ja turvallisten salausavainten levityskanavien muodostamista. Vuodoista käy ilmi, että GCHQ:n Dishfire sieppaa päivittäin satoja miljoonia tekstiviestejä ympäri maailmaa, ja NSA:n Mystic-ohjelman alainen Somalge kykenee sekä keräämään että tallentamaan koko Bahamasaarten ja Afganistanin puheluliikenteen. Asian vakavuutta kuvaa se, että jopa 84 prosenttia kaikista maailman sertifikaateista allekirjoitetaan Yhdysvalloissa. Luottamusketjussa on myös heikompi lenkki. Arviolta puolet TLS-yhteyksistä käyttää edelleen RC4:ää, ja suurin osa RSA-avaimista on ilmeisesti edelleen 1024-bittisiä. Ohjelmisto kykenee myös hallitsemaan puhelimen käynnistymistä ja mikrofonia sekä varastamaan kaiken. Mystic-järjestelmä vastaa teleoperaattoreiden signaalitiedustelusta. 2 1 5 . GCHQ:n älypuhelimiin kohdistettu CNE-järjestelmä. Asiakirjat osoittivat NSA:n varastaneen Gemalto-yritykseltä sen valmistamien SIM-korttien salausavaimia. Ongelma on kuitenkin se, että eri operaattorien jokainen SIM-kortti käyttää samaa salausavainta. Matkapuhelinten vakoilu Keskitetyt avainlähteet ovat houkutteleva kohde. Lisäksi valvonta on saattanut hyödyntää kryptosodan jälkeen palvelimiin jätettyä tukea vientirajoitusten aikaisille algoritmeille, joihin yhteydet on voitu pudottaa. Koska NSA pystyy Quantumsquirrelohjelmalla runkoverkosta käsin naamioitumaan miksi tahansa verkkopalveluksi, se pystyy mies-välissä-hyökkäyksen avulla purkamaan melkein minkä tahansa salatun yhteyden www-palvelimelle. NSA on luultavasti maailman edistynein taho, mitä tulee differentiaalisen jänniteanalyysin kaltaisiin kryptanalyyttisiin sivukanavahyökkäyksiin. Salausavain on käynnissä olevan puhelimen työmuistissa, johon Kanadan tiedustelupalvelu CSECin Warrior Pride sekä siihen pohjautuva GCHQ:n Daredevil-ohjelmisto pääsevät verkon kautta käsiksi. Asiantuntijat ovat arvioineet matemaattisten menetelmien liittyvän joko symmetriseen RC4-salausalgoritmiin tai RSA:n 1024-bittiseen versioon
Päätelaitehyökkäykset kohdistuvat myös tietokoneita vastaan. NSA:n ANT-tiimin rakentama Close Access Operations -laitteistoimplantti. Tietoturvayritys Symantecin teettämä tutkimus osoitti, että yksittäisen korjaamattoman haavoittuvuuden keskimääräinen elinikä (window of exposure) on 312 vuorokautta. 30C3-konferenssin esityksessään ”To Protect and Infect – part 2” Appelbaum kertoo NSA:n ANT-katalogista, jossa on lueteltu jopa 50 erilaista hyökkäysimplanttia. Näistä virheraporteista voidaan tunnistaa käyttöjärjestelmässä tai sille asennetuissa ohjelmissa kuten selaimessa piileviä haavoittuvuuksia. Riittää, että kaiken informaation kokonaisarvo vastaa hankintakustannuksia. Ohjelmistoimplantin kustannushyöty onkin sitä parempi, mitä laajemmin haavoittuvuutta hyödynnetään, eikä sen havaitsemisriski riipu niinkään kohteiden määrästä vaan näiden teknisestä osaamisesta. NSA:n Quantumin Validator ja Commondeer edustavat kuitenkin ”untasked targeting” -valvontaa, eli XKeyscore pystyy hyökkäämään tietokoneita ja tietoverkkoja vastaan automaattisen avainsana-analyysin perusteella. Mikä sitten on kohdistettua ja mikä massavalvontaa. Snowdenasiakirjojen näet arvioidaan maksavan lähivuosien aikana Yhdysvaltojen teknologiateollisuudelle kymmeniä miljardeja. Ragemaster sekä Surlyspawn taas ovat näppäimistön ja näytön kaapeleihin piilotettavia retroreflektoreita.. Vaihtoehtoisesti Quantum voi lisätä haittakoodin DNS-injektioon pohjautuvalla mies-välissä-hyökkäyksellä. On oletettavaa, että NSA:n haittaohjelmista ja järjestelmiin tunkeutumisesta vastaava osasto, Tailored Access Operations (TAO), osaa hioa näitä hyökkäysohjelmia, kunnes kaupalliset virustentorjuntatai tunkeutumisenhavaintaohjelmat (IDS:t) eivät enää huomaa niitä. Haavoittuvuuksien tunnistaminen on tavallisen käyttäjän ulottumattomissa. Esimerkiksi XKeyscore-niminen internetpuskuri pystyy analysoimaan verkon yli kulkevia Windows-käyttöjärjestelmän automaattisia virheraportteja. Laite-esimerkkeinä Cottonmouth ja Firewalk ovat USB-kaapeliin ja emolevyn USBliittimeen piilotettuja radiolähettimiä, joilla päästään käsiksi internetistä irti kytkettyihin järjestelmiin ja lähiverkkoihin. Päätelaitteille tunkeutuminen on perinteisesti katsottu kohdistetuksi hyökkäykseksi, jolla ei ole mitään tekemistä massavalvonnan kanssa. Kuorman huomionarvoisia komponentteja ovat Salvagerabbit, joka varastaa järjestelmästä yksityisiä GPG-salausavaimia ja salasanatietokantoja tai luottamuksellisia asiakirjoja, sekä Grok, joka kerää näppäinpainallukset ja siten salasanat. Automaattiseen tunkeutumiseen soveltuvan Validator-ohjelman kuvaus. Siinä missä laiteimplantin saaminen yksittäiseen verkosta eristettyyn järjestelmään maksaa kymmeniä tai satoja tuhansia dollareita, haittaohjelmalla on ainoastaan sen hankintatai kehityskustannus. Erottelu ei ole oleellista, sillä valvonnan doktriini on ”kerää kaikki, pura kaikki, kräkkää kaikki.” Voisikin sanoa, että valvontajärjestelmien rakenne vastaa nykymaailman järjestelmien tilaa, ja hankintatekniikka riippuu informaation suojauksesta. Quantum-niminen järjestelmä kykenee runkoverkosta käsin kilpailemaan web-palvelimen lähettämän ServerHello-paketin kanssa. Kustannukset eivät ole ongelma, vaikka keräys olisikin välillä tappiollista. Käyttäjä ei pysty suojautumaan edes pitämällä järjestelmänsä ajan tasalla, sillä NSA ostaa vuosittain kymmenillä miljoonilla dollareilla ennalta tuntemattomia ja paikkaamattomia haavoittuvuuksia ja niitä hyväksikäyttäviä hyökkäysohjelmia (zero day exploit). 33 puhelimeen tallennetun tiedon. Kuten Appelbaum totesi, ”automatisoitu kohdistettu valvonta ei eroa skaalaltaan, ainoastaan menetelmältään.” Tietokoneelle tunkeutumisen jälkeen Foxacid pystyy välittämään modulaarisen Unitedrake-ohjelmakuorman (payload) kohdekoneeseen. Haittakoodi hyödyntää joko vanhentuneen selaimen tunnettua tai ajantasaisen selaimen vielä tuntematonta haavoittuvaisuutta ja kaappaa kohdekoneen haltuunsa. Ohjelmistoimplanttien kappalehinnaksi on useimmiten merkitty nolla, mutta laitteiden hinnat yltävät jopa 50 000 dollariin. Tuntemattomia haavoittuvuuksia hyödyntäviä ’untasked targeting’ -hyökkäyksiä voidaan siis pitää seuraavan sukupolven massavalvontana. Applen ilmoitus puhelinten salauksesta sai äänekästä vastustusta viranomaisilta, mutta näiden valitus on enemmänkin Applen markkinointia. Tämä mies vierellä (man-on-the-side) -niminen hyökkäys yhdistää käyttäjän NSA:n Foxacid-palvelimeen, joka pystyy ujuttamaan haittakoodia (exploit) käyttäjän saamaan verkkosivuun
Suomen runkoverkosta tietoa onkisikin tehokkaimmin NSA, mutta vieraan vallan vakoilulaitteiden kytkeminen runkoverkkoon jakanee mielipiteet. Avoimet laitteet voitaisiin valmistaa jopa Suo. Pahimmillaan joko tietoturvan kannalta oleelliset varmistukset jäävät tekemättä, tai sitten siirrytään helpompaan sovellukseen, joka ei tarjoa niitä lainkaan. Keskeisempi ongelma tietoliikennetiedustelulle on kuitenkin se, etteivät yksityisyydestään huolehtivat kansalaiset (ja terroristit) luota valtarakenteille alisteisiin sertifikaatteihin. Verkkovakoilun tekninen torjunta edellyttää radikaalia suunnanmuutosta niin työkaluissa kuin käyttäjien asenteissa. Sen sijaan he hallitsevat salausavaimiaan itsenäisesti käyttämällä työkaluja, joiden protokolla (kuten PGP, OTR tai ZRTP) on päästä päähän salattu (endto-end encrypted tai E2EE). Suomen viranomaisten tekninen kyky päästä käsiksi ulkomaista salattua palvelua käyttävän ISIS-solun kommunikaatioon ilman FVEY:n apua on käytännössä nolla. Tarvitaan ratkaisuja, jotka ovat helppokäyttöisiä ja tietoturvallisia siten, ettei niiden murtaminen ole automatisoitavissa ja skaalattavissa ilman lineaarisesti kasvavia kustannuksia. 2 34 Mikroaaltopulssilla valaistuna ne heijastavat takaisin joko näppäinlyönnit tai ruudulla näkyvän kuvan. Toisaalta tietoturva on myös absoluuttista, sillä valtiollisen toimijan tavoite on saada hyökkäysmenetelmät skaalautumaan automaattisesti suojauskeinojen mukaan. Moderneja salausalgoritmeja ei murreta, vaan ne kierretään. Runkoverkon vakoilusta ei ole konkreettista hyötyä edes metadatan suhteen, sillä Tor-verkon läpi itsensä anonymisoiva, Lähi-itään kommunikoiva ISIS-solu ei erottuisi runkoverkossa muista Tor-käyttäjistä mitenkään. Kiinnostava informaatio tuskin liikkuu suomalaisissa verkkopalveluissa. Juridisesti haavoittuva, keskitetty julkisen avaimen infrastruktuuri (PKI) on ollut harha-askel. Kyberturvallisuuskeskuksen johtaja Kirsi Karlamaa välitti saamansa asiantuntija-arvion siitä, että ”aurinko ehtisi sammua ennen kuin internetin kaikki kryptaus ehdittäisiin purkaa”. Viestinnän salaus, allekirjoitus, autentikoiminen ja purkaminen on siirrettävä verkosta erotettuun ympäristöön, luotettavan tietojenkäsittelyn alustaan (Trusted Computing Base / TCB). Suomeen kaavailtu verkkovakoilu – uhka vai mahdottomuus Suomen tiedustelulainsäädännön mietintötyöryhmän lainsäädäntöjohtaja Hanna Nordström kuvaili Talentumin haastattelussa Suomeen kaavaillun tietoliikennetiedustelun vastaavan NSA:ta siinä määrin, että menetelmät ovat ”mahdollisimman lieviä, mutta silti vielä tehokkaita”. Silloin mahdolliset lisäkustannukset jäävät tulosvastuuttomuuden ja massiivisen budjetin varjoon. Luottamuksen verkko mahdollistaa turvallisen sovellusten välittämisen, mutta myös itse sovelluksia on muutettava. Tässä ovat avainasemassa sähköisiä oikeuksia puolustavat järjestöt. Välttämätön osa tietoturvan alustusta on rakentaa luja luottamuksen verkko (Web of Trust), jossa digitaalisista allekirjoitusketjuista huolehtivat yritysten sijaan vapaat yksilöt. Vasta sitten voitaisiin purkaa ja lukea liikenne ja selvittää onko kohde terroristi. Tietoturvasta voidaan siis puhua vasta, kun viestintä on valvontateknologian ulottumattomissa, ja valitettavasti se edellyttää työkalujen käytön opettelua. Tietoturva katsotaan monesti suhteelliseksi: kaikki valvontatekniikat eivät kosketa kaikkia, joten vähäiselläkin suojauksella voi saada konkreettista tietoturvaa. Ensimmäinen askel on luottamuksen hajauttaminen. Esimerkiksi Tor Projectin selain Tor Browser Bundle ja tietoturvaa tarjoavat Tailsja OpenBSD-käyttöjärjestelmät allekirjoitetaan jo PGP:llä, mutta julkisten avainten autenttisuudesta varmistuminen edellyttää globaalia verkostoitumista. Nämä tieteiskirjallisuudelta kuulostavat keinot olivat vakoilutekniikan terävintä kärkeä jo vuosikymmen sitten. Aaltoyliopiston järjestämässä yleisöluentosarjassa korostettiin tosiasioiden tunnustamista. Seulonta on siis teknisesti toteutettavissa, mutta ensin olisi syytä käydä pitkä julkinen keskustelu siitä, jättääkö toimenpiteillä saavutettu turvallisuus mitään turvaamisen arvoista, jos Suomen ihmisoikeustilanne vajoaa Venäjän ja Kiinan alapuolelle. Käytössä pitäisi siis olla Prismin kaltainen kanava ulkomaisille palvelimille, tai sitten salausavaimia pitäisi hankkia joko §702 FISA:n kaltaisella laillisella tai Bullrun-ohjelman kaltaisella laittomalla menetelmällä. Ainoa tehokas tapa seuloa päästä päähän salatusti kommunikoiva ääriliikesolu Suomesta olisi tunkeutua jokaiseen näitä protokollia käyttävään tietokoneeseen ja älypuhelimeen, varastaa yksityiset salausavaimet ja niitä suojaavat salasanat, sekä ZRTPja OTR-viestinnän tapauksessa vielä hyökätä aktiivisesti jokaista erillistä keskustelua vastaan. Implanttien kaltaiset tekniset menetelmät asettavat riman myös Suomen operaatioturvallisuudelle sekä julkiselle keskustelulle, nyt kun verkon puolustamisja hyökkäysmenetelmistä ollaan laatimassa strategiaa ja lainsäädäntöä. Tails-kehitystiimi suosittaa tarkistamaan levykuvan PGP-allekirjoituksen. Onko tilanne, jossa Yhdysvallat vakoilee koko Suomen sisäistä tietoliikennettä, mahdollisimman vähän yksityisyyttä loukkaava. 2 1 5 . Alustoja suunniteltaessa on tärkeää välttää sokeaa luottamusta omisteiseen laitesuunnitteluun ja ohjelmakoodiin sekä ulkomaisille viranomaisille alisteisiin yrityksiin. Ratkaisuja etsimässä Viestijärjestelmien tietoturvan parannus vähentää niiden helppokäyttöisyyttä. Arvostettu kryptografi Matthew Green kritisoi nykyisiä päästä päähän salattuja ohjelmistoja, sillä verkkoon kytkettyyn päätelaitteeseen hyökkääminen tekee niistä turvattomia. Väite pitää paikkansa mutta on vain puolitotuus: aurinko ehtisi sammua jo ennen, kuin koko planeetan nykyinen ja tuleva laskentakyky ehtisi purkaa ensimmäistäkään nykyaikaisesti salattua viestiä
Pilvipalveluiden sijaan kannattaa suosia kotipalvelinta, jonne tiedostot varmuuskopioi. markkinointitermit kuten ”kyber” tai ”sotilasluokan salaus” 7. Älypuhelinten ongelma on kuitenkin, että niiden sovellusprosessorit ovat alisteisia niin sanotulle Baseband-prosessorille, jolla ajetaan suljettua lähdekoodia. 35 messa: esimerkiksi VTT:llä on mikroelektroniikan valmistuslinja. Edes kvanttitietokone ei murra AES256:ta: Groverin algoritmi (https:// en.wikipedia.org/wiki/Grover%27s_ algorithm) käsittelisi AES-256:n samaan tapaan kuin tavallinen tietokone käsittelisi AES-128-algoritmin: laskenta olisi käsittättömästi nopeampaa mutta silti veisi kauemmin kuin planeetallamme on elinaikaa jäljellä. uhkamallin puute 6. selaimessa suoritettava ohjelma 3. Vaikkei käyttöjärjestelmää olisikaan valmis vaihtamaan, on avoimen lähdekoodin ohjelmien käyttö Windowsilla tai OSX:llä silti askel parempaan suuntaan. Älypuhelimille toimivin puheja viestintäsovellus on iOS:n Signal, joka toimii yhteen Androidin TextSecureja Redphone-sovellusten kanssa. Paras tunnettu AES-256 algoritmin heikkoutta hyödyntävä Biclique-hyökkäys (https://en.wikipedia.org/wiki/ Biclique_attack) tekee murtamisesta 21,6 = 3,03 kertaa nopeamman. välinpitämätön asenne päätelaitteiden tietoturvattomuutta kohtaan. Niiden käytettävyyden parantumista odotellessa nopein ensiapu on tehdä nykyisestä passiivisesta ja julkisia avaimia hyödyntävästä massavalvonnasta taloudellisesti kannattamatonta. On siis vaikea sanoa, onko puhelinten ohjelmakoodissa haavoittuvuuksia tai takaportteja. Kuten Snowden sanoi, ”hyvin rahoitettu tiedustelupalvelu pystyy murtautumaan puhelimeen sillä hetkellä kun se kytketään päälle”, mutta koska ihmiset viestivät joka tapauksessa liikkeellä ollessaan, on suotavaa vaikeuttaa verkkovalvontaa niin paljon kuin on teknisesti mahdollista. Suositeltavia ohjelmia Käyttöjärjestelmäksi on erittäin suositeltavaa vaihtaa joko GNU/Linux tai jokin BSD-variantti, tai ainakin asentaa se omisteisen Windowstai OSXkäyttöjärjestelmän rinnalle. Sähköpostin lähettämiseen suositellaan joko Claws Mail – tai Mozilla Thunderbird -sovelluksia. käyttäjän kyvyttömyys kontrolloida salausavaimia 5. Pikaviestintään sopivat esimerkiksi OTR-protokollaa tukevat avoimen lähdekoodin sovellukset kuten Jitsi tai Adium. Viestinnän sisältöä voidaan suojata päästä päähän salatuilla sovelluksilla, ja metadatan määrä voidaan minimoida reitittämällä liikenne Tor-verkon läpi. Yksi harvoista nämä vaatimukset täyttävistä palveluista on Owncloud. suljettu lähdekoodi 2. Kaikki kolme ovat ammattimaisesti tehtyjä, ilmaisia, vapaita ja päästä päähän salattuja. Kaikki salausalgoritmit eivät tietenkään ole yhdenvertaisia, mutta yksikään nykyaikainen verkkoyhteys tai kommunikointiohjelma ei tänä päivänä käytä heikkoja algoritmeja kuten IDEA tai RC4.. Lisäksi suljettu lähdekoodi tekee haavoittuvuuksien paikantamisesta käytännössä erittäin vaikeaa. Molemmat ovat vapaita ohjelmia, tukevat lukuisia käyttöjärjestelmiä ja liitännäisten kanssa PGP-salausta. Jos tähän ei ole mahdollisuutta, on palveluksi valittava sellainen, jonka asiakasohjelma on avointa lähdekoodia ja joka säilyttää salausavainta paikallisesti. mobiilisovellus 4. Pidgin soveltuu tähän myös, joskin OTR-laajennus on asennettava erikseen. Sovellusten tarkemmalle tarkastelulle ei tässä ole tilaa, mutta kelpaamattoman tunnistaa Cypherpunk-yhteisön hyväksymillä ”Stefin seitsemällä säännöllä tunnistaa käärmeöljy”: 1. Vahvoja ratkaisuja, kuten Genode, Crash-safe sekä allekirjoittaneen TFC, on jo kehitteillä. Applen, Googlen ja Microsoftin käyttöjärjestelmät edellyttävät sokeaa luottamusta siihen, ettei Yhdysvallat ole vaikenemismääräyksen kera pakottanut yrityksiä lisäämään niihin takaportteja tai viivyttämään niistä löydettyjen haavoittuvuuksien paikkaamista. Lainaten kuuluisaa kryptografia ja tietoturva-alan asiantuntijaa Bruce Schneieria, ”yhteiskunnassa on valittava joko globaalisti tietoturvattomat ja valvotut tai turvalliset ja yksityiset järjestelmät.” Teknologistit puoltavat jälkimmäistä yleisen turvallisuuden, YK ihmisoikeuksien ja ekonomistit globaalin kilpailukyvyn säilyttämisen näkökulmasta
Koodi 2 1 5 . Koska nämä käskykannat eroavat melkoisesti suunnittelufilosofioiltaan, saa niihin tutustumalla myös yleiskäsityksen siitä, millaisia konekieliä on olemassa. Niin kone kuin sen ohjelmatkin muuttuvat taidon myötä paljon käsinkosketeltavammiksi. Vaikka konekieli ei olekaan enää portti taianomaisiin ohjelmointitemppuihin, auttaa sen ymmärtäminen edelleen käsittämään tekniikkaa. Konekielen kiemurat: Portti tietokoneen sielunelämään Konekieli on aina kuulostanut hohdokkaalta tietokoneharrastajan korvaan – onhan se laitteenläheisin taso, jolle ohjelmoija pääsee. Sitä lähisukulaisineen ja klooneineen ovat käyttäneet esimerkiksi Applen, Atarin ja Commodoren 8-bittiset koneet sekä Nintendon NES. Tässä artikkelissa keskitytään selkeyden vuoksi neljään käskykantaan mikrotietotekniikan historian varrelta: 6502, X86, 68K ja ARM. Vanhojen koneiden, mikrokontrollerien ja matalan tason tietoturva-aukkojen parissa askarteleville konekieli on edelleen tärkeä väline. Teksti: Ville-Matias Heikkilä Kuvat: Mitol Meerna, Ville Matias Heikkilä, Visual6502.org, AMD Eri konekielten käskyjä biteiksi purettuna.. Yksittäistä konekieltä kutsutaan myös käskykannaksi tai arkkitehtuuriksi. Konekielen lukutaidosta on silti edelleen hyötyä: kääntäjän työtä pystyy arvioimaan ja lähdekoodittomia ohjelmia tutkimaan ja muokkaamaan. MOS Technologyn 6502 on ollut suosituimpia 8-bittisiä suorittimia. 6502:n perinteinen kilpailija on ollut Zilogin Z80, joka perustuu Intelin 8080:aan. Esimerkiksi PCsuorittimet käyttävät X86-konekieltä ja mobiililaitteet useimmiten ARMkonekieltä. Konekieliä on monia Kaikki koneet eivät suinkaan ymmärrä samaa konekieltä. 2 36 A iemmin konekieliohjelmointi oli liki pakollinen taito esimerkiksi pelitai demo-ohjelmoijalle, mutta nykyisin konekieltä tuottavat lähinnä korkean tason kielten kääntäjät
Ainoat poikkeukset ovat rekisteri R15 eli käskyosoitin sekä erillinen statusrekisteri. Indeksirekisterit X ja Y soveltuvat lähinnä muistiosoitukseen ja silmukkalaskureiksi, mihin taas A ei sovellu. Motorolan 68K:ta käytti suurin osa PC:n kilpailijoista 90-luvun alkupuolelle asti: Amiga, Atari ST, Macintosh, Unix-työasemat. 6502:n rekisteristö on hyvin pieni ja kukin rekisteri on sidottu tiettyihin tehtäviin. 32-bittinen päivitys kuitenkin löyhensi rajoituksia. Ykkösten ja nollien jonot ovat ihmisille vaikeaselkoisia. Suorittimen tai käskykannan bittisyys tarkoittaa yleensä nimenomaan peruslaskutoimitusten suurinta bittileveyttä. Muita RISCejä ovat esimerkiksi MIPS, SPARC, PowerPC ja AVR. Ne ilmaisevat, miten operandiosa tulkitaan – onko kyseessä esimerkiksi muistiosoite vai suora luku – ja antavat sille mahdollisia lisämääreitä: esimerkiksi 68K-käskyn pääte .b , .w tai .l ilmaisee, suoritetaanko toimitus 8-, 16vai 32-bittisenä. Alkujaan Archimedes-kotimikrossa käytetty käskykanta nousi suosioon, koska se tarjosi paljon tehoa vähäisellä piimäärällä. Perus-ARMissa on 32-bittisiä rekistereitä 16, mutta useimmissa muissa risceissä perusrekistereitä on 32 tai enemmän. Rekisterien määrät, leveydet ja käyttötavat vaihtelevat huomattavasti käskykannasta toiseen. Intelin X86 on tuttu IBM PC -yhteensopivista koneista. Konekielikäsky jakautuu yleensä operaatiokoodiin, osoitusmuotoon ja operandeihin. 37 Uudempia, lähinnä sulautetuissa järjestelmissä käytettyjä 8-bittisiä käskykantoja ovat AVR ja PIC. Ohessa on esitetty saman tehtävän suorittava käsky usealla eri konekielellä. PC on ainoa 16-bittinen rekisteri, muut ovat 8-bittisiä. Se perustuu 70-luvun isompien tietokoneiden käskykantoihin ja on suunnittelultaan tyylipuhdas CISC (Complex Instruction Set Computer). ARMin ja muiden riscien rekisteristö on puolestaan hyvin symmetrinen ja yleiskäyttöinen. Näiden lisäksi 6502:ssa on vain pino-osoitin S, statusrekisteri P ja seuraavan käskyn muistiosoitteen ilmoittava käskyosoitin PC. Periaatteessa mitä tahansa rekisteriä voi käyttää mihin tahansa. Suppeaa rekisteriavaruutta täydentää niinsanottu nollasivu eli muistin 256 ensimmäistä tavua, ja monet muistiosoitustavat onnistuvatkin vain nollasivun kautta. ARM on RISC-käskykanta (Reduced Instruction Set Computer). X86:n rekisterit ovat alkujaan erikoistuneita: esimerkiksi muistiosoitukseen on voinut käyttää vain rekistereitä BX, SI, DI ja BP. Samalla konekielellä voi olla useita erilaisia assembly-kielimuotoja, joita eri assembly-kääntäjät eli assemblerit käyttävät – esimerkiksi X86:lla Intelja AT&T-syntaksit. Data pyörii rekistereissä Useimmissa konekielissä suurin osa datankäsittelystä tapahtuu rekistereissä, jotka voi ajatella suorittimensisäisiksi kiinteiksi muuttujiksi. Operaatio on ”verbi”, jota vastaa assemblyssä ensimmäinen sana, jota kutsutaan muistikkaaksi (mnemonic), esimerkiksi add . Käskyn olemus Konekielikäskyt ovat melko tiivisrakenteisia ykkösten ja nollien jonoja. Ihmiset käsittelevät konekieltä tämän vuoksi yleensä symbolisessa eli assembly-muodossa. Operandit ovat sen jäljessä tulevia ”substantiiveja”: rekistereitä, lukuja ja muistiosoituksia. Assembly-esityksestä voi myös arvata, mitä käsky tekee, vaikka käskykanta olisi ennestään tuntematon: esimerkiksi alkukirjaimet ad(d) viittaavat yhteenlaskuun. Kukin käsky summaa luvun 3 johonkin suorittimen sisäiseen rekisteriin, mutta esimerkiksi bittileveys vaihtelee: 6502:n adc laskee 8-bittisillä luvuilla, joiden summat voivat olla enintään muutamia satoja, kun taas ARMin 32 bittiä leveä toimitus yltää miljardeihin asti. Alun perin 16-bittistä käskykantaa on laajennettu ja uudistettu sittemmin radikaalisti – 386-suorittimessa 32-bittiseksi ja 2000-luvulla AMD:n aloitteesta 64-bittiseksi. Suurin osa laskutoimituksissa on pakko tehdä akkurekisterissä eli A:ssa. Uudistuksista huolimatta historian eri kerrokset näkyvät edelleen hyvin läpi X86-konekielessä. Nykyisessä 64-bittisessä toimintamoodissakin on silti edelleen jäljellä käskyjä, jotka on sidottu tiettyihin rekistereihin: esimerkiksi yksitavuinen käsky stosb tallentaa 8-bittisen AL-rekisterin (accumulator low) sisällön muistipaikkaan, johon alkuperäisen DI-rekisterin (destination 64-bittisen nyky-X86:n rekisteristön vanhimmat osat ovat 70-luvulta.. Osoitusmuotoja taasen voi verrata ihmiskielten taivutusmuotoihin. Se dominoi etenkin mobiililaitteita mutta saattaa ennen pitkää syrjäyttää myös X86:n. ARM on tämän hetken suosituin käskykanta
clc asl $FE lda $FE rol $FF adc #$34 asl $FE sta $FE rol $FF lda $FF asl $FE adc #$12 rol $FF sta $FF lp: cmp r0,r1 subgt r0,r0,r1 suble r1,r1,r0 bne lp Suurimman yhteisen tekijän laskeva silmukka ARMille ehdollista suoritusta käyttäen. 2 1 5 . Muita esimerkkejä ovat aliohjelmasta palaavat käskyt (ret, rts ) ja lippujen nostoja laskukäskyt (sec, clc ). 68K:n perusrekisteristö on jaettu kahdeksaan dataja osoiterekisteriin D0-D7 ja A0-A7, joista A7:ää käytetään pino-osoittimena. Intel-X86 68K AT&T-X86 Operandijärjestys add kohde,lähde add.w lähde,kohde addw lähde,kohde Muistiosoitus add ax,[1234] add.w 1234,kohde addw 1234,%ax Välitön luku add ax,1234 add.w #1234,kohde addw $1234,%ax Indeksoitu osoitus [ebx+esi+8] 8(a0,d1.L) 8(%ebx,%esi) Heksadesimaali 1234h $1234 0x1234 Käskyn oma sijainti jmp $ jmp pc jmp . 2 38 index) 64-bittiseksi laajennettu versio RDI osoittaa. Käskyn tyypillinen operandimäärä vaihtelee konekielestä toiseen. 6502:ssa useimmat käskyt ovat yksioperandisia. Tässä muutamia esimerkkejä. Euklideen algoritmi vähentää suuremmasta luvusta pienemmän, kunnes luvut ovat yhtäsuuret. Kaikilla rekistereillä voi suorittaa laskutoimituksia melko yleiskäyttöisesti, mutta muistiosoitukset on hoidettava osoiterekistereillä. Tämä operandi on yleensä muistiosoitus, jolloin laskutoimitus tapahtuu akkurekisterin ja muistipaikan välillä. Osoiterekisterit ovat alun perin 24-bittisiä mutta laajennettiin 68020-suorittimessa 32 bittiin. Operandeina voi kuitenkin käyttää rekisterien lisäksi myös välittömiä lukuja (immediate) tai erilaisia muistiviittauksia. X86 ja 68K ovat kaksioperandisia, eli käskyyn kuuluu lähdeja kohdeoperandi. Nollaoperandisina konekielinä voidaan pitää Forth-tyylisiä pinopohjaisia konekieliä. 16-bittisten lukujen käsittelyä 8-bittisellä 6502:lla: vasemmanpuoleinen esimerkki lisää muistipaikkoihin $FE ja $FF tallennetun luvun arvoon heksadesimaaliluvun $1234, oikeanpuoleinen kertoo sen kahdeksalla bittisiirtoja käyttäen. 8× 4× 2× 1× Etumerkitön Etumerkillinen +0 1 1 +1 1 2 +2 1 1 3 +3 1 4 +4 1 1 5 +5 1 1 6 +6 1 1 1 7 +7 1 8 -8 1 1 9 -7 1 1 10 -6 1 1 1 11 -5 1 1 12 -4 1 1 1 13 -3 1 1 1 14 -2 1 1 1 1 15 -1 Nelibittiset kokonaisluvut tulkittuna etumerkittöminä ja etumerkillisinä kahden komplementtia käyttäen.. Edellä mainittu X86:n stosb on esimerkki tästä niinsanotusta implisiittisestä osoitusmuodosta. Operandien yhdistämisessä on usein AND BIC OR XOR (EOR) NOT Tämän artikkelin käskykantojen bitittäiset operaatiot. Datatavu db 123 ds.b 123 .byte 123 Assembly-syntaksit ovat yleensä melko samankaltaisia, mutta niiden välillä on myös hämääviä eroja. Tyypilliseen ARM-käskyyn puolestaan kuuluu kolme operandia – kaksi lähdettä ja yksi kohde. SHL, (SAL, ASL, LSL) ROL ROR SHR (LSR) SAR, ASR Bittisiirtokäskyjen toiminta. Käskyt taipuvat osoitusmuodoissa Rakenteeltaan yksinkertaisimmat konekäskyt eivät saa operandeja lainkaan, joten niiden toiminta on sidottu tiettyihin rekistereihin. Mustinumerolliselle RORille ja ROLille on monissa käskykannoissa omat nimet, esimerkiksi RCR ja RCL. Useimmilla suorittimilla valtaosa konekielikoodista on rekisterienvälistä pyörittelyä. Erikseen on vielä statusrekisteri CCR ja käskyosoitin PC. BIC on käytössä ARMissa
AMD Phenom X4 -suorittimen sisukset. ARMin ja 68K:n muistinkäsittelyä tehostavat osoitusmuodot, joissa rekisterin sisältöä kasvatetaan tai vähennetään samalla, kun sitä käytetään muistiosoituksessa. Näiden välissä on muu toimintalogiikka, esimerkiksi hyppyjen ja lippujen käsittely. Muistiviittaukset voivat kuitenkin cisc-filosofian mukaisesti olla hyvinkin monimutkaisia. 39 rajoitteita: X86:ssa jommankumman operandin on aina oltava rekisteri tai välitön luku, eli esimerkiksi suoraa käskyä ”lisää muistipaikan 1 arvoon muistipaikan 2 arvo” ei ole. Motorola 68000:n sisukset. Löydätkö laskentaja rekisteriyksikön?. Esimerkiksi 32-bittinen X86-käsky mov eax,[ebx+ecx*4+1256] muodostaa muistiosoitteen summaamalla vakion ja kaksi rekisteriä, joista ECX:n bittejä vielä siirretään kaksi pykälää vasemmalle. 6502:n ja X86:n ehdollisilla hyppykäskyillä voi hypätä enintään 128 tavua eteentai taaksepäin, minkä ansiosta käskyn pituudeksi riittää kaklp: movem (a0)+,(d1-d7) lp: subcc r2,r2,#1 movem (d1-d7),-(a1) ldmia r0,(r3-r13) dbne d0,lp stmdb r1,(r3-r13) bne lp Silmukka, joka kopioi muistialueen sisällön käänteisessä järjestyksessä toiselle muistialueelle rekisterijoukkokäskyjä käyttäen. Vasemmalla 68K, oikealla ARM. Alapuoliskoa hallitsee 8-kaistainen laskentaja rekisteriyksikkö, ylimpänä puolestaan näkyy käskyt suoritusvaiheiksi kuvaava mikrokooditaulukko. Muistipaikkoihin on monesti kätevää viitata suoran osoitteen sijaan pitämällä käskyn omaa sijaintia kiinnekohtana. 6502-suorittimen sisukset. Tämä on kätevää muistialueita läpikäytäessä. Neljän symmetrisesti asetetun 64-bittisen suoritinytimen alasta valtaosa on välimuistia ja käskyjen purkuja järjestelylogiikkaa. Muistinkäsittely on hoidettava omilla load-store-käskyillään (ld, st, mov ), jotka eivät laske mitään. ARMin kaltaisissa risceissä useimmat käskyt voivat saada operandeikseen vain rekistereitä tai välittömiä lukuja
Aiemmin mainittu muistinumerolippu on yksi näistä. POP, PL pop, pull Poimi pinon päällimmäinen arvo. ADC, ADDX add with carry/extend Summaa muistinumeron kera. • Muistinumerolippu (C, carry), vastaa laskutoimituksesta yli jäänyttä bittiä. Joskus laskutoimituksen tulos ei mahdu kohderekisteriin. EOR, XOR exclusive or Bitittäinen poissulkeva tai. Tyypillisiä lippuja ovat: • Nollalippu (Z, zero), joka ilmaisee, oliko laskun tulos nolla. ROL, RL, RCL rotate [with carry] left Pyöritä bittejä myötäpäivään [C-lipun kautta]. LSL, SHL [logical] shift left Siirrä bittejä oikealle jatkaen nollalla. Saman bittijonon voi tulkita joko etumerkillisenä tai etumerkittömänä, ja erot tulevat esiin etenkin kertoessa, jakaessa ja vertaillessa. AND and Bitittäinen ja-operaatio. Jossittelu Korkean tason kielten if -lausetta vastaa konekielessä useimmiten ehdollinen hyppy. ARMissa lippuvaikutus ilmaistaan käskykohtaisesti käskysanan päätteellä cc (condition codes). ASL, SAL arithmetic shift left Siirrä bittejä oikealle jatkaen ylintä bittiä. Tieto laskutoimituksen tuloksesta tallentuu yleensä niinsanottuihin lippuihin, jotka ovat statusrekisterin bittejä. NEG negate Vaihda etumerkki. Ohjelmakoodia, joka ei käytä suoria osoitteita lainkaan, kutsutaan sijaintiriippumattomaksi (position-independent), koska sitä voi ajaa sellaisenaan mistä kohdasta muistia tahansa. Pelkkiä ykkösiä sisältävä luku on siis arvoltaan -1, aivan kuin kasettinauhurin laskuri, joka 000:sta taaksepäin kelatessa pyörähtää 999:ään. 2 40 si tavua. DEC decrement Vähennä yhdellä. SBB, SBC, SUBX subtract with borrow/carry/extend Vähennä muistinumeron kera. Hyppykäskyt on yleensä nimetty vertailun näkökulmasta: jos vähennyslaskun tulos on nolla, niin luvut ovat yhtäsuuret (e/eq, equal). ADD add Summaa. Negatiiviset kokonaisluvut ilmaistaan lähes aina niinsanottuna kahden komplementtina, jossa etumerkki vaihdetaan kääntämällä bitit ympäri ja lisäämällä tulokseen yksi. INC increment Kasvata yhdellä. Liukulukuja taasen käsitellään omilla liukulukuyksiköillään, joilla on omat rekisterinsä ja käsittelykäskynsä. Summan ylin bitti tallennetaan yleensä niinsanottuun muistinumerolippuun (C, carry flag). Bittioperaatioiden toiminta on esitetty oheisissa kaavioissa. Peruslaskutoimitukset. 2 1 5 . Esimerkiksi kahden 8-bittisen luvun summa on 9-bittinen. Esimerkiksi käsky addeq toimii kuten add , mutta se suoritetaan vain, jos nollalippu on ylhäällä. MOV, MOVE move Kopioi dataa rekisteristä tai muistista rekisteriin tai muistiin. Esimerkiksi käsky nimeltä beq , je tai jz hyppää operandina annettuun muistiosoitteeseen, jos edellisen laskutoimituksen tulos oli nolla. Esimerkiksi add r0,r1,r2 asr r3 vastaa C-kielen lauseketta r0=r1+(r2>>r3) . OR or Bitittäinen tai-operaatio. • Ylivuotolippu (O tai V, overflow) asetetaan, kun muistinumerolippu ei riitä tuloksen jatkeeksi. ROR, RR, RCR rotate [with carry] right Pyöritä bittejä vastapäivään [C-lipun kautta]. Bittioperaatioita ovat paitsi bitittäiset loogiset operaatiot (and, or , eor / xor ) ja bittisiirrot (shifts), joita on monta lajia. Laskenta on koneen leipätyö Valtaosa suorittimista laskee oletusarvoisesti binäärimuotoisilla kokonaisluvuilla. ASR, LSR, SHR [arithmetic/logical] shift right Siirrä bittejä vasemmalle. LD load Lataa muistista. NOT not Käännä bitit päinvastaisiksi. ARMissa ei myöskään aina tarvita ehdollisia hyppyjä, sillä minkä tahansa käskyn suorituksen voi ehdollistaa. Ennen hyppykäskyä käytetään usein vertailukäskyä cmp /cp, joka suorittaa vähennyslaskun tallentamatta tulosta mihinkään. Kokonaislukujen yhteenja vähennyslaskut (add, sub ) ovat tarjolla joka konekielessä. Kertoja jakolaskut (mul, div ) puuttuvat yleensä kasibittisisistä koneista, joissa ne on toteutettava aliohjelmilla tai taulukoilla. ”Aritmeettisen” ja ”loogisen” bittisiirron merkitysero on se, että ”aritmeettisessa” luku oletetaan etumerkilliseksi, joten sen ylin bitti pidetään ennallaan. MUL multiply Kerro. 6502:ssa, X86:ssa ja 68K:ssa jokainen laskentakäsky vaikuttaa lippuihin. ARMin erikoisuutena on se, ettei siinä ole lainkaan itsenäisiä käskyjä bittisiirroille, mutta bittisiirron voi yhdistää minkä tahansa laskentaoperaation toiseen lähdeoperandiin. Datansiirto. • Etumerkkilippu (S, sign tai N, negative), joka vastaa rekisteriin mahtuneen tuloksen ylintä bittiä, joka on negatiivisilla luvuilla 1. Aliohjelmakutsut ottavat käskyosoittimen arvon talteen, jotta EX, EXG, XCHG exchange Vaihda rekisterien sisällöt keskenään. ST store Tallenna muistiin. SUB subtract Vähennä. Toisten tavarat pinoon talteen Tavallinen ehdoton hyppykäsky on nimeltään esimerkiksi jmp , bra tai b , aliohjelmahyppy puolestaan jsr , bsr , call tai bl . Ehdolliset hyppykäskyt tutkivat lippuja ja suorittavat hypyn, mikäli käskyn mukainen ehto täyttyy. 6502:ssa, 68K:ssa ja X86:ssa on tarjolla myös binäärikoodattu desimaali (BCD), jossa kutakin desimaalinumeroa 0-9 vastaa neljä bittiä. PUSH, PH push Lisää pinon päällimmäiseksi. Bittioperaatiot.. Muistinumeroa käytetään laskutoimitusten ketjuttamiseen: käskyt adc / addx ja sbc /sbb/subx ovat yhteenja vähennyslaskuja, jotka ottavat mukaan aiemmasta käskystä jääneen muistinumeron. DIV divide Jaa. Risceissäkin on yleensä suoraan vain kertolasku
VS, O overflow set Ylivuotolippu ylhäällä. Pankituksessa valitaan, mitkä osat kokonaismuistista näkyvät tietyillä muistiavaruuden alueilla. NOP no operation Älä tee mitään. CMP, CP compare Vertaa (vähennä tallentamatta tulosta). JMP, JP, B, BRA jump/branch Hyppää muistipaikkaan. BIT, BT, BTST, TEST bit test Vertaa yksittäisiä bittejä (ja-operaatio tallentamatta tulosta). Yksinkertaisimmissa laitteissa fyysisillä RAM-, ROMja ohjauspiireillä on kiinteät alueet osoiteavaruudessa. C). BL, BAL branch and link Hyppää aliohjelmaan, paluuosoite linkkirekisteriin. Nykysuorittimilla laskuoperaatio saa sen sijaan olla jo todella monimutkainen, jotta sille kannattaisi laskea valmis taulukko. Vertailu ja liput. HLT halt Pysäytä suoritin (jää odottamaan keskeytystä). Ehdot (käskyjen osana).. JSR, JR, BSR jump/branch to subroutine Hyppää aliohjelmaan, paluuosoite pinoon. CC, NC no/clear carry Muistinumero = CS, C carry set Muistinumero = 1 EQ, E, Z equal/zero Luvut yhtäsuuret (nollalippu) GT, G greater [than] Ensimmäinen > toinen LT, L less [than] Ensimmäinen < toinen NE, NZ not equal/zero Luvut erisuuret (nollalippu alhaalla) NS, PL no sign, plus Tulos ei-negatiivinen (etumerkki = 0) S, MI sign, minus Tulos negatiivinen (etumerkki = 1) VC, NO no/clear overlow Ylivuotolippu alhaalla. Pinoon tallennetaan muutakin kuin paluuosoitteita. 6502 ja X86 puolestaan tallentavat alimmat bitit ensin, eli tavujärjestys on nouseva (little-endian). NE) täyttyy. Riscit sen sijaan käyttävät rekisteriä, jonka aliohjelma pinoaa itse mikäli aikoo kutsua muita aliohjelmia. Näennäismuistin ansiosta kaiken ohjelmalle näkyvän muistin ei tarvitse vastata fyysistä muistia. Paluukäsky on tyypillisesti nimeltään ret tai rts . VIC-20-ohjelmassa muistipaikkaan $900F kirjoittaminen vaikuttaa aina videopiirin värirekisteriin. RET, RTS return from subroutine Palaa aliohjelmasta pääohjelmaan. CLf clear flag Nollaa lippu (esim. Nykykäyttöjärjestelmissä muistin näennäistä rakennetta sen sijaan muutellaan, jotta eri prosessit eivät pääsisi käsiksi niille kuulumattomille muistialueille. Hyppykäskyt. ARMin takaisinlinkittävä hyppykäsky on bl (branch and link). Ohjelman kannalta kone toimii siten, kuin koko levyn sisältö olisi jatkuvasti muistissa. Isompien ohjelmakokonaisuuksien kasassa pitämiseksi on yleensä sovittu niinsanottuja kutsukäytäntöjä (calling convention). Kun ohjelma yrittää lukea muistipaikkaa, joka ei ole fyysisessä muistissa, se aiheuttaa poikkeustilanteen, jonka käyttöjärjestelmä käsittelee hakemalla levyltä halutun kohdan fyysiseen muistiin. Scc, SETcc set on condition Aseta rekisterin arvo totuusarvon (esim. 70-lukulaisilla suorittimilla muistin nopeus ei vielä muodosta pullonkaulaa. Koska aliohjelmat käyttävät samoja rekistereitä kuin pääohjelmakin, on niiden arvoja usein tarpeellista raivata pinoon talteen. 68K käyttää laskevaa tavujärjestystä (big-endian), eli ensimmäiseen tavuun tulee luvun eniten merkitsevä osa. Lisäksi pinosta voidaan varata tilaa sellaisille paikallismuuttujille, jotka eivät mahdu rekistereihin. C). ARMissa ja 68K:ssa on myös käskyt, joilla haluamansa rekisterijoukon voi tallentaa tai ladata yhdellä kertaa. Maailma on muistia Suorittimen näkökulmasta koko ulkoinen maailma on muistia. Esimerkiksi 6502:lla kannattaa käyttää nopeuskriittisessä koodissa muistinvaraisia taulukoita ja aukirullattuja silmukoita mikäli ne suinkin mahtuvat muistiin. Samalla koodin oikeutta muuttaa suorittimen tilaa rajoitetaan siirtymällä sen suorittamisen ajaksi niinsanotusta valvojatilasta (supervisor mode) käyttäjätilaan (user mode). Aukirullauskaan ei enää kannata: sisäisten välimuistien ja älykkäiden liukuhihnojen ansiosta se todennäköisemmin hidastaa kuin nopeuttaa koodia. Linkkirekisteri on yleensä R14 ja käskyosoitin R15, joten aliohjelmasta palataan käskyllä mov r15,r14 . NE) mukaiseksi. Muita käskyjä. Monimutkaisemmissa koneissa ohjelmalle näkyvää muistin rakennetta voi sen sijaan muuttaa. Jos koneessa on enemmän muistia kuin osoiteavaruuteen mahtuu, esimerkiksi 6502-pohjaisessa koneessa yli 64 kilotavua, tarvitaan pankitusta (banking). SWI, INT, TRAP, BRK, SYSCALL software interrupt, trap, break, system call Suorita ohjelmallinen keskeytys. Vanhemmat käskykannat tallentavat paluuosoitteen yleensä pinoksi kutsutulle muistialueelle. X86:ssa ja 6502:ssa on pino-osoittimeen sidotut pushja pop/pull-käskyt, kun taas ARMissa ja 68K:ssa pinonkäsittelyyn käytetään tavallisia muistinkäsittelykäskyjä. SEf, STf set flag Aseta lippu (esim. Kun muistiin tallennetaan useista tavuista koostuvia lukuja, on tähän kaksi päätapaa. 41 aliohjelmasta voidaan palata siihen kohtaan, mihin sitä kutsuttaessa jäätiin. Bcc, Jcc branch/jump on condition Hyppää, jos ehto (esim. Jos osoiteavaruus on riittävän suuri, ohjelma voi pyytää käyttöjärjestelmää kuvaamaan vaikkapa koko kiintolevyn sisällön näennäismuistiin. Nämä määrittelevät, miten pääohjelma ja aliohjelma välittävät parametrinsa ja paluuarvonsa, ja mitkä rekisterit aliohjelmalla on lupa sotkea. ARM toimii kummalla tavujärjestyksellä tahansa, joskin nouseva järjestys on nykyään yleisempi. DBcc, LOOP decrement and branch, loop Vähennä rekisterin arvoa ja hyppää jos ehto täyttyy. Muisti jakautuu yleensä 8-bittisen tavun kokoisiin muistialkioihin, joista kullakin on oma numeerinen osoite
silmu0 lodsb ; AL <[DS*16+SI], SI kasvaa. ARMin ehdollinen käskynsuoritus on yksi näistä: yhden tai parin käskyn suorittamatta jättäminen on edullisempaa kuin liukuhihnan tyhjennys. Ohjelmoija voi laskea koodinsa suoritusajan tällaisella suorittimella yksinkertaisesti summaamalla käskyjen viemät kellojaksot ja jakamalla tuloksen kellotaajuudella. Alkuperäisessä Archimedeen ARMsuorittimessa on kolmivaiheinen liukuhihna: suoritin tallentaa yhden laskutoimituksen tuloksen rekisteriin samaan aikaan, kun se laskee seuraavan käskyn laskutoimituksen ja lukee muistista sitä seuraavan käskyn. Jotta suorittimen ei tarvitsisi jatkuvasti kysellä eli pollata laitteiden tiloja, on olemassa keskeytykset: laite voi lähettää suorittimelle keskeytyskutsun (IRQ, interrupt request), joka saa sen keskeyttämään senhetkisen toimintansa ja siirtymään käsittelyrutiiniin. Edistyneempi tekniikka on haarautumisen ennakointi (branch prediction), jossa suoritin arvaa etukäteen, tuleeko hyppy toteutumaan, ja lataa käskyjä liukuhihnalle sen mukaan. 6502:ssa, 68K:ssa ja ARMissa nämä rekisterit näkyvät osana muistiavaruutta. herja db "Tilaa Skrolli!! " 6502-esimerkki Commodore 64:lle. 2 1 5 . Riscin kantaviin ajatuksiin kuuluu, että yksinkertaisten käskyjen suoritusvaiheet voivat olla rinnakkaisia. X86 taasen käyttää tähän erillisiä I/Oportteja, joita käsitellään in ja out -käskyillä. 2 42 Laitteita ohjaamaan Tietokonelaitteistoon kuuluu oheispiirejä, joilla on omat ohjausrekisterinsä. tay ; Tulos Y:hyn ja haetaan lda herja,y ; tavu osoitteesta herja+Y. Ongelman ehkäisemiseen on useita tapoja. rts ; Palataan BASIC-tulkkiin. mov ah,14 ; Väri AX:n ylempään tavuun. mov ax,0xb800 ; Näyttömuistin alkuosoite mov es,ax ; .. 90-luvun puolestavälistä alkaen monimutkaiset X86-käskyt on yleensä pilkottu risc-tyylisiksi mikrokäskyiksi, joihin sitten sovelletaan edellämainittuja tekniikoita. segmenttirekisteriin. stosw ; AH*256+AL -> [ES*16+DI], DI +2. Yksinkertaisimmillaan keskeytys ei juuri eroa aliohjelmakutsusta. Käskyn suoritus jakautuu useisiin peräkkäisiin vaiheisiin, jotka on koodattu suorittimen sisäiseen mikrokooditaulukkoon. ACME-ristiinkääntäjän tuottama PRG-tiedosto käynnistyy suoraan vaikkapa VICEemulaattorissa. Liukuhihnatekniikka tekee hypyistä suhteessa kalliita. Monta käskyä samaan aikaan Yleisesti käytetyt käskykannat periytyvät vuosikymmenten takaa, mutta suorittimien toimintatavat ovat muuttuneet tänä aikana huomattavasti. Erikoiskäskyjä erikoistehtäviin Vaikka peruskäskykannoilla pystyykin jotenkuten tekemään kaiken, on niille !to "skrolli.prg",cbm *=$0801 ; Ohjelman alkuosoite. bne silmu ; Toistetaan kunnes pyörähti. 16-bittinen X86-esimerkki MS-DOSille. inx ; Kasvatetaan X:ää. Kun hyppykäsky toteutuu, joudutaan sen jälkeen tulevien käskyjen suoritusvaiheet hylkäämään. herja !scr "tilaa skrolli!! " bits 16 ; Nasm 16-bittiseen tilaan. sta $0400,x ; Kirjoitetaan se sta $0500,x ; näyttömuistin kullekin sta $0600,x ; 256-tavuiselle sta $0700,x ; lohkolle kohtaan X. ; Pakollinen BASIC-osuus 10 SYS2061 + loppunollat: !byte $0b,$08,$0a,$00,$9e,$32,$30,$36,$31,0,0,0 ldx #0 ; Laskuri (X) nollaan. loop silmu0 ; CX vähenee, toistetaan kunnes 0. Useimmat käyttöjärjestelmät suorittavat joitakin kymmeniä kertoja sekunnissa ajastinkeskeytyksen, jotta tietyt juoksevat asiat saadaan hoidettua. Monissa suorittimissa on useita rinnakkaisia liukuhihnoja, eli ne suorittavat peräkkäisiä käskyjä aidosti samaan aikaan. silmu1 mov si,herja ; Lähdeosoitin tekstin alkuun. Ohjelma kääntyy NASMilla suoraan COM-tyyppiseksi ohjelmatiedostoksi.. ret ; Palataan komentotulkkiin. xor di,di ; Kohdeosoitin nollaksi. Erityisesti rinnakkaisuutta on tullut lisää. Aliohjelman alkuosoite haetaan keskeytyksen tyypin ja mahdollisen numeron mukaan hyppytaulukosta. jne silmu1 ; Jos ei, jatketaan toistoa. Usein peräkkäiset käskyt ovat kuitenkin riippuvaisia toistensa tuloksista, joten ohjelmoijan tai suorittimen on hyvä järjestää käskyt siten, etteivät peräkkäiset käskyt käytä samoja rekistereitä. cmp di,80*25*2 ; Ollaanko käyty koko näyttö. Suorittimen automatiikassa tällaisia tekniikoita ovat out-of-order execution ja register renaming. silmu txa ; X akkuun jotta saadaan and #15 ; laskettua X AND 15. org 0x100 ; COM-ohjelman alkuosoite. mov cx,16 ; Silmukkalaskuriksi 16. Nykykäyttöjärjestelmissä keskeytys myös siirtää suorittimen valvojatijaan. X86 on tuottanut aivan omia haasteitaan suoritinsuunnittelijoille. Spekulatiivisessa suorituksessa puolestaan suoritetaan molemmat vaihtoehdot ja jätetään vain toisen vaikutukset voimaan. Perinteiset cisc-suorittimet ajavat vain yhtä käskyä kerrallaan. Vain valvojatilassa toimiva käyttöjärjestelmä voi käsitellä ulkoisia laitteita, ja sovellukset tekevät käyttöjärjestelmän apua tarvitessaan niinsanotun ohjelmallisen keskeytyksen (NMI, non-maskable interrupt). 6502-käskyn suoritus koostuu 2–8 vaiheesta, kun taas 8086:n jakolasku vie yli sata kellojaksoa
Kääntäjät tukevat myös inlineassemblyä, eli assembly-osien upottamista korkean tason kielen sekaan. Laitteen toimintaan on näissä mahdollista sukeltaa yksittäisten bitinliikkeiden ja kellojaksojen tarkkuudella, ja suorittimen erityispiirteitä voi hyödyntää tavoilla, jotka katoavat korkean tason kielillä näkymättömiin. Esimerkkejä SIMD-laajennoksista ovat X86:n MMX ja SSE sekä ARMin NEON. SSE tukee liukuluvuille myös neliöjuuren kaltaisia monimutkaisia toimituksia, ja nyky-X86:ssa se onkin syrjäyttänyt vanhat X87-käskyt. SIMD-käskyt operoivat nimensä mukaisesti usealla erillisellä data-alkiolla rinnakkain. movq $1024,%rbp mov r8,#1024 # Suoritetaan järjestelmäkutsu write(1,herja,15), # missä 1 on standardiulostulo ja 15 pituus. # Write-kutsun numero on 64-bittisessä Linuxissa 1 # ja 32-bittisessä 4. Sen tiedoilla voi yrittää tutkia assembly-koodia, mutta syvempään tutustumiseen on hyvä olla kattavat käskykantatai suoritinkohtaiset dokumentit. Käskyjä on myös esimerkiksi data-alkioiden uudelleenjärjestelyyn. Assembly-kääntäjien ohella voi käyttää myös suorempia työkaluja. Konekielimonitorit ja debuggerit on tarkoitettu muistin ja muistinvaraisen ohjelman käsittelyyn lennossa. 90-luvulla DSP-tyyppisiä SIMD-käskystöjä (single instruction, multiple data) alkoi ilmestyä myös perussuorittimiin. Koodin nopeuttamista ei kannattane käyttää motivaattorina nykysuorittimien konekieliohjelmoinnin opetteluun – sen sijaan kannattaa kokeilla esimerkiksi mahdollisimman pienten ohjelmien kirjoittamista. silmu: movq $1,%rax mov r7,#4 movq %rax,%rdi mov r0,#1 movq $herja,%rsi adr r1,herja movq $15,%rdx mov r2,#15 syscall swi # Vähennetään laskuria, hypätään jos ei nolla. Samanaikaisia laskutoimituksia saattaa siis tapahtua taskussa enemmän kuin entisajan supertietokoneessa. decq %rbp subcc r8,r8,#1 jnz silmu bne silmu # Suoritetaan järjestelmäkutsu exit(0) movq $4,%rax mov r7,#1 xorq %rdi,%rdi mov r0,#0 syscall swi # Tulostettava merkkijono: herja: .string "Tilaa Skrolli! " Kernel-kutsuja käyttävä Linux-esimerkki 64-bittiselle X86:lle (vasemmanpuoleiset käskyt) ja 32-bittiselle ARMille (oikeanpuoleiset). Liukulukumatematiikkaa on vanhastaan tarvittu etenkin tieteellisessä laskennassa. 43 monesti olemassa erityisiä laajennoksia, jotka nopeuttavat tietyntyyppisten tehtävien suorittamista. Lisäksi piirillä on 288-laskentayksikköinen grafiikkasuoritin, 32-bittinen DSP sekä eri radioprotokolliin erikoistuneita ohjainpiirejä. Tämän jälkeen konekieliohjelmoinnin saloihin pääseekin parhaiten sisään valitsemalla itselleen jonkin mieluisen projektin ja ohjelmoimalla itse. Isommilla laitteilla helpoin tie konekielen pariin löytyy korkean tason kielten kääntäjistä: esimerkiksi GCC kääntää -S -vivulla lähdekooditiedoston assemblyksi, jota voi tutkia ja muokata itse. Pieniä laitteita konekieliohjelmoidaan useimmiten ristiinkääntäjillä (crossassembler), ja apuna voi usein käyttää myös emulaattoreita. Esimerkiksi Qualcommin Snapdragon 810 -piiri sisältää kahdeksan 64-bittistä ARM-suoritinydintä, joista kullakin on kolme erillistä liukuhihnaa ja NEONja liukulukulaajennokset. PC-suorittimiin alkoi tulla integroituja liukulukuyksiköitä 486-aikakaudella, mutta pelikonsolija mobiilimaailmassa liukulukulaitteisto ei ole ollut vielä 2000-luvullakaan mikään itsestäänselvyys. Esimerkiksi MMXkäsky paddb mm0,mm1 tulkitsee 64-bittisten multimediarekisterien MM0 ja MM1 arvot erillisten 8-bittisten tavujen riveinä laskiessaan ne yhteen. Ideana on, että luvut esitetään käyttäen kantalukua ja ”nollamäärää” (eli mantissaa ja eksponenttia), jolloin niiden arvoalue on huomattavasti laajempi kuin kokonaisluvuilla. .globl _start _start: # Alustetaan silmukkalaskuri. Heksaeditoreilla voi puolestaan tutkia ja muokata ohjelmatiedostoja suoraan, ja monet niistä osaavat esittää tiedoston sisällön myös assemblynä. SSE:n ja NEONin rekisterit ovat 128-bittiset, ja alkiot voivat olla myös liukulukuja. Kuvaja äänidatan käsittelyn nopeuttamiseen on käytetty digitaalisia signaaliprosessoreita (DSP). Ohjelma kääntyy kohdekoneella käskyllä gcc -nostdlib ohjelma.s -o ohjelma tai erikseen as-assembleria ja ld-linkkeriä kutsumalla.. # Määritellään linkkeriä varten symboli _start, # joka osoittaa ohjelman ajon alkukohtaan. Etenkin mobiilimaailmassa yksiin kuoriin on integroitu valtava määrä erikoistunutta laskentalogiikkaa. Ja sitten räpeltämään Luontevimmat ja usein palkitsevimmat kohteet konekielitason askarteluun löytyvät yksinkertaisesta tietotekniikasta – esimerkiksi vanhoista kotimikroista, sulautetuista järjestelmistä ja Arduinon kaltaisista elektroniikkaalustoista. Valmiita oppaita kannattaa etsiä kohdekoneen mukaan. Tämä artikkeli oli tiivis pintakatsaus konekielen olemukseen
Yatesin kirjassa The Art of Memory (1966). Käyttäjä syöttää ohjelmaan kysymys–vastaus-pareja, joita ohjelma sitten kuulustelee. Se on kovaa työtä, ja ahkerankin pänttäämisen tuloksilla on taipumus haihtua muistista nopeasti. Moni muistaa yhä puhelinnumeroita ajalta ennen kännyköitä, ja niitä nyt muistelemalla muistijäljet vahvistuvat entisestään. 2 44 J okainen meistä on joskus opetellut asioita ulkoa. Tietokoneet apuun On olemassa tietokoneohjelmia, jotka pyrkivät ajoittamaan kertaamisen mahdollisimman hyvin. Aikavälikertauksessa tietokone arvioi, kuinka pitkään käyttäjä voi huoletta olla kertaamatta tietoa. Jos oikea vastaus löytyy silloinkin, voi seuraava intervalli eli aikaväli olla kahdeksan päivää. Kaikkea oppimaansa ei tosin voi kerrata päivittäin, eikä siinä mitään järkeä olisikaan. Unohtamista voi tietysti ehkäistä kertaamalla. Nyrkkisääntönä on, että kannattaa kerrata juuri ennen kuin tieto olisi unohtunut. Vuonna 1885 julkaisemassaan tutkimuksessa hän kuvasi, kuinka hän oli opetellut ulkoa satunnaisia kirjainyhdistelmiä ja testannut, miten pitkään Aikavälikertaus muistin tukena Harmittaako unohtelu. Jos käyttäjä muistaa oikean vastauksen vaikkapa kaksi päivää kysymyksen lisäämisen jälkeen, ohjelma saattaa ajoittaa seuraavan kertauksen neljän päivän päähän. 2 1 5 . Nimittäin mitä paremmin jokin fakta on muistiin iskostunut, sitä kauemmin kestää ennen kuin se unohtuu. Kyse ei sentään ole The Matrix -elokuvassa nähdyn kaltaisesta ”uploadauksesta”, mutta mielleyhtymiltä ei voi välttyä, kun teknologia auttaa optimoimaan ihmisen muistia. spaced repetition software, SRS). Foerin Moonwalking with Einstein: The Art and Science of Remembering Everything (2011).. Kiinnostavalta vaikuttaa myös tuoreempi J. Tällaisia ohjelmia kutsutaan aikavälikertausohjelmiksi (engl. Ihmisen muisti toimii siten, että kertausten karttuessa sopivat intervallit kasvavat kuukausien tai jopa vuosien mittaisiksi. Hyvin opittua ei tarvitse kerrata usein; vastikään opittu taas vaatii enemmän työtä säilyäkseen muistissa. Mainio katsaus aiheeseen on F. Aikavälikertausohjelmat hoitavat homman. Niiden käyttämät aikavälien laskentakaavat pohjaavat tieteelliseen tietoon muistin toiminnasta. Täytyy korostaa, että aikavälikertaus on enemmän kuin vain joukko kysymyksiä ja vastauksia, joita kuulustellaan pahvikorttien tai tietokoneohjelman avulla. Mitä jos siirtäisit vastuun muistamisestasi algoritmille. Muinaiset kreikkalaiset ja roomalaiset käyttivät monenlaisia muistisääntöjä ja -tekniikoita esimerkiksi puheiden ulkoa opetteluun. Jos muistiin taotut tiedonmuruset ovat tärkeitä tai hyödyllisiä, niiden unohtaminen voi olla valtava vahinko. Keskiajalla muistitekniikoihin yhdistettiin myös erilaisia okkultistisia järjestelmiä. Teksti: Jussi Määttä Kuvat: Sakari Leppä, Jussi Määttä, Mitol Meerna Yleistietoa muistitekniikoista Muisti ja keinot sen vahvistamiseksi eivät lakanneet kiinnostamasta ihmisiä kirjoitustaidon keksimisen myötä. Unohtamisen lait Saksalainen psykologi Hermann Ebbinghaus on tärkeä mies muistamisen ja unohtamisen tutkimuksen historiassa. A
Pohjimmiltaan aikavälikertausohjelmat siis yrittävät arvioida, kuinka tukevasti mikäkin fakta on käyttäjän mielessä, ja laskea sitten unohduskäyrän avulla, milloin asia kannattaa seuraavan kerran kerrata. Kysymyskortteja laatiessa on syytä kiinnittää huomiota myös aktiivisen ja passiivisen muistamisen eroon. Heikkenemisvauhti riippuu siitä, miten vahvasti tieto on muistiin kirjoittunut, ja tätä voidaan arvioida laskemalla tehtyjen kertausten lukumäärä. Suunnilleen sata vuotta Ebbinghausin tutkimuksen julkaisun jälkeen, vuonna 1987, puolalainen Piotr Wo?niak julkaisi ensimmäisen version Supermemo-ohjelmastaan. Tutkimuksensa tuloksena Ebbinghaus sai tukea hypoteesilleen unohduskäyristä (engl. 45 ne säilyivät muistissa. Ohjelma pyytää käyttäjää kertomaan, muistiko tämä vastauksen vai ei, oliko kysymys helppo vai muistaako käyttäjä koskaan edes nähneensä vastausta. Käyttökohteita ja -tapoja Tyyppiesimerkki aikavälikertauksen käytöstä on vieraan kielen sanaston opettelu. Kielen ymmärtäminen on passiivinen taito, kun taas sen tuottaminen on aktiivinen taito. Sanaston pänttäyksessä tulisi siis välttää yhdistämästä useita eri sanoja samaan kysymykseen. Wo?niak kutsuu tätä pienimmän informaatiomäärän periaatteeksi. Suomennoksen antaminen vieraan kielen sanalle on passiivista muistamista ja suomenkielisen sanan kääntäminen vieraalle kielelle aktiivista. Kyseessä on verrattain yksinkertainen matemaattinen malli, joka kuvaa, kuinka muistijälki alkaa heiketä kertauksen jälkeen. forgetting curve). Ennen ohjelman toteuttamista Wo?niak testasi algoritminsa toimivuutta parin vuoden ajan laskemalla kertausaikavälejään kynän ja paperin avulla. Oppimisen kannalta lienee parasta tehdä jokaisesta sanasta kortti kumminkin päin. Wo?niak oli kiinnostunut muistista jo vuosia aiemmin yliopisto-opintojensa innoittamana, ja Supermemo oli pitkällisen suunnittelun ja kokeilun tulos. Sen 1.0-versio on tiettävästi ensimmäinen julkaistu aikavälikertausohjelma. Kieltä ei opi pelkästään sanastoa tankkaamalla, mutta aikavälikertaus taipuu myös luetun ymmärtämisen harjoitteluun. Tämän perusteella algoritmi päivittää arvionsa muistijäljen vahvuudesta ja laskee uuden intervallin. Yleisesti pidetään hyvänä, että kysymys–vastaus-parit ovat mahdollisimman yksinkertaisia ja nopeasti käsiteltäviä. Monet ovat käyttäneet varsinkin japanin opiskeluun niin kutsuttua AJATT-metodia, jonka nimiSupermemon tehokäyttäjille suunnattu Warrior-tila ei sovellu hellämielisille.. Käytännössä tämä tapahtuu siten, että kun ohjelma esittää käyttäjälle kysymyksen, käyttäjä vastaa siihen mielessään ja painaa sitten nappia, jolloin ohjelma näyttää oikean vastauksen
Jos huomaa miettivänsä, pitäisikö ohjelmaan syöttää kummitädin syntymäpäivä tai Norjan lipun mittasuhteet, on syytä pohtia, onko harrastus lähtemässä käsistä. Sitä ei voi suositella muille kuin asiaan todella vihkiytyneille, sillä ohjelman lukemattomat toiminnot ja äärimmäisen sekava käyttöliittymä vaativat viikkojen opettelun. Ohjelmien kehittäjät ovat yrittäneet keksiä kertausten kasaantumisen pulmaan erilaisia ratkaisuja, mutta pohjimmiltaan ongelmaa voi vain piilotella tai lykätä. Eräitä kertausohjelmia SRS-sovelluksista parhaimpia lienevät avoimen lähdekoodin Anki (http://ankisrs.net/) ja Mnemosyne (http://mnemosyne-proj.org/). Molemmat ovat osoittautuneet luotettaviksi pitkälläkin aikavälillä, ja niillä on laajat käyttäjäkunnat. Netin keskustelupalstoilla voi tavata huolestuneita käyttäjiä, jotka ovat törmänneet vieraan kielen sanaan kertausohjelman ulkopuolella ja pelkäävät algoritmin sekoavan – aivan kuin he opiskelisivat kieliä algoritmia eivätkä itseään varten! Kannattaako. Aikavälikertaus sopii myös trivian opiskeluun. On myös Supermemo-nimeä kantavia älypuhelinsovelluksia, mutta ne ovat lähinnä Puolan sisämarkkinoille suunnattuja.. Ainoa todellinen ratkaisu on ottaa itseään niskasta kiinni ja tehdä kertaukset. Siinä tärkeässä osassa on aikavälikertauksen ahkera käyttö siten, että kunkin kortin sisältönä on kysymyspuolella kokonainen vieraskielinen lause ja vastauspuolella sanojen käännöksiä tai muita ymmärryksen apuja. 2 46 merkki Khatzumoto esitteli blogissaan viime vuosikymmenellä. Niihin on tarjolla paljon valmiita kysymyskokoelmia, joiden avulla aikavälikertausta voi kokeilla vaivattomasti. Aikavälikertaus voi myös aiheuttaa ahdistusta. Jokainen aikavälikertausta käyttämään ryhtynyt huomaa pian, että selkeän rutiinin muodostaminen on tärkeää. Jos on käyttänyt paljon aikaa kysymysten ja vastausten syöttämiseen, voi kertausten tekemättä jättäminen tuntua aiemman työn hukkaan heittämiseltä. Windows-pohjainen ohjelma on ehtinyt jo versioon 16. Anki mahdollistaa korttien helpon synkronoinnin ohjelman pääkehittäjän ylläpitämälle palvelimelle, ja kertauksia voi tehdä myös ilmaisella Android-sovelluksella tai maksullisella Iphone-sovelluksella. Toisaalta yksinkertaisemmalla Mnemosynellä on helpompi päästä alkuun. ”Miksi opetella ulkoa. Kertausohjelmaan voi syöttää vaikkapa satoja Emacs-tekstieditorin näppäinkomentoyhdistelmiä, kuvat maailman valtioiden lipuista tai kaikki vastaukset työpaikan kahvihuoneen ainaiseen ihmetyksen aiheeseen siitä, miksi milloinkin on liputuspäivä. Ainahan voi katsoa netistä.”), mutta aiheellistakin kritiikkiä riittää. Toivoa sopii, että Craig lahjoitti satojen tuhansien dollareiden palkintorahoistaan muutaman hilkun Ankin kehittäjälle! Muitakin hyödyllisiä tai viihteellisiä käyttökohteita on helppo keksiä. Toisaalta kertausohjelmista voi innostua liikaa. Jotkut kertausohjelmien käyttäjät alkavat pitää ohjelmien algoritmeja kaikkivoipina oppimestareina, joita ei sovi missään tapauksessa uhmata. Nimimerkki Gwern laskeskelee Spaced Repetition -artikkelissaan (ks. Aikavälikertauksen ongelmat Aikavälikertaus on saanut osakseen arvostelua yhtä kauan kuin ohjelmia on ollut tarjolla. Onko aikavälikertaus todella vaivansa arvoista. Osa argumenteista on tyhjänpäiväisiä (esim. Asia ei kuitenkaan ole aivan näin yksinkertainen. Klassinen Supermemo (http://supermemo.com/), josta kaikki alkoi, on myös voimissaan. Yhdysvalloissa suositussa Jeopardy-televisiovisailussa ennätyksellisen hyvin menestynyt Roger Craig käytti avoimen lähdekoodin kertausohjelma Ankia ahtaessaan nippelitietoa päähänsä. linkki jutun lopussa), että jos jonkin faktan etsimiseen tulisi muuten käyttämään elämänsä aikana yhteensä vähintään viisi minuuttia, niin sen lisääminen kertausohjelmaan säästää aikaa. Tiedon tarpeellisuutta Avoimen lähdekoodin Anki on aikavälikertausohjelmien parhaimmistoa. Jos jonakin päivänä jättää tekemättä ohjelman ajoittamat kertaukset, ne lisäävät seuraavan päivän kertausmäärää. Tekemättömillä kertauksilla on tapana kasaantua esimerkiksi lomien aikana, ja ohjelman antama tyly ”1000 korttia odottaa kertausta” -ilmoitus syö helposti innostuksen koko asiaan. Jotkut päättävät syöttää ohjelmaan kaiken, mitä he kuvittelevat haluavansa muistaa. Ja jos kertauksista pitää taukoa, voi ajatus kertyvästä korttivuoresta tuntua stressaavalta. Memrise (http://memrise.com/) ja Cerego (http://cerego.com/) toimivat nettiselaimessa ja älypuhelimessa ja vaikuttavat helppokäyttöisiltä. 2 1 5
(2011): Final Jeopardy. (2014): Fluent Forever. [Luvussa 10 kerrotaan, kuinka Roger Craig käytti Anki-ohjelmaa valmistautuessaan tietokilpailuun.] • Kenny, P.: A Warning About Flashcard and Spaced Repetition Software. [Mainio opas tulokselliseen kielten itseopiskeluun. Reaalimaailma sen sijaan tekee automaattista priorisointia: hyödyllisiä tietoja tarvitaan useammin, joten niitä tulee kerranneeksi luonnostaan silloin tällöin. Harmony Books. käänt. http:// nihongoperapera.com/flashcards-insufficient.html [Aikavälikertauksen hyödyistä ja hyödyttömyydestä kieltenopiskelussa.] • Wyner, G. Opiskeltavan aihepiirin on myös hyvä olla selkeästi rajattu, jotta ohjelmaan tulee syöttäneeksi ainoastaan hyödyllistä ja ulkoa muistamisen arvoista informaatiota. Toisaalta elämässä pärjää hyvin, vaikka ei tuntisikaan jokaista obskuuria sivistyssanaa. Supermemossa voi tosin säätää prioriteetteja, mutta toiminto vaatii käyttäjältä lisätyötä, ja sen hyöty on kyseenalainen. H. Toisaalta väitän, että ideaalitilanteessa ohjelmaan syötetty materiaali muuttuu vähitellen käyttäjälle turhaksi. Kaupallista SRS-alustaa pyörittävä Cerego-yhtiö on julkaissut useita tutkimuksia, joissa pyritään osoittamaan empiirisesti oppimisen tehostumista. Kysymys on kiistanalainen. Näiden tutkimusten objektiivisuutta en lähde arvioimaan. Kieliä opeteltaessa on muistettava, että puhumista ja omaehtoista lauseiden tuottamista ei opita kertausohjelmilla vaan tekemällä. Miten vaikkapa filosofinen essee muokkautuisi aikavälikertaukseen soveltuvaksi. Sisältää laajan kirjallisuuskatsauksen.] • AndrewFMs. 1885 saksaksi julkaistusta alkuteoksesta. Engl. http://supermemo.com/english/history.htm [Aikavälikertauksen ja Supermemon historiaa.] • Ebbinghaus, H. Tietotekniikka mahdollistaa kyllä verrattain nopean tiedonhaun, mutta muistilla on yhä arvonsa. cloze-tyyppisiä kortteja, joissa kysymykset koostuvat lauseista, joista on peitetty jokin tärkeä sana. Stoalaisfilosofi Seneca kirjoitti: ”Pidätkö moitittavana henkilöä, joka katsoo turhat asiat hyödyllisten veroisiksi ja levittelee talossaan nähtäville kallisarvoisia esineitä, mutta etkö pidä moitittavana sitä, joka on täyttänyt mielensä tiedollisella rihkamalla?” Lähteitä ja lisämateriaalia • History of SuperMemo. Sama pätee useimpiin muihinkin taitoihin: ei riitä, että muistaa kaiken, jos tietoa ei osaa hyödyntää. Surrender to This Algorithm. Esimerkiksi kieltenopiskelija voi taitojen ja sanavaraston karttuessa siirtyä käyttämään kieltä päivittäisessä elämässään, jolloin hän pääsee luonnostaan edellä mainitun ”reaalimaailman priorisoinnin” piiriin. Aikavälikertaukseen soveltuukin parhaiten materiaali, joka on luonnollisesti jaettavissa pieniin ja mahdollisimman itsenäisiin yksiköihin. Lopuksi Vaikka ei juuri nyt olisikaan tarvetta optimoida oppimistaan tai oppia mitään uutta, on aikavälikertauksen olemassaolosta hyvä tietää. Ruger ja C. Monet ammatilliset tietokokonaisuudet taas vanhentuvat vähitellen: vaikkapa IT-alalla päntätään usein sertifiointitutkintoihin, jotka voivat menettää merkityksensä muutamassa vuodessa uusiin järjestelmiin siirryttäessä. Neuvoo myös aikavälikertauksen käytössä.]. http://www.gwern.net/Spaced%20repetition [Yhteenveto aikavälikertauksesta. Voidaan myös kysyä, onko kaikki tieto todella redusoitavissa yksittäisiksi kysymys–vastaus-pareiksi. Ja onhan ajatus kognitiivisten toimintojen tehostamisesta teknologian avulla jännittävä jo itsessään! Tolkku on kuitenkin pidettävä mukana. Wired Magazine 16.05. (2008): Want to Remember Everything You’ll Ever Learn. Traditional Review. A. Wo´zniakista.] • Gwern: Spaced Repetition. Materiaalin opiskeluun tulisi varata riittävästi aikaa, vähintään kuukausia, sillä aikavälikertauksen hyöty korostuu nimenomaan pitkällä aikavälillä. Lopullinen vastuu oppimisesta ja sen järkevyydestä säilyy aina käyttäjällä itsellään. On myös syytä huomata, että vaikkapa harvinaista vieraan kielen sanaa ei välttämättä tarvitse koskaan erikseen opetella, vaan merkityksen voi päätellä asiayhteydestä. Bussenius v. (1913): Memory: A Contribution to Experimental Psychology. Mariner Books. Internetistä on myös helppo löytää tavallisten ihmisten tarinoita positiivisista oppimiskokemuksista. http://psychclassics.yorku.ca/Ebbinghaus/index.htm [Ebbinghausin klassinen artikkeli koekuvauksineen.] • Wolf, G. 47 on joskus vaikea arvioida etukäteen, mutta kertausohjelman näkökulmasta jokainen siihen lisätty fakta on samanarvoinen. Yhdeksi ratkaisuksi on ehdotettu ns. youtube.com/watch?v=ai2K3qHpC7c [Video havainnollistaa erilaisia kertausstrategioita.] • Baker, S. (2011): Simulation of SRS vs. Tällöin ohjelma täyttää tarkoituksensa oppimisen tehostajana mutta ei saa käyttäjää tuntemaan, että hänen muistinsa on algoritmin armoilla. Mikäli materiaali on selkeästi rajattu, jaettavissa pieniin yksiköihin ja tulee aikanaan vanhentumaan tai muuttumaan osaksi käyttäjän arkea, kannattaa harkita vakavasti aikavälikertauksen käyttöä. http://archive.wired.com/medtech/ health/magazine/16-05/ff_wozniak?currentPage=all [Mainio artikkeli Supermemosta ja sen omalaatuisesta isästä P. E. Aiheeseen tutustuminen lisää myös ymmärrystä omista oppimisja muistamisprosesseista. https://www
Jos ei puhuttu ihan ristinollan tapaisista projekteista, niin monen innokkaan pöytälaatikkokehittäjän ura tyssäsi siihen, että tarvittiin pelimoottori. Mistä se tuli, mikä tekee siitä niin suositun ja mihin se on menossa – ja minne se vetää perässään koko peliskeneä. Miltei yhden yön aikana kaikki kurssilla olleet tiimit vaihtoivat Unityn ilmaisversioon, eikä sen jälkeen juuri kukaan ole taakseen katsonut. Alkuviikkojen aikana miltei kaikki tiimit joko sorvailivat omia moottoreitaan tai yrittivät päästä sinuiksi PyGamen, Python-kielelle rakennetun alkeellisen ja kankean moottorin, kaltaisten viritelmien kanssa. Unity 3D – pelinkehityksen vallankumous Viime vuosien aikana pelinkehityksen maailmassa on koettu ihmeellisiä ja mullistavia hetkiä. Unity 3D on kyllä puksutellut jo yhdeksän vuotta. Se perusta, jonka varaan koko projekti rakentui. Vanhojen pelikehitystyökalujen rinnalle on noussut pikkuruisen tanskalaisstudion luoma Unity 3D, joka nousi ensin indiekehittäjien suosioon ja haastoi sitten perinteiset raskaan sarjan työkalut. 2 48 V ielä muutamia vuosia sitten pelimaailman ykkösvaihtoehto oli Unreal Engine. Pienen indieskenen rakastamasta moottorista ja ympäristöstä tuli kuitenkin nopeasti ensin oikea vaihtoehto Unreal Enginelle ja muille suurille moottoreille. Olin itse juuri Unityn ilmaistumisen aikaan Turun yliopiston pelinkehityskurssilla. Jos tämä ei riittänyt, vaihtoehtona oli joko kehittää itse oma pelimoottori – mikä on hirvittävän hankalaa ja aikaavievää puuhaa – tai maksaa itsensä kipeäksi lisensoimalla ammattilaistyökalut. Syyt siihen ovat moninaisia, mutta ennen kuin tutustumme niihin, puhutaan hetki itsestään Unitystä. Niin ikään pöytälaatikkokoodarien virittelemät moottorit olivat kankeita ja kömpelöitä, ja pelikehittäjien oli tehtävä vielä valtavasti työtä, ennen kuin varsinainen pelinteko edes pääsi alkuun. Vallankumous moottorimarkkinoilla Vielä muutama vuosi sitten pelien kehittäminen oli aika hankalaa puuhaa. Sillä sai tehdä pelejään vapaasti, ja niin myös tehtiin. Teksti ja kuvat: Miikka Lehtonen Koodi Unity pähkinänkuoressa Kehittäjä: Unity Technologies Kehityksessä: 8.6.2008 lähtien Tuorein versio: 5.0 Tuetut ohjelmointikielet: Boo, C#, Java Script Tuetut kehitysalustat: Mac, Windows Tuetut kohdealustat: 21 eri alustaa, muun muassa Android, iOS, Linux, Mac, Windows, PlayStation 3, PlayStation 4, PlayStation Vita, Xbox 360, Xbox One ja Wii U. Asetelmat ovat kuitenkin muuttuneet nopeasti ja vieläpä yllättävästi. Mistä Unityssä oikeastaan on kyse. Lokakuussa 2009 koettiin pienoinen vallankumous, kun indiemarkkinoilla omaa nurkkaustaan hallinnut Unity Technologies muutti Unity 3D -pelimoottorinsa lisenssiehtoja. Kalliin ammattilaisversion rinnalla oli myyty jo pitkään pienille tiimeille tarkoitettua ja kaikkein kovimmista ominaisuuksista riisuttua indie-versiota, mutta senkin verrattain edulliset lisenssimaksut olivat monelle pöytälaatikkokoodarille ylitsepääsemätön este. Emmekä suinkaan olleet ainoat, sillä samaa on tapahtunut kaikkialla muuallakin. Unity Technologies kuitenkin vapautti indie-version vapaaseen levitykseen. Hieman myöhemmin siitä tuli jo markkinaykkönen. Niin pienet muutaman kehittäjän kaveriporukat kuin suuremmat ammattilaisstudiotkin ovat vaihtaneet Unityyn, yksi toisensa perään. Lähes kaikki tuolloin Unityyn vaihtaneet ovat myös sen parissa pysyneet. On tavallaan jopa harhaanjohtavaa puhua ”vaihtoehdosta”, sillä todellisuudessa kaikissa vähänkään isommissa projekteissa Unreal oli ainoa vaihtoehto. 2 1 5 . Mikä tekee siitä niin erikoisen ja suositun. Vaihtoehtoja kyllä oli, mutta niistä useat olivat huonoja. Se koodirunko, joka huolehti grafiikan piirtämisestä, äänien soittamisesta ja animaatioiden käsittelystä
Unityn Asset Store tarjoaa mahdollisuuden hankkia grafiikkaa, koodia tai vaikka ääniä peliprojektiinsa, ainakin jos Visasta löytyy vähän vääntöä.. Unity oli monessakin mielessä se ensimmäinen moottori, joka pyrki tekemään asiat helpoksi. Se on tarkoitettu pääasiassa pelimoottoriksi, mutta sillä on toteutettu myös esimerkiksi arkkitehtuurien työkaluja, virtuaalisia kiertoajeluita, interaktiivisia oppaita ja ties mitä muuta. Unityn suosion räjähdysmäinen nousu selittyy oikeastaan yhdellä sanalla: helppo. Vasemmalla kohtauseditori. Maine oli ansaittu, sillä Unityllä on Tyypillinen näkymä. Vaikka Unity olikin alunperin vain 3D-käyttöön kehitetty softa – mistä myös nimi – nykyään myös 2D-pelit toimivat sillä erinomaisen hyvin. Vuosien varrella Unityyn on lisätty jos jonkinlaisia ominaisuuksia ja se sisältää muun muassa laadukkaat valoja fysiikkamoottorit. 49 Nopeammin, helpommin, halvemmin Unity on kattava ja hyvin tuettu pelimoottorin ja kehitysympäristön risteytys. Aikanaan historiallisen lempeistä lisenssiehdoista lähtien Unity oli selvästi suunniteltu pelimoottoriksi, joka ei pyrkinyt olemaan elitistinen. Se soveltuu mainiosti niin 2Dkuin 3D-sovellusten kehittämiseen. Oli toki kova juttu julkaista yleensäkään pelimoottori, jota ihmiset pystyivät käyttämään, mutta sen lisäksi heidät piti saada tarttumaan sorviin ja kokeilemaan. Unity taas pyrki ottamaan kaikki mukaan: asentakaa ilmaiseksi, tehkää pelejä. Unity keräsikin huomiota ja mainetta olemalla työkalu, jolla prototyyppailu oli helppoa. Sen ilmaisversio julkaistiin aikana, jolloin miltei kaikki muut vaihtoehdot sulkivat kehittäjiä ulos joko hinnallaan, saatavuudellaan tai toimivuudellaan. Oikealla selain, jolla voi poimia projektikansiosta assetteja sekä määritellä valitun esineen piirteitä
Vallankumouksellista oli se, mitä koodilla sitten tehtiin: graafisessa editorissa pystyi hiirellä raahaamalla liittämään skriptejä ja koodia eri esineisiin. 2 50 aina päässyt nopeasti siihen itse asiaan, eli kokeilemaan ideoitaan ja virittelemään pelejä. Oli kyse sitten tasohyppelypelin kentästä tai seikkailupelin huoneesta, oli aivan uskomatonta käyttää pelimoottoria, jossa tilaa pystyi muokkaamaan liikuttelemalla esineitä hiirellä. Netissä lähti kiertämään alta aikayksikön ihmisten koodaamia luokkia, joilla liikuteltiin hahmoja, käsiteltiin inventaarioita, ohjattiin autoja ja niin edelleen. Taustalla on toki koodia ja jos siitä haluaa saada täyden hyödyn irti, ohjelmoinnin täytyy sujua. Tämän jälkeen niiden julkisiksi määriteltyjä ominaisuuksia pystyi muokkaamaan suoraan graafisesti ja intuitiivisesti. Asiaan toki liittyy myös muita, ulkopuolisia ja ehkä onnekkaitakin sattumia. Tässä muutamia esimerkkejä. Ne ovat muuttuneet pienen porukan kuriositeeteista yllättävänkin tuottoisiksi myyntihiteiksi. Pienen tiimin nopeasta prototyypistä tuli hurmaava peli, jossa fysiikan avulla liikkuva robotti kiipeää jättimäistä pavunvartta pitkin taivaisiin. Näin innokkaat amatööritkin pystyivät intuitiivisesti ja sujuvasti kokoamaan omia pelejään. Sekä mobiiliettä tietokonepuolella – ja jopa pelikonsoleilla, kiitos Microsoftin ja Sonyn pelipulan – indie on aina vain kysytympää ja sille riittää markkinapaikkojakin. Cities: Skylines – Kyllä, tamperelaisen Colossal Orderin hillittömäksi hitiksi noussut kaupunkisimulaatio pyörii kuin pyöriikin Unityn päällä ja todistaa, että moottori hallitsee hyvin myös suuret asiat. On oikeasti aika kova juttu, että vaikka Windowsilla tehdyn pelin voi pienellä vaivalla ja tuunailulla kääntää Android-puhelimelle tai modernille pelikonsolille. Kyse on siis hyvin intuitiivisesta ja erittäin miellyttäväkäyttöisestä kehitysympäristöstä. Sen keskipisteessä on aikanaan vallankumouksellinen Scene Editor, kohtauseditori, jolla voi helposti ja graafisesti luoda ja käsitellä pelinsä kohtauksia. Realis3D – 3D-visualisointityökalu on tarkoitettu insinööreille ja arkkitehdeille ja antaa näille mahdollisuuden suunnitella nopeasti erilaisia 3D-ympäristöjä. Sitten muut seuraavat perässä. Niinpä pelialalla oli tilausta pelimoottorille ja työkaluille, joita ei ollut suunniteltu 120 hengen jättitiimien ja kymmenien miljoonien eurojen budjeteilla toteutettavien pelien tarpeisiin, vaan pienille tiimeille ja pieniin peleihin. Hämmentävän kaunista grafiikkaa ja suurta pelimaailmaa hyödyntävä peli sai monet Unityveteraanitkin raapimaan partaansa. Niinpä noin vuodesta 2011 lähtien onkin käyty melkoista pelimoottorien kylmää sotaa. Unity siis alkoi kerätä itselleen nimeä olemalla tavallaan ensimmäinen. Ori and the Blind Forest – Pienen tiimin vuosia vääntämä 2D-tasohyppely on ensimmäisiä Unityllä tehtyjä konsolipelejä. Unityn sujuvuus ei loppunut siihen. ”Miten ihmeessä tuo on tehty?” Hearthstone – Vaikka sitä ei ehkä ensisilmäyksellä uskoisi, Blizzardin mainio ja kymmeniä miljoonia pelaajia viihdyttävä digitaalinen keräilykorttipeli pyörii Unityllä. Eiväthän ne toki olleet yhtä sujuvia tai hyviä kuin varta vasten koodatut pelit, mutta ne tarjosivat monelle ensimmäisen maistiaisen pelinkehityksestä ja istuttivat halun opetella enemmän. 2 1 5 . Epicin jaellessa Unreal Engineä ensin halvoilla kuukausimaksuilla ja lopulta ”ottakaa nyt vaikka sitten ilmaiseksi!” -hengellä Unityllä tehtyä Vuosien varrella tyypillinen Unity-peli on tarkoittanut milloin mitäkin. Ominaisuuksien muuttuessa ja suosion kasvaessa ”tyypillinen” on kuitenkin muuttunut ehkä harhaanjohtavaksi termiksi, sillä Unityllä on tehty niin suuria kuin pieniäkin pelejä aina muutaman hengen opiskelijaporukoista AAA-tason suuriin julkaisuihin. Kehitys kehittyy, entä moottori. Unityn tiedostotuki on laaja: ääniä, grafiikkaa ja muita assetteja voi hyödyntää melko vapaasti, joskin joskus versioiden väliset yhteensopimattomuusongelmat aiheuttavat päänvaivaa. Epic Games ja monet muut uudemmat ja vanhemmat kehittäjät huomasivat nopeasti, että markkinoilla oli kysyntää skaalautuville pelimoottoreille ja indietiimejä ymmärtäville firmoille. Unity on vuosien varrella kehittynyt ehkä turhankin nopeasti. Tämä oli kova ominaisuus jo niillekin meistä, joilla bitti pysyy hyppysissä, mutta suorastaan vallankumouksellista innokkaille kehittäjille, jotka halusivat suunnitella pelejä, mutta eivät ehkä olleet hirveän taitavia koodareita. Vielä tähän kevääseen saakka sen lisenssiehdot, jotka aikanaan olivat niin anteliaat ja kivat, vaikuttivat yllättäen vertailussa suorastaan antiikkisilta. Näiden kun pitäisi olla ihmishahmoja.... Ei kovin kivaa puuhaa tämäkään. Yksi lisää omaan moottoriinsa halutun tuen – vaikkapa työkalut 2D-pelien kehittämistä varten – tai lieventää omia lisenssiehtojaan. Unity ei saanutkaan olla kukkulansa kuninkaana kovinkaan pitkään. Kun putken pää oli avattu, ei sitä tietenkään enää kiinnikään saanut. Nykyään visuaalinen kehitys on toki jo arkipäivää. Täytyy kuitenkin muistaa, että Unity julkaistiin aikana, jolloin piti joko hankalasti toteuttaa moiset ominaisuudet itse tai vaihtoehtoisesti koodata pelejään sijoittelemalla esineitä ja hahmoja maailmaan suorien koordinaattien avulla. Ei sovi myöskään unohtaa sitä, että alusta saakka Unityn tarkoituksena on ollut myös tehdä sovellusten kääntäminen eri alustoille mahdollisimman helpoksi. Merkittävä tekijä sen nousulle on varmasti ollut myös se, että indiepelit ovat yleisestikin viimeisten vuosien aikana keränneet näkyvyyttä. Kerbal Space Program – Tunnetussa indie-hitissä kasataan palasista avaruusaluksia, joita sitten lauotaan vankan fysiikkamoottorin avulla kiertoradalle – toivottavasti, mutta ei läheskään aina, yhtenä kappaleena! Grow Home – Myös maailman suurimpiin pelijulkaisijoihin kuuluva Ubisoft käyttää Unityä
Ei ole montakaan vuotta siitä, kun Unreal Engine oli koko alan standardi. En rehellisesti sanoen löisi rahaa Unityä vastaan, sillä se on hämmentävän monipuolinen moottori. Niihin pienillä tiimeillä ei ollut varaa. Tarjolla on kaikkea äänistä grafiikkaan ja seikkailupelejä varten tehtyihin skriptausmoottoreihin saakka. Odotteleeko kulisseissa jo jokin uusi pelimoottori, joka pystyy Unityä paremmin vastaamaan vuoden 2015 pelinkehityksen haasteisiin, vai pystyykö moottori mukautumaan pelimaailman tarpeisiin. Se, mikä oli aikanaan yhtä harvinaista kuin yksisarviset, on nyt alan standardi. Hillittömän laaja tuki ja suosio tekevät omalta osaltaan Unity-kehittämisestä hyvin mukavaa. Jos jokin asia – kuten vaikka peliohjaintuki – ei Unityssä ole paras mahdollinen, tarjolla on todennäköisesti puolenkymmentä muiden kehittämää plugaria, joilla homma onnistuu juuri niin ammattimaisesti kuin voisi toivoa. Kun käynnissä on kunnon kilpavarustelu, loppujen lopuksi loppukäyttäjät voittavat, oli oma suosikki Unreal Engine, Unity tai jokin aivan muu. Vaikka Unityn väki onkin tasaiseen vauhtiin tilkinnyt aukkoja ja repinyt riippakiviään modernin ajan puolelle, niin joskus se on kestänyt. Unityssä on myös ollut jo useamman vuoden ajan virallinen verkkokauppa, jossa voi myydä omia juttujaan. 51 Unity vaikutti yllättäen kelkasta pudonneelta. Myös Unityn integroituminen koodausympäristöihin on jo itsestäänselvyys. Jos ei halua naputella koodiaan Unityn mukana tulevalla MonoDevelopilla – ja en siitä ketään moittisi – vaihtoehtoista ratkaisua ei tarvitse hakea kaukaa. Ikävää oli myös se, että pitkään Unityn parhaat ominaisuudet, kuten pelien porttaaminen eri alustoille, vaativat ylimääräisiä lisenssiostoja ja rahallisia panostuksia. Suomen pieni Unitytiimi on todellakin kantanut kortensa kekoon, sillä esimerkiksi Unityn 2D-ominaisuudet ja merkittävä osa nykyisestä käyttöliittymien suunnitteluun tarkoitetusta työkalusta ovat suomalaisten koodaamia.. Fysiikat, valoefektit ja muut irtoavat ilmaisversiostakin aivan yhtä hyvin kuin ammattiversiosta, joka erottuu paremman ja yksilöidymmän teknisen tuen sekä tiimiominaisuuksiensa avulla. Tällöin apu on löytynyt yhteisöstä, sillä Unity on jo pitkään tehnyt tiedon jakelusta helppoa. Moni asia tehtiin aikoinaan paljon simppelimpää käyttöä varten, eikä niitä ole ehditty koskaan tehdä kunnolla uusiksi. Ilmainen harrastelijaversio ei tukenut esimerkiksi lainkaan dynaamisia varjoja, mikä sai kaikki sillä kehitetyt pelit näyttämään suorastaan karseilta. Ilmaisversiolla voi tykitellä menemään mielensä kyllyydestä, kunhan pelin vuosituotot eivät ylitä sataatuhatta taalaa. Unityn esimerkki on innostava. Vallankumous näyttää siis onnistuneen. Vain taivas rajana. Tehty Suomessa Unityä kehitetään nykyään maailmanlaajuisesti, ja myös Suomessa on ollut haaratoimisto jo jokusen vuoden ajan. Muutkin moottorivalmistajat ovat heränneet kilpailuun. Jää nähtäväksi, onko edessä uusi vallankumous. Miltei kaikki varteenotettavat pelit tehtiin sillä, ja Unrealin hallitseminen oli perusedellytys, jos aikoi työllistyä pelialalle. Nyt sama pätee Unityyn. Moottorin parantuessa ja monipuolistuessa monet ominaisuudet ovat olleet yllättävänkin pitkään joko hankalia, kankeita tai rajoittuneita. Omia viritelmiään voi jaella ja tuoda projekteihin helposti. Nyt jakelussa on kaksi moottoria, jotka ovat ominaisuuksiltaan identtiset. Mainiot yhteisöominaisuudet ja helppo laajennettavuus pitävät myös huolen siitä, että vaikka itse moottorin kehittäjät tulisivat huomenna seinähulluiksi, Unityn tie ei tyssäisi siihen. Nopea kehitys näkyy myös siinä, että Unity kantaa mukanaan yhä paljon koodiriippakiviä. Onneksi lopulta paineeseen vastattiin ja kevään aikana Unitykin pisti lisenssiehtonsa kokonaan uusiksi
Tähtimerkillä alkava komennot *KEYBOARD FINLAND ja *CONFIGURE COUNTRY FINLAND säätävät laitteen Raspista vanhan ajan kotitietokone Tuliko hankittua Raspberry Pi, mutta se on jäänyt alkuinnostuksen jälkeen vähälle käytölle. Tässä artikkelissa nähtävä koodi on ensimmäisiä BBC BASIC -ohjelmiani. 2 1 5 . Lähde Skrollin kanssa tutkimaan BBC BASICia! Teksti: Yrjö Fager Kuvat: Manu Pärssinen, Yrjö Fager Koodi. Raspiin on saatavana ilmaiseksi brittiläisen Acorn Archimedes -tietokoneen käyttöjärjestelmästä kehittyneen RISC OS:n Pico-niminen jakeluversio. org-sivustolta. BASICin käytössä olevan vapaan muistin määrä voi aiheuttaa huvittuneisuutta, se kun on noin 10 000-kertainen niihin lukuihin nähden, joihin 1980-luvulla totuttiin. Ei hömppäviihdettä tarjoamassa itseään parin klikkauksen päässä, ei nettiselaimia, ei elokuvia, ei edes hauskoja kissavideoita… Tuntuuko vallankumoukselliselta. Enemmän asialle vihkiytynyt henkilö varmaankin kiinnittää muistikortin pysyvästi pikaliimalla. 2 52 R aspberry Pi eli Raspi on pieni ja edullinen tietotekniikan ja elektroniikan harrastajille sekä opiskelijoille tarkoitettu tietokone, jonka voi liittää näyttöön HDMItai komposiittivideoliitännällä. Kun Raspiin kytkee virran asennuksen jälkeen, laite käynnistyy suoraan BBC BASIC -ympäristöön, ja muuta käyttäjälle ei sitten olekaan tarjolla. Toistaiseksi vastaan on tullut lähes pelkästään positiivisia yllätyksiä kielen ja ympäristön suhteen. Se asennetaan yksinkertaisesti kopioimalla web-sivuilta ladatusta ZIP-paketista tiedostot FATformaattiin alustetulle SD-muistikortille ja laittamalla muistikortti Raspiin. RISC OS Picon asennus RISC OS Picon voi ladata riscosopen. 200 megatavun muistia ei aivan kevyellä BASIC-koodaamisella saa täyttymään. Käytön aloitus RISC OS Picon alkuruudussa on varmasti jotain tutun tuntuista 8-bittisiä kotitietokoneita käyttäneille. Oletko kaivannut sitä yksinkertaisuutta ja välittömyyttä, jolla 80-luvun kotitietokoneilla pääsi kokeilemaan BASIC-ohjelmointia. Näin konfiguroitu Raspi on selkeä yhden asian laite, koska sillä voi oikeastaan vain harrastaa BASIC-ohjelmointia. En ollut aiemmin tiennyt BBC BASICista mitään ja törmäsin siihen vasta Raspin kautta. Se käynnistää laitteen suoraan BASIC-ohjelmointiympäristöön jäljitellen 80-luvun kotitietokoneiden välitöntä yksinkertaisuutta
• SAVE tallentaa ohjelman massamuistiin, Raspin tapauksessa muistikortille, esim. RISC OS Picossa BASIC avautuu oletuksena näyttömoodiin numero 7, toiselta nimeltään Teletext. Itse en pidä BBC BASICia ollenkaan huonona tapana tutustua ohjelmoinnin perusteisiin. Kirjoita seuraavat kaksi riviä ja paina tietysti rivien loppuun Enter. Kokeile kirjoittaa PRINT”MOI” ja paina Enter. Väitteiden perusteeksi saatetaan hakea kuuluisien tietotekniikan uranuurtajien 1970-luvulla silloisista ohjelmointitavoista ja -kielistä esittämiä mielipiteitä: GOTO -käskyn olemassaolo ja kunnollisen rakenteisen ohjelmoinnin mahdottomuus. 53 näppäimistön ja merkistön suomalaisiksi. Esimerkiksi LIST toimii käskynä, mutta list ja List eivät. Twisteri on akselinsa ympäri pyörivä elastiselta näyttävä kappale, usein yksinkertainen halkaisijaltaan neliön. Miten BASIC toimii. Yksi tärkeimmistä tähtikomennoista on *CAT , joka näyttää nykyisen hakemiston tiedostolistauksen. • EDIT avaa ohjelmalistauksen muokattavaksi BBC BASICin sisäänrakennetussa kokoruutueditorissa. • NEW tyhjentää nykyisen ohjelman. Itse en ole aivan hirveän innoissani pelien ohjelmoinnista enkä pelaamisesta, vaan otan ohjelmaesimerkiksi twisteriksi kutsutun perinteisen demoefektin, joka on mielestäni varsin hupaisan näköinen otus ja suoraviivainen ohjelmoida. Painamalla Shift+F4 pääsee pois editorista ja Ctrl+F5 näyttää ohjeen käytettävissä olevista näppäinyhdistelmistä. Ensimmäisen komennon tähtimerkki syntyy painamalla Shift+8. BBC BASICissa rivinumeroista ei tarvitse välittää, GOTO -käskyä ei tarvitse käyttää ja käytössä ovat rakenteellisen ohjelmoinnin peruskeinot: nimetyt aliohjelmat parametreineen ja paikallisine muuttujineen, aliohjelmien rekursio, FOR -silmukat, REPEAT ja WHILE -toistolauseet sekä rakenteiset tietotyypit. Oletuksena Caps Lock on päällä, koska BBC BASIC erottelee isot ja pienet kirjaimet, ja pienellä kirjoitetut sanat eivät tunnistu BASIC-komennoiksi. Moodi on mukavan suuritekstinen, ja omat lapseni ihastuivat isojen kirjainten naputteluun kuvaruudulle. Eihän BASIC sovi ohjelmoinnin opetteluun. • LOAD lataa ohjelman massamuistista, esim. Ensimmäinen ohjelma Ensimmäisenä ohjelmana pitää tehdä vanha kunnon Hello World, jotta voi sanoa tehneensä Hello Worldin BASICilla. Rivinumeroista ei kuitenkaan tarvitse välittää käytännössä ollenkaan, jos käyttää EDIT -käskyllä avautuvaa editoria, joka huolehtii rivinumeroista automaattisesti. Tietokone suorittaa ohjelmalistauksessa näkyvät rivit alusta alkaen. Jälkimmäinen komento tallentaa asetukset pysyviksi, jotta komentoja ei tarvitse antaa kuin ensimmäisellä käynnistyskerralla. Jo käytön aloituksessa esitellyt tähtimerkillä alkavat komennot ovat BASICin ulkopuolelle meneviä käyttöjärjestelmätason komentoja. • RUN ajaa nykyisen ohjelman. Kasvunvaraa löytyy tarvittaessa vaikka ARM-assemblerin tai omatekoisten oheislaitteiden GPIO-ohjauksen suuntaan. SAVE”HELLO”. LOAD”HELLO”. 10 PRINT”HELLO WORLD” RUN Onneksi olkoon, olet tehnyt Hello Worldin BASICilla. Pienillä kirjaimilla voi kirjoittaa muuttujien ja aliohjelmien nimiä. Tässä muutamia komentoja, joita voi aluksi kokeilla: • PRINT tulostaa lainausmerkkien välissä olevan tekstin. • LIST tulostaa kuvaruudulle nykyisen ohjelman listauksen. Heti tämän jälkeen kannattaa siirtyä käyttämään kokoruutueditoria EDIT -komennolla. Toisinaan kuulee väitteitä, että BASIC olisi vanha, huono tai jopa suorastaan haitallinen kieli ohjelmoinnin opetteluun. BBC BASIC on käynnistyttyään komentotilassa, jossa komentoja kirjoitetaan > -merkin edustamaan kehotteeseen näppäimistöltä, ja Enternäppäimellä komennot toteutetaan. BASIC-ohjelmointia, saati sitten ohjelmointia yleisesti, ei voi tällaisessa artikkelissa opettaa, mutta yritän antaa siitä pienen maistiaisen. Valitettavasti Teletext-moodissa ei voi kirjoittaa ääkkösiä, vaikka suuremman tarkkuuden ja pienemmän tekstin näyttötiloissa sekä kokoruutueditorissa voi teksti olla aivan oikeaa suomea. Samoin on hyvä välttää rivinumeroiden perusteella hyppiviä GOTO tai GOSUB -käskyjä ja käyttää niiden sijaan kunnollisia rakenteellisen ohjelmoinnin keinoja. Demoefekti BBC BASICilla: twisteri Yleensä ohjelmoinnin alkeiskurssien opiskelijoiden oletetaan innostuvan, jos esimerkkiohjelmana on jonkinlainen peli. Jos kirjoitat komentorivin alkuun numeron, rivi tallentuu osaksi nykyistä ohjelmaa
Teen asian hiukan toisin: koska jokaisessa pyörähdysasennossa on joka tapauksessa enintään kaksi sivua näkyvissä ja kaikki sivut ovat keskenään samanlaisia, ei meitä kiinnosta, mitkä kaksi ne ovat. 3D-grafiikkaa tai valokuvausta harrastanut lukija osannee antaa ilmiölle uskottavalta kuulostavan teoreettisen perustelun, jossa saatetaan mainita sanat perspektiivi ja polttoväli. Kuva 1: Pyörimiskulmat, kärkipisteet ja sivut. Pinnan valaistus Pinnan valaistuksen laskemme yksinkertaisella periaatteella: otetaan sivun normaalia edustamaan kulmapisteiden puolivälistä kulma ja siitä sinifunktio, joka muuntaa sivun normaalia edustavan kulman kirkkausarvoksi. Kuva 1 yrittää havainnollistaa ylhäältä päin katsottuna neliön kärkipisteiden ja sivujen normaalien pyörimistä sekä vasemmanpuolisen näkyvän kärkipisteen löytymistä kulmaväliltä 3– 4 . Listauksessa 1 ambienttivalon vakiona on sivujen kirkkauden laskentakaavassa numero 35, ja heijastuksesta tulevan kirkkauden osuudelle annetaan sinifunktion kertoimeksi 220 yksikköä. Koska tässä tapauksessa valo on sopivasti katsojasta kappaleeseen päin olevan akselin suuntainen ja pinnan normaali on valmiiksi sinija kosinifunktioihin syötteeksi kelpaavan kulman muodossa, laskukaava yksinkertaistuu. Nopeuksia vaihtelemalla saa aikaan erilaisia vääntelyitä ja pienillä lisäyksillä kaikenlaisia muitakin efektejä. Kuva 2 esittää edestäpäin katsottuna kärkipisteiden vk, kk ja ok kuvautumisen kuvaruudulle piirrettävään suikaleeseen. Keskimmäinen kulmapiste on tästä pisteestä 90 asteen päässä ja oikeanpuoleinen tästä saman pyörähdysetäisyyden päässä. Pyörähdyskulman muutoksen suuruus suikaleiden välillä ja animoinnin kuvien eli ”freimien” välillä määrää sen, miten nopeasti ja mihin suuntaan palkki pyörii ja miten tiukalle kierteelle se näyttää vääntyvän. Kuvassa 3 on neljä kuvakaappausta twistauksen eri vaiheista. Jos summa voisi olla suurempi, kirkkausarvo täytyisi jotenkin rajoittaa, jolloin osa kirkkauksista leikkautuisi maksimiin. Kappaleen symmetrian ansiosta riittää, että osataan käsitellä yksi 90 asteen eli puolikkaan piin levyinen väli kärkipisteiden pyörimiskulmista. Perusteellisesti tehdyssä neliötwisterissä kierrettäisiin neliön kaikkia neljää kulmapistettä 2D-rotaatiomatriisilla ja jokaisesta sivusta tutkittaisiin erikseen, onko se kääntyneenä katsojaan päin ja siis näkyvissä vai katsojasta poispäin ja piilossa. 2 1 5 . Kun tähän lisätään vielä pieni kulmasta riippumaton vakio, saadaan simuloitua tilannetta, jossa kappaleen materiaali on mattapintainen ja valon heijastuminen täysin ”diffuusi”, valo tulee katsojan suunnasta ja lisäksi ympäristössä on kulmasta riippumattoman vakion suuruinen ambienttivalaistus. – 5– 4 ?. Kulmapisteiden x-koordinaattien laskenta Meidän BASIC-twisterimme on mallia ”basic”: halkaisijaltaan neliön muotoinen harmaa palkki, jota piirretään kuvaruudulle yhden pikselirivin kokoisina suikaleina. Näistä yhteen laskettuna tulee korkeintaan 255, joka on suurin mahdollinen 8-bittiseen värikomponenttiin mahtuva arvo. Kuva 2: Suikaleen osat.. Periaatteessa voisi ajatella, että kärkipisteiden etäisyyden katsojasta tulisi jotenkin näkyä, mutta käytännössä twisteri näyttää aivan hyvältä ilman etäisyyden huomioimistakin. 2 54 muotoinen palkki. Joku saattaa ihmetellä sitä, että laskemme suikaleista pelkät x-koordinaatit. Kosinifunktio kustakin näistä kulmista kertoo kyseisen kulmapisteen vaakasuuntaisen eli x-koordinaatin suhteessa neliön keskipisteeseen. Ensimmäisen ohjelmaversion toiminta Listauksessa 1 on puhtaasti BBC BASIC -käskyillä tehty twisterimme ensimmäinen versio, joka laskee tunnollisesti kaikki matemaattiset laskutoimitukset jokaisen kuvan jokaiselle suikaleelle trigonometrisine funktioineen päivineen ja piirtää kuvan ruudulle PLOT -käskyillä. Sitä piirretään kuvaruudulle suikaleittain siten, että kukin suikale on eri pyörähdyskulmassa. Yleisesti diffuusin heijastuksen voimakkuus lasketaan valaistun pinnan normaalivektorin ja valovektorin välisenä pistetulona. Kun neliön pyörähdyskulmasta otetaan moduloeli MOD -operaattorilla jakojäännös 90 asteella jakamisesta, saadaan sen kulmapisteen pyörähdyskulma, joka näkyy ruudulla vasemmanpuolimmaisena. Edistyneessä twisterissä voi olla vaikkapa pintatekstuuria, se voi heittää itseensä varjoja ja palkin tahkot voivat olla erilaisia. Eikä kappaleen tarvitse olla suorakulmainen, vaan se voisi olla jotain paljon monimutkaisempaa, jolloin aletaan lähestyä jelly-vektoreiksikin kutsuttuja efektejä
Tämä oli yllättävän helppoa, kun yhdellä nettifoorumilta löytämälläni systeemikutsulla sain käyttöön kuvaruudun muistipuskurin, ja assembly-rutiinikin meni oikein jo toisella kokeilulla. Maksimipiirtonopeuden mittaamista varten otin pääsilmukasta pois WAIT -käskyllä tapahtuvan kuvaruudun päivitystahtiin synkronoinnin eli ”vsyncin”, jotta nopeus ei pyöristy lähimpään ruudunpäivityksen keston monikertaan. Jätin PLOT -kutsut kokonaan pois ja kirjoitin suikaleen piirtämisen pieneksi assembly-rutiiniksi. WAIT -käskyn kanssa mitään 200 kuvan sekuntinopeutta ei pystyisi saamaan, jos ruudunpäivitystaajuus on vaikkapa 60 kuvaa sekunnissa. Rutiinin nopeuttamista BASICin keinoin BASIC-versio piirtyy käyttämälläni Raspberry Pi model B:llä nopeudella 20 kuvaa sekunnissa. Nämä versiot jätin lehdestä pois. Kokeilin laskea etukäteen eli ”precalcata” kaikki piirron PLOT -rutiinien tarvitsemat luvut valmiiksi taulukkoon. Toisin kuin 2D-tietokonegrafiikassa yleensä, BBC BASICin grafiikkakoordinaatistossa origo eli piste (0,0) on kuvaruudun vasemmassa alakulmassa ja Y-koordinaatti kasvaa ylöspäin niin kuin koulutunneilta tutussa matemaattisessa koordinaatistossa. Tällä sain nopeuden nostettua 30 kuvaan sekunnissa, mutta sekään ei vielä ollut tyydyttävä tulos. Siksi päättelin, että piirtokäskyt olivat ohjelmassa pullonkaula. Jokaista kuvaruudun pikseliä vastaa kaksi loogista yksikköä, eli loogisten yksikköjen piste (100,100) onkin kuvaruudun pikseli (50,50). Onneksi olin varautunut tähän tallentamalla ohjelman uudella nimellä jokaisen muutoksen jälkeen. Se on ihan mukavalta tuntuva nopeus BASICilla tehdyksi efektiksi, ainakin jos vertaa siihen, minkälaisia graafisia efektejä 80-luvulla BASICilla tehtiin. Kaatumisen syy oli yksinkertainen: olin unohtanut kirjoittaa rutiinin loppuun käskyn mov r15,r14 . Siksi ohjelmassa koordinaatteja kerrotaan 2:lla. Sitten poistin koko PROCtwister_slice -aliohjelman siirtämällä piirtorutiinien kutsut suoraan pääohjelman FOR -silmukkaan. 55 PLOT -käskyjen syntaksi on hieman vaikeaselkoinen, koska ensimmäisenä parametrina oleva numero määrää käskyn varsinaisen tyypin. GCOL käsky vaihtaa piirtoväriksi annetun RGB-arvon. Piirtokäskyjen numeroiden ja parametrien luettelot löytyvät BBC BASIC -ohjelmointioppaista. Demoefektien kuuluu liikkua sulavasti täydellä kuvaruudun päivitystaajuudella. Kuva 4: Kuva twisterin konekieliversiosta.. On siis aika tutkia, saisikohan efektiä jotenkin nopeutettua. Tule apuun, assembler Koska piirtokäskyt näyttivät olevan pahin nopeutta rajoittava tekijä, ja koska arvioni mukaan Raspin prosessorin pitäisi ehtiä piirtää suikaleet aivan kevyesti haluamassani ajassa, otin järeämmät keinot käyttöön. Tämän jälkeen BASIC-ympäristö ei enää käyttäytynyt normaalisti ja tarvitsi uudelleenkäynnistyksen. Raspin satojen megahertsien taajuudella toimivan 32-bittisen prosessorin pitäisi kuitenkin kaiken järjen mukaan pystyä paljon parempaankin. PLOT 100 siirtää nykyisen piirtokohdan annettuun kohtaan ruudulla. Paluukäskyn puuttuessa prosessori jatkoi viimeiseksi tarkoitetusta käskystä ohi jonnekin, Kuva 3: Kuvasarja twisterin BASIC-versiosta. Kun kommentoin PLOT ja GCOL -piirtokäskyt piiloon, nopeus nousi lähes 200 kuvaan sekunnissa. PLOT 97 piirtää parametrina annetun kokoisen täytetyn suorakaiteen suhteellisesti piirtokohtaan nähden ja siirtää piirtokohtaa annetun koon verran. Ensimmäisellä ajoyrityksellä ruudulle ilmestyi vain yksi suikale ja jokin hiukan oudompi virheilmoitus. Xkoordinaatti kasvaa normaalisti oikealle. Käsky sijoittaa paluuosoitteen sisältävän link-rekisterin (r14) arvon prosessorin nykyistä ajettavaa käskyä osoittavaan ohjelmalaskuriin (Program Counter, r15) eli hyppää takaisin sinne, mistä aliohjelmaa kutsuttiin. Lisäksi koordinaattiyksiköt eivät ole suoraan pikseleitä vaan ”loogisia yksikköjä”
Amigan Copperja Blitter-apupiirejä voi pitää jossain mielessä GPU-tyyppisenä ratkaisuna. Tai voisiko pinnan heijastus olla vähemmän diffuusi, tai voisivatko valonlähteiden värit muuttua lennossa. Väriarvoilla ”fillaamisen” sijasta suikaleen piirtorutiini voisikin kopioida tekstuuria jostakin valmiiksi lasketusta bittikarttataulukosta. Emme ehkä tulleet tehneeksi aivan näyttävintä mahdollista Raspi-efektiä, koska ohjelmamme ei ollenkaan hyödynnä esimerkiksi Raspin GPUpiiriä. Assembly-rutiinin piirtämän taustavärin RGB-väriarvo menee rutiinille parametrina, joten siinä ei tarvitsisi antaa välttämättä nollaa eli mustaa. Apupiirit suorittavat asioita itsenäisesti pääprosessorista riippumatta ja toimintaa pystyy ohjaamaan kirjoittamalla copperlistoiksi kutsuttuja ohjelmanpätkiä yksinkertaisella komentokielellä. Twisterin vieressä näkyy assemblerin tuottama tekstituloste. 2 56 mitä siellä sitten sattuikaan muistissa olemaan. Jos suikaleiden reunoilla olevat taustaväriset eli mustat osat levittää koko ruudun levyisiksi, saisi taustaväriä jokaiselle vaakajuovalle erikseen säätämällä twisterin taakse vaikkapa perinteiset liikkuvat väripalkit tai ihan yksinkertaisen liukuvärin. Entä teksturointi: mitä ohjelmaan pitäisi tehdä, jos haluaisi twisterin pinnan näyttävän vähemmän sileältä. Jotain lisättävää. Lisätietoja aiheesta RISC OS Picon mukana tulee PDFversiona Martyn Foxin kirjoittama kirja First Steps in Programming RISC OS Computers, joka kertoo BBC BASIC -ohjelmoinnista erittäin laajasti aina ARM-assembleriin saakka. Vai mitä pitäisi ajatella siitä, että 25 vuotta vanhemmalla Amiga 500:lla pystyy tekemään käytännössä täysin samanlaisen efektin. Twisteri käy Amigalta vaivattomasti, jos ohjelma piirtää eri kulmissa olevat suikaleet valmiiksi bitmapkuvaan ja vaihtelee kuvaruudulle piirtyvän alueen osoitetta jokaiselle vaakajuovalle erikseen Copperpiirin avulla. 2 1 5 . Ehkäpä twisteriefektimme kuitenkin havainnollistaa jotakin Raspin ja BBC BASICin mahdollisuuksista ja kukaties innostaa jotakuta kokeilemaan ohjelmointia. Tämä versio on listauksessa 2, joka löytyy osoitteesta skrolli.fi/2015.2. Vasta pysäytetystä kaappauksesta huomasin, että twisterin reunoissa näkyy pientä sahalaitaisuutta, joka ehkä johtuu liukulukujen pyöristysvirheistä. Olemmeko nyt eliittikoodareita. Listauksessa on assembly-rutiinin lisäksi huomionarvoinen DIM -käskyllä varattava taulukko twister_slices% , johon ohjelma laskee valmiiksi kaikkien eri pyörähdyskulmissa olevien suikaleiden piirtämiseen tarvittavat parametrit. Sen lisäksi riscosopen.org-sivustolta löytyy runsaasti tietoa ja aktiivisen tuntuiset käyttäjäfoorumit, joilla näyttää olevan paljon Raspberry Pi -käyttäjiä. Assembly-versiossa twisterin sivuilla näyttävät loistavan värikkäät valot: vasemmalla sininen ja oikealla punainen valo. REM *** Näyttötilan asettaminen *** screen_width% = 640 screen_height% = 480 MODE screen_width%, screen_height%, 32 REM *** Muuttujien alkuasetukset *** twister_height% = screen_height% twister_width% = 200 twister_radius% = twister_width% DIV 2 twister_xoffset% = screen_width% twister_width% rotation% = twistratiophase = framecount% = starttime% = TIME REM *** Pääsilmukka toistuu, kunnes käyttäjä painaa näppäintä *** WHILE INKEY(0) = -1 twist = twistratio = SIN(twistratiophase) * 2 REM Odotetaan kuvaruudun päivitystä eli "vsync" WAIT FOR Y% = TO twister_height% 1 PROCtwister_slice(Y%*2, twister_xoffset%*2, rotation%+twist) twist = twist + twistratio NEXT Y% rotation% = rotation% + 40 twistratiophase = twistratiophase + 0.03 framecount% = framecount% + 1 ENDWHILE endtime% = TIME PRINT (framecount%*100)/(endtime%-starttime%) " frames per second" END REM *** Aliohjelma, joka piirtää yhden suikaleen *** DEF PROCtwister_slice(row%, xoffset%, angle%) LOCAL leftx%, midx%, rightx% LOCAL light1%, light2% LOCAL modangle REM Välillä 3/4 PI .. Kuvassa 4 on kuvakaappaus assembly-versiosta. Nämä muutokset jätämme lukijoiden askarreltaviksi. Amigan noin 7 MHz:n Motorola 68000 -prosessorissa on laskentatehoa hädin tuskin yhtä tuhannesosaa Raspin ARM-prosessoriin verrattuna, mutta pääprosessorin ei tarvitsekaan tehdä juuri mitään. 5/4 PI oleva piste on REM aina vasemmanpuoleisin modangle = (angle% MOD 512 + 768) * PI / 1024.0 leftx% = COS(modangle) * twister_radius% midx% = COS(modangle + PI / 2) * twister_radius% rightx% = COS(modangle + PI) * twister_radius% REM Näkyvissä olevien kahden sivun kirkkaus light1% = -SIN(modangle + PI / 4) * 220 + 35 light2% = -SIN(modangle + 3 * PI / 4) * 220 + 35 REM Piirretään sivut näkyviin GCOL 0, 0, PLOT 100, xoffset%, row% PLOT 97, twister_radius%+leftx%, GCOL light1%, light1%, light1% PLOT 97, midx%-leftx%, GCOL light2%, light2%, light2% PLOT 97, rightx%-midx%, GCOL 0, 0, PLOT 97, twister_radius%-rightx%, ENDPROC Listaus 1: 100 % BASIC-versio Katso listaus 2: http://skrolli.fi/2015.2. Optimoitu efekti pyöri jo niin vaivattomasti ”frameen”, että kasvatin twisterin kokoa ja näyttötilan tarkkuutta ja lisäsin pieniä lisähienouksia. Siltä twisterin piirtäminen kävisi huomattavasti eleettömämmin
Yksi tärkeä työväline suojaukseen ovat sertifikaatit. Tämän lisäksi meidän pitää pystyä varmistumaan siitä, että kauppatilanteessa yhteys on juuri oikeaan kauppaan, eikä kukaan ole kaapannut kuluttajan ja kaupan välistä liikennettä. Pystyimme siis käsin koskettamaan rahoja maksutilanteessa, toteamaan missä kaupassa olimme ja kuka meitä palveli. Mainokset oli painettu paperille ja niissä kerrottiin kauppojen fyysiset osoitteet. On luotettava siihen, että tuote on se joka halutaan, rahat siirtyvät oikein ja kauppa on oikeasti olemassa. Enää tilanne ei ole aina sama. Emme halua, että kukaan ulkopuolinen voi lukea lähettämiämme viestejä, joten haluamme piilottaa viestin tai muuttaa sen niin, etteivät Varmuuden hinta Samalla kun kokemusmaailmamme sähköistyy, tietoturvan merkitys korostuu koko ajan. Sen avulla ollaan yhteydessä ystäviin ja perheenjäseniin, asioidaan pankissa, tehdään ostoksia ja ohjataan talojen valaistusta ja lukkoja. Teksti: Outi Sorsa Kuvat: Mitol Meerna, Outi Sorsa. Tietoturva 57 I nternet on osa nykyajan arkipäivää. Suurin osa käyttäjistä ei kuitenkaan ole kunnollisesti perillä verkon tietoturvariskeistä. Onneksi käyttäjien, laitteiden ja tiedon suojaamiseksi on olemassa joukko erilaisia tekniikoita. Onneksi käyttäjien, laitteiden ja tiedon suojaamiseksi on olemassa joukko erilaisia tekniikoita. Tämä vaatii hyvin paljon luottamusta kuluttajalta. Suurin osa maksuliikenteestä kulkee sähköisesti ja paljon ostoksia tehdään sähköisesti, internetin välityksellä. Salausmenetelmät Tärkeä osa tietoliikennettä on liikenteen salaus. Yksi tärkeä työväline suojaukseen ovat erilaiset varmenteet eli sertifikaatit. Ennen internetiä ihmiset kävivät nostamassa rahansa pankista ja kauppoihin käveltiin katsomaan tuotteita ja ostamaan
Joissain tapauksissa merkkijono voi myös kasvaa, jos se on todella lyhyt. Avaimet on valittu niin, että niillä on matemaattinen riippuvuus toisiinsa, kuitenkin niin että lukuparin toinen luku on lähes mahdoton ratkaista pelkästään toisen luvun avulla tai ratkaisu kestää hyvin pitkään. Esimerkiksi langattoman lähiverkon tukiasemaa asennettaessa voidaan yhteyden salaustavaksi valita AES eli Advanced Encryption Standard. Yleensä viestin julkaisija tekee viestistä tiivisteen käyttämällä yksisuuntaista salausalgoritmia, kuten SHA-256. Ensimmäinen tunnettu salausmenetelmä on Caesarin käyttämä salakirjoitustekniikka, jossa kirjain korvataan 3 kirjainta aakkosjärjestyksessä eteenpäin olevalla kirjaimella. Jos epäsymmetrisen salauksen salausavain julkaistaan, voivat muut lähettää salattuja viestejä avaimen omistajalle ja vain avaimen omistaja voi purkaa viestit ja lukea ne. Epäsymmetrinen salaus taas tarkoittaa sitä, että tarvitaan kaksi erillistä avainta, toinen viestin kirjoitukseen ja toinen sen purkuun. Digitaalista allekirjoitusta käytetään hyväksi internetissä paljonkin. Samalla avaimella voi siis sekä salata että purkaa salauksen. Tämä tekniikka toimii hyvin, jos sama avain saadaan jaettua lähettäjälle ja vastaanottajalle ennen yhteyden muodostusta. Tiivisteet nimensä mukaisesti tiivistävät viestin lyhyemmäksi merkkijonoksi. SHA (Secure Hash Algorithm) on yksi tunnetuimmista tiivistefunktioista, jota käytetään useissa protokollissa ja ohjelmistoissa. Eli esimerkiksi tuhannen sanan essee ja viiden Esimerkki sertifikaatista.. 2 58 ulkopuoliset voi sitä ymmärtää. Symmetrinen salausalgoritmi tarkoittaa sitä, että sekä lähettäjä että vastaanottaja tarvitsevat saman avaimen viestin lukemiseen. Niistä tunnetuimpiin kuuluvat symmetrinen salausalgoritmi AES ja epäsymmetrinen RSA. Yleensä toinen näistä avaimista on julkinen ja toinen salainen. Tätä tapaa käytetään hyväksi digitaalisessa allekirjoituksessa. 2 1 5 . Tässä tapauksessa vain oikea avain purkaa viestin. Tätä kutsutaan yksisuuntaiseksi algoritmiksi. Jos taas purkuavain julkaistaan, voi kuka tahansa purkaa avaimen omistajan viestejä, mutta samalla varmistua viestin lähettäjästä. Tiivistystavasta riippuen merkkijono on usein saman mittainen. Haluamme varmistua siitä, että viesti on aito ja sitä ei ole käsitelty sen jälkeen, kun se on luotu. Nykyisin käytössä ovat kehittyneemmät menetelmät. Voimme siis varmistua siitä, että avaimen alkuperäinen omistaja on viestin lähettäjä. Tällöin verkon salasanan voi jakaa vaikka suullisesti käyttäjille
Jo yhden kirjaimen muutos muuttaa tiivistesumman täysin, joten voimme huomata, jos joku on muuttanut viestiä. Alkuperäisen viestin mukana julkaistaan tiivistesumma, ja vastaanottaja voi testata tiivisteen paikkansapitävyyttä kokeilemalla tiivistää viestin uudelleen. Monet selaimet pitävät nykyisin sisällään tiedon siitä, mitkä yritykset ovat luotettavia sertifikaattien luojia, niin kutsuttuja Certificate Authority (CA). Välitason CA:t ovat yrityksiä, joille juuri-CA on allekirjoittanut sertifikaatit. Suomalaisittain termi on välistävetotai mies välissä -hyökkäys. Kuvassa varmenteen antajana (Certificate Authority) VeriSign.. Tässäkin on kaksi tasoa. Suurimmalle osalle varoitus on vain ärsyttävä sivu, joka tulee ennen kuin pääsee esimerkiksi verkkokauppaostoksille. Näin hyökkääjä voi saada tietoonsa esimerkiksi luottokorttien numeroita, käyttäjätunnuksia ja salasanoja. Sertifikaatit voivat siis myös ketjuttua useammille osapuolille. Avaimen omistaja voi ostaa sertifikaatin, eli tavallaan digitaalisen henkilöllisyystodistuksen. Ketjutettuja sertifikaatteja ja kaappaajia Suurin ongelma on, että kuka tahansa voi luoda sertifikaatteja. Man-in-the-Middle-hyökkäyksessä hyökkääjä varastaa kahden osapuolen välisen liikenteen ja teeskentelee molemmille olevansa vastakkainen osapuoli. Viestin lähettäjä siis ensin tiivistää viestinsä ja liittää tiivisteen alkuperäiseen dataan, jotta voimme varmistua, ettei tietoa ole käsitelty. Digitaalinen allekirjoitus ei kuitenkaan yksinään riitä. Suurin osa ihmisistä jatkaa kuitenkin sivulle. Mistä voimme olla täysin varmoja, että joku ei ole purkanut välissä viestiä ja salannut sitä uudelleen ja antanut meille uudelleen salatun tiedon julkisen avaimen. Näin ollen olemme luoneet lyhyen merkkijonon, joka muuttuu aina, jos viestiä muutetaan. Jotta voimme varmistua toisen osapuolen identiteetistä, käytämme hyväksi kolmatta tahoa, jota pidämme luotettavana. Kun vielä salaamme tämän viestin epäsymmetrisellä salausmenetelmällä ja julkaisemme purkuavaimen, voi vastaanottaja varmistua, että viestin sisältö on pysynyt koskemattomana ja lähettäjä on se, joka on salannut viestin. Digitaalinen dokumentti pitää sisällään tiedot avaimesta ja sen omistajasta (muun muassa fyysisen osoitteen), ja sertifikaatin myöntäjä vielä allekirjoittaa sertifikaatin digitaalisesti. Sertifikaatit ovat oiva apu torjua niin kutsuttuja Man-in-the-Middlehyökkäyksiä. Hyvin harva peruskäyttäjä oikeasti tietää, mitä tulee tehneeksi, kun ohittaa selaimen varoitukset sivusta, jonka varmenteet ovat vanhentuneet tai niissä on jotain väärin. Eli käyttäjän tulisi olla kiinnostunut siitä, kuka sertifikaatin on myöntänyt. Jos selain tai muu päätelaite ei löydä sertifikaattia omista tiedoistaan, se alkaa tutkia, onko sertifikaatin myöntäjä joku luotettu taho. Tämän lisäksi viestiin liitetään vielä sertifikaatti, joka varmistaa että viestin salaaja on se, joka sanoo olevansa. Varoitukselle voi kuitenkin olla syynsä. 59 kirjaimen sana voivat molemmat tuottaa 15 merkin jonon. Kolmas taho luo siis digitaalisen dokumentin, jonka se itse allekirjoittaa. On niin sanotut juuriCA:t, eli suurimman luottamustason yritykset, ja välitason CA:t. Mahdollisesti hyökkääjä voi myös muuttaa matkalla viestin tietoja, kuten pankkimaksun summaa ja tilinumeroa. Viesti salataan epäsymmetrisellä salauksella, jotta vastaanottaja tietää, että viesti on juuri sen salanneelta taholta. Tätä kutsutaan digitaaliseksi allekirjoitukseksi. Jos sertifikaatin myöntäjää ei löydy listasta tai se on vanhentunut, näemme varoituksen että sivu ei ole ehkä luotettava
Jotta käyttäjä näkisi kuvan oikein, on ruudulle piirrettäessä käytettävä käänteistä vääristymää. Se ei onneksi ole vaikeaa. Vääristymä on epälineaarinen siten, että lähempänä näkökentän keskipistettä pikselit ovat pienempiä ja tarkkuus suurempi. Alustuksen jälkeen silmikkonäyttöä kuvaavan olion voi luoda funktiolla ovrHmd_Create. 2 60 T ässä artikkelissa esittelemme matalan tason lähestymistavan virtuaalitodellisuuden ohjelmointiin käyttäen OculusVR:n julkaisemaa LibOVR-kirjastoa. LibOVR tarjoaa C-kielisen, oliopohjaisen rajapinnan. Se palauttaa alustuksen onnistumista kuvaavan totuusarvon. Versiosta 0.3.0 alkaen on tarjolla helpompi rajapinta, jossa kirjastolta voi pyytää valmiin kolmioverkon tekstuurikoordinaatteineen. Kaiken saaminen täsmälleen oikein oli melkoisen hankalaa. Ohjelmistonkehityspakettiin sisältyvän taustaohjelman tulee olla käynnissä, tai alustus epäonnistuu. Funktio ottaa parametrina silmikkonäytön indeksin: arvo tarkoittaa ensimmäistä järjestelmästä löytyvää silmikkonäyttöä. Teksti: Mikko Rasa Kuvat: Sakari Leppä, Mikko Rasa. Valon eri aallonpituudet taittuvat linssissä hieman eri tavalla tuottaen erivärisiä reunuksia erityisesti näkökentän reuna-alueilla olevien esineiden ympärille. Tämä tapahtuu ovrHmd_CreateDistortionMesh-funktiolla. Listauksessa 1 on esitetty alustukseen tarvittavat toimet. Esimerkiksi ovrHmd-tietotyyppi kuvaa silmikkonäyttöä, ja siihen liittyvien funktioiden nimet ovat muotoa ovrHmd_DoSomething. Ensin renderöidään kummankin silmän näkymät tekstuureihin ja sen jälkeen yhdistetään ne ruudulla esitystä varten. Mutta kuinka niitä virtuaalimaailmoja sitten luodaan. Funktioiden nimistä ilmenee myös mihin oliotyyppiin ne liittyvät. Oculus Riftin laaja kuvakulma perustuu näyttöpaneelin kuvaa vääristäviin linsseihin. Parametrina annetaan osoitin ovrDistortionMesholioon, johon funktio täyttää pyydetyt arvot. Jos funktio palauttaa null-osoittimen, tarkoittaa se, ettei yhtään silmikkonäyttöä löytynyt. Näiden kromaattisten virheiden korjaamiseksi vääristymäOculus Rift -ohjelmointi Virtuaalitodellisuuteen sopivat silmikkonäytöt ovat kovaa kyytiä tulossa markkinoille. Ennen käyttöä kirjasto pitää alustaa kutsumalla ovr_Initialize-funktiota. Joissakin esitystavoissa vaiheet voidaan yhdistää ja renderöidä näkymät suoraan oikeaan paikkaan ruudulla, mutta Oculus Riftillä tämä ei ole mahdollista. Mikäli OpenGL-ohjelmointi ei ole ennestään tuttua tai kaipaat muistin virkistystä, kyseisten artikkelien lukeminen on suositeltavaa. LibOVR:n ensimmäisissä versioissa vääristymä oli itse tuotettava shaderohjelmalla ohjelmointioppassa esitettyjen kaavojen mukaan. Kaikkien funktioiden, tietotyyppien ja vakioiden nimissä on etuliite ovr. Linux-jakelut eivät ole vielä paketoineet LibOVR:ää, joten käynnistyksen joutuu virittämään itse. Ohjelma voi tällöin vaihtaa tavalliselle näytölle sopivaan piirtotapaan. Stereoskooppisessa renderöinnissä on kaksi päävaihetta. Koodi 2 1 5 . Jotta syvyysvaikutelma välittyisi käyttäjälle, näkymät on piirrettävä hieman eri kohdista. Pohjana käytämme OpenGLohjelmointiartikkelisarjassa (Skrolli 2013.2–2014.2) luotua grafiikkamoottoria. Katselupisteiden etäisyyden tulisi suunnilleen vastata katsojan silmien välistä etäisyyttä – muuten katsoja voi tuntea olonsa epämukavaksi. Funktiota täytyy kutsua erikseen kummallekin silmälle
Koska käyttäjän pää todennäköisesti ei ole lepoasennossa juuri tässä kohtaa ja käyttäjä saattaa myös vaihtaa asentoa pelaamisen aikana, on ohjelman syytä tarjota mahdollisuus nollaukseen nappia painamalla. Jotkin tehosteet, kuten varjokartat ja ympäristökarttoihin perustuvat heijastukset, vaativat apunäkymän piirtoa tekstuuriin ja sen käyttämistä osana varsinaisen näkymän piirtoa. Paluuarvona saatava tietorakenne sisältää muunmuassa pään asennon ja sijainnin. 61 verkon tekstuurikoordinaatit voi halutessaan pyytää erikseen eri värikomponenteille. Toiminto on helppo toteuttaa kutsumalla funktiota ovrHmd_RecenterPose. Listaus 1: LibOVR:n alustus. Syväterävyystehosteen käyttäminen silmikkonäytön kanssa ei ole kuitenkaan suositeltavaa, sillä nykyisillä laitteilla ei pysty seuraamaan käyttäjän katseen suuntaa. Jos kuva-ala halutaan hyödyntää kokonaan, tarvittava tarkkuus on hieman suurempi. if(ovr_Initialize()) { ovrHmd hmd = ovrHmd_Create(0); if(hmd) { // Kaikki kunnossa } else { // Silmikkonäyttöä ei kytketty } } else { // Alustus epäonnistui } Listaus 2: Vääristymäverkon pyytäminen LibOVR:ltä. Tässä tulee avuksi funktio ovrHmd_GetFovTextureSize, joka palauttaa parametrina annettavaa näkökenttää vastaavan tekstuurin koon. Silmikkonäyttöä hyödyntävissä sovelluksissa kannattaa suosia peliohjaimen käyttöä, koska käyttäjä ei pysty näkemään käsiään ja näppäimistöä. Kirjaston alustuksen yhteydessä asennon seurannan nollakohta asetetaan noin metrin päähän seurantakameran eteen, katse kameraa kohti. Parametrina annetaan toivottuja sekä vaadittuja seurantaominaisuuksia kuvaavat bittimaskit. Kaksiulotteisen näyttöpinnan kaikki pisteet ovat samalla etäisyydellä silmästä, joten koko kuva näkyy tarkkana. Virtuaalitodellisuuteen uppoutumisen viimeistelee käyttäjän pään asennon seuranta. Tämä kannattaa ottaa huomioon grafiikkamoottorin suunnittelussa. Useimmissa näppäimistöissä on Fja J-näppäimissä kohoumat, joiden avulla ne löytää myös silmikkonäytön peittäessä näkökentän. Jos näppäimistön käyttö on nappien määrän tai hiiriohjauksen takia välttämätöntä, napit kannattaa sijoittaa lähelle toisiaan helposti löydettävään paikkaan. Seurannan ollessa käynnissä nykyisen tilan saa selville funktiolla ovrHmd_GetTrackingState. Vaikka Oculus Rift tuottaakin varsin uskottavan vaikutelman kolmiulotteisesta ympäristöstä, aivan kaikkia ihmisen näkökyvyn ominaisuuksia se ei pysty jäljittelemään. ovrDistortionMesh mesh; ovrEyeType eye = ovrEye_Left; // Tai ovrEye_Right ovrFovPort fov = hmd->DefaultEyeFov[eye]; // Oletusnäkökenttä on hyvä lähtökohta ovrHmd_CreateDistortionMesh(hmd, eye, fov, ovrDistortionCap_Chromatic, &mesh); ovrDistortionVertex &v0 = mesh.pVertexData[0]; glVertexAttribPointer(VERTEX, 2, GL_FLOAT, false, sizeof(ovrDistortionVertex), &v0.ScreenPosNDC.x); glVertexAttribPointer(RED_TEXCOORD, 2, GL_FLOAT, false, sizeof(ovrDistortionVertex), &v0.TanEyeAnglesR.x); glVertexAttribPointer(GREEN_TEXCOORD, 2, GL_FLOAT, false, sizeof(ovrDistortionVertex), &v0.TanEyeAnglesG.x); glVertexAttribPointer(BLUE_TEXCOORD, 2, GL_FLOAT, false, sizeof(ovrDistortionVertex), &v0.TanEyeAnglesB.x); // Muista kutsua ovrHmd_DestroyDistortionMesh(&mesh); kun dataa ei enää tarvita Kummankin silmän kuvat renderöidään erikseen ja yhdistetään vääristymäverkon avulla lopulliseksi ruudulla näkyväksi kuvaksi.. Se käynnistetään kutsumalla ovrHmd_ConfigureTracking-funktiota. Pään asennon seurantaa käytettäessä pystysuuntaiset katselukontrollit kannattaa ottaa pois käytöstä ja käyttää yksinomaan asennon seurannasta saatavaa dataa. Koska katsojan havaitsema pikselitiheys kulmayksikköä kohti vaihtelee, piirtoon tarvittavan näkymän koko ei vastaa näyttölaitteen erottelutarkkuutta. Ne yhdistetään pelihahmon sijaintiin ja silmän siirrokseen lopullisen kameramatriisin muodostamiseksi. Apunäkymää ei kannata turhaan piirtää erikseen eri silmille, vaan valmistelutoimet voi suorittaa yhteisesti. Listaus 2 näyttää kuinka vääristymädata saadaan LibOVR:ltä ja kuinka sitä voi käyttää OpenGL:ssä. Funktion palauttama totuusarvo kertoo, onnistuiko seurannan käynnistys
Laitteesta lähtee HDMIja USB-kaapelit, jotka kulkevat pään yli niskaan ja sieltä tietokoneeseen. Virtuaalitodellisuuslaitteita on vaikea arvioida yksiselitteisesti, koska todellisuuden kokeminen on lopulta subjektiivista. Muiden kannattaa kokeilla etukäteen. Näkökenttä on hieman kutistunut aiemmasta, mutta muutosta ei käytännössä juuri huomaa. Toiselle se on jännä lelu, josta jää lähinnä paha olo. DK2 on tällä hetkellä paras myynnissä oleva kuluttajahintainen silmikko ja ainoa, jolle on peleissä tuki. Viime syksynä laitteesta julkaistiin toinen kehitysversio. Oculus VR ylläpitää myös listaa johon kuka tahansa voi lähettää omia tuotoksiaan muiden kokeiltavaksi. Kaapelit voi halutessaan irrottaa. Vaikka kilpailevia tuotteita on luvattu, kestää aikansa ennen kuin peleihin toteutetaan tuki niille joten Oculus Riftin johtoasema on toistaiseksi vakaalla pohjalla.. Ohjauselektroniikka on upotettu samoihin kuoriin näyttöpaneelin kanssa, joten erillistä sovitinlaatikkoa ei enää tarvita. Näkymä on yhä riittävän laaja luodakseen uskottavan vaikutelman läsnäolosta. Joillekin se on paras juttu sitten Amigan, toisille se taas aiheuttaa lähinnä pahoinvointia. Muille fysiologisille poikkeamille, kuten silmien etäisyydelle tai karsastukselle ei valitettavasti tarjota säätöjä. Siihen voi kytkeä esimerkiksi langallisen peliohjaimen, tai virtuaalimaailman sisältävän USB-muistitikun. O culus Rift on vuonna 2012 joukkorahoituksen voimin luotu silmikkonäyttö, jolla voi uppoutua keinotodellisuuteen. Jos pelaat pelejä joissa on Oculus Rift-tuki ja olet kiinnostunut virtuaalitodellisuudesta, kannattaa vahvasti harkita sen ostamsita. Aika näyttää miten tämä vaikuttaa silmikkonäytön tulevaisuuteen. Projekti lupasi päihittää silloin olemassa olevat laitteet ominaisuuksillaan ja samalla pitää hinnan kohtuullisena. Laite on sen jälkeen ollut harrastajien mukana monissa tietokonetapahtumissa kuten Assemblyssä. Normaalinäköiset, kaukonäköiset ja lievästi likinäköiset pärjäävät samoilla linsseillä, ja ainoastaan voimakkaasti likinäköiset tarvitsevat erilliset linssit. Ehkä suurimpana uutuutena Rift pystyy nyt seuraamaan myös käyttäjänsä pään sijaintia. DK2 on edeltäjäänsä huomattavasti kompaktimpi. Eron havaitseminen tosin on yksilöllistä ja riippuu myös käytetystä pelistä tai ohjelmasta. Rift DK2 on kuluttajien ulottuvilla olevista silmikkonäytöistä kuitenkin paras ja toistaiseksi ainoa, jolle on pelitukea. Sen rauta on jo täysin kuluttajalaatuista, mutta softapuolen ongelmat ansaitsevat sille Developer Kit-nimen. Suuria pelijulkaisuja on saatu muutama, mutta valikoimalla ei vielä pääse juhlimaan. Jos siis haluat päästä virtuaalitodellisuuteen ensimmäisten joukossa, Oculus Riftiä voi suositella. Kumpikin silmä saa puolet näytöstä eli 960×1080 pikseliä. Laitteen kehityksessä on tapahtunut myös yllättävä poliittinen käänne: Facebook osti Oculuksen. Musta reunus näkökentän äärirajoilla näyttää lähinnä siltä kuin kasvoilla olisi hiihtolasit. Näytön erottelukykyä on kasvatettu 1920×1080 pikseliin. Vaihdettavia linssejä toimitetaan aiemman kolmen parin sijaan nyt vain kahdet. 2 62 Oculus Rift DK2 Skrollin numerossa 2013.3 esittelimme Oculus Rift -silmikkonäytön. Reilun tuuman verran pienemmän näyttöpaneelin ansiosta etureunan kolhosta ulkonemasta on päästy eroon. 2 1 5 . Syksyllä 2014 saatiin Developer Kit 2 eli DK2, johon tutustumme tässä artikkelissa. Toiselle se on nyt ja jatkossa välttämätön lisävaruste josta maksaisi vaikka tuplahinnan. Suuri osa tästä kuluu kuitenkin näkökentän reuna-alueisiin, joten lopullinen tarkkuus tuo mieleen lähinnä VGA-aikakauden. Kokonaan poispäin kamerasta ei kuitenkaan voi kääntyä. Mikä on muuttunut, ja onko suunta parempaan vai huonompaan. Silmikon yläreunassa on USB-liitin, joka on kytketty integroituun USBhubiin. Integroidun elektroniikan takia painoa on tullut hieman lisää. Useita muitakin yrityksiä on hypännyt keinotodellisuuskelkkaan mukaan ja kehittelee omia laitteitaan, joten laitetarjonnan voi odottaa laajenevan tulevaisuudessa. Loppukeväästä 2013 saapunut ensimmäinen kehitysversio lunastikin lupaukset suurelta osin. Sen sijaan indie-kehittäjät ovat ottaneet virtuaalitodellisuuden innolla vastaan. Tähän tarvitaan mukana toimitettavaa infrapunakameraa, joka asetetaan näytön päälle tai muuhun sopivaan paikkaan. Virkistystaajuutta on nostettu 75 kuvaan sekunnissa, joka yhdessä matalaviiveisen näyttöpaneelin kanssa tuottaa pään liikkeitä paremmin myötäilevän kuvan. Harmillisesti osapikselien täyttöaste ei ole juurikaan parantunut. Kilpailijoilla kestänee Oculus Rift DK2:ta on vaikea arvostella koska sen hyvyys on kovin subjektiivista. Kameran seurantakeila on kolmisen metriä syvä ja yhtä leveä, mikä riittää paikallaan olevalle pelaajalle paremmin kuin hyvin. Seuranta toimii hyvin ja parantaa läsnäolon tunnetta erityisesti pieniä esineitä lähietäisyydeltä tutkiessa
OR:llä yhden muutaman minuutin ilmataistelutehtävän jälkeen on niin poikki, että täytyy pitää taukoa ja pyyhkiä linssit hiestä. Avaruustaisteluissakaan OR:n resoluutio ei tuota ongelmia, sillä ne suoritetaan yleensä lähietäisyydeltä ja aluksen HUDin avulla toiset alukset näkyvät hyvin. Tehtävän debriefing-näkymä taas näkyy, mutta siitä ei tahdo saada selvää. Osa on saanut toimimaan vaihtamalla OR:n ykkösnäytöksi, minä en. Sen tärkeimmät mittarit ovat riittävän isoja, että ne näkee ja pienempiä voi kurkata nojaamalla eteenpäin. DCS:n valikot eivät ole tehty OR:ää varten, vaan ne ovat kaksiulotteiset. Tätä moodia en saanut toimimaan millään tempuilla. Mutta resoluution vuoksi pienempiä mittareita ja HUD-symboleita ei näe riittävän tarkasti joten esimerkiksi vakavaan suihkukonekaluston lentämiseen OR ei kelpaa. Riftin käyttöönotto ei vaadi juurikaan säätämistä. Pelissä on pakko pitää ikonit (toiset koneet näyttävät tekstit) päällä, tai muuten ei taivaalta löydä ketään, ennenkuin on liian myöhäistä. Ohjaamot eivät kuitenkaan ole jollain tapaa yhtä hienoja ja teräviä kuin DCS:ssä. Kutosen tarkistamiseksi täytyy oikeasti nojata sivulle ja kääntää päätä joten taisteleminen on fyysisesti yllättävän raskasta. Valitettavasti pelejä käydään ilmeisesti kohtuu vähän, joten varttitunnin odottaminenkin on yleistä. Pelistä löytyy realistinen moodi, jossa on ikonit päällä mutta lentomallit ovat realistisia. Kuva tulee kyllä OR:lle, mutta valikon lisäksi kaikki on mustaa. Todellisuudessa olisi lisänä vielä Gvoimat, joten ei ole ihme että ilmataistelut olivat lyhyitä. Tämä on hyvä esimerkki siitä, että softapuolella on vielä paljon tekemistä.. Half Life 2 Half Life 2:n betassa on virtual reality-moodi, jonka avulla pelin pitäisi toimia OR:llä. Ohjaamojen ”hologrammi-hud” ja pelin valikot leijuvat pelaajan edessä eivätkä riko immersiota. Jotkut tekstit (esim chat) ovat hieman pienellä fontilla, mutta niistä saa kuitenkin selvää. War Thunder War thunderissa on ihan toimiva ORtuki. 63 pari vuotta kuroa etumatka umpeen. Ilmataistelut DCS:ssä ovat todella adrenaliininkatkuisia ja fiilis upea. Verkossa pelattaessa OR:n resoluutio aiheuttaa jälleen ongelmia. Koneiden ohjaamot ovat aivan upean näköisiä ja immersio on huikea. Päävalikko ei näy OR:n näytöllä ollenkaan. Itse olen lentänyt enimmäkseen lisäosana saatavalla Messerschmitt 109Kkoneella, joka toisen maailmansodan koneena on suihkareita yksinkertaisempi tekniikaltaan ja mittareiltaan. Useimmilla palvelimilla ikonit on pakotettu pois käytöstä joten niillä on turha koittaa pelata OR:n kanssa. Internetissä moni muukin on valitellut samaa. DCS: World DCS:ssä OR:n resoluutio tulee vastaan monessa mielessä. Elite: Dangerous E:D on malliesimerkki hyvin toteutetusta Oculus Rift-tuesta. Elitessä toiminta on keskimäärin kohtuu rauhallista, joten OR päässä olen istunut kolmekin tuntia yhteen menoon. Valitettavasti DCS:stä puuttuu vielä kunnon kampanja toisen maailmansodan kalustolla, joten sen lentäminen on jäänyt kohtuu vähäiseksi
Näin! Tässä tossukkasi, kultaseni! Wau! Tuohan on todellinen ”Dream Come True...” Tuli ihan bueno! älä, Mikä on nyt in. Käskyttäminen ajatuksen voimalla. 2 1 5 . Ja kissan hiekkakin on vaihtamatta! Mitä sinä olet koko päivän taas tehnyt?! Uskoo tuo sentään vielä puhetta! tottahan toki, kultaseni! En kulta. Oho, uskoisiko tuon... No katsos tätä. Wallu! Ethän sinä vienytkään roskista! Kai kaupas muistit käydä... ei siltä näytä!. Vaikka puheentunnistus alkaakin olla jo ikivanha juttu... Paluu arkee n. 2 64 30-vuotinen mikrokivikausi juhlii! kolmenkymmenen vuoden jälkeen osaan piirtää tämän sarjan sankarit vaikka silmät sidottuina. Jep, niinpä! Laitathan ne vielä jalkoihini. En kult Lopeta! Rätti pois silmiltä ja heti!!! ?! entä Imuroitko sinä. kyllä kulta. Helka, tuo tohvelini
Huimaa! Myös piirrosteknisesti sarja kehittyi harppauksin. Onnea 30-vuotiaalle! Kivikautinen sarjakuva Mikrokivikausi-sarjakuva alkoi ilmestyä niihin aikoihin, kun isoisä ensimmäisen tietokoneen osti. Juhlaa ja arkea Osoitteessa mikrokivikausi.fi on Wallun itsensä ylläpitämä arkisto kaikista Mikrobitissä julkaistuista sarjoista. Vuosi tästä ja ensimmäinen koko sivun kokoinen sarjakuva ilmestyi. Seuraavien seitsemän lihavan vuoden aikana Mikrokivikausi kukoisti: vain vuosi ensijulkaisusta ja sarja sai jo värit. Suotakoon se hänelle. Sen jälkeen kuva lähetettiin lehteen tulevan kuvamateriaalin mukana kirjapainoon, jossa se skannattiin ja sijoitettiin tyhjään sarjakuvaruutuun. Nyt Wallu tietysti odottelee siltä suunnalta kustantajan kutsua. M.O.T Paluu alkuun Sarjakuvahulluus iski Walluun varhain. Syksyn tullen Wallu siirtyi opettajan virasta vapaaksi taiteilijaksi ja samalla Mikrobitin freelance-graafikoksi ja -taittajaksi. Viime vuoden lopulla yksi sivu matkasi kiinaksi googlekäännettynä Taiwaniin, jossa se oli komeasti esillä paikallisessa sarjakuvatapahtumassa (The 15th International Comic Artist Conference, Kaohsiung, Taiwan). Kyseinen piirros piti tuohon aikaan valokuvata tietokoneen ruudulta. Komeimmat hetket ovat kenties sarjan alkutaipaleelta, jolloin sarja sai lehdestä parhaimmillaan kolmekin sivua tilaa: keskiaukeaman 3D-juliste ja sivun sarja sekä maininta tästä kuvan kera jo kannessa. 65 Kolumni 30 vuotta on pitkä aika duunissa kuin duunissa. Lehti halusi tarjota lukijoilleen hyödyllistä (lue: myyvää) asiatietoa, eikä sarjakuvasta ollut sellaiseen, ajateltiin. Yksi puolen sivun ilmoitus peruuntui aivan viime hetkillä. Eikä sitä sinne haluttukaan. Normaalisti tällaiset aukot täytetään kustantajan omilla ilmoituksilla, mutta syystä tai toisesta nyt tilalle laitettiin ensimmäinen Mikrokivikausi-sarjakuva. Siis 30 vuotta sitten. Tästä kuitenkin seurasi vääjäämättä se, että taiteilija alkoi käyttää enemmän tietokonetta sarjan tekemisessä, etenkin sen värittämisessä. Wallullekin tuli käsky siirtää sarjansa digitaaliseen muotoon kotikonstein. Luolastoja, lohikäärmeitä ja muuta mielenkiintoista. Kun huhtikuun 1985 lehti oli jo painossa, onnekas sattuma puuttui peliin. Se ilmestyi siitä lähtien jokaisessa Mikrobitin numerossa aina vuoden 2013 syyskuuhun, jolloin se irtisanottiin tietotekniikan kehittymisen mahdollistamalla persoonattomalla sähköpostiviestillä: ”Lehden palstojen uudelleenjärjestelyssä ja sisällön karsimisessa tulimme siihen tulokseen, että emme enää jatka Mikrokivikautta uudessa MB:ssä.” Ja Pimeys valtasi piirtäjän mielen. Wanhuksen on pakko piirtää käsin sivellinkynällä, kun on tuon taidon vuosien varrella näppeihinsä saanut. Lehti ilmestyi ja lukijoiden palaute sarjakuvasta oli niin myönteistä, että sitä päätettiin julkaista lisää, jos lehdessä vain oli tilaa. Säälistä, uskoo taiteilija. Hän suunnitteli ja piirsi malliksi kuusi puolen sivun kokoista, mustavalkoista sarjakuvaa (Mikrokivikaudet 1–6) ja vei ne innoissaan toimitukseen. Sitten tuli 90-luku, lama ja kotiskannerit. Agfan skannerilla se kävi, mutta ilman minkään valtakunnan skannauskoulutusta jälki ei aina ollut parasta A-luokkaa. Onnekkaasti sarja mahtui myös toukokuun numeroon. Eli ainakin tekijä on pitänyt sarjastaan. Sinnikäs taiteilija ei luovuttanut. Lopputulos tyydytti taiteilijaa, ja tästä tuli pitkäksi aikaa sarjan vakiototeutustapa. Onneksi hätiin tuli vuoden 2014 alusta Skrolli, joka antoi sarjalle ja taiteilijalle uuden elämän. Vaan yksi puuttui: lehdessä ei ollut sarjakuvaa. Mutta mikä ettei, jos työstään tykkää. Kokeiltuaan väritystä kirjapainon tasaväreillä (ja petyttyään pahasti) taiteilija tarttui vesiväreihin ja sen ajan hittivärittimeen eli retussiruiskuun ja teki seuraavat sarjat niillä. Matkan varrelta Palataan vielä vuoteen 1985. Prosessorissa ilmestyi monisivuinen ”Missä vika, kun projekti meni pieleen?” -opetussarjakuvakin. Sarjakuvataiteilija Wallu on jaksanut tehdä Mikrokivikausi-sarjaansa vuodesta 1985. Lisäksi sarja siirrettiin piirustuspaperilta lehteen Sanomien huippuskannereilla ja ruiskuväritkin toistuivat hienosti. Myös erilaisia tasavuosia on aina juhlittu näyttävästi, alkaen 5-vuotisjuhlista vuonna 1990, jolloin sarja oli lehdessä keskiaukeaman kokoisena julisteena. Paljastavin ja taiteilijan itsensä mielestä kenties onnistunein juhlasarjis on vuodelta 2005, jolloin sarja täytti 20 vuotta. Teksti: Ulla W. Mikrokivikausi on ollut vuosien varrella muutaman kerran mukana näyttelyissä niin Suomessa kuin ulkomaillakin. Vuoden 1987 ensimmäisessä sarjassa oli ruutu, jonka Wallu oli omakätisesti Amigalla piirtänyt. Mikrobitin alkuvaiheissa Wallu piirsi kuvituskuvia ohjelmatulosteitten yhteyteen. Ja 30 vuotta sitten siitä piti joku toinenkin. Vuoteen 1985 mennessä hän oli jo ehtinyt voittaa Kemin sarjakuvakilpailut kahdesti, kustantaa viisi omakustannesarjakuvalehteä, piirtää poliittisia pilapiirroksia Ilta-Sanomiin sekä kuvittaa Tecnopressin ja sittemmin Sanomien kustantamia Prosessori-, Tietokoneja Mikrobitti-lehtiä. Silti vielä tänäänkään Mikrokivikausi ei synny kokonaan tietokoneella. Wallulle myönnettiin viime vuonna Suomen sarjakuvaseuran sarjakuvaneuvos-arvonimi, joten ihan hukkaan nämä 30 vuotta Mikrokivikautta eivät ole hänen osaltaan menneet. Ensimmäiset sarjat Wallu piirsi mustalla huopakynällä A4-kokoiselle monistuspaperille. Siellä ne tyrmättiin: veivät lehdestä liikaa tilaa. Silloin kaivettiin jo hieman hapantunut tekijäkin esiin
2 1 5 . Kauppinen Kulttuuri. 2 66 Satunnainen samooja Kolme vuosikymmentä suomalaista roolipelaamista Suomalaisten roolipelien 30-vuotista historiaa valaisevan juttusarjan ensimmäisessä osassa veteraani muistelee läpi ensimmäiset viisitoista vuotta omia ropelluksiaan. Teksti: Nordic the Incurable Kuvat: Mikko Torvinen, Nordic the Incurable, Jukka O
Samaten hyvin oleellista oli se, että aseita ja varusteita ei ollut paljoa mukana seikkailuun lähdettäessä. Näitä pelejä kavereiden kanssa pelatessa kului muutamakin sata tuntia ja kiinnostus ”sitä oikeaa peliä” kohtaan sen kuin kasvoi. Nordic työskentelee yhä pelialalla, tekee edelleen roolipelejä ja pelaa viikoittain.. Pelitarjonta ei ollut mitenkään huikaisevaa, ja kovin monet olivat perinteisen ”heitä noppaa ja liiku ruutuja” -tyylin edustajia, joita ei Erkkikään kauaa jaksanut pelata. Niitä löytyi vasta luolien uumenista, ties kenen sinne jättäminä. Myin peliä (kaksi nidottua valokopiovihkoa) postitse ja markkinoin sitä mainitsemalla sen muutamaan kertaan Mikrobittilehdessä vuonna 1984 alkaneella palstallani. Mitään kuvausta muistuttavaa ei ollut vielä eteeni osunut. Kuka Nordic. Tämä johtui tietysti siitä, että Tarminissa yksi perusvihollisista oli vihainen kääpiöhahmo. Joskus myös toteutin omalta tuntuvia ideoita. Amerikan malliin Ensimmäinen oikea roolipelini, Acirema, hahmottui lopulliseen muotoonsa 80-luvun alkuvuosina. Niissä seikkailija tai useampi kulki luolastoissa tarvikkeita ja aarteita etsien ja vastaantulevat monsterit murskaten. Usein tein mielestäni parempia ja monipuolisempia versioita olemassa olevista peleistä. Noita aikoja muistellessa ei voi kuin haikeana huokaista: kuinka helppoa onkaan nykyään etsiä ja saada tietoa kiinnostuksensa kohteista! Kohtuullisen kärsimättömänä ja toimeliaana henkilönä en jäänyt odottamaan ihmepelin inkarnoitumista, vaan aloin suunnittelemaan omaa versiota. Seuraavaksi kävin läpi peruspelit Monopoleineen, Kimbleineen ja jopa Afrikan tähtineen – josta en, monen muun pelin ohella, oikein pitänyt sen liian suuren satunnaisuuden vuoksi Tulin tuolloin pelanneeksi monet nyt jo unhoon jääneet lautapelit. Pelaajat saattoivat kerätä voimia, aseita ja tarvikkeita kiertämällä helpommissa luolissa ennen kuin uskaltautuivat isompien hirviöiden eteen. Vaikeimmalla tasolla peli vei aikaa useita tunteja eikä loppuun pääseminen ollut kuin ohut toive. Esimerkiksi kääpiöt olivat hirviölaji, eivätkä suinkaan hahmoluokka pelaajille. Halusin antaa muillekin kiinnostuneille mahdollisuuden tutustua roolipeleihin – niitä kun ei Suomessa ollut vielä lainkaan myytävänä. Jossakin odotti se loppuluolastokin, mutta sinne ei päässyt ihan joka toinenkaan kerta. 67 O len ollut kiinnostunut peleistä niin kauan kuin niistä mitään olen ymmärtänyt. Siinä ohjattiin luolissa könyävää seikkailijaa, joka vain jousi ja nuolet apunaan etsi aarteita ja ulospääsyä hirviöiden vartioimasta luolastosta – joutuakseen aina vain seuraavaan luolastoon. Pelin mainoksessa ollut maininta ”perustuu suosittuun seurapeliin” oli herättänyt mielenkiintoni. Kavereiden kanssa pelasimme paljon enemmän itse tehtyjä kuin kaupasta ostettuja pelejä. Näiden pelien upein idea oli reitin vapaa valinta, ainakin joiltakin osin. Hyvin ne tuntuivat toimivan. Muutama vuosi myöhemmin markkinoille putkahti englannista käännettyjä soolopelikirjoja, jotka oli tehty aivan oman ideani nuotilla. Mikä ihmeen peli se sellainen oli, jossa saattoi vapaasti seikkailla luolissa, etsiä aarteita ja taistella hirviöitä vastaan. Aciremaa suunnitellessani yksi tärkeä pointti oli se, että pelin oli oltava riittävän helppo ja selkeä opetella. Kaikesta kyllä huomasi, että peli oli paljon velkaa pelaamilleni AD&D-videopeleille. Sen sain melkein julkaistua, mutta kustantajan mukaan aika ei ollut vielä kypsä moisille ihmeellisyyksille. Suomalaisen roolipelimaailman grand old man Nordic the Incurable on tehnyt ja julkaissut vuosikymmenten mittaan kymmeniä roolipelejä, pelannut läpi valtavan määrän muiden luomuksia ja kirjoittanut roolipeleistä viiteen eri lehteen. Kaikki kelpasi ainakin kokeiltavaksi. 1980-luvun alussa pelailin paljon silloista ykkösluokkaa edustavalla Intellivision-pelikonsolilla, jolle oli peli nimeltä Advanced Dungeons & Dragons. Ensin tein useita lautapelityyppisiä pelejä. Muistan jo alle kouluikäisenä rakennelleeni legopalikoista erilaisia kuularatoja ja autojen takaaajopelejä. Seuraavana vuonna ilmestyi vielä hienompi Advanced Dungeons & Dragons: Treasure of Tarmin, jossa hienosti ”kolmiulotteisia” luolastoja katseltiin seikkailijan silmin. Digitaalimutka Roolipelit, nuo ihmismieltä viekkaasti haltioittavat tekeleet, ilmaantuivat elämääni mutkan kautta. Tietokonepelaajat muistavat Nordicin Mikrobitti-lehdessä ilmestyneestä Peliluola-palstasta, jonka kautta Nordic loi Suomeen kukoistavan pohjan sekä tietokoneettä perinteisille roolipelaajille. Niin mukavasti kuin isä muuten pelaamiseeni suhtautuikin. Koska nettiä ei ollut eivätkä tietosanakirjat tai suomalaiset kaupat asiaa tunteneet, oli vain odoteltava, josko jostain ilmaantuisi tietoa tästä ihmeellisestä seikkailupelistä. Sittemmin suunnittelin yhden pelaajan seikkailun, jossa kirja toimi ikään kuin tietokoneen roolissa, tavallaan pelinjohtajana. Omia pelejä suunnittelin lähes heti, kun kynä alkoi pysyä kädessä. Siinä oli jo hyvinkin oikeat rope-elementit hahmoineen, pelinjohtajineen ja taistelusääntöineen. Päätoimittaja hyväksyi kaupallisuuden vivahteen, kun se ei ollut keneltäkään muulta pois
Vielä vuosia tuon tapahtuman jälkeen ainoat kanavat, joista kotimaassa sai tietoa roolipelaamisesta, olivat Lauri Tudeerin postimyyntiluettelo, Conan-lehden roolipelipalsta ja Mikrobitin Peliluola, johon joskus kirjoitin jotain ropeasiaa. Ajattelin, että ilmeisesti jenkeille kaiken täytyi olla valmiiksi säänneltyä ja että heillä ei laskettu kovin paljon oman mielikuvituksen käytön varaan.. Pelinä se ei ollut kummoinen, enkä itse asiassa koskaan edes pelannut tuota ensimmäistä D&Dseikkailuani. Pelin kankeus ja sääntöjen paljous hämmensivät minua, koska olin tottunut omissa peleissäni paljon vapaampaan kulkuun. Kyllä niitä sitten kuulemma luettiinkin. Englanninkielistä tarjontaa oli vielä monin verroin enemmän, joten ropeltajille alkoivat varsin hyvät ajat. Miekkaa ja magiaa myytiin noin tuhat kappaletta, joka on vielä nykyäänkin hyvä myyntimäärä suomalaiselle ropelle. Se oli jälkeenpäin katsottuna aika hassu pieni peli, mutta antoi varmasti monelle aloittelijalle sysäyksen roolipelaamiseen maailmaan. Se mainitaan usein ”ensimmäisenä suomalaisena roolipelinä”, eikä tuo arvio poikkea kauas totuudesta. Muistan ainakin sellaisen pelin kuin Nousius, mutta tekijöitä en tunne. Vapaus vs. Vaikka olin suunnitellut sääntöjä kymmeniin jollen satoihin eri peleihin ja ohjelmoinut Commodore 64:lle pitkiä seikkailupelejä, pidin D&D:n sääntöjä vaikeina ja monimutkaisina. Sittemmin se ilmestyi samannäköisenä myös suomeksi. Kahdeksankymmentäluvun lopussa syntyivät Suomen ensimmäiset roolipelikaupat, joiden myötä markkinoille alkoi tulla monelta taholta suomenkielisiä roolipelejä, sekä kotimaisia että käännettyjä. Roolipelimarkkinat Aciremaa myin ensin itse postitse. Toki muutkin tekivät noihin aikoihin omia roolipeliviritelmiään. Ei muuta kuin soitto herralle ja D&D tilaukseen. Peli kuuluu niihin varhaisiin ja upeisiin muistoihin, jotka liittyvät nimenomaan tutustumiseen, kirjojen kuvitukseen ja siihen uskomattoman hienoon tunnelmaan, joka outoon maailmaan syventyessä syntyi. Yhtäkkiä tavaraa oli tarjolla ylenpalttisesti ja ihan selväksi suomeksi. No jopas ampaisin pääpostiin etsimään Helsingin puhelinluetteloa ja sieltä Lauri Tudeerin nimeä. Sääntökirja Ensimmäinen ostopelini oli Dungeons & Dragons Basic Set, kuuluisa punalaatikko. Seuraava pelini oli Miekka ja magia. Se perustui kokemuksiini Aciremasta, mutta oli ulkoasultaan jo hienompi ja oikein painotyötä. Aciremaa myytiin kaikkiaan joitakin satoja kappaleita. 2 1 5 . Mainittakoon myös, että viime vuonna Acirema käännettiin englanniksi, kuvitettiin hienosti ja julkaistiin netissä kenen tahansa ladattavaksi. Nelostuote julkaisi Pasi Janhusen suunnitteleman Ankhin, Protocol Productions käänsi Dungeons & Dragonsin ja Ace-pelit kustansi suomenkielisen Runequestin. Myös pienjulkaisija Dada-pelit oli mukana suomalaisella materiaalilla. Nämä mainitsemani asiat olivat oleellinen osa sitä tapahtumaketjua, joka teki minusta roolipelaajan ja pelintekijän ja josta löytyi harrastus ja ammatti kymmeniksi vuosiksi. Myöhemmin, kun Lauri Tudeer avasi Fantasiapelit-liikkeen, hän otti sen myyntiin. Seuraavina vuosina roolipelilehdet Seikkailija, Sininen lohikäärme ja Magus ilmaantuivat jakamaan ropetietoutta uusille harrastajille. Se on myös ansainnut paikan reilun vuoden kuluttua avattavassa Suomen pelimuseossa Tampereella. 2 68 Joskus 80-luvun puolessavälissä satuin sitten lukemaan Aamulehdestä ison jutun, joka kertoi mielikuvituksellisesta harrastuksesta: roolipelaamisesta! Siinä vantaalainen Lauri Tudeer esitteli harrastustaan ja selvisi, että häneltä voi postitse tilata D&D-roolipeliä
Ymmärrän kyllä mainiosti, että jotkut (itse asiassa yllättävän monet) haluavat roolipeliltä tarkat ja selvät säännöt eri asioista. Pelinjohtajana pidän maailman avoinna kaikille pelaajien ideoille ja olen valmis säveltämään asioita tilanteen mukaan. Sääntösysteemissä tosin oli muutamia heikkouksia: esimerkiksi hahmonluonti ei ollut viimeisen päälle suunniteltu. Runequest taas oli äärettömän monipuolinen ja monimutkainen peli varsinkin aloittelijan näkökulmasta. 1990-luku toi suomipelien tulvan 1990-luvun alussa suomenkielisiä pelejä julkaistiin lisää. Magus jatkoi ilmestymistä aina numeroon 50 asti. Itse pidin erityisesti Elhendin taistelusysteemistä ”vaarallisine osumineen”. Hiukan myöhemmin seurasivat Paranoia, Cthulhun kutsu ja Taru sormusten herrasta. Pahin pettymys oli sen sääntöjen nojaaminen liikaa D&D:iin. Hassua niin, sillä peliä tehdessäni koetin erityisesti välttää liiallista samankaltaisuutta. Mutta kuten aina ennenkin, muutamia omia muutoksia tekemällä siitä tuli varsin suosittu porukkamme keskuudessa. Varsinkin pelaamisen alkuaikoina törmäsin usein käsitykseen, että roolipelissä olisi jonkinlainen pelinjohtaja vastaan pelaajat -asetelma. Ja aloittelijoitahan suurin osa ropeltajista tuolloin oli. Sittemmin Suomen ropelehtimarkkinoilla onkin ollut hiljaista lukuun ottamatta Roolipelaajaa, joka jaksoi yrittää usean vuoden ajan nousematta ilmeisesti koskaan kovin kannattavaksi. Se tempaisi vastustamattomasti mukaansa teknisellä ja silloin futuristisella menollaan. Kannatan kyllä pelinjohtajan rajatonta valtaa, mutta edellytän häneltä riittävää älyä ja halua käyttää valtaansa fiksusti – koko seikkailun ja porukan eduksi. Sekä D&D:iin että Runequestiin julkaistiin mukavasti lisämateriaalia seikkailujen ja kampanjoiden muodossa, mikä helpotti valmista materiaalia kaipaavan pelinjohtajan työtä. Itse osallistuin Sinisen lohharin ja Maguksen tekemiseen. Myöhemmin tein myös omaa Claymore-lehteämme 20 numeron verran. Astrasta ei tullut suurta hittiä. Tämä ei tarkoita, että maailma muuttuisi jatkuvasti tai että kuka tahansa voi ottaa tarinan ohjat. Markkinoille tulivat muun muassa Tie tähtiin 2300, Twilight 2000, Keski-Maa ja Cyberpunk. Lohduttauduin sillä ajatuksella, että kukapa tässä nyt ihan uusia kauhuaiheita keksisi, kun kaikkihan on jo jossain muodossa julkaistu. Näissä oli kyse haltiakeskeisestä seikkailusta fantasiamaailmassa kepeähköjen mutta toimivien sääntöjen avittamana. Seikkailijan maailma Timo Konttisen johtamana tuntui liian etäiseltä minulle. Peli tarjosi toimivan sääntökokoelman ja erittäin mielenkiintoisen, näennäisrealistisen maailman. Itse innostuin Keski-Maan tapahtumien siivittämänä haltioiden elämästä niin paljon, että väkersin haltiaroolipeli Rapierin, joka myytiin loppuun. ANKHista haluaisin pystyä sanomaan enemmänkin hyvää, mutta kaupalliseksi tuotteeksi se oli keskinkertainen. Se oli hauskaa, vaan ei sillä rahoiksi lyöty. Aika pian Sininen lohikäärme kuitenkin kuihtui pois, ja Seikkailijan ura taisi jäädä noin kymmeneen numeroon. Pelaajana arvostan toiminnan ja ajatusten vapautta sen sijaan, että tuntisin kulkevani tarkoin rajatussa putkessa. Se pitää asiat ymmärrettävinä ja antaa tietynlaisen turvan sekä pelaajille että pelinjohtajalle. Menestyksen siivittämänä tein uuden version nimellä Elhendi. 90-luvun alussa tein myös ainoan kauhuroolipelini Astran, joka muistutti osin vähän liikaa ilmeisenä esikuvanaan toiminutta Call of Cthulhua. On lohduttavaa, että on olemassa Sääntökirja, johon voi tarvittaessa tukeutua. Se tuntui oudolta tavalta suhtautua pelaamiseen. Cyberpunk oli maailmaltaan mahtavan uusi ja erilainen. Suomalaiset roolipelilehdet kilpailivat pienistä markkinoista aluksi tehokkaasti. Minusta on kuitenkin palkitsevaa pelata suhteellisen vapaalla tavalla. 69 Tavallaan olin tai olen oikeassa, koska ajattelen edelleen hiukan samalla tavalla. Acirema ladattavissa osoitteesta http://www.roguelantern.com/blog/ images/acirema-archive.zip. D&D:n lisäksi tutuiksi tulivat myös ANKH ja Runequest. Nordicin ”kolme vuosikymmentä suomalaista roolipelaamista” -reportaasi jatkuu seuraavassa Skrollin numerossa!. Mielestäni tärkeintä on hyvä tarina, hienot kokemukset ja jännittävä peli eikä suinkaan se, noudatetaanko sääntöjä pilkuntarkasti tai kuka voittaa kenet. Positiivista oli suomalaisen mytologian mukanaolo, viittasihan lyhentämätön nimikin Kalevalaan. Jotkut pelasivatkin noin, iloiten pelinjohtajana siitä, että olivat onnistuneet murskaamaan hahmot mahdollisimman ovelilla keinoilla. Sen pelaaminen oli kuitenkin aikamoista ankkain taaperrusta, ja sankariksi nouseminen jäi monella ikuiseksi haaveeksi
Ohjenuorana toimii kuitenkin se, että museo kertoo suomalaisista peleistä ja pelaamisesta Suomessa. Olemme todenneet, että etenkin pelattavien laitteiden huoltaminen ja käytön opastus pitkän matkan päästä muodostuu helposti ongelmaksi. Ja sen sijaan, että esimerkiksi lipunmyynti ja ravintola olisi tarvinnut pystyttää tämän hankkeen varoista, ovat ne nyt suoraan käytettävissä. Vuosien mittaan kokoelmamme laitteet ovat olleet esillä monenlaisissa vaihtuvissa näyttelyissä, mutta pysyvä sijoituspaikka niiltä on puuttunut. Siihen voi tutustua aikanaan museossakin. Täällä tehdyt pelit saavat paljon näkyvyyttä, mutta myös ulkomaisia ilmiöitä käsitellään niiltä osin kuin ne ovat olleet meillä merkittäviä. 2 1 5 . Siksi oli ilahduttavaa havaita, että Tampereen kaupunki oli projektissa innokkaasti mukana alusta alkaen. Etenkin pelilaitteet eli kotimikrot ja pelikonsoPelimuseo syntyy hartiavoimin Suomalaisten digitaalisten pelien historia alkoi jo 1970-luvulla. Lehdistön suosikki Viimeisen kuukauden aikana pelimuseo on näkynyt paljon sekä internetissä, painetuissa lehdissä että muussakin mediassa. Myös museolle tarjottu tila on huippuluokkaa. Suomen pelimuseosta on vihdoin tulossa sellainen – ja paljon muutakin siinä ohessa. Sen taustalla oli useita eri tahojen kanssa järjestettyjä näyttelyitä, runsaasti keskusteluja eri ihmisten kanssa ja yleisiä havaintoja siitä, että Suomesta puuttuu tällainen paikka. Kyseessä on muun muassa ensimmäinen kerta, kun julkishallinnon toimija käynnistää joukkorahoitushankkeen. Tuolloin julkistettiin yhteistyössä Tampereen kaupungin museopalveluiden ja Tampereen yliopiston kanssa synnyttämämme Suomen pelimuseo -hanke ja käynnistettiin sen joukkorahoituskampanja. Pelimuseo ei kuitenkaan ole vain Tampereen tai tamperelaisten projekti, vaan hankkeen taustavoimissa on ihmisiä kaikkialta Suomesta. Rautatieasema on kävelymatkan päässä ja pysäköintitilaakin löytyy. Kun avasimme Pelikonepeijoonit.netverkkomuseomme vuonna 1999, mielessämme kajasteli lähinnä kaukainen haavekuva siitä, että jonakin päivänä sivustolla olisi myös fyysinen vastineensa. Itselleni suorastaan hämmentävää on ollut se, miten myönteisesti hankkeeseen on kaikkialla suhtauduttu. On luonnollisesti mahdotonta miellyttää kaikkia sen suhteen, mitä ensimmäiseen näyttelyyn otetaan ja mitä jätetään pois. Vuosia kypsynyt Ajatus pelimuseon perustamisesta ei syntynyt yhdessä yössä. Harva haluaa muutenkaan lähettää vuosikymmenien mittaisen työnsä tulosta satojen kilometrien päähän. Esitetyt negatiivisetkin kommentit ovat pääosin olleet perusteltuja ja tuoneet esiin seikkoja, jotka olisi muutenkin ollut syytä ottaa museon suunnittelussa huomioon. Maailmallakaan pelaamiseen keskittyviä museoita ei ole vielä ruuhkaksi asti. Kuva: Reetta Tervakangas / Tampereen museot.. Nyt on korkea aika saada ne talteen museoon – ja sinä voit auttaa siinä! Teksti: Mikko Heinonen Kuvat: Manu Pärssinen, Tampereen museot Kulttuuri Atari 2600 oli ensimmäinen supersuosittu pelikonsoli. Myös sijainti museokeskus Vapriikissa on erinomainen, tulipa vierailija sitten mistä päin tahansa. 2 70 T ämän vuoden maaliskuun viimeinen päivä oli minulle ja edustamalleni Pelikonepeijoonit-keräilijäryhmälle erään unelman täyttymys. Tampere valikoitui museon paikaksi useammastakin syystä
Skrolli-yhteisö oli myös aktiivisesti mukana keskustelussa ja lähetti irc-kanavan kautta terveisiä ja kysymyksiä studioon. Tähän vaaditaan rahaa, jota hanke kerää myymällä pääsylippuja ennakkoon. Edullisimmillaan tukijaksi pääsee 10 eurolla, ja tarjolla on myös erilaisia yrityspaketteja. Tätä kirjoitettaessa Suomen pelimuseon joukkorahoituskampanja on kerännyt jo puolet minimitavoitteestaan. Mennyttä, nykyistä ja tulevaa Vaikka vanhat digitaaliset pelit saavat luonnollisesti Suomen pelimuseossa paljon tilaa, museosta ei tule pelkkä retroluola. Kuva: Ilona Koivisto / Tampereen museot. Se on hyvää vauhtia matkalla Mesenaatti.me-palvelun rahoitetuimmaksi projektiksi. Illan vieraisiin kuuluivat 20 vuotta täyttävän Housemarque-pelitalon perustajajäsen Ilari Kuittinen, pelimusiikin veteraani Ari Pulkkinen sekä Skypen välityksellä osallistunut säveltäjä Jonne Valtonen, joka tunnetaan myös Future Crew -demoporukan Purple Motionina. Tarkoitus on pitää sormi pelialan pulssilla ja seurata, mitä alalla tapahtuu. Skrollitöllö Teksti: Ninnu Koskenalho Kuva: Antti Kurkinen / OUBS ry T oukokuussa Skrollin lukijat saivat nauttia poikkeuksellisen audiovisuaalisesta skrollipläjäyksestä. Tämän vuoksi työryhmässä on kiinnitetty erityistä huomiota siihen, että myös lautapelejä ja roolipelejä käsitellään kattavasti. Ensi numerossa lisäksi luvassa laajempi reportaasi Otaniemen olohuoneen tekemisestä ja tekniikasta!. 71 lit kun tulivat meille lähes kokonaan muualta, vaikka kotimaista ohjelmistotuotantoa olikin alusta asti. Otaniemi Pop Up Living Room -niminen yhteisöllinen projekti valjasti kolmeksi toukokuun viikoksi teekkareiden OUBSyhdistyksen televisiostudion erilaisten tapahtumien areenaksi. Jos monimediaiset mehevät keskustelut menivät sivu suun, ei hätää: editoitu videotaltiointi on nähtävissä sivuillamme osoitteessa skrolli.fi tai keskustelufoorumilla osoitteessa www.skrolli.fi/forum/. Siksi haluamme rakentaa museoon useita pelipisteitä ja myös pitää ne kunnossa. Matkaa maaliin on kuitenkin vielä paljon, ja myös sinun apuasi kaivataan. Tämä museo Suomesta puuttuu – tehdään se yhdessä! Suomen pelimuseo internetissä: http://suomenpelimuseo.fi Pelataan kuin olisi yhä vuosi 1989. Kauppisen, Tapio Berschewskyn ja Ninnu Koskenalhon voimin erityisesti peleistä. Skrolli oli mukana järjestämässä yleisölle avoimen keskusteluillan, jossa puhuttiin Jukka O. Pelimuseosta toivotaan kohtaamispaikkaa, jossa vanhat ja uudet pelit sekä niiden harrastajat voivat kohdata. Termi ”pelaaminen” on viime vuosina yhdistetty niin vahvasti juuri digitaaliseen pelaamiseen, että historiaa miettiessäänkin on helppo eksyä pyörittelemään ajatuksiaan vain viimeisten 45 vuoden ja erilaisten sähköisten pelien ympärillä. Kokeilimme myös livetwiittausta, ja Twitterin kautta keskusteluun saatiin terveisiä eduskunnasta asti. Painopiste on kuitenkin tietoisesti digitaalisuuteen kallellaan, sillä juuri sillä alalla Suomi on kokoonsa nähden varsinainen suurvalta. Tärkeintä on kuitenkin se, että museosta tulee vuorovaikutteinen. Lasin takana olevia pelejä on hieno ihailla, mutta niiden sielunelämään ei pääse tosissaan paneutumaan kokeilematta itse. Yleisöä oli mukana sekä paikan päällä että virtuaalisesti, sillä tapahtuma striimattiin livenä YouTubeen. Tässä auttaa osaltaan myös yliopiston asiantuntemus
Olet etsimämme henkilö. reaktor.com/careers Maukkaat epäonnistujat 6 430057 375747. Koodaatko paremmin kuin piirrät