B-em 2.2.3kk on julkaistu ja BBC Micron Manic Miner hakkeroitu sen avulla

Aiemmassa blogissani Mahdollinen paluu kaivostoiminnan pariin pelottaa ja ahdistaa kerroin löytäneeni netistä hienon Manic Miner version kasibittisille ORIC-kotitietokoneille. Siitä inspiroituneeni päätin tutkia myös BBC Micron Manic Mineria tavoitteena hakkeroida siihenkin ikuiset elämät ja mahdollisuus valita aloitushuone kyseisessä pelissä.

Kauhukseni huomasin kuitenkin pian, että B-em BBC Micro emulaattorissa ei ole konekielimonitoria ollenkaan! Siis pelin hakkerointikaan ei onnistuisi, sillä tarvitsisin sitä varten kaksi asiaa:

Tutkin ensin saisinko jotenkin lisättyä nuo kaksi ominaisuutta Allegro 4:n menusysteemin kautta. Linux-porttaus siis käyttää tuota Allegro 4 GUI-kirjastoa, mutta se vaikuttaa aika alkeelliselta. Tutkin linux-gui.c tiedostosta miten valikkosysteemi oli toteutettu Allegron 4:n avulla, mutta en löytänyt mitään tapaa tehdä ikkunoita, joihin käyttäjä voisi syöttää dataa näppäimistöltä. Voi olla, että en vain osannut, mutta ei tuo valikkosysteemi vaikuttanut kovin monipuoliselta verrattuna oikeisiin ikkunointisysteemeihin. Täytyy silti tunnustaa, että tiedän hyvin vähän GUI-ohjelmoinnista. Olen komentorivimies.

Joka tapauksessa tein B-em emulaattoriin melko karmean hakkeroinnin eli nyt F1 funktionäppäintä painamalla emulaattori menee TCP-serveritilaan, jossa se kuuntelee IP-osoitetta 127.0.0.1 (eli localhost) TCP-portissa 9999. TCP/IP:n päällä B-em ymmärtää nyt hyvin yksinkertaista tekstipohjaista komentoprotokollaa, jolla saa tehtyä vain kolme yksinkertaista asiaa:

  1. 64 kilotavun muistidumpin haluttuun tiedostoon (komento m [tiedostonimi])
  2. kirjoituksen haluttuun RAM-muistin osoitteeseen (komento s [osoite] [arvo])
  3. TCP-serverin sulkemisen (komento q)

TCP-clienttinä voi toimia vaikkapa telnet-ohjelma tai netcat.

Eihän tämä mitään kaunista ole, mutta tuolla tavalla sain nopeasti hakkeroitua emulaattoriin primitiiviset konekielimonitoriominaisuudet, jotka tarvitsin voidakseni toteuttaa alkuperäisen suunnitelmani hakkeroida BBC Micron Manic Mineria. Kaikki sujui ihme kyllä ihan suunnitelmieni mukaan vaikka hidasteita olikin matkassa.

Englanninkieliselle B-em 2.2.3kk emulaattorisivulleni pääset tästä linkistä ja varsin yksityiskohtaisen englanninkielisen artikkelini BBC Micron Manic Minerin pienestä hakkeroinnista löydät seuraamalla tätä linkkiä.