Parchment offline? [Kindle 3 / Kindle Keyboard]

I have an old unused Kindle Keyboard and had hoped that there was an interpreter but unfortunately there isn’t.

Can you run Parchment offline? If so, I might be able to play via the built in browser.

1 Like

Parchment sitegen can generate self contained html files for offline play.
https://iplayif.com/api/sitegen

4 Likes

!!! Oh hey! Here to solve all your problems! (?)

The Kindle Keyboard / Kindle 3 is an amazing platform for IF: the pleasant e-ink screen combined with a reasonably functional physical keyboard make it perfect for playing on the beach, in bed, etc., at any angle and with minimal eyestrain. Getting my Kindle 3 set up for IF has single-handedly doubled the number of games I actually bother to play.

But it’s a pain to set up. Here are your options:

1. Kif

There is actually a native z-machine for the Kindle Keyboard, called Kif. Unfortunately it’s alpha-quality software with a lot of bugs and quirks: there are a lot of display bugs and you can’t browse more than one screenful of games in your library. And of course, no Glulx support.

2. Parchment

Running offline is unfortunately harder than it sounds because the built-in browser can’t natively access local files. There is a workaround (install a local webserver on the Kindle), but I had more success just loading pages from the web while connected to WiFi and then leaving the page open; as long as you don’t reboot or navigate away, it will stay cached.

The bigger problem is that the Kindle 3 browser is too old to run the current ifvms-based version of Parchment. It does run the older Gnusto-based Parchment (circa 2010), but then you run into another problem: that version of Parchment saves the game state to the URL, and on larger games, the Kindle browser doesn’t support long enough URLs to store the whole of dynamic memory. So you won’t be able to save your progress on larger games. It also seems to crash on ZIL and PunyInform games, which are most of the Z-machine games still being written.

3. Terminal emulator

This is what I settled on.

  1. Jailbreak your Kindle Keyboard.
  2. Install a terminal emulator (like myTS).
  3. From the terminal emulator, run native builds of Frotz or Glulxe.
  4. Profit.

Building Frotz and Glulxe for Kindle 3 is a bit tricky since you need to compile them on an old enough Linux kernel and statically link them against ncurses, which is not installed on the Kindle. Fortunately, I already did this, and binaries are available on ifarchive (k3frotz and k3glulxe in the unprocessed section right now - I need to get around to fixing the license information in the archives so they can be moved out of there).

To make the playing experience more pleasant on my Kindle, I also 1) changed the myTS settings so the text wasn’t so tiny, 2) created small shell scripts to launch Frotz/Glulxe with a few useful options to improve the display (like forcing Frotz to the correct screen width), and 3) went to a truly unnecessary amount of effort to create a custom terminal font that I liked better. When I get time I will try to write up my system as a more detailed tutorial / downloadable package.

This system isn’t quite as nice as Parchment in some regards (you’re stuck with a fixed-width font and can’t use the page forward/backwards buttons for scrollback like you can on Parchment), but it’s a rock-solid, responsive, bug-free playing experience for both Z-code and Glulx games.

9 Likes

The Kindle Keyboard is 14 years old, which unfortunately is way outside the scope of target browsers for Parchment. Parchment did used to work on Kindle - I think I tested it on either the Kindle Keyboard or Kindle Touch - but it now assumes the browser will support web techs from long after the Kindle browser would’ve last been updated. (Actually to be precise, it just won’t even try if ES modules aren’t supported.) Old Kindles may even have SSL certificate errors now!

A terminal emulator is probably your best option.

2 Likes

Thanks everyone. I think I’ll try Kif until I have time to go the terminal emulator route (my Kindle is already jailbroken).

Or may just use Parchment offline on my Kobo. I just hated that the Kindle was laying around collecting dust.

2 Likes