Using Morrowind from with OpenMW

For some time now I have wanted to try OpenMW, the open-source Morrowind engine recreation, but I was lacking the required game resources.

I wanted to get them from gog, as I like their DRM-free, download and play, approach better than steam.

When Morrowind GOTY was on sale recently, I finally bought and downloaded it.

I thought I could simply unzip/cabextract the game files from the setup.exe, but it doesn’t work like that.
7-zip unpacks the executable just fine, but the bulk data is just a ~1.3 GB [0] file which file designates as data.

From the other extracted files it appears to be a innosetup installer and issuing apt-cache search inno (searching for innosetup does not work) turns up innoextract, which does exactly what it says on the tin.

So after running innoextract -e /path/to/setup_tes_morrowind_goty_2.0.0.7.exe you get all the required game data.

Just point openmw at the extracted Morrowind.esm and you are good to go.

FYI: OpenMW will remember the path to the data, so you might put it somewhere where it can stay.

Finding old stuff

I found an ancient Epson portable mini TV in one of my many boxes and it’s a perfect little monitor for my raspi.

Granted, I need to put some GUI with big visuals on there, but this makes me happy.

Weird stuff. I had this TV when I was still in school. Something like 16 years ago.


Stable/Testing Debian and Mozilla Products

I depend on a current Firefox version for… well basically living.

Debian ‘testing’ ships with an iceweasel version 17 (== Firefox 17) which is old.
I mean ‘hieroglyphs in ancient egypt depicted Horus using Firefox 17’ old (in web terms).

The usual nerd-knee-jerk reaction is to just bump verything to unstable and be done with it.
(I know, you could also just pick ice[weasel|dove] from there but… meh)

But… sometimes it doesn’t seem the wisesest to do so and, looking for alternatives, I stumbled upon:

A repository with Mozilla software under the debian umbrella with current(-ish) versions even for oldstable.

Day saved. asmw happy.

My Link Graveyard

Sometimes I just need to “stash that link to read it later“.

It happens at work, at home while sitting at my desk , on my phone, while surfing on the tablet. The solutions to these kinds of problems? Well the CLOUD of course!

Ah, and I want an open-source solution I can self-host although I don’t want to do the work.

So thank you kind people of the world:

I stumbled upon this because the android app made it into F-Droid recently.

But asmw! you say. It’s PHP and PHP is vile and evil. Have you at least read all the source and made sure it’s safe?

Bah! I respond to this. It’s there when you need it and a link stash is not valuable enough [for asmw, at least] to worry too much. Just put it somewhere, where it [probably] can’t hurt anything else when things break.

Thus I installed it and added this to my ~/.pentadactylrc:

So I can :pc pages to my poche. I also installed the Android Poche app on my phone and tablet.

Problem solved (for now).

You want some entropy with that?

In the light of certain developments in the world and the temperatures in autumn getting colder again I have decided to put on a thicker tin-foil hat.

As can be read in the previous post, I’ve recently acquired two STM8S Discovery boards and abused one of them to play with gnuk, an open implementation of the OpenPGP card version 2.0 specification.

Today I put neug on the other one, a random number generator.

Building and installing is pretty similar to gnuk so I won’t talk about that.

I’ve played with the RNG test tools rngtest from rng-tools and dieharder a bit. There are scripts and results in the neug source tree if you want to follow along.

I cobbled together a udev rule to get a /dev/neug device and set the line discipline on the device.

I’ve not used any USB IDs here because they might vary (you have to set them with configure) , but I guess the product attribute is pretty unique.

Gnuk OpenPGP 2.0 Token (Update 1)

Update: If you don’t have the skill/time to do this or want to run Gnuk on open hardware see here: FST-01

After having gotten my OpenPGP smartcards to work I wondered if there are any open versions. After all they use a proprietary Operating System (BasicCard) and the software implementation isn’t open as well (AFAIK).

Enter Gnuk.

From the documentation:

Exactly what I was looking for. So here’s a quick HOWTO on getting your very own Gnuk up and running. (Maybe read it all first once and don’t just take it step-by-step)

What you need

  • One (or more) supported boards. Probably the cheapest version way to get one is cannibalizing a Stm8s-Discovery kit. I got two for less than 20 €. You’ll only need the programmer (ST-Link) part, not the actual microcontroller. Weird, eh?
  • A JTAG adapter. I got a Bus Blaster for 32 € which should cover you on future endeavors into the embedded world. It could be cheaper to get an actual ST-Link V2. Or, if you are more versed in the dark arts of DIY, build your own.
  • Some jumper wires
  • A soldering setup
  • A 2×8 pin header
  • Debian unstable for openocd 0.7 (and urjtag if you want to give your Bus Blaster a different persona)

What to do


So here’s the easy part.

Download a suitable arm-none-eabi toolchain, I used this one: gcc-arm-embedded.
(On a 64-bit Debian you might have to enable i386 multiarch support and install libc6:i386)

I put all the stuff under ~/gnuk, so for easy copy-and-pasting do the same, otherwise adapt accordingly. Also check the linked pages for updated versions/if the direct links break.

You should now have a gnuk.elf binary to flash.


  • Solder (or make someone solder)  the pin header onto the CN5 holes.
  • Connect your Bus Blaster to it. Pinouts here. Just match the characters on the Blaster and the pinout :)
  • Connect the Bus Blaster to your PC and the Discovery board to power (any USB plug should do). I’m not sure if you could just connect the Discovery to your PC too, but it reduces error sources not to.
  • Install the binary (original docs). I’m assuming you’re in ~/gnuk/gnuk-1.0.4/.
    • Check flash ROM state:
    • See how it says Readout Protection On
    • Unlock the flash ROM
    • Check for: stm32x unlocked.
    • Power cycle the Discovery board two times to allow for erase/initialize cycles (see also: original docs)
    • If you like you can check again with the options_read script. Should now say: Readout Protection Off
    • Flash our binary

Update: don’t forget to re-lock your flash.

And that’s it. Connect the token to your PC and check what it does:

An empty OpenPGP card. Congrats.

Read on here: Personalization

Using the OpenPGP 2.0 smart-card with a Reiner SCT cyberJack RFID standard

… wow, that’s a long title.

Anyhow. After the last post I decided to see if there had been any developments w.r.t. the issues I had with the cyberJack reader.

Turns out it is fairly simple now. This was tested on Debian sid.

  • Install libifd-cyberjack6
  • Make sure you have enable-pinpad-varlen in your ~/.gnupg/scdaemon.conf
  • Restart your pcscd
  • Restart your gpg-agent daemon


There’s still an issue with pcscd crashing when I unplug the reader, but it works. Pinpad and all.