soodan sivut

arkisto

238 kirjotelmaa.

avainsanat

Avainsana metrolaiturinäytöt

Vietin koodipäivän metronäytön kanssa ja sain aikaan koodia jolla saa nätisti pc:ltä usbin yli teensylle graffaa lcd-väylälle puskettavaksi. FPS on enemmän kuin tarvitsee, koska näyttö itse tai sitten omat silmät eivät tunnu pysyvän vauhdissa mukana, haamukuvia tulee. Skrollerivideota seuraa, tosin edlelleenkin käytin pelkästään alkuperäisfonttia. Sitten voisi koodata sille vaikka pongin.

Nyt se on kaikki tehty. Koko alkuperäisen ohjauspurkin voisi periaatteessa heivata pois ja laittaa tilalle jotain modernimpaa. Tietysti tyylikkäintä olisi löytää puskuriylivuoto alkuperäisohjelmasta ja ohjata näyttöä sen kautta, mutta tehokkainta devausnopeuden, näyttönopeuden ja virrankulutuksen kannalta lie työntää joku arduino, raaka avr tms. mikrokontrolleri ohjaamaan graffaa ihan vaan sarjaportin tai usbin yli. Pikseleiden muodot, fontti, väylän bittiformaatti ja kaikki siinä välillä on käytännössä täysin reverse-engineerattu. Tutkittiin ensin softaa ja sitten verifioitiin taas puretun raudan äärellä Helsinki Hacklabilla. Suomeksi: näytön ruuduille saa mielivaltaista omaa grafiikkaa nopeasti.

Jälleen on nysvätty metroasemakilpibittiä, tällä kertaa ei itseni vaan työkaverin Tuomas "Dezgeg" Tynkkysen toimesta. Dokumentoinpa tähän muun infon joukkoon kuitenkin. (Osa tekstistä copypastea Tuomakselta.) Nyt on pitkälle selvitetty bittiformaatti, jota softa oksentaa näytöille, eli missä järjestyksessä pikseligrafiikka on bittivirrassa. Kaikki fonttidata on itse CPU:lla, ja näytöt tosiaan hoitavat vain pikseleitä, ja pikselit eivät ole neliöitä vaan erityiseen järjestykseen laitettuja kolmioita.

Parin opintomatkan ja koulukoodailukiireiden jälkeen ehti taas vähän nyplätä metroprojektia. Tällä kertaa oli jälleen oikein hedelmällinen hacklab-torstai, ja saatiin omaa tekstiä näyttöihin kahdella eri tavalla. Kun alkuperäisestä ohjelmasta on tiedossa tekstinprinttausrutiinin sijainti ja parametrit, niin voidaan tehdä oma koodi, jossa pääohjelma on korvattu omalla jekulla, joka ainoastaan lukee uartista tekstiä ja tulostaa sitä näytölle. Toinen tapa on käyttää ihan alkuperäistä softaa, kun saatiin viimein sekin tulkattua kunnolla. Sillä voi ohjelmoida eepromille tekstejä ja näyttää niitä, tai sitten lähettää suoraan tekstin näkyville.

Helsinki Hacklab on myös hankkinut sellaisen metrolaiturinäytön. Pitivät torstaina puuhaillan sen kanssa, ja meninpä mukaan. Tutkittiin jälleen ohjauskomentoja, jotka työkaverin kanssa reversattiin ohjauskoodista. Ei valitettavasti reagoinut, mutta pohdittiin lcd-puolen väylää ja kaapattiin bootin ohjauspurskeita, jos niistä vaikka saisi jotain irti. Hacklabin kanssa ollaan myös pidetty muistiota kirjoitusalustassa reversauksen tuloksista - noista voisi koota jonkun pidemmän yhteenvedon sitten, kun tiedot on oikeasti varmistettu toimivaksi.

Pienen huhkimisen ja hihkumisen jälkeen sai rauhoituttua ja katsottua, mikä laite noita lukuisia lcd-näyttöjä oikeastaan ohjaa. Ohjainkortiltahan löytyi 8085-prossu ja jotain muisteja. Näytölle pitäisi saada omaa tekstiä, ja se käy kahdella tavalla - otetaan selkoa, miten ohjainkortille pitää puhua sarjaportin yli, tai reversataan se, miten ohjainkortti juttelee itse näyttöpaneeleille.

Metrolaitteistoa kun uusitaan, ja Siemens asentaa ihan uudet systeemit (jotka osittain ovat jo käytössä, ja bugaavat ihan normaalisti, kiitos nykyajan ohjelmistojen liian vähäisen testaamisen), niin luonnollisesti vanhaa laitteistoa lähtee kierrätykseen. Metrovarikolta kuulemma saa vanhoja metrolaiturien näyttöjä, eli niitä isoja infopaneeleita jotka kertovat seuraavan metron saapumisajan. Hinta on naurettavat viisi euroa, tai kellosta vielä satanen, eli eiköhän haeta muutama. Eiköhän niihin omaa tekstiä jotenkin saa ja kellokin varmaan pyörii helposti.

Sivut: (ei vanhempia), 1, 2, uudemmat