# Unofficial port of Frotz (interactive fiction)

**URL:** <https://forum.clockworkpi.com/t/unofficial-port-of-frotz-interactive-fiction/18665>\
**Category:** PicoCalc\
**Tags:** software, picocalc\
**Created:** [July 17, 2025, 10:03pm UTC](https://forum.clockworkpi.com/t/unofficial-port-of-frotz-interactive-fiction/18665 "2025-07-17T22:03:04Z")\
**Posts on this page:** 20\
**Page:** 3

<div class="post-metadata">

**Author:** ![willbert](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/willbert/32/12331_2.png) [@willbert](https://forum.clockworkpi.com/u/willbert)\
**Post date:** [July 27, 2025, 9:24pm UTC](https://forum.clockworkpi.com/t/unofficial-port-of-frotz-interactive-fiction/18665/41 "2025-07-27T21:24:17Z")

</div>

Wishbringer is next on my list!  
Just a side note. With this port on my PicoCalc using pico 2w the writing is really snappy and only very rarely I have the issue of the keyboard not recognizing my key press. Definitely much better than other uf2 that I have tried!

---

<div class="post-metadata">

**Author:** ![BlairLeduc](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/blairleduc/32/11808_2.png) [@BlairLeduc](https://forum.clockworkpi.com/u/BlairLeduc)\
**Post date:** [July 27, 2025, 10:05pm UTC](https://forum.clockworkpi.com/t/unofficial-port-of-frotz-interactive-fiction/18665/42 "2025-07-27T22:05:04Z")

</div>

I am really enjoying Wishbringer so far.

That is interesting about the snappy display. These are my unoptimised screen routines that I was going to make run faster, but I liked the vintage feel of the text scrolling in, so I left it as it was.

---

<div class="post-metadata">

**Author:** ![BlairLeduc](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/blairleduc/32/11808_2.png) [@BlairLeduc](https://forum.clockworkpi.com/u/BlairLeduc)\
**Post date:** [August 17, 2025, 11:35pm UTC](https://forum.clockworkpi.com/t/unofficial-port-of-frotz-interactive-fiction/18665/43 "2025-08-17T23:35:53Z")

</div>

I am releasing v0.6 of Frotz for the PicoCalc today. This release upgrades the Pico-series C/C++ SDK to v2.2.0 to allow loading with uf2loader.

* * *

> **[Release v0.6 · BlairLeduc/picocalc-frotz](https://github.com/BlairLeduc/picocalc-frotz/releases/tag/v0.6)**
>
> What's Changed
> 
> Upgrade to Pico SDK 2.2.0 by @BlairLeduc in #7
> 
> Full Changelog: v0.5...v0.6

---

<div class="post-metadata">

**Author:** ![Johnathon](https://avatars.discourse-cdn.com/v4/letter/j/ee7513/32.png) [@Johnathon](https://forum.clockworkpi.com/u/Johnathon)\
**Post date:** [August 18, 2025, 1:59am UTC](https://forum.clockworkpi.com/t/unofficial-port-of-frotz-interactive-fiction/18665/44 "2025-08-18T01:59:32Z")

</div>

I did not see this explained in the README but why is the list of stories limited to 24? Is this a memory limit or just a menu design limitation?

---

<div class="post-metadata">

**Author:** ![adcockm](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/adcockm/32/1664_2.png) [@adcockm](https://forum.clockworkpi.com/u/adcockm)\
**Post date:** [August 18, 2025, 2:58am UTC](https://forum.clockworkpi.com/t/unofficial-port-of-frotz-interactive-fiction/18665/45 "2025-08-18T02:58:00Z")

</div>

Finally got my first taste of this when dabbling with the uf2loader. It’s excellent!

There was one game in particular I was interested in trying. It’s a more recent game (a .z8) that I stumbled onto a few years ago. I’ll avoid spoilers, but a big part of it is the surprise you finally get to, which is the main source of fun in the game. (Getting there is a bit of a slog though, but I believe it’s worth it.) Seems to work perfectly on the PicoCalc too!

> **[Enlightened Master](https://ifdb.org/viewgame?id=p7a8khcja8x0b9mf)**
>
> Years of questing have brought you to the mountain where you will find the Enlightened Master.

---

<div class="post-metadata">

**Author:** ![BlairLeduc](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/blairleduc/32/11808_2.png) [@BlairLeduc](https://forum.clockworkpi.com/u/BlairLeduc)\
**Post date:** [August 18, 2025, 1:23pm UTC](https://forum.clockworkpi.com/t/unofficial-port-of-frotz-interactive-fiction/18665/46 "2025-08-18T13:23:58Z")

</div>

> [@Johnathon](#):
>
> I did not see this explained in the README but why is the list of stories limited to 24? Is this a memory limit or just a menu design limitation?

It was a lazy design limitation to what would fit on the screen at once. I was thinking, people would copy no more than a couple of dozen stories they were interested in reading out of their collection onto the SD card.

I guess I have found that person who views 24 as a limit!

---

<div class="post-metadata">

**Author:** ![BlairLeduc](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/blairleduc/32/11808_2.png) [@BlairLeduc](https://forum.clockworkpi.com/u/BlairLeduc)\
**Post date:** [August 18, 2025, 1:30pm UTC](https://forum.clockworkpi.com/t/unofficial-port-of-frotz-interactive-fiction/18665/47 "2025-08-18T13:30:17Z")

</div>

Thank you for the reading suggestion! I’ve added it to my list!

---

<div class="post-metadata">

**Author:** ![Johnathon](https://avatars.discourse-cdn.com/v4/letter/j/ee7513/32.png) [@Johnathon](https://forum.clockworkpi.com/u/Johnathon)\
**Post date:** [August 19, 2025, 2:34am UTC](https://forum.clockworkpi.com/t/unofficial-port-of-frotz-interactive-fiction/18665/48 "2025-08-19T02:34:19Z")

</div>

I would like to take a stab at fixing this. Would you prefer that I fork the repo or contribute to your repo?

---

<div class="post-metadata">

**Author:** ![BlairLeduc](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/blairleduc/32/11808_2.png) [@BlairLeduc](https://forum.clockworkpi.com/u/BlairLeduc)\
**Post date:** [August 20, 2025, 3:14am UTC](https://forum.clockworkpi.com/t/unofficial-port-of-frotz-interactive-fiction/18665/49 "2025-08-20T03:14:01Z")

</div>

Please contributed so we can share it with other future updates.

---

<div class="post-metadata">

**Author:** ![BlairLeduc](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/blairleduc/32/11808_2.png) [@BlairLeduc](https://forum.clockworkpi.com/u/BlairLeduc)\
**Post date:** [September 14, 2025, 12:54am UTC](https://forum.clockworkpi.com/t/unofficial-port-of-frotz-interactive-fiction/18665/50 "2025-09-14T00:54:10Z")

</div>

I have returned to Frotz and now have it in shape for a v1.0 release.

## What’s Changed

- New title screen with story selector
- Recognises up to 256 stories that can be chosen
- Font and phosphor can be changed and saved per story

* * *

> **[Release v1.0 · BlairLeduc/picocalc-frotz](https://github.com/BlairLeduc/picocalc-frotz/releases/tag/v1.0)**
>
> What's Changed
> 
> New title screen with story selector
> Up to 256 stories can be chosen
> Font and phosphor can be changed and saved per story
> 
> Full Changelog: v0.6...v1.0

---

<div class="post-metadata">

**Author:** ![Johnathon](https://avatars.discourse-cdn.com/v4/letter/j/ee7513/32.png) [@Johnathon](https://forum.clockworkpi.com/u/Johnathon)\
**Post date:** [September 14, 2025, 2:23am UTC](https://forum.clockworkpi.com/t/unofficial-port-of-frotz-interactive-fiction/18665/51 "2025-09-14T02:23:00Z")

</div>

So, I was just about to check in some changes that I made to support up to 256 stories and scrolling story list. I will compare mine to yours. 😉 . Are you open to me just checking into the repo or would you prefer diffs to review?

---

<div class="post-metadata">

**Author:** ![BlairLeduc](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/blairleduc/32/11808_2.png) [@BlairLeduc](https://forum.clockworkpi.com/u/BlairLeduc)\
**Post date:** [September 14, 2025, 3:48am UTC](https://forum.clockworkpi.com/t/unofficial-port-of-frotz-interactive-fiction/18665/52 "2025-09-14T03:48:53Z")

</div>

You should commit to a branch to create a pull request.

---

<div class="post-metadata">

**Author:** ![rockotiger](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/rockotiger/32/13086_2.png) [@rockotiger](https://forum.clockworkpi.com/u/rockotiger)\
**Post date:** [September 14, 2025, 10:12pm UTC](https://forum.clockworkpi.com/t/unofficial-port-of-frotz-interactive-fiction/18665/53 "2025-09-14T22:12:17Z")

</div>

Using a Pico 1 if I try frotz v1.0 using the uf2loader v2.2 i just get a blank screen. v0.6 works fine.

---

<div class="post-metadata">

**Author:** ![BlairLeduc](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/blairleduc/32/11808_2.png) [@BlairLeduc](https://forum.clockworkpi.com/u/BlairLeduc)\
**Post date:** [September 14, 2025, 10:27pm UTC](https://forum.clockworkpi.com/t/unofficial-port-of-frotz-interactive-fiction/18665/54 "2025-09-14T22:27:09Z")

</div>

Could you do me a favour? Can you see if it will start on a Pico 1 not using uf2loader?

---

<div class="post-metadata">

**Author:** ![rockotiger](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/rockotiger/32/13086_2.png) [@rockotiger](https://forum.clockworkpi.com/u/rockotiger)\
**Post date:** [September 14, 2025, 10:40pm UTC](https://forum.clockworkpi.com/t/unofficial-port-of-frotz-interactive-fiction/18665/55 "2025-09-14T22:40:17Z")

</div>

I get a blank screen without using the loader as well.

---

<div class="post-metadata">

**Author:** ![BlairLeduc](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/blairleduc/32/11808_2.png) [@BlairLeduc](https://forum.clockworkpi.com/u/BlairLeduc)\
**Post date:** [September 14, 2025, 10:57pm UTC](https://forum.clockworkpi.com/t/unofficial-port-of-frotz-interactive-fiction/18665/56 "2025-09-14T22:57:59Z")

</div>

Ok, now I know that uf2loader is not involved!

---

<div class="post-metadata">

**Author:** ![pelrun](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/pelrun/32/12323_2.png) [@pelrun](https://forum.clockworkpi.com/u/pelrun)\
**Post date:** [September 14, 2025, 11:23pm UTC](https://forum.clockworkpi.com/t/unofficial-port-of-frotz-interactive-fiction/18665/57 "2025-09-14T23:23:16Z")

</div>

![image](https://canada1.discourse-cdn.com/flex029/uploads/clockworkpi/original/2X/9/9a9b44e0885c0d80a2a5e2cd3cbb6e246d85a95a.jpeg)

---

<div class="post-metadata">

**Author:** ![BlairLeduc](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/blairleduc/32/11808_2.png) [@BlairLeduc](https://forum.clockworkpi.com/u/BlairLeduc)\
**Post date:** [October 14, 2025, 10:49pm UTC](https://forum.clockworkpi.com/t/unofficial-port-of-frotz-interactive-fiction/18665/58 "2025-10-14T22:49:09Z")

</div>

At long last, I am releasing v1.1. This release includes the first community contribution by @Johnathon!

## What’s Changed

- Scrolling list with highlighting and scroll arrows by @Johnathon
- Minor updates
- Upgraded Frotz and the Starter Kit to the latest versions

* * *

> **[Release v1.1 · BlairLeduc/picocalc-frotz](https://github.com/BlairLeduc/picocalc-frotz/releases/tag/v1.1)**
>
> What's Changed
> 
> Add Contributor Covenant Code of Conduct and contributing guidelines by @BlairLeduc in #11
> Scrolling list with highlighting and scroll arrows by @recursiveescapes in #12
> Minor updat...

---

<div class="post-metadata">

**Author:** ![rockotiger](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/rockotiger/32/13086_2.png) [@rockotiger](https://forum.clockworkpi.com/u/rockotiger)\
**Post date:** [October 15, 2025, 11:22pm UTC](https://forum.clockworkpi.com/t/unofficial-port-of-frotz-interactive-fiction/18665/59 "2025-10-15T23:22:38Z")

</div>

Thanks for your continued work on this project. It’s been a lot of fun to use. Unfortunately I’m unable to get this release working on a Pico 1.

I tried:

1. Using the UF2 loader v2.3
2. Clearing the Pico 1 with flash\_nuke.uf2 and then flashing the frotz uf2 directly to the Pico.

In both cases I just get a blank screen.

---

<div class="post-metadata">

**Author:** ![BlairLeduc](https://yyz1.discourse-cdn.com/flex029/user_avatar/forum.clockworkpi.com/blairleduc/32/11808_2.png) [@BlairLeduc](https://forum.clockworkpi.com/u/BlairLeduc)\
**Post date:** [October 16, 2025, 11:01am UTC](https://forum.clockworkpi.com/t/unofficial-port-of-frotz-interactive-fiction/18665/60 "2025-10-16T11:01:10Z")

</div>

I am going to put a pico 1 into my my PicoCalc to get to the bottom of this.

[Previous page](https://forum.clockworkpi.com/t/unofficial-port-of-frotz-interactive-fiction/18665.md?page=2)

[Next page](https://forum.clockworkpi.com/t/unofficial-port-of-frotz-interactive-fiction/18665.md?page=4)
