#include "misc.h"
#include "funcs.h"
-#define TRUE (0==0)
-#define FALSE (0!=0)
-
/* hack to ignore GCC Unused Result */
#define IGNORE(r) do{if(r){}}while(0)
/* I/O ROUTINES (SPEAK, PSPEAK, RSPEAK, SETPRM, GETIN, YES) */
#undef SPEAK
-void fSPEAK(N)long N; {
+void fSPEAK(long N) {
long BLANK, CASE, I, K, L, NEG, NPARMS, PARM, PRMTYP, STATE;
/* PRINT THE MESSAGE WHICH STARTS AT LINES(N). PRECEDE IT WITH A BLANK LINE
goto L32;
L40: if(BLANK)TYPE0();
- BLANK=FALSE;
+ BLANK=false;
TYPE();
K=L+1;
if(LINES[K] >= 0) goto L10;
#define SPEAK(N) fSPEAK(N)
#undef PSPEAK
-void fPSPEAK(MSG,SKIP)long MSG, SKIP; {
+void fPSPEAK(long MSG,long SKIP) {
long I, M;
/* FIND THE SKIP+1ST MESSAGE FROM MSG AND PRINT IT. MSG SHOULD BE THE INDEX OF
#define PSPEAK(MSG,SKIP) fPSPEAK(MSG,SKIP)
#undef RSPEAK
-void fRSPEAK(I)long I; {
+void fRSPEAK(long I) {
;
/* PRINT THE I-TH "RANDOM" MESSAGE (SECTION 6 OF DATABASE). */
#define RSPEAK(I) fRSPEAK(I)
#undef SETPRM
-void fSETPRM(FIRST,P1,P2)long FIRST, P1, P2; {
+void fSETPRM(long FIRST, long P1, long P2) {
;
/* STORES PARAMETERS INTO THE PRMCOM PARMS ARRAY FOR USE BY SPEAK. P1 AND P2
#define WORD1X (*wORD1X)
#define WORD2 (*wORD2)
#define WORD2X (*wORD2X)
-void fGETIN(wORD1,wORD1X,wORD2,wORD2X)long *wORD1, *wORD1X, *wORD2, *wORD2X; {
+void fGETIN(long *wORD1, long *wORD1X, long *wORD2, long *wORD2X) {
long JUNK;
/* GET A COMMAND FROM THE ADVENTURER. SNARF OUT THE FIRST WORD, PAD IT WITH
L10: if(BLKLIN)TYPE0();
- MAPLIN(FALSE);
- WORD1=GETTXT(TRUE,TRUE,TRUE,0);
+ MAPLIN(false);
+ WORD1=GETTXT(true,true,true,0);
if(BLKLIN && WORD1 < 0) goto L10;
- WORD1X=GETTXT(FALSE,TRUE,TRUE,0);
-L12: JUNK=GETTXT(FALSE,TRUE,TRUE,0);
+ WORD1X=GETTXT(false,true,true,0);
+L12: JUNK=GETTXT(false,true,true,0);
if(JUNK > 0) goto L12;
- WORD2=GETTXT(TRUE,TRUE,TRUE,0);
- WORD2X=GETTXT(FALSE,TRUE,TRUE,0);
-L22: JUNK=GETTXT(FALSE,TRUE,TRUE,0);
+ WORD2=GETTXT(true,true,true,0);
+ WORD2X=GETTXT(false,true,true,0);
+L22: JUNK=GETTXT(false,true,true,0);
if(JUNK > 0) goto L22;
- if(GETTXT(TRUE,TRUE,TRUE,0) <= 0)return;
+ if(GETTXT(true,true,true,0) <= 0)return;
RSPEAK(53);
goto L10;
}
#undef WORD2X
#define GETIN(WORD1,WORD1X,WORD2,WORD2X) fGETIN(&WORD1,&WORD1X,&WORD2,&WORD2X)
#undef YES
-long fYES(X,Y,Z)long X, Y, Z; {
+long fYES(long X, long Y, long Z) {
long YES, REPLY, JUNK1, JUNK2, JUNK3;
if(REPLY == MAKEWD(1415) || REPLY == MAKEWD(14)) goto L20;
RSPEAK(185);
goto L1;
-L10: YES=TRUE;
+L10: YES=true;
RSPEAK(Y);
return(YES);
-L20: YES=FALSE;
+L20: YES=false;
RSPEAK(Z);
return(YES);
}
#define YES(X,Y,Z) fYES(X,Y,Z)
#undef GETNUM
-long fGETNUM(K)long K; {
+long fGETNUM(long K) {
long DIGIT, GETNUM, SIGN;
/* OBTAIN THE NEXT INTEGER FROM AN INPUT LINE. IF K>0, WE FIRST READ A
#define GETNUM(K) fGETNUM(K)
#undef GETTXT
-long fGETTXT(SKIP,ONEWRD,UPPER,HASH)long HASH, ONEWRD, SKIP, UPPER; {
+long fGETTXT(long SKIP,long ONEWRD, long UPPER, long HASH) {
long CHAR, GETTXT, I; static long SPLITTING = -1;
/* TAKE CHARACTERS FROM AN INPUT LINE AND PACK THEM INTO 30-BIT WORDS.
#define GETTXT(SKIP,ONEWRD,UPPER,HASH) fGETTXT(SKIP,ONEWRD,UPPER,HASH)
#undef MAKEWD
-long fMAKEWD(LETTRS)long LETTRS; {
+long fMAKEWD(long LETTRS) {
long I, L, MAKEWD;
/* COMBINE FIVE UPPERCASE LETTERS (REPRESENTED BY PAIRS OF DECIMAL DIGITS
#define MAKEWD(LETTRS) fMAKEWD(LETTRS)
#undef PUTTXT
#define STATE (*sTATE)
-void fPUTTXT(WORD,sTATE,CASE,HASH)long CASE, HASH, *sTATE, WORD; {
+void fPUTTXT(long WORD, long *sTATE, long CASE, long HASH) {
long ALPH1, ALPH2, BYTE, DIV, I, W;
/* UNPACK THE 30-BIT VALUE IN WORD TO OBTAIN UP TO 5 INTEGER-ENCODED CHARS,
#undef STATE
#define PUTTXT(WORD,STATE,CASE,HASH) fPUTTXT(WORD,&STATE,CASE,HASH)
#undef SHFTXT
-void fSHFTXT(FROM,DELTA)long DELTA, FROM; {
+void fSHFTXT(long FROM, long DELTA) {
long I, II, JJ;
/* MOVE INLINE(N) TO INLINE(N+DELTA) FOR N=FROM,LNLENG. DELTA CAN BE
/* SUSPEND/RESUME I/O ROUTINES (SAVWDS, SAVARR, SAVWRD) */
#undef SAVWDS
-void fSAVWDS(W1,W2,W3,W4,W5,W6,W7)long *W1, *W2, *W3, *W4, *W5, *W6, *W7; {
-;
+void fSAVWDS(long *W1, long *W2, long *W3, long *W4, long *W5, long *W6, long *W7) {
/* WRITE OR READ 7 VARIABLES. SEE SAVWRD. */
#define SAVWDS(W1,W2,W3,W4,W5,W6,W7) fSAVWDS(&W1,&W2,&W3,&W4,&W5,&W6,&W7)
#undef SAVARR
-void fSAVARR(ARR,N)long ARR[], N; {
+void fSAVARR(long ARR[], long N) {
long I;
/* WRITE OR READ AN ARRAY OF N WORDS. SEE SAVWRD. */
#define SAVARR(ARR,N) fSAVARR(ARR,N)
#undef SAVWRD
#define WORD (*wORD)
-void fSAVWRD(OP,wORD)long OP, *wORD; {
+void fSAVWRD(long OP, long *wORD) {
static long BUF[250], CKSUM = 0, H1, HASH = 0, N = 0, STATE = 0;
/* IF OP<0, START WRITING A FILE, USING WORD TO INITIALISE ENCRYPTION; SAVE
L13: CKSUM=BUF[0];
return;
-L15: SAVEIO(1,TRUE,BUF);
+L15: SAVEIO(1,true,BUF);
HASH=MOD(1234L*5678L-BUF[0],1048576L);
goto L13;
N=MOD(N,250)+1;
if(STATE > 0) goto L32;
N--; BUF[N]=CKSUM; N++;
- SAVEIO(1,FALSE,BUF);
+ SAVEIO(1,false,BUF);
L32: N--; WORD=BUF[N]-CKSUM; N++;
SAVEIO(-1,STATE > 0,BUF);
STATE=0;
#undef WORD
#define SAVWRD(OP,WORD) fSAVWRD(OP,&WORD)
#undef VOCAB
-long fVOCAB(ID,INIT)long ID, INIT; {
+long fVOCAB(long ID, long INIT) {
long HASH, I, VOCAB;
/* LOOK UP ID IN THE VOCABULARY (ATAB) AND RETURN ITS "DEFINITION" (KTAB), OR
#define VOCAB(ID,INIT) fVOCAB(ID,INIT)
#undef DSTROY
-void fDSTROY(OBJECT)long OBJECT; {
+void fDSTROY(long OBJECT) {
;
/* PERMANENTLY ELIMINATE "OBJECT" BY MOVING TO A NON-EXISTENT LOCATION. */
printf("Fatal error %ld. See source code for interpretation.\n",
NUM);
- exit(FALSE);
+ exit(0);
}
goto L20;
L15: if(!OPENED){
-#ifdef AMIGA
- OPENED=fopen("ram:adventure.text","r" /* NOT binary */);
- if(!OPENED)
-#endif
OPENED=fopen("adventure.text","r" /* NOT binary */);
- if(!OPENED){printf("Can't read adventure.text!\n"); exit(FALSE);}
+ if(!OPENED){printf("Can't read adventure.text!\n"); exit(0);}
}
IGNORE(fgets(INLINE+1,100,OPENED));