Converting C for KCC on TOPS20

David Griffith dave at
Tue Dec 10 18:25:58 CST 2019

I'm trying to convert some C code[1] so it'll compile on TOPS20 with KCC. 
KCC is mostly ANSI compliant, but it needs to use the TOPS20 linker, which 
has a limit of six case-insentive characters.  Adam Thornton wrote a Perl 
script[2] that successfully does this for Frotz 2.32.  The Frotz codebase 
has evolved past what was done there and so 2.50 no longer works with 
Adam's script.  So I've been expanding that script into something of my 
own, which I call "snavig"[3].  It seems to be gradually working more and 
more, but I fear the problem is starting to rapidly diverge because it 
still doesn't yield compilable code even on Unix.  Does anyone here have 
any knowledge of existing tools or techniques to do what I'm trying to do?

This is part of a project to get Infocom and other Z-machine games running 
once again on PDP10 mainframes, either real or emulated.  First up is to 
get the bare minimum of a current Z-machine emulator running on TOPS20. 
Then we can work on screen-handling, a disk pager[4], and porting to other 
PDP10 operating systems.  I'm hoping that this will lead to fun exhibits 
wherever PDP10s are displayed in museum or faire settings.

[3] Change an objects shape.
[4] Infocom's Z-machine emulators paged zcode from disk, but Frotz simply 
sucks the whole zcode file into memory.

David Griffith
dave at

A: Because it fouls the order in which people normally read text.
Q: Why is top-posting such a bad thing?
A: Top-posting.
Q: What is the most annoying thing in e-mail?

More information about the cctech mailing list