Document ADVENTURE environment variable.
[open-adventure.git] / init.c
diff --git a/init.c b/init.c
index 6b2edeaa6a62626b4bc7888cf8cb9384022ce612..0694b1b12cb69a5578fe99cd7f2cbd96b401fc2a 100644 (file)
--- a/init.c
+++ b/init.c
@@ -3,9 +3,7 @@
 #include "share.h"
 #include "funcs.h"
 #include <stdio.h>
-
-#define TRUE  (0==0)
-#define FALSE (0!=0)
+#include <stdbool.h>
 
 /*
  * INITIALISATION
  *     %B = VARIABLE NUMBER OF BLANKS
  *     %! = THE ENTIRE MESSAGE SHOULD BE SUPPRESSED */
 
-initialise() {
+static bool quick_init(void);
+static int raw_init(void);
+static void report(void);
+static void quick_save(void);
+static int finish_init(void);
+static void quick_io(void);
+
+void initialise(void) {
        printf("Initialising...\n");
        if(!quick_init()){raw_init(); report(); quick_save();}
        finish_init();
 }
 
-static raw_init() {
+static int raw_init(void) {
        printf("Couldn't find adventure.data, using adventure.text...\n");
 
 /*  CLEAR OUT THE VARIOUS TEXT-POINTER ARRAYS.  ALL TEXT IS STORED IN ARRAY
@@ -226,7 +231,7 @@ L1005:      LINUSE=KK;
        if(LNLENG < LNPOSN)BUG(1);
 L1006: KK=KK+1;
        if(KK >= LINSIZ)BUG(2);
-       LINES[KK]=GETTXT(FALSE,FALSE,FALSE,KK);
+       LINES[KK]=GETTXT(false,false,false,KK);
        if(LINES[KK] != -1) goto L1006;
        LINES[LINUSE]=KK;
        if(LOC == OLDLOC) goto L1005;
@@ -298,7 +303,7 @@ L1040:      J=10000;
 L1043: KTAB[TABNDX]=GETNUM(1);
        if(KTAB[TABNDX] == -1) goto L1002;
        J=J+7;
-L1042: ATAB[TABNDX]=GETTXT(TRUE,TRUE,TRUE,0)+J*J;
+L1042: ATAB[TABNDX]=GETTXT(true,true,true,0)+J*J;
        } /* end loop */
        BUG(4);
 
@@ -366,7 +371,7 @@ L1092:      LOCSND[K]=KK;
  *  CORRECT LINK TO USE.)  ABB IS ZEROED; IT CONTROLS WHETHER THE ABBREVIATED
  *  DESCRIPTION IS PRINTED.  COUNTS MOD 5 UNLESS "LOOK" IS USED. */
 
-static finish_init() {
+static int finish_init(void) {
        /* 1101 */ for (I=1; I<=100; I++) {
        PLACE[I]=0;
        PROP[I]=0;
@@ -419,7 +424,7 @@ L1200:      TALLY=TALLY-PROP[I];
  *  I.  HINTED(I) IS TRUE IFF HINT I HAS BEEN USED. */
 
        /* 1300 */ for (I=1; I<=HNTMAX; I++) {
-       HINTED[I]=FALSE;
+       HINTED[I]=false;
 L1300: HINTLC[I]=0;
        } /* end loop */
 
@@ -520,7 +525,7 @@ L1300:      HINTLC[I]=0;
        CHLOC=114;
        CHLOC2=140;
        /* 1700 */ for (I=1; I<=6; I++) {
-L1700: DSEEN[I]=FALSE;
+L1700: DSEEN[I]=false;
        } /* end loop */
        DFLAG=0;
        DLOC[1]=19;
@@ -558,7 +563,7 @@ L1700:      DSEEN[I]=FALSE;
        THRESH= -1;
        if(TRNVLS > 0)THRESH=MOD(TRNVAL[1],100000)+1;
        TRNLUZ=0;
-       LMWARN=FALSE;
+       LMWARN=false;
        IGO=0;
        IWEST=0;
        KNFLOC=0;
@@ -576,11 +581,11 @@ L1800:    {long x = 2*I+81; if(RTEXT[x] != 0)MAXDIE=I+1;}
        CLOCK2=50;
        CONDS=SETBIT(11);
        SAVED=0;
-       CLOSNG=FALSE;
-       PANIC=FALSE;
-       CLOSED=FALSE;
-       CLSHNT=FALSE;
-       NOVICE=FALSE;
+       CLOSNG=false;
+       PANIC=false;
+       CLOSED=false;
+       CLSHNT=false;
+       NOVICE=false;
        SETUP=1;
 
        /* if we can ever think of how, we should save it at this point */
@@ -590,7 +595,7 @@ L1800:      {long x = 2*I+81; if(RTEXT[x] != 0)MAXDIE=I+1;}
 
 /*  REPORT ON AMOUNT OF ARRAYS ACTUALLY USED, TO PERMIT REDUCTIONS. */
 
-static report() {
+static void report(void) {
        /* 1998 */ for (K=1; K<=LOCSIZ; K++) {
        KK=LOCSIZ+1-K;
        if(LTEXT[KK] != 0) goto L1997;
@@ -632,18 +637,14 @@ static FILE *f;
 static void quick_item(long*);
 static void quick_array(long*, long);
 
-static quick_init() {
-#ifdef AMIGA
-       f = fopen("ram:adventure.data", READ_MODE);
-#else
+static bool quick_init(void) {
        extern char *getenv();
        char *adv = getenv("ADVENTURE");
        f = NULL;
        if(adv)f = fopen(adv,READ_MODE);
-#endif
        if(f == NULL)f = fopen("adventure.data",READ_MODE);
-       if(f == NULL)return(FALSE);
-       init_reading = TRUE;
+       if(f == NULL)return(false);
+       init_reading = true;
        init_cksum = 1;
        quick_io();
        if(fread(&K,4,1,f) == 1) init_cksum -= K; else init_cksum = 1;
@@ -652,19 +653,18 @@ static quick_init() {
        return(init_cksum == 0);
 }
 
-static quick_save() {
+static void quick_save(void) {
        printf("Writing adventure.data...\n");
        f = fopen("adventure.data",WRITE_MODE);
-       if(f == NULL){printf("Can't open file!\n"); return(0);}
-       init_reading = FALSE;
+       if(f == NULL){printf("Can't open file!\n"); return;}
+       init_reading = false;
        init_cksum = 1;
        quick_io();
        fwrite(&init_cksum,4,1,f);
        fclose(f);
-       return(0);
 }
 
-static quick_io() {
+static void quick_io(void) {
        quick_item(&LINUSE);
        quick_item(&TRVS);
        quick_item(&CLSSES);
@@ -692,7 +692,6 @@ static quick_io() {
        quick_array(FIXD,100);
        quick_array(ACTSPK,VRBSIZ);
        quick_array((long *)HINTS,(HNTMAX+1)*5-1);
-       return(0);
 }
 
 static void quick_item(W)long *W; {