C  ADVENTURES
      PROGRAM ADVENT
C
C MODIFIED BY KENT BLACKETT
C             ENGINEERING SYSTEMS GROUP
C             DIGITAL EQUIPMENT CORP.
C             15-JUL-77
C MODIFIED BY   BOB SUPNIK
C               DISK ENGINEERING
C               21-OCT-77
C MODIFIED BY   BOB SUPNIK
C               DISK ENGINEERING
C               25-AUG-78
C MODIFIED BY   BOB SUPNIK
C               SMALL SYSTEMS
C               12-NOV-78
C ORIGINAL VERSION WAS FOR DECSYSTEM-10
C NEXT VERSION WAS FOR FORTRAN IV-PLUS UNDER
C THE IAS OPERATING SYSTEM ON THE PDP-11/70
C THIS VERSION IS FOR FORTRAN IV (V01C OR LATER)
C UNDER RT-11 ON *ANY* PDP-11
C
C Modified March 1992 by Ken Plotkin, Wyle Labs (former DECUS member)
C to run under MS-DOS, using Microsoft Fortran.  Changes are annotated
C using upper/lower case text.
C
C
C  CURRENT LIMITS:
C       750 TRAVEL OPTIONS (TRAVEL, TRVSIZ).
C       300 VOCABULARY WORDS (KTAB, ATAB, TABSIZ).
C       150 LOCATIONS (LTEXT, STEXT, KEY, COND, ABB, ATLOC, LOCSIZ).
C       100 OBJECTS (PLAC, PLACE, FIXD, FIXED, LINK (TWICE), PTEXT, PROP).
C        35 "ACTION" VERBS (ACTSPK, VRBSIZ).
C       205 RANDOM MESSAGES (RTEXT, RTXSIZ).
C        12 DIFFERENT PLAYER CLASSIFICATIONS (CTEXT, CVAL, CLSMAX).
C        20 HINTS, LESS 3 (HINTLC, HINTED, HINTS, HNTSIZ).
C  THERE ARE ALSO LIMITS WHICH CANNOT BE EXCEEDED DUE TO THE STRUCTURE OF
C  THE DATABASE.  (E.G., THE VOCABULARY USES N/1000 TO DETERMINE WORD TYPE,
C  SO THERE CAN'T BE MORE THAN 1000 WORDS.)  THESE UPPER LIMITS ARE:
C       1000 NON-SYNONYMOUS VOCABULARY WORDS
C       300 LOCATIONS
C       100 OBJECTS
C
      IMPLICIT INTEGER*2 (A-Z)
C
      CALL INIT
C MSF77 didn't like the name MAIN; renamed it thusly.
      CALL MAINA
      stop ' '
      END
C
      block data
C
C MSF77 allows initialization of COMMONs only in Block Data; all of the
C following are declarations moved from the original ADVENT.
C
      IMPLICIT INTEGER*2 (A-Z)
      LOGICAL LMWARN,CLOSNG,PANIC,HINTED,
     1       CLOSED,GAVEUP,SCORNG,DSEEN
C
      COMMON /VERSN/ VMAJ,VMIN,VEDIT
      COMMON /TXTCOM/ RTEXT,LINES,ASCVAR
      COMMON /ALPHAS/ BLANK,EOF,CYE,CY,CNO,CN,CPO,CUR,CWE,CST,
     1       CEN,CTE
      COMMON /VOCCOM/ KTAB,ATAB,A2TAB,TABSIZ
      COMMON /PLACOM/ ATLOC,LINK,PLACE,FIXED,HOLDNG
      COMMON /PTXCOM/ PTEXT
      COMMON /ABBCOM/ ABB
      COMMON /MISCOM/ LINUSE,TRVS,CLSSES,OLDLOC,LOC,CVAL,TK,NEWLOC,
     1KEY,PLAC,FIXD,ACTSPK,COND,HINTS,HNTMAX,PROP,TALLY,TALLY2,
     2HINTLC,CHLOC,CHLOC2,DSEEN,DFLAG,DLOC,DALTLC,KEYS,LAMP,GRATE,
     3CAGE,ROD,ROD2,STEPS,BIRD,DOOR,PILLOW,SNAKE,FISSUR,TABLET,
     4CLAM,OYSTER,MAGZIN,DWARF,KNIFE,FOOD,BOTTLE,WATER,OIL,PLANT,
     5PLANT2,AXE,MIRROR,DRAGON,CHASM,TROLL,TROLL2,BEAR,MESSAG,VEND,
     6BATTER,NUGGET,COINS,CHEST,EGGS,TRIDNT,VASE,EMRALD,PYRAM,
     7PEARL,RUG,CHAIN,BACK,LOOK,CAVE,NULL,ENTRNC,DPRSSN,SAY,LOCK,
     8THROW,FIND,INVENT,TURNS,LMWARN,KNFLOC,DETAIL,ABBNUM,
     9NUMDIE,MAXDIE,DKILL,FOOBAR,BONUS,CLOCK1,CLOCK2,
     1CLOSNG,PANIC,CLOSED,GAVEUP,SCORNG,ODLOC,STREAM,SPICES
      COMMON /MISC2/ I,RTXSIZ,CLSMAX,MAGSIZ,LOCSIZ,CTEXT,STEXT,LTEXT,
     1SECT,TRAVEL,TRVCON,TRVLOC,TRVSIZ,TABNDX,OBJ,J,K,VERB,HNTSIZ,
     2MAXTRS,HINTED,HNTLOC,KK
C
      DIMENSION LINES(36)
      DIMENSION TRAVEL(750),TRVCON(750),TRVLOC(750)
      DIMENSION KTAB(300),ATAB(300),A2TAB(300)
      DIMENSION LTEXT(150),STEXT(150),KEY(150),COND(150),ABB(150),
     1       ATLOC(150)
      DIMENSION PLAC(100),PLACE(100),FIXD(100),FIXED(100),LINK(200),
     1       PTEXT(100),PROP(100)
      DIMENSION ACTSPK(35)
      DIMENSION RTEXT(205)
      DIMENSION CTEXT(12),CVAL(12)
      DIMENSION HINTLC(20),HINTED(20),HINTS(20,4)
      DIMENSION TK(20),DSEEN(6),DLOC(6),ODLOC(6)
C
      DATA BLANK/' '/,CYE/'YE'/,CNO/'NO'/
      DATA EOF/'>$'/,CY/'Y'/,CN/'N'/
      DATA CPO/'PO'/,CUR/'UR'/,CWE/'WE'/,CST/'ST'/
      DATA CEN/'EN'/,CTE/'TE'/
C
      DATA VMAJ/3/,VMIN/0/,VEDIT/'A'/
      end
