the-infocom-files / bureaucracy

Bureaucracy
8 stars 2 forks source link

Build Game #2

Closed AlexProudfoot closed 5 years ago

AlexProudfoot commented 5 years ago

Build the game using the ZILF toolset. Eliminate compilation and startup errors where necessary.

AlexProudfoot commented 5 years ago

Note that this build requires text.file.

AlexProudfoot commented 5 years ago

Ensure the main file has a release and a version. The names of included files should be in lower case for linux/macos compilations.

AlexProudfoot commented 5 years ago

The compiler reports 1 error.

[error MDL0214] formdefs.zil:86: GLOBAL: already defined: LICENSE-FORM
  in EVAL called at formdefs.zil:86
  in FINISH-FORM-BUILD called at formdefs.zil:83
  in REALLY-BUILD-FORM called at formdefs.zil:58
  in BUILD-FORM called at forms.zil:75
  in INSERT-FILE called at bureaucracy.zil:53
AlexProudfoot commented 5 years ago

This was a bit difficult for me to interpret but I eventually settled on commenting out line 43 of random-globals.zil.

<SETG LICENSE-FORM <>>
AlexProudfoot commented 5 years ago

Now, the compiler reports 2 errors.

[error ZIL0113] parser.zil:2053: SETG: argument 1: bare atom argument must be a variable name
[error ZIL0113] parser.zil:2055: SETG: argument 1: bare atom argument must be a variable name
AlexProudfoot commented 5 years ago

The errors refer to

<SETG P-PRSO <BUT-MERGE ,P-PRSO>>

and

<SETG P-PRSI <BUT-MERGE ,P-PRSI>>

P-PRSO and P-PRSI are defined in random-globals.zil lines 18-19 as

<CONSTANT P-PRSO <ITABLE NONE 32>>
<CONSTANT P-PRSI <ITABLE NONE 32>>

They should both be defined as globals, thus.

<GLOBAL P-PRSO <ITABLE NONE 32>>
<GLOBAL P-PRSI <ITABLE NONE 32>>
AlexProudfoot commented 5 years ago

The build needs an abbreviations file.

AlexProudfoot commented 5 years ago

No build errors.

AlexProudfoot commented 5 years ago

Tidy the main file. Remove extraneous statements.

AlexProudfoot commented 5 years ago

Build errors due to double definitions. Comment out the following lines in random-globals.zil.

<SETG SEX <>>
<SETG FERROR-COUNT 0>
<SETG P-LASTADJ <>>