home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Fatal Distractions!
/
fataldistractions.bin
/
chap01
/
adventur
/
maint.for
< prev
next >
Wrap
Text File
|
1990-11-23
|
2KB
|
69 lines
SUBROUTINE MAINT
C SOMEONE SAID THE MAGIC WORD TO INVOKE MAINTENANCE MODE. MAKE SURE HE'S A
C WIZARD. IF SO, LET HIM TWEAK ALL SORTS OF RANDOM THINGS, THEN EXIT SO CAN
C SAVE TWEAKED VERSION. SINCE MAGIC WORD MUST BE FIRST COMMAND GIVEN, ONLY
C THING WHICH NEEDS TO BE FIXED UP IS ABB(1).
IMPLICIT INTEGER*4 (A-Z)
C INTEGER*2 ABB
LOGICAL YESM,BLKLIN,WIZ
LOGICAL WIZARD
DIMENSION HNAME(4),ABB(150)
COMMON /BLKCOM/ BLKLIN
COMMON /ABBCOM/ ABB
COMMON /WIZCOM/ WKDAY,WKEND,HOLID,HBEGIN,HEND,HNAME,
1 SHORT,MAGIC,MAGNM,LATNCY,SAVED,SAVET,SETUP,WIZ
IF(WIZ) GOTO 100
IF(.NOT.WIZARD(0)) RETURN
100 BLKLIN=.FALSE.
IF(YESM(10,0,0)) CALL HOURS
IF(YESM(11,0,0)) CALL NEWHRS
IF(.NOT.YESM(26,0,0)) GOTO 10
CALL MSPEAK(27)
READ(*,*) HBEGIN
CALL MSPEAK(28)
READ(*,*) HEND
CALL DATIME(D,T)
HBEGIN=HBEGIN+D
HEND=HBEGIN+HEND-1
CALL MSPEAK(29)
READ(*,2) HNAME
2 FORMAT(4A4)
10 WRITE(*,11) SHORT
11 FORMAT(' LENGTH OF SHORT GAME (ZERO TO LEAVE AT',I3,'):')
READ(*,*,ERR=12) X
GOTO 13
12 X=0
13 IF(X.GT.0) SHORT=X
X=' '
CALL MSPEAK(12)
CALL GETIN(X,Y,Y,Y)
IF(X.NE.'NULL') MAGIC=X
CALL MSPEAK(13)
READ(*,*,ERR=14) X
GOTO 15
14 X=0
15 IF(X.GT.0) MAGNM=X
WRITE(*,16) LATNCY
16 FORMAT(' LATENCY FOR RESTART (ZERO TO LEAVE AT',I3,'):')
READ(*,*,ERR=17)X
GOTO 18
17 X=0
18 IF(X.GT.0.AND.X.LT.45) CALL MSPEAK(30)
IF(X.GT.0) LATNCY=MAX0(45,X)
IF(YESM(14,0,0)) CALL MOTD(.TRUE.)
SAVED=0
SETUP=2
ABB(1)=0
OPEN(UNIT=3,FILE='ADVMAGIC.DAT',STATUS='UNKNOWN',
1 FORM='UNFORMATTED')
WRITE(3) WKDAY,WKEND,HOLID,HBEGIN,HEND,HNAME,SHORT,MAGIC,
1 MAGNM,LATNCY
CLOSE(UNIT=3)
CALL MSPEAK(15)
BLKLIN=.TRUE.
CALL CIAO
END