Jump to content
First Spear

OT: Z-Machine for the Intellivision?

Recommended Posts

Wow, very inspiring:

 

https://hackaday.com/2019/05/22/zork-and-the-z-machine-bringing-the-mainframe-to-8-bit-home-computers/

 

Although sales would hover somewhere near zero for an Intellivision port, my question is: could a version of Z-Machine be implemented on an ECS-enhanced Intellivision? With 3k of RAM (using the ECS) and lots of ROM storage available (using JLP cartridge architecture), maybe? The text display would also be tricky since the words would have to be pre-rendered to display within available GRAM, but still, just wondering.

 

 

 

 

 

 

Share this post


Link to post
Share on other sites

I've ported the Colossal Cave engine to the Intellivision, and I don't see why Z-Machine would be impossible.  I don't know how much RAM it needs.  If it needs more than what JLP provides, there's always LTO Flash.  I think I looked at it once before and concluded it wouldn't fit in what I had at the time.  We now have more RAM and ROM space. 

 

ZIL itself looks a bit LISP-like at first glance.  There are some other languages that also target the Z-Machine.

 

It looks like many of the Z-Machine resources listed on the Wikipedia page have fallen offline.  Here's an Archive.org link to one though.

Share this post


Link to post
Share on other sites
Regarding memory requirements, you could have a look at the Intellivision's classmate from primary school, the VIC-20. It would seem that some Infocom games can be squeezed into it using 24K memory expansion, though 35K is recommended. That is kilobytes, though of course the way the 6502 addresses memory is different from the CP-1610 so it might only be a hint.

The fact that it natively does 22 columns x 23 rows also is somewhat close to the Intellivision's 20x12.

http://sleepingelephant.com/ipw-web/bulletin/bb/viewtopic.php?f=10&t=4208

Edit: Enabling the JLP switch adds 7999 words = almost 16 kilobytes as far as I can tell, but suppose the LTO Flash can overcome this, perhaps by temporarily storing data into flash memory? Edited by carlsson

Share this post


Link to post
Share on other sites

Looking through the Z-Machine memory map, it's designed to allow most of the memory visible to the interpreter to be read only.  That means it can live in ROM.  You only need R/W access to the dynamic portion of memory.   As long as a game can fit its dynamic segment in the 8000 words JLP provides (not 7999), the rest can live in ROM.

 

JLP offers up to ~120K words (240K bytes) of game storage through page flipping.   Some of that needs to hold the interpreter though.  Story files that fit in the remaining space, though, should be workable.  Because Z-Machine is an interpreted machine, the mapping between Z-Machine addresses and Intellivision addresses can be as flexible as needed.

 

LTO Flash offers up to 1MB (512K words) through page flipping.  It also supports Intellicart-style bankswitching, which offers 128K bytes of RAM.  There is also a special LTO Flash specific mapper that's more flexible than either of those that allows mapping arbitrary portions of the external RAM into the Intellivision space dynamically in 256 word chunks.  (I'm not intentionally hiding it; I just haven't gotten around to finishing the documentation, and nobody's expressed interest in a pure LTO-Flash-only game yet to drive it.)  None of those requires resorting to storing data in the JLP-style flash save area.

 

There is also expansion room in the flash filesystem to allow hanging additional data forks off of games, so if there was enough interest, I could add support for that as well.  It would require extending the firmware and the GUI, but it would not be a change to the on-disk format.

 

I've meant to release the LTO Flash wire protocol and file format docs for awhile now.  I had been pushing for a 4/15 release date, but obviously didn't hit it.  I think I'll just release what I've got.  Perfect is the enemy of the good, I suppose.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...