2 1 7 .2 Tietokonekulttuurin erikoislehti 2017.2 S K R O L L I . F I Koodaa demo GAME BOYLLE MIKKO HYPPÖNEN viikko jolloin WannaCry iski Verkon suojelija DONNIE WERNER WOLFENSTEIN 3310 NODEMCU STRINGOLOGIA
72 JOKstoriaa Pelikonkarin muistelmapalsta alkaa. 56 Kolumni: Mikko Heinonen Ihana, kamala Amiga. 13 RuuviTag Kotimaista älyä esineverkkoon. 2 2 3 Pääkirjoitus 4 Donnie Werner – hakkerista tietoturvakonsultiksi Entinen mustahattu kertoo, mikä nykykoodareissa on vialla. 25 Keinotodellisuuspäivitys ja SD-512 Uusi Lyhyet-palstamme saa jatkoa. 34 Muistatko, kun monitori säteili. 60 Oi muistatko vielä sen SIMMin. 44 Ilmaisia lautapelejä verkossa – mutta mihin hintaan. 28 NodeMCU – avain esineverkkoon Oma IoT-laite syntyy helpommin kuin luulitkaan. 2 1 7 . Miten selvitetään tuntemattoman muistikamman koko. 65 Koodia Game Boylle kotikonstein Taskupelikonsoli taipuu myös demontekoon. 36 Stringologia Bioinformatiikan tutkimuksen taustatiedot tutuiksi. Jatkoa pukkaa. 69 Peliklassikko BASICilla: Star Trek Vanhasta pelistä voi edelleen oppia ohjelmointia. 51 Sarjakuva Turrikaanien yö tekee kirjallisuustutkimusta. 16 Ystävämme Petri Petri-verkot takaavat muun muassa lentokoneiden ja ydinvoimaloiden toimintaa. 57 Lisänostetta haukan liitoon – CT60e Myös Atarin saa turboahdettua. Joskus kuvaputkien turvallisuudesta kiersi kummallisia käsityksiä. 12 Kolumni: Mikko Hyppönen Viikko tietoturvasekatyömiehen elämästä. 48 Sims Hittipelin pinnan alta paljastuu eloisa ja erikoinen yhteisö. 14 Nokia 3310 Tuhoutumaton ihmease vai muistojen kultaama tusinaluuri. 20 Kuvat kuntoon Valokuvien jälkikäsittely on hyvä taito myös harrastelijan työkalupakissa. 74 Skrolli Party 2017 Pizzaa ja demoja – niistä on hyvät juhlat tehty.. 64 TAUON paikka! Poista itsesi koneelta – koneellisesti. 19 Kolumni: Janne Sirén Standardisodan taide. 52 Wolfensteinin perintö Kertomus pienestä ohjelmistotalosta, joka löysi kultaa. 40 Surkeat suomipelit JOKin pelijutussa suomipelien synnintunnustus. Lautapelien siirtäminen tietokoneelle luo uusia mahdollisuuksia ja ongelmia. 26 Vattukoneella lentoja seuraamaan Laita Raspberry Pi tutkimaan ilmatilaa. 62 Ei näin! Acorn saavutti paljon mutta myös hukkasi mahdollisuuksia
Ja miten edes voi käydä sellainen tuuri, että pari kuukautta aiemmin pyytää Mikko Hyppöstä toimittamaan kolumnin juuri sillä viikolla, jolla WannaCry sattumalta tapahtuu. Tämän numeron avustajat Mette Erikkilä, Mikael Heikkanen, Mikko Hyppönen, Ville Jouppi, Emma Kantanen, Toni Kortelahti, Markus Kuula, Pinja Kuusela, Jarkko Lehti, Jarno Lehtinen, Miikka Lehtonen, Sakari Leppä, Vesa Linja-aho, Mitol Meerna, Milsa, Jarkko Nääs, Susanna Rantanen, Mikko Rasa, Kimmo Rinta-Pollari, Mikko Torvinen, Ismo Utriainen, Joni Valtanen, Samuli Vuorinen, Antti Ylikoski, Mika Yrjölä Julkaisija Skrolli ry Painopaikka Hämeen Kirjapaino, Tampere, ISSN 2323-8992 (painettu) ISSN 2323-900X (verkkojulkaisu) Onnea ja kiitollisuutta S krollin ensimmäinen kevät uudella luotsauksella on edennyt leppoisasti. Partyjen ideoitsija ja isäntä sekä pitkäaikainen skrolliitti Mikko Rasa antoi juhlien käyttöön oman kotinsa. Paitsi että syvensimme suhdettamme organisaatioon, jonka tavoitteet ovat hyvin linjassa omiemme kanssa, satuimme jälkibileissä samaan pöytään Donnie Wernerin kanssa ja saimme sovittua huikean haastattelutilaisuuden vanhan kaartin hakkerin kanssa. Myös Skrollin läsnäolo alkuvuodesta hakkeritapahtuma Disobeyssa poiki paljon hyvää. Kuvia ja tunnelmia bileistä löydät lehden viimeiseltä aukeamalta. Tapahtuma järjestettiin avustajien aloitteesta ja heitä varten kiitoksena huikeasta työstä, jota avustajat tekevät Skrollin eteen. Kekkauksestamme tykättiin somessa Aamulehden päätoimittajaa myöten. Disobeyn yhteydessä keksimme myös kömpelön "esineiden internet" -termin ja uuden kivan sanan vastenmielisen IoTlyhennyksen tilalle: esineverkko. Kauppinen, Ronja Koistinen, Ninnu Koskenalho, Sakari Lönn, Suvi Sivulainen. Etukannen kuva: Ville-Matias Heikkilä HÄMEEN KIRJAPAINO OY 4041 0209 Painotuote. 3 Pääkirjoitus Tapio Berschewsky päätoimittaja Skrolli Tietokonekulttuurin erikoislehti Yhteydenotot toimitus@skrolli.fi Ircnet: #skrolli skrolli.fi Vastaava päätoimittaja Mikko Heinonen Päätoimittaja Tapio Berschewsky Toimituspäällikkö Valhe Kouneli Taiteellinen johtaja, taitto Nasu Viljanmaa Digipäälliköt Toni Kuokkanen Janne Sirén Taitto Manu Pärssinen Kuvatoimittaja Laura Pesola Mediamyynti Jari Jaanto Talous Anssi Kolehmainen Muu toimitus Jarno Niklas Alanko, Ville-Matias Heikkilä, Jukka O. Kevään mittaan järjestettiin siksi myös ensimmäinen Skrolli Party – uusi demotapahtuma, joka on suunnattu erityisesti lehden avustajille. Se rullaa kieleltä mukavasti. Siitä olemme ensisijaisesti kiitollisia avustajillemme, jotka puurtavat väsymättömästi hyvien artikkelien eteen. Juhlissa järjestetty digitaalisen taiteen kompo, musiikkiesitykset sekä demoshow pidettiin Mikon alakerran elokuvateatterissa. Tietää olevansa onnekas, kun saa tehdä hommia näin mukavan porukan kanssa, joka haluaa yhteisestä palosta pitää tietokonekulttuurin lippua korkealla – ja jaksaa vielä juhliakin yhdessä. Toimitus huhkii lehden kasaan, mutta ilman avustajia sitä ei olisi
2 4 Donnie Werner hakkerista tieto turvakonsultiksi ”Jo pelkästään sillä, mitä minä ja ystäväni tiedämme, voisi laittaa maailman polvilleen." Teksti: Valhe Kouneli (lainaukset kääntänyt englannista suomeksi Mikko Heinonen) Kuvat: Mette Erikkilä, Valhe Kouneli, Nasu Viljanmaa Kulttuuri. 2 1 7
Hän viittaa käteensä, joka on mustan nahkatakin hihan peitossa ja johon ei tulisi muuten kiinnittäneeksi huomiota. Oli keksittävä jotain muuta. Isälläni oli huoltoyritys, ja ajattelin ryhtyä itsekin sille alalle. – Muts nimesi BackTrackin, mutta kävimme siitä pitkän keskustelun. – Menetin toisen käteni hallinnan, enkä pystynyt enää tekemään fyysisiä töitä, kuten kiinteistöhuoltoa. Meillä oli usein ihan onnistuneita kokemuksia. Nimi tulee sanoista Whitehat Knoppix. – Kasvoin käytännössä lentokentällä ja tein sen alan töitä. Useimpien muiden sanomana se kuulostaisi yli-itsevarmalta, mutta me haastattelijat tunnemme jo hieman miehen taustaa. Hän on myös päätynyt Defconissa Hacker Jeopardyn triviakysymykseen ”Kuka antoi nimen Whoppixille?”. Sen perusteella emme koe tarpeelliseksi kyseenalaistaa hänen kertomaansa. Mutta aikanaan hän oli mustahattuhakkeri, joka tunkeutui järjestelmiin eri puolilla maailmaa. Kuka on Donnie Werner. Verkossa Donnie tunnetaan paremmin aliaksellaan morning_wood. Kun BackTrackia edeltävät Remote Auditorja Slax-projektit yhdistyivät, Donnie päätyi mukaan tekijöiden porukkaan. Sinä aikana ne asiat, jotka hän myöhemmin ymmärsi hakkeroinniksi ja tietoturvaksi, alkoivat tulla tutuiksi. Useimmiten tankkasin lentokoneita. – Vähän siihen tyyliin, että ”mitäs tänään tehtäisiin”. Tupakanharmaa, reilu viisikymppinen mies mustassa nahkatakissaan puhuu ”fire sale” -hyökkäyksestä. Olin projektissa mukana melkein Kalin julkaisuun asti. Whoppixin lisäksi Donnie kertoo keksineensä myös Whaxin eli Whitehat Slaxin nimen. Donnie tekee nykyisin penetraatiotestausta suurelle viestintäyritykselle ja suojelee kaikille tärkeitä globaaleja järjestelmiä. – Whoppix oli BackTrack Linuxin edeltäjä. – Järjestelmissä on muutamia kriittisiä kohtia, joihin iskemällä ne kaatuvat. Viimeksi Yhdysvalloissa käydessään Donnie kertoo pohtineensa hakkerikaverinsa kanssa, kuinka pitkään heiltä menisi toteuttaa sellainen. Mutta en ole pahantahtoinen. – Olin aina se pikkupoika, joka hajottaa kaikki laitteet osiin nähdäkseen, miten ne toimivat. Donnie palaa kertomuksessaan lapsuuteensa Kaliforniaan. Mutsillä Donnie viittaa Mati Aharoniin – hakkeriin, joka perusti Offensive-Securityn, johtavan hyökkäävää turvallisuuskoulutusta tarjoavan yrityksen. Hän kertoo lyöttäytyneensä viikonloppuisin yhteen kaverinsa kanssa ja valinneensa tietyn maan ja sen hallituksen sivuston. Nuoruudessa hänen vapaa-aikansa kului ehkä hieman epätyypillisellä tavalla. Hän kiittää menestystään hakkerina siitä, että sai jo nuorena muiden hakkereiden huomion ja tapasi oikeita ihmisiä. Jouduin kuitenkin dramaattiseen moottoripyöräonnettomuuteen vuonna 1987, ja se muutti kaikki suunnitelmat. "Olin aina se pikkupoika, joka hajottaa kaikki laitteet osiin nähdäkseen, miten ne toimivat.". Donnie, joka siis haluaa tulla kutsutuksi etunimellään, on vanhan koulukunnan hakkeri. Mies nimen takana Tunnustus on ansaittua, sillä Donnie on vaikuttanut laajalti hakkerikulttuuriin. Vanhempana korjasin aina tietokoneita ja muuta tekniikkaa. Ura tietokoneiden parissa tuntui hyvältä ajatukselta. Emme kuitenkaan rikkoneet mitään. – Arvioimme, että kaksi viikkoa tiedustelua ja sitten pari päivää ja se olisi siinä. Onnettomuus Tarjoamme Donnielle juotavaa lehden piikkiin ja tiedustelemme lisää hänen taustoistaan. Se on mediatermi, jolla tarkoitetaan maailman infrastruktuurin kaatamista – sähkönjakelun, viestinnän ja niin edelleen. Donnie kuvailee, kuinka työ tietokonekorjaamossa johti huoltopäälliköksi, ja muutaman vuoden ajan hänen päivänsä kuluivat korjausten ja diagnostiikan tekemisen parissa. Emme olleet poliittisesti motivoituneita. Hakkeroinnin takana oli ennemmin tarve koetella omia taitoja. Saisimme aikaan paljon vahinkoa. 5 I stumme Amsterdam-ravintolassa Helsingin Ruoholahdessa Donnie Wernerin kanssa
2 1 7 . Pääsin näkemään monia erilaisia käyttöjärjestelmiä.. Aina ei tarvinnut edes kirjautua. Saadessaan yhteyden tietokoneeseen se tallentaa viestit, kättelyn sekä kirjautumiskehotteen. Luokassa oli Donnien mukaan päätteitä, joihin piti kirjautua palvelimen nimellä ja käyttäjätunnuksella. Hän kuvailee opintojen kuitenkin suunnanneen ajattelua ja parantaneen käsitystä omasta itsestä. – Menin töihin ja jätin sen pyörimään koko päiväksi. – Pääsin sisään modeemipuuhiin ja aloin tehdä war dialingia. 2 6 Hän myös kertoo opiskelleensa alun perin mekaanista suunnittelua, mutta jättäneensä opinnot parin vuoden jälkeen kesken. Varhaiset kokeilut Vaikka Donnie ei heti tajunnutkaan kykyjään hakkerina, hän oli tehnyt sen suuntaisia asioita jo koulussa. Hän huomasi muitakin nimiä, jotka vaikuttivat palvelimien nimiltä, eikä voinut vastustaa kiusausta. – Hakkeroin jo kun käytin tietokonetta ihan ensimmäistä kertaa. Lopulta hän pääsi sisään koulun järjestelmään. En vain tajunnut sitä rinnakkaisprosessointia, hän kertoo kuljettaen sormeaan kuvitteellista ohjelmakoodia pitkin selityksensä mukana: – Aivoni olivat ihan jumissa. Pian järjestelmiin tunkeutumisesta tuli päivittäinen harrastus. Illalla kotona tutkin tuloksia ja kokeilin yhdistää ja kirjautua löytämiini järjestelmiin. Eivätkä hakkerointikokeilut tietenkään jääneet siihen. Siinä käytetään järjestelmää, joka soittaa automaattisesti eri puhelinnumeroihin. – Olin tietokoneen alkeiskurssilla oppimassa vuokaavioista, enkä ihan ymmärtänyt goto-silmukkaa
Hän löysi myös käyttöjärjestelmiä koskevia kirjoja. Luin sen huolella ja aloin kokeilla sen tekniikoita. Hän myös auttoi korjaamaan löytämiään virheitä ja sai nimensä virallisiin päivityksiin. Tein sitä ihan itsekseni. Järjestelmästä löytyi vakavia puutteita, joiden avulla mallien IP-osoitteet sai kerättyä suoraan verkkosivulta. – Se oli minusta tosi mielenkiintoinen. – Sattumalta olin juuri tutkimassa uutta järjestelmää ja vaikka HP-UX:n tai SCO:n kirjautumiskehotetta, ja sitten viikkoa myöhemmin löysin roskiksesta pinon SCO-kirjoja! Kirja nimeltä Hacking Exposed muutti ehkä hänen elämänsä. – Kun löysin yhä enemmän ongelmia, päätin että haluan siitä tunnustusta. Kahden viikon raadannasta sai kolmesta kuuteen tuhatta dollaria, mutta seuraavasta keikasta ei ollut koskaan tietoa. – Noin vuoden 2000 tienoilla aloin kiinnostua enemmän tietoturvasta. – Opin paljon tietoturvatyössä käytettäviä perustekniikoita, kuten reverse netcatin. – Tapasin Sub7-etähallintatroijalaisen takana olleen hakkeriryhmän ja päädyin aika syvälle heidän riveihinsä. Roskiksista löytyi laitteita, ohjelmistoja sekä käyttäjätunnuksia ja salasanoja – niitä tosin useimmiten suoraan paperille kirjoitettuina ja tulostettuina. Se pakotti heidät toimimaan, hän toteaa tyynesti. Suomeen saapuminen – Tein tietoturvakonsulttina keikkatöitä. Tutkin asioita internetissä selaimella ihmetellen, miten eri asiat toimivat, ja aloin opetella HTML:ää ja TCP/IP:tä. Kun laskut kasaantuivat ja seuraavasta työkeikasta oli jatkuva epävarmuus, halu luopua yrittäjän elämästä voimistui. 7 Hänen silmänsä alkavat kiilua innostuneesti varhaisten hakkerointimuistojen kertaamisesta. Monet tuolloin mukana olleista ovat nykyisin hyviä ystäviäni. Ensiaskeleet Ura hakkerina ei ollut vielä sinetöity. Vaikka Donnie ei sitä silloin tajunnutkaan, on mahdollista palata hetkeen, jossa kaikki alkoi valua siihen suuntaan. Siinä kerrottiin toiseen tietokoneeseen yhdistämisen perusteet, kuten nmapin käyttäminen sen selvittämiseen, mitä käyttöjärjestelmää vastapuoli ajaa. – Pidin tiedot itselläni pitkään, mutta päätin sitten, että mallien yksityisyys on tärkeämpää. Muiden hakkereiden tapaamisen myötä Donnie tutustui myös ”full disclosure” -periaatteeseen ja Full disclosure -postituslistaan, jonka tarkoituksena on pakottaa ohjelmistotoimittaja korjaamaan ongelmat ja tehdä ihmiset tietoisiksi niistä. Varojen puutteessa hän alkoi dyykata tietokonekauppojen roskiksia ja kertoo koonneensa ensimmäiset tietokoneensa dyykatuista osista. Hänen tarkoituksensa oli ennen pitkää saada tietoturva-aukko korjattua. Uteliaisuus sai hakkerin kaivautumaan yhä syvemmälle – myös hyvin kirjaimellisesti. – Julkaisin sitten tiedot. "...en ihan ymmärtänyt goto-silmukkaa.". Jotkut ovat nykyään [tietoturva-]alan huippuja – ja heidän taustansa on se, että he hakkeroivat muita, käyttivät takaportteja ja kaappasivat tietokoneita, hän kertoo huvittuneena. Tavallaan ajattelin, että rakennan itselleni siitä uraa, ja niin kävikin. Donnie yritti ottaa yhtiöön suoraan yhteyttä ja tarjota konsultointia maksua vastaan. Windows-järjestelmissä oli siihen aikaan pahoja haavoittuvuuksia, joten IP-osoitteen tietämällä olisi ollut todella helppo murtautua heidän tietokoneisiinsa. – Aiemmin vain julkaisin löydökseni ottamatta yhteyttä ohjelmiston kehittäjiin tai kehenkään. Muutama vuosi ennen Suomeen muuttamista Donnie oli opettanut Tallinnassa käytännön hakkerointia, pitänyt seminaareja ja luentosarjoja ja tutustunut sitä kautta alueeseen. Myös Donnie halusi tehdä jotain löytämilleen tietoturvaongelmille. Intohimoisen suhtautumisen uusien asioiden tutkiskeluun – vaikka ne olisivat kieltomerkin takana – voi aistia koko hänen olemuksestaan. Maine Donniesta oli tullut hakkeri, ja pian hän löysi muita kaltaisiaan. Olin aika hyvä siinä, mitä tein. Maineen kasvamisen myötä hän saattoi ryhtyä työskentelemään itsenäisenä tietoturvakonsulttina lopulta ansaiten elantonsa erityistaidoillaan. Donnie niitti mainetta ja kerrytti CV:tään muun muassa löytämällä puutteita sellaisten suuryritysten kuin HP:n, Microsoftin ja Applen tuotteista. Selaimella tehtyjen kokeilujen myötä hänen onnistui selvittää, miten erään aikuisviihdettä tarjoavan webcam-palvelun ohjelmisto toimii. Siinä kerrottiin HTML:stä ja internetin toiminnasta, mutta osa sen sisällöstä oli vähän kuin sisäpiiritietoa. Siihen ei vaadittu juuri mitään osaamista. Yhtiö ei kuitenkaan suostunut. Jotain saattoi olla tulossa, mutta sattuikin jotain muuta ja pian huomasin, etten ollutkaan tehnyt mitään kolmeen kuukauteen, Donnie kertoo. Siihen tutustuessaan hän oli jo saanut laajakaistayhteyden
Käyttämäni tekniikka oli niin tyhmä, ettei sitä olisi edes pitänyt kokeilla. Muuttamalla ne voit "Kiitos kun kysyt tuotteestamme, tuote on helppo asentaa ja suojattu pääkäyttäjän salasanalla.". En etsi jotain tiettyä tuotetta. Hän selittää, että koostamalla URLin tietyllä tavalla, RFC-sääntöjen vastaisesti, tietystä laitteesta saa ilman kirjautumista ulos käyttäjätunnuksia, salasanoja ynnä muuta. – Olin aiemmin nähnyt samanlaista tekniikkaa käytettävän vähän samanlaisessa tuotteessa, joten kokeilin sen muunnelmaa, ja se toimi. Kävin siellä haastattelussa, mutta päädyin lopulta erääseen kansainväliseen telecomyhtiöön. Niiden avulla tuote on mahdollista ottaa täysin hallintaan ja julkistaa asiakkaan tietoja. – Vastasin heille: ”Ette tainneet nyt ymmärtää. Hän ei usko kenenkään muun vielä löytäneen samaa haavoittuvuutta. Tällä hetkellä Donnie on toiminut nykyisessä työpaikassaan tietoturvakonsulttina noin kuusi vuotta. Alkuasetusten tekemisen jälkeen kannattaa mennä sovellukseen ja muuttaa käyttäjätunnus ja salasana. Donnien ei kerro suoraan, mikä laite on kyseessä, mutta kuvailee sitä pääosin kotioloissa käytettäväksi, henkilökohtaiseksi intiimituotteeksi. – Yritin ottaa yhteyttä heihin ja selitin, mitä olin löytänyt. Tuote on helposti varmistettu ja helppo asentaa.” – Vastasin: ”Kiitos, mutta et nyt ymmärrä. – Hankin työpaikan vasta muuton jälkeen. Katso lisätietoa tuotekuvauksesta.” He siis hitto vie lähettivät minulle Amazon-linkin! hän tuhahtaa ja jatkaa ääneen sähköpostikirjeenvaihdon kertaamista tulostamaltaan paperilta. Yritystason idiotismia Vaikka Donnie työskentelee nykyisin suuryrityksen tietoturvakonsulttina, vapaa-aikanaan hän edelleen tutkii, opettelee uutta ja rikkoo asioita selvittääkseen, miten ne toimivat. Näytä tämä sähköpostikeskustelu tekniselle johtajalle.” – Ja vastaus oli: ”Hei. Töitä ei kuitenkaan ollut valmiiksi tiedossa. 2 8 Saadessaan mahdollisuuden muuttaa Suomeen hän ei epäillyt kauaa. – Löysin hiljattain vian IoT-laitteesta. – Avoimia työpaikkoja ei ollut, joten otin yrityksiin suoraan yhteyttä. Koska tulin maahanmuuttajana Suomeen, koin velvollisuudekseni hankkia töitä ja maksaa veroja. Laitteita on hänen mukaansa noin puoli miljoonaa, ja ne on kaikki yhdistetty internetiin. Kuvailin sen heille, ja vastaus oli: ”Hei, tässä on linkki tuotteeseen. Suosittelemme käyttämään salasanasuojattua Wi-Fiyhteyttä. Löytämäni tietynlainen RFC:n vastainen URL-merkkijono mahdollistaa pääsyn kriittisiin järjestelmätiedostoihin. Julkinen paljastus vaarantaa käyttäjien yksityisyyden ja voi johtaa siihen, että tuotetta ei enää käytetä. Hain vain netistä sanoilla ”Helsinki computer security company”. Olen löytänyt useita tietoturvaongelmia, jotka koskevat kaikkia tuotteitanne. He kysyivät, mikä tuote on kyseessä, koska niitä on muutamia erilaisia. Yksi jälleenmyyjistä on yhdysvaltalainen. Mitä tietoturvaan ja yksityisyyteen tulee, on todennäköisempää, että tuote hakkeroidaan, jos Wi-Fi on käytössä. Tuotteenne on tarkoitettu intiimisti ja yksityisesti käytettäväksi ja ihmiset toivovat voivansa luottaa siihen.” – He puolestaan vastasivat: ”Kiitos kun kysyt tuotteestamme, tuote on helppo asentaa ja suojattu pääkäyttäjän salasanalla, joten tietoturvasta ei tarvitse huolehtia. Alkuasetuksissa annetaan yleinen käyttäjätunnus ja salasana, jotka voi muuttaa myöhemmin. Useimmat yhtiöt tarjoavat löydöksistä niin sanotun bugipalkkion, mikä on parempi vaihtoehto kuin se mediahuomio, joka seuraa tietojen julkistamisesta. Jälleenmyyjän edustajien kanssa käyty keskustelu oli niin absurdi, että hän halusi jakaa sen työtovereilleen, ja tuloste sattuu olemaan hänellä yhä mukana. Tuoteosastolla ja tietoturvayksikössä työskentelemisen jälkeen hän siirtyi konsernin liiketoimintayksikköön, jossa hän tekee penetraatiotestejä, kestävyysarvioita ja konsultaatiota. Lähetin CV:n muutamaan paikkaan, ja Nixu otti ensimmäisenä yhteyttä. 2 1 7 . Olen kokeillut sitä moneen muuhun laitteeseen, eikä se toimi niissä, joten todennäköisesti kyse on URL-käsittelyn toteutuksesta juuri tässä tuotteessa
Isossa-Britanniassa on tuotteen toinen jälleenmyyjä, johon Donnie saattaa vielä yrittää ottaa yhteyttä. Sain sen selville vain, koska hakkeroinkin heidät, hän paljastaa hieman ylpeyttä äänessään. Kehittäjien taitoja tietoturva-asioissa pitäisi testata nykyistä paremmin. Kehitysversioiden jälkeen Blasterista tehtiin mato, joka levisi IP-osoitealueiden perusteella. Se ei liity alkuasetuksiin, ja se voidaan ohittaa internetistä ilman mitään kirjautumista.” Donnien äänestä kuuluu läpi epäusko ja turhautuminen, vaikka kirjeenvaihdosta on jo jonkin aikaa. Donnie kertoo saavansa samanlaisia vastauksia paljon, mutta toisaalta moni yritys myös vastaa asiallisesti bugilöydöksiin. Todennäköisesti tapaus jää kuitenkin avoimeksi. Tietoturvaa on turha miettiä vasta jälkikäteen. – Se oli: ”Pahoittelen, mutta emme oikein ymmärrä, mitä ajat takaa. Hyökkäykseen tuskin oli mitään erityistä syytä, hän sanoo. – Tietoturva-asioissa koulutus on ensisijaisen tärkeää. Tietoisuus Sen sijaan, että tietoturvaongelmista syytettäisiin yksittäisiä käyttäjiä, Donnie haluaisi lähestyä tietoturvaa ohjelmistokehityksen puolelta. Myyjä ei selvästikään tunnusta, että heillä on tietoturvaongelma, eikä se todellakaan aio maksaa mitään bugipalkkiota. Kun kuulin siitä uutisista, ensimmäinen ajatukseni oli: hah, blastattu! Donnie nauraa. Henkilökohtaisen kokemuksen jakaminen saa hänen silmänsä taas kiilumaan innostuksesta. Donnie kertoo joutuneensa madon kanssa tekemisiin jo varhain. Hakkeriyhteisön ulkopuolella sitä ei myönnetä, mutta me tiedämme, että MS Blaster katkaisi sähköt. Se antaa hänelle omanlaista perspektiiviä tietoturva-asioiden nykytilaan. Lisäksi tuotettamme ei voi käyttää ilman laitetunnusta, joka on yksilöllinen.” Donnien mukaan tunkeutuminen järjestelmätietoihin tapahtui jo pari kuukautta aiemmin, vaikka hän pääsikin myös laitetunnuksiin käsiksi pari päivää sitten. Donnie ei löydä syytä tehdä niin. Olemme selittäneet kaiken tietoturvajärjestelyihin liittyen. Valitettavasti tämä yhtiö ei ole ainoa yhtiö, jonka vastaus tietoturvaongelmaa koskevaan yhteydenottoon on ollut ala-arvoinen. Saatuaan IP-osoitealueen yhdeltä koneelta se skannasi sen, laajensi aluetta ja skannasi uudestaan. Laitteessa on hyödynnettävissä oleva tietoturvaongelma. – Ainoa motivaatio voisi olla rahallinen korvaus. Tietojen julkaisu johtaisi kuitenkin siihen, että kymmenet tuhannet muut hyökkäisivät laitteen kimppuun. – Vuonna 2003 New Yorkissa ja koko itärannikolla oli iso sähkökatkos. Voit myös muuttaa tuotteen aliaksen ja nimen, jolloin muut eivät tiedä, että kyseessä on tämä tuote.” – Viimeisin vastaukseni oli: ”Valitettavasti et ymmärrä etkä välitä. Lempisalaliitto Kun Donnielta kysyy, onko hänellä jotain suosikkitarinaa tietoturvakatastrofiin liittyen, vastausta ei tarvitse odottaa: MS Blaster. 9 parantaa tietoturvaa. Mato ei valikoinut kohteitaan mitenkään. – Mikko Hyppönen esintyy samassa dokumentissa kanssani ja sanoo suoraan, että uskoo niin juuri käyneen. Sen pitäisi kuulua kaikkeen tekemiseen, hän toteaa painokkaasti. Vasta pari viikkoa myöhemmin mato sai virallisen nimi ja sen olemassaolo tunnustettiin. Vaikka Donnie on alansa huippu ja osaa kyllä rikkoa muiden koodin, hän ei ole itse koskaan tehnyt ohjelmistokehitystä. Hän paheksuu kirjavasanaisesti tuotteen huonoa toteutusta. – Minun oli vaikea päästä alalle, ja samalla näin kuinka ihmisille maksetaan hirveitä summia – ja sitten joku "Tietoturvaa on turha miettiä vasta jälkikäteen.". – Haavoittuvuuden löytäjät tai henkilöt, jotka saivat sen käsiinsä varhaisessa vaiheessa, käyttivät sitä ja tekivät sitten palvelunestohyökkäyksen minua kohtaan kaappaamillaan koneilla. Hän kertoo vielä saaneensa yhden viestin. Kehittäjien tietoisuutta tietoturvapuutteista pitäisi lisätä, mutta myös niiden ihmisten, jotka ovat vastuussa kehittäjien rekrytoinnista. Siitä syytettiin kaatuneita puita ja junan raiteita tai jotain sellaista. Haluaisin bugipalkkion
En pidä virtuaalikoneista. 2 1 7 . Donnie alkoi itse käyttää Linuxia jo vuonna 1993, ennen ensimmäistä virallista Red Hat -jakelua. Kun pyydät tietoturvatestien tuloksia, saat käytännössä tulokset käyttöjärjestelmän testauksesta. – Ostin tänään käytetyn Windowstabletin neljällä kympillä. Joten ota se huomioon. Minulle se ei riitä. Niin ei saisi päästä käymään. Hän kuvailee työskentelytapaansa hyppynä tuntemattomaan. Näin tarjouskirjakaupassa Linux-kirjan, joka oli ainakin viisi senttiä paksu. Lannistuminen Keskustelemme tietenkin myös Linuxista, johon monella hakkerilla on erityinen suhde. Pidän mieluummin kymmentä läppäriä kuin yhtä, jossa on yhdeksän virtuaalikonetta, Donnie hymähtää. Haluan käyttää muutamaa ohjelmaa, jotka toimivat vain Windowsissa. Jos käytetään perusasetuksia, useimmat työkalut testaavat käytännössä käyttöjärjestelmää. Pitäisi asennoitua niin, että ensin pitää tutkia vapaasti. Ihmisen, joka tekee surkeaa koodia, hän paasaa ärsyyntyneenä. Donnien mukaan vapaa tutkiminen on hänelle luontaista, mutta on myös ihmisiä, joille se on vaikeaa. Mutta samalla hei eivät testaa esimerkiksi web-sovelluksen osia tai niiden syötteen käsittelyä. Ei vain kehitykseen mutta myös siihen kehitykseen tai ympäristöön liittyviin tietoturvaongelmiin. Ihan vain, koska siinä on Windows. Kun paketit lähettää virtuaalikoneen sisältä, niiden pitää kulkea virtuaalisen ethernet-sovittimen läpi. Donnie alkoi käydä Linuxkäyttäjäryhmien tapaamisissa, mutta kertoo, että niistä jäi paha maku suuhun. – Käytin Slackwarea. – Toinen juttu on, että kehittäjät tekevät tuotteen, kuten verkkopalvelun tai sovelluksen, ja sitä ajetaan tietyllä käyttöjärjestelmällä. – He testaavat tietoturvaongelmia, vanhentuneita päivityksiä ja vääriä käyttöoikeuksia. Käyttöjärjestelmästä riippumatta hän käyttää mieluummin oikeita koneita virtuaalisten sijaan. Joku teki huonon päätöksen luottaessaan tähän tyyppiin. – Kaikki keskittyivät vain siihen, mis. Hän selittää, että jos esimerkiksi testataan sitä, mitä paketeille tapahtuu verkossa, niin virtuaalikoneen käyttämiseen liittyy ongelmia. Joudut siis luottamaan täysin virtualisoinnin ajuritoteutukseen. 2 10 minun kaltaiseni tulee ja pistää kaiken paskaksi. Hänen mukaansa tietoturva pitäisi oppia kielen tai kehitysympäristön kanssa. – Jos valitsee tietyn ympäristön, siihen pitäisi perehtyä hyvin! Eikä vain siihen, vaan kaikkeen muuhunkin. Ja jos minä voin käyttää sitä niin, joku muukin voi. Johto on palkannut ihmisen, joka on antanut itsestään väärän kuvan. Siinä oli komentohakemisto ja kaikkea sellaista ja mietin heti että se vaikutti siistiltä! Sitten kaikkialla alkoi näkyä Linuxia ja internetiä. Donnien mielestä kehittäjän on turhaa selittää puutteita sillä, että tietoturva-asioita ei koskaan opetettu koulussa, tai että tuotteesta ei ollut edes tarkoitus koodata turvallista. – Jos teet matalan tason fuzz-testausta protokollalle, on vaikea tulkita oikein testien tuloksia, jos virtuaalinen pino ei ole täysin avoin ja standardien mukainen kuten oikea, fyysinen verkkokortti olisi. He eivät osaa räätälöidä testejä tai työkaluja omalle tuotteelleen. Sama tapahtuu uudelleen, kun paketit palaavat. Siitä sinulle maksetaan! Sitä varten olet opiskellut alaa! Varmuus Myös kehittäjien tekemä testaus on aihe, joka saa Donnien tunteikkaaksi. Okei, selvä, mutta niin minä sitä käytin. – Aika usein, kun teen jotain, mistä seuraa jotain odottamatonta, kehittäjä sanoo, että ei sitä ohjelmaa noin käytetä
Ilmapiiristä tuli tosi huono, etenkin siellä, missä itse vaikutin. Hakkerointia ei motivoi Donnien kohdalla jokin aate, vaikka monelle hänen kaltaiselleen harmaahatulle, laittoman ja laillisen rajamailla liikkuvalle hakkerille, hakkerointi on aktivismia. Mutta minullakin oli rajani. Sitä ei olisi edes pitänyt kokeilla, ja yllättäen se toimikin. Donnie kuvaa sitä leikkimiseksi. Donnie laskee tyhjän olutlasin pöydälle, ja valmistaudumme lähtemään. – Työnantajani on tällä hetkellä maailman suurin kriittisen viestintäinfrastruktuurin toimittaja. Voin sanoa, että olin aiemmin mustahattu, koska tein mitä halusin. Jos et ole varma, tee asialle jotain. En ollut pahantahtoinen, ja vaikka dumppasin tietokantoja, en tehnyt tiedoilla mitään. Kun testaan jotain aktiivisesti, teen sen yleensä Linux-ympäristössä. Jotkin asiat yhdistävät heitä kaikkia. Haastattelustamme on jäänyt pyörimään mieleen paljon erilaisia ajatuksia, ja digitaalinen tallenne keskusteluistamme sujahtaa kännykän mukana taskuun odottamaan ruotimista. He vain käyttävät käsiään. Ylpeys Aurinko alkaa laskea ja Ruoholahden katuvalot säristä päälle yksi toisensa jälkeen. Jos antaisit, asiat ovat todennäköisesti hyvin. Säätämiseen käytän Linuxia. – En ole sellainen tyyppi, joka lähtee mukaan villityksiin, hän toteaa käyttäen englanninkielistä fad-sanaa. Hän penää kehittäjien vastuuta omasta työsuorituksestaan. – En koskaan ajatellut olevani mustahattu, koska en tehnyt mitään rahallisen hyödyn vuoksi. Voit myös hyödyttää koko tiimiäsi sen kautta. Miten kävelen ovelle kahden ruokakassin ja avaimien kanssa samalla, kun pidän kannettavaa kainalossa. Kun kysymme, onko hänen ajattelutapansa taustalla tietynlainen hakkerimentaliteetti, hän vastaa epäsuorasti: – Vain toinen käsistäni toimii, joten joudun koko ajan miettimään, miten teen jotakin. Hän myös kokee, että esimerkiksi kyberrikollisten harjoittama toiminta on enemmän työtä kuin se, mitä hän tekee. Hän kertoo käyttävänsä nykyisin sekä Linuxia että Windowsia mutta pääkäyttöjärjestelmänään Windowsia. Muiden ei tarvitse miettiä samalla tavalla. Heitä ohjaa raha, ei uteliaisuus. Joudun itse aina miettimään, miten käytän kättäni. Työnantajasi arvostaa sitä ja maksaa sinulle kurssin käymisestä. – Kun pitää saada asioita tehtyä, käytän Windowsia. Mieti, antaisitko äitisi ja ihmisten, joista välität, käyttää tekemääsi tuotetta. Se on iso investointi, joten aivan varmasti työnantaja myös maksaa SANS-kurssin tai muun vastaavan laajemman kurssin, jos siitä on työn kannalta etua. Hän ei usko rikollisten hallitsevan kovin monimutkaisia tekniikoita, vaan toimivan lähinnä heille opetettujen keinojen puitteissa. Kyse ei ole niinkään uskosta yhtiöön vaan toimialaan, joka tuottaa kriittistä infrastruktuuria, hän toteaa painokkaasti. Meistä on kiva tietää, että voimme rikkoa jotain, minkä tekemisestä sait paljon rahaa. Uteliaisuus, leikkiminen ja innostus tietotekniikkaan tuntuvat olevan kantavia teemoja hänen tarinoissaan. – Tätä minä teen. – Saattaa olla, että pärjäät, koska kehittäjiä tarvitaan ja osaat monia asioita, mutta työnantajasi on jo käyttänyt paljon rahaa integroidessaan sinut yritykseensä. Maailman ja valtioiden turvallisuus riippuu meidän laitteistamme. "Vain toinen käsistäni toimii, joten joudun koko ajan miettimään, miten teen jotakin.". Hän miettii hetken, ja pidämme pienen tauon, jonka jälkeen painamme taas punaista nappia matkapuhelimen näytöltä ja jatkamme kuuntelemista. Päällimmäiseksi tunteeksi jää ehkä se, että Donnie on todella ylpeä tekemästään työstä ja suhtautuu siihen intohimoisesti. – Olen enemmän tekninen ihminen, samoin kuin monet tuntemani hakkerit. Hän kehottaa kysymään työnantajalta, onko mahdollista saada lisäkoulutusta taitojensa kehittämiseen. Hänen mukaansa epäonnistumista ei tule pelätä, ja hän korostaa, että 99 prosenttia ajasta hän itsekin epäonnistuu. Donnie hautautuu taas hetkeksi ajatuksiinsa. – Kerro siis avoimesti, että välität siitä mitä teet ja pidät työstäsi, mutta jotkin asiat huolettavat. Pyri oppimaan lisää. 11 tä olivat superkiinnostuneita ja minkä osasivat erittäin hyvin, ja kun huomasivat että toinen ei osaa eikä tiedä siitä mitään, he eivät muusta puhuneetkaan. En hyökännyt NATO-maihin enkä korkeakouluihin. Hän sanoo lopettaneensa Linuxin ja internetin käytön kokonaan parin–kolmen vuoden ajaksi – juuri kun muut alkoivat intoilla siitä. – Menin erääseen hakkerikonferenssiin Yhdysvalloissa. Omat heikkoutensa täytyy hänestä voida tunnustaa, jotta taitojaan voi kehittää. Joudun jatkuvasti ajattelemaan. Kanna vastuusi ja paljasta omat heikkoutesi. – Tietoturvassa on kyse perspektiivistä, näkökannasta asioihin. Hän ei ole itse kiinnostunut ”taistelemaan systeemiä vastaan”, vaan hänelle hakkeroinnissa on kyse jostain aivan muusta. – Olen mielestäni enemmän harmaakuin mustahattu. Myös tilanteissa, joissa muut onnistuvat. Teen kaiken voitavani varmistaakseni niiden tietoturvan, ja sanon sen erittäin vakavissani. Nykyinen työkoneeni ei tue kaikkia käyttämiäni työkaluja, mutta useimmat työkalut löytyvät molemmille alustoille. Se oli hyvä konferenssi, mutta käytännössä pelkkää hacktivismia, eli paljon pyrkyreitä, jotka ihailevat muutamaa alalle päässyttä. Vastuu Olemme tyytyväisiä äänittämiimme tarinoihin, mutta haluamme vielä tietää, olisiko Donniella jotain, mitä hän haluaisi jakaa lukijoille. Donnie siirtyy puolustuskannalle, kun kysymme hänen omasta aiemmasta mustahattuilustaan. Kaikesta, mitä Donnie kertoo, huokuu myös omanlainen katsontakanta maailmaan ja tapa lähestyä asioita. – Se pitää meidät virkeinä, ja [teemme sitä], koska olemme uteliaita. Uteliaisuus Hairahdumme sivupoluille ja palaamme Donnieen ja hänen hakkerikavereihinsa. – En olisi koskaan löytänyt aiemmin mainitsemaani haavoittuvuutta, jos en olisi vain päättänyt kokeilla jotain
2 1 7 . Ohjelmassa on muutama tapaaminen ja sähköpostin purkua. Hoitelen Twitteriä taksista, koska puolilta päivin lennän Tukholmaan IDG:n vuotuiseen IoT-tapahtumaan. ”Jos Chrysler olisi maksanut meille 10 miljardia, emme olisi kertoneet kenellekään löydöstä, ja Chrysler olisi säästänyt 4 miljardia!” Konferenssin jälkeen puhujat kokoontuvat päivälliselle. Aina joskus käy niin, että linkkaan Twitterissä sivustoon, ja se menee heti nurin, koska niin moni vierailee siellä yhtä aikaa. Levitän uutista Twitterissä ja toivotan uudet työntekijät tervetulleeksi taloon. Puhun IoT:n tulevaisuuden hyvistä ja huonoista puolista. Siellä olevaa Faradayn häkkiä on aina hauska esitellä. Laskeudun kotikentälle vähän ennen kolmea lauantaiaamuna. Mikko Hyppönen, tutkimusjohtaja, F-Secure Oyj. Puhelimeni soi tauotta, ja ehdin vielä koneessa puhua monta puhelua, koska lähtö kestää. Kyseessä on uusi tiedostoja salaava lunnastroijalainen – WannaCry. Uhreina on lähes pelkästään suuryrityksiä, ja saastuneita koneita on illalla jo melkein 200 000. Vierailu Tukholmassa jää lyhyeksi. Minua ennen puhuu Volvon nettiyhteydet suunnitellut nainen ja poroja internetiin kytkevä mies. Soitan johtoryhmän jäsenelle, ja selviää, että heidän verkossaan on tuhansia tartuntoja uudesta haittaohjelmasta. Kyseessä on kymmenes vuosittainen Paranoia. TORSTAI 11.5.2017 Pidän aamun ensimmäisen keynoten Paranoiassa. Konttorilta Suomesta kehotetaan ottamaan yhteys yhteen suurimmista asiakkaistamme Espanjassa. Palaan kentälle tekemään töitä lentokenttäloungessa. Tunnen Charlien jo vuosien takaa, ja rupattelemme iltapäivällä pitkään. KESKIVIIKKO 10.5.2017 Lähden aamulla Messukeskukseen pitämään Prosessipäivien aloituspuheenvuoron. Session jälkeen siirryn heti Twitterin ääreen, koska tiedän, että F-Secure on aamulla julkaissut pörssitiedotteen: ostamme englantilaisen tietoturvayhtiön. Puhun siitä, miten paljon lyhyessä ajassa on muuttunut. Ehdin kuitenkin Helsingin lennolle, koska sekin on myöhässä. PERJANTAI 12.5.2017 Madridissa puhun aamulla noin 150 asiakkaalle suuryritysten tietoturvaratkaisuista. WannaCry leviää kuin kulovalkea ja muuttuu päivässä historian suurimmaksi lunnastroijalaisepidemiaksi. Kolumni Viikko tietoturva sekatyömiehen elämästä Äitini opetti minulle aikanaan, että leipä on pieninä palasina maailmalla. Puhe loppuu klo 10.00, ja viidessä minuutissa olen taksissa matkalla kohti 11:05 lähtevää lentoa Osloon. Pöytäkunnassa istuu ainakin kaksi entistä tiedustelupalvelu NSA:n työntekijää. Siellä on alkamassa yksi Pohjoismaiden kovatasoisimmista hakkerikonferensseista, Paranoia. Puheen ja paluulennon välillä on muutama tunti aikaa. 2 12 TIISTAI 9.5.2017 Ajelen aamulla F-Securen pääkonttorille Helsingin Ruoholahteen. Singahdan heti puheen jälkeen Arlanda Expressillä kentälle ja lähden iltakoneella Madridiin. Kun pilviveikot on peloteltu, palaan konttorille isännöimään asiakasryhmän vierailua laboratoriossa. Suuri seuraajamäärä on opettanut varovaiseksi. Tuskin ehdin istahtaa, kun puhelin soi. Totean, että 10 vuotta sitten meillä kaikilla oli suomalainen puhelin taskussa ja nyt kellään meistä ei ole. Mikä pahempaa: tartunta leviää yhä. Charlie mainitsee, että hänen ja Chris Valasekin löytämät aukot aiheuttivat Chryslerille 14 miljardin dollarin kustannukset. Välipysähdyskentällä Frankfurtissa on ukkosmyrsky. Päivällä käyn pitämässä keynote-puheen pilvipalveluihin keskittyvässä seminaarissa hotellissa Helsingin keskustassa. Aika lentää, varsinkin netissä. Keskiviikon keynoten vetää Charlie Miller, maailman tunnetuin autohakkeri
Teen Skypen kautta kotoani kaksi live-haastattelua BBC:lle. Haittaohjelman tartuntoja yritysverkoissa ei ehditty huomata ennen viikonloppua. Ei ole vaikeaa arvata, että puheenaihe numero yksi tulee olemaan WannaCry. Leipä todella on pieninä palasina maailmalla. Bluetooth 5 -valmius) ja versiosta riippuen tagissa on muun muassa lämpötila-, ilmankosteus-, ilmanpaineja kiihtyvyysanturit. Yksi BLE:n ominaisuus on majakka. Aamuun mennessä tiimimme on purkanut WannaCryn koodin kokonaan. Paristo kestänee vuosikymmenen ja radiokantama pellolla on jopa kilometrin. Googlen julkaisema Eddystone-protokolla tukee myös fyysistä webiä (Physical Web), jossa majakka kuuluttaa standardia web-osoitetta. Majakka ei kuitenkaan ole palvelin, joten lisätoiminnot vaativat aina internetiä. Toinen niistä menee BBC Worldille, jolla on kymmeniä miljoonia katsojia. Esineverkot palasivat juurilleen, kun Nokian kehittämä Wibree integroitiin Bluetooth 4 -standardiin Bluetooth Smartin tai Low Energyn (BLE) nimellä. Myös tietoturva-alalla. Sovellus saa majakalta tunnisteen ja mahdollisesti paikallista anturitietoa. Olen tavannut hänet vuosien varrella monta kertaa. Selviää, että WannaCryn leviäminen on pysähtynyt, koska tuttu brittitutkija on löytänyt koodista toiminnon, jonka avulla hän sai epidemian globaalisti pysäytettyä. Toimii. 13 LAUANTAI 13.5.2017 Ehdin nukkua vajaat kuusi tuntia ennen kuin WannaCry-ruljanssi jatkuu. Asiakkaat ja media soittelevat. Se joukkorahoitettiin viime vuonna, ja ensipainos toimitettiin kevättalvella tukijoille – myös Skrollille. CNN:n jälkeen hyppään taksiin Helsinki-Vantaalle. Barcelonasta matkani tulee jatkumaan Haagiin, puimaan WannaCryta Europolin tutkijoiden kanssa. RuuviTag – Suomimajakka esineverkoille E sineverkolla (Internet of Things, IoT) viitataan perinteisistä tietokoneista poikkeavien esineiden kytkeytymiseen internetiin. Skrollin testissä kaupunkioloissa Android-luuri kuuli majakan automaattisesti muutaman kymmenen metrin etäisyydeltä ilman mitään asennuksia, ja sääasemakin aukesi klikkauksella selaimeen. Puhelin soi ja soi. BLE-majakka kuuluttaa yksilöllistä tunnistettaan läheisille BLE-laitteille. Anteeksi Äiti. Varsinainen juju on kuitenkin tuunattavuus – RuuviTag taipuu uusiin sovellutuksiin avoimella kehitysympäristöllä. CNN soittaa ja haluaa tehdä haastattelun Skypen kautta livenä maailmanlaajuiseen jakeluun. RuuviTag toimii Eddystone/iBeaconmajakkana (sis. Nauhoitan parin minuutin yhteenvedon tilanteesta ja vastaan radioasemien haastattelupyyntöihin mailaamalle heille OGG-tiedoston. Nyt istun Finnairin koneessa matkalla Barcelonaan. Alkujaan siinä oli kyse tavaroiden tunnistamisesta tageilla, kuten RFID:llä. Ennen suoran lähetyksen alkua muistelemme haastatteluja muun muassa Sony Rootkitista vuonna 2005 ja Confickerista vuonna 2008. Tartunnan saaneita yrityksiä on kaikkialla maailmassa: sairaaloita, autotehtaita, voimalaitoksia, junayhtiöitä… SUNNUNTAI 14.5.2017 Äitienpäivä menee WannaCryn kanssa painiessa. Ainakin eteläafrikkalainen ja itävaltalainen radioasema toistavat tiedoston kuulijoilleen sellaisenaan. Mitalin arvoinen temppu. Lisätietoja: ruu.vi Janne Sirén Lyhyet. Haastattelijana on CNN:n naistoimittaja Hong Kongista. Applen iBeaconin kaltaista protokollaa käytettäessä älylaite reagoi majakkaan, jos siihen on asennettu yhteensopiva sovellus. MAANANTAI 15.5.2017 Maanantaina selviää, että WannaCryn tuhot Aasiassa ovat paljon luultua suuremmat. Siellä alkaa huomenna F-Securen tärkein vuosittainen asiakastilaisuus, jonne keräämme operaattoriasiakkaitamme kaikkialta maailmasta. Haastattelu menee hyvin. Tähän markkinarakoon iskee suomalaisen Ruuvi Innovations Oy:n RuuviTag
(Ulkoministeriö, 2015.). Pieni mustavalkonäyttö, johon mahtuivat ennakoivalla T9-näppäimistöllä kirjoitettavat ylipitkät tekstiviestit. Kaikki Euroopassa muistavat Commodore 64:n, mutta harva muistelee numeroita 4, 16, 20, 128 tai edes numeroa 500 – saati useimpia kilpailijoita. Kuten Commodore 64:stä aikanaan, 3310:sta tuli klassikko osittain siksi, NOKIA 3310 että se oli tarpeeksi halpa, tarpeeksi hyvä ja lajinsa viimeinen volyymituote. Viimeinen oli kuitenkin alkujaan varsin epätodennäköinen sankari. Siinä ei ollut wappia (7110) tai värinäyttöä (3510i). Peruskännykän joutsenlaulu Nokia 3310 syntyi ajankohtaan, jossa kiihkeästi kasvanut matkapuhelinmarkkina oli värinäyttöjen ja dataliikenteen murroksessa. Skrolli tutustui kansankännykkämme matkaan vuosituhannen vaihteen tusinaluurista 2010-luvun ilmiöksi. 2 14 Tasavallan matkapuhelin Nokia 3310 kuuluu saunan, sisun ja rallin ohella asioihin, joista Suomi tunnetaan. Se ei edes synnyttänyt Nokia-puhelinten kestävyysmeemiä (1100). Julkaisuvuonna 2000 hohdokkaat simpukkapuhelimet kilpailivat mielikuvista ja älypuhelimet olivat ovella. Teksti ja kuvat: Janne Sirén Kulttuuri K un ulkoministeriö julkaisi Suomelle omat emojit vuonna 2015, ensimmäiset kolme olivat sauna, hevari ja Nokia 3310 -kännykkä. Miksi juuri Nokia 3310 on noussut kännykkäajan ikoniksi. 3310 oli juro, juhannustaivaan värinen patukka, josta oli design kaukana. Internetiä luuriin vasta kosiskeltiin, ja kamerapuhelin oli vielä parin vuoden päässä. Se ei myynyt maailman eniten (1110) eikä aikalaisistaan eniten (3210). 2 1 7 . 3310 ei ollut ensimmäinen nokialainen helppokäyttöisellä Navi-näppäimellä (se oli 3110), ei ensimmäinen matopelillä (6110) tai helposti vaihdettavilla kuorilla (5110). Käyttäjän huomiosta kilpaili vain neljä sisäänrakennettua peliä. Puhelimen pudottaminen oli tuohon aikaan yleisesti lähinnä kosmeettinen haitta, mutta suurenevat näytöt, tiivistetyt kotelot ja kasaan liimatut arvomateriaalit tulisivat pian muuttamaan tämän. Jos menneestä kännykkäpeEnsimmäiset Suomi-emojit: Sauna, Headbanger ja Unbreakable. Vanha Nokia 3310 oli 1990-luvun matkapuhelinevoluution puristama timantti. Se oli läntisen maailman kuvakulmasta viimeinen kerta pitkään aikaan, kun massat ostivat yhtä puhelinta yli sata miljoonaa kappaletta – seuraava kerta tulisi vasta vuosia myöhemmin Applen kuorissa. Puhelinmuistio, kourallinen soittoääniä värinätoiminnolla ja useampi päivä akkuvirtaa soittojen odotteluun. Amerikkalainen tietokonevalmistaja Commodore onnistui aikanaan luomaan samankaltaisen ilmiön. 3310:lla oli tuuria, sillä tämä murros liitettäisiin juuri siihen. Tuhoutumaton Nokia Oikeastaan koko Nokia 3310 -ilmiö on huijausta. Siinä ei ollut mitään erityistä. Sitä paitsi se taidettiin suunnitella Tanskassa, vaikkakin valmistettiin Suomessa. Vaikka myyntiluvuilla on osansa, oman aikansa symboliksi nouseminen vaatii ennen kaikkea oikeaa ajoitusta. 3310 jäi kantamaan peruspuhelimen lippua jopa viideksi vuodeksi. Nokia 3310 edusti myös katoavaa valmistustapaa, jossa kutistunut elektroniikka – etenkin herkät akku ja näyttö – ympäröitiin väljällä muovikuorella. Tätä edeltäneet, vuosittain vaihtuneet massasuosikkimallit pirstaloituivat pienemmiksi puroiksi eri suuntiin. 3310 oli monelle se viimeinen peruspuhelin
Kännykkä sinne missä muuten jättäisit puhelimen kotiin. 3310 voisi olla tukeva-akkuinen kaveri kesämökille tai vaellukselle, ehkäpä myös radio juoksulenkille. Vaihdettavan akun valmiusaika on kuukauden luokkaa. Etenkin vanhan 3310:n rinnalla huomaa, kuinka uuteen on kertynyt kaikenlaista vähemmän loogista krääsää. Viraali-ilmiöön tarttui myös Nokia yhdessä kumppaninsa HMD Globalin kanssa, joka lisensoi Nokian matkapuhelinbrändin vuonna 2016. Toisaalta vaikka somet ja netit laittaisi katkolle, puhelimen käyttö on nykyisin paljon muutakin. Lisähinnalla saa väritettyä retromuovia ja huonon kameran surkean sijaan. Legenda oli syntynyt. Vanha Nokia 3310 oli myös harkittu kokonaisuus, jossa oli vain perusasiat. Verkkotaajuudet eivät edes toimi kaikilla kaukomailla. Olennaisempaa tosin on hankkia kaksi rinnakkaista SIMiä: yksi älypuhelimeen ja yksi kakkosluuri3310:aan. Alkuperäinen Nokia 3310 (vas.) ja uusi. ”Indestructible Nokia 3310” – yksi monista internetiä kiertävistä kunnianosoituksista.. Ennakoimme tarinalle noloa loppua, mutta uskaltauduimme kokeilemaan. Työpaikan päivystysluurina se toimii myös erinomaisesti. Lopulta Nokia 1100:lla ei ollut mahdollisuuttakaan. 1100:n pölynkestävä näppäimistö jaksoi myös jatkaa vielä, kun 3310 oli jo tukossa. Nokia 3310:n tarina muistuttaa sanonnasta: älä tapaa sankareitasi. Se oli lähes tuntematon länsimaissa, kun taas 3310:n muistivat kaikki. Uusi Nokia 3310 ”Nokia 3310” palasi touko-kesäkuun vaihteessa kauppoihin 59 euron hintaan. Tästä ulkoministeriömmekin innostui. Musiikki soi kuulokkeilla passelisti. Yllättäen uutta 3310:aa voi jopa suositella, jos oikeasti tarvitsee johonkin pelkkää puhelinta ja musiikkisoitinta. Kun ”kaikki oli ennen paremmin” kiteytyy ilmiön myötä Nokia 3310:aan, nostalginen markkinarako on selvä. Rakennekin tuntuisi sietävän osumaa. Kenties kehittyvien markkinoiden takia ei ole uskallettu karsia uudesta 3310:sta täysin puhdasta peruspuhelinta, vaan huumorikärkiä on jätetty: Opera Mini -selain ei kuulu 2010-luvulle, eikä rauta vain riitä (video)kuvaamiseen. 3310-meemipallo oli kuitenkin päästetty irti, ja Tuomiovuorta seurasi toinen toistaan kekseliäämpiä kiertokuvia nimenomaan 3310:stä milloin luodinkestävänä liivinä, milloin lattian tuhoojana. Harvinaiseen tositarpeeseen olisi kuitenkin taas tarjolla kiva peruspuhelin. Ei tänne niiden takia tultu. Vuonna 2011 Reddit-sivustolle lähetettiin kuva Tuomiovuoresta ainoana paikkana, jossa Nokia 1100 voidaan tuhota – rinnastaen se Taru sormusten herrasta -kirjasarjan lähes tuhoutumattomaan mahtisormukseen. Eräässä kuvan saamassa kommentissa 3310 nimettiin saman kirjan Noitakuninkaaksi. 15 rinteestä pitäisi poimia kovin sankari, se olisi Nokia 1100. Puhelut ja tekstarit toimivat. Nokia-soittoäänessä on tunnelmaa. 3310:n sankaritaru on myytti, joka elää parhaiten muistoissa. Anoppi kuitenkin pysyköön Dorossaan, hänelle 3310:ssa on valikkoja puolet liikaa. Kuvitellaan, että 3310 on vain peruspuhelin, jolla voi lisäksi kuunnella radiosta ja muistikortilta musiikkia sekä käyttää samaan aikaan kahta eri micro-SIMiä. 3310 on myös mainio elektroniikkapeli – matopeli viihdyttää, ja lisää pikkupelejä saa Opera-kaupasta. Vanha Snake II ja uusi Snake (alla). Siirtymät perusasioissa ovat salamannopeita, ja näyttökin on yllättävän hyvä. Uusi 3310 näyttää nätiltä, paremmalta kuin edeltäjänsä. Nyt alkaa jo hymyilyttää. Mattasinisen (oik.) ja harmaan lisäksi uuden saa kiiltävän keltaisena ja punaisena. Kyseessä on kevyesti viritetty Series 30+ -sarjan kiinalainen Mediatek-peruspuhelin, jonka ulkonäkö on tyylitellen lainattu 3310:lta. Ripotellaan päälle vielä ripaus trendikästä digital detoxia, niin ideaa voi yrittää myydä millenniaaleillekin. Mutta unohdetaan epäolennaiset kymppien hintaerot, mobiiliselain ja kamera. Ja unohda se digivieroitus – retroilijalle tämä vitsi käy pian vanhaksi. 1100 oli jopa lähtölaukaus 3310:n toiselle tulemiselle, internet-ilmiölle tuhoutumattomasta Nokiasta. Kiitos Viestintätoimisto Paja ja HMD keltaisesta lainapuhelimesta. Tässä Nokia/HMD:n rohkeus ja vaivannäkö on loppunut kesken. Noitakuningaskin oli vaikea tappaa, mutta tuhoutui silti kirjassa ennen mahtisormusta. Nokia 150 olisi näistä se järkevämpi ostos. Ensinnäkin uusi 3310 on vain kolhompi design-versio puolet halvemmasta Nokia 150:sta. Kolme vuotta 3310:n jälkeen kehittyville markkinoille julkaistu malli myi enemmän (sisarmallinsa 1110:n kanssa tuplasti enemmän) kuin 3310. 3310:lla ei makseta pysäköintiä, navigoida, mitata urheilusuoritusta, ohjata kodinkoneita tai tilata maailmalla Uberia
Näiden suunnittelussa yksikin virhe tai haavoittuvuus voi tulla hyvin kalliiksi. Kaksijakoisuus tarkoittaa sitä, että oliot jakautuvat kahteen ryhmään ja kaikki kaaret kulkevat ainoastaan yhdestä ryhmästä toiseen ryhmään. Tällöin siirtymä voi laueta. Matemaattinen malli Carl Adam Petrin väitöskirja Kommunikation mit Automaten loi uuden tieteenalan – akateemisen Petri-verkkojen tieteen. Järjestelmä mallinnetaan matemaattisesti, ja sen käyttäytymistä voidaan tutkia olemassa olevilla työkaluilla. Petri-verkko toimii seuraavasti: Siirtymillä on joukko tulopaikkoja (input places) ja joukko lähtöpaikkoja (output places). Kun siirtymän tulopaikoissa on riittävän monta merkkiä, niin sanotaan, että siirtymä on virittynyt. Yksi näistä on Petri-verkot, joilla on mahdollista todistaa, että järjestelmä toimii oikein. Kun siirtymä laukeaa, lähtöpaikoista otetaan pois ja tulopaikkoihin tuodaan tietty lukumäärä merkkejä. Niiden laskentavoima on pienempi kuin Turingin koneiden, mikä mahdollistaa niiden analysoinnin tietokoneella. Teksti: Antti Ylikoski Kuvat: Toni Kortelahti, Nasu Viljanmaa Tekniikka 2 1 2 2 1 2 Kaavio 1. Kuvissa paikat ovat ympyröitä, siirtymät neliöitä ja merkit mustia palloja. Järjestelmän monimutkaisuus voi kasvaa päätä huimaavaksi, kun ohjelmoidaan rinnakkaisia ja hajautettuja järjestelmiä, joissa useat säikeet kilpailevat yhtä aikaa samoista resursseista. Ensimmäisen ryhmän olioita kutsutaan paikoiksi ja toisen ryhmän olioita siirtymiksi. Monet turvallisuuskriittiset sovellukset, kuten lentokoneet ja ydinvoimalat koostuvat useista reaaliaikaisista systeemeistä, joiden on kommunikoitava keskenään. 2 1 7 . Ystävämme Petri Kun normaali ohjelmistotestaus ei riitä, on aika ottaa esiin täsmälliset matemaattiset mallit. Yksikin bugi saattaa tappaa satoja ihmisiä tai aiheuttaa ympäristökatastrofin. Näiden kriittisten järjestelmien suunnittelussa avuksi voi ottaa järeät työkalut – matemaattiset menetelmät, joilla voidaan etsiä järjestelmästä bugeja tai jopa todistaa järjestelmä bugittomaksi matemaattisen täsmällisesti. Yksi näistä formalismeista on nimeltään Petri-verkko. Siinä on olioita ja suunnattuja kaaria, jotka johtavat oliosta toiseen olioon. Kaaren kohdalla oleva numero kertoo, kuinka monta merkkiä kaaren läpi kulkee kerrallaan. On myös kriittisiä tietoliikenneprotokollia, joita käyttävät miljoonat ja taas miljoonat laitteet päivittäin. On kehitetty useita matemaattisia formalismeja, jotka ovat tyypillisesti jonkinlaisia tilakoneita. Ylemmässä kuvassa on tilanne ennen siirtymän laukeamista, ja alemmassa kuvassa tilanne siirtymän laukeamisen jälkeen.. Petri-verkkoja voidaan käyttää erilaisten rinnakkaisten ja hajautettujen järjestelmien ja kommunikoinnin mallintamiseen ja analysointiin. Matemaattisesti Petri-verkko on suunnattu kaksijakoinen verkko. 2 16 O hjelmointi on vaikeaa, ja bugit ovat väistämättömiä, koska ihminen on erehtyväinen. Paikoissa voi olla merkkejä (tokens), jotka voivat siirtyä paikasta toiseen siirtymien kautta
Petri-verkoilla voi mallintaa ja analysoida suhteellisen yksinkertaisia hajautettuja ja rinnakkaisia järjestelmiä ja fysikaalisia olioita, kuten esimerkiksi kerrostaloa hisseineen ja asukkaineen tai mekaanista kelloa. Kuvan tilanteessa kaikki filosofit ajattelevat ja kaikki neljä haarukkaa ovat pöydällä. Tämä virittää taas siirtymän, joka palauttaa molemmat haarukat pöydälle ja tuottaa ajattelevan filosofin. Vasemman haarukan poimimisen virittämiseen tarvitaan yksi ajatteleva filosofi ja yksi haarukka-merkki, ja lauetessaan se johtaa tilanteeseen, jossa yhden ajattelevan filosofin ja haarukan merkit ovat kadonneet, mutta tilalle on tullut merkki paikkaan, joka kuvaa filosofia, jolla on haarukka vasemmassa kädessä. Esimerkiksi matkakortinlukija voi veloittaa kortilta hinnan vasta, kun kortti on lukijan edessä, haluttu matka on valittu ja kortilla on tarpeeksi rahaa. Ruokailevat filosofit tarvitsevat kaksi haarukkaa syödäkseen.. Paikat ovat ympyröitä, neliöt siirtymiä ja mustat pallot merkkejä. Tätä esimerkkinä käytettyä ongelmaa voi kuvata seuraavasti. V-kirjaimilla merkityt siirtymät vastaavat vasemman haarukan poimimista, o-kirjaimilla merkityt oikean haarukan poimimista ja p-kirjaimella merkityt haarukoiden palauttamista. Neljää ruokailevaa filosofia mallintava Petri-verkko. Jokaista filosofia kohden on yksi ja jokaista haarukkaa kohden yksi merkki, joita on kuvassa merkitty mustilla palloilla. ”Deadlock” tarkoittaa sitä, että useampi prosessi haluaa käyttöönsä useita resursseja siten, että ne estävät toinen toisensa toiminnan ja koko systeemi pysähtyy prosessien odottaessa toisiaan ristiin. Kuva 2. Yleisemmin voi kysyä, onko systeemin mahdollista päätyä jostain alkutilasta johonkin toivottuun tai epätoivottuun tilanteeseen. Kaarten painoja ei ole merkitty kuvaan, koska jokaisen kaaren paino on yksi. Kaaviossa 3 on mallinnettu neljän näin toimivan filosofin muodostava systeemi Petri-verkkona. Systeemi etenee siten, että joka askeleella yksi virittynyt siirtymä laukeaa. Filosofit ruokapöydässä Eräs kuuluisa tietojenkäsittelytieteen esimerkkiongelma, jota voi kätevästi mallintaa Petri-verkoilla, on niin sanottu lounastavien filosofien ongelma. Tämä esimerkkiongelma havainnollistaa niin sanottua käyttöjärjestelmän deadlock-tilannetta. Siirtymä poistaa sitten kortilta matkan hintaa vastaavan määrän merkkejä ja tuottaa merkin paikkaan, joka kuvastaa sitä, että kortilla on voimassa oleva lippu. Kuva 2), ja ruokaillakseen kukin filosofi tarvitsee kahta haarukkaa. Jos samaan aikaan on useita virittyneitä siirtymiä, niin mielivaltaisesti valittu siirtymä laukeaa. Tämä voi tapahtua silloin, kun kaikilla filosofeilla on pelkkä vasen haarukka kädessä, jolloin kaikki filosofit nääntyvät nälkään. Tehtävä on synkronoida filosofien ruokailu ilman, että kukaan nääntyy nälkään, koska vieressä istuvat filosofit omivat haarukat itselleen. Se, onko systeemin mahdollista mennä deadlockiin, palautuu kysymykseen, onko deadlock-tila saavutettavissa alkutilanteesta. Jos oikeanpuoleinen haarukka on käytettävissä, tämä virittää siirtymän, jossa oikeanpuoleinen haarukka katoaa ja vasemmassa kädessä haarukkaa pitelevä filosofi muuttuu syöväksi filosofiksi. Kuvitellaan, että filosofit toimivat seuraavan algoritmin mukaan: 1) Ajattele 2) Ota vasen haarukka 3) Ota oikea haarukka 4) Syö 5) Palauta haarukat alkuperäisille paikoilleen ja palaa kohtaan 1. Ympyrät kuvastavat tiloja ja neliöt siirtymiä. 17 Tämä toiminta vastaa asiaa, joka tapahtuu usein todellisuudessa: kun määrätyt ehdot ovat täyttyneet, niin jokin tietty tapahtuma voi tapahtua. Filosofit ruokailevat pyöreän pöydän ääressä ja syövät aina spagettia. Nyt voidaan formalisoida deadlockin käsite: deadlock on tilanne, jossa ei ole yhtään virittynyttä siirtymää. Jokaisen vierekkäisen filosofin välissä on yksi haarukka (ks. Yksinkertaisin tapa ratkaista ongelma pienille verkoille on koodata ohjelma, joka luettelee v 4 o 3 v 3 o 2 p 2 v 2 p 1 v 1 o 1 p 3 p 4 o 4 haarukka haarukka haarukka haarukka ajattelee ajattelee syö syö ajattelee syö syö ajattelee v ottaa haarukan vasemmalta o ottaa haarukan oikealta p palauttaa haarukat Kaavio 3. Joukko filosofeja elää elämää, jossa itse kukin filosofi vuorotellen ajattelee ja ruokailee. Tämä niin sanottu saavutettavuusongelma on todistettu hyvin vaikeaksi yleisessä tapauksessa, mutta sen ratkaiseminen tehokkaasti käytännön erikoistapauksissa on aktiivinen tutkimusalue
Siirtymä voi laueta silloin, kun siihen liitetty totuuslauseke on tosi, jolloin siitä lähtevät kaaret lähettävät lähtöpaikkoihin uusia olioita. Kuinka voidaan varmistua, että malli on oikein. Värien lisääminen merkeille ei kuitenkaan kasvata mallien laskentavoimaa teoriassa – minkä tahansa väritetyn petri-verkon voi ilmaista myös monimutkaisempana mutta yhtäpitävänä värittämättömänä verkkona. Cpntools-työkalun käyttöliittymä.. Korkeamman tason Petri-verkot Petri-verkkojen yksinkertaisuudesta ja rajoittuneisuudesta johtuen niillä voi olla vaikea mallintaa oikean maailman monimutkaisia systeemejä. Työkalulla on mahdollista määritellä ja piirtää verkkoja sekä analysoida niiden ominaisuuksia tietokoneavusteisesti. Kun MULTICSia laadittiin, deadlockia ei osattu etukäteen ottaa huomioon. Korkeamman tason verkot vastaavat ilmaisuvoimaltaan yleiskäyttöistä ohjelmointikieltä, mikä tekee helpommaksi monimutkaisten järjestelmien mallintamisen. Yksi yleisesti käytetty laajennos on väritetty Petri-verkko, jossa merkeille annetaan jokin ”väri”. Unix oli alunperin nimeltään Unics, ja nimi tulee todennäköisesti siitä, että sen ensimmäisten versioiden oli tarkoitus olla jonkin tyylinen ”yhden käyttäjän MULTICS”. 2 1 7 . Korkean tason Petri-verkoksi kutsutaan verkkoa, johon on liitetty tietyt lisäominaisuudet, jotka on määritelty ISO/IEC-standardissa. Tämä määritelmä on hyvin matemaattinen ja tekninen, mutta sen pääkohdat voidaan kuvata seuraavasti. Filosofiverkolle tämä toimii, koska mahdollisten tilojen määrä on äärellinen ja pieni. Huonona puolena on, että verkkojen analysoinnista voi tulla äärimmäisen vaikeaa tai jopa mahdotonta, koska verkko pystyy simuloimaan Turingin konetta, ja tietyt kysymykset Turingin koneen toiminnasta ovat todistetusti ratkeamattomia. Ongelma on myös siinä, että mallinnuksen takana on ihminen, joten on mahdollista, että itse mallinnuksessa on virhe. Se huomattiin vasta, kun MULTICS oli ensimmäistä kertaa deadlockissa. Nimi Unix on johdettu nimestä MULTICS (Multiplexed Information and Computing Service), joka oli ensimmäinen suuri tietokoneen käyttöjärjestelmä, joka oli kokonaan kirjoitettu korkean tason ohjelmointikielellä (PL/I-kieli). 2 18 tyhjentävästi verkon kaikki mahdolliset tilat, jotka ovat saavutettavissa alkutilanteesta. Hyödyllinen työkalu vai akateemista näpertelyä. Kaaret on merkitty kaavoilla, joiden suorittaminen tuottaa joukon olioita. Vaikka malli voitaisiin todistaa täysin virheettömäksi, on eri asia, vastaako malli oikeasti todellista järjestelmää. Petri-verkoilla mallinnettu järjestelmä lienee lopulta varmempi kuin ilman niitä suunniteltu järjestelmä. Värien käyttö voi kuitenkin helpottaa mallinnustyötä huomattavasti. Deadlockin syntyminen tietokoneessa havaittiin käytännössä vasta sen jälkeen, kun ensimmäisiä suuria käyttöjärjestelmiä oli kirjoitettu. Useiden suuryritysten kuten Boeing, Mitsubishi ja Siemens kerrotaan käyttävän Petri-verkkoihin pohjaavaa mallinnusta, mutta harvassa ovat tapaukset, joissa Petri-verkko on paljastanut järjestelmässä kriittisen ongelman, joka oli muuten jäänyt huomaamatta. Korkean tason verkon pohjalla on tavallinen, paikoista ja siirtymistä koostuva Petri-verkko. Petri-verkkojen puolestapuhujat argumentoivat, että Petri-verkkoihin pohjaava mallinnus kannustaa formaalimpaan ajattelutapaan, jolloin muuten piilossa olevat ongelmat tulevat ilmiselviksi jo mallinnusvaiheessa. Siksi verkkojen ilmaisuvoiman parantamiseksi on keksitty suuri määrä laajennoksia määritelmään. Tarina liittyy Unix-käyttöjärjestelmän esihistoriaan. Verkon paikoilla on nyt lisäksi tyyppi, hieman samaan tapaan kuin ohjelmointikielen muuttujilla voi olla tyyppi. Siirtymät on merkitty totuusarvoisilla lausekkeilla, jotka voivat sisältää funktioita, jotka saavat argumentteinaan tulokaarista tulevia olioita. Nyt merkit voivat vastata muuttujia tietokoneohjelmassa ja väri voi kertoa muuttujan arvon. Nykymaailman IT:ssä termi ”väritetyt Petri-verkot” merkitsee työkalua, jossa on yhdistetty niin sanotusti perus-Petri-verkot sekä yksinkertainen mallinnuskieli, jolla voi rajoittaa verkon toimintaa erilaisilla lausekkeilla. Vaikka Petri-verkkoja koskeva tutkimuskirjallisuus on laaja, on vaikea löytää konkreettisia menestystarinoita Petri-verkkoihin pohjaavalle mallinnukselle. Parhaiten dokumentoitu työkalu tähän lienee cpntools, jossa on paljon ominaisuuksia, mutta käyttöliittymän logiikka on omalaatuinen
Blu-raylla oli suurempi kapasiteetti, mutta sen Javapohjainen interaktiivisuus oli pitkään surkea verrattuna HD DVD:n sulavaan HDi-sisältöön. Ei ihme, että teknologisesti valveutuneemmassa kodissa sitä suosittiin. Paramount ja Warner tukivat hetken molempia. Kivenä kengässä suurin sähköautovalmistaja Tesla käyttää ihan muuta pikalatausliitäntä sekä autoissaan että Supercharger-latausverkostossaan. CHAdeMO on ensimmäinen laajalle levinnyt tasavirtapikalatausstandardi, jonka takana on kourallinen japanilaisia autoyhtiöitä. CCS kävi taistoon tosissaan. Useita teknologiasotia sittemmin sivusta seuranneena en ole enää vakuuttunut, että kumpikaan näistä puutteista oli syy Betan tappioon. …kuin ystäväsi Syy siihen, miksi VHS ja Blu-ray voittivat, ja miksi CCS tulee voittamaan, on yksinkertainen. Mutta muistan myös Beta-nauhojen pienemmän kapasiteetin. Emme kaivanneet aikuisviihdettä kaverillani, mutta muistan Betassa olleen paremman kuvanlaadun. Kun eurooppalaiset ja amerikkalaiset autofirmat havahtuivat samaan tarpeeseen, ne lähtivät kehittämään kilpailevaa standardia – niinpä hieman myöhemmin ilmestyi CCS. Suuri osa kaverini muinaisista Betanauhoista oli itse nauhoitettuja, mutta teräväpiirtolevyjen kohdalla avainroolissa olivat valmissisältöä julkaisevat suuret elokuvastudiot. Poikkeus vahvistaa säännön: Applen ikiomat Lightningja sitä ennen Dockliittimet haastavat mobiili-USB:n ylivaltaa tasaväkisesti. Toinen esimerkki löytyy sähköautoista. Niiden takana on suurin osa markkinatoimijoista. Silti on enää ajan kysymys, että CCS tulee voittamaan sähköautojen maailmanlaajuisen pikalataussodan. Kun tv-ohjelmien tallentaminen oli tärkeää, pidempi tallennusaika oli VHS:lle etu. Janne Sirén A lakouluikäisenä erään luokkakaverini kotona oli aina 80-luvun kovimmat teknologiavermeet sekä kunnioitusta herättävä videokokoelma. Suoritusta pitää kunnioittaa. Tasaväkinen varhaismenestys tai edes ensiksi ehtiminen eivät merkitse mitään. Ratkaisuksi ongelmaan kehitetään parempi standardi. Kun kaveri vielä oli mukava, niin viihdyin siellä usein ja videotkin pyörivät tiuhaan. CHAdeMO ei ole yksinäinen puserrus, mutta se on yksinomaan japanilainen. Kolumni. CHAdeMO ja CCS kamppailevat pikalatausstandardin asemasta tasapuolisesti, ja sähköautojen latausasemista löytyy yleensä molemmat. Kumpikaan standardi ei olennaisesti johda luvuissa, eikä kumpikaan juuri ole toistaan parempi. Kun sähköauto todella lyö läpi, vain yksi standardi tulee kasvamaan räjähdysmäisesti. Vastakkain olivat 2006–2008 Toshiban ja NECin kehittämä HD DVD sekä Sonyn, Philipsin ja Pioneerin Blu-ray. Sonyn kehittämän Betamaxin – lyhyemmin Betan – ja JVC:n lanseeraaman VHS:n kaksintaistelu lienee yksi teknologiamaailman siteeratuimmista. Lähes aina muun markkinan joukkovoima voittaa, kun kriittinen massa saavutetaan. Se kel’ porno on, se standardisodan voittakoon. CHAdeMO:lta puuttuvat globaalit kumppanit. CHAdeMO:n onnistui vain vaivoin estää yritykset standardoida latausasemat CCS:ksi lakiteitse – kompromissina tiettyjen latausasemien EU:ssa tulee kuitenkin tarjota vähintään CCS-pistoke. Häviäjät voivat lohduttautua sillä, että voittajatkin joutuvat aikanaan väistymään seuraavan teknologiamurroksen tieltä. Jälkimmäinen ratkaisi sodan Bluraylle, vaikka Blu-ray ei ollut mitenkään kiistatta johdossa. Nyt standardeja on kolme. Olet vain niin hyvä… Olin liian junnu nauhasotiin, mutta oman tulikasteeni sain, kun kamppailu teräväpiirtovideon optisesta mediasta käynnistyi. 19 Standardisodan taide Sanonnan mukaan usein ihmetellään, miksi jollekin asialle on kaksi eri standardia. Sodan lopettivat tuplaiskut: Paramount siirtyi ensin HD DVD -leiriin ja Warner sitten Blu-rayhyn. Hätäisimmät veikkaavat Teslan pystyvän samaan sähköautojen latauksessa, mutta ennustan, että Tesla murtuu. Silti HD DVD:n korttitalo romahti lopulta vuorokaudessa. HD DVD sai puolelleen Microsoftin, joka vastasi standardin HDi-interaktiokerroksesta. Lailla standardeja on toki yritetty pakottaa aikaisemminkin: micro-USB:n standardointia matkapuhelimien lataustavaksi ajettiin EUdirektiivillä, minkä Apple sai estettyä. Sony oli Betan kanssa pitkään yksin (virhe, jota se ei toistanut Blu-rayn kanssa) ja Toshiban HD DVD -kaverit olivat pieniä tai puolivillaisesti mukana. Blu-ray sai varhaisiin tukijoihinsa yhdeksän suurta elektroniikkayhtiötä. Aina kun kaksi standardia kohtaavat, joku muistaa Betan hävinneen videosodan VHS:lle. Kaikilla on syykin huulilla: aikuisviihde. Tajusin vasta myöhemmin – kun ystävän kotiin hankittiin toiset videot – että koko tuo videokokoelma oli VHS-nauhoja pienemmillä kaseteilla. HD DVD ilmestyi ensimmäisenä, tarjosi aikaisemmin korkeatarkkuusaudiota ja sillä oli yksinoikeusstudioitakin. Applen suoritus on harvinainen. HD DVD:llä oli Universalin tuki ja Blu-raylla Sonyn sekä 20th Century Foxin
2 20 V alokuvaus syntyi vuonna 1826, kun Nicéphore Niépce valotti näkymän ikkunastaan bitumipäällysteiselle metallilevylle. Tähän yhtäläisyydet loppuvatkin. Bittisyvyys on tyypillisesti 12–16 bittiä, ja kuva tallennetaan häviöttömällä pakkauksella. Esimerkiksi kameran kohinanpoisto saattaa olla liian voimakas tai muuten huonolaatuinen. Vuosisadan puolivälissä Polaroid toi markkinoille kameran, joka tuotti välittömästi käyttökelpoisia paperikuvia. Tämä ensimmäinen valokuva oli erittäin epäselvä, mutta seuraavina vuosikymmeninä tekniikka kehittyi, ja vuosisadan loppuun mennessä filmi oli jo keksitty. Valokuvaus oli mullistava keksintö, sillä maisemat ja muotokuvat voitiin tallentaa silmänräpäyksessä esikuvalleen uskollisena. Kuvakennon fotoni-ilmaisimet eivät välitä fotonien aallonpituudesta, joten värikameroissa kuvakennon edessä on suodin, joka päästää tietyt aallonpituudet vain tiettyihin pikseleihin. Kameran ohjelmisto käsittelee kennon kaappaamaa dataa tuottaakseen katsottavaksi sopivan kuvan. Kuten perinteisessä filmikamerassa, myös digitaalikamerassa kohteesta tuleva valo kulkee objektiivin linssien läpi ja muodostaa kuvan kuvapinnalle. Yleensä näiden toimintojen voimakkuuteen pystyy vaikuttamaan, mutta vain rajallisesti. Monissa kameroissa on tarjolla myös mahdollisuus ottaa raakakuvia. Lähes kaikissa kameroissa käytetään Bayersuodinta, jossa neljän pikselin ryhmä koostuu kahdesta vihreästä, yhdestä punaisesta ja yhdestä sinisestä pikselistä. Valokuvaus on helpompaa kuin koskaan. Automatiikan avulla kelvollisia kuvia syntyy vaivattomasti, mutta pienellä panostuksella kuvaamisesta saa vielä enemmän irti. 2000-luvun aikana myös kamerapuhelimet ovat löytäneet tiensä lähes jokaisen taskuun. Raakakuvaan tallennetaan sensorin antamat lukemat sellaisenaan, ilman käsittelyä. Teksti ja kuvat: Sakari Leppä, Mikko Rasa Tekniikka Kuvat kuntoon Paremmaksi valokuvaajaksi ohjelmistolla. Kuvanlaatuun vaikuttaa olennaisesti optisten komponenttien kyky kerätä valoa, joten paremmat kamerat ovat myös kooltaan isompia. Perinteisellä taidemaalarilla meni tunteja tai jopa päiviä maalauksen tekemiseen, ja mallin piti olla liikkumatta maalaamisen ajan. Monesti paras kamera onkin se, joka on mukana. Pikakamera saavutti helppokäyttöisyytensä ansiosta suurta suosiota, mutta erikseen kehitettävä filmi säilytti asemansa vakavampien kuvaajien keskuudessa. Näin tallennettu kuva antaa jälkikäsittelyyn paljon enemmän pelivaraa kuin valmiiksi prosessoitu JPEG-kuva. 1900-luvun aikana optiikka ja filmit kehittyivät. Järjestelmäkamera objektiiveineen voi kuitenkin painaa monta kiloa, ja sen kuljettaminen on vaivalloista. 2 1 7 . Vuodesta 2003 alkaen digitaalikameroita on myyty enemmän kuin filmikameroita. Tekniikkaa kokeiltiin jo 1970-luvulla, mutta kuluttajamarkkinoille ensimmäiset laitteet saapuivat vasta 1980-luvun lopulla. Aluksi tämä oli vain järjestelmäkameroiden ominaisuus, mutta sittemmin se on yleistynyt myös kompaktikameroissa ja löytyy nykyään jopa joistakin kamerapuhelimista. Filmiin osuva valo aiheuttaa filmin emulsiossa kemiallisen reaktion, kun taas digitaalikameran kuvakenno muuntaa siihen osuvat fotonit sähköisiksi signaaleiksi. Digitaalikameran toiminta Digitaalikameroita on karkeasti kolmea tyyppiä: kamerapuhelimia, kompaktikameroita ja digitaalisia järjestelmäkameroita. Lähes jokainen omistaa kameran, jos ei muuten niin osana matkapuhelinta. Keksittiin zoom-objektiivit ja värifilmi. Seuraava suuri kehitysaskel oli elektroninen kuvasensori. Kuvakennolta saatavat fotonilukemat eivät vielä sellaisenaan ole valmis valokuva
Kameran tarkennusautomatiikka osuu yleensä kohdalleen, kunhan valitset tarkennuspisteen oikein. Huomioi myös aukon vaikutus syväterävyysalueeseen. Oikeassa laidassa on kuvien järjestelyyn liittyviä toimintoja. Tuotuasi kuvat voit siirtyä pimiönäkymään (darkroom) kaksoisnapsauttamalla kuvaa. Darktable löytyy useimmista Linuxjakeluista, ja sen saa binäärinä myös MacOS:lle, mutta Windows-käyttäjät joutuvat toistaiseksi kääntämään omansa lähdekoodista. Jos kuvaat liikkumatonta kohdetta ja voit yrittää otosta useita kertoja, valitse aluksi parametrit, jotka antavat parhaan kuvanlaadun. Jos kuva ei ota onnistuakseen, voit löysentää parametreja ja yrittää uudestaan. Jonkin verran käsittelyä voi tehdä tavallisella kuvankäsittelyohjelmalla kuten GIMPillä tai Photoshopilla, mutta pidemmän päälle samojen operaatioiden toistaminen käy työlääksi. Koska digitaaliset valokuvat eivät maksa juuri mitään, kuvia kannattaa ottaa paljon. Voit tuoda joko yksittäisiä kuvia (image) tai kokonaisen hakemiston kerralla (folder). Aukko onkin usein tärkein kuvausparametri, jonka ehdoilla muut valitaan. Kameran automatiikka tuottaa tavallisimmissa tilanteissa tyydyttävän lopputuloksen, mutta opettelemalla valokuvauksen perusteet voi laatua parantaa etenkin hämärässä ja muuten hankalissa olosuhteissa. Kun otat samasta kohteesta pari–kolme kuvaa peräjälkeen, kasvatat mahdollisuuksia sille, että ainakin yksi niistä onnistuu. Vasemmasta laidasta löytyvät työkalut kuvien tuomiseksi ohjelmaan (import). Nyt valittu kuva täyttää ruudun keskialueen, ja alareunaan ilmestyy kuvapalkki, josta voit siirtyä Canon EOS 5D Mark II, digitaalinen järjestelmäkamera (2008) Canon PowerShot A40, digitaalinen kompaktikamera (2002) Canon EOS M, digitaalinen peilitön järjestelmäkamera (2012) Valopöytänäkymä tarjoaa työkalut kuvakokoelman järjestelyyn. Valokuvien käsittely Kun muistikortti on sitten kuvattu täyteen raakakuvia, ne täytyy käsitellä katseltavaan muotoon. Tarkennukseenkin on syytä kiinnittää huomiota. Yleensä tämä tarkoittaa matalaa herkkyyttä ja siten pitkää valotusaikaa. Valitse kuvausparametrit tilanteen mukaan. Suosituin kaupallinen ohjelma on Adobe Lightroom, mutta tässä artikkelissa käytämme avoimen lähdekoodin Darktablea. Useimmat mainitut asiat ovat sovellettavissa myös Lightroomiin. Arkoja kohteita tai nopeasti muuttuvia tilanteita kuvatessa on parasta käyttää lyhyttä valotusaikaa ja pientä aukkoa, jotta yksittäinenkin kuva todennäköisemmin onnistuu. 21 Vinkkejä kuvien ottamiseen Aivan kaikkea ei voi korjata jälkikäsittelyssä. Siksi puuhaan onkin tehty erilliset ohjelmat. Pimiönäkymässä kuvaa voi käsitellä.. Suurimman osan näytöstä täyttää kuvien selailuun käytettävä alue, joka on vielä tyhjä. Darktablen käynnistyessä esillä on valopöytänäkymä (lighttable)
Toimintojen suoritusjärjestys on ennalta määrätty. 2 1 7 . Darktablen valkotasapainotoiminnolle kerrotaan kuvaustilanteessa vallitseva värilämpötila, ja ohjelma korjaa sen perusteella kuvan sävyt neutraaleiksi. Etenkin zoom-objektiiveissa esiintyy myös tynnyritai tyynyvääristymää, jossa suorat viivat kuvan laidoilla kaareutuvat sisääntai ulospäin. Oletusasetus on oikein tarkennetulle kuvalle sopiva. Mittayksikkönä on EV (exposure value), joka on logaritminen ja suhteellinen asteikko. Nämä optiset virheet voidaan kompensoida lähes täydellisesti matemaattisen mallin perusteella, jos objektiivin ominaisuudet tunnetaan. Se toimii kuten herkkyyden säätö kamerassa – valoisuuden lisääminen tuo mukanaan kohinaa. Optiikkakaan ei ole täydellistä. Valitut käsittelytoiminnot suoritetaan lennossa uudestaan joka kerta, kun parametreja muutetaan, ja tulos pidetään muistissa. Seuraavaksi käydään läpi joitakin yleisimpiä toimintoja. Kuvan perushuoltoa Valotuksen säätöä (exposure) voi käyttää alitai ylivalottuneen kuvan korjaamiseen. Käsittelytoiminnot on ryhmitelty viiteen kategoriaan: perustoiminnot (basic), sävyt (tone), värit (color), korjaukset (correction) ja tehosteet (effects). Näiden lisäksi on kaksi metakategoriaa omille suosikkitoiminnoille ja nykyisessä kuvassa aktiivisille toiminnoille. Hyvälläkin kameralla kuvaan päätyy aina hieman kohinaa. Kaikissa objektiiveissa on jonkin verran vinjetointia (vignetting), eli kuvan nurkat ovat keskiosaa tummempia. Vasemmassa reunassa näkyy käsiteltävänä olevan kuvan tiedot ja oikealla mahdolliset käsittelytoiminnot. Parametreja voi säätää eri kokoisille kuvan rakenteille, joten samanaikaisesti voi vaikkapa tasata kuvan eri alueiden kirkkauseroja ja tuoda esiin pieniä yksityiskohtia. Toiminnon voimakkuutta voi säätää erikseen kirkkausja värikohinalle. Sisäisesti toiminto käyttää joko epäpaikallisia keskiarvoja tai aallokemuunnosta. Eri toimintoja voi myös käyttää yhdessä, hyödyntäen kunkin vahvuuksia. Kamera tallentaa raakakuvan metatietoihin oman arvauksensa, joka kelpaa vähintäänkin lähtökohdaksi. Darktablen linssikorjaus-toiminnossa (lens correction) on tietokanta yleisistä objektiiveista, ja usein korjaus onnistuu automaattisesti nappia painamalla. Yliterävöitystä kannattaa välttää, koska se aiheuttaa esineiden ympärille häiritseviä sädekehiä. Darktable kytkeekin terävöityksen päälle ilman eri pyyntöä. Se on erittäin nopea ja tuottaa pienillä kohinamäärillä hyvän lopputuloksen, mutta ei kykene erottelemaan kirkkausja värikohinaa. Raakapikselien kohinanpoisto (raw denoise) suoritetaan ennen raakakuvan Bayer-mosaiikin muuntamista RGB-arvoiksi. Darktable poikkeaa perinteisestä kuvankäsittelyohjelmasta sikäli, että alkuperäiseen kuvatiedostoon ei kosketa. 2 22 kokoelman muihin kuviin. Terävöitys (sharpen) on olennainen toiminto, koska kuvakennolta tuleva pikselidata on aina hiukan pehmeää. Tummaa kuvaa voi yleensä kirkastaa pari–kolme EV:tä laadun säilyessä siedettävänä, mutta yli yhden EV:n ylivalotuksen korjaaminen voi olla vaikeaa. Darktablen ehkä monipuolisin käsittelytoiminto on equalizer. Myös kuvan vihertävyyttä voi säätää, mutta useimmiten se ei ole tarpeen. Algoritmi tosin on raskaampi, ja laskenta kestää pidempään. Oikean valotuksen ohella toinen kuvan luonnollisuudelle tärkeä tekijä on valkotasapaino (white balance). Epäpaikallisiin keskiarvoihin perustuva kohinanpoisto (denoise (nonlocal means)) käyttää raskaampaa algoritmia mutta tuottaa paremman lopputuloksen. Profiloitu kohinanpoisto (denoise (profiled)) sisältää valmiiksi määritellyt parametrit lukuisille eri kameramalleille ja herkkyysarvoille. Yhden EV:n muutos tarkoittaa valomäärän kaksinkertaistumista tai puolittumista. Parametrit tallennetaan kuvatiedoston rinnalle erilliseen tiedostoon. Tästä on hyötyä voimakkaasti kohisevilla kuvilla, koska värikohina on häiritsevämpää ja liiallinen kirkkauskohinan poistaminen tekee kuvasta lattean. Joitakin yleisimmin käytettyjä Darktablen toimintoja.. Sen poistamiseen (denoise) on tarjolla useita eri toimintoja, jotka toimivat hieman eri tavoin. Kääntöpuolena kaikissa on kuvan yksityiskohtien pehmentyminen. Se on aallokemuunnokseen (wavelet transform) perustuva käsittelytoiminto, jolta onnistuu niin kohinanpoisto ja terävöitys kuin kontrastin ja värikkyyden säätö
Raw denoisen kynnysarvoksi sopii 0,04. Se korjaantuu valkotasapainon korjauksella. Darktablen mukana Esimerkki 1. Nämä asetukset voi tallentaa esivalinnoiksi, jolloin niitä on helppo käyttää jatkossa. Lopuksi poistetaan kohina. Jos vastavaloon kuvaamista ei voi välttää, Shadows & Highlights -toiminto auttaa. Aloitamme korjaamalla valotuksen. Seuraavaksi huomaamme kuvan olevan kellertävä, koska se on otettu lämminsävyisessä keinovalossa. Näkymän vasen reuna vastaa kuvan laajoja alueita, oikea reuna pieniä yksityiskohtia. Esimerkki 2. Käytämme kohinanpoistoon raw denoiseja equalizer-toimintojen yhdistelmää. Ilman salamaa otettu kuva on valotuksen korjaamisen jälkeen kellertävä. Jos todellisuudelle uskollinen kuva ei miellytä, siitä voi tehdä mielenkiintoisemman tehosteilla. Koska nostimme valotusta merkittävästi, kuva on nyt huomattavan kohinainen. Ihmisen näköjärjestelmä havaitsee kirkkauden ja värisävyjen vaihteluita eri tavoin, joten näille on usein järkevää käyttää erilaisia asetuksia. Värilämpötila on laskettava noin 2000 kelviniin. 23 Equalizerin käyttöliittymän pääkomponentti on käyränäkymä. Käyränäkymän yläpuolella on kolme painiketta: valoisuus (luma), värit (chroma) ja reunat (edges). Neutraalin keskikohdan yläpuolella korostetaan kyseisen kokoisia piirteitä, alapuolella vaimennetaan niitä. Myös joillekin korjaustoiminnoille löytyy vaihtoehtoisia käyttötarkoituksia tehosteina. Kullakin näistä on omat käyränsä. Myös kokonaisvalotusta on tarpeen laskea hieman. Käytännön esimerkkejä Katsokaamme lopuksi vielä muutama käytännön esimerkki. Monissa toiminnoissa tulee valmiina joukko esivalintoja, joista voi hakea vinkkejä toimintojen käyttöön. Viimeistele poistamalla kohina.. Tarjolla on laaja valikoima erilaisia taiteellisia toimintoja, joista suurin osa perustuu värien muokkaamiseen eri tavoin. Käyrän pisteitä voi raahata hiirellä pystysuunnassa. Etenkin equalizerilla saa aikaan todella näyttäviä tuloksia. Esimerkki 1 on pahasti alivalottunut. Esimerkkikuvalle sopiva arvo on +2 EV. Kourallisen kuvia käsiteltyään alkaa saada tuntuman siitä, mitkä asetukset sopivat omalle kameralle ja miellyttävät omaa silmää. Valkotasapainon korjauksessa auttaa ikkunan oikeassa ylänurkassa oleva histogrammi. Näkymän alareunassa on toinen, kohinatasoon vaikuttava käyrä. Näin voi käydä hämärissä olosuhteissa ilman salamaa, tai jos salama ei välähdä toivotusti esimerkiksi paristojen loppumisen takia
Kytkemme aluksi linssikorjaustoiminnon päälle. Lopuksi poistamme kohinan ja suoristamme kuvan. Seuraavaksi korjaamme värilämpötilaksi noin 2250 kelviniä. Tässä tilanteessa emme voi yksinkertaisesti nostaa koko kuvan valotusta, koska se polttaisi ikkunasta näkyvän maiseman sekä trollin yläosat puhki. Sopivat arvot ovat valotus -0,5 EV, varjojen korjaus +75 ja korostusten korjaus -30. 2 EV:n suodin -90 asteen kulmassa tuottaa silmää miellyttävän lopputuloksen. Esimerkissä 3 on Skrollissa 2016.1 julkaistu pienoisrautatiekokoelman kuva, jonka käsittelystä sain idean tämän jutun tekemiseen. Vinoutta ei ole kuin puoli astetta, mutta tiiliseinän saumasta se erottuu selvästi. Kuva jää hieman tummaksi, joten nostamme valotusta 0,7 EV:n verran. Tässä esitetyt kuvat asetuksineen voi ladata Skrollin sivuilta osoitteesta skrolli.fi/numerot. Darktablen käyttöoppaasta löytyy ohjeita ja esimerkkejä myös muille kuin tässä esitellyille toiminnoille: www.darktable.org/usermanual/index. Niinpä teemme siitä kevennetyn version. Pimeänä talvi-iltana otettu kuva kärsii myös linssivääristymästä. Hätiin tulee varjot ja korostukset -toiminto (shadows and highlights). Vastavaloon kuvaamista kannattaa pyrkiä välttämään, mutta joskus se ei onnistu. 2 24 toimitettava equalizerin esivalinta ”denoise & sharpen” on sopiva lähtökohta, mutta sellaisenaan turhan voimakas. Kuvan reunojen lähellä suorista linjoistakin on tullut kaarevia objektiivin vääristymien takia. Aivan ääripäihin se ei pure, joten ikkunan tummentamiseksi laskemme myös kokonaisvalotusta hieman. Ensivaikutelma on varsin epäonnistunut: keinovalosta johtuen kuva on kauttaaltaan keltainen ja sen oikea laita on huomattavasti vasenta vaaleampi. Vaan eipä masennuta vielä, vaan katsotaan, mitä käsittelyllä saa aikaan. Kuva on otettu pimeänä talvi-iltana, pienellä aukolla ja peräti kuuden sekunnin valotusajalla. Valaistuksen epätasaisuutta voi säätää harmaasuotimella.. Se suoristaa kuvan linjat ja kirkastaa nurkkia hieman. Kohinanpoisto onnistuu samoin kuin edellisessä kuvassa. Valaistuksen epätasaisuuden voimme kompensoida käyttämällä liukusävytettyä harmaasuodinta (graduated density). 2 1 7 . Lopputulos on kuin paraskin studiokuva. Esimerkissä 2 Skrolli-trolli istuu tietoteknisen klassikon päällä. html.php Esimerkki 3. Pahaksi onneksi trollin takana olevasta ikkunasta avautuu näkymä kirkkaaseen ulkoilmaan ja trolli istuimineen on alivalottunut
Toisekseen Daydream-tuki on tulossa tänä kesänä Samsungin Galaxy S8 -puhelinperheelle. Gear VR -ilotikun voi myös ostaa erikseen vanhemmille silmikoille. Ratkaisuna 1980-luvun tietokoneisiin onkin saatavilla kattava joukko uudempia massamuistiratkaisuja, joiden hinta vaihtelee muutamasta kympistä useampaan sataseen. SD-512 liitetään MSX-koneen moduuliporttiin. Moduulin kytkemisen jälkeen MSX käynnistyy suoraan tiedostoselaimeen, josta valitaan haluttu ohjelma peliohjaimella. Ismo Utriainen Lyhyet. Gear VR:n ohjain on pääosin samanlainen kuin Googlen ohjain, vain hieman ergonomisempi. Sitten MSX-pelit ja -ohjelmat tallennetaan kansioihin muistikortille. 25 Virtuaalirintamalta jotain uutta Skrolli on seurannut Samsung/Oculuksen ja Googlen johtamien virtuaalitodellisuusliittoumien irrallista, mutta samansuuntaista kehitystä (ks. Pelit ja ohjelmat on nyt helpompi sovittaa molemmille. Vaikka S8:n pikselitiheys ei ole olennaisesti muuttunut, leveämpi wqhd+ -näyttö laventaa näkökenttää ja lisätehot auttavat. Valmistelut tehdään 2000-luvun koneella: SD-muistikortti alustetaan käyttämään FAT32-tiedostojärjestelmää ja sinne puretaan SD512:n ohjelmisto. Vielä lienee ennenaikaista julistaa mobiilikeinotodellisuuden alustasotaa päättyneeksi (saati kunnolla edes alkaneeksi), mutta tervetullutta lähentymistä on tapahtumassa Samsungin Gear VR ja Googlen Daydream-alustojen välillä. Laseja on muilta osin tuunattu vain vähän ja niitä voi käyttää entiseen tapaan ilman ohjaintakin. Janne Sirén SD-512 – MSX muistikorttiaikaan V anhojen tietokoneiden harrastamisen suurin este on usein sisällön siirtäminen ullakolta tai verkkokirppikseltä löytyneeseen koneeseen. Kerroimme hiljattain ratkaisuista Commodore 64:lle (katso Skrolli 2017.1), ja nyt vuorossa on Microsoftin kotitietokonealusta MSX. Kotimikrot käyttivät levykkeitä tai kasetteja, jotka tuppaavat nykymittapuulla olemaan hitaita, hankalia hankkia ja yhä epäluotettavampia. SD-512:ta myy 8bits4ever.net 70 euron hintaan. Skrolli kokeili Samsungin uusittua Gear VR -silmikkoa lisäohjaimella sekä Samsung Galaxy S8:aa. 2016.2 ja 2017.1). Ensinnäkin Samsung on keväällä tuonut Gear VR -alustalle Daydream-ohjaimen (kuvassa yllä) kaltaisen Gear VR Controllerin (alla), mikä on tervetullutta molempia alustoja kosiskeleville kehittäjille. Tarvittavien silmikkojen määrää uutinen ei valitettavasti tule vähentämään – Daydream vaatii edelleen omat lasinsa. Lisäksi alla oleva ylimääräinen liipasin tekee ampumisesta ja tarttumisesta helpompaa. Sisartuotteilla CF640, ATA-620 ja FDC-600 myös Compact Flash -muistikortit, kiintolevyt ja pc-levykeasemat kytkeytyvät MSX:ään. Edelleen parasta mobiili-vr:ää. Rauta ylittää jo vaatimukset, mutta ohjelmistopuolella valmistajien on vielä tanssittava tanssinsa. Siinä on kaksi korttipaikkaa (yksi kumpaakin kokoa) sekä 512 kilotavun muisti, joka toimii tarvittaessa myös MSX:n lisämuistina. SD-512 on MSX/MSX2/MSX2+/Turbo-R-yhteensopiva laajennus, jolla MSX-standardin mukaiset koneet voivat käyttää ohjelmia SDja microSD-muistikorteilta
Teksti: Jarkko Lehti Kuvat: Kimmo Rinta-Pollari, Jarkko Lehti. Tähän innostuksen lähde oli niin sanottu RTL-SDR-ajuri, jolla saadaan halvoista Realtekin 2832U-piirin sisältävistä USB-väylään liitettävistä digi-TVja FM-radiovastaanottimista raakadata pihalle ohjelmallista dekoodausta varten. 2 1 7 . Lähtökohta on tuore sd-kortille kirjoitettu Raspbian ja ensimmäinen käynnistys. Olen jo pienestä asti ollut kiinnostunut radiosta. Pisteenä i:n päälle niitä on tullut hankittua lisää aina uuden version ilmestyessä, arkipäivän Sulo Vilénin tavoin ohittamattoman tarjouksen noustessa esiin. Kun salasanaa kysytään, kirjoita sama kuin edellä. Jokunen vuosi sitten alkoi netissä kuulua kovasti hypeä softaradioista, missä radiolähetys otetaan tietokoneelle vastaan raakana ja ohjelmallisesti sitten dekoodataan sieltä halutussa formaatissa lähetys ulos. Käyttäjätunnus on pi ja salasana raspberry. Myöhemmin minulle selvisi, että kyseessä oli datalähetyksiä, mutta mitään konstia niiden dekoodaamiseen minulla ei aikanaan ollut. Seuraavaksi päivitämme käyttöjärjestelmän ja Raspberry Pi’n firmwaren ajan tasalle syöttämällä seuraavat komennot: Vastaa myöntävästi kysymyksiin. Kirjaudu sisään komentoriviltä. Tyypillisesti noin 20 dollarin laitteella saatiin tehtyä sama kuin huomattavasti kalliimmilla ammattilaitteilla. Tähän tarjosi vastauksen netin Flightradar-palvelu, jossa lentokoneita pystyy seuraamaan kartalla ja niitä klikkaamalla saamaan tarkempia tietoja lennoista. Olen myös aina katsellut taivaalla lentäviä lentokoneita mielenkiinnolla ja miettinyt, mihin mikin kone on matkalla. Lukuisten puheja musiikkikanavien lisäksi sieltä kuului monenlaista piipitystä ja pulputusta. Muistan lapsena kuunnelleeni pimeinä talvi-iltoina vanhasta putkiradiosta lyhytaaltoalueita. 2 26 Tekniikka A ika monella meistä on Raspberry Pi hankittuna kovan innostuksen saattelemana, mutta varmasti monella, niin kuin itsellänikin se kuitenkin jäi pölyttymään pöytälaatikkoon. Niinpä innostuskin hiipui pitkäksi aikaa. Vuodet vierivät ja tietotekniikan tarjoamat mahdollisuudet paranivat, joskin myös lyhytaaltoalueet hiljenivät niin, ettei niiltä nykyään kuule juuri muuta kuin kiinalaisia ja venäläisiä lähetyksiä, pulputuksesta puhumattakaan. Vattututkan asennukseen Ensimmäiseksi Raspberry Pi -koneen Raspbian-käyttöjärjestelmälle asennetaan toimiva ympäristö. Tätä samaa prosessia voi käyttää aika pitkälle minkä tahansa muunkin Linux-jakelun kanssa olettaen, että jakelu tarjoaa tarvittavat paketit. Tämä alkoi kiehtoa niin paljon, että päätin ottaa selvää, miten voisin itse seurailla kotikoneellani lentokoneita. Hommattuani Ebaysta soveltuvan RTL-SDR-vastaanottimen mietin, että tähän käyttöönhän on järkevintä valjastaa pöytälaatikossa yksinäisyyttään itkenyt Raspberry Pi 2. Aloin kuitenkin ihmetellä, mistä tämä data tulee, ja yllätyin kovasti kun tajusin, että data tulee ihmisten kotikoneilta, jotka kuuntelevat lentoliikennettä ja välittävät sen palveluun prosessointia varten. sudo apt update sudo apt upgrade sudo apt install rpi-update sudo rpi-update sudo reboot Bootin jälkeen kirjaudu sisään ja jatka komennolla sudo apt install rtl-sdr Kytke RTL-SDR-vastaanotin USBliittimeen ja kirjoita: rtl_test Vattukoneella lentoja seuraamaan Raspberry Pi -pikkutietokone, muutama ohjelmisto ja kourallinen edullisia lisäosia loihtivat ruudulle kartan lähistöllä liikkuvista lentokoneista
Tässä tapauksessa: 299 792 458 m/s / 1090 000 000 Hz . Koska vastaanottimen mukana tullut antenni on lyhyempi kuin tämä, järkevintä on käyttää ¼ aallon mittaista antennia, jolloin pituudeksi saadaan noin 6,9 cm. Vastaanottopäässä ei kuitenkaan ole ihan niin tarkkaa antennin oikea mitoitus kuin lähetyspäässä. Linkkejä • osmocom.org/projects/sdr/wiki/Rtl-sdr • github.com/MalcolmRobb/dump1090 • www.flightradar24.com/ Kotitekoisella antennilla voi parantaa signaalien löytymistä.. Osoite on yleensä lähiverkossa http://raspberrypi:8080/, jos reititin osaa määritellä nimet paikallisverkon osoitteille. Seuraavaksi asennetaan varsinaisen ohjelman lentokoneiden seuraamista varten. Tietoa löytyy esimerkiksi siitä, miten voit itse ottaa osaa Flightradar-palveluun lähettämällä omat havaintosi koneista. Koska lentokoneen lähetin sykkii 1090 megahertsin taajuudella eli 1090 miljoonaa kertaa sekunnissa ylös ja alas, voit kuvitella, miten lähettimen antennista lähtevä naru tekee samaa. Signaalin aallonpituus voidaan laskea jakamalla valonnopeus metreinä sekunnissa signaalin taajuudella. Katkaisemalla mukana toimitettu antenni 6,9 sentin mittaiseksi siitä saa siis teoriassa paremman. Jos ei, sinun pitää käyttää ip-osoitetta, esimerkiksi Raspberry Pi -koneen oman graafisen käyttöliittymän kautta http://127.0.0.1:8080/ Antenneista Digi-TV-vastaanottimen mukana toimitetaan tyypillisesti jonkinlainen piiska-antenni, joka ei ole kovinkaan hyvä, mutta myös sillä on mahdollista vastaanottaa 1090 megahertsin taajuusaluetta. Se pitää asentaa lähdekoodista, joten jatka näillä komennoilla: sudo apt install git git clone git://github.com/ MalcolmRobb/dump1090.git cd dump1090 sudo apt install librtlsdr-dev sudo apt install libusb-1.0-0dev make Jos kaikki meni niin kuin Strömsössä, meillä on nyt käännettynä dump1090-sovellus joka vastaanottaa dataa 1090 megahertsin taajuudella, dekoodaa sen ja visualisoi havaitut lentokoneet kartalla. Sitä voisi vielä parantaa lisäämällä neljä maatasopiikkiä liittimen alaosaan. Antennia voi hieman parantaa virittämällä se oikealle taajuusalueelle katkaisemalla se oikean mittaiseksi. Tämä on helppo testata mikroaaltouunissa: jos kotelo lämpenee mikroaaltouunissa, se ei sovellu sääsuojaksi. Saamme ohjelman käyntiin kirjoittamalla ./dump1090 --interactive --net --net-http-port 8080 Ota nettiselaimella yhteys Raspberry Pi’n IP-osoitteeseen porttiin 8080. Toinen vaihtoehto on rakentaa itse soveltuva antenni, jolloin ainakin itse olen päässyt huomattavasti parempiin tuloksiin. Internetistä löytyy runsaasti aiheesta informaatiota. Kotelointia tehdessä tulee ottaa huomioon, ettei kotelon materiaali saa vastustaa radiosäteilyä. Samaten on tietoa parempien antennien rakentamisesta ja jopa siitä, miten itse vastaanotinta voi muokata paremmaksi. Näin voit katsella karttanäkymää, jossa lentokoneiden pitäisi näkyä – olettaen, että antenni saa vastaanotettua signaaleja. 0,275 m, eli yhden aallon pituus on 27,5 cm. Ymmärtääksesi paremmin antennia tai pikemminkin radioaaltoja voit mielessäsi visualisoida, miten antenni lähettää maailmalle valonnopeudella etenevää ”narua”, joka aaltoilee siniaaltona. 27 Seuraavaksi järjestelmä ilmoittaa löytäneensä soveltuvan vastaanottimen ja kertoo siitä tietoja: Found 1 device(s): 0: Realtek, RTL2838UHIDIR, SN: 00000060 Using device 0: Generic RTL2832U OEM Found Elonics E4000 tuner Supported gain values (14): -1.0 1.5 4.0 6.5 9.0 11.5 14.0 16.5 19.0 21.5 24.0 29.0 34.0 42.0 Sampling at 2048000 S/s. Parhaiten vastaanottoa parantaisi antennin vieminen ulos talon katolle, jolloin se pitäisi koteloida säänkestäväksi. Oheisen kuvan mukainen antenni on koottu juottamalla liitinrunkoon kahden millimetrin kupariputkea
Kehitysalustan hankinta NodeMCU-alustojen hinnat lähtevät verkkohuutokaupoissa postikuluineen noin kolmesta eurosta ylöspäin. Jutussa tehtiin yksinkertainen IoT-laite ESP8266:sta Arduino IDE:llä. Jos esimerkiksi haluat keskustella NodeMCU:lla jonkin laitteen kanssa I²C:tä, ruksaa I²C jne. Tällöin se todennäköisesti sisältää kaikki tarvittavat toiminnot ja neljän megatavun flash-muistin. Perustoiminnot on valmiiksi ruksattu, mutta tässä jutussa käytetään perustoimintojen lisäksi end user setup-, HTTP-, MQTTja WS2812-moduuleita, joten ne kannattaa ruksata mukaan (ks. Itse käytän usein DHT-lämpötila-/ kosteusanturia, joten ruksin yleensä myös sen. com ja anna sähköpostiosoite. Kuva 1). Mene siis sivulle nodemcu-build. ESP-01ja ESP-201-moduuleissa on vain 512 kilotavun flash-muisti. Kaikkia ohjelmistomoduuleita ei kannata tai edes voi sisällyttää muistirajoitusten takia. NodeMCU:ta on mahdollista käyttää myös 512 kilotavun flash-muistilla, mutta pieni flashmuisti voi joissain tapauksissa aiheuttaa rajoitteita. Moduulien vieressä on pieni kirjasymboli linkkinä moduulin tietoihin, ja monet moduuleista ovat sellaisia, että niiden tarpeen tietää selkeästi siinä vaiheessa kun on tekemässä jotakin. NodeMCU-kehitysalusta NodeMCU on ESP8266:een perustuva IoT-kehitysalusta. ESP8266 on halpa mikrokontrolleri, jossa on WLAN-ominaisuudet sisäänrakennettuna. ESP-moduulina siinä on ESP-12, jonka tärkein ero verrattuna yksinkertaisempiin ESP01ja ESP-201-moduuleihin on neljän megatavun flash-muisti. Jos haluaa fyysisesti erityisen pienen kehitysalustan, hyvä hakulauseke on ”WeMos D1 mini”. NodeMCU-kehitysalusta on yksinkertaisempia moduuleita huomattavasti helpompi ottaa käyttöön, koska NodeMCU:ssa on microUSBportti, joten ohjelmointiin tarvitaan vain tietokone ja microUSB-kaapeli. Kyseisellä sivulla tehdään valinnat, mitä ohjelmistomoduuleita firmwareen halutaan mukaan. Teksti: Jarno Lehtinen Kuvat: Sakari Leppä, Jarno Lehtinen S krollin numerossa 2017.1 kävimme läpi NodeREDiä, jolla IoT-laitteita on kätevä yhdistää kokonaisuuksiksi. 2 28 Innostuitko esineiden internetistä. ”Start your build” -napin painamisen jälkeen menee muutamia minuutKoodi NodeMCU avain esineverkkoon Rakenna oma laite ESP8266:sta. 2 1 7 . NodeMCU:ssa on etuvastuksella varustettu LED valmiina nastassa D4, joten NodeMCU:n käytön voi aloittaa ilman muita lisähankintoja. Tavallisiin ESP8266-moduuleihin verrattuna NodeMCU-kehitysalustassa on ESP8266:n lisäksi valmiina muun muassa USB-sarjaporttiadapteri ja jänniteregulaattori ESP:n tarvitsemaa 3,3 voltin käyttöjännitettä varten, sekä automaattinen ohjelmointitilaan siirtymisominaisuus sarjaportin RTSja DTR-signaalien avulla. Se pitää sisällään valmiin ESP8266-moduulin sisältävän piirilevyn ja siihen asennettavan laiteohjelmiston eli firmwaren. Hommaan on kuitenkin helppokäyttöinen www-sivu, jossa tarvitaan vain sähköpostiosoite valmista firmwarea varten. Hyviä hakusanoja ovat NodeMCU, Lua ja ”development module board”. Joidenkin ESP-01-mallien kohdalla voi olla vähän harhaanjohtavasti maininta NodeMCU:sta, mutta selkeintä on varmistaa, että tuotteesta löytyy microUSB-portti. Viime numerossa neuvoimme alkuun, tällä kertaa tarjolla on hieman edistyneempää rakentelua NodeMCU-alustan avulla. Firmwaren hankinta NodeMCU-firmwarea ei ole valmiina ladattavana, vaan se räätälöidään tapauskohtaisesti. Tässä jutussa tutustumme tarkemmin ESP8266:een ja käymme läpi yhden vaihtoehdon esineverkon laitteiden lähtökohdaksi: NodeMCU ja Lua-ohjelmointikieli
Alussa ESPlorer saattaa vaikuttaa sekavalta ja omalaatuiselta, mutta siitä tarvitaan normaalikäytössä vain muutamia toimintoja (ks. Toinen versioista on kokonaislukuversio (integer) ja toisessa on mukana liukuluvut (float). Niiden koko on yleensä alle puoli megatavua kappale. Firmwaren flashäys onnistuu myös esptool.py-nimisellä komentoriviltä käytettävälllä ohjelmalla, joka toimii Windowsilla, Linuxilla ja MacOS:llä. Suosittelen käyttämään flash-muistin tyhjennysoptiota, koska monet ESP8266:n omat sisäiset asetukset sijaitsevat flashmuistilla ja ne nollautuvat vain tyhjentämällä koko flash-muistin. Jos Python on asennettu, asentuu esptool käskyllä pip install esptool Flash-muistin tyhjennys ja firmwaren kirjoitus tapahtuu seuraavilla komennoilla: esptool.py --port /dev/ttyUSB0 erase_flash esptool.py --port /dev/ttyUSB0 write_flash 0x00000 firmware_ tiedoston_nimi.bin IFTTT-nappi ESPlorerilla Vaikka NodeMCU:ta voisi periaatteessa käyttää pelkästään tavallisella terminaaliohjelmalla, on ohjelmointiin kätevämpi käyttää ohjelmointityökalua. Se tarvitsee toimiakseen Pythonin. Se löytyy osoitteesta github.com/marcelstoer/ nodemcu-pyflasher/releases. Vanhat asetukset voivat joissain tapauksissa aiheuttaa epävakautta ja kummallisia ongelmia, jos vaikkapa jonkin vanhemman tai täysin erilaisen firmwaren asetukset ovat jääneet käyttöön. Jos kirjoitit juuri firmwaren, NodeMCU alustaa flashmuistissa olevan tiedostojärjestelmää noin kymmenen sekuntia, eikä vastaa tänä aikana käskyihin. Firmware-moduulit. 29 teja, jonka jälkeen sähköpostiin kolahtaa kaksi firmware-tiedostoa. Kun yhteys on syntynyt ja tiedostojärjestelmä alustettu, voit antaa käskyjä suoraan alhaalla Kuva 1. Ohjelma ei vaadi mitään erityistä asennusta, vaan sen voi käynnistää suoraan exetiedostosta. Liukulukuversio vie hiukan enemmän muistia, mutta yleensä se ei ole ongelma, joten tässä jutussa käytetään liukulukuja tukevaa versiota. NodeMCU-firmwaren asennus Pitkään NodeMCU-firmwaren kirjoittaminen muistiin oli melko monivaiheinen juttu, mutta vuoden 2017 alussa tuli Windowsille erittäin helppokäyttöinen ohjelma. PyFlasher-ohjelma.. Valitse NodeMCU:n sarjaportti ja paina sarjaporttivalinnan alapuolella olevaa Open-nappia. (Ks. Kuva 2. Kuva 3). Ohjelman voi ladata osoitteesta esp8266.ru/esplorer/. ESPlorer on käytetyin ja monipuolisin ilmainen NodeMCU-ohjelmointityökalu. kuva 2.) Nopeudeksi voi laittaa nopeimman 921 600 bps, ja koska NodeMCU-moduuleissa on neljän megan flash-muisti, flash-modeksi valitaan dio
Tämä on yleensä turhaa, koska ESP8266 tallentaa asetukset flashmuistiin. 2 30 olevaan tekstikenttään. Tee uusi IFTTT-Applet, jonka Thistoiminnoksi valitse Maker Webhooks ja laukaisimeksi Receive a web request. Itse käytän testaukseen yleensä Google Driveä ja Add row to spreadsheet -toimintoa. Kirjoita tai kopioi seuraava ohjelma ohjelmaeditoriin: local nappi = 3 -NodeMCU:n Flash-nappi local event = "nappi" -IFTTT:n tapahtuman nimi local key = "xxxxxxxxxxxxxxxxxxxxxx" -henkilökohtainen IFTTT-avain local lukko = false -"debounce"-muuttuja gpio.mode(nappi, gpio.INT) -I/O-pinnin keskeytys päälle gpio.trig(nappi, "down", function() -kun nappia painetaan, suoritetaan HTTPpyyntö IFTTT:lle if not lukko then http.get("http://maker. Ne kaikki noudattavat ESP8266:n flash-muistin muistirakennetta ja tallettavat asetukset samaan paikkaan. Anna tapahtumalle nimi nappi. ESP8266 ja langattoman verkon asetukset Olen huomannut, että yksi langattoman IoT-laitteen käyttökelpoisuuteen eniten vaikuttavista tekijöistä on langattoman verkon nimen ja salasanan syöttö ja hallinta. Tällä kertaa jätämme ledin vilkuttelun myöhemmäksi ja teemme suoraan hyödyllisen ohjelman. Edellisen numeron jutun kirjoittamisen jälkeen muutama IFTTT:n käyttämä termi on muuttunut. Avain on URL:ssa näkyvä merkkijono. Emme nimittäin ole vielä määrittäneet langattoman verkon asetuksia. Tämä vastaa samaa kuin että ottaisit yhteyden tavallisella terminaaliohjelmalla ja antaisit käskyjä sen kautta. Reseptit ovat nykyään Appletteja ja Maker-palvelun nimi on Maker Webhooks. Jos siis olet millä tahansa edellä mainituista jo kerran asettanut langattoman verkon asetukset, ne säilyvät flash-muistissa, ellei niitä erikseen tyhjennä. "/with/key/" .. Anna kaksi asetuskäskyä ESPlorerin alareunassa olevaan tekstikenttään: wifi.setmode(wifi.STATION) wifi.sta.config("wlan_verkkosi_ nimi","wlan_verkkosi_salasana") Ensimmäinen käsky määrittää ESP8266:n ottamaan yhteyttä tukiasemaan, eikä toimimaan itse tukiasemana. Siksi muutama sananen langattoman verkon asetuksista. Jos et vielä ole käyttänyt IFTTT:tä, mene osoitteeseen ifttt.com ja rekisteröidy. Tämä on hyvä tiedostaa jo tietoturvankin kannalta, koska asetukset on helppo lukea esimerkiksi esptool.py:llä, jos IoT-laitteeseen pääsee fyysisesti käsiksi. Wemos D1 minissä ei ole valmiina flash-nappia, joten sen kanssa pitää yhdistää hetkellisesti D3-nasta maahan. ifttt.com/trigger/" .. Monesti netistä löytyvissä esimerkeissä langattoman verkon asetukset on kovakoodattu ohjelmaan, eli kirjoitettu suoraan ohjelmalistaukseen. ALARM_SINGLE, function() lukko = false -vapautetaan lukko 1s päästä end) end end) Korvaa key-muuttuja henkilökohtaisella IFTTT-avaimellasi. Kun ohjelma on kirjoitettu, paina Save-nappia, jonka jälkeen ESPlorer kysyy tiedostolle nimeä. Anna tiedostolle nimi init.lua. Asetukset tallentuvat ESP8266-moduulin flash-muistiin, joten asetukset tarvitsee antaa vain kerran tai kun WiFi-verkon asetuksia halutaan muuttaa. ESPlorer-ohjelmisto.. Kolme ehkä yleisintä tapaa ohjelmoida ESP8266:tta ovat AI-Thinker (nk. Voit kokeilla nyt painaa NodeMCUmoduulin flash-nappia, mutta tuloksena on muutaman sekunnin päästä sarjaporttikonsoliin ilmestyvä virheilmoitus HTTP client: DNS failed for maker.ifttt.com. key) print("Nappi!") lukko = true tmr.alarm(0, 1000, tmr. 2 1 7 . Valitse sitten Maker Webhooks ja oikeasta ylänurkasta Settings. Thattoiminnolle voit valita minkä tahansa haluamasi toiminnon. event .. Langattoman verkon asetukset vievät 128 tavua ja ne sijaitsevat osoitteessa, joka on 0x8000 tavua flash-muistin lopusta. Ohjelma käyttää IFTTT-palvelua, jonka käyttöä käytiin läpi Skrollin numerossa 2017.1 NodeRED-jutun yhteydessä. Voit kirjoittaa sinne esimerkiksi print("Hei Skrolli!") jonka NodeMCU tulostaa sarjaporttikonsoliin. Ohjelma tallentuu tietokoneelle, mutta lisäksi ESPlorer tallentaa sen myös ESP8266-moduulin flash-muistiin ja lopuksi ajaa ohjelman. 4 Mt:n Kuva 3. Nyt flash-napin painalluksen pitäisi laukaista IFTTT:hen määrittelemäsi toiminto, esimerkiksi lisätä rivi Google Docs -taulukkolaskentatiedostoon. Maanasta on merkitty piirilevylle G-kirjaimella. Avaimen saat esimerkiksi IFTTT:n sivuilta painamalla oikeasta ylänurkasta käyttäjän nimeä ja valitsemalla avautuvasta valikosta Services. AT-firmware), Arduino IDE ja NodeMCU. Peruskokeilussa ne on helppo kirjoittaa osaksi varsinaista ohjelmaa, mutta ajatus siitä, että laitteen siirto tai vaikkapa langattoman verkon salasanan vaihto vaatisi koodimuutoksen ja uudelleenohjelmoinnin, tuntuu ikävältä
Itse olen käyttänyt Android-kännykällä Serial USB Terminal -ohjelmaa. D4 GPIO2 Pitää olla ylhäällä bootatessa. Sen voi tehdä myös kännykällä tai tabletilla ja muutaman euron OTG-adapterilla. Joissain moduuleissa user-nappi. Selitys on melko nerokas informaatio on koodattu pakettien pituuteen. I/O-pinnien jännite on 3,3 volttia. Kun toiminto on käynnistetty, kännykällä otetaan yhteyttä ESP8266:n luomaan langattomaan tukiasemaan ja sitten kännykän selaimella mennään mille tahansa verkkosivuille. Ei PWM:ää. Pitää olla alhaalla bootatessa normaalisti. Kaikki verkkosivuosoitteet johtavat ESP8266:n asetussivulle, jossa tiedot voidaan syöttää. Pitää olla ylhäällä bootatessa normaalisti. SmartConfig perustuu kännykkäohjelmaan, jolla asetukset syötetään. Taulukko 1. Tämä ratkaisu on käytössä monissa kaupallisissa tuotteissa ja se on siinä mielessä yksinkertaisin, että kännykän lisäksi mitään erillisiä johtoja tai ohjelmia ei tarvita. Olen huomannut, että tämä tapa on hieman epävakaa ja vaatii toisinaan useita yrityksiä, mutta aina asetusten teko on loppujen lopuksi onnistunut. D1 GPIO5 D2 GPIO4 D3 GPIO0 Flash-moodi. D5 GPIO14 D6 GPIO12 D7 GPIO13 Sarjaportin vuonohjausta käytettäessä CTS. Toinen vaihtoehto on luoda ESP8266:sta tukiasema www-palvelimella, johon voi ottaa yhteyden esimerkiksi puhelimella ja antaa langattoman verkon tiedot. Vaikka salaus vaikuttaa myös pakettien kokoon, niin silti salatun paketin kokoon pystyy vaikuttamaan lähetyspäässä riittävästi, jotta informaatiota saadaan siirrettyä pakettikokoa vaihtelemalla. Kännykkäsovellus lähettää UDPpaketteja broadcast-osoitteeseen. Valmis SmartConfig-kirjasto löytyy Arduino IDE:lle, mutta NodeMCU:lla sen käyttö vaatii itse käännettyä firmwarea. Temppu perustuu ESP8266:n kykyyn haistella verkkoliikennettä, mutta miten salatusta langattoman verkon liikenteestä voisi saada mitään dataa ilman että tietää salausavainta. SmartConfig on tuotu ESP8266:lle TI:n CC3000:sta. D9 GPIO3 Sarjaportin RX. D8 GPIO15 Boottilähteen valinta. NodeMCU-firmwaren sarjaportin oletusnopeus on 115200 bps. NodeMCU-moduulin merkintä (Lua) GPIO (Arduino IDE) D0 GPIO16 Ei tue keskeytyksiä. Kännykkä ei nimittäin siirry toiseen langattomaan verkkoon ja silti jotenkin mystisellä tavalla tietoa siirtyy ESP8266:een, jolla ei kyseisessä tilanteessa ole langattoman verkon tietoja. Flash-nappi NodeMCU-moduulissa. Tekemällä 128 tavua pitkän tiedoston blank.bin , joka sisältää pelkkää 0xff:ää, pelkkien verkkoasetusten tyhjennys tapahtuu 4 Mt:n flash-muistista käskyllä esptool.py --port COM15 write_ flash 0x3fe000 blank.bin Asetusten antamiseen/muuttamiseen on muutamia erilaisia järjestelmiä, mutta NodeMCU:n tapauksessa homma hoituu yksinkertaisimmillaan tietokoneella ja terminaaliohjelmalla. 31 flash-muistilla varustetun ESP8266:n verkkoasetukset voi lukea käskyllä esptool.py --port COM15 read_ flash 0x3fe000 128 wifiasetukset. Taulukkoon on kerätty numeroiden vastaavuudet ja joidenkin pinnien kaksoismerkitys. Turvallisia valintoja ovat siis vain D1, D2, D5, D6, D7. bin Jos flash-muistin koko on 512 kt, vaihda osoitteeksi 0x7e000. Yksi ongelmista on se, että kun kännykkä huomaa, että ESP8266:n luoman tukiaseman kautta ei pääse internetiin, se saattaa vaihtaa automaattisesti internetiin johtavaan tukiasemaan. Muitakin pinnejä voi yleensä käyttää, kunhan on tietoinen niiden rajoituksista. ESP8266 ei pysty näkemään salatusta datasta edes pakettityyppiä, puhumattakaan paketin sisällöstä, mutta pakettien koon ESP8266 pystyy näkemään. Ohjelma löytyy Google Play -kaupasta esimerkiksi nimellä ESP8266 SmartConfig. D10 GPIO1 Sarjaportin TX. Käytetään syväunesta heräämiseen kytkemällä tämä RST:hen. Verkkoasetukset muutetaan ja talletetaan käskyllä: wifi.sta.config("wlan_verkkosi_ nimi","wlan_verkkosi_salasana") Hommaa voi yksinkertaistaa sisällyttämällä rivin w = wifi.sta.config init.lua-tiedostoon, jolloin asetuksien muuttamiseen riittää w("wlan_verkkosi_nimi","wlan_ verkkosi_salasana") Asetukset päivittyvät heti ja ESP8266 rupeaa välittömästi muodostamaan yhteyttä, eikä uudelleenkäynnistystä välttämättä tarvita. NodeMCU:ssa tätä varten on olemassa enduser setup -moduuli. Kun SmartConfigia kokeilee, tuntuu kuin tapahtuisi jotain yliluonnollista. Täydellistä varmuutta siitä, sietävätkö I/O-pinnit 5 voltin signaalia, en ole löytänyt. Sarjaportin vuonohjausta käytettäessä RTS. I/O-pinnit.. I/O-pinnit I/O-pinnien numerointi saattaa aiheuttaa joskus sekaannuksia. Numerointeja on käytössä ainakin kolmea erilaista: ESP8266-piirin jalkojen numerointi, GPIO-numerointi ja NodeMCU-moduulin piirilevylle painettu D-numerointi. Lua-ohjelmakoodissa käytetään samoja numeroita kuin on painettu NodeMCU-moduuliin. Järjestelmässä on kaksi heikkoutta: ESP8266 ei pysty kuuntelemaan kuin 2,4 gigahertsin langatonta verkkoa ja periaatteessa kaikki langattoman verkon alueella olevat laitteet voivat saada salausavaimen selville, jos sattuvat olemaan asetushetkellä kuulolla. Sininen LED NodeMCU:ssa. Ei ylösvetovastusominaisuutta. Yksi verkkoasetuksien hallintaan kehitetty järjestelmä on nimeltään SmartConfig
Hakusanoina toimii 50pcs, ws2811 ja string. com. tiedosto .. LED-nauha vie vain yhden I/O-pinnin, ja NodeMCU-firmwaressa se on kiinteästi D4. Tallenna ohjelma nimellä ohjelma. 2 32 init.lua on uusi autoexec.bat NodeMCU-firmware käynnistää automaattisesti init.lua-nimisen tiedoston. Jos init.lua:an sattuu ohjelmoimaan sellaisen virheen, että ESP8266 jumiutuu tai uudelleenkäynnistyy, voi olla vaikeaa saada sitä keskeytettyä. lua. Samaan aikaan ei siis voi ohjata NodeMCU-moduulissa olevaa D4-pinniin kytkettyä sinistä lediä. "\"") dofile(tiedosto) -jos verkkoyhteys on saatu, suoritetaan tiedosto end end) -jos verkkoyhteyttä ei ole saatu 10 s aikana, käynnistetään WiFi-asetustukiasema tmr.alarm(2, 10000, tmr.ALARM_SINGLE, function() print("Käynnistetään enduser setup") tmr.interval(0, 500) -hidastetaan merkiksi ledin välkkymistä enduser_setup.start(function() tmr.alarm(3, 2000, tmr.ALARM_SINGLE, function() node.restart() -2 s päästä asetusten talletuksesta bootataan end) end) end) Listaus 1. Nyt voit valita tai syöttää langattoman verkon nimen ja salasanan (ks. Myös monet Adafruitin NeoPixel-tuotteet perustuvat jompaankumpaan näistä piireistä. Kuva 4). Huomaa, että 50 lediä voi viedä täydellä kirkkaudella reilusti yli yhden ampeerin virran, joten huolehdi, että virtalähde on riittävä. Kuva 5). Toisinaan toimintoa pitää yrittää muutamia kertoja, koska kännykkä saattaa esimerkiksi itsepintaisesti vaihtaa tukiaseman joksikin toiseksi. Ohjelmoinnin kannalta WS2811:llä ja WS2812:lla ei ole eroa. 2 1 7 . LED-nauhan ohjain.. NodeMCU, MQTT, LEDvalonauha ja Node-RED Lopuksi teemme ohjelman, jolla epäsuorassa valaistuksessa käytettävien sisustusvalojen väriä ja kirkkautta voi säätää verkkosivun kautta (ks. Koodi on suoraan yhteensopiva Node-RED:n Dashboard-switchja Dashboard-coprint("init.lua Skrolli") local tiedosto = "ohjelma.lua" -Sen tiedoston nimi, joka suoritetaan initin jälkeen local nappi = 3 -NodeMCU:n Flash-nappi local led = 4 -NodeMCU:n sininen led wifi.setmode(wifi.STATION) -varmistetaan, että ESP ei ole turhaan tukiasema -vilkutetaan lediä merkiksi siitä, että ohjelma on käynnissä gpio.mode(led, gpio.OUTPUT) local Q=0 tmr.alarm(0, 100, tmr.ALARM_AUTO, function() gpio.write(led, Q) Q=1-Q end) -asetetaan napille keskeytys, jolla voi keskeyttää init.lua:n suoritus gpio.mode(nappi, gpio.INT) gpio.trig(nappi, "down", function() gpio.mode(nappi, gpio.INPUT) -poistetaan keskeytys käytöstä tmr.stop(0) -pysäytetään ledin vilkutusajastin tmr.stop(1) -pysäytetään verkkoyhteyden odotusajastin tmr.stop(2) -pysäytetään WiFi-asetustukiaseman ajastin gpio.write(led, gpio.HIGH) -sammutetaan led print("init.lua keskeytetty!") end) -tarkistetaan 2 s välein, onko verkkoyhteys saatu tmr.alarm(1, 2000, tmr.ALARM_AUTO, function() if wifi.sta.getip() then tmr.stop(0) -pysäytetään ledin vilkutusajastin tmr.stop(1) -pysäytetään verkkoyhteyden odotusajastin tmr.stop(2) -pysäytetään WiFi-asetustukiaseman ajastin gpio.write(led, gpio.HIGH) -sammutetaan led print("IP: " .. Kuva 5. Wi-Fi-asetusten teko kännykällä. Skrollin numerossa 2017.1 käytiin läpi Node-RED ja MQTT. init.lua. Tässä on valmis init.lua, jonka ajo voidaan keskeyttää 2 sekunnin aikana painamalla flash-nappia tai yhdistämällä pinni D3 maihin. wifi.sta.getip()) print("Suoritetaan tiedosto \"" .. Noin 10 eurolla saa verkosta 50 RGB-ledin nauhoja, joiden ohjaus perustuu WS2811tai WS2812-piiriin. Tässä ohjelmassa varmistetaan myös se, että verkkoyhteys on kunnossa, ennen kuin varsinaista ohjelmaa kutsutaan. Kuva 4. Automaattisen yhteyden vaihdon saa yleensä kännykän asetuksista pois päältä. Valitse kännykän langattoman verkon asetuksista tukiasemaksi SetupGadget_XXXXXX ja mene selaimella mihin tahansa osoitteeseen, esimerkiksi www.koe. Jos verkkoyhteyttä ei saada kymmenen sekunnin aikana, siirrytään tukiasematilaan, johon voi ottaa yhteyden esimerkiksi kännykällä. LED-nauhoja voi ketjuttaa, ja ohjelmakoodissa on ledien määräksi määritelty 100 kpl. Siksi siihen on hyvä ohjelmoida jokin keskeytysmekanismi
ohjelma.lua.. Huomaa, että 50 lediä voi viedä täydellä kirkkaudella reilusti yli yhden ampeerin virran, joten huolehdi, että virtalähde on riittävä. Kun lähetetään käsky ping, laite vastaa pingiin status-topicissa. Hakusanoina toimii 50pcs, ws2811 ja string. " vastaa pingiin!", 0, 0) else viestinkasittelija(topic, viesti) end end) end) -asetetaan napille keskeytys ja sen käsittelijä local lukko = false gpio.mode(nappi, gpio.INT) gpio.trig(nappi, "down", function() if not lukko then m:publish("status", mqtt_clientid .. local mqtt_broker = "xxxxx.xxxxx.xxx" local mqtt_port = 1883 local mqtt_user = "xxxxx" local mqtt_pwd = "xxxxx" local mqtt_clientid = "NodeMCU-" .. " yhdistetty!", 0, 0) m:subscribe(mqtt_topic, 0, function(conn) print("Tilattu " .. " Nappi!", 0, 0) print("Nappi!") lukko = true tmr.alarm(0, 1000, tmr.ALARM_SINGLE, function() lukko = false end) end end) local r = 100 local g = 100 local b = 100 -täällä käsitellään käyttäjän mqtt-viestit function viestinkasittelija(topic, viesti) if viesti:sub(1, 1) == "#" then r = tonumber(viesti:sub(2, 3), 16) g = tonumber(viesti:sub(4, 5), 16) b = tonumber(viesti:sub(6, 7), 16) buffer:fill(r, g, b) elseif viesti:upper() == "TRUE" then buffer:fill(r, g, b) elseif viesti:upper() == "FALSE" then buffer:fill(0, 0, 0) end ws2812.write(buffer) end -tehdään alustukset lednauhaa varten if not buffer then ws2812.init() buffer = ws2812.newBuffer(100, 3) end Listaus 2. Ohjelmoinnin kannalta WS2811:llä ja WS2812:lla ei ole eroa. Colour picker -moduuli antaa oletuksena payloadiksi värin RGBheksadesimaalimuodossa #1f2e3d. mqtt_topic .. ", viesti:" .. lua. Käskyt lähetetään topiciin NodeMCU. LED-nauha vie vain yhden I/O-pinnin, ja NodeMCU-firmwaressa se on kiinteästi D4. Koodi on suoraan yhteensopiva Node-RED:n Dashboard-switchja Dashboard-colour picker -nodejen kanssa. Lisäksi valot voidaan sammuttaa tai sytyttää lähettämällä true tai false, jotka ovat switch-noden oletusarvot. Lopuksi teemme ohjelman, jolla epäsuorassa valaistuksessa käytettävien sisustusvalojen väriä ja kirkkautta voi säätää verkkosivun kautta. Jos määrittelet MQTT-nodeen Retain: true, viimeisin väriviesti tulee aina NodeMCU-moduulille sen bootatessa, joten sitä voi käyttää eräänlaisena tallennuksena. viesti) if viesti:upper() == "PING" then m:publish("status", mqtt_clientid .. LED-nauhoja voi ketjuttaa, ja ohjelmakoodissa on ledien määräksi määritelty 100 kpl. Tallenna ohjelma nimellä ohjelma. string.format('%x', node.chipid()) local mqtt_topic = "NodeMCU" local nappi = 3 -varmistetaan, ettei oteta yhteyttä useaan kertaan päällekkäin if not m then m = mqtt.Client(mqtt_clientid, 120, mqtt_user, mqtt_pwd) else m:close() end -muodostetaan yhteys mqtt-brokeriin m:connect(mqtt_broker , mqtt_port, 0, 1, function(conn) print("Yhteys mqtt-brokeriin muodostettu!") m:publish("status", mqtt_clientid .. Käskyt lähetetään topiciin NodeMCU. Jos määrittelet MQTT-nodeen Retain: true, viimeisin väriviesti tulee aina NodeMCU-moduulille sen bootatessa, joten sitä voi käyttää eräänlaisena tallennuksena. Myös monet Adafruitin NeoPixel-tuotteet perustuvat jompaankumpaan näistä piireistä. topic .. Samaan aikaan ei siis voi ohjata NodeMCU-moduulissa olevaa D4-pinniin kytkettyä sinistä lediä. Lisäksi valot voidaan sammuttaa tai sytyttää lähettämällä true tai false, jotka ovat switch-noden oletusarvot. "-topic") end) m:on('message', function(conn, topic, viesti) print("mqtt-viesti topic:" .. 33 lour picker -nodejen kanssa. Kun lähetetään käsky ping, laite vastaa pingiin status-topicissa. Noin 10 eurolla saa verkosta 50 RGB-ledin nauhoja, joiden ohjaus perustuu WS2811tai WS2812-piiriin. Colour picker -moduuli antaa oletuksena payloadiksi värin RGBheksadesimaalimuodossa #1f2e3d. Skrollin numerossa 2017.1 käytiin läpi Node-RED ja MQTT
Low emission -mainoslauseen ja TCO-merkin taustalla oli 1980-luvun lopulla Ruotsista alkunsa saanut säteilypaniikki. Mistä puheet television ja tietokonenäyttöjen säteilyvaarasta sitten saivat alkunsa. Elektroneja kiihdytettiin jännitteellä, joka isoissa näytöissä oli korkeimmillaan parikymmentä kilovolttia. Televisioissa ja tietokoneiden näyttöpäätteissä käytettiin vielä viime vuosikymmenelle asti katodisädeputkea, joka perustui elektronisuihkun loisteaineelle piirtämään kuvaan. Määrä on mitätön verrattuna röntgentutkimuksista ja lentomatkoilta saatuun säteilyyn, jatkuvasta luonnon taustasäteilystä puhumattakaan. Uutta kodinkonetta käytettiin uutisessa pikemminkin Muistatko, kun monitori säteili. Talvija jatkosodista hengissä selvinnyttä isää eivät taas kodinelektroniikan säteilemiset voineet vähempää kiinnostaa. 2 34 K un lapsuudenkotiini ostettiin vuonna 1992 ensimmäinen tietokone, se oli jo hieman vanhahtava 286-kone, ja hintaa oli muistikuvani mukaan 5000 markkaa. Jo pikkulapsena 1980-luvun lopulla äiti varoitteli katsomasta televisiota liian läheltä, ”ettei mene silmät pilalle” ja ”siitä tulee säteilyä”. Kyseessä oli ammattijärjestön lanseeraama tarra, joka kertoi vähäisestä säteilystä. Televisio säteili sanomalehdessä jo 1956 Vanhin maininta television säteilystä löytyy Turun Sanomista 14.6.1956, jossa kansalaisia rauhoitellaan ydinkokeiden säteilyvaarasta: pikku-uutisen mukaan televisiolaitteista säteilee vähäinen määrä röntgensäteitä, mutta ne eivät ole vaarallisia. Pari vuotta myöhemmin kone vaihtui 486-malliin, jonka säteilymerkinnöistä ei jäänyt mitään muistikuvaa. Ruotsista alkunsa saanut säteilypaniikki toi TCO-merkinnät putkinäyttöihin. Näin suurella kiihdytysjännitteellä todella syntyi aavistuksen verran röntgensäteilyä, josta siitäkin lähes kaikki imeytyi kuvaputken lasiin. Neljäsluokkalaisen rillipään huomio kiinnittyi koneen VGA-kuvaputkinäytössä komeilevaan tekstiin Low emission. 2 1 7 . Äiti tiesi kertoa, että se tarkoittaa matalaa säteilytasoa. Teksti: Vesa Linja-aho Kuvat: Manu Pärssinen, Jari Jaanto Tekniikka. Luulin pitkään TCO:ta joksikin viranomaiseksi tai testauslaitokseksi, mutta myöhemmin selvisi, että lyhenne tulee sanoista Tjänstemännens centralorganisation, virkamiesten keskusliitto. Sen sijaan vuonna 1997 Celeron-myllyssä olikin jo TCO-merkki
Tarkoituksena oli siis rauhoitella kylmän sodan ydinkokeiden hermostuttamia kansalaisia, mutta samalla jäi elämään käsitys siitä, että televisio säteilee. Taustalla olivat tutkimukset, joissa ”päätteiden magneettisäteilyn” oli todettu aiheuttavan rotille ja hiirille keskenmenoja ja sikiövaurioita. Nykykonsensus: ei vaaroja Kuvaputkinäyttöjen haittoja ei enää kannata tutkia, kun teknologia on poistunut käytöstä. Tavallisista televisioista ei lehden mukaan tarvitse olla niinkään peloissaan, sillä niiden säteilymäärä on pieni, mutta voimakkaat vastaanottimet ovat eri asia. Pian tämän jälkeen Länsi-Savo 22.3.1981 kertoo artikkelissaan ”Konekumous konttoreissa”, kuinka sulkakynän on korvannut näyttöpääte ja mikrokortti, ja tietokonemuisti on nielaissut mapit. Näyttöpäätetyö yleistyy Television säteilyvaara ei sen koommin nostanut mediassa päätään, mutta 1970-luvun loppupuolella esiin marssi uusi mörkö: tietokoneet korvasivat paperitöitä suurissa yrityksissä ja valtionhallinnossa. Mikään suosikkiaihe television säteily ei lehdistölle ollut: seuraava maininta Kansalliskirjaston digitoiduista sanomalehtiarkistoista löytyy vasta kuuden vuoden päästä. Tutkimuksen tuloksista ei uutista kuulunut. Vastaavaa temppua on kokeiltu eräässä suomalaiskorkeakoulussakin, tosin modernimman vaivanaiheuttajan eli wlan-tukiaseman kanssa: tukiaseman aiheuttamat oireet erääseen opiskelijaan katosivat, kun tukiasema ”sammutettiin” käyttämällä sivuleikkureita sen merkkivaloledin jalkoihin.. Ammattiliiton TCO-tarrat ja low emission -tekstit todennäköisesti olivatkin toimiva lääke näyttöpääteoireiluun: kun käyttäjä uskoi, että näyttö täyttää tiukat säteilynormit, oireetkin häipyvät. Länsi-Savo 6.2.1986 uutisoi, että Tanskassa tutkitaan näyttöpäätteiden vaarat. Lisäksi laajat tutkimukset eivät ole löytäneet mitään haitallisia terveysvaikutuksia katodiputkista”, kertoo säteilyn terveysvaikutuksia tutkinut fysiikan professori Tapio Ala-Nissilä Skrollille. Käytännössä putket säteilivät turvarajoja vähemmän. Työsuojelumielessä enemmän huolestuttivat tukija liikuntaelinvaivat sekä – nykykäyttäjillekin niin tutut – laitteiston käyttöhäiriöiden, katkosten ja odotusten aiheuttamat psykologiset haitat. Televisioiden säteilyvaarasta suusta suuhun levinneet jutut yleistettiin – sinänsä ihan loogisesti – näyttöpäätetyöhön. Ruotsista kajahtaa Muutaman vuoden oli säteilyrintamalla hiljaista, mutta näyttöpäätetyö yleistyi 1980-luvulla rajusti, mikä oli omiaan nostamaan ilmiön taas tapetille. Muina vertailukohteina käytettiin itsevalaisevia kellotauluja ja jalan mittausta röntgenillä kenkiä varten. Säteilyannos jäi pienemmäksi kuin luonnon taustasäteily. Tämän jälkeen katodisädeputken säteily mainitaan Länsi-Savon jutussa 1.5.1989, jossa mainitaan myös Ruotsissa perustettu sähköallergikkojen yhdistys. Ruotsissa ja Yhdysvalloissa taas on julkaistu raportteja, joissa ”keskenmenon mahdollisuuden on todettu lisääntyneen”. Huolestuneita oltiin lähinnä työpaikkojen vähenemisestä: artikkelissa mainitaan lyhyesti työsuojeluongelmista, että huhut [näyttöpäätteiden] vaarallisesta säteilystä on jo kumottu. Mitään haittoja ei vuosikymmentenkään saatossa löydetty. Näyttöpäätteiden sähköja magneettikenttien raskausriskeistä todetaan, että valtaosassa tutkimuksia väitetään todetun kiistatta, ettei päätetyö haittaa sikiön kehitystä tai aiheuta keskenmenoja. ”Jo vuonna 1968 USA:ssa säädettiin yläraja katodisädeputkien säteilylle. Reilun kuukauden päästä 18.7.1956 sama lehti tosin varoittaa hieman sensaatiohakuisesti asiantuntijan suulla, että korkeajännitteiset televisiovastaanottimet saattavat olla vaarallisia. Lehti raportoi työterveyspäiviltä näyttöpäätetyön todellisista ja kuvitteellisista haitoista: Työterveyslaitoksen asiantuntija laskee kuviteltuihin haittoihin näyttöpäätteen säteilyn. Nykyiset ja aiemmat tutkimustulokset osoittavat asiantuntijan mukaan vakuuttavasti, etteivät päätteet lähetä haitallista säteilyä. Tanskan liikeja toimistotyöntekijöiden liitto ryhtyi tutkimuksessaan selvittämään näyttöpäätteiden yhteyttä keskenmenoihin ja raskaushäiriöihin. Näyttöpäätteiden määrä lähenteli jo 50000:ta. Vaikutukset tulevat esille seuraavissa sukupolvissa, joiden lapsilla saattaa olla epäterveitä luonteenominaisuuksia. Sosiaalista mediaa ei tuolloin ollut, vaan tieto kulki suusta suuhun: joku muisti lukeneensa lehdestä television säteilyvaarasta, eikä ollut nettiarkistoa, josta tarkistaa asian laita, joten rikkinäinen puhelin -ilmiö todennäköisesti muutti ja paisutti tarinaa matkalla. Eli vanhan toistoa, mutta eri asiantuntijan suulla. Samassa lehdessä 29.7.1991 lääkäri vastaa huolestuneelle äidille television vaaroista Länsi-Savon ”Seuraava potilas” -palstalla, että jos jotain terveyshaittoja on, ne johtuvat ohjelmista tai kyhjöttämisestä, ja säteilyn puolesta televisio on turvallinen. Varhaisin maininta näyttöpäätetyön säteilyhuolista löytyy Etelä-Suomen Sanomista 28.10.1980. Olihan käytetty tekniikka, katodisädeputki, sama. Länsi-Savo 24.5.1962 kirjoittaa, että atomienergiakomission jäsen, tohtori Robert Wilson kertoo, että USA:n ja Neuvostoliiton ydinkokeiden aiheuttama säteily on vähemmän kuin television aiheuttama säteily. 35 säteilypelkojen lievittämiseen kuin sensaation hakemiseen: ydinkokeista tulee huomattavasti pienempi säteilyannos kuin vaarattomiksi mielletyistä ja intoa ja innostusta herättäneistä televisiovastaanottimista, jotka vielä 1950-luvulla olivat harvojen herkkua
Jos algoritmi päätyy tilaan 6, merkkijono S on löytynyt.. Loppuosataulukko kertoo merkkijonon syvimmät salat Sovelluksissa on yleistä, että käyttäjä tekee useita hakuja samaan tekstiin T. STRINGOLOGIA – bioinformatiikan kivijalka Merkkijono kuuluu lähes kaikkien ohjelmointikielien perustietorakenteisiin. Näissä tapauksissa on hyödyllistä rakentaa indeksi merkkijonolle T, jonka avulla voidaan vastata kaikkiin kyselyihin S nopeasti. Jos luettu merkki vastaa seuraavan kaaren merkkiä, siirtyy algoritmi seuraavaan tilaan, muulloin algoritmi seuraa katkoviivalla merkittyjä nuolia, kunnes oikealle menevässä kaaressa on oikea merkki. Nopeimmat välttävät jopa lukemasta kaikkia merkkijonon T merkkejä, jos ympäröivien merkkien perusteella on selvää, että merkkijono S ei voi löytyä tietyistä kohdista. Ongelma on, että pahimmassa tapauksessa tähän kuluu aikaa suhteessa lukuun nm, jossa n ja m ovat merkkijonojen T ja S pituudet. Ei kuulosta kovin monimutkaiselta ongelmalta, eihän. Yksinkertaisin tapa ratkaista asia on kirjoittaa kaksi sisäkkäistä for-silmukkaa, jotka kokeilevat kaikki mahdolliset aloituskohdat läpi (ks. Heidän menetelmänsä tunnetaan nykyään KMP-algoritmina julkaisijoiden sukunimien alkukirjaimien mukaan, ja se on perusta monille edistyneemmille algoritmeille. Automaatti lukee merkkijonoa T merkki kerrallaan siten, että luettu merkki määrää automaatin seuraavan tilan. kuva 1). Alkutila on merkitty nuolella. Teksti: Jarno Niklas Alanko Kuvat: Mikko Torvinen, Jarno Niklas Alanko, Nasu Viljanmaa Koodi ?1 1 2 3 4 5 6 . Sittemmin ongelmaan on keksitty valtava joukko erilaisia O(n+m)-aikavaativuuden ratkaisuja. Algoritmi rakentaa merkkijonosta S äärellisen tilakoneen (finite state machine), joka koostuu tiloista ja siirtymistä (ks. 2 36 Y leinen ongelma tietojenkäsittelyssä on selvittää, löytyykö merkkijono S jostain kohtaa merkkijonoa T, ja jos löytyy, niin mistä kohdista. Tämä ongelma tulee vastaan esimerkiksi tekstinkäsittelyohjelmassa, kun käyttäjä painaa Ctrl-F-näppäinyhdistelmää. 2 1 7 . Jos n ja m ovat molemmat suuria, niin tämä jumittaa tietokoneen nopeasti. Isolla sigmalla merkitty kaari sopii kaikkiin merkkeihin. Stringologian keskeisiä ongelmia on tehokkaampien algoritmien kehittäminen tähän ongelmaan ja kaikkiin sen variaatioihin Ensimmäisen O(nm)-algoritmia paremman algoritmin julkaisivat tiettävästi Donald Knuth, Vaughan Pratt ja James Morris vuonna 1977. Rakennetulla automaatilla voi hakea merkkijonoa S mistä tahansa merkkijonosta T. Knuth-Morris-Pratt automaatti merkkijonolle ananas. Automaatin rakentaminen vie tehokkaalla algoritmilla O(m) aikaa, ja merkkijonon T läpikäynti O(n) aikaa, joten algoritmi vie yhteensä O(n+m) aikaa, mikä on huima parannus naiiviin O(nm)-algoritmiin. Valitettavasti tehtävä ei ole niin helppo kuin ensivaikutelma antaa ymmärtää. a n a n a s Kuva 1. listaus 1). Algoritmin keskimääräinen aikavaativuus on siis merkinnällisesti O(nm). Niiden tehokas käsittely on kuitenkin kaukana yksinkertaisesta, ja siitä onkin kasvanut kokonainen tutkimusala nimeltä stringologia
Merkkijonon ”bal” esiintymien alkukohdat voidaan nyt lukea loppuosataulukon kohdista 9, 10 ja 11, joissa on arvot 9, 12 ja 4. Sukellus syvemmälle algoritmiikkaan Manberin ja Myersin algoritmi alustetaan siten, että korvataan merkkijonon S merkit kokonaisluvuilla, jotka säilyttävät aakkoston järjestyksen. 1 ab 2 abalbalrab 3 abalrabalbalrab 4 alabalrabalbalrab 5 albalrab 6 alrab 7 alrabalbalrab 8 b 9 balbalrab 10 balrab 11 balrabalbalrab 12 labalrabalbalrab 13 lbalrab 14 lrab 15 lrabalbalrab 16 rab 17 rabalbalrab Listaus 2. Yllättävää kuitenkin, tästä voi parantaa vielä paljon. Merkkijonon alabalrabalbalrab loppuosataulukko. Tässä loppuosat ryhmitellään ensiksi ensimmäisen merkin mukaan, syntyneet ryhmät toisen merkin mukaan, ja niin edelleen rekursiivisesti, kunnes kussakin ryhmässä on vain yksi loppuosa. Esimerkissämme pisin toistuva merkkijono on ”balrab”. Haetaan merkkijono S esiintymät merkkijonosta T. Esimerkiksi merkkijonon ”ananabanana” aakkosto on a, b ja n, joten voidaan korvata a:t ykkösillä, b:t kakkosilla ja n:t kolmosilla. Näin saatu lista R kokonaislukuja on karkea arvio loppuosien keskinäisestä järjestyksestä: luvut kertovat loppuosien järjestyksen, jos jokaisesta otetaan huomioon vain ensimmäinen merkki. Haetaan vaikka merkkijonoa ”bal” merkkijonosta ”alabalrabalbalrab”. 37 Listataan kaikki merkkijonot, jotka alkavat jostain kohtaa merkkijonoa T ja jatkuvat merkkijonon T loppuun saakka. Pisimmän toistuvan osamerkkijonon etsimisen ongelma on sama kuin ongelma löytää pari loppuosia, joilla on pisin mahdollinen yhteinen alkuosa. Alabalrabalbalrab-loppuosataulukko.. Loppuosataulukon avulla voi myös selvittää esimerkiksi pisimmän useamman kerran esiintyvän osamerkkijonon merkkijonossa T. Esimerkiksi jos syöte on n kappaletta pelkkää a-kirjainta, niin lopulliseksi aikavaativuudeksi tulee O(n² log n). Lisäksi riittää vertailla vain aakkosjärjestyksessä peräkkäisiä loppuosia, koska mitä lähempänä kaksi loppuosaa ovat toisiaan aakkosjärjestetyssä listassa, sitä pidempi yhteinen alkuosa niillä on. Kaikkien osamerkkijonojen joukko kun on kaikkien loppuosien alkuosien joukko. vector<int> matches; for(int i = 0; i < T.size()-S.size()+1; i++){ bool good = true; for(int j = 0; j < S.size(); j++){ if(S[j] != T[i+j]) good = false; } if(good) matches.push_back(i); } Listaus 1. Ensimmäisessä iteraatiossa tätä approk simaatiota tullaan parantamaan siten, että se ottaa huomioon kaksi ensimmäistä merkkiä jokaisesta loppuosasta, seuraavassa iteraatiossa neljä ensimmäistä, seuraavassa kahdeksan, ja niin edelleen, kunnes kaikki merkit on otettu huomioon. Aikavaativuudessa päästään näin eroon logaritmisesta kertoimesta ja saadaan O(n²)-algoritmi. Taulukon hyöty perustuu seuraavaan havaintoon. Loppuosataulukon rakentaminen Yksinkertaisin tapa rakentaa loppuosataulukko on muodostaa kaikki mahdolliset loppuosat, ja järjestää ne millä tahansa yleiskäyttöisellä järjestysalgoritmilla kuten merge sortilla. Näitä kutsutaan merkkijonon T loppuosiksi eli suffikseiksi. Se rakentaa ajassa O(n log² n) käänteisen loppuosataulukon, jonka i:s alkio kertoo kohdasta i alkavan loppuosan järjestysnumeron aakkosjärjestyksessä. Merkkijonon ”bal” esiintymät tosiaan alkavat indekseistä 9, 12 ja 4. Ensinäkemältä voi olla vaikea keksiä, mitä iloa tällaisesta taulukosta voi olla, mutta osoittautuu, että loppuosataulukko on avain valtavaan kirjoon tehokkaita merkkijonoalgoritmeja. Tähän tarvitaan O(n log n) loppuosien vertailua. Käänteisen loppuosataulukon voi muuttaa helposti tavalliseksi loppuosataulukoksi – yksityiskohdat jääkööt lukijalle pohdittavaksi. Udi Manber ja Gene Myers julkaisivat vuonna 1990 ovelan algoritmin, jota voidaan pitää läpimurtona merkkijonotutkimuksessa. Ongelma tässä on, että pahimmassa tapauksessa vertailut ovat työläitä. Nyt voidaan määritellä merkkijonon T loppuosaeli suffiksitaulukko SA (Suffix Array): taulukon elementti SA[i] kertoo, mistä kohtaa merkkijonoa T alkaa aakkosjärjestyksessä i:s loppuosa. Nyt on hyvä ymmärtää, että kaikki osamerkkijonot löytyvät jonkin loppuosan alusta. Hieman tehokkaampi tapa ratkaista ongelma on käyttää radix sort -tyyppistä järjestämistä merge sortin sijaan. Loppuosien yhteispituus on O(n²), joten vaikuttaa siltä, että nopeampaa algoritmia ei voi olla. Saadaan siis seuraava algoritmi: käydään läpi kaikki aakkosjärjestyksessä peräkkäiset loppuosaparit käyttäen loppuosataulukkoa ja raportoidaan pisin löytynyt yhteinen alkuosa. Algoritmi perustuu 70-luvulla keksittyyn prefix doubling -tekniikkaan. Listauksessa 2 on esimerkkinä merkkijonon ”alabalrabalbalrab” loppuosat aakkosjärjestyksessä. Tehokkaampaa algoritmia varten täytyy käyttää hyväksi sitä huomiota, että järjestettävät merkkijonot eivät ole mielivaltaisia, vaan kaikki ovat syötemerkkijonon loppuosia. [16,8,3,1,10,13,5,17,9,12,4,2,11, 14,6,15,7] Merkkijonon alabalrabalbalrab loppuosat aakkosjärjestyksessä. Tätä aluetta loppuosalistassa kutsutaan merkkijonon ”bal” leksikografiseksi intervalliksi, ja sen voi paikallistaa binäärihakemalla ensin sen alkukohdan ja sitten loppukohdan. Järjestetään loppuosat aakkosjärjestykseen. Aakkosjärjestetystä loppuosalistasta näkee, että ne loppuosat, jotka alkavat merkkijonolla ”bal” ovat peräkkäin aakkosjärjestyksessä, tässä tapauksessa loppuosat numero 9, 10 ja 11
Sanan ananabanana loppuosat aakkostetaan vaihe vaiheelta Manber-Myers-algoritmilla. Puuta voi käyttää varsin helposti osamerkkijonojen etsimiseen. Suffiksipuuta rakentaessa merkkijonon perään lisätään aakkoston ulkopuolinen lopetusmerkki, jota merkitään kuvassa dollarilla, mikä takaa, että jokainen merkkijonon loppuosa vastaa lehteä puussa. Merkkijonon ananabanana suffiksipuu. Ällistyttävää kyllä, loppuosataulukon rakentaminen on mahdollista tehdä myös jopa O(n)ajassa. Näistä lineaariaikaisista algoritmeista on useita variantteja, mutta yksinkertaisin lienee Juha Kärkkäisen ja Peter Sandersin vuonna 2003 julkaisema algoritmi, johon emme nyt kuitenkaan tämän artikkelin puitteissa perehdy. Esimerkiksi banana-loppuosan arvioitu sijoitus loppuosien aakkosjärjestysessä muuttuu: 2, 4, 6 kunnes saavuttaa oikean arvon 7. Suffiksipuu kertoo merkkijonosta enemmän kuin pelkkä loppuosataulukko, mutta se on myös työläämpi rakentaa ja vie enemmän muistia. Jos halutaan tietää, sisältääkö merkkijono T merkkijonon S, riittää yksinkertaisesti tarkistaa, onko puun juuresta olemassa polkua, jonka kaaret muodostavat BA NA NA $ BA NA NA $ BA NA NA $ NA NA BA NA NA $ NA BA NA NA $ $ $ $ $ $ BA NA NA $ A $ NA 6 12 10 9 7 11 8 2 4 3 1 5 Kuva 3. Näin saatu lista lukuja on haluttu taulukko R 2k [1..n]. Jos parin toisen elementin indeksi i+k menee yli taulukon R k , otetaan sen sijaan parin toiseksi luvuksi nolla. A N A N A B A N A N A 1 3 1 3 1 2 1 3 1 3 1 5 9 4 8 2 6 5 9 3 7 1 6 11 4 9 2 7 5 10 3 8 1 3 5 3 5 2 4 3 5 3 5 1 (1,3) (3,1) (1,3) (3,1) (1,2) (2,1) (1,3) (3,1) (1,3) (3,1) (1,0) (3,3) (5,5) (3,2) (5,4) (2,3) (4,5) (3,3) (5,5) (3,1) (5,0) (1,0) (5,2) (9,6) (4,5) (8,9) (2,3) (6,7) (5,1) (9,0) (3,0) (7,0) (1,0) R 1 [] R 2 [] (R 2 [6], R 2 [6+2]) (R 1 [6], R 1 [6+1]) (R 4 [6], R 4 [6+4]) R 4 [] R 8 [] Kuva 2. Jos puun lapset piirretään aina aakkosjärjestyksessä vasemmalta oikealle, niin lehdistä voidaan lukea vasemmalta oikealle merkkijonon T loppuosataulukko. Nyt voidaan muodostaa taulukko R 2k [1..n], joka ottaa huomioon tuplasti enemmän merkkejä. kuva 3). 2 1 7 . Syntyneet parit voidaan muuttaa takaisin yksittäisiksi vertailuluvuiksi korvaamalla ne kokonaisluvuilla, jotka säilyttävät parien järjestyksen. Lukupareja vertaillaan ensisijaisesti parin ensimmäisen ja tasapelin sattuessa parin toisen numeron perusteella. Ensimmäisessä vaiheessa lasketaan taulukko R k , joka kuvaa loppuosien järjestystä ensimmäisen k merkin perusteella, ja toisessa osassa muodostetaan näistä järjestysluvusta pareja, jotka kuvaavat merkkijonojen järjestystä tuplasti suuremmalla 2k tarkkuudella kuin edellisessä iteraatiossa. Koko algoritmin lopullinen aikavaativuus on O(n log² n). Monien mielestä elegantein ratkaisu on Esko Ukkosen vuonna 1995 kehittämä algoritmi, joka rakentaa puun vaihe vaiheelta ottaen yksi kerrallaan enemmän merkkejä mukaan puuhun. Algoritmi vuorottelee kahden vaiheen välillä. Tämä puu voidaan rakentaa käyttäen loppuosataulukkoa ajassa O(n), mutta se voidaan rakentaa myös suoraan ilman, että loppuosataulukkoa tarvitsee rakentaa ensin. 2 38 Algoritmin kulku on kuvattu kuvassa 1. Tämä tulos tosin olettaa, että merkkien keskinäinen järjestys voidaan selvittää O(n)-ajassa, mutta se on hyvin luonnollinen oletus oikeissa sovelluksissa. Taulukko R 8 on tässä tapauksessa ensimmäinen taulukko, jonka kaikki vertailuluvut ovat uniikkeja. Manberin ja Myersin algoritmi on tarpeeksi nopea useimmille syötteille, mutta vieläkin tehokkaampia algoritmeja on olemassa. Pari edustaa käytännössä 2k:n pituista alkupätkää T[i..n]:stä, ja luvut kertovat molempien puolikkaiden järjestyksen. Lehdessä lukeva numero kertoo loppuosan alkamiskohdan alkuperäisessä merkkijonossa. Tämä voidaan tehdä O(n log n)-ajassa käyttäen taas yleiskäyttöistä järjestysalgoritmia. Suffiksipuu Eräänlainen laajennos loppuosataulukolle on niin sanottu loppuosaeli suffiksipuu. Suffiksipuun kaaret on merkitty osamerkkijonoilla, ja jokaista suffiksia vastaa yksi lehti siten, että polulla juuresta lehteen kaarien osamerkkijonojen yhdiste muodostaa merkkijonon T kunkin loppuosan (ks. Algoritmissa on aina korkeintaan log(n) kierrosta. Tälle tiedolle kannattaa antaa hetki upota tajuntaan: n merkkiä pitkän merkkijonon loppuosat voi järjestää nopeammin kuin n elementtiä pitkän taulukon järjestäminen yleisessä tapauksessa. Iteraatiossa R 4 loppuosilla ananabanana ja anana on sama järjestysluku 5, koska niitä ei voi järjestää vielä ensimmäisen neljän merkin perusteella.. Siten taulukon R 8 kohdasta i voi lukea loppuosan T[i..n] järjestysnumeron aakkosjärjestyksessä, joka oli se, mitä algoritmilta haluttiinkin. Kuvassa 2 on esitetty merkkijonon ”ananabanana” taulukot R 1 , R 2 , R 4 ja R 8 sekä vastaavat vertailulukuparit. Lehdet on merkitty numeroilla, jotka kertovat loppuosan aloituskohdan. Parien keskinäinen järjestys vastaa loppuosien keskinäistä järjestystä, kun huomioon on otettu 2k ensimmäistä merkkiä. Oletetaan nyt, että meillä on jo tiedossa taulukko R k [1..n], joka sisältää jokaiselle loppuosalle vertailuluvun, jotka kertovat loppuosien järjestyksen k:n ensimmäisen merkin tarkkuudella. Temppu tehdään seuraavasti: liitetään jokaiseen loppuosaan T[i..n] pari vertailulukuja (R k [i], R k [i + k]). Parit voidaan korvata kokonaisluvuilla järjestys säilyttäen väliaikaisen järjestettyjen parien taulukon avulla
Uusimpia tutkimussuuntia alalla ovat pakatut merkkijonoindeksit, jotka pystyvät tekemään kaiken, mitä voisi tehdä suffiksipuullatai taulukolla, mutta vievät vähemmän tilaa – joskus jopa vähemmän kuin merkkijono T itse, jos T:ssä on paljon toistuvuutta. Esimerkiksi jos halutaan laskea merkkijonon kaikki erilaiset osajonot, vastaus on kaikkien suffiksipuussa juuresta lähtevien polkujen määrä, koska joka jokainen osajono vastaa jotain juuresta alkavaa polkua ja kaikki juuresta alkavat polut vastaavat jotain osajonoa. • Etsi merkkijonon aakkosjärjestyksessä pienin rotaatio. Esimerkiksi saatetaan hakea pareja osamerkkijonoja, jotka ovat voidaan muuttaa toisikseen muutamalla merkin lisäyksellä tai poistolla. Tehokkaat merkkijonoalgoritmit pelastavat ihmishenkiä jo nyt. Pähkinöitä: pystytkö ratkomaan O(n)-ajassa seuraavat ongelmat. Rahoitusta tutkimukselle löytyy runsaasti, koska tehokkaalla merkkijonohaulla on sovelluksia geneettisten sairauksien diagnosoinnissa ja potilaan genomille räätälöidyn lääkityksen määrittämisessä. Pakattujen tietorakenteiden parhaat palat ovat helposti saatavilla Githubista Simon Gogin loistavasta sdsl-lite-kirjastosta, jossa on yli neljänkymmenen tutkimusartikkelin tietorakenteet ja algoritmit siistinä C++ template-kirjastona. Nämä perustuvat usein niin sanotuun Burrows-Wheeler-muunnokseen, jota käytetään muutenkin datan pakkaamiseen. • Etsi useimmin esiintyvä osamerkkijono, jonka pituus on vähintään 10. Alaa eteenpäin ajaakin pääasiassa bioinformatiikassa yleiset valtavat merkkijono-ongelmat, joissa saatetaan vertailla keskenään miljardien merkkien pituisia merkkijonoja, jotka esittävät esimerkiksi DNA-ketjuja. Useimmille ongelmille löytyy luonnollinen tulkinta suffiksipuun näkökulmasta. Tässä tapauksessa polulla voidaan tarkoittaa myös sellaista polkua, joka pysähtyy johonkin keskelle kaaren osamerkkijonoa. Myös aiemmin loppuosataulukolla ratkaistu pisimmän yhteisen merkkijonon etsiminen onnistuu helposti – riittää vain käydä puu läpi ja palauttaa se sisäsolmu, joka on kauimpana juuresta. Kirjallisuutta • Crochemore & Rytter: Jewels of Stringology • Gusfield: Algorithms on Strings, Trees, and Sequences. Jokapäiväisissä sovelluksissa haettavan merkkijonon S pituus on yleensä lyhyt, joten listauksen 1 kaltaiset naiivit algoritmit toimivat kohtuullisen nopeasti. DNA-ketju tulkitaan merkkijonoksi, jonka aakkosto on DNA-molekyylin komponentit A, C, G ja T. Uudet tuulet Merkkijonoalgoritmien tutkimus menee eteenpäin kovaa vauhtia, ja Helsingin yliopisto on ilahduttavasti tutkimuksen eturintamassa. Tämä on hyödyllistä esimerkiksi geenien hakemisessa tietokannasta, koska halutaan olla välittämättä pienistä eroavaisuuksia DNA:ssa tapahtuneiden mutaatioiden vuoksi. Suffiksipuu on myös ennen kaikkea hyödyllinen käsitteellinen työkalu merkkijono-ongelmien kanssa järkeilyyn. • Etsi pisin osamerkkijono, joka on palindromi. • Etsi kahdesta merkkijonosta pisin osamerkkijono, joka esiintyy molemmissa. Toinen aktiivinen tutkimussuunta on suurpiirteinen haku, jossa etsitään täsmällisten vastaavuuksien sijasta samankaltaisia merkkijonoja, jotka muistuttavat toisiaan tarpeeksi jollain kriteereillä. Jo vakiintuneiden tietorakenteiden kuten loppuosataulukoiden ja -puiden rakentamiseen kehitetään edelleen uusia algoritmeja, jotka on räätälöity toimimaan vähällä muistilla, rinnakkain tai mahdollisimman välimuistiystävällisesti. 39 merkkijonon S
Kauppinen Kuvat: Jukka O. Kauppinen, Toni Kortelahti, Mobygames. 2 1 7 . Ja joskus jotkut laukovat tosissaan aivan uskomattomuuksia. Kuka tykkää mistäkin. Kamalaa roskaa oli kuitenkin uskomattoman paljon, ja ne saivatkin vauhdikasta del-kyytiä. Hyviä huippupelejä saapuu tasaiseen tahtiin sekä mobiiliin että isommille koneille, mutta ei kaikki voi aina olla silkkaa aurinkoa ja hymynaamoja. Kyllä Suomessa on tehty huonoja, karmeita ja öklöjäkin kaupallisia pelejä. Jos jonkin pelin sitten haukkuu pataluhaksi, niin sen tekijähän saattaa tulla joskus antamaan henkilökohtaista palautetta! Tässä jutussa kulma on nimenomaan kaupallisesti julkaistuissa, vanhemmissa teoksissa. Vinkkejä uudemman ajan surkeuksista voi lähettää osoitteeseen jukka@skrolli.fi. Oli toki kivaa, että Jonne-Petteri halusi tarjota uutta tekstiseikkailuaan julkaistavaksi, mutta… Kaupallisten suomipelien haukkuminen on kuitenkin yllättävän vaikeaa, muun muassa siksi, että niiden taso on keskimäärin melkoisen korkea. Ilmaispelien ja indien maailmasta kakkaa toki löytää suunnattomasti, etenkin jos aikahaitaria venytetään tarpeeksi. Ja kuka nyt tietoisesti huonoja pelejä etsisi. Vaikka seassa on varmasti sattumiakin, niitä ei todennäköisesti enää edes huomaa. Ja varmasti tehdään jatkossakin. 2 40 Pelit 40 H uonon tai paskan pelin käsite on toki epämääräinen ja täynnä henkilökohtaisia tulkintoja. Ysärin suomipelimaailma oli täynnä kauheaa roskaa, jonka seulominen MikroBittiin arvosteltavaksi ja MBnet-purkkiin suuren yleisön ladattavaksi oli joskus kovaa hommaa. Hyvän pelin huonompi jatko-osa ei ole todennäköisesti paska, vain huonompi. Lisäksi pelejä julkaistaan niin kiivaaseen tahtiin, ettei niistä pysy enää kukaan perillä. Esimerkiksi Remedyn Alan Wake on aika helkkarin kaukana paskapelistä. SURKEAT suomipelit Suomi on tänään pelimaailman kärkimaita, etenkin pienuuteensa nähden. Teksti: Jukka O. Sieltä löytyi paljon helmeileviä teoksia, jotka yritin nostaa esille
Mutta eipä Avesoftikaan aikoinaan peliä kovin hyväksi noteerannut. Mutta mikä avuksi, jos bitti ei vain suostu yhteistyöhön. Myöhemmin Sakun kädenjälkeä on nähty muun muassa peleissä Max Payne, Max Payne 2, Alan Wake ja Quantum Break. 41 Crapiolan ytimessä Ikivanhojen, lähes indiehenkisten räpellysten haukkuminen on kaksipiippuista hommaa. No, eihän se mitenkään estänyt hyvien pelien tekemistä, etenkin kun AGA-koneiden kikkoja opittiin hyödyntämään paremmin loppua kohden. Mutta muutkin kokeilivat lohkareiden murskausta avaruudessa ja paljon kurjemmin tuloksin. Ikihirveästä gorejuhlasta urkeni siis hieno ura! Bloody Afternoon (1989) Tekijä/julkaisija: Avesoft Oy Alusta: Amiga Kankea Commando ’96 Watchtower saapui Amiga 1200:lle koneen tähden ollessa jo vahvassa laskusuunnassa. Pisteet sentään siitä, että CyberArts sai vielä ’96 kasaan Amiga-pelin, jopa AGA-alustalle, ja sai sen kaupalliseen julkaisuunkin. Avesoftin julkaisemaa Amiga-räiskintä Bloody Afternoonia ei juuri historiankirjoista löydä, mutta sillä on yllättävää historiallista merkitystä. Bloodhousen Amigalla 1993 synnyttämä Stardust-sarja kun on porskuttanut sittemmin Housemarquen kulmakivenä tarjoillen huikeaa pelattavaa etenkin nykypleikkareille. Ehkä ennen kaikkea siksi, että siitä jäi suuhun niin paha maku. Musiikit eivät tylsyydessään säväyttäneet ja äänirutiinikin rahisi. Watchtower (1996) Tekijä/julkaisija: CyberArts Ltd. Jos siinä sivussa pelistään saa rahaakin, niin aina parempi. Bloody onkin jäänyt monien mieleen ”hirveintä skeidaa mitä Amigalla olen ostanut” -tasoiseksi klassikoksi. Aivan kamalahan se on. Kamalaa ajatella, että tästä on kehdattu pyytää rahaakin. Alusta: Amiga AGA Stardustin jäljillä Asteroids-kloonit ovat olleet vuosituhannesta toiseen yksi videopelaamisen kulmakivistä ja tavallaan myös yksi suomalaisen peliteollisuuden juurista. Amigan Stardust, 1994 Amiga AGA:lla ja CD32:lla sekä 1996 DOSilla nähty Super Stardust olivat upeita, liki täydellisiä Asteroids-jälkeläisiä. Jostainhan aina pitää aloittaa. Äänet ovat upean hirveitä ja peli on sisällöllisesti, pelillisesti ja olemukseltaan niin surkea että hirvittää. Watchtower yhdisti kuluneita ideoita ja valjuun toteutukseen. Asteroidsin henkeäkään ei oikein ollut tajuttu, sillä ruudulle Avesoftin julkaisu oli tasoltaan kehno ilmaistai shareware-peli. Avesoft-pomo Jyrki Kummola itse asiassa kommentoi aikanaan allekirjoittaneelle, että ”se on paras Basic-peli, jonka olen ikinä nähnyt” ja muisteli, että kun peliä tarjottiin brittiläiselle halpapelikustantajalle, niin ”torjunta oli tyly”. Liian kliseistä, liian myöhään, liian tutulla reseptillä. Olihan siinä sentään jonkinlainen idea, kulunut mutta kuitenkin. CyberArtsin esikoispeli jäi myös viimeiseksi. Veikkaan silti, ettei tämä myynyt kovinkaan montaa kymmentä kappaletta. Bloody on hirveä pelihalliräiskintä, jossa räimitään rakennusten ikkunoihin ilmestyviä mörkkejä, ennen kuin nämä ampuvat sinua, ja yritetään olla ampumatta vähemmän vihaisia naamoja. Piranhassa oli yrityksenpoikasta ja jotain uuttakin kuten monen pelaajan deathmatchaus ja räiskintäliigat, mutta samalla peli oli tyylitön ja tauhkainen. Maailmaa kiertävä palkkasoturi rynnistää ruudulla alhaalta ylöspäin suorittaen kuutta tehtävää eri ryhmittymien leivissä ja roimii vihuja seitsemällä eri aseella. Pahinta oli viilaamaton pelattavuus ja pelimoottorin kurjuus, sillä lohkaremäärän kasvaessa peli hidasteli ja nyki kelvottomasti. Demonilaumat piilivät yksityiskohdissa. Ylhäältä kuvatusta toiminnasta pystyi nauttimaan joko yksin tai samalla ruudulla kaverin kanssa. Mutta samalla se oli graafikko Saku Lehtisen ensimmäinen kaupallinen julkaisu. Vaikka syvälle hanuriin työnnettäviä indieja harrasteAsteroidseja piisaa, niin Piranha nousee omilla mittareillani kärkisijalle. Tai nauttimaan ja nauttimaan. Grafiikka oli periaatteessa koreaa, mutta myös vaisua ja puhuttelematonta. Se oli yksinkertaisesti peli, joka ei inspiroinut ja muuttui pian monotoniseksi junnaamiseksi. Paljoa paremmin ei mennyt julkaisijallakaan – OTM sai tiettävästi ulos tasan kolme peliä. Niistä kaksi suomalaisia. Ei ihme, ettei maistunut. Sitten Piranha roiskii rapaa silmille ja seinille niin, että huudattaa. / OTM Publications & Promotions Ltd. Watchtower oli tylsä ja turhauttava räiskintäpeli, joka oli AGA-grafiikastaan huolimatta valjun näköinen ja säväyttämätön peli. Tuntemattomiksi jääneiden tekijöiden Piranha kompastui pahasti Stardustin upeuteen.. Konetuliaseiden pötpötykselle vetivät vertaa vain antiikkinen design, ilmaan haihtuvat ammukset ja mukatekoälyllisesti aivokuolleet viholliset. Yli vuosikymmenen takaista Commandoa vahvasti lainannut suomipeli soitti monia vääriä säveliä, ja bitti oli poikittain
Tuohon aikaan oli kuuminta hottia kuvata eläviä näyttelijöitä ja ympätä peleihin CD-ROM-levyltä toistettavaa videota. Ei ehkä aivan ideaalinen tapa tehdä peliä. Oli se silti yksi N-Gagen paremmista peleistä. Alusta: PC Ylinäyttelyä ja valistusta The Blobjob on ideastaan lähtien hirmuisen hämmentävä peli. Muistettakoon kuitenkin, että tämä on aikansa teos. Sillä jos näyteltyä pelielokuvaa kerran tehtiin, niin säästetään nyt varmuuden vuoksi levytilaa esittämällä ihmisiä muutaman kuvan mittaisilla looppaavilla pätkillä. Jos jollakulla on käsitystä kavereista, saa käräyttää allekirjoittaneelle, sillä kehnoudestaan huolimatta Piranhankin historiaa olisi kiva tallentaa. Blobjob muuten voitti Mindtrek-multimediakilpailun 1998. Yksinkertainen oli kaunista, kikkailu ei. Valistusaspekti tosin yritettiin piilottaa oudon tieteistarinan taakse. Firman kolmas, paras ja viimeinen julkaisu tuli muuten Italiasta. Nokia yritti ratsastaa myöhemminkin matoilulla, mutta kovin hyvin siinä ei käynyt. Se on näet isoa sormea heristelevä valistuspeli, joka valistaa nuoria muun muassa huumeista, liikenteen vaaratilanteista, turvaseksistä, viinasta ja sähköpaloista. Piranha (1996) Tekijä/julkaisija: D-Designs / OTM Publications & Promotions Ltd. Viisi synteettistä ihmistä on kadonnut matkallaan patenttivirastoon, ja nyt heidät pitäisi löytää. Niinpä Blobjobissa kuvattiin näyttelijöitä bluescreeniä vasten ja istutettiin heidät tietokonetaustoihin. Voinee väittää, että peli oli enemmänkin kasa yhteen heitettyjä rutiineja ja kierrätettyjä ideoita, mutta kukaan ei ollut miettinyt tai suunnitellut kokonaisuutta. The Blobjob (1998) Tekijä/julkaisija: Intelligame Oy, Detonium Interactive, Sarajärvi & Hellén Oy / Sampo Oy Alusta: PC Snaken jatko-osat Taneli Armannon Nokian kännyköille tekemästä Snakematopelistä kasvoi käsite ja ensimmäinen suosittu mobiilipeli. Vähemmän yllättäen lopputulos on kaamea ylinäytelty reliikki, jossa elävä kuva pyörii ruudulla tikkuaskin kokoisena, kiitettävän niukoilla frameilla. Kansanvalistusaspektikin selittynee sillä, että tekijät ovat varmaan alkujaan tehneet tieteisseikkailua, mutta rahoittaja on halunnut mukaan myös opettavaisia elementtejä. Myös Piranha oli brittiläisen OTM:n julkaisu. Samalla Blobi on myös suttuinen multimediapeli, joka on hieno esimerkki ysärin CD-ROM-vallankumouksen kamalimmista puolista. Tämä on siis palkittu teos! Ei ole moni suomalaispeli näin hienoja pokaaleja kerännyt, joten sen haukkuminen on siis loppujen lopuksi vain kateellisten panettelua. Useisiin Nokian malleihin valmiiksi asennettu Snake III panosti piirroselokuvamaiseen, söpöön tyyliin isometrisellä 3D-henkisellä kuvakulmalla. Tähän päälle mausteeksi point’n’click-seikkailua ja puzzleja, niin johan luulisi käsissä olevan klassikon ainekset. Nokia teetätti Snakelle monta jatko-osaa, jotka olivat toki kauniimpia ja värikkäämpiä – mutta myös pettymyksiä. Ilmeisesti Piranhan tekijöillä oli demoskenetaustaa, mutta valitettavasti tekijätiimistä tiedetään vain muusikot. N-Gagen Snakes pursusi värejä ja erilaisia pelitiloja, mutta kompastui kikkailuun. Arvostan kovasti sitä, että tällainen on pystytty aikoinaan Suomessa tekemään. Kaupan päälle seikkailun ongelmat ovat läpihuutojuttuja eikä läpipeluuseen mene puolta tuntia pidempään. 2 42 syydettiin hirveästi liikkuvaa kamaa ajattelematta lainkaan, missä kohtaa haastavuuskäyrä muuttuu v*t*t*skäyräksi. Peli oli visuaalisesti hirmu Blobjob ansaitsisi uudelleenjulkaisun Suomi100:n kunniaksi! Antaa matopelin maatua mullaksi, turha sitä on enää kierrättää edes uudessa 3310:ssä.. D-Designista ei ole jäänyt minkäänlaista nettijälkeä. 2 1 7
Niissä on ideaa, urheaa yritystä ja sinnikkyyttä. Kohtasin aikoinaan Luciusin tekijän pelimessuilla, haastattelin häntä, tein positiivisen ennakkojutun ja jäin pitämään peukkuja. Kaikessa tronimaisuudessaan peli oli pienellä ruudulla liian iso ja korkealla kurottava. 43 hieno, ja idea laajoista, ruutua suuremmista kentistä ja vierivästä ruudusta oli oivallinen. Tekijät viilasivat vaikeustason oman osaamisensa mukaan, ja kun suuri yleisö päästettiin pelien kimppuun, niin kyllä siinä tikut lentelivät seinään. Jatko-osien onnistumisen tasosta kertookin paljon se, ettei niitä muisteta tänään lainkaan. Olihan se söpö, mutta niin olivat kloonitkin. Lähes mutta melkein Kuten palstan alussa mietiskelin, suomalaispelien kritisointi on vaikeaa. Alkuperäisen Snaken nerokas yksinkertaisuus sen sijaan toimii yhä edelleen. Pikkuriikkinen indiestudio tavoitteli niillä korkealle, mutta aika, raha ja resurssit eivät riittäneet lupaavan idean viemiseen aivan perille saakka. Sen jatko-osa on herättänyt hieman erilaisia tunteita, sillä ainakin kyselyjen ja jutustelujen perusteella moni pitää sitä pelimekaniikoiltaan selvästi edeltäjäänsä huonompana. Mutta 1980-luvulla moni asia oli toisin. Se vain ei riittänyt. Monien kanssasisartensa ja -veljiensä kanssa se on yksi monista teoksista, jotka jäivät yrityksestä huolimatta tasolle ”tämä voisi olla kiva peli, todella hyväkin, jos vain...”. Se saattaa henkilökohtaisella tasolla pitääkin paikkansa. Ikävä kyllä peli ei loppumetreillä tavoittanut lupaavan asetelmansa potentiaalia. Esimerkiksi Shiver Gamesin Lucius-seikkailut ovat pelejä, joita haluaisi kehua ja ylistää. Saatanan pojan murhaseikkailussa oli ideaa.. Snakes Subsonic taasen oli teknisesti upea, mutta myös suorastaan suttuinen, epäselvä ja epäpelattava. Seikkailua tehtiin hyvin kotikutoisesti, itse kehitetyillä työkaluilla ”tein itse ja säästin” -tyylisellä motion capture -tekniikalla, paljolti yhden ainoan ihmisen voimin. En nosta Luciusia esille siksi, että se itsessään olisi kummoinenkaan katastrofi, vaan siksi, että se on osuva esimerkki suomipeleistä, jotka eivät aivan onnistuneet. Rakastettukin peli voi olla toisille hirvitys. Ne eivät ole suinkaan huonoja pelejä, vaan pikemminkin erinomaisia aikansa peilejä. Onkin jamppoja, joille jompikumpi tai kumpikin peli edustaa paskuuden huipentumaa. Monesti ennen kaikkea raivolla, sillä molemmat pelit ovat hillittömän vaikeita. Ne ovat suomiklassikoita, joita ei tänään nautinnokseen pystyisi pelaamaan, mutta eivät ne mitään pohjamutaakaan ole. Pelisuunnittelun ongelmakohdat, bugit, kömpelöt kontrollit, suoraviivaisesti toteutetut kaaostehtävät ja paikoittain epäselvä ”mitä se pelintekijä nyt oikein haluaa minun tekevän” -logiikka kaatoivat seikkailun. Snakes (2005) / Snake III (2005) / Snakes Subsonic (2008) Tekijä/julkaisija: useita / Nokia Alusta: Nokian puhelimet Kunniamaininnat 80-luvun kuuluisimpiin lukeutuvat suomipelit Painterboy ja Uuno Turhapuro ovat pelejä, jotka muistetaan ja joita yhtaikaa sekä rakastetaan että vihataan. Pelaajan tunteita ei suuremmin ajateltu, eikä pelitestaustakaan juuri harrastettu. Siinä oli ideaa ja kekseliäisyyttä, sillä harvemminpa peleissä pääsee touhuamaan Saatanan poikana ja aiheuttamaan maan päälle kaaosta ja kuolemaa. Nykyajan hiteistä mieliä jakaa erityisesti mobiilipeli Hill Climb Racing, josta kauneimmat kiertelyt toteavat ”ei niin kova kuin maineensa”. En silti lämmennyt pelille yhtään, sillä loppujen lopuksi näitä matopelejä oltiin kuitenkin nähty monessa muodossa aiemminkin. Molemmissa oli mittaansa nähden korkeat tuotantoarvot, ja niitä onkin pelattu raivolla ja tunteella. Joskus jopa ikävää. Ehkä niiden yliampuvaa vaikeustasoa voi pitää tänään huonona designina
Eräs verkkopelaamisen pioneereista oli VASSAL, Java-pohjainen pääteohjelma, joka suunniteltiin raskaiden sotaja miniatyyripelien pelaamiseen verkossa. Kiinnostuksen ja yleisömäärien noustessa myös tuotantobudjetit kasvoivat ja yhä kunnianhimoisemmat pelit saivat vihreää valoa julkaisijoilta. Teksti: Miikka Lehtonen Kuvat: Miikka Lehtonen, Emma Kantanen, eri pelivalmistajat. Virtuaalipöydän ritarit Lautapelien nostaessa profiiliaan ihmisten olohuoneissa ja pöydillä PC-pelaamisen maailmassa koettiin Ilmaisia lautapelejä verkossa – mutta mihin hintaan. Mistä on oikein kyse, ja onko asia sittenkään aivan niin mustavalkoinen. Teknologian kehittyessä kuvioihin on ilmestynyt myös aivan uusi ilmiö: lautapelien piratisointi. Ohjelmat eivät olleet kovinkaan helppokäyttöisiä saati näyttävän näköisiä, eikä niillä ollut paljoakaan käyttäjä. Lautapelaaminen oli jo vuosien ajan ollut lasten, vanhempien ja armottomien turbonörttien hommaa, eli aika pientä marginaalipuuhastelua, paitsi tietenkin Saksassa. Samaan kategoriaan kuuluu myös FumBBL, jonka avulla Games Workshopin mainiosta fantasiafutispeli Blood Bowlista pitävät ovat pelailleet omia sarjojaan ja liigojaan jo muutaman vuosikymmenen ajan. Nykyään, reilut 20 vuotta myöhemmin, lautapelit ovat jo valtava bisnes. Ihmiset huomasivat, että lautapeleissä riitti ideaa. Peli ei suinkaan jäänyt yksinäiseksi ihmeeksi, vaan sai nopeasti seuraa ja kilpailijoita kaikkialta maailmasta. Shakit, tammet ja muut perinteiset pelit ovat saaneet rinnalleen pelaajien ja harrastajien kehittämiä työkaluja, joilla on voinut pelailla jos jonkinlaisia pelejä verkossa. Kuten jokainen useampia ihmisiä vaativia harrastuksia järjestänyt tietää, tämä ei ole aina aivan hirveän helppoa. Ohjelma on nauttinut tasaista suosiota jo useiden vuosien ajan, joskin lähinnä vain omissa piireissään. Eräs lautapelaamisen suurista valteista on myös eräällä tavalla sen suuri rajoitin. Muitakin vastaavia ohjelmia on ollut tarjolla jo pitkään ja mitä ihmeellisempiin tarpeisiin, mutta niissä kaikissa on ollut samat ongelmat – jos niitä sellaisina nyt haluaa pitää. 2 44 Pelit K aikki alkoi – kuinkas muuten – Saksasta. Vaikka poikkeuksiakin löytyy, valtaosa lautapeleistä on sosiaalisia kokemuksia, joihin tarvitaan useita pelaajia. Niitä pelaavat kaikenlaiset ihmiset kodeissa, työpaikoilla, baareissa ja ties missä muualla. Siellä lautapelit olivat kohtalaisen suosittuja vielä vuonna 1995, jolloin Settlers of Catan räjähti suosioon maailmanlaajuisesti. Varsinkin aikuisilla aikataulut ovat usein sellaisia, että on hankala saada puoli tusinaa ihmistä saman pöydän ääreen illanviettoa varten. Ratkaisu ongelmaan on toki ollut olemassa niin kauan kuin tietoverkotkin, sillä jo ensimmäisistä tietokoneiden väliset yhteydet mahdollistavista ratkaisuista lähtien ihmiset ovat pelanneet niillä lautapelejä. Kankea ja karu ohjelma ei ole hirveän helposti lähestyttävä, eivätkä sen simuloimat pelitkään ole niitä kaikkein suosituimpia. 2 1 7 . Lautapelit ovat nykyään hirvittävän suosittu harrastus, jolla riittää ystäviä ympäri maailman
Digitaaliseen pelija ohjelmistojakeluun keskittyvä Steam tarjoaa kehittäjille suuren yleisön ja pelaajille helpon pääsyn toinen toistaan ihmeellisempiin peleihin. 45 samanlaisia suosionnousun hetkiä. Moni peli on käyttänyt Steam Workshopia ihailtavan kekseliäillä tavoilla, mutta harva niin hyvin kuin Tabletop Simulator, jota ei voisi olla edes olemassa ilman Workshopia. Voisi hyvin kuvitella, että tällainen miltei skeuomorfistinen pyrkimys toistaa oikean elämän rituaaleja ja elementtejä virtuaalisesti työntäisi pelaajia pois. Valve-yhtiön Steam vahvisti jatkuvasti otettaan pelaavan maailman suurimpana verkkokauppana. Kehittäjien vision mukaan Tabletop Simulatorin pyrkimyksenä oli tarjota työkalulaatikko, jonka avulla pelaajat voisivat pyörittää vaikka Dungeons & Dragons -pelejään virtuaalisesti aivan kuin he istuisivat saman pöydän ääressä. Niin, ja tietenkin myös työkalut, joilla pelaajat voivat itse tehdä omia lautapelejään. Intuitiivisesti juuri ne yksinkertaiset ja nopeat hiirivetoiset käyttöliittymät tuntuisivat paremmalta ratkaisulta, mutta toisin tuntuu käyneen: Tabletop Simulatorista tuli nopeasti suuri hitti, joka kipusi pikavauhtia Steamin myyntilistojen kärkeen ja pysyi siellä sitkeästi kuukaudesta toiseen. Pelaajat näkevät ruuduillaan virtuaalisen pöydän, jonka päällä kaikki komponentit ovat kuin oikeina fyysisinä versioinaan. Yksittäiset pelit maksavat halvimTosimaailman seurapeleissä on joskus yllättäviä käänteitä, joita on vaikea simuloida digitaalisesti. millaankin muutamia kymmeniä euroja keskihinnan ollessa käytännössä 50–60 euron kieppeillä. Meidän aiheemme kannalta keskeinen ominaisuus on Steam Workshop, hämmentävän helppokäyttöinen ja suosittu tapa kehittää, jakaa ja hallinnoida erilaisia modeja, fanien tekemiä lisäosia ja muita kilkkeitä Steamissa myytäviin peleihin. Perinteisesti tämä ei ole ollut helppoa, sillä siinä missä digitaalisen ohjelman voi kopioida helposti, hirmuinen pino fyysisiä komponentteja vaatii jo enemmän vaivaa, eikä jälki ole kuitenkaan läheskään samaa tasoa kuin alkuperäisessä. Käyttöliittymä ei varmasti ole se ainoa tai edes suurin syy tähän, sillä Tabletop Simulator on tarkoitustaan varten erinomaisen hyvin suunniteltu paketti. 50 euroa. Täten lautapelipiratismi ei olekaan koskaan ollut mikään suunnaton juttu, mitä nyt muutamat huru-ukot vähän ovat valokopioineet Magic: the Gathering -korttejaan.. Lautapelaaminen ei ole halpa harrastus. Se tarjoaa työkalut kommunikointiin, peliseuran etsimiseen, skriptaustyökalut erilaisten sattumien ja noppien simulointiin ja niin edelleen. Tabletop Simulator on kesällä 2015 julkaistu ohjelma, jonka koko pyrkimys on tarjota graafisesti näyttävä ja täysin kolmiulotteinen virtuaalitila, jossa voi pelata erilaisia lautapelejä. Eräs Steamin jättimäisen kasvun tekijöistä on ollut Valven pyrkimys lisätä siihen kiinnostavia ja hyödyllisiä ominaisuuksia. Jotenkin veikkaan, että juuri tämä on se suurin syy suosiolle. Sen sijaan että pelinappia siirtäessään pelaajat klikkailisivat ikoneita ja ruutuja, he tarttuvat hiirellään kohteeseen ja siirtävät sitä virtuaalimaailmassa. Vai euroa. Kalliimmat, eli enemmän hienoja komponentteja sisältävät pelit, voivat kustantaa reilusti yli 100 euroa. Täten on selvää, että ihmiset ovat halunneet kopioida pelejä suunnilleen niin kauan kuin he ovat halunneet niitä yleensäkään pelata
Toinen pohtimisen arvoinen kysymys on virtuaalisuus. En toki pidä sitä mitenkään ylistämisen arvoisena juttuna, että netissä levitetään suoraan sanoen piraattiversioita kaupallisista lautapeleistä, mutta asiaan liittyy muitakin näkökulmia. Toki Tabletop Simulatorin avulla pelaajat ovat tehneet myös omia erikoisuuksiaan, kuten tämän Bang!-korttipelin World of Warcraft -version. Jos haluaa kokeilla lautapeliä ennen ostopäätöstä, täytyy joko toivoa, että joku kaveri jo omistaa sen, tai tunkea mukaan demotilaisuuteen pelikaupassa tai messuilla. Käytännössä nämä lisäsisällöt kuitenkin pölyttyvät virtuaalihyllyille, sillä tarjolla on vielä halvempi versio: fanien tekemä Steam Workshop -modi, joka tarjoaa kaiken saman – ja usein vielä enemmänkin – ilmaiseksi. Eldritch Horrorin kaltaiset pelit sisältävät niin paljon komponentteja, että keittiön pöydällä on oikeasti ahdasta. 2 1 7 . Kun tapaamme, kaivamme toki esiin fyysiset versiot suosikkipeleistämme tai X-Wing Miniatures -figupelin laivastomme ja pelaamme keittiön pöydällä. Lords of Waterdeep oikeana lautapelinä, Tabletop Simulator -versiona ja virallisena iPad-pelinä.. Myös oikeiden fyysisten pelien kehittäjät ovat huomanneet tämän. Joissain peleissä nämä hybridiominaisuudet vaikka toimivat ikään kuin tekoälyn vastustajana: ne opastavat pelaajalle, miten lauta tulee asettaa ja sitten ohjaavat lautaa sen pelatessa pelaajia – tai yksittäistä pelaajaa – vastaan. Eikös piratismi kuitenkin ole yksiselitteisesti väärin. Oikea versio kustantaa lähemmäs 100 euroa, joten paperilla tarjous kuulostaa ihan hyvältä. Lautapelit ovat kalliita, ja toisin kuin videopeleistä, niistä ei käytännössä ole saatavilla demoja. Kun emme näin pysty tekemään, en ainakaan itse tunne syyllisyyttä, jos lataammekin netistä jonkun tekemän modin, joka sisältää pelin komponentit uskottavina virtuaaliversioina. Kolikolla on kaksi puoliskoa Hetkinen, ”harmailla vesillä”. Koska laatua ei mitenkään kontrolloida, todella hienojen ja laadukkaiden pelipakettien ohella tarjolla on myös vähemmän komeaa jälkeä, kuten tässä Blood Bowl -pelissä. Ja nyt olemmekin harmailla vesillä. Yllättäen korkearesoluutioiset skannit pelin korteista ja pelilaudasta, sekä 3Dmallinnusohjelmilla tehdyt versiot sen fyysisistä pelimerkeistä riittivät tuottamaan kokemuksen, joka on hyvin lähellä alkuperäistä. Tabletop Simulatorin voimakkaan skriptauskielen ansiosta peleihin on myös helppo toteuttaa yllättävän monipuolisia mekanismeja: pusseja, joista voi nostaa satunnaisia pelimerkkejä, itsestään sekoittuvia pakkoja ja jopa pelin logiikkaa valvovia ja seuraavia ”pelinjohtajia”. Olen itsekin näin kokeillut muutamaa 120 euron lautapeliä ja huomannut, että vaikka ne olivat ihan kivoja, ne tuskin olisivat 120 euron edestä kivoja. Tästä voidaan olla monta mieltä, mutta itse sanoisin, että tilanne ei ole aivan niin helppo. Näen useimpia heistä muutaman kerran vuodessa, joitain vielä harvemmin. 2 46 Tabletop Simulator kuitenkin muutti tilanteen totaalisesti. Virtuaalimaailmassa tilaa riittää. Kolme versiota samasta pelistä. Tabletop Simulatoriin onkin kaupan virallisia lisäsisältöpaketteja, jollaisena voi vaikka 8,99 euron hinnalla ostaa virtuaaliversion suositusta Zombicide-pelistä. Minun lautapelikaverini asuvat pitkin Suomea, Eurooppaa ja maailmaa. Pelikokemushan kuitenkin on ainakin mekaanisesti hyvin lähellä oikeaa, vaikka oikeiden pelien sisältämien artifaktien käpistelystä saatavaa mielihyvää ei pääsekään kokemaan. Niin kliseiseltä kuin se kuulostaakin, kokeilumahdollisuus on todellinen houkutin monelle. Käytännössä kaikkien lautapelien säännöt on saatavilla netistä digitaalisina latauksina, ja lisäksi pelaaminen on muutenkin muuttamassa muotoaan. Eräs lautapelaamisen suurista trendeistä ovat niin sanotut hybridipelit, eli pelit, joissa fyysinen lautapeli ja jonkinlainen digitaalinen ohjelma, kuten älypuhelinapplikaatio, yhdistyvät. Tabletop Simulatorin kautta kynnys kokeilla pelejä on kuitenkin olemattoman pieni ja se kutistuu jatkuvasti
Ei olekaan yllätys, että juuri niiden mallintaminen on ollut hyvin suosittua puuhaa. Lautapelaaminen on globaali harrastus, ja sillä on ystäviä kaikkialla maailmassa – myös pienillä kielialueilla, joissa englantia tai saksaa, lautapelaamisen kahta lingua francaa, ei välttämättä kamalasti puhuta tai ymmärretä. Mitä jos esimerkiksi Asmodee, pelimaailman suuri kolossi, tekisi oman Tabletop Simulatorinsa. Moni firma on jo nyt ryhtynyt tuottamaan digitaalisia versioita peleistään ja ne ovatkin saavuttaneet suosiota. Varmasti jokaista demopeliä tai lokalisoitua versiota etsivää pelaajaa kohti Tabletop Simulatorilla on useita pelaajia, jotka vain haluavat ilmaisen lounaan. Niinpä tilanne on pelaajien kannalta herkullinen, lautapelivalmistajien kannalta haastava. Mutta mitä jos pelivalmistajat menisivät vielä askeleen pitemmälle. Myös miniatyyripelaajille Jos lautapelit ovat hintavaa puuhaa, niin ne ovat lasten leikkiä verrattuna satojen eurojen panostuksia vaativiin miniatyyripeleihin. Moni firma varmasti pelkää menettävänsä myyntejään digitaalisille pelikopioille, ja moni muu haluaisi osaksi näistä uusista digirahoista. Optimisti voisi myös ajatella, että ehkä näin tekemällä voidaan lähettää pelien julkaisijoille viesti siitä, että pienilläkin alueilla kysyntää riittää. Myöskään kerran pullosta päästettyä henkeä ei saa tungettua sinne takaisin. Pikaisen testauksen perusteella VR-versio toimii oikein mainiosti. Täten kynnys tukea pieniä markkina-alueitakin kutistuu. Täten harrastajien ainoa vaihtoehto on tilata pelejä nettikaupoista, jolloin valuuttakurssit, toimituskulut ja tullit nostavat hinnat tähtitieteellisiksi. Jää nähtäväksi, miten paljon vastaavat virtuaalilautapelikokemukset tulevat tulevaisuudessa yleistymään ja kehittymään. 47 vastuu rehellisyydestä jää itse pelaajan vastuulle: lataatko pelejä, joita et itse fyysisesti omista. Voidaan pohtia myös pieniä markkina-alueita. Vaihtoehtoja on useita. Fanien tekemiä pelipaketteja: yli 6000. Tilan tuntu on hyvä ja pelaaminen on entistä mukavampaa, kun näppäinoikopolkujen sijaan voi liikkua fyysisesti pelitilassa ja manipuloida esineitä käsillään ohjainten avulla. Tabletop Simulator pähkinänkuoressa Kehittäjä: Berserk Games Hinta: 19,99 euroa Laillisia, lisensoituja pelipaketteja: 28 erilaista nimikettä. Vaikka Tabletop Simulator poistettaisiin myynnistä, joku muu vain tekisi saman jutun uudelleen. Nätti ja hyvin toimiva versio suosikkilautapelistä, jota voi pelata verkon yli vaikka junassa tai hotellihuoneessa, on houkutteleva vaihtoehto. Olisi tietenkin älyllisesti epärehellistä sivuuttaa tätä näkökulmaa kokonaan. Aktiivisia pelaajia: parhaimmillaan yli 7000 samanaikaista pelaajaa. Kysyntää riittää, ja miksipä ei. Lautapelit ovat tuskin katoamassa mihinkään, vaan ne pikemminkin vankistavat koko ajan asemaansa hyväksyttävänä ajanvietteen muotona. Asmodee Simulatorissa pelaajat voisivat joko ostaa digiversiot peleistä pikkurahalla (fyysisiin peleihin verrattuna), tai fyysisen pelin mukana tulevan QRkoodin skannaamalla todistaa omistavansa pelin laillisen version ja saisivat näin oikeudet sen pelaamiseen kavereiden kanssa netissä. Virtuaalisille lautapeleille löytyy siis paljon muitakin käyttökohteita ja perusteluja kuin halu piratisoida kalliita pelejä. Kun tarpeeksi moni ei ymmärrä englantia riittävän hyvin, pelejä ei kannata myöskään tuoda maahan englanninkielisinä. Koska lautapelien fyysinen tuottaminen on hirmuisen kallista puuhaa, nämä pienemmät markkina-alueet jäävät ilman pelejä sekä kielellisesti että usein fyysisesti. Ongelma ei ole helppo, sillä pelaajia voi olla enää hankala saada siirtymään, varsinkaan maksullisten vaihtoehtojen pariin. Lautapelit ovat usein algoritmisesti yksinkertaisia – ainakin mekaniikoiltaan – joten niiden kääntäminen digiversioiksi on kohtalaisen yksinkertaista puuhaa. Harrastajilla riittää aikaa ja intoa kääntää pelien komponentit uusille kielille, eikä jakelukaan kustanna mitään. Lisätietoja: berserk-games.com/tabletop-simulator Immersion seuraava askel Tabletop Simulator tukee myös SteamVR-rajapintaa, eli esimerkiksi HTC Vive -lasit omistava saa todella immersiivisen kokemuksen. Tilanne ei ole siis helppo. Milloin näemme virtuaalimaailmassa myös 3D-versiot kavereistamme. Esimerkiksi megasuosittu X-Wing Miniatures on niin hyvin tuettu Tabletop Simulatorissa , että kaikkien pelin alusten lisäksi siihen on saatavilla skriptattuja apuvälineitä, joiden avulla alusten lentoratojen mallintaminen ja muut pelipöydältä tutut käsitteet onnistuvat hyvin helposti. Mihin tästä. Tulevaisuus on mielenkiintoinen. Kun markkina-alue on pieni, pelejä ei lokalisoida. Tabletop Simulatorin latauslistojen kärjessä koreilevatkin jatkuvasti fanien tekemät lokalisoinnit peleistä mitä ihmeellisemmille kielille. Cards Against Humanity on yksi parhaista ikinä koskaan tehdyistä seurapeleistä, jonka naamakkaissosiaalista puolta on mahdotonta toistaa parhaassakaan digiversiossa.. Vaan miten. Todennäköisesti vielä hämärämmin ja piratismikeskeisemmin. Lautapelivalmistajien tappio on toisaalta pelaajien voitto, sillä lautapelien pelaaminen verkossa ei ole koskaan ollut näin helppoa tai mukavaa, ainakin jos ei anna moraalisten kysymysten painaa liikaa
Niistä suurin ja vanhin, Radosims ja sen keskustelualue Radola, pyöri edelleen, vaikka tietokantaharakiri on syönyt sivuston ja kaiken sinne luodun materiaalin moneen kertaan. Pelaajat voivat asettaa itselleen omat tavoitteensa ja pelityylinsä, halusi sitten keskittyä vaikkapa rakentamiseen, hahmojen luontiin, niiden mielikuvitukselliseen listimiseen tai kaikenkattavaan kustomointiin. Verkkoyhteisö vetää edelleen puoleensa myös uusia kasvoja vanhojen, jo toista vuosikymmentä pelin parissa viettäneiden kavereiksi. Vaikka Sims-pääpeleissä ei ole edes moninpeliä, niin niiden ympärille on tästä huolimatta kasvanut yhteisöjä, jotka toimivat niin pelin kautta kuin sen ulkopuolella. Juoneton koukku – siis mitä. Sims-yhteisö on kuitenkin jaksanut kasvattaa foorumin aina vain uudelleen nollasta uuteen kukoistukseen. 2 48 Yhteisöt M aanmainio elämäsimulaatiopeli The Sims syntyi helikopterisimulaation lapsipuolena, ja sen ensimmäinen valmis esine oli vessanpytty. Samalla se on tietokonepeli, jonka parissa viihdytään lapsesta mummoon, ja joka yhdistää ihmisiä kautta maan. Se viitoittaa teitä opiskelupaikkoihin ja saa harrastaTeksti: Milsa Kuvat: Toni Kortelahti, EA, Radosims, Radola Sims-pelien ympärille on kasvanut Suomessa omanlaisensa aktiivinen ja tekemisen iloa pursuava yhteisö, jossa osataan luoda ja kannustaa. Erittäin edesauttava asia on se, että Simsissä ei ole koskaan ollut yhtä suurta juonta, päämäärää tai tavoitetta, saati yhtä ainoaa oikeaa tapaa pelata. Simsit ovat aina tarjonneet alustan luovuudelle, ja jos jotain ei ole voitu tehdä valmiil. Kuinka peli, jonka jännittävänä juonettomana juonena on luoda ja ohjastaa pieniä ihmishahmoja, simejä, läpi näiden elämän, on saanut aikaan tämän kaiken. Ikähaitari venyy ala-astelaisista aikaihmisiin. Sims Pelin eloisa ja erikoinen yhteisö jansa opiskelemaan kuvankäsittelyn ja 3D-mallintamisen saloja. 2 1 7 . Ennalta määrättyjen kaavojen sijaan Sims on päinvastoin taittunut kiltisti jos jonkinlaiseen pelityyliin. Ensin sitä ei edes haluttu julkaista, mutta sittemmin sarjan eri osat ja laajennukset ovat myyneet satoja miljoonia kappaleita ja hurmanneet ruutujen ääreen nekin, joita muut pelit eivät inspiroi. Syitä on monia. Suomessa on ollut ensimmäisen Simsin julkaisusta saakka suuria Sims-yhteisöjä
Sinä aikana Wright sai Maxisilla valmiiksi useita muita pelejä, joista esimerkiksi SimCopterissa luotiin simlish-kieli. Alusta saakka peliin on räätälöity myös modauksia, jotka muuttavat pelimekaniikkaa joko hillitysti sopivaan suuntaan tai rankemmin täysin uusiin suuntiin. Voi olla, että ainakaan viimeksi mainitut eivät ole sitä, mitä pelivalmistaja olisi ajatellut saati toivonut pelaajien luovan. Yksittäisten hahmojen elämää seuraava ihmissimulaatio sai alkunsa erään kirjan tarjoaman konseptin kautta, mutta muuntui varsinaiseksi peliksi vain hiljalleen. Brunon meikit ovat erityisen suosittuja Sims-aiheisissa tarinoissa ja videoissa. Yhteisön yhdistämät Loputtoman uuden ja uhkean materiaalin tulva, jolla pelistään voi boostata juuri toivomansa virtuaalinukkekodin, on ollut rakettipolttoainetta valtavien verkkoyhteisöjen syntyyn. Se mihin pelivalmistaja luomisen lopetti, on vain viiva, jolta pelaajat aloittivat. Oven tähän keskusteluun on usein tarjonnut tarve tarkistaa se paras mahdollinen huijauskoodi tai selvittää, että kuinka kummassa se maailman mahtavin huvila voidaankaan rakentaa valmiiksi. Brunon luomat tekstuurit mahdollistavat simien upean kustomoinnin esimerkiksi valokuvatarinoita varten. Sims pähkinänkuoressa Pelisuunnittelija Will Wrightin historia yltää vuonna 1989 julkaistun SimCityn perimään, jonka myötä herra loi erilaisia elämäja strategiasimulaatioita. Mutta samoin kuin pelisisältöjen luojille itse peli on vasta lähtöviiva, niin myös Sims-keskusteluissa pelistä turiseminen on vasta ensimmäinen muusa, jota muut jutut sitten seuraavat. Kansainvälisesti tunnustettu taituri on niittänyt mainetta julkaisemalla äärettömän yksityiskohtaisia ja pökerryttävän hienostuneita meikkejä, ja hänen suosituimpia luomuksiaan on ladattu maailman suurimmalta The Sims -lataussivustolta, Mod The Simsiltä, yli satatuhatta kertaa. SimCity (1989) SimFarm (1993) SimTown (1995) SimCopter (1996) The Sims (2000) The Sims Online (2002) The Sims Bustin’ Out (2003) The Urbz: Sims in the City (2004) The Sims 2 (2004) The Sims Stories (2007-2008) MySims (2007) The Sims 3 (2009) The Sims Medieval (2011) The Sims Social (2011) The Sims 4 (2014). Loputtomassa luomiskavalkadissa on ollut tilaa niin nahkapöksyille kuin hattarahiuksille, minkä ansiosta jokainen kotipelaaja on taatusti löytänyt jotain mieleistään. Mutta kuten aina, ihminen keksii alta aikayksikön tapoja, joilla nähdään enemmän paljasta pintaa, ja miten monin tavoin tällä pinnalla voidaankaan leikkiä. 49 la työkaluilla ja alustalla, pelaajat ovat tarttuneet itse toimeen. Päivänvalon ovat nähneet paitsi pökerryttävän taidokkaat virtuaaliversiot huippumerkkien innoittamista vaatteista ja taidejäljennöksistä, samoin kuin vauvagrillin, orgiamaton ja teiniraskaus-hackin kaltaiset keksinnöt. Samoin on loihdittu tuhannen Ikean verran uusia huonekaluja, kilometreittäin tapetteja, lattioita ja muita kosmeettisia muutoksia naapurustoista rakennuksiin saakka. Kun yhteen keräytyy tuhansia ihmisiä jakamaan yhteisen intohimon, intohimo leiskuu helposti myös muualla kuin tietokonehuoneessa. Jostain kumman syystä, johon kenties liittyy rapeaksi grillattuja vauvoja, EA ei ole kuitenkaan tukenut pelaajien luovuuden kukintaa Sims 3ja Sims 4 -aikakaudella entisellä intensiteetillä. Ja jos ei ole löytänyt, niin on voinut tehdä sen itse tai voinut pyytää jotakuta mestarillista tekijää laatimaan sellaisen toiveiden pohjalta. Eräs arvostetuimmista oman sisällön tekijöistä on suomalainen tekstuuritaitelija Bruno. Grillataan vauvoja Simsin pelaajat ovat luoneet peliin paitsi loppumattoman kavalkadin uusia vaatteita, meikkejä, hiuksia ja asusteita makuun kuin makuun. Se ei silti ole yksin syy siihen, että moni vaippojaan sotkeva ihmistaimi on saanut alkunsa juuri Sims-yhteisöjen kautta. Vaikka suunnittelutyö alkoi jo 1991, saatiin peli kauppoihin vasta yhdeksän vuotta myöhemmin. Luomiseen on hyvä hurahtaa, sillä pelisarjan alkuvaiheessa Maxis-pelistudio teki etenkin tekstuurien luomisen varsin helpoksi ilmaisella Body Shop -ohjelmalla. Viaton mesh-ongelman kysymiSims-modit mahdollistavat mitä oudoimpia juttuja. Niin ihanaa kuin loputon fanisisältöjen plaraaminen onkin, niin todellinen yhteisön moottori ovat silti ne kanssapelaajat, jotka kokoontuvat yhteen vaihtamaan ajatuksiaan ja kokemuksiaan. Tämä ei ole silti estänyt uusien luomusten tekemistä tai julkaisua
Siksi ne ovat niin hienoja.” Sims-yhteisökin on kautta historiansa tarjonnut juttuseuraa myös sinne, missä asuu vain kolme ihmistä ja orava. Yhteisö on tarjonnut myös tukea niin omilleen muuttoon kuin moneen muuhunkin elämänvaiheeseen, sekä tietysti luonut kasapäin yhteisiä muistoja. Tapaamisissa paitsi luodaan elämänmittaisia muistoja, traumoja tai korvavaurioita, myös luodaan yhdessä jotain todella hienoa. Onkin helppo todeta, että yhteisössä on voimaa, eikä siksi ole kummaa, että esimerkiksi Radosims on porskuttanut jo yli 12 vuoden ajan. Kaistapäisempiä tilanteita lienevät olleet vaikkapa spontaanit yhteislaulut kanssaihmisten ihmetykseksi esimerkiksi Kampin kauppakeskuksessa ja Turun linnassa. Yhteisön kautta on myös järjestynyt useita ensimmäisiä työpaikkoja tai työkokeiluja, ja simsaajat ovat olleet vuosien ajan tuttu näky esimerkiksi DigiExpo-tapahtumassa ja pelimessuilla. Linkkejä Radosims radosims.com Radola-keskustelufoorumi www.radosims.com/radola/ Sometarinoita Suomesta www.adlibris.com/fi/kirja/sometarinoita-suomesta-9789523040557. Miitit ovat monelle tärkeitä ja jännittäviäkin tapahtumia, sillä osa osallistujista on voinut olla mukana yhteisössä jo vuosikymmenen ajan, ellei pidempäänkin. 2 1 7 . Takana on kuitenkin jo kunniakas historia, joten myös tulevaisuudelta voi odottaa paljon. 2 50 nen on saattanut syöstä kysyjän läpi satojen aiheiden ja tuhansien viestien johtaen aina livetapaamisiin ja uravalintoihin saakka. Suomalaisia simssaajia on kuljetettu myös vierailuille pelivalmistajan konttoreihin niin Suomessa, Pohjoismaissa kuin maailmalla, sekä testaamaan pelejä ennakkoon että tapaamaan muita faneja ja pelikehittäjiä. Eräässä näistä Blumbobin simien pään päällä leijuvan timantin muotoinen kakku syötiin parempiin suihin keskellä puistoa. Yhteisten kokemusten hankinta ei rajoitu pelkästään verkon kautta tapahtuneisiin keskusteluihin ja elämyksiin. Niiden sivuvaikutuksena ainakin City-Centerin vartijat ovat päätyneet harkitsemaan vakavasti uranvaihtoa. Kun tämä kaikki on vielä tapahtunut turvallisessa ympäristössä, jossa häiriköintiin puututaan nopeasti ja lujasti, moni nykyinen aikuinen on huomannut kasvaneensa paitsi elämäsimulaation, myös upean yhteisön parissa. Tuskinpa kukaan osasi olettaa, että pelisarjan ystävät rakentavat aikaa ja vaivaa säästelemättä sivustoja ja foorumeja, jotka kutsuvat tuhannet kanssapelaajat puhumaan lemmikeistään, tulevaisuudensuunnitelmistaan tai ihan vaan fanittamaan lempibändiään. Kirjoittaja Milsa on ollut Sims-aktiivi vuodesta nakki lähtien. Samassa hengessä simsaajat ovat kannatelleet ilmoille myös kokonaisen runokirjaprojektin ja monta erikoista taideprojektia. Kakku tapahtui myös toisellakin kertaa, jolloin kermaa pursui pitkin Narinkkatoria. Radolan yhteisö on myös järjestänyt omia kilpailuja, osallistunut tohtorinväitöstilaisuuksiin, antanut vinoja pinoja haastatteluja, ollut mukana luomassa suomalaista pelikulttuuria ja käynyt studiovierailujen välillä aktiivisesti kirjeenvaihtoa pelivalmistajan kanssa. Joskus foorumilla on kirjoitettu yhteistyönä fanificejä yhteisön jäsenistä ja ylläpitäjistä, joskus porukka on rynnistänyt yllätyshyökkäyksenä pelivalmistajan toimistolle tai ajanut admininsa onnistuneesti läpi nokkospuskien. Sims-harrastajat kohtaavat toisiaan myös naamakkain: tapaamisia järjestetään ahkerasti etenkin Turussa ja Helsingissä. Sivuston ylläpitäjä Radon mukaan tämä on paljolti ”maailman parhaiden moderaattoreiden” ansiota. Hupsista! Ei vihaa, vaan tukea ja kannustusta Sims-yhteisöjä on alusta asti leimannut se, etteivät keskusteluaiheet rajoitu pelkästään peliin, vaan kattavat myös sen tuhannen muuta asiaa. Niiden aikana syödään, juodaan ja pidetään yleisesti todella kovaa ääntä sekä puhutaan syntyjä syviä. Miiteissä voi tapahtua mitä vain. Vai miltä kuulostaa se, että Simsin komeimmista bugeista tehdään taidenäyttely. Sometarinoita Suomesta -kirjan kirjoittaja Jarno Alastalo toteaakin verkkoyhteisöistä näin: ”Nettiyhteisöjen kautta on mahdollista löytää ja tavoittaa samanhenkiset ihmiset, myös silloin kun asuu kaukana. Mutta niin vain kävi. Aika näyttää, miten tulevaisuus kohtelee Sims-yhteisöllisyyttä. Olivatpa kyseessä sitten koulukuulumiset, pohdinnat vapaa-ajasta tai ihmissuhteet, niin niistä keskustellaan aivan yhtä varmasti kuin Vauva-foorumia trollataan
51
Jaa se tekstinkäsittelylaite. He olivat hioneet taitojaan toisten palkkalistoilla, oppineet tekemään töitä yhdessä ja löytäneet toisistaan niin tukea, inspiraatiota kuin raivokasta tekemisen iloa. Elämä oli peliä 24/7. Poppoon jäsenet olivat kovia pelaajia ja osaajia ja halusivat kehittää pelintekoa eteenpäin aivan omanlaisiin suuntiinsa. Adrian Carmack taikoi grafiikkaa, mutta porukan valttikortiksi muotoutui se carmackimpi John, sosiaalisista käytöstavoista vähät välittävä koodaajanero. Mutta PC. Blazkowicz antoi natseille turpaan. 2 52 Pelit Wolfenstein 3D oli rankka, raaka, pyörryttävän nopea ja niin vauhdikas, että jotkut voivat pahoin. Jossain tikitti yksinäinen ColecoVision. Amigistit, konsolistit ja jopa kuusnelospelaajat katselivat PC-pelaajaparkoja säälien, kun nämä yrittivät väkisin pelata nykiviä tasoloikkiaan. Amiga oli pelikukkulan kuningas. Ja kyllähän se tältä sakilta sujui. Kuningatar Elisabeth II juhli 40-vuotista hallituskauttaan. Wolfenstein leikitteli – tai pikemmin pilkkasi – natsismilla niin avoimesti, että peli kiellettiin kertalaakista niin Saksan kaupoista kuin internetistä.. J. Se näytti uskomattomalta ja kuulosti hämmästyttävältä. Se aseiden pauke, vihollisten huudot, kuoleman örinät. Konsolimaailmaa hallitsivat Segan MegaDrive ja Nintendon SNES, mutta moni nautiskeli yhä myös Commodore 64:n, NESin ja Master Systemin peleistä. Ei ollut elämää AmigaOS:n tuolla puolen. Mikään ei ollut enää entisensä, kun William B. Firman miehitys vaihteli jonkin verran, mutta legendaarisessa ydintiimissä Tom Hall vastasi suunnittelusta, siinä missä pitkälettinen John Romero päti sekä ohjelmoijana, ideoijana että pelisuunnittelijana siirtyen peli peliltä enemmän ideaja suunnittelusuuntaan. Se, jolle ei ollut pelejä ja jos olikin, niin ne olivat rumia ja kurjia ja kökköjä. Niiden äänetkin olivat jos ei piipitystä, niin särinää täynnä. Usein asuikin yhdessä. Niistä on rakas klassikko tehty. John Carmack osasi katsoa asioita eri suunnasta kuin muut, löytää kikkoja teknologian hyödyntämiseen ja kehittää uutta, sen sijaan että vain kopioisi muiden tekemisiä. 2 1 7 . Bill Clinton valittiin USA:n presidentiksi. Teksti: Jukka O. 5 .5.1992 Wolfenstein 3D -räiskintäpeli laskeutui pelimaailmaan. Maailma oli tuolloin kovin erilainen. Amiga Gaming Master Race hallitsi, sillä jos halusit näyttäviä pelejä upealla grafiikalla, messevillä äänillä ja mahtavalla ruudunpäivityksellä, niin muita järkeviä vaihtoehtoja ei ollut. Tämä tiivis ryhmä muodosti pelijengin, joka puhui samaa kieltä ja hengitti samaa ilmaa. Natsit, natsikoirat ja Hitler. Mutta Yhdysvalloissa oli pieni, nuori peliyhtiö, jonka riveissä oli muutama nuori, aina vain korkeammalle tähtäävä pelintekijä. Kauppinen Kuvat: Mobygames, id Software, Bethesda Softworks Guten Tag, mein KyberFührer Neljännesvuosisata sitten videopelit muuttuivat
53 Kohti kolmea deetä Tiimin tekniset kokeilut siirtyivät jo varhaisessa vaiheessa sivusta ja päältä kuvatuista peleistä ja yksinkertaisemmista toimintapeleistä kohti uusia suuntauksia. Niinpä kaverit vain kaappasivat nimen itselleen, ja loppu onkin historiaa. Catacombissa Hoverin yksiväriset seinät teksturoitiin Ultiman haastamana värikkäästi ja näyttävästi, samalla kun sankari juoksenteli sokkeloissa FPS-hengessä ammuskellen vastaantulevia örkkejä tulipalloilla. Taktiikka toimi hillittömän hyvin ja raha virtasi. Marko Latvanen Pelaajien muistoja Pyysimme pelaajia kertomaan muistojaan Wolfenstein 3D:stä niin Facebookissa kuin keskustelupalstallamme.. Samaan aikaan he työskentelivät myös Apogee-kustantajan kanssa. Niissäkin kuljeskeltiin natsien täyttämissä linnakkeissa, mutta räväkän räiskeen sijaan pelaaja yritti pysyä piilossa ja nitistää natsit huomaamatta. John Carmackin koodarintaidot olivat näihin aikoihin hurjassa terässä. Wolfenstein oli välittömästi omaa luokkaansa Ripaus uutta, ripaus vanhaa ja järjettömästi vauhtia Wolfenstein 3D oli peli, joka jäi mieleen. Alun perin tiimi teki stealth-taktiikkapeliä, vaikka jossain välissä kulma oli myös avaruudellisemmassa scifiräiskinnässä Aliens-elokuvan hengessä. Tapa natsi, tapa kaksi, tee maailma paremmaksi Apogeen kustantaja Scott Miller antoi alkutönäyksen, kun hän näki Catacombsin. 4.5.1992 modeemi lauloi Software Creations BBS:lle ja aloitti siirron. Ainekset videopelien vallankumoukseen olivat valmiit. Hybabo! *rätätätätätä* Mein leben! Jaakko Vähälä Atari ST:llä on tullut pelailtua. Keenit olivat pitäneet pitkään shareware-listojen ykkössijaa, ja taanneet pojille turvatun elannon noin 30 000 dollarin kuukausitilityksellään (nykyrahassa noin 54 000 USD, 51 000 €). Oli hämmästyttävää miten peli on saatu pyörimään 8 megahertsin raudalla. Eikö olisi helkkarin upeaa, jos vaikka tekisimme Castle Wolfensteinista uuden version, mutta 3D:nä?” Siitä se lähti. Hovertank ja Catacombs kun viitoittivat selvän kehityspolun kohti visuaalisesti näyttäSe oikea Wolfenstein Wolfenstein 3D on ensimmäinen id Softwaren eeppisistä 3D-räiskinnöistä mutta ei suinkaan ensimmäinen Wolfenstein. Samalla Carmackin viilattu pelimoottori osoittautui häikäisevän nopeaksi ja näyttäväksi. Raivokas, aggressiivinen ja nopea räiskintäpeli, jollaista ei oltu ennen nähty. Lopulta kulma tarkentui natseihin ja linnoihin. Se ei kuitenkaan tullut aivan niin yllättäen ja tyhjästä, kuin moni sen ajan pelaaja koki. Castle Wolfenstein ja jatko-osa Beyond Castle Wolfenstein olivat varsin kovia hittejä Applella ja sittemmin muun muassa C-64:llä. Kuningasidean muovautumisen jälkeen peli syntyi kolmessa kuukaudessa. 3D:tä oli toki tehty ennenkin. Porukka teki peräkanaa useita pelisarjoja, joten rutiinia oli pakko löytyä. Voisiko näillä koneenrämillä – tai siis sen aikaisilla huippukoneilla – luoda myös ihan oikeaa 3D-grafiikkaa. Mutta brutaali se oli – täynnä Romeron visiota, Carmackin koodia, Adrianin natseja ja Hallin kenttiä. Se kunnia menee näet Muse Softwaren tekemille Castle Wolfenstein -hiiviskelypeleille, jotka saattoivat jopa luoda stealth-hiippailugenren. Sharewaressa pelaajille annettiin ilmaiseksi osa peliä, mutta loput sai ostamalla. ”Meidän täytyy tehdä jotain tällaista”, meuhkasi sharewarella mahtitaaloja takova Miller. Romero ei lämmennyt, vaan vaati että ”nyt tehdään jotain siistiä. Jos olisi hirviöitä, mutantteja, 3D-demoneja ja vihreitä limaotuksia. Jossain välissä Johnit ohjelmoivat ensimmäisen 3D-pelinsä, Hovertank 3D:n. Urakka oli valtava, sillä Johneilta meni kokonaiset kuusi viikkoa pelimoottorin tekemiseen. Esimerkiksi vuoden 1985 Elite pyöri ihan siistillä 3D:llä, tosin viivawireframena, ja joissakin versioissa objekteista näkyi läpi. Pelille visioitiin kaikenlaisia nimiä, mutta sitten he huomasivat Wolfenstein-nimen tekijänoikeuksien rauenneen Musen konkurssissa. Sen tekeminen oli maksanut 25 000. Id Softwaren pojat loivat pelejä eläimelliseen tahtiin, sillä heidän piti tehdä Softdisk-julkaisijalle uusi peli joka toinen kuukausi. Sen myötä Tom Hall mietti millaisen toimintapelin Carmackin pelimoottorilla voisi tehdä. Pian kaikki ylimääräinen pudotettiin pois ja jäljelle jätettiin vain aiempien designien raamit – peli, jossa oli käytännössä yksi ainoa timanginen idea. Wolfenstein 3D:n ensimmäisen kuukauden tilitys oli 100 000 dollaria. Ideat lentelivät, usein täynnä verta ja suolenpätkiä. Enää tarvittiin vain lopullinen sysäys. Wolf oli alusta alkaen 3D-peli, mutta räiskinnän piti olla vain sivuseikka. Ne innoittivat myös id:n poikia, jotka halusivat tehdä oman tulkintansa natsihiippailuräiskinnästä. Bard’s Taleja Ultima-roolipelit lanseerasivat tietynlaisen naamaperspektiivin, tosin vain pienellä nurkkaan sijoitetulla ruudulla. ”Jos pelaajat tykkäävät tästä, niin Wolfenstein saattaisi myydä jopa tuplasti Commander Keeniin verrattuna”, haaveili Tom Hall. Heti perään syntyi Catacomb 3-D, inspiraationaan Romeron kaverin työstämä seikkailu Ultima Underworld. Romero ragetti raivoräiskinnän perään ja Tom Hall rakensi kenttiä. Wolfensteinin valmis shareware-painos aloitti maailmanympärimatkansa, ja Apogee valmistautui ottamaan vastaan tilauksia täysversiosta. Läheskään kaikkea ei peliin laitettu, eikä sankari voinut lopullisessa pelissä parantaa itseään syömällä tapettujen vihollisten sisälmyksiä. Molemmat Johnit sukelsivat koodin uumeniin
Wolfensteinista kasvoi ilmiö. Oli kyllä paljon hauskempi sen jälkeen... Veri pulppusi ja vankisellit olivat täynnä vankien luurankoja. Sotakoirat kuolivat vinkaisten ja Death Cam näytti episodien loppubossien kuoleman hidastettuna uusintana, kameran kiertäessä ympärillä kuin snuff-leffassa ikään. Alkuruudussa soi Saksassa kielletty sotilasmarssi. Vaan mikä oli Wolfensteinin menestyksen salaisuus. Ilmeisesti koneessa oli 286/12mhz ja VGA. He tekivät omaa juttuaan. Ei mikään yksittäinen juttu, vaan monien asioiden onnistuminen oikeaan aikaan tavalla, joka oli jotain aivan uutta, odottamatonta ja uskomatonta. Ai, kentällä on vielä kolme löytämätöntä salaisuutta – ja alkuun, kyllä ne vielä paljastuvat. Jostain se salakäytävä ja piilohuone aina löytyi. Samalla se oli myös upea ja ajatuksia herättävä tarina, mitä ei alkuperäispelistä voi väittää.. Onneksi boksipainokset, sharewarekauppiaat ja tietysti rehellinen ware helpottivat himoräiskijöiden elämää, kuten myös puolen vuoden sisään julkaistu lisäja jatko-osa. Adolph’s Bane Castle Hasselhoff The Fourth Reich It’s Green and Pissed Luger’s Run Vastaus jutun lopussa. Ei se silläkään sulavasti pyörinyt ja äänet tulivat PCkaiuttimesta. Tulee mieleen kyllä muistoja. Wolf sai polemiikista ilmaista mainosta, eivätkä id Softwaren jampat paljoa muiden mielipiteistä piitanneet. Ase, jolla natseja ammuttiin, muutettiin valkoista ainetta ampuvaksi k*rväksi. Koulussa muokattiin peliä apuohjelmalla, jolla sai muutettua grafiikkaa. Se ei suinkaan keksinyt ”ensin tötsyt, sitten rahat” -taktiikkaa, mutta Wolfensteinin upeus sai suomalaisetkin selvittämään, miten sinne Amerikkaan oikein laitetaan rahaa. Teemu Korvenpaa Wolfensteineja neljällä vuosikymmenellä Castle Wolfenstein (1981) Beyond Castle Wolfenstein (1984) Wolfenstein 3D (1992) Spear of Destiny (1992) Return to Castle Wolfenstein (2001) Wolfenstein: Enemy Territory (2003) Wolfenstein RPG (2008) Wolfenstein (2009) Wolfenstein: The New Order (2014) Wolfenstein: The Old Blood (2015) Wolfenstein: New Order reboottasi Wolfenstein-sarjan nykyaikaan tyylillä, asenteella ja isoilla aseilla. Ja se olikin melkoinen juttu se. 2 54 vämpiä, vauhdikkaampia räiskintöjä, mutta kumpikaan niistä ei ollut varsinaisesti läpimurtotai hittipeli, ei etenkään suomalaisilla raukoilla rajoilla. 2 1 7 . Peliä kehuttiin jopa virtuaalitodellisuudeksi ja paikaksi, joka on niin realistinen, että sinne saattaa unohtua. Marko Toivanen Koulussa pelattiin 75% ruudulla Mikromikko 3TT:llä. Esimerkiksi väkivalta ja natsimurhajuhlat osuivat kipeään ajankohtaan, kun videopelien väkivaltaa ja haitallisuutta lapsille puntaroitiin Yhdysvaltain senaatissa saakka. Siinä samalla lukemattomat pelaajat oppivat juoksemaan pitkin seiniä välilyöntiä takoen. Hitler hyvästeli Evan. Saksalaissotilaat huusivat saksaksi toisilleen ja kuollessaan äitiä. Kuolleiden natsien verilammikot muutettiin valkoisiksi ja jokaiselle kuolleelle natsille jäi k*rpä pystyyn. Wolf oli myös se peli, joka lopullisesti räjäytti sharewaren suuren yleisön tietoisuuteen. Se oli niin ennennäkemättömän nopea, että jotkut voivat pahoin ja oksensivat pelatTRIVIA Mikä näistä oli Wolfenstein 3D:n nimi jossain vaiheessa kehitystä
Ei kasuaali-ihmisten toimintaa sekään. Sitä ei edes löytynyt kasuaalisista options-valikoista. Kenttien rakenne, sokkeloisuus ja salahuoneiden etsiminen sataprosenttisen läpäisyn toivossa. Se asetti myös genren standardit, joista monia noudatetaan yhä tänään. Wolf ja jatko-osa Spear of Destiny olivat vaikeita, en tainnut teininä päästä kaikkia episodeja läpi normivaikeustasolla. Räiskintähistorian klassiset perusaseet pistoolista konekivääriin ja raketinheittimeen. Suuret massat paukuttelivat näppiksellä vielä Doomiakin, missä setupissa kikkailemalla tai erillisillä dos-ohjelmilla sai hiiritähtäyksen päälle. He jopa antoivat itselleen palkankorotuksen: 9000:sta taalasta per nokka 45 000:een vuodessa. Demoista tuli ihmeteltyä, että miten toi ukko pystyy kääntymään noin nopeasti ja tähtäämään tarkasti. Ne oli pelattu hiirellä, mikä oli vielä tuossa vaiheessa aikajanaa täysin dokumentoimaton ominaisuus. Wolfensteinin fanikentät, total conversionit, pelaamista värittävät tai helpottavat modit ja muut viritykset herättivät myös id Softwaren huomion, pääosin positiivisella tapaa. Se oli – väitetään mitä tahansa – ensimmäinen todellinen, moderni FPS-räiskintäpeli. Hiiren kun voi enabloida vain autoexec.cfg:stä lisäämällä skriptin loppuun +mlook-komennon. Piti mennä vielä Doominkin jälkeen Quakeen asti ennen kuin hiirellä pelaaminen saatiin kasuaalipelaajien ulottuville, silloinkin harrastajien toimesta. Videopelit eivät olleet enää entisensä. Yksinäisen badasssankarin nostaminen pääosaan. Wolfensteinissa oli vielä oikeasti vaikeutta. Jani Ikävalko tavaksi, mutta ei se säätäjiä estänyt, vain hidasti. Kaiken kukkuraksi se oli tietenkin ensimmäinen toisen maailmansodan FPS. 55 tuaan liikaa. Firmassa tajuttiin, että jos fanit kerran haluavat näprätä, niin annetaan siihen mahdollisuus. Ja pelaajat modasivat. Modatkaa, modatkaa minkä vain jaksatte, id huusi. Niinpä myöhemmät Doom ja Quake avattiin alusta lähtien pelaajien räplättäväksi. Id Softwaren pojat olivat nyt supertähtiä. Ei sellaista oltu ennen nähty. Doomin tultua nämä jäivät, mutta tuli niiden pariin vielä myöhemmin palattua. Moniko teistä löysi Wolfensteinin Pac-Man-salakentän?. Jännä peli, jota hakattiin tuolin reunalla istuen adrenaliinin pauhatessa. EI kukaan normaali-ihminen moista osannut tehdä. Sitä ei ollut koskaan tarkoitettu modatTRI VIA N VAS TAU S: Kai kki . Syökää siitä, CoDit ja Bäfät! Eikä kestänyt kauaa, kun Wolfensteinia modattiin tosissaan. Siirtyminen pyssyleikeistä lähitaisteluun ja ruumiinpalojen lentely. Doomissa ensimmäisestä singon osumastakin selviää vielä hengissä, mutta kovalla vaikeustasolla Wolfissa lähti henki kahdesta lähietäisyydeltä ammutusta kudista – ja sellaisia varsinkin valkopukuiset upseerit olivat nopeita jakelemaan. Elämä hymyili. Olikohan Quake 1 suunniteltu ja tarkoitettu kentiltään ja aseiltaan vain näppikseltä pelattavaksi. Tapani Harkila Takaapäin yllättävät viholliset olivat hauskoja, samaten DeathCam. Vasta Quake II:ssa oli options-valikossa hiiritähtäyksen käyttäminen, mikä on harvinaisen omituinen sivujuoni id:n pelien saagassa, etenkin kun muistaa millainen käsite hiiritähtäys on FPS-peleissä. Kuinka pyssy näkyy ruudulla
Kysely sai aikaan vahvan reaktion, eikä ihme. Sama olisi ollut kysyä, miksi ihmeessä porukka on kiinnostunut vanhojen autojen ruuvaamisesta, kun uusiakin myydään. Katson kuitenkin olevani voitolla – sillä silloin, kun koneprojektit eivät raivostuta, ne antavat mitä korkeinta tyydytystä. On olemassa mahdollisuus, että saan aikaiseksi hintavan verkonpainon tai seinäkoristeen. Näytönohjain on rikki, vaikka se kävi Ranskassa asti mukamas korjattavana. Sählätessäni juotoskolvin kanssa Amigan emolevyllä koen toimivani taitojeni rajoilla. Omistin jo ennestään kaksi 68060-pohjaista turboa, mutta hyvä se kolmaskin on olla. Ja mikä tärkeintä: käpistelystä syntyy vastapainoa normaalille aivotyölle ja kirjoittamiselle. Tästä syntyi Paksu Bertta. Amiga 1200:n emolevy ja pöytäkotelo ovat liian pieniä, eikä laitetta ole alkujaankaan tarkoitettu aivan näin laajennettavaksi. Sen reaaliarvo vapailla markkinoilla olisi todennäköisesti suurempi kuin nykyaikaisen Windowstietokoneen, jolla kirjoitan tätä juttua. Ratkaisu oli hankkia ulkomailta korotuspalanen, joka nostaa levyohjaimen vinoon ja mahdollistaa näytönohjaimen asentamisen sen alle. Kasasin Amiga 4000:n emolevyn ympärille – kustannuksista välittämättä – kaikki lisälaitteet, joista olin lukenut aikoinaan lehdistä. Tiedän, että Amiga-harrastuksessani ei ole taloudellista järkeä. Voin ajaa niitä muutamaa kymmentä RTGgrafiikkapeliä 1990-luvun puolivälistä ja nauttia skenedemot täydellä nopeudella muualtakin kuin YouTubesta. Kun vihdoin pääsin elämässäni siihen tilanteeseen, että sain säännöllistä palkkaa, eräs tärkeimmistä projekteista oli hankkia kaikki se Amiga-rauta, jota en nuorempana rahapulassa voinut ostaa. Rahaa oli jo sitä ennen palanut nelinumeroinen summa. Aina silloin kun en vihaa Amigoitani, rakastan niitä. Mutta rahalla saa lopulta keskinkertaisia asioita, ja jos luopuisin näistä hienoista laajennuksista, harmittelisin sitä takuuvarmasti. Tämän jälkeen osa”Kokosin Paksun Bertan ensi kertaa yli 10 vuotta sitten, eikä se ole tähän mennessä toiminut hetkeäkään niin kuin alkujaan ajattelin.” kasa siirtyi sivupöydälle odottamaan jälleen sitä hetkeä, kun koko projekti ei saa lähinnä näkemään punaista. Mutta on myös mahdollista, että tämän joskus vuosiakin kestävän virittelyn päätteeksi minulla lopulta on juuri sellainen laite, josta sain aikoinaan lukea unelmatestejä harrastelehdistä. Rajoja ja rakkautta Facebookin Amiga-ryhmässä muuan ulkomainen harrastaja kyseli taannoin, miksi ihmeessä porukka täällä kasaa kauhean hintaisia Classic Amiga -settejä, kun emulaattorilla varustettu nykyaikainen tietokone tekee kaiken yhtä nopeasti, ilmaiseksi ja paljon vähemmällä vaivalla. Muuten hyvä, mutta korokkeen laadunvarmistus oli pettänyt, eikä signaali edes kulkenut kaikkien sen nastojen läpi. Oi, kuinka häilyvä Tämä A1200-projekti ei kuitenkaan ole edes likimainkaan epätoivoisin Amiga-rakenteluni. Ihana, kamala Amiga Mikko Heinonen. Lisälaitteiden välillä on ollut konflikteja, jotka lähentelevät mustaa magiaa. 2 56 Kolumni S iinä se taas kului ilta, kiroillessa ja tuskanhikeä pyyhkiessä. Ja vaikka olisikin kulkenut, sen kiinnitysmekanismi tuntui perustuvan etupäässä lujaan uskoon. Jos vaikka kasvatan lisää päitä. Vaikka periaatteessa voisin päästä voitolle luopumalla nyt kaikesta omistamastani, tiedän samalla, etten tule niin koskaan tekemään. Toinen paketti sisälsi kiintolevyohjaimen, joka pyrkii ratkaisemaan toista A1200:n perusongelmaa: tukkoista levynkäsittelyä. Voisi kuvitella, että olisin jo aikaa sitten listannut molempien koneiden palaset myyntiin verkkohuutokauppaan. 2 1 7 . Lopulta päädyin juottamaan koneen Kickstart-ROMit kiinteästi korokkeeseen kiinni ja rakentamaan uskomattoman nippusidevirityksen pitämään koko tötteröä paikoillaan. Innostuksissani olin jossain vaiheessa onnistunut halkaisemaan PowerPCsuorittimen ytimen ja 68060 muuten vain irtosi juotoksistaan, joten tämänkin koneen turbokortti piti lähettää Puolaan kalliiseen remonttiin. Ohjain oli tarkoitus asentaa samaan koneeseen mainitun turbokortin ja 3D-kiihdytetyn näytönohjaimen kanssa, mutta eiväthän ne tietenkään mahdu paikoilleen yhtä aikaa. Sain koneen käynnistymään, sitten siirsin emolevyä hieman ja se mykistyi uudelleen. Koska olin ajoissa liikkeellä niitä ostaessani, saisin helposti rahani takaisin korjauskustannustenkin jälkeen. Vähitellen kaltaiseni innokkaimmat amigistit häviävät ja palikoiden hinta kääntyy laskuun. Kokosin Paksun Bertan ensi kertaa yli 10 vuotta sitten, eikä se ole tähän mennessä toiminut hetkeäkään niin kuin alkujaan ajattelin. Posti toi Puolasta paketin, joka sisälsi päivitettäväksi lähettämäni Amiga 1200:n turbokortin. Jo pelkkä tieto siitä, että minulla on ne, saa hymyilemään
Willy-nimimerkillä toimiva mies esittäytyi 2015 vuonna CT60-korttien jatkokehittäjäksi ja saikin jonkin ajan kuluttua tehtyä prototyypin CT60ekortista. Muisti tulee näkyviin Atari TT030 -koneista tutuksi tulleena ALT-RAMina, johon ST-yhteensopiva osa piirisarjasta ei pääse käsiksi. 060-väylään on mahdollista liittää erilaisia lisälaitteita, kuten näytönohjain-, verkkoja USB-kortti sekä PCIväyläkortti. Testikoneen asennus CT60e-kortti on edeltäjiään hieman kookkaampi, jotta 060-väylä saadaan sijoitettua hieman taaemmaksi. CT60e:n synty Nykyisten CT60e-korttien syntytarina on monivaiheinen. Prototyyppikortissa esiintyi ongelmia ja Willy katosi maan alle useammaksi kuukaudeksi. Sillä on siis mahdollista korvata Atari Falconin Motorola 68030 -prosessori tehokkaammalla 68060-prosessorilla ja samalla lisätä koneen muistia jopa 512 megatavulla. Suorituskykylisäys on merkittävä: jo pelkästään 68060-prosessorin vaihtaminen 68030-prosessorin tilalle tekisi koneesta jonkin verran nopeamman, mutta lisäksi koneen kellotaajuus yli kuusinkertaistuu. Ennen vuotta 2014 alkuperäisten CT60-korttien suunnittelija Rodolphe Czuba oli harkinnut julkaisevansa CTX60-nimellä Atari Falcon jäi legendaarisen kotimikrovalmistajan viimeiseksi tuotteeksi, ja innokkaiden harrastajien ansiosta se elää tänäkin päivänä. Puolen vuoden kuluttua tuli kuin tyhjästä ilmoitus, että kortit ovat nyt tuotannossa ja ensimmäinen tuotantoerä olisi 100 kappaletta. Tämän jälkeen hän katosi jälleen foorumeilta. Aiemmin CT60-kortin 060-väylä meni osaksi näppäimistön alle ja ainoastaan yksi kortti mahtui 060-väylään. Käyttäjien toiveiden ja käytännön pulmien vuoksi CT60e-korttia on paranneltu alkuperäisestä CT60:stä. Myöhemmin samana vuonna alkoi kiertää huhuja CT60ekorteista. Aiemmat versiot kortista olivat kiinni ainoastaan Falconin väylässä ja siirrettäessä ne saattoivat lähteä helposti paikoiltaan, minkä vuoksi useampi ihminen oli ilmeisesti onnistunut käräyttämään Falconinsa tai CT60:nsä. kulkevan kortin. Uusi sijoittelu auttaa esimerkiksi SuperVidel-näytönohjaimen liittämisessä ilman lisäosia Atari Falconin koteloon. Piirilevylle on lisätty kerroksia maadoitusvedoille, jotta kortista tulisi vähemmän altis häiriöille. Kortin asetukset tallentava flash-piiri on myös vaihdettu ja tämän vuoksi vanhat päivitysohjelmat eivät toimi. Alkuperäinen 68030-prosessori ei enää uusimpiin ohjelmiin riitä, mutta onneksi saatavana on lisävauhtia. 57 Rauta 57 C T60e on Atari Falconin vastine Amigalta tutuille 68060-kiihdytinkorteille. Maaliskuussa 2016 Willy ilmoitti, että oli saanut kortin vihdoin toimimaan. CT60e ei tosin ole mekaanisesti yhteensopiva CTPCI-nimisen PCI-väylälaajennuksen kanssa. CT60e-kortissa olevan 68060-prosessorin kellotaajuutta voidaan säätää 66:stä 110 megahertsiin – tosin kaikki prosessoriversiot eivät aivan huippulukemiin kykene. E-kirjain tulee evoluutio-sanasta, joka melko hyvin kuvastaa kortin yritystä olla edeltäjiään parempi. Joulukuussa Czuba varmisti huhut tosiksi ja samalla kertoi, että hän itse ei kortteja valmistaisi. Atari Falconin alkuperäisen 68030-prosessorin kellotaajuus on 16 MHz. Myös mekaanista toimivuutta on paranneltu. Vuonna 2014 Czuba kuitenkin ilmoitti, että useampikin ihminen oli häneltä kysellyt alkuperäisten CT60-korttien perään ja nyt hän lähetteli ihmisille tiedusteluja siitä, olisivatko he kiinnostuneita kyseisistä korteista. Vihdoin maaliskuussa 2017 kortit tulivat myyntiin ja niitä lähetettiin ennakkotilaajille, joita oli ollut jopa noin 50 kappaletta. Kortissa olisi kaiketi yhdistynyt CT60 ja CTPCI-niminen PCI-väylälaajennus. CT60e-kortti kiinnittyy Falconin väylän (Falcon Bus) lisäksi virtaliittimeen ja kortissa on reiät yläpuolisten kuoren kiinnitystappien läpivientiin. TälTeksti: Joni Valtanen Kuvat: Joni Valtanen, Mika Yrjölä CT60e Atari Falconin 68060pohjainen kiihdytin Lisänostetta Haukan liitoon. CT60e:ssä on integroitu CTCM eli säädettävä prosessorin kellotaajuusyksikkö ja edeltäjiensä tapaan 060-väylä. Kortista on ollut aikoinaan saatavilla CT60ja CT63-versiot
Virtalähde korvataan ATX-virtalähteellä. Työpöytäkäyttöön CT60e-kortti toi toivottua jouhevuutta. Näin kaikki erityisesti 68030-prosessorin vaativat ohjelmat ja pelit pitäisi saada helposti toimimaan. NVDI päivittää koneen käyttämään prosessoria grafiikan kopioimiseen blitterin sijasta. CT60e ja siihen liitetyt lisälaitteet ovat poissa käytöstä. Kortin asetuksia kuten kellotaajuutta pääsee säätämään ohjelmallisesti ohjauspaneelimoduulin (CPX) avulla. Uuden suunnittelun ansiosta 060-väylään on kaiketi mahdollista liittää jopa kaksi korttia päällekkäin Falconin koteloon. Resetnäppäin on näppärä, mikäli Falcon halutaan tornittaa. Kaksi asiaa häiritsi 68060-prosessorin ollessa käytössä. Pienikokoisessa 120 watin Pico-ATXvirtalähteessä on enemmän kuin tarpeeksi tehoa Falconin, CT60e-kortin ja siihen liitettävien lisäkorttien tarpeisiin. Työpöydän grafiikkahäiriöihin auttoi yksinkertaisesti NVDI5ohjelmiston asentaminen. Gembench-testi: Atari Falcon 030 (68030, 16 MHz + 68882, 16 MHz) verrattuna CT60e:hen (68060, 100 MHz).. Tämä tarkoittaa sitä, että mint030.prg:n sijaan käyttöön vaihdetaan mint060.prg. Tämä on myös hyvä tila ohjelmille ja peleille, jotka eivät jostain syystä CT60e-kiihdyttimen kanssa toimi. Suurimman osan perusohjelmista pitäisi toimia suoraan 68060-prosessorin kanssa, ja joihinkin epäyhteensopiviin ohjelmiin löytyy korjauksia kyseiselle prosessorille. Liitin oli melko tiukka. Pelkän TOS:n kanssa ilmeni ainoastaan grafiikkahäiriöitä. 2 58 löinkin oli hyvä irrottaa ruuveja näppäimistön pohjasta, jotta ei syntyisi oikosulkua. Erinomainen esimerkki 68060-prosessorin tehosta on tilanne, jossa pitää tarkistaa tiedostojärjestelmät koneen käynnistyessä. Yhteensopivan ohjelmiston asennus Ohjelmiston asennus on melko helppoa: aiemman FreeMiNT-käyttöjärjestelmän asennuksen 030-versio pitää vain vaihtaa 060-versioksi. prg:n versiosta. Demot ja muutamat käännökset peleistä tekevät Gembench-testi: Atari STE (68000, 8 MHz) verrattuna CT60e:hen (68060, 100 MHz). Jos CT60e kytketään 030-tilaan, Falcon käyttää omaa 68030-prosessoria ja ainoastaan omaa muistiaan. Varsinaisia 060-versioita ei useinkaan tavallisista ohjelmista ole, vaan ohjelmista on 000-, 020–060ja CF(eli Coldfire) -versiot. Korteissa olevasta liittimestä löytyy ATX:n virtakytkin, reset-näppäin sekä kytkin, joka kytkee koko CT60e:n 030tai 060-tilaan. Työpöydän värien määränkin pystyi nostamaan helposti 256:een VGA-tilassa. Versio 1.18 ja sitä uudemmat lataavat oikean moduulin riippuen mint. Samalla tein varmuuden vuoksi myös kortin ja koneen flashmuistipiirille tallennettavat asetukset uusiksi. Ensimmäiset testit CT60e-kortilla FreeMiNTin kanssa eivät luvanneet hyvää. Asennukseen vaaditaan myös onoff-kytkin ja yksi lukkiutumaton painonappi. Ennen CT60e-kortin asennusta Atari Falconista pitää poistaa virtalähde ja metallisuojus emolevyn päältä. Kokeilemalla eri muistipiirejä löytyi lopulta parhaiten CT60e:n kanssa toimiva versio. Mikäli FreeMiNTin versio on 1.17 tai sitä vanhempi, pitää myös XaAES:n FreeMiNT-kernelmoduuli vaihtaa 060-versioon. 030-tilaa tarvitaan esimerkiksi päivittäessä CT60e-kortin flash-muisti. 68060-prosessorilla meni testikoneessa tiedostojärjestelmän tarkistukseen alle 30 sekuntia ja 68030-prosessorilla yli viisi minuuttia. Ensinnäkin ruudulle ilmestyi grafiikkahäiriöitä ja toisekseen Teradesk saattoi kaatua esimerkiksi kopioidessa tiedostoja. Pakettien purkaminen on toinen erittäin hyvä esimerkki 68060-prosessorin nopeudesta 68030-prosessoriin verrattuna. Sekä TOS että FreeMiNT Teradeskillä toimivat 68060:n kanssa erittäin hyvin. Työpöytäohjelmistona voi käyttää esimerkiksi Teradeskiä, josta on ainoastaan yksi versio kaikille 68k-prosessoreille. 2 1 7 . Tämän jälkeen Teradesk toimi ongelmitta. CT60e:ssä on kytkin, jolla saa valittua 68030tai 68060-prosessorin. Teradeskin kaatuilun syyksi ilmeni huono kontakti muistin ja kortin välillä
Aiemmin pelkän kookkaan ZIP-paketin purkaminenkin oli tuskallista. Yllättävää kuitenkin oli, että Atarin kanssa yhteensopiva Hades-tietokone, joka siis on myös 68060-pohjainen, oli lähestulkoon joka testissä huonompi kuin CT60e. Viimeisimmällä uudelleen kirjoitetulla versiolla tulosten pitäisi olla kiihdytetyillä koneilla tarkempia kuin aiemmilla versioilla. Tietenkin useat 030-demot pyörivät myös 68060:n voimin ja toimivat toki paljon vikkelämmin kuin alkuperäisellä prosessorilla. Tämä selittyy varmasti osaksi sillä, että Atarissa osa ohjelmista ja peleistä toimii TOSissa ja osa FreeMiNTissä; osa ohjelmista ei toimi 68060-prosessorilla ja toiset taas vaativat 68060:n välimuistin kytkemisen pois. Kuinka nopea CT60e sitten oikeasti on. Pelkällä kortilla oli kuitenkin hintaa 270 euroa lähipostiin kiikutettuna, ja tähän tuli vielä lisäksi 68060-prosessori, joka sekään ei mikään ilmainen ole. Atarin kanssa säätämiseen kuitenkin tottuu ja käyttäessä oppii, että tietyt asiat kannattaa tehdä tietyllä tavalla. Amigan kanssa näistä asioista ei paljoa tarvitse huolehtia. Toinen suosittu ohjelma prosessorin nopeuden mittaamiseen on Kronos. Laajentamattomaan kahdeksan megahertsin Atari STE -koneeseen verrattuna testikoneen CT60e-kortti on noin 33 kertaa nopeampi ja perus 030-Falconia 17 kertaa nopeampi. Testi saattoi tosin olla erityisesti 68882:lle kirjoitettu. PICO-ATX-virtalähteen liittimet ovat vielä levällään.. Kun huonot ja hyvät puolet lasketaan yhteen, CT60e on positiivinen kokemus. No kannattiko. Mikäli käyttäjä on vanha konkari, nämä asiat tuskin häiritsevät. Doom toimi todella hyvin 66 megahertsiin kellotetulla 68060-prosessorilla. 59 mukavan poikkeuksen ja niistä on tehty erityisiä 060-versioita. Esimerkiksi Philiapeliin tulee 060-version mukana huoneiden näkymän vieritys hiirtä liikuttaessa, kun aiemmin huoneista oli vain muutama staattinen kuva. Täytyykin myöntää, ettei Atari-versioiden ainakaan tarvitse hävetä Amiga-versioiden rinnalla. GEMBench on ohjelma, jolla testataan usein Atarien tehokkuutta. PDF-tiedostojen lukukin onnistuu, kunhan mukana ei ole kovinkaan montaa kuvaa. Lähteet • nature.atari.org/supervidel.html • www.atari-forum.com • en.wikipedia.org/wiki/Atari_Falcon • www.exxoshost.co.uk/atari/last/GB6/index.htm CT60e asennettuna, muisteineen ja prosessoreineen. Orionin 2010-luvulla julkaisemiin kaupallisiin seikkailupeleihin, kuten Mystiin, saa 060-päivityksiä. Muisti ei näiden päälle paljoa maksa. Pelit ja demot Monista nykyisin avoimista pelimoottoreista, kuten Doom, Hexen, OpenTyrian, Duke Nukem ja OpenJazz, löytyy Atarille omat 060-versiot. Kuuluisimpia taitavat olla The Black Lotus -ryhmän Amiga-demoista tehdyt Atari-versiot. Ja vaikkei Falconilla CT60e-kortin voiminkaan vielä kunnolla internetiä selailla, useat tehoa vaativat pelit toimivat paremmin ja kiihdytin avaa uuden oven demojen maailmaan. Tosin harrastukset maksavat. Ohjelman FPU-testit CT60e:llä näyttivät neljä kertaa nopeammilta kuin matematiikkaprosessorilla varustetun 030-Falconin. CT60e on erinomainen kortti Atari Falconin yleisen käyttömukavuuden parantamiseen. Myös pelejä tehtaileva Orion on ainakin Unexpected Fun -nimisen tuotoksen 68060-prosessorille tehnyt. Muutamat CT60:n omistajat jopa retostelivat foorumeilla niiden olevan parempia kuin alkuperäiset. Verrattuna Amigaan Atarin käyttö 68060-prosessorin kanssa on hieman haastavampaa. Yllättävää oli, että GEMBenchin liukulukutesti antoi paljon huonomman tuloksen 68060-prosessorin sisäiselle matematiikkaprosessorille kuin 68030-prosessorin rinnalle liitetylle Motorolan 68882-matematiikkaprosessorille. Ohjelma on alun perin ollut sharewarea, mutta myöhemmin sen koodit on avattu ja ohjelmaa on jatkokehitetty. Ohjelmaa on kehuttu jopa parhaimmaksi benchmark-ohjelmaksi. Löytyy Atarille toki ihan alkuperäistäkin 060-demotuotantoa, joista hyviä esimerkkejä ovat Dead Hackers Society -ryhmän 060-demot. GEMBenchissä on myös näppärä ominaisuus, jolla voi koneiden testituloksia verrata keskenään. Demoja on jonkin verran 68060-prosessorille
Siitä löytyy kaksi kappaletta M514256-10J-piirejä ja yksi M41256A. 2 60 Rauta S IMM-muistikammat ovat eräs yleisimmistä esineistä, joita tietokoneharrastajan laatikoihin kertyy hieman kuin itsestään. Mallinumeron lopusta 4100 kertoo meille, että piirin rakenne saattaisi olla 4 M × 1 ja lopun 70 antaa osviittaa 70 nanosekunnin hakuajasta. Eikö Google löydä mallinumeron perusteella muistikamman tyyppiä?. Tehtävää helpottaa, kun tuntee hieman muistipiirien ja niiden yhdistämisen perusteita. Piirejä on yhdeksän, joten unohdetaan se ylimääräinen piiri. Mikäli muistipiirejä on pariton määrä, kyseessä on pariteetillinen kampa, joita kutsutaan joskus myös yhdeksänbittisiksi. Taas pariton määrä, kaksi samanlaista ja yksi erilainen piiri. Nopeus on 60 ns, ja olisiko koko jälleen 4 M × 4. 2 1 7 . Otetaan esimerkiksi kampa, jossa on yhdeksän MCM54100AN70-piiriä. Jos kaikki piirit ovat keskenään identtisiä, jätetään yksi piiri pois laskuista. Näissä uudemmissa SIMM-kammoissa on lupaavan näköiset Presence Detect -nastat PD1–PD4, mutta valitettavasti niiden avulla ei voida tunnistaa muistikampaa, sillä jokaista bittikuviota vastaa neljä eri muistikampaa. Helpoin keino tuntemattoman muistikamman koon tunnistamiseksi on laskea siihen juotettujen muistipiirien kokojen perusteella, paljonko muistia kokonaisuudessa löytyy. Koska piirejä on kaksi, 1 M × 8 / 8 = 1 Mt, eli koko on yksi megatavu ilman paritettia. EsimerOi muistatko vielä sen SIMMin. Leveys kertaa kaksi on 256 k x 8 bittiä eli 256 kt. Muistipiirin sisäinen rakenne ilmoitetaan muodossa koko kertaa leveys, eli vaikkapa 1 M × 4 olisi miljoona neljän bitin levyistä sanaa, eli neljä megabittiä = 512 kilotavua. 4 M × 1, leveys kertaa kahdeksan on 4 M × 8, 4 M × 8 / 8 = 4 M, joten kamman koko on neljä megatavua. 30 nastaa Vanhoista 386ja 486-emolevyissä löytyviin 30-nastaisiin SIMM-kampoihin voi tallentaa kahdeksan bitin leveydeltä tietoa. Normaalin pariteetittoman kamman koko ratkeaa yksinkertaisesti laskemalla muistipiirien bitit yhteen ja jakamalla tulos kahdeksalla. Kun niitä haluaisi käyttää jossakin, juuri oikean tyypin ja koon löytäminen voi olla yllättävän hankalaa, sillä useimmat valmistajat eivät ole välittäneet painaa kampoihin juuri mitään tunnistetietoja. Aivan viimeisissä 30-nastaisissa kammoissa on usein kaksi isoa ja yksi pienempi muistipiiri. Näissä tapauksissa jätetään pienin piiri huomiotta ja lasketaan yhteen ainoastaan kahden isomman piirin koot. Kampoja on sekä pariteettibitillä että ilman, joten kapasiteettia laskiessa täytyy olla hieman ajatusta mukana. Tarkistetaan. Viimeinen esimerkkimme sisältää vain kaksi piiriä: molemmat ovat tyyppiä MN414400ASJ-06. Unohdetaan se erilainen suoraan, se on pienempi Teksti: Ville Jouppi, kuvat: Toni Kortelahti, Ville Jouppi pariteettipiiri. Mikäli kammasta löytyy ylimääräinen pariteettipiiri, täytyy tarkastella kampaa hieman tarkemmin. Vihjeitä muistilaatikon setvintään Pyöriikö laatikossasi vanhoja muistikampoja, joiden tarroissa on vain jokin kryptinen mallinumero. Pikaisen internet-haun jälkeen epäilykset vahvistuvat, ja kyseessä tosiaankin on 4 M × 1 kokoinen fast page mode -muisti 70 nanosekunnin hakuajalla. 1 M × 1 taas olisi miljoona bittiä yhden bitin leveydellä eli megabitti = 128 kilotavua. Datalehti vahvistaa olettamuksen: 256 k × 4 bittiä. Muistipiirien koot ilmoitetaan aina bitteinä, joten kun lopullinen yhteenlaskettu bittimäärä jaetaan kahdeksalla, saadaan tavuja. Tässä saikin käyttää hieman luovuutta internet-haussa, mutta 414400 vaikuttaisi olevan sittenkin kooltaan 1 M × 4. Vauhtia on 100 ns, ja 4256 kertoo meille, että koko on suurella todennäköisyydellä 256 k × 4. Toinen esimerkki on kolmepiirinen. Tunnetun poikkeuksen muodostaa Atari STE, jonka muistin laajentaminen pariteetillisilla SIMMeillä johtaa ongelmiin. 30-nastaiset SIMMit toimivat aina viiden voltin käyttöjännitteellä, ja pariteetillisia ja pariteetittomia voi useimmiten sekoittaa keskenään ilman ongelmia. 72 nastaa 72-nastainen SIMM säilöö sisällään 32 bitin leveydeltä hyötydataa, mutta muistipiirien todellinen yhteenlaskettu leveys voi virheenkorjauksesta riippuen olla myös 36, 39 tai 40 bittiä
Onni onnettomuudessa, että piirit olivat yhden bitin levyisiä, joten emme joudu kovin kauaa raapimaan päätämme. ECCmuisteissa on kammasta riippuen 36, 39 tai 40 bittiä, joten laskeminen ei aina ole suoraviivaista. A10 ja A11 kytkemättä viittaa yhden megatavun kampaan, ja pelkästään A11 kytkemättä on luultavasti neljän megatavun kokoinen. 61 kiksi PD1 maissa ja loput kellumassa tarkoittaa 60 ns:n hakuaikaa ja kokoja 256 k × 36, 16 M × 32/36, 4 M × 36 tai 256 M × 32/36. Toinen 72-nastainen esimerkkimme sisältää kuusitoista kappaletta MT4C4M4E8DJ-6-piirejä. Siksi suosittelen liimaamaan muistikampaan teipin tai tarran ja kirjoittamaan siihen kyseisen kamman muistimäärän, niin säästyt toistuvilta datalehtien lukemisilta jatkossa.. Hakukoneen avulla kaivetaan datalehti esiin, ja siitä käykin ilmi, että piiri on kooltaan 4 M × 4. Tästä voi luotettavasti päätellä vain hakuajan 60 nanosekuntia, joten haemme datalehden. 72-nastaisia muistikampoja on sekä 5 että 3,3 voltin käyttöjännitteellä. Kaikki kolme ylintä osoitelinjaa ovat kytkettyinä vain harvinaisissa 16 megatavun kammoissa. Joudumme jälleen laskemaan muistipiirien kokonaiskoon. Emolevyn SIMM-kannoissa on pieni kohouma estämässä vääränlaisten muistikampojen asentamista emolevyyn. Piiri on myös EDO-tyyppinen. ECC-esimerkissämme on kaksipuoleinen kampa, joka sisältää 18 kpl HYB5117405BJ-60-piirejä. ECC-muisti Jos olet joskus purkanut vanhoja Pentium-aikaisia palvelimia, saattaa nurkissasi olla virheenkorjaavaa ECCmuistia. Mikäli nasta 48 on maissa, kyseinen kampa toimii virheenkorjaavana ECC:tä tukevissa emolevyissä. Mikäli kuoppa on sivussa ykkösnastan suunnassa, käyttöjännite on 3,3 V. Yhden piirin koko on 16 M × 1, eli koko kamman leveys olisi sitten 16 M × 36. Ne, jotka pääsivät karkuun 72-nastaisissa muistikammoissa käytetyt piirit ovat ikäluokkaa, johon löytyy suhteellisen helposti datalehdet internetistä. Aiemmin määrittelemämme nyrkkisääntö parittomasta piiriluvusta ei nyt pädekään: kammassa on 18 kpl piirejä per puoli. Mikäli osoitelinjat A9 (nasta 18), A10 (nasta 19) ja A11 (nasta 24) ovat kytkemättä, kampa on todennäköisesti 256 kilotavua. Mallinumeron loppupäästä voidaan jo suoraan päätellä, että hakuaika lienee 60 nanosekuntia. Koska piirejä oli pariton määrä per puoli, pudotamme kaksi piiriä pois laskuista. Vastauksena on jo tylsäksi käynyt 4 M × 4 EDO 60 ns. 4 M × 64 / 8 = 32 M, joten kyseessä on 32 megatavun EDO SIMM. Koska yhdellä puolella on yhdeksän kappaletta neljän bitin levyistä piiriä, on kyseessä 36-bittinen muistikampa. Otetaan esimerkiksi SIMM, jossa on kahdeksan kappaletta HM5117400BS6piirejä. Koska hyötydataa mahtuu 72-nastaiseen piiriin vain 32 bitin leveydeltä, voimme helposti vain pudottaa neljä ylimääräistä bittiä pois piirien yhteenlasketusta leveydestä, eli 16 M × 32 / 8 = 64 M. Toinen ECC-esimerkkimmme on järeä. Kaksipuoliselta muistikammalta löytyy yhteensä 36 kpl HY5116100BJ60-piiriä. SIMM-kamman koon selvittelyyn voi helposti hurahtaa hetki jos toinenkin. Usein voit kytkeä ECC-kampasi normaaliinkin emolevyyn, jolloin virheenkorjaus ei vain ole käytössä. 4 M × 64 / 8 = 32 M. Sen sijaan 30-nastaisissa kammoissa on joskus piirejä, joiden tekniset tiedot ovat kadonneet maan päältä. Tällöin voidaan hieman päätellä tutkimalla muistikamman reunaa. Muuten mallinumero ei valaise mitenkään erityisen paljon: ehkäpä piiri on neljä bittiä leveä. 4 M × 32 / 8 = 16 M, eli kyseessä on 16 megatavun kampa. Piirejä oli kahdeksan, joten yhteenlaskettu bittimäärä on 4 M × 32. Voisi olla 4 M × 4 ja 60 nanosekuntia, minkä internet-haku vahvistaa. Mikäli kuoppa on kontaktirivien keskellä, käyttöjännite on 5 V. 64 megatavua ja virrankulutus varmasti valtava. Nämä tunnistaa helposti kontaktirivien välissä olevasta puolikuun muotoisesta kuopasta
Nykyhetkessä tarkasteltuna BBC Micro erottuu aikalaisistaan edukseen etenkin monipuolisten liitäntöjen ja hyvän BASICinsa puolesta. Mutta varsinainen mullistus oli vasta tulossa. Toisaalta juttusarjan ideana on alusta asti ollut alusta asti nostaa esiin myös hukattua potentiaalia, ja sitä Acornista ja sen tuotteista löytyy vaikka muille jakaa. Aiemmin kehitetyn Acorn Atomin pohjalta luotiin BBC Micro, josta tuli sittemmin hyvin tuttu kaikille koululaisille 1980-luvun Isossa-Britanniassa. Samainen piiri toimi muutenkin Acorn RISC Machinen, tuttavallisemmin ARMin, suunnittelufilosofian esikuvana. Vuonna 1978 Cambridgessa perustettu Acorn Computers pääsi kiinni leveämpään leipään, kun saarivaltakunnan yleisradioyhtiö BBC valitsi sen tarjouskilpailulla toteuttamaan tietokonelukutaito-ohjelmaansa. 2 1 7 . MOS 6502 -suorittimeen pohjannut arkkitehtuuri oli sekin varsin ajantasainen etenkin esittelyvuonnaan 1981. 2 62 O n oikeastaan hassua kirjoittaa Ei näin! -sarjassa yrityksestä, jonka tuotteiden suoria jälkeläisiä meillä lähes jokaisella on ainakin ollut taskussaan. Se oli nimittäin saanut unelmatestiin BBC Micron seuraajan, joka kulki nimellä Archimedes. Samaisen VIDC1a:n tuottamissa äänissä oli kahdeksan kanavaa Amigan neljän sijaan. Lopulta insinöörit Steve Furber ja Sophie Wilson rohkaistuivat kokeilemaan sellaisen kehittämistä itse tutustuttuaan Berkeleyn yliopiston RISC-projektiin ja nähtyään myös, miten pieni tiimi lopulta työskenteli 6502:n parissa. RISCi realisoituu Tammikuun 1988 Mikrobitti teki lukijoilleen harvinaisen selväksi, mihin laitteeseen päiväunet kannattaisi jatkossa kohdistaa. Rauta Tammenterho tipahti EI NÄIN! Acorn Computers teki vallankumouksen suoritinmarkkinoilla, mutta jätti hyödyntämättä tilaisuuden mullistaa samalla kotimikrot.. BASIC-ohjelman suorituksessa erot olivat kymmenkertaisia. Eikä grafiikkatai äänipuolessakaan ollut valittamista, sillä VIDC1a-videopiiri tarjosi näytölle jopa 256 väriä ja tarkkuuksia, joiden esittämiseen keskimääräisen käyttäjän näyttölaite ei riittänyt vielä moneen vuoteen. Mikrobitin testijutun kirjoittaneiden tulevan kansanedustajan ja it-miljonäärin innostus paistaa tekstistä läpi, eikä se aiheetonta olekaan. Tämä tarkoittaa, että suoritin sisältää pienen määrän yksinkertaisia, nopeasti suoritettavia käskyjä. Kahden hengen show Oikeastaan hämmästyttävintä oli kuitenkin, että Acorn oli onnistunut luomaan kokonaan uuden suoritinarkkitehtuurin. BBC Micron menestyksen jälkeen Acorn oli lähtenyt kehittämään sille laajennusta, joka sopisi myös yrityskäyttöön, mutta sopivaa ja riittävän tehokasta suoritinta ei testeistä huolimatta löytynyt. Archimedes oli järkyttävän nopea ja peittosi esimerkiksi kohtuullisen tehokkaina pidetyt Teksti: Mikko Heinonen Kuvat: Mikko Heinonen, Manu Pärssinen, Wikimedia Commons, Pixabay Amigan ja Atari ST:n mennen tullen. Tehokkaista MIPSja SPARC-työasemista tuttua tekniikkaa ei ollut koskaan aiemmin sovellettu kotitietokoneessa. Koneen sisuksista löytyi aivan uusinta teknologiaa edustava ARM2-suoritin, jossa oli tuolloin muodikas RISC-käskykanta. Lisäksi Acorn vielä teki sen pohjalta halvemman, lähinnä pelikäyttöön sopivan Electronin. Myös näppäimistö on asiallinen, ja syy on selvä: koska valtio tuki mikrojen hankintaa, konetta ei tarvinnut suunnitella hinta edellä. Odotuksena oli reilun kymmenentuhannen kappaleen myynti, mutta Beebiä myytiin lopulta puolitoista miljoonaa kuutena eri versiona
Viimeiset RiscPC:t olivat StrongARMsuorittimeen perustuvia numeronmurskaimia, mutta siinä vaiheessa muu maailma oli jo valinnut työpöydälleen joko Intelin x86:n tai Motorolan, Applen ja IBM:n PowerPC:n. Vuonna 1991 saatiin ensimmäiset ARM3-suorittimeen perustuvat mallit ja seuraavana vuonna ARM3:n halvempi versio ARM250. Edes hieman edullisemman ja kompaktimman A3000-mallin kehittely vei liki kaksi vuotta, mikä tehokkaasti söi Archimedeksen teknistä etumatkaa. Acorn itse luopui kuitenkin valmistuksesta jo 1990-luvun lopussa, minkä jälkeen puuhaa jatkoi Castle Technology. Teknologia kiinnosti mobiililaitteiden kehittäjiä, jotka halusivat ostaa sen valmistusoikeuksia. Hyvin tukevasti rakennetun ja erillisellä näppäimistöllä varustetun laitteen ylispeksausta olisi huoletta voinut hieman keventää, jos se olisi höylännyt hinnasta puntia pois. Muuten tarjolla oli enemmän tai vähemmän käännöshuttua, ja pelipuolella jälki näytti enimmäkseen samanlaiselta kuin yli puolet halvemmilla Amigalla ja Atari ST:llä. Aineksia enempäänkin On vaikea olla spekuloimatta, mitä olisi tapahtunut, jos Acorn olisi heti aluksi laihduttanut Archimedeksestä samanlaisen halpaversion kuin Electron oli BBC Microsta. ARM-suorittimen kehitys oli ollut pitkä ja kallis operaatio, minkä lisäksi koulukoneita valmistaessaan Acorn oli todennäköisesti tottunut siihen, että monipuolisuus ja luotettavuus ovat tiukalle puristettua hintaa tärkeämpiä. Jo vuonna 1990 ARM-kehitys irrotettiin omaan yhtiöönsä, jolloin ARMlyhenne muutettiin tarkoittamaan ”Advanced RISC Machines”. Tällaisenaan Archimedes jäi pahemman kerran muna ja kana -ongelman uhriksi. Kun A3000 saapui, se oli askel oikeaan suuntaan, mutta edelleen melko hintava ja jo hieman myöhässä. On siis jokseenkin sopivaa, että sillä voi ajaa – ilmaiseksi ja tehokkaasti – RISC OS:ää ja BBC BASICia.. Kolme miljardia ihmistä käyttää ARM-suorittimella varustettua laitetta päivittäin. Myöhemmin Arthur korvattiin RISC OS:llä, joka oli jo huomattavasti elegantimpi käyttöjärjestelmä. Se pyöri Archimedeksen tavoin RISC OS:llä ja eli peräti vuoteen 2003 asti. Pelien käännökset 16-bittisiltä kotimikroilta olivat keskimäärin kauniita, mutta eivät tarjonneet juuri mitään lisää alkuperäisiin versioihin nähden. Ensimmäiset valmistuslisenssin hankkijat ilmaantuivat nopeasti ARMin ovelle, ja nykyisin yli miljardin liikevaihtoa pyörittävä yhtiö ilmoittaa markkinaosuutensa älypuhelimien suorittimista olevan vaatimattomat 95 %. 63 Vuosien kehitystyön tuloksena ensimmäinen ARM asennettiin lisäkorttina vauhdittamaan BBC Microa. Vaikka varsin positiivinen lehtijuttu nostatti varmasti ostohaluja ainakin Suomessa, mainoksia ei näkynyt, ja maahantuojan toiminta tuntuu olleen varsin pienimuotoista. Näin ei kuitenkaan tapahtunut: RISC-tehohirmu jäi saarivaltakunnan erikoisuudeksi eikä koskaan myynyt sellaisia määriä, että sille olisi syntynyt merkittävää ohjelmistotuotantoa. Samainen A3000 oli myös viimeinen BBC-nimellä myyty mikro, joten jatkossa Acorn joutui luottamaan vain itseensä laitteiden markkinoinnissa. Tarkemmin tutkittuna koneessa oli muutamia muitakin erikoisuuksia. Muutama hyötyohjelma ja peli, kuten nuotitusohjelmisto Sibelius ja aivan erityinen versio Eliteavaruuspelistä olivat niitä harvoja syitä laitteen hankintaan. Tämä paitsi vaikeutti pelien pelaamista, myös johti tilanteeseen, jossa markkinoille syntyi muutamia erilaisia ohjainstandardeja, eikä mikään peli tukenut niistä jokaista. Seuraava tavoite oli ARMia yksinomaisesti käyttävä tietokone. Laitteiston kehitys joka tapauksessa jatkui, joskin melko hitaasti. Paljon puhutut kahdeksankanavaiset äänet sai ulos vain joko laitteessa itsessään olevien varsin heikkolaatuisten kaiuttimien kautta tai kuulokeliitännästä, johon oli asennettu äänenlaatua heikentävä suodin. Vaikka sen suorituskyky oli omiaan myös vaativien pelien pyörittämiseen, laitteeseen ei ollut asennettu peliohjainporttia. Saksassa sentään syntyi jonkinlaista harrastustoimintaa, ja käyttöjärjestelmästä tehtiin oma kieliversio maan markkinoille. Ja koska softalle ei ollut ostajia, sitä ei kannattanut tehdä. Viimeiset Archimedes-mallit julkaistiin 1992, minkä jälkeen Acorn siirtyi RiscPC-arkkitehtuuriin. Muu kuin opetuskäyttöön tarkoitettu ohjelmisto oli vähäistä, mikä ei lisännyt koneen houkuttelevuutta. Tulkkauksen tarvetta Vaikka laitteen tehopuoli oli kunnossa, eräs asia oli jäänyt kehityksen tohinassa lapsipuolen asemaan – koneen käyttöjärjestelmä. Arthur-niminen viritelmä, jonka nimen huhut kertoivat olevan lyhennelmä sanoista ”A Risc operating system by THURsday”, ei ollut täysin sitä, mitä tuplasti Amiga 500:n hintaisen laitteen ostajan oli lupa odottaa. Hinta olikin ilmeisin hidastava tekijä koneen leviämiselle. Virheetöntä tietokonetta ei ole tähän päivään mennessä valmistettu, eikä Archimedes sisältänyt mitään sellaista valuvikaa, joka olisi käytännössä estänyt sitä nousemasta mukaan kilpailuun markkinaosuuksista. Vaikka suuri laskentateho pitikin käyttönopeuden kohtuullisena, keskeneräisyys paistoi sieltä täältä. Käsivarret taskuissa Acornia Archimedeksen maailmanvalloituksen epäonnistuminen tuskin ihan hirveästi harmitti, sillä koneen sisuksissa makasi varsinainen kultakaivos. ARM-arkkitehtuurilla oli kilpailijoihinsa verrattuna se ylivoimainen etu, että se oli todella virtapihi. Jopa aikalaistesteissä etenkin komentoriviä pidettiin harvinaisen kömpelönä. Yhden piirilevyn tietokone Raspberry Pi on sekin ARM-pohjainen ja lähtöisin brittiläisen säätiön suunnittelupöydältä. Suomalaisia tietokonejournalisteja hurmasikin Archimedeksen sisuksissa jo uudempi versio ARM2. Sillä oli vaikea perustella tuplahintaisen koneen hankintaa. Missä markkinointi. Muualla Euroopassa mainontaan ei juuri panostettu. Archimedes lienee yksi harvoja tietokoneita, jonka mukana toimitettu graafinen käyttöliittymä pyöri BASIC-tulkilla
Meidän ohjelmamme ei kuitenkaan tee niin, sillä tarvitsemme vain kaksi kohtaa: ohjelman kytkeminen pois tai päälle ja sen lopettaminen. Parempi tapa onkin käynnistää ohjelma ilmoitusalueelle, jolloin käyttäjä voi hiirellä tai näppäimistöllä osoittaa ohjelman kuvaketta ja avata pikavalikon. Toisella tavalla ohjelma ei avaa ruudulle ikkunaa. Ilmoitusalueelle lisätyt ohjelmat näkyvät pieninä kuvakkeina, ilman otsikkoa. Tämä alue sijaitsee heti kellon vieressä, yleensä alaoikealla. Since the symbol starts with a dot, it cannot be accessed * by user code. Ilmoitusalue (notification area), jota ohjelmoijat nimittävät myös järjestelmätarjottimeksi (system tray), mahdollistaa ohjelman toimimisen taustalla. Tällöin sen näkee vain Tehtävienhallinnan kohdasta ”Prosessit”. Tällöin se tulee takuuvarmasti huomatuksi, mutta samalla keskittyminen työn alla olevaan asiaan herpaantuu. Pienenä lisäominaisuutena laitetaan ohjelma muistuttamaan koneen ääressä olijaa uudelleen, tällä kertaa 10 minuutin välein, jos hän ei nosta ahteriaan tuolilta. 2 64 static long DoStructInternal (long Offs, unsigned Type) /* Handle the .STRUCT command */ { long Size = 0; /* Outside of other structs, we need a name. Inside another struct or * union, the struct may be anonymous, in which case no new lexical level * is started. * Leave the struct scope level. Huonona puolena ohjelman hallinta kunnollisesti on tällöin mahdotonta, sillä käyttöliittymän puuttuessa ei ohjelmaa esimerkiksi voi helposti sulkea. Kaikkien Windows-ohjelmien on luotava ainakin yksi ikkuna, jotta ne voivat toimia ja kommunikoida järjestelmän kanssa. */ Macro* M = FindMacro (&CurTok.SVal); if (M) { MacExpandStart (M); continue; } /* We have an identifier, generate a symbol */ Sym = SymFind (CurrentScope, &CurTok.SVal, SYM_ALLOC_NEW); /* Assign the symbol the offset of the current member */ SymDef (Sym, GenLiteralExpr (Offs), ADDR_SIZE_DEFAULT, SF_NONE); /* Skip the member name */ NextTok (); } /* Read storage allocators */ MemberSize = 0; /* In case of errors, use zero */ switch (CurTok.Tok) { case TOK_BYTE: NextTok (); MemberSize = Member (1); break; case TOK_DBYT: case TOK_WORD: case TOK_ADDR: NextTok (); MemberSize = Member (2); break; case TOK_FARADDR: NextTok (); MemberSize = Member (3); break; case TOK_DWORD: NextTok (); MemberSize = Member (4); break; case TOK_RES: NextTok (); if (CurTok.Tok == TOK_SEP) { ErrorSkip ("Size is missing"); } else { MemberSize = Member (1); } break; case TOK_TAG: NextTok (); Struct = ParseScopedSymTable (); if (Struct == 0) { ErrorSkip ("Unknown struct/union"); } else if (GetSymTabType (Struct) != SCOPE_STRUCT) { ErrorSkip ("Not a struct/union"); } else { SymEntry* SizeSym = GetSizeOfScope (Struct); if (!SymIsDef (SizeSym) || !SymIsConst (SizeSym, &MemberSize)) { ErrorSkip ("Size of struct/union is unknown"); } } MemberSize = Member (MemberSize); break; case TOK_STRUCT: NextTok (); MemberSize = DoStructInternal (Offs, STRUCT); break; case TOK_UNION: NextTok (); MemberSize = DoStructInternal (Offs, UNION); break; default: if (!CheckConditionals ()) { /* Not a conditional directive */ ErrorSkip ("Invalid storage allocator in struct/union"); } } /* Assign the size to the member if it has a name */ if (Sym) { DefSizeOfSymbol (Sym, MemberSize); } /* Next member */ if (Type == STRUCT) { /* Struct */ Offs += MemberSize; Size += MemberSize; } else { /* Union */ if (MemberSize > Size) { Size = MemberSize; } } /* Expect end of line */ ConsumeSep (); } /* If this is not a anon struct, enter a special symbol named ".size" * into the symbol table of the struct that holds the size of the * struct. */ if (!Anon) { /* Add a symbol */ SymEntry* SizeSym = GetSizeOfScope (CurrentScope); SymDef (SizeSym, GenLiteralExpr (Size), ADDR_SIZE_DEFAULT, SF_ NONE); /* Close the struct scope */ SymLeaveLevel (); } /* If this is not a anon struct, enter a special symbol named ".size" * into the symbol table of the struct that holds the size of the * struct. Seuraavaksi esiteltävä Windows-ohjelma korjaa tämän puutteen. Tällöin se ei häiritse käyttäjää, jos hän on esimerkiksi esittämässä muille näyttönsä sisältöä. */ if (!Anon) { /* Add a symbol */ SymEntry* SizeSym = GetSizeOfScope (CurrentScope); SymDef (SizeSym, GenLiteralExpr (Size), ADDR_SIZE_DEFAULT, SF_NONE); /* Close the struct scope */ SymLeaveLevel (); } /* End of struct/union definition */ if (Type == STRUCT) { Consume (TOK_ENDSTRUCT, "`.ENDSTRUCT' expected"); } else { Consume (TOK_ENDUNION, "`.ENDUNION' expected"); } /* Return the size of the struct */ return Size; } long GetStructSize (SymTable* Struct) /* Get the size of a struct or union */ { SymEntry* SizeSym = FindSizeOfScope (Struct); if (SizeSym == 0) { Error ("Size of struct/union is unknown"); return 0; } else { return GetSymVal (SizeSym); } } void DoStruct (void) /* Handle the .STRUCT command */ { DoStructInternal (0, STRUCT); } void DoUnion (void) /* Handle the .UNION command */ { DoStructInternal (0, Tietokoneella työskenneltäessä aika kuluu huomaamatta ja tarpeellisten verryttelytaukojen pitäminen voi unohtua. Monesti ensimmäinen valinta avaa ohjelman ruudulle. 2 1 7 . * Leave the struct scope level. Näin voi kuitenkin tapahtua, jos tauottajan viestiruutu ryhtyy yhtäkkiä aktiiviseksi sovellukseksi. Parempi valinta onkin muistuttaa käyttäjää tauosta häntä häiritsemättä, mutta kuitenkin huomiota herättävästi. */ int Anon = (CurTok.Tok != TOK_IDENT); if (!Anon) { /* Enter a new scope, then skip the name */ SymEnterLevel (&CurTok.SVal, SCOPE_STRUCT, ADDR_SIZE_ABS, 0); NextTok (); /* Start at zero offset in the new scope */ Offs = 0; } /* Test for end of line */ ConsumeSep (); /* Read until end of struct */ while (CurTok.Tok != TOK_ENDSTRUCT && CurTok.Tok != TOK_ENDUNION && CurTok.Tok != TOK_ EOF) { long MemberSize; SymTable* Struct; SymEntry* Sym; /* Allow empty and comment lines */ if (CurTok.Tok == TOK_SEP) { NextTok (); continue; } /* The format is "[identifier] storage-allocator [, multiplicator]" */ Sym = 0; if (CurTok.Tok == TOK_IDENT) { /* Beware: An identifier may also be a macro, in which case we have * to start over. Since the symbol starts with a dot, it cannot be accessed * by user code. Se ei siis löydy kohdasta ”Ohjelmat”. Raporttia kirjoittava työntekijä ei välttämättä ilahdu, jos kesken kirjoituksen näytölle tulee ruutu, jonka vuoksi osa näppäinpainalluksista hukkuu. Tekniikka Kehotus voidaan toteuttaa vaikkapa perinteisellä viesti-ikkunalla, joka pompsahtaa keskelle ruutua. I ntensiivinen koneella työskentely saattaa viedä ajantajun, joten jonkun olisi tasaisin väliajoin muistutettava tauon pitämisestä. Puhekuplaa muistuttavia viestejä voivat näyttää ruudulla ne ohjelmat, jotka ovat tehtäväpalkin niin sanotulla ilmoitusalueella. Mikäli ohjelmaamme kuuluisi enemmän asetuksia, ne Koodi Teksti: Markus Kuula Kuvat: Nasu Viljanmaa, Markus Kuula TAUON paikka!. Tauottajan määrittely Tauotusohjelma kehottaa tietokoneen ääressä olijaa pitämään venyttelytauon. Vanhoissa liikuntasuosituksissa väli on saattanut olla pidempikin: tunti tai jopa 2 tuntia. Valjastetaan siis tietokone muistuttamaan tauoista. Tämä käy päinsä, kun käytämme kuplamuotoista viestiä. Pitäydytään silti tiheämmässä muistutusvälissä. Windows-ohjelma voidaan käynnistää periaatteessa kolmella eri tavalla: tavallisesti se käynnistyessään ilmestyy ruudulle ja tehtäväpalkkiin. Koska tällaisen henkilön palkkaaminen tulisi kalliiksi, eivätkä yritykset välttämättä suvaitse ulkopuolisia henkilöitä tiloissaan, muistuttajan olisi oltava kone. Kehotus annetaan aina puolen tunnin välein. Tällöin ohjelmaan voidaan siirtyä toisesta ohjelmasta Alt+Tab-näppäinyhdistelmällä. Meidän on kyllä luotava ikkuna, mutta voimme jättää sen piiloon. Muuten varsinaista säädettävää ei tarvita, eikä näin ollen kummoista käyttöliittymääkään. Ohjelman itsensä voi myös asettaa tauolle
Projektin .NET-versiona käy 2. Tällöin erillistä piiloikkunaa ei tarvittaisi. Aloita uusi projekti ja anna sen nimeksi vaikka Tauottaja. Paras ratkaisu onkin luottaa asiaan, jonka toivon mukaan jokainen tekee ennen kuin poistuu koneen ääreltä: lukitsee Windowsin. */ int Anon = (CurTok.Tok != TOK_IDENT); if (!Anon) { /* Enter a new scope, then skip the name */ SymEnterLevel (&CurTok.SVal, SCOPE_STRUCT, ADDR_SIZE_ABS, 0); NextTok (); /* Start at zero offset in the new scope */ Offs = 0; } /* Test for end of line */ ConsumeSep (); /* Read until end of struct */ while (CurTok.Tok != TOK_ENDSTRUCT && CurTok.Tok != TOK_ENDUNION && CurTok.Tok != TOK_ EOF) { long MemberSize; SymTable* Struct; SymEntry* Sym; /* Allow empty and comment lines */ if (CurTok.Tok == TOK_SEP) { NextTok (); continue; } /* The format is "[identifier] storage-allocator [, multiplicator]" */ Sym = 0; if (CurTok.Tok == TOK_IDENT) { /* Beware: An identifier may also be a macro, in which case we have * to start over. Näin jatketaan kunnes käyttäjä lukitsee istunnon uudelleen, kirjautuu ulos tai sammuttaa tietokoneen. Rekistereitä voi myös yhdistellä 16-bittisiksi rekisteripareiksi BC, DE ja HL. Since the symbol starts with a dot, it cannot be accessed * by user code. Toteutus Toteutuskielenä on C# ja kehitysympäristönä Visual Studio 2013 Community Edition, mutta ohjelma kääntyy myös ainakin 2015-versiolla. * Leave the struct scope level. Komponentti Nimi Lisätiedot ajastin timer pääajastin toinen ajastin helpTimer aputekstin päivitys ilmoitusalueen hallinta notifyIcon pikavalikko contextMenuStripv. Sen toisena parametrina on tieto, mitä istunnolle tapahtuu. Muista valita Windows Application, sillä ohjelmassa tarvitaan tyhjä lomake. Se kuitenkin rajaa pois liukuvaa työaikaa noudattavat työpaikat, eikä ota muutenkaan huomioon päivän tapahtumia. Mikäli ohjelmoiminen maistuu puulta, voi valmiin version kopioida osoitteesta www.mwritings.net/compold/2015/11/15/have-a-break. 65 static long DoStructInternal (long Offs, unsigned Type) /* Handle the .STRUCT command */ { long Size = 0; /* Outside of other structs, we need a name. Rivillä 34 määritellään käsittelijä, joka suoritetaan, kun istunto lukitaan tai lukitus avataan. Tällaisella ikkunalla ei ole näkyviä osia, vaan se ainoastaan kykenee lähettämään ja vastaanottamaan viestejä käyttöjärjestelmältä ja toisilta ohjelmilta. Samalla ajastimen tikitysväliä tihennetään siten, että seuraava viesti tulee 10 minuutin päästä. Ohjelman käyttöliittymänä on kaksi valintaa sisältävä valikko: toisella ohjelman saa väliaikaisesti tauolle ja toisesta se lopetetaan kokonaan. Omien ohjelmien tai pelien kehittäminen Game Boylle oli harrastajille pitkään liki mahdotonta, sillä laite hyväksyi vain Nintendon lisensoimia pelikasetteja. Vielä pitäisi ratkaista eräs asia: kuinka ohjelma tietää, onko käyttäjä koneen äärellä vai ei. Yksinkertaisin ajatus olisi ohjelmoida se hälyttämään aina tietyllä kellonlyömällä. */ if (!Anon) { /* Add a symbol */ SymEntry* SizeSym = GetSizeOfScope (CurrentScope); SymDef (SizeSym, GenLiteralExpr (Size), ADDR_SIZE_DEFAULT, SF_ NONE); /* Close the struct scope */ SymLeaveLevel (); } /* If this is not a anon struct, enter a special symbol named ".size" * into the symbol table of the struct that holds the size of the * struct. Kuittausnäppäin toimisi paremmin, mutta se vaatii käyttäjää muistamaan asian. * Leave the struct scope level. Inside another struct or * union, the struct may be anonymous, in which case no new lexical level * is started. */ Macro* M = FindMacro (&CurTok.SVal); if (M) { MacExpandStart (M); continue; } /* We have an identifier, generate a symbol */ Sym = SymFind (CurrentScope, &CurTok.SVal, SYM_ALLOC_NEW); /* Assign the symbol the offset of the current member */ SymDef (Sym, GenLiteralExpr (Offs), ADDR_SIZE_DEFAULT, SF_NONE); /* Skip the member name */ NextTok (); } /* Read storage allocators */ MemberSize = 0; /* In case of errors, use zero */ switch (CurTok.Tok) { case TOK_BYTE: NextTok (); MemberSize = Member (1); break; case TOK_DBYT: case TOK_WORD: case TOK_ADDR: NextTok (); MemberSize = Member (2); break; case TOK_FARADDR: NextTok (); MemberSize = Member (3); break; case TOK_DWORD: NextTok (); MemberSize = Member (4); break; case TOK_RES: NextTok (); if (CurTok.Tok == TOK_SEP) { ErrorSkip ("Size is missing"); } else { MemberSize = Member (1); } break; case TOK_TAG: NextTok (); Struct = ParseScopedSymTable (); if (Struct == 0) { ErrorSkip ("Unknown struct/union"); } else if (GetSymTabType (Struct) != SCOPE_STRUCT) { ErrorSkip ("Not a struct/union"); } else { SymEntry* SizeSym = GetSizeOfScope (Struct); if (!SymIsDef (SizeSym) || !SymIsConst (SizeSym, &MemberSize)) { ErrorSkip ("Size of struct/union is unknown"); } } MemberSize = Member (MemberSize); break; case TOK_STRUCT: NextTok (); MemberSize = DoStructInternal (Offs, STRUCT); break; case TOK_UNION: NextTok (); MemberSize = DoStructInternal (Offs, UNION); break; default: if (!CheckConditionals ()) { /* Not a conditional directive */ ErrorSkip ("Invalid storage allocator in struct/union"); } } /* Assign the size to the member if it has a name */ if (Sym) { DefSizeOfSymbol (Sym, MemberSize); } /* Next member */ if (Type == STRUCT) { /* Struct */ Offs += MemberSize; Size += MemberSize; } else { /* Union */ if (MemberSize > Size) { Size = MemberSize; } } /* Expect end of line */ ConsumeSep (); } /* If this is not a anon struct, enter a special symbol named ".size" * into the symbol table of the struct that holds the size of the * struct. KOODIA Game Boylle kotikonstein Pelkästä pelikoneesta demoalustaksi Teksti: Samuli Vuorinen Kuvat: Mitol Meerna, Samuli Vuorinen, Wikimedia Commons Useimmille 1980-luvun lapsille Nintendo Game Boy on tuttu pelikonsoli, joka kulki aina reissussa mukana. Nykyään on kuitenkin saatavilla työkaluja, joilla harrastajatkin voivat kehittää omia ohjelmiaan tälle konsoliklassikolle! olisi järkevää koota ikkunaan, jonka käyttäjä voi pikavalikon kautta avata. Ohjelmassa käytettävät komponentit on lueteltu alla. Since the symbol starts with a dot, it cannot be accessed * by user code. Asetusruutu olisi tällöin olemassa piilotettuna ja otettaisiin esille vain tarpeen vaatiessa. Ajastimen interval-arvo säilyy muuttumattomana kun ohjelma laitetaan tauolle. Jos tietokoneen – ja tuolin – käyttäjä ei lukitse istuntoa 30 minuuttiin, tulee viesti ilmoitusalueelta. Kun istunto lukitaan, ohjelma pysäyttää ajastimen ja käynnistää sen uudelleen kun lukitus avataan. */ if (!Anon) { /* Add a symbol */ SymEntry* SizeSym = GetSizeOfScope (CurrentScope); SymDef (SizeSym, GenLiteralExpr (Size), ADDR_SIZE_DEFAULT, SF_NONE); /* Close the struct scope */ SymLeaveLevel (); } /* End of struct/union definition */ if (Type == STRUCT) { Consume (TOK_ENDSTRUCT, "`.ENDSTRUCT' expected"); } else { Consume (TOK_ENDUNION, "`.ENDUNION' expected"); } /* Return the size of the struct */ return Size; } long GetStructSize (SymTable* Struct) /* Get the size of a struct or union */ { SymEntry* SizeSym = FindSizeOfScope (Struct); if (SizeSym == 0) { Error ("Size of struct/union is unknown"); return 0; } else { return GetSymVal (SizeSym); } } void DoStruct (void) /* Handle the .STRUCT command */ { DoStructInternal (0, STRUCT); } void DoUnion (void) /* Handle the .UNION command */ { DoStructInternal (0, Koodi V uonna 1989 julkaistu Game Boy tarjoaa nykypäivän mittapuulla varsin vaatimattomat puitteet ohjelmien suorittamiselle. Ikkunan piilotus tehdään määrittämällä se message only -tyyppiseksi. Siitä löytyvät 8-bittiset rekisterit A, B, C, D, E, H ja L. Laitteen sydän on 4 megahertsin taajuudella pyörivä, Sharpin valmistama 8-bittinen LR35902-suoritin, joka on Nintendon oma muunnelma aikanaan yleisestä Zilog Z80 -suorittimesta. Jos on tarpeen, sen voi nollata rivin 72 jälkeen
Vihreän eri sävyjä Moni muistaa Game Boyn erityisesti siitä, miten huonosti laitteen nestekidenäytöstä sai selvää. Näytössä ei ole omaa taustavaloa, joten laitetta ei voi sellaisenaan käyttää hämärässä. Näytön käyttämistä mutkistaa entisestään se, että näyttömuistia ei voi käyttää milloin tahansa, vaan ainoastaan silloin, kun näytölle piirtäminen ei ole kesken. Molempia kokoja ei voi käyttää yhtä aikaa, vaan kaikki yhtä aikaa näkyvät sprite-hahmot ovat samankokoisia. Pikseleitä on yhteensä 160×144 kappaletta. Jokaisen pikselirivin välissä on niin kutsuttu H-blank-jakso, jolloin näyttömuisti on käytettävissä. Kahden ruutukartan lisäksi ruudulle voi piirtää maksimissaan 40 spritehahmoa (kuitenkin vain 10 hahmoa per pikselirivi). Käyttöja lukumuistiin, videomuistiin sekä kaikkiin oheislaitteisiin ja ohjaimiin pääsee käsiksi muistiavaruuden kautta. Niin käyttö-, lukukuin näyttömuistillekin on varattu omat alueensa laitteen muistiavaruudessa. Lukuja käyttömuisti on jaettu muistipankkeihin, joita voidaan ottaa käyttöön yksi kerrallaan. Game Boyssa on 16-bittinen muistiväylä, joten muistiavaruuden koko on 64 kilotavua. Internetissä on nykyään tilattavissa jälkiasennettavia taustavaloja ja muita parannuksia Game Boyn näyttöön. Sprite-hahmot voi vapaasti asemoida ruudulle, ja ne voi myös peilata pystyja vaaka-akselin ympäri. 2 1 7 . Koska pelikasetilla voi olla suurimmillaan jopa 8 megatavua lukumuistia ja 128 kilotavua ylimääräistä käyttömuistia, 16-bittinen muistiväylä ei pysty antamaan kaikelle muistille osoitteita kerralla. Ennen näyttömuistin lukemista tai sinne kirjoittamista on siis varmistettava, että jompikumpi näistä jaksoista on menossa, tai tarpeen tullen odottaa. Muistiavaruuden ensimmäinen puolisko on siis kokonaan varattu pelikasetin lukumuistille. Toisen puoliskon kautta käsitellään muun muassa videoja käyttömuistia. Mitään muuta pelikasetilla ei välttämättä ole, mutta se voi sisältää ylimääräistä käyttömuistia siltä varalta, että laitteen oma käyttömuisti ei riitä. Game Boyssa on myös äänipiiri, josta on myöhemmin tullut varsin suosittu chiptune-muusikoiden keskuudessa. KB 32 KB 64 KB Lukumuisti Videomuisti Pelikasetilla oleva käyttömuisti Käyttömuisti Ei käytössä Sprite-taulukko, IO-rekisterit ja hieman lisää käyttömuistia. 2 66 Laitteessa on 8 kilotavua sekä näyttöettä käyttömuistia, ja itse pelikasetilla on vähintään 32 kilotavua lukumuistia. Pelikasetilla olevan lukumuistin 16 ensimmäistä kilotavua ovat aina käytettävissä muistiavaruuden alussa. Tätä käytetään peleissä usein rajaamaan näytölle alue, josta pelaaja näkee esimerkiksi pelihahmon terveydentilan tai pistetilanteen. Hahmot voivat olla joko 8×8 tai 8×16 pikselin kokoisia. Sprite-hahmot ovat käytännössä kolmivärisiä, sillä yksi väri on aina läpinäkyvä. Äänipiirissä on neljä kanavaa, joista kaksi ensimmäistä tuottavat kanttiaaltoja, kolmas 4-bittisiä ääninäytteitä ja neljäs kohinaa. USB-pelikasetille voi siirtää pelejä ja ohjelmia suoraan tietokoneelta. H-blank kestää noin 200 kellosykliä ja V-blank 4 560 kellosykliä. Piirtäminen laitteen näytölle ei valitettavasti ole erityisen suoraviivaista. Näyttö on 2-bittinen, joten jokainen pikseli voi näyttää 4 eri vihreän sävyä tummasta vaaleaan. Pikselien vähäinen määrä ei juurikaan haittaa, sillä näyttö on fyysisesti pieni. Taustaa ohjaava ruutukartta käsittää 32×32 ruutua, mutta ruudulle mahtuu kerrallaan vain 20×18 ruutua. Vastaavasti jokaisen erillisen kokonaan piirretyn näytöllisen välillä on niin kutsuttu V-blank-jakso, jolloin näyttömuisti on myös käytettävissä. Näyttömuistiin tallennetaan 8×8 pikselin ruutuja, joihin viitataan erillisessä ruutukartassa, joka määrää mitä ruudulle piirretään. Game Boyssa on kaksi erillistä ruutukarttaa: yksi taustaa varten ja toinen taustan päälle piirrettävää tasoa varten. Näyttömuistiin ei siis tarvitse tallentaa erillisiä ruutuja esimerkiksi pelihahmon eri kävelysuunnille. Näyttö päivittyy noin 60 kertaa sekunnissa. Taustakuvan päälle piirrettävää tasoa ei voi vierittää, mutta sen voi määrätä piirrettäväksi vain tiettyyn osaan ruutua. Laitteessa onkin kaksi muistipaikkaa, joihin kirjoittamalla taustakuvaa voi vierittää pystyja vaakasuunnassa. Muistiavaruuden seuraavat 16 kilotavua ovat valittavissa lukumuistin jäljelle jääneistä muistipankeista
Yksi kattavimmista dokumenttikokoelmista Game Boy -kehittäjälle on niin kutsuttu Pan Docs, joka sisältää hyvin yksityiskohtaiset selostukset laitteen ohjausrekistereistä, ajoituksista ja muusta käyttäytymisestä. Ymmärtämällä käskyt ld sekä jp pääsee jo pitkälle. RGBDS-paketin työkalut huolehtivat symbolisen konekielen kääntämisestä suorittimen ymmärtämäksi konekieleksi, käännösyksiköiden yhteenlinkittämisestä sekä otsaketietoihin kirjoitettavien tarkistussummien laskemisesta. Lisäksi GBDK:n kehitys on loppunut jo vuonna 2001. Ohjelman kehitys oli pitkään tauolla, mutta kehitystyö on jälleen nytkähtänyt liikkeelle kuluneen vuoden aikana. Nykyään nettikaupoista löytyykin monenlaisia pelikasetteja, joihin voi ladata pelejä ja ohjelmia tietokoneelta USB-yhteyden kautta. Ensimmäinen on lyhenne sanasta load, ja käskyllä kopioidaan dataa suorittimien rekisterien tai muistiosoitteiden välillä. Tällä hetkellä suosituin ja tarkin emulaattori on BGB, joka tarjoaa lisäksi paljon hyödyllisiä työkaluja omien ohjelmien kehittämiseen. Kannattaa kuitenkin varautua siihen, että työkalujen dokumentaatio ei ole ajan tasalla. On olemassa Game Boylle suunnattuja C-kääntäjiä, kuten GBDK, mutta ne tuottavat usein melko tehotonta ja tilaa vievää koodia verrattuna käsintehtyyn assembly-koodiin. Artikkelin lopusta löytyy hyödyllisiä linkkejä aloittelevalle kehittäjälle. Oheiseen koodilistaukseen on kirjoitettu lyhyt assembly-ohjelma, joka piirtää Game Boyn näytön täyteen hymiöitä. Koska laite lukee Nintendon logon pelikasetilta käynnistyksen aikana, Nintendon logon tilalla näkyy pelkkä musta laatikko, jos laitteen käynnistää ilman pelikasettia. Tilan säästämiseksi otsaketiedot on jätetty pois, mutta koko ohjelmakoodi on ladattavissa osoitteesta skrolli.fi/2017.2. Game Boyn salainen käynnistysohjelma onnistuttiin saamaan laitteesta ulos vasta vuonna 2003. Kääntäjä tuottaa tiedoston, jonka sisältö voidaan kirjoittaa suoraan pelikasetin lukumuistiin. Jotta laite hyväksyy pelikasetin, kasetin muistissa tulee olla kopio Nintendo-logosta, ja sen täytyy bitti bitiltä täsmätä Game Boyn omassa muistissa olevaan logoon. Jos otsaketiedot eivät täsmää, laite ei jatka suoritusta. Tällä hetkellä suosituin assemblerohjelma Game Boyta varten on Rednex Game Boy Development System eli RGBDS. Työkaluja harrastajalle Tällä hetkellä luultavasti suoraviivaisin tapa kirjoittaa ohjelmia Game Boylle on kirjoittaa assemblya, eli symbolista konekieltä. Ohjelma yrittää pelikasetin lukumuistissa olevien otsaketietojen perusteella määrittää, onko kasetti Nintendon lisensoima. Jälkimmäi. Tällaisia kasetteja ovat esimerkiksi EverDrive GB, Kitsch-Bent USB 64M Smart Card tai Drag’n’Derp Cart. 67 Pelikasetin salat Game Boyssa on pieni 256 tavun lukumuisti, jonka sisältämä ohjelma suoritetaan aina kun laite käynnistetään. Lisäksi otsaketietojen lopussa tulee olla tietyllä tavalla laskettu tarkistussumma otsaketietojen sisällöstä. Ohjelmia on mahdollista ajaa yksi käsky kerrallaan ja tutkia, miten esimerkiksi suorittimen rekisterien arvot muuttuvat ajon aikana tai millaisia kuvia näyttömuistiin on milloinkin ladattu. Kehitystyötä varten on kuitenkin helpointa käyttää emulaattoria ohjelmien ja pelien ajamiseen. Nyt kun muistipiirin sisältö on tiedossa, voidaan tehdä pelikasetteja, jotka laite hyväksyy mukisematta
.lopetus: halt jp .lopetus ; Hymiötä esittävä 8x8 pikselin ruutu, ; jossa numerot 0-3 vastaavat sävyjä ; vaaleanvihreästä tummanvihreään. 2 68 nen käsky on hyppykäsky, eli jump, jolla voidaan ehdollisesti tai ehdottomasti siirtyä suorittamaan koodia eri paikasta. Section “Alku”,HOME[$100] jp aloitus Section “Ajettava ohjelma”,HOME[$150] aloitus: ; Näyttö sammutetaan, jotta ruutudatan ; ja -karttojen latauksessa ei tarvitse miettiä ; voiko näyttömuistiin kirjoittaa. ld A, %11100100 ld [$FF47], A ; Näyttömuistiin ladataan 16 tavua ruutudataa ld D, 16 ld BC, ruutu_data ld HL, $8000 .ruudun_lataus: ld A, [BC] inc BC ldi [HL], A dec D jp nz, .ruudun_lataus ; Osoitteessa $9800 sijaitseva ruutukartta ; täytetään ruudulla numero 0. INCLUDE “makrot.inc” ; Ohjelman suoritus alkaa osoitteesta $100, ; josta hypätään osoitteeseen $150, koska otsaketiedot ; sijaitsevat välillä $104-$14F. 2 1 7 . ld A, %10010001 ld [$FF40], A Linkkejä Game Boy -kehitykseen BGB-emulaattori bgb.bircd.org Rednex Game Boy Development System github.com/rednex/rgbds Game Boy Developer’s Kit gbdk.sourceforge.net Pan Docs gbdev.gg8.se/wiki/articles/Pan_Docs Awesome Game Boy Development github.com/avivace/awesome-gbdev Oheisen koodilistauksen ohjelma tuottaa ruudun täyteen hymynaamoja. ; makrot.inc-tiedostossa määritellään OdotaVBlankinAlkua-makro. Load-käskyn variantti ldi lataa annetun rekisterin sisällön HL-rekisterin osoittamaan muistipaikkaan ja kasvattaa HL-rekisterin arvoa yhdellä. OdotaVBlankinAlkua ld A, %00000000 ld [$FF40], A ; Taustan käyttämä väripaletti valitaan kirjoittamalla ; se muistiosoitteeseen $FF47. ruutu_data: DW `01111100 DW `11111110 DW `11313110 DW `11111110 DW `13111310 DW `11333110 DW `01111100 DW `00000000. ; Näyttö voidaan sammuttaa vain V-blankin aikana, ; jonka odottamiseen on luotu makro. ld HL, $9800 ld B, 180 .ruutukartan_lataus: ld A, ldi [HL], A ldi [HL], A dec B jp nz, .ruutukartan_lataus ; Näyttö käynnistetään ja taustan ; piirto laitetaan päälle
Kun pelistä on olemassa täydelliset lähdekoodit, käyttäjä voi itse ohjelmoida siitä täysin haluamansa. Koko listaus on tuhansia rivejä, joten jatkossa olen poiminut esiteltäväksi vain osia ohjelmasta. USS Enterprisen ja sen kapteenin tehtävä on tuhota viholliset, ennen kuin ne pääsevät iskemään avaruuslaivaston päätukikohtaan. Vihollisten etsimistä varten Enterprisellä on kaksi avarustutkaa: Long Range Scanner, jolla näkee muutaman kvadrantin ympäriinsä, sekä Short Range Scanner, jolla näkee oman kvadrantin kaikki oliot. Ohjelma on niin vanha, että varsinainen ohjelmakoodi on vanhaa niin sanottua rivinumero-BASICia. Sen pelaaminen on hauska kokemus, erityisesti kun ohjelmaa on säädetty niin, että pelin voittaminen ei ole turhauttavan vaikeaa. Galaksissa on tietty joukko omia tukikohtia, joissa voi tankata energiaa sekä ladata lisää aseita ja korjata USS Enterprisen vaurioita. Loput piirteet selviävät pelaamalla ja lukemalla alla olevaa listaa komennoista. Super Star Trek BASIC-kielinen pelitiedosto on peräisin amerikkalaisilta tuttaviltani, joiden kanssa olemme yhdessä editoineet, korjanneet ja muokanneet sitä niin, että se toimii uudenaikaisessa PCBASICissa nimeltä QB64. Pelin juoni Pelin päähenkilö ja pelaaja on avaruusalus USS Enterprisen kapteeni. Kapteenin tehtävänä on partioida ympäri galaksia ja ampua viholliset hengiltä. Tässä artikkelissa tutustumme pelin sielunelämään. Klingonien avaruuslaivasto on hyökännyt kotigalaksiimme. Kirjoitin tästä BASIC-variantista Skrollin numerossa 2015.4. Pelitiedoston nimi on SUPERSTARTREK.BAS; sen voi ladata osoitteesta skrolli.fi/numerot. 69 Koodi S ain idean kääntää Star Trekin modernille PCBASICille. Klassista Star Trek -avaruuspeliä on pelattu lukemattomissa time sharingeli osituskäyttötietokoneissa aina 1970-luvun alusta lähtien. Tuloksena oli avaruuspeli, jossa ei ole modernia huippugrafiikkaa, mutta joka on mukava retro-ohjelmointikokemus. Tähän on käytettävissä tietty määrä tähtipäiviä (stardate). Enterprisella on kaksi asetta: vaiheiset (phasers) sekä fotonitorpedot, joilla voi tuhota vihollisia. Ohjelman lukemista hieman haittaa se, että alkuperäinen ohjelmoija ei ole käyttänyt itsedokumentoivia symbolien nimiä. Ohjelmatiedoston alussa on kommentteja, joista käy ilmi muun muassa mitä korjauksia ja muutoksia koodaajatt ovat tehneet Super Star Trek -ohjelmaan. Artikkelin käsittelemä peli on lukuisista Star Trek -peleistä kehittynein, Super Star Trek. Siitä on tehty myös runsaasti käännöksiä kotitietokoneille. Teksti: Antti Ylikoski Kuva: Mikael Heikkanen Peliklassikko BASICilla: STAR TREK. Lisäksi on olemassa tietokone, jolla saa näkyviin muun muassa erilaisia näyttöjä vallitsevasta tilanteesta
Tässä BASIC-kielessä ei ollut olemassa tietuetietotyyppiä, joten jokaisen galaksin kvadrantin sisältämät objektit on talletettu yhteen kokonaislukuun, joka on matriisin s2(*,*) alkion arvona. SENSORS","PHASERS","PHOTON TUBES","LIFE SUPPORT" 20 DATA "WARP ENGINES","IMPULSE ENGINES","SHIELDS","SUBSPACE RADIO" 21 DATA "SHUTTLE CRAFT","COMPUTER","TRANSFER PANEL","ABANDON","CHART","COMPUTER" 22 DATA "DAMAGES","DESTRUCT","DOCK","IDLE","IMPULSE","LRSCAN","NAVIGATE","PHASERS","QUIT" 23 DATA "SHIELDS","SOS","SRSCAN","STATUS","TORPEDO","TRANSFER","VISUAL","WARP","SHORT" 24 DATA "MEDIUM","LONG","BEGINNER","NOVICE","SENIOR","EXPERT","COURSE","WCOST","ICOST" 25 DATA "PEFFECT","SCORE","END","ANTARES","SIRIUS","RIGEL","MERAK","PROCYON","CAPELLA" 26 DATA "VEGA","DENEB","CANOPUS","ALDEBARAN","ALTAIR","REGULUS","BELLATRIX","ARCTURUS" 27 DATA "POLLUX","SPICA",10.5,12,1.5,9,0,3,7.5,6,4.5 Listaus 1. Riveillä 110– 130 käyttäjän syöttämää merkkijonoa verrataan ohjelman komentoihin. Näillä eväillä BASIC-kielitaitoinen lukija saa kuitenkin melko helposti selvää ohjelman koodista. The Great Giana Sisters, Turrican... Peliohjelman rakenne Riveillä 19–27 on DATA-lauseissa ohjelman käyttämät merkkijonot, kuten käyttäjän komennot, sekä galaksin osien eli kvadranttien nimet. Ainoa monimutkaisuus on siinä, että komentoja on monta, ja GOSUB-aliohjelmat, jotka suorittavat komennot, ovat kohtalaisen monimutkaisia. 70 IF a2 <> THEN 900 75 j4 = 0: t1 = 0: PRINT: INPUT "COMMAND "; a$: IF LEN(a$) > 1 THEN 110 80 PRINT "USE AT LEAST 2 LETTERS, PLEASE.": GOTO 75 110 FOR i = 1 TO 20 120 IF a$ = LEFT$(c$(i), LEN(a$)) THEN 150 130 NEXT 135 INPUT "ILLEGAL COMMAND DO YOU NEED A LIST "; b$ 136 IF LEFT$(b$, 1) = "N" THEN 70 140 PRINT: FOR i = 1 TO 20 STEP 4 141 PRINT c$(i); TAB(12); c$(i + 1); TAB(22); c$(i + 2); TAB(32); c$(i + 3) 142 NEXT: PRINT: GOTO 70 144 REM 146 REM THE COMPUTED GOTO'S, TO JUMP TO THE COMMAND TO EXECUTE: 148 REM 150 ON i GOTO 200, 225, 250, 275, 290, 300, 325, 350, 375, 400 160 ON i 10 GOTO 425, 450, 475, 500, 525, 540, 550, 575, 600, 625 170 PRINT "ERROR AT 170 SHOULD NOT BE HERE" 180 END Listaus 2. 2 1 7 . Pääsilmukka. Näissä ohjelmakohdissa hypätään aliohjelmiin GOSUB-lauseilla, ja nämä aliohjelmat suorittavat varsinaiset komennot. Itse QB64 käynnistetään komentotiedostolla run_qb64.sh. Chris Huelsbeck -konsertti Kuule maineikkaan säveltäjän pelimusiikkia kolmen pianon sovituksina, mm. Rivillä 75 käyttäjä syöttää komennon. SENSORS","L.R. Windowsissa tai Macissa sovelletaan samaa toimintaa. ABANDON-komennolla miehistö jättää aluksen. The Great Giana Sisters, Turrican... BASIC-ohjelman voi myös kääntää konekielelle ja tallentaa levylle – käännetty tiedosto jää käännöksen jälkeen samaan hakemistoon, missä .BAS-lähdetiedosto on ollut. 2 70 QB64-järjestelmä Paras näkemäni täysin ilmainen BASIC-järjestelmä, QB64, on ladattavissa osoitteesta www.qb64.org. 8.9.2017 Tampere-talo Traconin peliperjantai: 8.-10.9.2017 Tampere-talo. Tällöin saadaan joka kerralla uudenlainen pelikokemus. Rivit 70–180. sekä Huelsbeck itse kertomassa LIPUT: www.tampere-talo.. Nämä lasketut GOTO-lauseet ovat rivit 150 ja 160. ABANDON Tämä käyttäjän käsky on GOSUB-rutiini, joka alkaa ohjelman riviltä 200. Kaikissa kohdissa, joissa aliohjelmista on palattu takaisin RETURN-lauseella, on lopussa lause GOTO 70, jossa palataan yllä mainittuun pelisilmukan alkuun – siis riville 70. Tässä: • Jos matriisin s2(*,*) alkio on negatiivinen, kvadrantissa on avaruustukikohta, eikä siellä ole vielä käyty; • Jos matriisin alkio on nolla, galaksin kvadrantti on täysin tyhjä; • Jos matriisin alkio on suurempi kuin 1000, kvadrantissa ei ole vielä käyty, eikä tiedetä, mitä siellä voisi olla; • Jos matriisin alkio on esimerkiksi 315, kvadrantissa on 3 klingonia, yksi avaruustukikohta ja 5 tähteä. CHART Tämä käsky on GOSUBrutiini, joka alkaa ohjelman riviltä 225. sekä Huelsbeck itse kertomassa työstään! LIPUT: www.tampere-talo.. Ohjelman logiikka on siis yksinkertainen. Rivit 19–27. Ohjelman pääsilmukka Peli toimii koko pelin ajan silmukassa, joka alkaa ohjelman rivistä 70 ja jossa aina palataan riville 70. Linuxin tapauksessa tiedostoa setup_lnx.sh pitää kuitenkin ensiksi muokata käytössä olevan jakelun mukaan: esimerkiksi Ubuntu Linuxissa tiedostoon kirjoitetaan DOWNLOAD=1 ja DISTRO=ubuntu. Asiaan liittyy vielä muutakin, jonka jätän lukijalle kotitehtäväksi. Galaksin tallettaminen taulukkoon Galaksin kvadrantit eli osat on talletettu matriisiin s2(8, 8). Niiden alle olen lisännyt ohjelmaan rivin 30 RANDOMIZE TIME, joka alustaa BASICin satunnaislukugeneraattorin PC:n reaaliaikakellosta. Linuxissa ladattu paketti puretaan hakemistoon qb64, jonka jälkeen QB64-BASIC ladataan, käännetään ja asennetaan ajamalla komentotiedosto setup_lnx.sh. Pelin komennot Seuraavassa on listattu kaikki pelin komennot sekä niiden kohdat ohjelmassa. 19 DATA "S.R. Jos komento löytyy, rivillä 120 hypätään kahteen laskettuun GOTO (computed GOTO) -lauseeseen, joista lähtien suoritetaan käyttäjän antama komento. Lasketuista GOTO-lauseista siirrytään moniin eri ohjelmakohtiin, joista jokainen ohjelmakohta aina suorittaa yhden komennon. 8.9.2017 Tampere-talo Traconin peliperjantai: 8.-10.9.2017 Tampere-talo Chris Huelsbeck -konsertti Kuule maineikkaan säveltäjän pelimusiikkia kolmen pianon sovituksina, mm. Toisin kuin monet BASICit, QB64 ei ole tulkki vaan kääntäjä: aina käynnistettäessä ohjelmaa BASIC-koodi käännetään konekielelle
The Great Giana Sisters, Turrican... PHASERSkomennolla ammutaan vihollisia vaiheisilla, jotka ovat toinen Enterprisen aseista. PHASERS Rutiini alkaa riviltä 425. DOCKkomento edellyttää, että Enterprise sijaitsee aivan tukikohdan vieressä. Tällä komennolla asetaan Enterprisen poimuajon (warp drive) nopeus (poimutekijä, warp factor). COMPUTER Tämä alirutiini alkaa riviltä 250. sekä Huelsbeck itse kertomassa LIPUT: www.tampere-talo.. Komennolla telakoidutaan tukikohtaan. Se kutsuu Enterprisen tietokonejärjestelmää. TRANSFER Aliohjelma alkaa riviltä 575. DAMAGES-komento listaa Enterprisen vauriot, jotka ovat syntyneet taistelussa. sekä Huelsbeck itse kertomassa työstään! LIPUT: www.tampere-talo.. LRSCAN-komento kutsuu Long Range Scannereita, joilla näkee oman ja muutaman ympäröivän kvadrantin sisältämät oliot. DESTRUCT-komento tuhoaa oman aluksen, siis Enterprisen. Komennolla siirretään lisää energiaa sädesuojakilpiin. IMPULSE-komennolla lennetään ”impulssiajolla” eli rakettimoottoreilla. Komento kysyy kurssin (kellonaikasuunta kuten sotilaskäytössä) ja lennettävän etäisyyden kvadrantteina (saa olla desimaaliluku). Vaiheisten käyttö vaatii tietyn määrän energiaa. 8.9.2017 Tampere-talo Traconin peliperjantai: 8.-10.9.2017 Tampere-talo. NAVIGATE Aliohjelma alkaa riviltä 400. QUITkomento lopettaa pelin kesken. VISUAL GOSUB-rutiini alkaa riviltä 600. Sinä aikana klingonit saattavat tosin hyökätä! IMPULSE Tämä GOSUB-rutiini alkaa riviltä 350. 8.9.2017 Tampere-talo Traconin peliperjantai: 8.-10.9.2017 Tampere-talo Chris Huelsbeck -konsertti Kuule maineikkaan säveltäjän pelimusiikkia kolmen pianon sovituksina, mm. COMPUTER-komennolla on joukko alikomentoja, joilla lasketaan erilaisia hyödyllisiä asioita. TORPEDOS Tämä GOSUB-aliohjelma alkaa riviltä 550. The Great Giana Sisters, Turrican... DAMAGES Tämä GOSUB-aliohjelma alkaa riviltä 275. Se ei voi olla alle 1. Chris Huelsbeck -konsertti Kuule maineikkaan säveltäjän pelimusiikkia kolmen pianon sovituksina, mm. QUIT Tämä rutiini alkaa riviltä 450. SHIELDSkomennolla nostetaan tai lasketaan Enterprisen sädeasesuojakilvet, mihin kuluu tietty määrä energiaa. Tämä voi olla tarpeen, jos taistelussa Short Range Scannerit ovat vahingoittuneet. (Miksi kukaan käyttäisi sitä?) DOCK Tämä rutiini alkaa riviltä 300. SRSCAN-komennolla kutsutaan Short Range Scannereita, joilla näkee oman kvadrantin sisällä olevat oliot. Komennolla laukaistaan fotonitorpedot. SOS Aliohjelma alkaa riviltä 501. Komennolla katsellaan omaa kvadranttia kiikareilla, jolloin näkyy tietty sektori katselusuuntaan. Komento näyttää Enterprisen tilan. SOS on hätäkutsu. LRSCAN Rutiini alkaa riviltä 375. Tällä komennolla lennetään Enterprisen poimuajolla (warp drive). Tämä voi olla tarpeen kesken taistelun. STATUS Aliohjelma alkaa rivillä 540. Ne ovat tehokkaita aseita, mutta Enterprise voi kantaa niitä vain 10 kappaletta kerrallaan. IDLE Aliohjelma alkaa riviltä 325. Kuten englannin kielen verbi ”to idle” sanoo, tällä komennolla kulutetaan aikaa tekemättä mitään. WARP Tämä alirutiini alkaa rivillä 625. SHIELDS Aliohjelma alkaa rivillä 475. 71 CHART piirtää galaksista kartan. SRSCAN Tämä alkaa riviltä 525. DESTRUCT Aliohjelma alkaa riviltä 291. Kartta sisältää ne galaksin osat, jotka on jo nähty ja joiden sisältämät oliot tunnetaan
Nykyisenkaltaisia vertailuja koneiden välillä ei tehty eikä pystyttykään tekemään. Puodit olivat myös tärkeitä kokoontumispaikkoja. Toisinaan myyjä onnistui puhumaan lompakonhaltijan ympäri, ja kotiin valikoituikin jokin aivan väärä kone. 2 72 E hkä olin siinä kymmenvuotias, kun tietotekniset härvelit herättivät huomioni. Näpertäminen oli lähes yhteisöllistä. Jotenkin tämä tietotekniikan ja videopelien aalto oli kuin juuri minulle tarkoitettu. Myyjät olivat ymmärtäväisiä eivätkä ajaneet poikia pois. Piuhat vain paikoilleen ja siinä meillä oli välittömästi suvun nuori tietokoneguru, jonka pelaamista sukulaiset katselivat kunnioittavasti. Varhaisimpia pelimuistojani on upea ravipeli, jossa hevoset kiisivät raviradalla nopanheittojen myötä. ”Kaikkea se osaakin”, tädit taivastelivat. Myyjien asiantuntemus rajoittui usein siihen, mitä prosyyrissä luki, mutta kauppa kävi. Sain olla läsnä silloin, kun kaikki tämä saapui ja yleistyi. 1970-luvun puolella oli pioneereja, jotka rakensivat koneensa rakennussarjoista ja ohjelmoivat itse niiden softat. Emme me yleensä mitään ostaneet, vaan pelasimme sitäkin innokkaammin. Kauppojen hyllyt täyttyivät valmiista kotimikroista ja niiden ohjelmista. Keksin hepoille nimiä ja tarinoita, etenkin aivan yksin pelatessani. Kotimikro vai sähköurut. Nykyjonneilla on kivaa, kun digitaalinen maailma muuttuu heidän ympärillään ja asioita voidaan tehdä hiplaten ja näpläten. Ei tuommoista levyasemaa nyt ainakaan tarvita, se on niin kalliskin. Olisikohan joskus tarvetta ihan printterillekin. Myöhemmin koneita oli myös musiikkiliikkeissä. Luultavasti havahduin samoihin aikoihin pelihallipeleihin, ensimmäisiin taskuvideopeleihin, pelikonsoleihin ja kotimikroihin. Olin ollut ennenkin pelija vekotinhöpsö. Esitteet olivat raamattuja, ja niihin piti luottaa. Jos kauppa laittoi ikkunaansa tietokoneen, niin uteliaita riitti. Ehkä se Amstradin peli on nykysilmin katsottuna tosi Teksti: Jukka O. 2 1 7 . Voi niitä, jotka halusivat Commandoren mutta saivatkin Oricin. Kaikin tavoin, ei vain digitaalisesti.. Ensimmäisten kotimikrojen kohdeyleisö oli oikeastaan aika epämääräistä. Niillä onnekkailla, joilla oli oma tietokone, riitti vieraita. Uusia laitteita tuntui ilmestyvän yhtenään, ja jokaiselle oli omat pelinsä. Kaikkeen ei tosiaan ollut varaa, yleensä ei mihinkään, etenkään omaan koneeseen. Tällöin ratkaisu saattoi oikeasti pohjautua koneiden teknisiin ominaisuuksiin, toisinaan myös lisälaitevalikoimaan ja niiden hintaan. Tietokoneita myyviä putiikkeja oli jopa meidänkin pienessä kotikaupungissamme – ja paljon. Yleisimmin koneita kaupattiin kodinkoneliikkeissä, siinä missä televisioita, stereoita ja jääkaappejakin. Opettelin pelaamaan shakkia omin päin kirjaston kirjoista, joita saatoin lukea kassin, pari viikossa. Mutta silloin kun minä jonneilin, maailma muuttui nopeammin ja dramaattisemmin. Toki minua ennen oli vanhoja, viisaita miehiä ja naisia. Moninpeliä yksin, jep, tykkäsin introvertteillä jo silloin. Niitä kun myytiin mitä kummallisimmissa kaupoissa. Niissä tulisilmäiset intoilijat tuijottivat ihmeellisiä koneita ja juttelivat. Ostajat tiesivät koneista usein enemmän, ainakin kun asialla oli palavasilmäinen juniori, joka oli vertaillut esitteiden speksejä ja harkinnut äärimmäisen tosissaan minkä koneen leiriin hän asettuu. Legot ja pienoismallit olivat oleellinen osa kasvuani, sillä tykkäsin suunnitella, askarrella ja rakennella juttuja. Tietysti rakastin myös lautapelejä. Minä, pelit ja tietokoneet olimme tarkoitettuja yhteen. Osta Yamaha, oli se sitten mikro tai syntsa. Luimme ohjekirjoja, naputimme listauksia, ennen mikrokivikautta En koe olevani vanha tai edes keski-ikäinen, vain onnekas. Joskus kauppoihin tuli uusia pelejä, ehkä niitä sai kokeillakin. Kiitos siitä teille näin jälkikäteen. Kauppinen Kuvat: Susanna Rantanen/Manu Pärssinen, Reima Mäkinen, Petri Tuomola, Triosoft nykivä ja kökkö, mutta kyllä se oli ihmeellinen kaupan esittelykoneella pyöriessään. Vähemmän yllättäen pelit olivat niitä tärkeimpiä. Meitä vakiokasvoja oli paljon, sillä pitihän tietokonekaupat kiertää läpi viikoittain ihan siltä varalta, että siellä olisi jotain uutta. Joskus näet oli sekin aika, jolloin Commodore 64 ei ollut vielä kukkulan kuningas, vaan koneeksi saattoi valikoitua lähes mikä tahansa aikakauden suosikkimikro. Ja siksi olen onnekas. Minun vallankumoukseni oli valmiimpi
Se on oma tarinansa se. Pelejä ei muistaakseni paljoa pelattu, vaan ainakin me opettelimme enemmänkin Basic-ohjelmointikieltä ja koneiden käyttöä. JOKstoriaa-sarjassa pureskellaan niin kotimikroilun kuin pelija digijournalismin maailmaa grennulasien läpi nähtynä. Hiljalleen opimme tekemään muutakin kuin lataamaan kasetilta pelejä. Oman kerhoni vetäjällä oli monta tietokonetta ja shakkitietokone, jota sain joskus lainata. Kuva: Triosoft. Pelien ja koneiden mukana tulleet esitteet luettiin tarkasti läpi. En minä edes Basiciä koskaan kunnolla oppinut, mutta muut kyllä. Eräältä vierailulta mieleen jäivät vahvasti Commodoren International Soccer (1983), Hitchhiker’s Guide to the Galaxy (1984) ja lentoyhtiöstrategiapeli High Flyer (1983), joista jälkimmäinen jätti pysyvän jäljen meikäläisen kehittyvään pelimakuun. Tiedonsaanti oli yhä hyvin hataraa, sillä eihän Suomessa ollut vielä edes yhtään tietokonelehteä. Tältä se varmaan näytti, kun asuimme tietokonekaupoissa haaveillen omasta koneesta ja uutuuspeleihin tutustuen. Yhteisöllisyyttä ennen somea Koulujen tietokonekerhoilla oli tähän aikaan todella suuri merkitys. 73 opettelimme ja tietenkin pelasimme. Jotenkin sitä vain silti juttuja kuultiin. Vaikka touhu oli ainakin meillä vakavaa, niin silti se kiinnosti. Ergonomiasta ja koneenkäytön mukavuudesta ei tähän aikaan vielä välitetty. JOKin ensimmäinen peliarvostelu julkaistiin 1986, mistä lähtien hän on ahkeroinut tauotta kirjoittaen juttuja muun muassa videopeleistä, tietotekniikasta, viihteestä, ilmailusta ja burleskista. Yhä useampi sai oman koneen, pelejä vaihdeltiin ja tietoutta levitettiin. Kauppinen alias Grendel/Byterapers on pitkän linjan toimittaja, joka kirjoitti ensimmäisiä tekstejään mekaanisella kirjoituskoneella. Kerhossa tapasi paikallisia bittivaikuttajia, joista monilla oli tietysti jo oma kone! Joidenkin luona käytiin katsomassa ihmekoneita ja pelaamassa. Se kävi muuten niin kuumana, että muuntaja piti laittaa talvella roikkumaan johdosta ikkunan ulkopuolelle, ettei se ylikuumentunut. Opella oli myös suomenkielinen kummitustekstipeli, jota olen siitä lähtien yrittänyt löytää. Tärkeintä oli, että sai naputtaa. Kuva: Reima Mäkinen. Niin tietotekniikka saapui keskuuteemme, kodinkoneliikkeiden ja musakauppojen kautta. Englanninkielisiä lehtiä ei kaupoissa ollut, eikä niitä varmaan olisi osattu lukeakaan. Kun tietokonelehtiä ei vielä ollut, niitä tehtiin itse. Hauskaa oli. Lentokoneita, bisnestä, managerointia ja strategiaa, kaikki ne maittavat edelleenkin. Kerhotoiminta oli kyllä kovasti kivaa, saihan siellä näpertää tietokoneita! Se oli tärkeintä, omaa kun ei vielä ollut. Jukka O. Reima Mäkinen ja Petri Tuomola tekivät Micropostia vuosina 1983–1985. Niitä ei kaiketi pyöritetty kovinkaan järjestelmällisesti tai ylhäältä ohjattuna, mutta jos koulussa sattui olemaan tietotekniikasta innostunut opettaja, niin kerhoihin riitti osallistujia. jukka@skrolli.fi
Erikoisohjelmaan kuului Nasu ”Bass Cadet” Viljanmaan musiikkiesitys thereminillä ja syntetisaattoreilla. 2 1 7 . Jos et päässyt osallistumaan tai kuullut tapahtumasta ajoissa, mutta haluaisit osallistua seuraavalla kerralla, laita viesti osoitteeseen party@skrolli.fi niin otamme yhteyttä, kun partyja taas juhlitaan! Kiitos Skrollin avustajat! Skrolli Party 2017 Pääjärjestäjä Mikko "tdb" Rasa. Lisää kuvia Skrolli Partyiltä löydät osoitteesta party.skrolli.fi/kuvat2017.. Teksti: Valhe Kouneli Kuvat: Mette Erikkilä A ivan ensimmäiseksi: anteeksi, jos kutsu jäi saamatta. Suunnitelmissa on järjestää vastaava tapahtuma uudelleen vuoden sisään. Myös Kimmo ”dB” Rinta-Pollari esitteli tracker-sävellyksiään. Skrolli Partyjä juhlittiin perinteisten demopartyjen muodossa, eli ohjelmaan kuului oluen ja saunomisen lisäksi demoshow, tracker-musiikkia, eri digitaalisen taiteen muodot sekoittava kompo (kilpailu) ja kiinnostavia, tietoteknisesti orientoituneita ihmisiä. Skrolli Party järjestettiin Skrollin avustajille – kirjoittajille, kuvittajille, ständipäivystäjille, roudareille ja muille puuhavoimille – kiitoksena arvokkaasta työstä ja yrityksenä kertoa, kuinka arvostamme teitä hurjasti. 2 74 Skrolli Party 2017 järjestettiin Espoon Tuomarilassa 6.5.2017 kiitoksena lehden parissa puuhaaville parhaille ihmisille. Skrollin pitkäaikainen avustaja Mikko ”tdb” Rasa tarjosi ystävällisesti tapahtuman käyttöön paritaloasuntonsa, jonka kellarikerrokseen rakennettu kotiteatteri tarjosi hyvät puitteet demojen katsomiselle ja musiikkiesityksille. Toimituksen jäseniä oli paikalla kuusi. Teimme parhaamme. Tilaajat ja lukijat olivat myös tervetulleita, mutta pyysimme osallistumisoikeudesta vastineeksi osanottoa kilpailuun digitaalisella teoksella. Olohuoneessa keskusteltiin tietokonekulttuurista ja rentouduttiin. Yläkerran valoisassa olohuoneessa oli mukava tutustua vieraisiin ja saada kasvot monelle pitkään vain nimenä Skrollin sivuilla ja irc-kanavalla pyörineelle henkilölle. Kimmo Rinta-Pollari esitteli musiikkiaan. Nasu "Bass Cadet" Viljanmaan musiikkiesitys lumosi katsojat. Kotiteatterin istuimet täyttyivät osallistujista. Tapahtuma keräsi noin kaksikymmentä osallistujaa, joista suurin osa oli Skrollin avustajia. Vietimme iltaa paikan päälle tilatun pizzan voimalla – valitettavasti sää ei houkutellut grillaamaan ulkona, vaikka siihen oli mahdollisuus
Kilpailuun osallistuneita töitä oli yhteensä yhdeksän, joista neljä oli demoja, neljä kuvia ja yksi musiikkiteos. 75 Kompon Skrollightenment-demolla voittanut deeku istui teoksensa näyttämisen ajan meditatiivisessa risti-istunnassa mallintamansa Buddha-patsaan tapaan. Roboto-demo. Zagupi loi kompotyönsä paikan päällä. Kolme parasta voi ladata osoitteesta skrolli.fi/numerot. Skrollin avustajat ja lukijoiden taitojen laaja-alaisuus tuli hyvin edustetuksi. Deeku sai voitosta palkinnoksi MIST-laitteen, joka osaa muuntautua eri retrokoneiksi. Jättimäinen valkokangas oli omiaan demojen katseluun. Tässä kuunnellaan musiikkia. Partyjen osallistujat pisteyttivät työt, minkä perusteella voittajaksi valikoitui Deekun ja Imre Peemotin Geometrify-moottorilla tehty Skrollightenment-demo. Demossa voidaan nähdä suuri Buddha-patsas Skrolli-lehti edessään, minkä jälkeen katsojia elähdytetään numerosta 2016.2 tutuilla geometrisilla kuvioilla ja astraalisella äänimaailmalla. Kuten demopartyillä yleensä, myös Skrolli Partyillä osa kilpailutöistä aloitettiin tai saatettiin valmiiksi vasta paikan päällä. Skrollia tervehdittiin myös naaviksen Game Boylle tekemässä demossa Roboto, joka sijoittui kolmanneksi. Toiseksi sijoittui Hackersin demo X220.