1
0
mirror of https://github.com/PDP-10/its.git synced 2026-05-22 21:49:27 +00:00

Add a Muddle file to load Zork.

This is based on build.cmd for TOPS-20, and on the load script from
Confusion.

The big limitation at the moment is that the interpreter runs out of
memory while loading ACT4, so we can only get it to start by disabling
the endgame -- and there isn't really enough space left for the game to
run after that.
This commit is contained in:
Adam Sampson
2020-08-29 03:59:25 +01:00
parent d719f6d41a
commit a47482a99e

70
src/lcf/load.1 Normal file
View File

@@ -0,0 +1,70 @@
;"-*-Muddle-*-"
;"Load all the Zork source files and dump out a Muddle image."
<DEFINE VFLOAD (NAME)
<PRINC <STRING "Loading " .NAME "...">>
<FLOAD .NAME>
<TERPRI>>
<SETG NULL!- <INSERT <STRING <ASCII 127>> <ROOT>>>
;"Stub out LSRTNS, which we don't have"
<DEFINE USE (NAME) <>>
<DEFINE LSR-ENTRY (UNAME) <>>
<VFLOAD "PRIM">
<VFLOAD "DEFS">
<VFLOAD "MAKSTR">
<VFLOAD "TELMID BINARY">
<VFLOAD "TELMDL">
<VFLOAD "PARSER">
<VFLOAD "MELEE">
<VFLOAD "ACT1">
<VFLOAD "ACT2">
<VFLOAD "ACT3">
;"Disable the endgame since it won't fit in memory"
; <VFLOAD "ACT4">
<SETG END-GAME-EXISTS? <>>
<VFLOAD "ROOMS">
<VFLOAD "DUNG">
;"Undefine stuff we no longer need from MAKSTR"
<GUNASSIGN MPOBLIST>
<GUNASSIGN PINSERT>
<GUNASSIGN CEVENT>
<GUNASSIGN CEXIT>
<GUNASSIGN DOOR>
<GUNASSIGN EXIT>
<GUNASSIGN ROOM>
<GUNASSIGN FIND-PREP>
<GUNASSIGN ADD-ACTION>
<GUNASSIGN ADD-DIRECTIONS>
<GUNASSIGN DSYNONYM>
<GUNASSIGN VSYNONYM>
<GUNASSIGN ADD-BUZZ>
<GUNASSIGN ADD-ZORK>
<GUNASSIGN SYNONYM>
<GUNASSIGN ADD-DEMON>
<GUNASSIGN ADD-ACTOR>
<GUNASSIGN SADD-ACTION>
<GUNASSIGN 1ADD-ACTION>
<GUNASSIGN 1NRADD-ACTION>
<GUNASSIGN MAKE-ACTION>
<GUNASSIGN ADD-BUNCHER>
<GUNASSIGN ADD-QUESTION>
<GUNASSIGN ADD-INQOBJ>
<GUNASSIGN GOBJECT>
<GUNASSIGN OBJECT>
<GUNASSIGN GET-OBJ>
<GUNASSIGN GET-ROOM>
<VFLOAD "IMPL">
<VFLOAD "SR">
<VFLOAD "SYNTAX">
<VFLOAD "UTIL">
<PRINC "Done - saving">
<TERPRI>
<SAVE-IT>