Play Zork on PicoCalc/PicoMite

I don’t believe that is true, modern MMBasics use a hash table for variable lookup rather than a linear search through a list in declared order. I wouldn’t make that change anyway; at some point readability/maintainability concerns trump speed. You can get some speedup by crunching variable names (at the expense of readability) but the real gain will be if/when I switch the code to use SELECT CASE instead of IF ... THEN ... ELSIF ... ENDIF - the original target version of MMBasic didn’t have SELECT CASE.

Yes that would be something I would look at early if I spend any more time enhancing Z-MIM.

Excluding the use of AI that is somewhat of a non-starter.

Z-MIM is an interpreter for the Z-machine, it is agnostic of the content being executed - I believe there is even a C compiler that can generate Z-machine code.

What you are proposing requires:

  • Extend Z-machine specification and implementation with audio support - I think later versions of the Z-machine specification have some but I know nothing about it.
  • Find/Create/Extend ZIL (Zork Implementation Language) tooling to compile new language to make use of audio support.
  • Find original ZIL source code for each adventure you want to add sound to and update it to use new audio support.

Not in this lifetime, not for all the coffee in Starbucks :wink: .

Best wishes,

Tom

1 Like

Hmmm i was more thinking of interrogating location (or location text) when a player moved and search out river, forest, house, cave, tent, open door, examine grate etc and fire off the relevant mp3 file on loop till location change :smiling_face_with_sunglasses:

I remember having Leather Goddesses Of Phobos as a kid on my Atari ST i seem to remember it having a lewd mode though I at that age i dont think i knew what lewd mode was lol.
It must have left a lasting impressions since i remember it LOL
I made a pico8 game that made references to that game.

2 Likes

…and which pico8 game might that be?

Is just one of many unfinished projects that i should publish but havent gotten around too

…we all have some UFOs lying around… (UnFinished Objects)

Tom. When you exit Zmim via ‘quit’ where in the program is the exit point ?. I’d like to return to a menu program of mine :smiling_face_with_sunglasses:

Look for the lines:

main()
End

That End is the exit point … though it’s actually superflous, you could delete that line and the program would still end once the main() subroutine returned.

Note there will hopefully be a Z-MIM v3.6 in the next couple of days which is a bit faster, implements the status bar and allows you to select a smaller font if you want.

Best wishes,

Tom

3 Likes