[net.games.rogue] ROGUE SAVE BUG FIX

mac@tesla.UUCP (06/09/84)

From: mac (Michael Mc Namara)
	Rogue 5.3 uses various control keys for "running" to various
directions.  These control characters are, as you know, ^H, ^Y, ^K, 
^U, ^L, ^N, ^J & ^B.  Now in 4.2 BSD, ^Y is dsusp, which is a delayed
{nice} suspend to the cshell. See stty for more on this.  So, if a ^Y
gets through the rogue program to the shell, it will begin suspending
the game.  To avoid this, I wrote a shell script, put it in /usr/local,
which does a `stty dsusp u` then calls /usr/games/rogue. After the
game it does a `stty dsusp ^Y`.  The shell script I wrote also keeps
track of who plays rogue, how often etc :-)
        We also have a number of Data General terminals, which use
^M in their hardware cursor movements.  Therefore, if your stty standard
is stty -nl, curses will not work for these terminals.  This affects all
curses based games.  `stty nl` before the game *fixes* this.
        I include a brief shell script to perform these fixes:

################################################################
# Allows rogue to work on DG terminals Plus other enhancements # 
################################################################
 onintr QUIT
# fix for rogue bug: ^Y is up left, and also dsusp; so unset dsusp & susp 
 stty dsusp u susp u
# set up for dg450 & dg200 
  if ($term == "dg450") then
    stty nl
    endif
  else if ($term == "dg200") then
    stty nl
    endif
 endif
set in = ""
while ( $in == "" )
# run rogue
PLAY:
 /usr/games/rogue $*
 switch ($1)
  case "-r":
     set argv[1] = ""
    breaksw
  case "":     
    breaksw
  case "-d":
    breaksw
  case "-s":
    goto QUIT
    breaksw
  default  :
    set argv[1] = ""
    breaksw
 endsw
 echo -n "Again? [y]"
 set in = ( $< )
 if ( $in == "y") set in = ""
end  
QUIT:
 stty dsusp `^Y` susp `^Z`   /* actually type control Y and control Z */
 stty -nl


######################################      -----
                    #                #      |..,|
                    #                ######@+MAC|
           #########%                       |...|
                                            -----


Level: 26  Gold: 7578          Hp: 76(80)  Str: 20(20)  Arm: 10  Exp:12/15640

brian@uwvax.ARPA (06/09/84)

This "fix" might help somewhat, but notice that the save bug will *still*
occur (mostly on levels below 13) and is often preceded the inventory bug.

Brian Pinkerton @ wisconsin

brian@wisc-rsch.arpa
...!{ihnp4, seismo, heurikon, allegra}!uwvax!brian