billr@saab.CNA.TEK.COM (Bill Randle) (04/24/91)
Submitted-by: routley@tle.ENET.DEC.COM (Kevin Routley)
Posting-number: Volume 12, Issue 60
Archive-name: larn2/Part07
Supersedes: larn: Volume 11, Issue 84-94
Environment: Unix, VMS, MS-DOS, OS/2, termcap
#! /bin/sh
# This is a shell archive. Remove anything before this line, then unpack
# it by saving it into a file and typing "sh file". To overwrite existing
# files, type "sh file -c". You can also feed this as standard input via
# unshar, or by typing "sh <file", e.g.. If this archive is complete, you
# will see the following message at the end:
# "End of archive 7 (of 12)."
# Contents: larn.maz larn123.doc tputs.c
# Wrapped by billr@saab on Tue Apr 23 13:50:32 1991
PATH=/bin:/usr/bin:/usr/ucb ; export PATH
if test -f 'larn.maz' -a "${1}" != "-c" ; then
echo shar: Will not clobber existing file \"'larn.maz'\"
else
echo shar: Extracting \"'larn.maz'\" \(27768 characters\)
sed "s/^X//" >'larn.maz' <<'END_OF_FILE'
XD###################################################################
X# # . # # # # # . #
X# D D . . D . #
X###D########################################## # # ###D###
X# -# #. # # ################ . .#
X# ####### ######## ############ D #### # # #
X# ... #.# # # # . # # # #### # ############ # ###D###
X# #.# # # ## # # # ############ #### # #- # # # #. #
X# . # # # # ## #- # # # - D #### # # . D # #.# # ... #
X# # #.# # # # # # . . # # # # # # #-# # ~.! #
X###D### ### #######D## # ############ ###### ########## ### #######
X# # @ .# # ..... ...#
X###D###########################################################D###
X# . #.....# # # # -# # # # # #
X# ..... . D D D D. #
X# #.....# # # # # # .# # # #
X###################################################################
X
X###################################################################
X#.. . D # . # #- #
X############# ######### # ## ### ##### ## #### ###### ####### ### #
X#.#!#~# # # .-# # #- # # # # -# # # #
X# # #.# . # ####### # # # # # # # # # #####
X# # ..# ##### # # # #### # ## ## ## # ###### ####### # #
X# - ..D # D # . D # # # #.##### ## ## # #. #.# #..# # ### #
X####### ####### ### # # # # # # D # D D #..D # #
X#- # # # #### # ###### # ## # #. # #..# #####
X### #######################- # # # ###################### # #
X# ... # . #..# ### # - .. . #. ### #
X# # # # ### #################### # # #
X# ### #
X################################################################# #
X#- D ### # # # #
X# . # # # D #
X###################################################################
X
X###################################################################
X# .. #
X# ############## ############################################## # #
X# # # # # .. # # #
X# #D## # # ############D################# ########### # # #
X######### #- # # # #- D # # ~ # # # # # # #
X# # # # # # # ### # # # D - # # ####### # # # #
X# .... # #### # # # #!# # # ###### .. #.# # # # # # #
X# .... # # # # ### # # # # #########D#### # ### # # # # #
X# .... ######## # # D # #- # #.. # ...#.# # #.# # # # # #
X# # # ### # #### #.- D - #.# #.#.# # # # # #
X#####DD## ######## # # D D. # # # #...# # # # # #
X# # ..# # # # ############################## # ##### # # # # #
X# ......# # # # # # # # # #
X# ####### ###### ################################ ######### # ### #
X# .D. # #
X###################################################################
X
X###################################################################
X# ## ## ### ## #
X# ##### ## ..- ## ##.## ## #
X# # ! ## ## . ## ## .## .. ## #
X# #....###### ## ## ## . ## ## #
X# # - # ## ##D# ## . ## ## #
X# #####D ~ ####### ###........ ## ... ## ## #
X# # # ## ## .... ## . ## ## #
X# #. ######## ## ## . - ####D#### - #
X# #.- #...## ## ... ## ### ...... ## ## #
X# #. #..## ## ######### ## ... ## ### ## .. #
X# #.. #.## ## ## - ## . #### ## ## ##### ## #
X# #####D## ## ## ###### ## ## ####### ## #
X# D -.## #### ######## ##DD## ######## #D #
X# ###### ... ## ########## ## #
X#### . . ###
X###################################################################
X
X###################################################################
X# #
X# ####.########################################## ## ##########
X# # #.#.#.# #.. #. # # #
X####### # # # # # ##### #! # ########### # ### #
X# # # # # # # ##...## # # # # # #-# #
X# ..- D # # # # # ## . ## ####D##### .. ### # # # #
X# # # # ##. ~ .## # # ### # # ##### # #
X############ # # # # ## . . .## #...# .. #.# # # # #
X# .. .# # # # # ## - ## # # D.D # ######### #
X# . D # # # # ##.......## ####D#####.# # #
X# - . # # # # # ## ## # . # ### ########### #
X############ #.#.# # ###D### # . #....# # #
X# # #-# D .. # .# ###....## ##-### #
X#### ########################################## ###### ### #
X# . #
X###################################################################
X
X###################################################################
X# #
X# ###########################D####### ## #
X# ####################### # ##...... ## ## #
X# ########D###### # # !##.... ## ## #
X# ############ ## ## ... # # #...## ~ ## ###### #
X# # # # # ...... # # # .. ##### ## #
X# # - .. # # # ########### # # . ######### ## #
X# ##### ##### # # # # #... ## ## #
X# # # ########## ######## ########DD#### ####### #
X# # # .... # # # # # ## ## #
X# ##### # # ....# # ######### # # ##### ## #
X# #- ######D##########..# # ######### # - #.. ## ## #
X# ##### # # # #... #.....## #
X# # ################### ###############... #### # ######
X# # #
X###################################################################
X
X###################################################################
X# #
X########### ##### ##### #####D#### ##### ###### #
X#.. # #-..D ###### ## # ## # ## ..## ### #### #
X# #### ### ##### # ## # ##### # ## ### ## # # #
X# # # # # # ##### # ## # # #### # #..##### - ### #
X# # # ####### ### #...# # ######## # # #~. .... # #
X# # # # #...# # # ######### ############## #
X# # ###### ####### # ### ### # .. # #
X# # # - # #-#####!# # # #### ## #### # #
X# ###### # ########## #.. ....# # ######## # # # ## ## #
X# -.# ##### ####...## # . .# #..# # ## # #
X# #### ###### #.### #####.#### #### ### ## # #
X# #- #######....#### ...... #.# . # ## # #
X# ####### ##### ###########.############### ### #
X# . #
X###################################################################
X
X###################################################################
X# # #- . # # # # # # # # #
X# # # #####.##### # # # # # # # # # # ###########D########### #
X# # ##### # # ### # # # # # # # # # ### #.... # # # #
X# # # # # # # # # # # # # # #.!. -.. #.##.# # #
X# # . - # # ####### # # # # # # # # # ########## ## # #
X#.####### # # D # . # # #
X#. -# ################################################### #
X# ##### D. . #
X# # ### ###D### ### ### ###D### ### ### ###D### ###.### #
X# # ###### ### .# .# #. # # # # # # # # . # #
X# ### # -# ### .#. - .# # # #...- # # .. # # -..# # . # #
X# # # ### #. ~ .# # # # # # # # .. .# # # #
X#.###### # ### # # #.....# # # # # # # # # #
X# # ####### ####### ####### ####### ####### ####### ####### #
X# # ... .. #
X###################################################################
X
X###################################################################
X# # . # ### # # # # . #
X# D D . # . D . #
X############################################### # # ###D###
X# -# #. # # ################ . .#
X# #######D######## ############ # #### # # #
X# ... #. # #!~ . # # # #--# # ############ #####D###
X# #.# # # ## # # # ############ #--# # #- # # # #. #
X# . # #-# # ## #- # # # - D ## # # # . D #### #.# # ... #
X# # #-# # # # # # . . # # # # # # #-# # -.- #
X###D### ### ####### ## # ############ ###### ########## ### ###D###
X# # @ . ..... ...#
X##################################### ###############D###
X# . #.....# # # # -# # # # #
X# ..... . D D D D. #
X# #.....# # # # # .# # # #
X###################################################################
X
X###################################################################
X#.. . # D . #- #
X### ######### ######### # ## ### ##### ## ########### ####### ### #
X#.# # # # .-# # #- # # # # -# # # #
X# # #.# . # ####### # # # # # # # # # #####
X# # ..####### # # # #### # ## ## ##!# ###### ####### # #
X# - ..D # D # . D # # # #.##### ## ## # #. #.# #..# # ### #
X####### ####### ### # # # # # # D # D D #..D # #
X#- # # # #### # ###### # ## # #. # #..# #####
X### #######################- # # # ###################### # #
X# ... # . #..# ### # - .. . #. ### #
X# # # # #-# #################### # # #
X# # -# #
X################################-################################ #
X#-..... # ####D ### # # # #
X#~..... # # # # D #
X###################################################################
X
X###################################################################
X# .. #
X# ############## ############################################## # #
X# # # # # .. # # #
X# #D## # # ############D################# ########### # # #
X######### #- # # # #- D # #.!..# # # # # # #
X# # # # # # # # ### ## # #....D - # # ####### # # # #
X# .... # #### # # # #~# # # ###### .. #.# # # # # # #
X###....## # # # ###.# # # #########D## # # ### # # # # #
X# .... ######## # # D .# #- # .. # ...#.# # #.# # # # # #
X# # ## # ### .# #### .- D - #.# #.#.# # # # # #
X#####DD## ######## #... .# . # # # #.#. # # # # #
X# # ..# # # ############################## # # ##### # # # #
X# ......# # # # # # # # # # #
X# ####### ###### ################################D# ######### ### #
X# .D. #-.-#
X###################################################################
X
X###################################################################
X# ## ## ## ## ## #
X# ############## ## ..- ## ## . ## ## #
X# # # ## ## . ## ## . ##.. ## #
X# #....###### ## ## ######## ####### . ## ## #
X# # - # ## ## ##D# ## . ## ## #
X# # D###### ###........ ## ... ## ###### #
X# # # ## ## .... ## . ## ## - # #
X# #. ######## ## ## . - ####D####.. D #
X# #.- #...## ## ... ## ### ...... ## ##### #
X# #. #..## ## ######### ## ... ## ### ## .. #
X# #.. #.## ## ## - ## . #### ## ## ##### ## #
X# #####D####### # ## ## ##..## ## ## ## ## ## #
X# D -.## # # #### ##.-.-## ##DD## ### #### ## #
X# ######. ...# #### ## #### ##### ## ##D#
X####~!.... D . . #
X###################################################################
X
X###################################################################
X# #
X# ####.########################################## ## ##########
X# # #.#.#.# #.. . # # #
X####### # # # # # ############# # ########### # ### #
X# # # # # # # --##...##-- # # # # #-# #
X# ..- D # # # # # #-## . ##-# ####D##### .. ### # # # #
X# # # # ###. .### # ~ # ### ### ##### # #
X############ # # # # ## . . .## #...# .. #.# # #
X# .. .# # # # # ## - ## # # D. # ######### #
X# . D # # # # ###.......### ####D#####.# # #
X# - . # # # # # -## ##- # . ### ########### #
X############ #.#.# # ######D###### # . ....# # #
X# #!#-# # .. # . ###....## ##-### #
X#### ############################## ########## ###### ### #
X# D . #
X###################################################################
X
X###################################################################
X# #
X# ###############D####################D# #
X# ####################### # ##...... # #
X# ########D###### # # ##.... # #
X# ############### ## ## ... # # #...## ##### #
X# # ~ # # #!...... # # # .. ##### # #
X# # - .. # # # ########### # # . ######### # #
X# ##### ######## # # # # # #... ## # #
X# # # # ########## ######## ########D #### ###### #
X# # # ....# # # # # # ## # #
X# ##### # ###### # ....# # ######### # # #####D# #
X# #- ## # #######..# # ######### # - #.. #
X# ##### # # # #... #..... #
X# # ################### ###############... #### ######
X# # #
X###################################################################
X
X###################################################################
X# # #
X########### ##### # #####D#### ##### ###### #
X#.. # #~..D ###### ## # ## # ## ..## ### #### #
X# #### ### ##### # ## # ##### # ## ### ## # # #
X# # # # # # ##### # ## # # #### # #..##### - ### #
X# # # ####### ### #...# # ######## # # #!. .... # #
X# # # # #...# # # ######### ############## #
X# # ###### ####### # ### ### # .. # #
X# # # - # #- # # # ######## #### # #
X# # # ########## #.. ....# # ######## # ## ## #
X# # -. ##### ####...## # . .# .. # # #
X# # ###### ##### #####.#### ####### # #
X# # - #######....#### ...... #.# . # ## # #
X# ######### ##### ###########.############### ### #
X# . #
X###################################################################
X
X###################################################################
X# D D #-..........# # # # # #
X#D#D# #####.#####.# # # # # # #############D########### #
X# # ##### #.#~###.# # # # # # ### .... # # # #
X#D# # #.......# # # # # # # . . -.. #. #.# # #
X# # . - # #.####### # # # # # ################## # #
X#D####### #. # D # . # # #
X#. D D -# ################################################### #
X# ###### . . #
X# # D ### ###D### ####### ###D### ####### ###D### ####### #
X# # ###### # # .# .# #. # # # # # # # # . # #
X# ### -# # # .#. - .# # # #...- # # .. # # -..# # . # #
X#DD# # # # #. .# # # # # # # # .. .# # # #
X#.###### # # # # #.....# # # # # # ! # # # #
X# # ####### ####### ### ### ####### ### ### ####### ### ### #
X# # ... .. #
X###################################################################
X
X###################################################################
X# D ## ## ## ## # # #
X# - . # ####### ## -.- ## ## ## #### D #
X#### # #.#-#.# .#. # .## ## # ####### . ### # #
X# # - ##-#.#D ### # ..## ## ##D ### ### ### ##### #
X# . # # # #.# .#. #- ##...##..###### # # # # # #
X# #### ####### ### -## ##--######## #### # -.D #
X# # # # ######D############# ########### # #
X#####D# ########### D D # # # .##D## #
X# # # # # #### # #####D############ ###- D ## ####
X# ##### ####### # #!.#-# # # . D ## # # .# #~.#
X# # # # # #..#####.# # ### # ## ##D###### #..#
X##### # D #.# # - # # # ### ##### # # .# # ##.##..#
X# . # # # # #D## # ####### . # .## .D ## # #
X##### # ####### # # # ### # # ## # -# # D #
X# # # ########### # ### ##### # #
X###################################################################
X
X###################################################################
X# # # # #
X# # D # ######### #########################.#### #
X#####.# # # ####D#### # #.#.#.# # #
X# # # # # ##### # # # # # #D# # # # # # #######
X# # ##### # #...# # . # - # # ## ## # # # # # # . #
X# # ## # - # D.#~#-# # # # ##...## # # # # # D..! #
X# #### ### ###.. #.####D#### # ## ## # # # # # # . #
X# # # # #####.# # # # #. - .# D D D D ############
X# ## # ## # # . # # ## ## # # # # #. .. #
X# ######.### # ## ## # # # ## ## # # # # D . #
X# ## # ## ##..##D#### # ## ## # # # # # . - #
X# #. # #D## ## ## # # #. ### # #.#.# # ############
X# ### ### #### # #-. # #-# # D #
X# # #. # ### # # - # ########D#################### . ####
X# # # # # # # # D #
X###################################################################
X
X###################################################################
X# # - # ## ### # #
X# ## # ################## # ## #### # ##### #D### #
X# . # # # ##### D # # - # .. # # #
X# #### # # ###D### - # -- . D D # ### # # # #
X# ### # ## ## # ###### #### # # # # # # #
X### #### ## ##### # ###### ### # # # # #
X# # ########- ## ## # # ############################## #
X# # ### ## ## ### D . #
X# # ## #### ## ##!# # ###D### ####### ###D### ####### ###D### #
X# # ## ## .###..##### # # #..~..# # # # # # . # #
X###D#D### ##..#..## # # .- .# # . # # .. # # -..# # . # #
X# # # ##...## - # # . .# # # # # # .. .# # # #
X# . # .. ###### # # .# #. # # # # # # # #
X# D ######### # ####### ###D### ####### ###D### ####### #
X# # # D # #
X###################################################################
X
X###################################################################
X# # # # ## ## ## ## D #
X# #. # -# # # # # ####### D##...## ####### ### ###### ###### #
X# # # ## ## #! .##.# ## ## D.# # #~.. D #
X####D###### # # .####...## ## # #######D### #######. # # .### ##
X# # # ## ####D## ## # # ## .. # #### # ##
X# ######## # ## ### ### ## ## #### ### # ## # # #
X# ######## ###### # . ## ### # # ######D############# #
X# . ## - ####### # # #
X# ####### # . ## ### ## D. #####D###########D###
X#####D##### # # ###. ### ##### ### - ## ### # # # # #
X#. -# #.# # ####### ## # # ## # # . - . D #
X#####D##### # # # ## # # ###### # # # # # #
X#- .# # # #####D###### # # . # # #### ######D###########
X##### ##### # # D # # D # # # # #### #
X# D # D # # D # # .. #
X###################################################################
X
X###################################################################
X# D ## ## ## ## # # #
X# - . # ####### ## -.- ## ## ## #### D #
X#### # #.#-#.# .#. # .## ## # ####### . ### # #
X# # - ##-#.#D ### # ..## ## ##D ### ### ### ##### #
X# . # # # #.# .#. #- ##...##..###### # # # # # #
X# #### ####### # ### -## ##--## ##### ### # -.D #
X# # # # ## ######D###### ##### ####D###### # #
X#####D# ########### D D # # ..##D## #
X# # # # # #### # #####D############ ###- D ## ####
X# ##### ####### # # .#-# # # . D ## # # .!# # #
X# # # .. # # #. #####.# # ### # ## ######### . # #
X##### # D #.#~# - # # # ### ##### # # .# # ##D##..#
X# . # # .. # # #D## # ####### . # .## .D ## # #
X##### # ####### # # # ### # # ## # -# # D #
X# # # # # # ### ##### # #
X###################################################################
X
X###################################################################
X# # . # # #
X# # D .!# ######### #########################.#### #
X#####.# . # # ####D#### # #.#.#.# # #
X# # #.. # # ##### # # # # ## #D# ## # # # # # ###D###
X# # ##### # #. # # . # - # # #- ## ## -# # # # # # # . #
X# # ## # - # D.# #-# # # # ##...## # # # # # #..! #
X# #### ### ###. #.######### # ## ## # # # # # # . #
X# # # #~#####.# # # D #. - .# # D D D ############
X# ## # .## # # . # # ## ## # # # # #. .. #
X# ######.### #...## #.. # # # ## ## # # # # D . #
X# ## #..## #####D#### # # ## ## # # # # # # . - #
X# #. # #D## # # # #.## ### ## #.#.# # ############
X# ### ### #### # #-. # #-# # D #
X# # #. # ### # # - # ############################# . ####
X# # # # # # # # D #
X###################################################################
X
X###################################################################
X# # - # # # ### # #
X# ## # ################## # # # #### # ##### #D### #
X# . # # # ##### D # - # .. # # #
X# #### # # ###D##### - # -- . D D # ### # # # #
X# ### # ## ## D # ##### #### # # # # # # #
X### #### ## ##### # ##### ### # # # # #
X# # ########- ## ## # # ############################## #
X# # ###~.## ## ### D . #
X# # ##..#### ## ## # # ###D### ####### ###D### ####### ###D### #
X# #. ## ## .###. ##### # # #. .# # # # # #.....# #
X##D##D### ##. #. ## # # .- .# # . # # .. # # -..# #.....# #
X# # # ##. ## - # # . .# # # # # # .. .# # # #
X# . # .. ###### .. # # .# #. # # # # # # ! # #
X# D #########D## ####### ### ### ####### ### ### ####### #
X# # # D # #
X###################################################################
X
X###################################################################
X# # # # ## ## # # D #
X# #. # -# # # # # ####### D##...## ####### ### ###### ###### #
X# # # # # # ## ## # .. ##.# ## ## D.# # # . D #
X# . # # # .#### ### # # #######D### #######. # # .### ##
X####D###### # ## ####D## # # # # # ##. # #### # ##
X# # # ## ### #### # ## #### ### # # . # # #
X# ##### # ###### # . ## ### # # ######D############# #
X# ##### # . ## - ####### # #
X# ####### # . ## ## # D. ##D###################
X#####D##### # # ###. ### ### # # - ## # # # # # ...#
X#. -# #.# # ####### ## # # ## # . - . D ..!#
X########### # # # ## # ########### # # # # ...#
X#- .# # # #####D###### # # . # # ##D###################
X##### ##### # # D #..# D # # # # # # #
X# D # D #.~# D # # # .. #
X###################################################################
END_OF_FILE
if test 27768 -ne `wc -c <'larn.maz'`; then
echo shar: \"'larn.maz'\" unpacked with wrong size!
fi
# end of 'larn.maz'
fi
if test -f 'larn123.doc' -a "${1}" != "-c" ; then
echo shar: Will not clobber existing file \"'larn123.doc'\"
else
echo shar: Extracting \"'larn123.doc'\" \(18665 characters\)
sed "s/^X//" >'larn123.doc' <<'END_OF_FILE'
X
X
X PC LARN version 12.3 for IBM PC Compatibles
X -------------------------------------------
X
X
X Table of contents
X -----------------
X
X
X 1. Introduction
X 2. System requirements
X 3. Files Supplied
X 4. Installation
X 5. Configuration
X 6. Command line options
X 7. TERMCAP
X 8. WIZARD mode
X 9. History and other Information
X
X
X
X
X 1. Introduction
X ---------------
X
X LARN is a dungeon type adventure game similar in concept to HACK, ROGUE
X or MORIA, but with a different feel and winning criteria. LARN was
X released for the UNIX environment in 1986 by Noah Morgan. It was
X subsequently ported to the MS-DOS environment by Don Kneller. Kevin
X Routley has been working on enhancements to LARN on and off for the
X past two years.
X
X
X 2. System requirements
X ----------------------
X
X PC LARN requires:
X
X - MS-DOS or PC-DOS 2.x or above.
X
X - at least 256K of RAM.
X
X - disk storage capacity of at least 360K, although twice that much is
X preferred if you want to "checkpoint" your game to prevent
X accidental lose due to a system failure.
X
X - the ANSI.SYS device driver must be installed (although the NANSI.SYS
X driver is *strongly* preferred and has been included in this
X distribution). You should install either ANSI.SYS or NANSI.SYS, but
X not both. To install NANSI.SYS, put the line "device=NANSI.SYS" in
X your CONFIG.SYS file. See the TERMCAP section for further details.
X
X
X 3. Files supplied
X -----------------
X
X The following files should be included in this LARN123.ZIP file:
X
X LARN123.DOC This documentation.
X
X LARN123.FIX Changes made between LARN V12.2 and V12.3.
X
X LARN123.EXE The executable file.
X
X LARN.FTN Fortune cookie messages.
X
X LARN.HLP A help file, which can be read with the "?"
X command in LARN.
X
X LARN.MAZ Some maze levels are pre-calculated and
X stored here.
X
X LARN.OPT An example LARN.OPT file (see the CONFIGURATION
X section).
X
X TERMCAP A file describing the escape sequences to send
X to the terminal. The supplied TERMCAP file is
X for monochrome systems. See the TERMCAP section
X for details on changing TERMCAP.
X
X NANSI.DOC The documentation for NANSI.SYS.
X
X NANSI.SYS A new ANSI.SYS that is *much* faster than
X ANSI.SYS and supports the line insert and line
X delete escape sequence that LARN uses. This
X excellent product is written by Daniel Kegel.
X See the TERMCAP section and NANSI.DOC for more
X details.
X
X
X 4. Installation
X ---------------
X
X NANSI.SYS or ANSI.SYS must be installed as a device driver on your
X system in order for LARN to work (see System Requirements above).
X
X For a hard disk system I suggest creating a \GAMES\LARN directory and
X placing LARN and the provided support files in that directory. Following
X that, you would place \GAMES\LARN in your PATH.
X
X LARN will create several other files (LARN.SCR, LARN.PID, LARN.LOG)
X in that directory. Also, save files (LARN.SAV) and checkpoint files
X (LARN.CKP) will go in there by default. You will want to set the
X 'larndir:' option in your LARN.OPT file (see the Configuration section
X below) to point to this directory.
X
X For two-floppy systems, I would suggest the following:
X
X o place LARN123.EXE, LARN.OPT and TERMCAP. on disk one.
X
X o place LARN.FTN, LARN.MAZ, and LARN.HLP on disk two. This will
X be the 'larndir:' disk (see the Configuration section below).
X LARN.SCR, LARN.PID, LARN.LOG, save files, and checkpoint files
X will go on this disk.
X
X
X 5. Configuration
X ----------------
X
X PC LARN is configured by options placed in the file LARN.OPT.
X When PC LARN starts up, it looks in the current directory for
X this file, then in directories along your PATH. Here are the
X options that can be put in LARN.OPT.
X
X Options that are followed with a colon, ":", take at least one
X argument. Options without a colon are boolean, meaning you select
X that option merely by mentioning it.
X
X Comments can be entered in the options file by using the '#'
X character.
X
X These options are only in PC LARN:
X
X cursor: start-line end-line
X Normally, LARN uses the standard DOS cursor (the flashing
X underscore) to show where your player is located. This can be
X difficult to see. This option results in a *BIOS* call to change
X the cursor size. For a monochrome display, the normal value of
X start-line and end-line is 11 and 12. Values of 4 and 9 give a
X larger cursor which is not too obtrusive.
X
X If "cursor" is not specified, no BIOS call is made.
X
X DECRainbow
X Put this in LARN.OPT if your computer is a DEC Rainbow and you
X want to use graphics characters for drawing the maze. You can
X use any characters from the ASCII character set and from the
X "line-drawing" character set. To use line-drawing characters,
X take the decimal value of the character and add 128 to it. This
X makes the values of line-drawing characters lie between decimal
X 128 and 255 and tells PC LARN you want a line-drawing character.
X
X Every attempt has been made with PC LARN V12.3 to maintain
X DECRainbow compatibility as provided by Don Kneller.
X Unfortunately, since I do not have access to a Rainbow, I cannot
X make any guarentees.
X
X graphics: wallc floorc
X In UNIX LARN, the wall character is a # and the floor character
X is a blank (which makes it almost impossible to tell where you've
X been). In PC LARN, the default wall character is also a # but
X the default floor character is a period.
X
X This option allows you to change these characters to something
X you like. Suggested characters are 176 (a graphic block) and
X 249 (a central dot).
X
X Almost all ASCII (non-graphics) characters already represent
X objects in LARN, so you should only choose numbers that are
X in the graphics character set (i.e. those with decimal values
X greater than 128).
X
X keypad
X This enables the keypad for use with LARN. A *BIOS* call is used
X to read the keypad. The correspondance between keypad and game
X command is:
X
X Keypad Command
X 7 8 9 u+l(y) up(k) u+r(u)
X \ | / \ | /
X 4 -5- 6 left(h) nothing right(l)
X / | \ / | \
X 1 2 3 d+l(b) down(j) d+r(n)
X Ins inventory(i)
X
X The letter in () is the game command letter. "u+l" means up and
X left. The keypad "7" is translated to the command for moving one
X space up and left. With shift the commands are the same as the
X uppercase letters.
X
X larndir: directory
X Sets "directory" to be the place LARN looks for files. For hard
X disks set this to be \GAMES\LARN. For 2-floppy systems, use B:
X
X If "larndir" is not specified, the current directory is assumed.
X
X ramlevels: number
X This number is the maximum number of levels PC LARN will keep in
X memory. The number can be between 1 and 14. Normally, PC LARN
X will use as much memory as available, but you may want to use
X less so there will be enough memory to start up a second copy of
X COMMAND.COM with the LARN command `!'. If there isn't enough
X memory for COMMAND.COM, LARN will clear the screen and prompt
X with "A>" until return is struck, then go back to the game.
X
X If "ramlevels" is not specified, a value of 14 is used. If
X "number" is less than 14, LARN will use a swapfile to store the
X oldest levels. Note that a level takes about 8K of memory.
X
X rawio
X This option causes the input and output of your computer to be
X switched to "raw" mode. The advantage of this is faster output
X and better handling of special characters ^S and ^P.
X
X =========== WARNING ==========
X Some computers (eg. DEC Rainbows) hang if rawio is attempted.
X ==============================
X
X swapfile: filename
X This is the name of the swap file that will be used if ramlevels
X is less than 14. If all the levels fit in memory, no swap file
X will be used. You may want to put the swapfile on a RAMdisk.
X If "swapfile" is not specified, LARN.SWP in directory larndir
X will be used.
X
X
X
X The following are options usable with UNIX LARN as well:
X
X auto-pickup
X Starts you out in 'automatic pickup' mode. Whenever the player
X moves onto an object, it will be picked up. This mode can be
X toggled with the '@' command while in the game.
X
X bold-objects
X By specifying this option, all objects in the game will be
X highlighted. The 'highlight-objects' and 'inverse-objects'
X specify which highlighting method will be used.
X
X The default is non-bold objects, except if the 'original-objects'
X option is specified, when it is *forced* on (to distinguish
X monsters and objects that are represented by the same
X character).
X
X enable-checkpointing
X With this option, the game is saved every 400 moves. If your
X system crashes it is possible to recover from the last checkpoint
X file (LARN.CPK in the LARN directory) with the command "larn ++".
X
X highlight-objects
X If the 'bold-objects' option is specified, this option causes
X objects to be highlighted with bolding.
X
X inverse-objects
X If the 'bold-objects' option is specified, this option causes
X objects to be highlighted with inverse video. The default is
X 'highlight-objects'.
X
X monster: name
X Sets the name of a monster. If the name has a space in it,
X enclose it in double quotes (eg "tooth fairy"). The leading
X character determines which monster the name goes with (e.g.
X "monster: bee" and "monster: Buzzbomb" change the names of
X bugbears and Bats, respectively).
X
X name: yourname
X Sets the name of the player. If you want a space in your name,
X enclose it in double quotes (eg "Mad Max").
X
X no-introduction
X Skip displaying the opening messages.
X
X no-beep
X Disable sound from the speaker.
X
X original-objects
X Like 'prompting' mode, this mode is provided for compatibility
X with LARN V12.0. By specifying this option, the characters
X used to show objects in the game are the same as in 12.0. The
X default is to use characters that are closer to those used with
X HACK, ROGUE and MORIA.
X
X prompt-on-objects
X By specifying this option, you enable 'prompting' mode. In this
X mode, the player is prompted for the action to perform when
X encountering an object (e.g. 'Eat, pick up, or ignore?').
X Prompting mode is provided for compatibility with LARN V12.0, and
X is off by default.
X
X savefile: filename
X The filename to use for saving the game. The default is LARN.SAV
X in the LARN directory. For a 2-floppy system you might try
X B:LARN.SAV if the LARN directory is on the A disk drive.
X
X
X 6. Command line options
X -----------------------
X
X There are several command line options that can modify the behavior of
X LARN. These are:
X
X -o optionfile Use this as the option file rather than LARN.OPT. As
X with LARN.OPT, the current directory then directories
X along your path are searched for this file which
X supplies configuration information.
X
X -s Show scores.
X
X -l Show log file. You have to know the Wizard's password
X to do this.
X
X -i Show all scores including the inventories of dead
X players.
X
X -c Create a new score file. You have to know the Wizard's
X password to do this. Erasing LARN.SCR has the same
X effect.
X
X -n No welcoming message. Prevents printing of the short
X introduction to LARN. Putting the "no-introduction"
X configuration option in LARN.OPT has the same effect.
X
X -# Where # is a number from 0 to 9. This sets the
X difficulty of LARN to this level. Normally, LARN
X starts out with difficulty 0 and increases in
X difficulty by 1 when you win at the current level.
X Thus the game automatically gets more difficult.
X
X -h, -? A help screen that shows the command line arguments.
X
X -p Prompt for actions on objects. Specifying the
X 'prompt-on-objects' option in LARN.OPT has the same
X affect.
X
X ++ Restore a game from a checkpoint file. If you have
X checkpointing enabled (with the "enable-checkpointing"
X configuration option in LARN.OPT) then LARN writes a
X checkpoint file every 400 moves. Should your system
X crash you can recover the game from the checkpoint file
X with this command line option
X
X For example: "larn -n -o bobslarn.opt" starts up LARN with no
X introductory message and uses bobslarn.opt file for configuration
X options. "larn ++" tries to restore LARN from a checkpoint file.
X
X
X 7. TERMCAP
X ----------
X
X LARN uses the UNIX "termcap" to select escape sequences to be sent to
X the terminal driver (either ANSI.SYS or NANSI.SYS) to change video modes.
X When LARN starts up, it checks in the environment for the variable called
X "TERM". The DOS command:
X set TERM ibmpc-ega
X will give the environment variable "TERM" the value "ibmpc-ega". By
X default, LARN assumes the value of TERM is "ibmpc-mono".
X
X Then LARN looks in the file called "TERMCAP" for a termininiefinition
X with the same name as the value of TERM. LARN first looks for TERMCAP in
X the current directory, then in directory "\ETC" (the normal UNIX place),
X then in directories along your PATH.
X
X The TERMCAP file uses 2 letter codes to describe each escape sequence
X and \E to mean ESC (the escape character is decimal 27). Each entry is
X enclosed in colons. For example, to start underscore mode on a monochrome
X display, we want to send the sequence "ESC[4m". This looks like
X ":us=\E4m:" as a termcap entry.
X
X The following sequences are used by LARN:
X
X ti terminal initialization. You could have something like:
X :ti=\E44;37m:
X which would mean to select blue background and white foreground.
X
X te terminal end. To reset your terminal to white on black:
X :te=\E0m:
X
X so stand out. Select red forground, keeping the blue background:
X :so=\E31m:
X
X se standout end. Back to white on blue:
X :se=\E44;37m:
X
X al insert line. This is *not* available in ANSI.SYS, so remove this
X entry if you're using ANSI.
X
X dl delete line. This is *not* available in ANSI.SYS, so remove this
X entry if you're using ANSI.
X
X If you want to make your own TERMCAP entry, copy the "ibmpc-mono"
X entry, replace the name (eg use "ibmpc-color" or "ibmpc-ega" or whatever),
X then replace the sequences with whatever you please. The possible escape
X sequences are generally listed in the DOS manual in the description of
X ANSI.SYS, as well as in the NANSI.DOC file.
X
X Remember to change the environment variable "TERM" to reflect which
X TERMCAP entry you want! You should probably put a "set TERM=..." line in
X your AUTOEXEC.BAT file.
X
X
X 8. WIZARD mode
X --------------
X
X There is a WIZARD mode for testing features of the game. To get into
X WIZARD mode, type in an underscore "_" and answer the prompt for the
X password with "pvnert(x)" (do not enter the quotes). Wizards are
X non-scoring characters that get enlightenment, everlasting expanded
X awareness and one of every object in the game.
X
X
X 9. History and Other Information
X --------------------------------
X
X Noah Morgan originally created LARN 12.0 and released the UNIX
X version to the USENET in 1986. Don Kneller ported the UNIX
X version to MSDOS (both IBM PCs and DEC Rainbows).
X
X Kevin Routley has been working on LARN enhancements on and off for
X the past two years. Version 12.1 had a limited distribution.
X Version 12.2 was distributed to the Usenet community. Version 12.3
X may be last version from Kevin that will maintain savefile compatibility
X with version 12.0 savefiles. Some future version will be released
X as Shareware.
X
X Other editions of Larn have been distributed by others, namely
X LARN13 and Ultra-Larn.
X
X I hope you enjoy this version of LARN. Please send any questions,
X suggestions, requests, or comments regarding LARN and LARN V12.3
X in particular to:
X
X Kevin Routley
X 9 Aster Court
X Nashua, NH 03062
X ARPA: routley@tle.dec.com
X BITNET: routley@tle.dec.com
X
X March 23, 1991
END_OF_FILE
if test 18665 -ne `wc -c <'larn123.doc'`; then
echo shar: \"'larn123.doc'\" unpacked with wrong size!
fi
# end of 'larn123.doc'
fi
if test -f 'tputs.c' -a "${1}" != "-c" ; then
echo shar: Will not clobber existing file \"'tputs.c'\"
else
echo shar: Extracting \"'tputs.c'\" \(5800 characters\)
sed "s/^X//" >'tputs.c' <<'END_OF_FILE'
X/************************************************************************
X * *
X * Copyright (c) 1982, Fred Fish *
X * All Rights Reserved *
X * *
X * This software and/or documentation is released for public *
X * distribution for personal, non-commercial use only. *
X * Limited rights to use, modify, and redistribute are hereby *
X * granted for non-commercial purposes, provided that all *
X * copyright notices remain intact and all changes are clearly *
X * documented. The author makes no warranty of any kind with *
X * respect to this product and explicitly disclaims any implied *
X * warranties of merchantability or fitness for any particular *
X * purpose. *
X * *
X ************************************************************************
X */
X
X
X/*
X * LIBRARY FUNCTION
X *
X * tputs output string with appropriate padding
X *
X * KEY WORDS
X *
X * termcap
X *
X * SYNOPSIS
X *
X * tputs(cp,affcnt,outc)
X * char *cp;
X * int affcnt;
X * int (*outc)();
X *
X * DESCRIPTION
X *
X * Outputs string pointed to by cp, using function outc, and
X * following it with the appropriate number of padding characters.
X * Affcnt contains the number of lines affected, which is used
X * as a multiplier for the specified per line pad time. If
X * per line pad count is not applicable, affcnt should be 1,
X * NOT zero.
X *
X * The format of the string pointed to by cp is:
X *
X * [pad time][*]<string to send>
X *
X * where: pad time => time to delay in milliseconds
X * * => specifies that time is per line
X *
X * The pad character is assumed to reside in the external
X * variable "PC". Also, the external variable "ospeed"
X * should contain the output speed of the terminal as
X * encoded in /usr/include/sgtty.h (B0-B9600).
X *
X * BUGS
X *
X * Digit conversion is based on native character set
X * being ASCII.
X *
X */
X
X/*
X * Miscellaneous stuff
X */
X
X#include <stdio.h>
X#include <ctype.h>
X
X# ifndef MSDOS
Xextern char PC; /* Pad character to use */
Xextern char ospeed; /* Encoding of output speed */
X
Xstatic int times[] = {
X 0, /* Tenths of ms per char 0 baud */
X 2000, /* Tenths of ms per char 50 baud */
X 1333, /* Tenths of ms per char 75 baud */
X 909, /* Tenths of ms per char 110 baud */
X 743, /* Tenths of ms per char 134 baud */
X 666, /* Tenths of ms per char 150 baud */
X 500, /* Tenths of ms per char 200 baud */
X 333, /* Tenths of ms per char 300 baud */
X 166, /* Tenths of ms per char 600 baud */
X 83, /* Tenths of ms per char 1200 baud */
X 55, /* Tenths of ms per char 1800 baud */
X 41, /* Tenths of ms per char 2400 baud */
X 20, /* Tenths of ms per char 4800 baud */
X 10 /* Tenths of ms per char 9600 baud */
X};
X# endif
X
X
X/*
X * PSEUDO CODE
X *
X * Begin tgoto
X * If string pointer is invalid then
X * Return without doing anything.
X * Else
X * For each pad digit (if any)
X * Do decimal left shift.
X * Accumulate the lower digit.
X * End for
X * Adjust scale to tenths of milliseconds
X * If there is a fractional field
X * Skip the decimal point.
X * If there is a valid tenths digit
X * Accumulate the tenths.
X * End if
X * Discard remaining digits.
X * End if
X * If per line is specified then
X * Adjust the pad time.
X * Discard the per line flag char.
X * End if
X * While there are any characters left
X * Send them out via output function.
X * End while
X * Transmit any padding required.
X * End if
X * End tgoto
X *
X */
X
Xtputs(cp,affcnt,outc)
Xchar *cp;
Xint affcnt;
Xint (*outc)();
X{
X int ptime; /* Pad time in tenths of milliseconds */
X
X if (cp == NULL || *cp == NULL) {
X return;
X } else {
X for (ptime = 0; isdigit(*cp); cp++) {
X ptime *= 10;
X ptime += (*cp - '0');
X }
X ptime *= 10;
X if (*cp == '.') {
X cp++;
X if (isdigit(*cp)) {
X ptime += (*cp++ - '0');
X }
X while (isdigit(*cp)) {cp++;}
X }
X if (*cp == '*') {
X ptime *= affcnt;
X cp++;
X }
X while (*cp != NULL) {
X (*outc)(*cp++);
X }
X# ifndef MSDOS
X# ifndef VMS
X do_padding(ptime,outc);
X# endif
X# endif
X }
X}
X
X# ifndef MSDOS
X/*
X * FUNCTION
X *
X * do_padding transmit any pad characters required
X *
X * SYNOPSIS
X *
X * static do_padding(ptime,outc)
X * int ptime;
X * int (*outc)();
X *
X * DESCRIPTION
X *
X * Does any padding required as specified by ptime (in tenths
X * of milliseconds), the output speed given in the external
X * variable ospeed, and the pad character given in the
X * external variable PC.
X *
X */
X
X/*
X * PSEUDO CODE
X *
X * Begin do_padding
X * If there is a non-zero pad time then
X * If the external speed is in range then
X * Look up the delay per pad character.
X * Round pad time up by half a character.
X * Compute number of characters to send.
X * For each pad character to send
X * Transmit the pad character.
X * End for
X * End if
X * End if
X * End do_padding
X *
X */
X
Xstatic do_padding(ptime,outc)
Xint ptime;
Xint (*outc)();
X{
X register int nchars;
X register int tpc;
X
X if (ptime != 0) {
X if (ospeed > 0 && ospeed <= (sizeof(times)/ sizeof(int))) {
X tpc = times[ospeed];
X ptime += (tpc / 2);
X nchars = ptime / tpc;
X for ( ; nchars > 0; --nchars) {
X (*outc)(PC);
X }
X }
X }
X}
X# endif
END_OF_FILE
if test 5800 -ne `wc -c <'tputs.c'`; then
echo shar: \"'tputs.c'\" unpacked with wrong size!
fi
# end of 'tputs.c'
fi
echo shar: End of archive 7 \(of 12\).
cp /dev/null ark7isdone
MISSING=""
for I in 1 2 3 4 5 6 7 8 9 10 11 12 ; do
if test ! -f ark${I}isdone ; then
MISSING="${MISSING} ${I}"
fi
done
if test "${MISSING}" = "" ; then
echo You have unpacked all 12 archives.
rm -f ark[1-9]isdone ark[1-9][0-9]isdone
else
echo You still need to unpack the following archives:
echo " " ${MISSING}
fi
## End of shell archive.
exit 0