@device(postscript)
@make(report)
@style(font allpostscriptfonts, size 12, spacing 1 line, indent 0.0 inches)
@begin(transparent, font souvenir, size 14)
@begin(titlepage)
@begin(titlebox)
@majorheading(An Introduction to Athena)

@majorheading(for Engineers)
@end(titlebox)

@center(
@researchcredit(
@p(By Ian Busch)

@p(7-321, x3-0050)
))

@p(Created: 12 June 1989)

@blankspace(-0.2 lines)
@p(Revision A.1: 21 August, 1989)

@blankspace(-0.2 lines)
@p(Revision B.2: 4 September, 1989)

@end(titlepage)
@end(transparent)

@begin(transparent, font newcenturyschoolbook, size 14)

@unnumbered(Introduction)
@blankspace(1 line)

Project Athena is an MIT-wide multifunction, multiuser computer system created for undergraduates as an experiment in computer usage and applications.  It was recently expanded to allow use by all graduate students, although many have had accounts for some time.  It is a very powerful system, with a large number of available applications, and excellent terminal facilities.  Athena utilizes the UNIX@+(@y(R)) operating system and the X@+(@y(R)) window system to provide relatively easy use of a wide number of computer functions in a multi-tasking environment.  But enough of buzzwords, and on to what it can do for you. 

In theory, students are only supposed to be using the system for course related work (ie. not thesis, balancing checkbooks, and drawing pretty pictures).  In practice, this is not necessarily the case.  

This document contains some basic information to get you started on Athena, give you an idea what is available, and steer you in the right direction if something peaks your interest.  I've tried to assemble the document so that you don't have to do a whole lot of reading to get started.  Use this guide to find out what you might want to read before beginning.


@tabset(2.5 inches)
@u(Experience@\What you might want to look at)

Used UNIX and X before   @\@i(Getting an Account on Athena [3])

@blankspace(-0.4 lines)

                         @\@i(Where to go for Help [7])


Used UNIX before         @\@i(Getting an Account on Athena [3])

@blankspace(-0.4 lines)

                         @\@i(The X Window System [6])

@blankspace(-0.4 lines)

                         @\@i(Where to go for Help [7])

Used minicomputers       @\Parts 2 through 7

PC's only or less        @\Parts 1 through 7
@tabclear()

@chapter(What Athena Is)
@blankspace(1 line)

Each user on the system has an @i(account).  An account is part of the system that a user is allowed to use.  It has certain characteristics, such as a limit on the use of memory, and a mailbox to allow messages to be sent between users.  Each account has a @i(username) associated with it.  This is the account's name.  This name is used to identify the account for the purpose of mail messages and the designation of things like directory names.  
In order to gain access to an account you must know its username and @i(password).  This is what you do when you log on.

When you log on you are actually taking advantage of several computers simultaneously.  The way in which they are connected to the workstation you are using is shown in figure 1. @blankpage(1) It isn't necessary to learn all of the guts of athena in order to use it for mundane things, so if this part is confusing, don't worry to much.  Athena is like a car; you don't have to know how every part of a car works to drive it, but it helps if you want to do something unusual.

Athena consists of a distributed system of smart terminals (workstations) and file servers.  These file servers and terminals are interconnected over a network, shown in figure 2.  This diagram may look confusing at first, but is really straight forward.

@blankpage(1)

When you are logged in to a terminal, anytime you need to talk to another computer within athena you do so through the @i(cluster server).  The cluster server is a minicomputer with the sole function of taking care of the needs of the terminals connected to it.  There are about a dozen of these machines all over campus, located nearby each of the clusters of terminals.

When you log in, your cluster server verifies your password and identifies you with the help of the security systems.  It then looks for your @i(home directory).  Your home directory has all of your files and programs.  The cluster server @i(attaches) your home directory to your account so that you can use the files in it.  Sometimes, if there is a problem with the network, or one of the mainframes you need is down, it won't be able to attach your home directory.  If this happens, it will tell you, and just follow the instructions.  

Your home directory is actually stored on one of the @i(Network File Server (NFS)) machines.  This machine is also a mainframe.  It has the sole purpose in life of storing your account and those of other users.  In fact, almost every kind of information you use on athena is stored on an NFS machine.  When you log on, the cluster server first locates the machine associated with your account, and then opens it up for your use.  This file server is not necessarily anywhere nearby.  Some people's home directories are on machines as far away as E40.  

When you use a program not in your directory, Athena finds the machine that the program is on and then loads it onto your terminal (but not necessarily your account) for use.  Each of the terminals on Athena are @i(smart).  This means they process programs themselves.  I've heard people relating that each terminal has the computing power of a VAX 11/730.  And all at our finger-tips, wow......

This smart terminal capability means that once a program has been located and loaded on to a terminal, it can be run just as fast regardless of the number of the people on the system.  The down side of this is that when more people are on the system, it takes longer to locate a new file.

@chapter(Where Athena Is)
@blankspace(1 line)

As mentioned in the previous section, Athena is a distributed system.  Because of this, clusters and printers are located all over campus.  There are two types of clusters, public and private.  The CAES cluster is a private cluster; this means that only CAES people are supposed to be using it.  In fact, you might check every now and then if you see someone with an armful of biology books using our equipment, just why they're here.  By the same token, there are private clusters for the other departments and centers.  

There are 14 public clusters:

@tabset(2 inches)

Room #@\Location
@bar(0)

1-142@\Near Civil Engineering

11-113@\"The Fishbowl" on the infinite corridor

11-116@\"The Fishbowl" on the infinite corridor

11-124G@\"The Fishbowl" on the infinite corridor

2-225@\Beats me; never been there

4-035@\Basement

4-167@\Not in the Basement

16-034@\Other end of the infinite corridor

37-318@\Aero/Astro/Mech E

37-332@\Aero/Astro/Mech E

66-080@\"The Wedge" past biology

E51-007@\Sloan School

W20-575@\Student Center

Barker Library

@blankspace(1 line)

In addition, there are printers distributed all over campus.  @p(If you are going to make a really large printout, like more than 10-20 pages, please use linus, europa, electrra, or bias, instead of our own printer.)  Our printer is called @i(????).  

If you go down the infinite corridor to the first staircase, go down one floor, and cross the infinite corridor, you come to one of the offices of Information Systems.  This is where three Athena printers are located.  They are named @i(linus, europa), and @i(thesis).  Don't ask me who names them.  Anyway, if you go into I/S, and go down to the end of the corridor, you will see a counter on your right.  Behind this counter are 6 huge file drawers.  Three of them are named @i(linus, europa), and @i(thesis) (surprise, surprise).  Go over to the appropriate one, and look under your username (the output is filed alphabetically).  Take your output, thank the nice people, and be on your way. This office is open 8:00 AM to 11:30 PM Monday through Friday, and 10:00 AM to 5:00 PM on Saturday.

Almost all of the public clusters have printers located in or near them.  The closest are @i(electra) in 37-324 down by civil engineering, and @i(bias) down near the fishbowl in building 11.  These are good to know in case our printer should be on the fritz late at night or on a Sunday.  

Starting in January of 1990, Athena will begin to charge a fee for the use of the public printers.  This will only apply to printouts made after the first 500 sheets each semester.  This may not sound like a heavy limit, but it could be.  In addition, the center may start putting limits on the ammount of free hardcopy available.  Because of this, it is a good idea to get to know some ways of conserving paper.  Each of these will be detailed later on, but for now, remember:
@begin(itemize)
@b(lpr -P)@i(printername) @b(-h) @i(filename) -- will omit the coversheet.

@b(/mit/athenadoc/viewdoc) @i(filename) -- allows previewing of postscript documents

Use of good quality (printed one side, no wrinkles or tears) scrap paper
@end(itemze)










@chapter(Getting an Account on Athena)
@blankspace(1 line)

@b(@u(Registering))

Getting an account on athena is a relatively simple proceedure.  Go to any workstation of athena (not necessarily a private one), and hit any key to activate it.  In a few moments, there will be a window in the middle of the screen.  Grab the mouse next to the computer and use it to move the cross-hairs on the screen over to the square (or "button") that says "Click here to register for an account".  Once you have moved the cross-hairs there, press the left mouse button for a brief second without moving the mouse (known as "clicking left").  

In a few minutes, another window will appear, requesting information for registration.  Follow the instructions, remembering to wait no more than 90 seconds between entries.  For this reason it is a good idea to choose your password and username before you sit down.  Athena recommends usernames that consist of your first two initials and your last name like mine: irbusch -- from Ian R Busch.  However, you can use just about any combination of letters.  Some people use just there first or last name for example (Although if you have a name like John Huang, chances are both names are already taken by othe users).  Once you set your username, it is difficult to change it so it behooves you not to choose something really stupid.  

Your password can be anything at all (although there may be maximum and minimum size requirements like 4 and 256 characters).  In contrast to your username, your password can be changed easily (with the @b(passwd) command).  In addition, it should also probably be something stupid that no one else would ever guess.  The concern for security here isn't due to other students, but rather with some of the more evil minded hackers.  Some of the best passwords are things like the name of the first car you owned, incorrectly spelled, in French, and written backwards (unless or course you happen to be French).  You really don't have to get that elaborate, but the stranger the better from a security point of view.

If all goes well, you should have an account available to you by noon of the next day.

@u(@b(Problems))

There are some problems that can occur while registering.  The most common is Athena telling you that it doesn't have your name in the data-base.  If this should happen, talk to your cluster manager ?????.  If he/she isn't around, call Kim Powell or Carla Ferman at Project Athena User Accounts x3-1325.  They are both very helpful and will no doubt clear up the problem in a few minutes (Although you might not be able to register until the next day).

Other typical problems involve the picked username not being available because someone else is using it.  All I can say here is tough darts; pick another username.







@chapter(How Unix Is Structured)
@blankspace(1 line)

A persons account is a collection of @i(files) organized by an @i(operating system).  These files can be text documents, programs, directories, or other types.  Directories are locations in the memory where other files are stored.  The UNIX operating system uses a hierarchial structure with directories based within directories.  The best way to imagine it is to think of an upside-down tree, where the "highest" levels are at the trunk, and the "lowest" levels of directory are the ends of the branches.  The full name of a directory or file is called the @i(pathname), and is a list of every branch in the tree used to identify a particular file, from the highest level on down.

@section(Basic Structure)
@blankspace(1 line)

The structure of UNIX is very similar to that of VMS.  Of course if you've never used VMS then that tid-bit of knowledge won't help you too much.  The major difference (for you VMS people) is that UNIX is not machine specific.  In other words, you don't have to know where @i(physically) some file is stored (ie. by machine name)  in order to be able to get to it.  This is a tremendous bonus on a distributed system like Athena.  For example, all of my files are stored on a machine named Hera down in building 1.  But my complete pathname is "/mit/irbusch", notice that Hera doesn't come into it at all (She should mind her own business anyway).

The structure of the UNIX operating system is like a gigantic tree.  The highest level is known simply as "/".  All of the student accounts are in a directory called "/mit".  Some other useful files are in another high level directory called "/usr".  Each of our home directories looks like a file contained in the directory above it.  This means that if you were to look at the directory "/", you would see a bunch of filenames.  Among them would be @i(mit) and @i(usr).  

In a similar fashion, our home directories look like files within "/mit".  Therefore, the full name, or @i(pathname), of my home directory is "/mit/irbusch". The slash ("/") is used to separate the names of directories within a pathname.  The directories are listed from the highest level to the lowest level from left to right.  Each user may want to create @i(subdirectories) within their home directory.  You usually do this to organize the files (It sometimes gets tough to see what your doing if you have 3000 files floating around in one directory).  As an example I have a subdirectory with all of my teaching assistantship information in it (including this file).  It's called, appropriately enough, "/mit/irbusch/TAship.dir".  You can see where this leads.  I've ended up with around 30 subdirectories in my account, mostly because after about a dozen files in any one directory, I start to get confused.  Other people have as many files as I do, but only one or two directories.

@begin(group)
@begin(transparent, spacing 0 lines)
@tabclear()
@tabset(1.5 inches, 3.5 inches, 5 inches)
@begin(transparent, font courier, size 13)
/@\mit/@\irbusch/@\TAship/
@end(transparent) 

@bar(0)

@begin(transparent, font souvenir, size 10)
The top level  @\The directory that @\My home     @\The directory where

directory.     @\contains all of the@\directory   @\I keep info about

               @\student accounts   @\            @\my T. A. `ship
@end(transparent) 
@tabclear()
@end(transparent)
@end(group)

@blankspace(1 line)
@blankpage(1)

The directory structure is shown in figure 3, with the directory and subdirectory names in boxes.  One thing this figure illustrates, is the true tree nature of a directory.  If I wanted to move from my "inbox" subdirectory to my "wordp" directory, I would have to move up two levels and then back down again one. 


@section(Lockers)
@blankspace(1 line)

In addition to the structure of your account (home directory and subdirectories) you can also use other parts of the system.  This is done by @i(attaching lockers).  Attaching lockers can best be thought of as attaching a new branch to the directory tree.  This new branch can have subdirectories as well.  

One example is the athenadoc locker.  This "locker" has a great many files used by a large number of students.  Any number of students can then attach this locker and use its files (like viewdoc, for example).  

In addition to attaching these lockers, which don't necessarily belong to anyone, you can also attach other users.  If I were to attach "tkiss", I would be able to use Tom Kiss's files, provided he allowed me to by setting his protection low enough.

@chapter(Doing @i(Things) on Athena)
@blankspace(1 line)

UNIX is actually one of the oldest of the operating systems (even older than VMS), and has with it a great deal of archaic language.  If you are used to using MS-DOS or VMS, learning the vocabulary of UNIX is going to seem like learning Old English.  

If you are just learning an operating system for the first time, UNIX may at first seem like a jumble of random letters to represent commands.  Fortunately, those new to UNIX won't have the problem of accidentally typing commands in the operating system you used to use, so in some ways you may be better off.

There is one very important thing to keep in mind on UNIX.  @b(UNIX is) @p(case-sensitive).  This means that typing a command in uppercase is not the same thing as typing it in lowercase, so @b(more) does not equal @b(MORE) or @b(More).  This is really annoying at first, but you'll get used to it.

The UNIX system has an enormous number of commands available, and the list is growing.  Appendix I contains a compilation, created by Norbert Doerry, of common UNIX commands.  This is probably one of the best places to look for information.  In addition, I have posted some other common commands around the room as needed.  


@section(Looking at Things)
@blankspace(1 line)

There are a couple different ways to look at files outside of editing them and printing them out:

@begin(transparent, font courier, size 14)
@b(athena%) @p(cat) @i(filename)

@b(athena%) @p(more) @i(filename)
@end(transparent)

The @i(cat) command lists a whole file on the screen similar to the type command in VMS.  The more command only displays one screenful at a time.  At then end of the screen it says "more" and tells you how much you've seen so far.  If you hit the space-bar, it will show you the next screen; the <Return> will show you one more line; hitting <control-c> will abort the program.  

If you want to see the contents of a directory type @p(ls).  If you want to know everything about the contents of the directory, type @p(ls -al) for list, all files, long form.  This is equivalent to typing dirs/prot on VMS.


@section(Running Applications)
@blankspace(1 line)

Running applications in UNIX is very similar to doing it in MS-DOS (on IBM PC's).  If the file is in your directory, simply type the name of the file that you want to run and it will (if it can).  

Sometimes you may wish to run files that are not located in the directory you are currently using.  To do this, first make sure that the directory is attached, or a part of your account.  Next, type the full pathname of the file you wish to run.  For example, to run the game xconq:

@begin(transparent, font courier, size 14)
@b(athena%) @p(attach games)

@b(athena%) @p(/mit/games/vaxbin/xconq)
@end(transparent)

Some applications do not need the full path even though they are not located in your directory.  This is true of several of the most commonly used programs such as the text post-processors (@i(Scribe)@+(@y(R)) and @i(LaTeX)@+(@y(R))) the editor, and the compilers among others.  For example, to compile a program in the C program language, all you need to do is type:

@begin(transparent, font courier, size 14)
@b(athena%) @p(cc) @i(filename)
@end(transparent)

Where @i(filename) is the name of the file to be compiled.


@section(Editing Files)
@blankspace(1 line)

To edit a file, use the standard Athena editor, emacs.  Emacs is similar to UNIX in that it is both very powerful, and somewhat obtuse.  For more information, see the appendix on using emacs.


@section(Printing Files)
@blankspace(1 line)

As mentioned earlier, files can be printed to a number of different printers located all over campus.  In order to print a document to a file, use the lpr command:

@begin(transparent, font courier, size 14)
@b(athena%) @p(lpr -P)@i(printername filename)
@end(transparent)

Where lpr (for line printer) says to print and the -P is a paging command.  @i(Printername) is the name of the printer you wish to go to.  Some of the ones nearby are:

@begin(group)
@tabclear()
@tabset(2 inches)
Printername@\Location
@bar(0)

????@\Center for Advanced Engineering Studies 9-343

linus@\11-226

europa@\11-226

electra@\37-324

bias@\11-116
@tabclear()
@end(group)

As mentioned, there are several more in other locations.  @i(Filename) is the name of the file for printing.  @p(Whatever you do, @u(please, please) make sure you don't send executable, ie. machine language, files to the printers.  They consume paper like not you would believe!)  If you do send a file you didn't want, and want to stop printing it, simply type:

@begin(transparent, font courier, size 14)
@b(athena%) @p(lprm -P)@i(printername)
@end(transparent)

If you want to see who is printing, type:

@begin(transparent, font courier, size 14)
@b(athena%) @p(lpq -P)@i(printername)
@end(transparent)





@section(Moving Around)
@blankspace(1 line)

To move around through directories, use the change directory command (just like on an IBM):

@begin(transparent, font courier, size 14)
@b(athena%) @p(cd) @i(pathname)
@end(transparent)

Where @i(pathname) is the path of the directory you want to go to.  There are a few short-cuts to this method.  The "~" symbol (The shift of the key next to the 1) is a shorthand for you're account's home directory.  So, if you want to return to your home directory, all you need to type is:

@begin(transparent, font courier, size 14)
@b(athena%) @p(cd ~)
@end(transparent)

Similarly, if I wanted to change to my TAship directory, I could type:

@begin(transparent, font courier, size 14)
@b(athena%) @p(cd ~/TAship.dir)
@end(transparent)

You can refer to files by using the "~" in pathnames too.

Another shorthand is available if all you want to do is move up a level in the directory structure:

@begin(transparent, font courier, size 14)
@b(athena%) @p(cd ..)
@end(transparent)



@section(Getting out of @i(Things))
@blankspace(1 line)

There are two things you may wish to get out of:  Athena or a window, or some error.   To log out of Athena you can simply type logout or hit the @i(logout) buton in the lower right-hand corner of the screen with the left mouse key.  If athena doesn't want to let you go, type "logout" twice in a row, and it will get the idea.

You will no doubt eventually run into occasional problems on Athena.  One of these is a program that continues to run even when you don't want it to.  Be cautious before undertaking extreme action as what you think must be a crashed program is in fact the slow speed of the network on a busy evening.  Unless you are sure of the problem, you should always wait at least 1-2 minutes.  Most programs will allow you to leave by typing such things as "quit", "exit", or "q".  Sometimes the command to get out is more burried than that and you will have to find it through a help screen.  Help screens can usually be brought up (if they are available at all) by "?", "PF1" (on the keypad), "Control-h", or "/". 

Sometimes a program will end up in some kind of infinite loop and have to be terminated with extreme prejudice.  There are a few ways to get rid of this pesky problem.  Usually the best way to return to a prompt is to type @b(Control-c).  This is a relatively "clean" kill in that the application is usually terminated forever.  Another method is @i(Control-z) but this is quite a bit messier, in that it leaves a stopped job that you will just have to kill off later.  

If your dificulties cannot be solved even by this, then ask your cluster manager, or the athena consulatants to help you out (see the chapter Where to go for Help and Information).


@section(Other Techniques)
@blankspace(1 line)

There are many other powerful and useful features in UNIX that you may wish to become introduced to.  Some of these involve the use of @i(pipes) to redirect the output of a process, wildcards for parts of filenames, aliases for certain commands, and a command history to let you retrieve frequently used commands with the arrow keys.  For information on these slightly more advanced techniques, I'l  refer you to the section on where to go for help and to the appendix on Useful Commands in Unix.




@chapter(The X Window System)
@blankspace(1 line)

The @b(X)@+(@y(R)) window system is what allows Athena to @i(multi-task).  Multi-tasking is the ability of a terminal to perform more than one function at a time.  Athena provides multi-tasking through the use of multiple @i(windows).  If you are used to Macs, then windows is old hat to you.  For those of you who haven't, the use of windows simply divide up the screen into a number of smaller "screens" (each called a window), so that you can do different things in each.  In essence, it allows you to appear to be using more than one computer at the same time.

As an example, let's say you have to write up a ship design report for the Captain.  You could have the following windows open at the same time:

@begin(itemize)
An @b(emacs) window to do your text editing in (where you actually type up the report)

A UNIX window to run @b(scribe) allowing you to post-process as you go.

A window running the @b(2020) spreadsheet with calculations in it.

Another window running @b(2020) more calculations.

A window in which from which you are sending mail

A window in which you are listing a text file.

And so on ...
@end(itemize)



@section(Making Windows)
@blankspace(1 line)

@b(@u(Standard Method))

To create a new window, simply type:

@begin(transparent, font courier, size 14)
@b(athena%) @p(xterm &)
@end(transparent)

To create another window simply type @b(xterm &) at the prompt.  If you omit the @b(&), it will not let you continue to use the old window.  In a short amount of time (anywhere from 5 seconds to 5 minutes depending on how many people are using Athena), a small box will appear in the upper left hand corner of your screen with the words "xterm:  0x0" in it.  In addition your cursor will change to a hollow box.  This is prompting you to make the window.  Move the mouse to where you want the upper left hand corner of the new window to be and hit either the left or right mouse key.  The left key makes an 80 column x 25 line window, the size of a standard IBM compatible screen.  The right key makes one 80 columns wide and goes to the bottom of the screen. 

@b(@u(Making Windows in Reverse Video))

@b(xterm -rv &) will allow you to create a window in reverse video: white characters on a black background.

@b(@u(The Background Menu))

Another way of creating windows is to move the mouse to the background area of the screen (the gray part), and hold down the center mouse button.  You will then get a small menu like that shown in figure 4.  @blankpage(1)While still holding down the center key (don't let go yet), pull the mouse down (this is known as @i(dragging the mouse)) to where it says "New Window" and now release the middle key.  The menu will disappear and in a few minutes the window prompt will appear in the upper left hand corner of the screen.  Now create the window normally.

This is also a way to get out of a window especially if it has gotten locked up by a program.  Bring up the background menu in the same way as listed above, and then move the cursor to "KillWindow".  When you release the middle mouse key, your cursor will have changed to a picture of a hand with a pointed finger.  Move the hand to the window you want to kill and click the left mouse key.









@section(Commands)
@blankspace(1 line)

The following commands allow you to change the size and shape of windows and how to move them around on the screen.  When windows are overlapping, some appear to be "above" others.  This is known as a "stack" of windows.  If you want to see some of the windows in a stack, use the mouse keys with the "push" and "pull" commands to shuffle them around.

If you are tired of looking at a window that is taking up a lot of room, you can turn it into an @i(icon).  An icon is a small representation of the window.  If you are shuffling several windows around on the screen at once, then iconifying them is a handy way to clean up the screen.

@blankspace(1 line)

@begin(group)
@tabdivide(4)
Motion@\Left Key@\Middle Key@\Right Key
@bar(0)

Click@\Push to @\De-Iconify@\Pull to
@blankspace(-0.5 line)

(None)@\Bottom@\(Enlarge)@\Top of Stack



Drag@\Iconify@\Change Size@\Move the
@blankspace(-0.5 lines)

(Move)@\(Reduce)@\& Shape@\Window
@tabclear()
@end(group)









@section(Special Windows)
@blankspace(1 line)

Some programs that generate windows will not allow you to change them in the way that you probably would wish.  These programs include: viewdoc, xcalc, xclock and others.

@b(xclock &) @i(Creates a clock on the screen) -- This command will create a clock on the screen.  It is placed with the mouse keys (see Making Windows).  There are several options available:

@begin(itemize)
@b(xclock -rev &) makes a clock in reverse video.

@b(xclock -update 1 &) gives you a second hand.

@b(xclock -digital &) gives you a digital clock.

@b(xclock -chime &) will ring twice on the hour and once on the half-hour.
@end(itemize)

@\You can combine these commands, for example: "xclock -rev -update 1 &".  The clock will automatically disappear when you log out.

@b(xcalc &) @i(Creates a calculator) -- This command creates a calculator on the screen that you can operate by pressing the left mouse button on the calculator "keys".  You can't change the size, so just place it with the left mouse button.  You can make an HP calculator with @b(xcalc -rpn &), but don't trust it for calculations involving parentheses.





@section(Getting out of Windows)
@blankspace(1 line)

The usual way to get out of a window is the exit command:

@b{exit} -- @i{Gets you out of a window} -- Typing "exit" will simply remove that window that you typed it in.  @i(You will still be logged on even if you "exit" out of your last window.)

If you want to log out, you can also type @b(logout) at the prompt.












@chapter(Where to Go for Help and Information)
@blankspace(1 line)

There are a great number of places to get help with Athena related problems.  These include:

@begin(itemize)
The cluster manager of CAES ????

The Athena Consultants.  They can be located down on the first floor of building 11, or by calling x3-4435 or x5-6711.

The new "help" command provides (or will provide) access to documentation from both the athenadoc documents and the olc stock answers (described below).  This system is still in its infancy, so the traditional methods are still listed below.

The on-line consultants.  Simply type the letters "olc" at the athena% prompt.  This system is pretty self-explanatory.

@begin(multiple)
There is a great deal of documentation on Athena itself, in the form of the @i(Essential Athena) documents.  These can be gotten to by attaching the athena documentation locker:

@begin(transparent, font courier, size 14)
@b(athena%) @p(attach athenadoc)

@b(athena%) @p(cd /mit/athenadoc)

@b(athena%) @p(more README)
@end(transparent)

Included in this is information on UNIX, Scribe, using C, Fortran, and Scheme on Athena, Mail messages, and much more.  These documents go into far more detail than the appendices at the end of this report.  These documents can be purchased at graphic arts in the basement of building 11 for a couple dollars each, or printed to any postscript printer.
@end(multiple)

@begin(multiple)
Because they've answered so many questions in the past the kind people at olc have recorded answers to the most common questions.  To get these, type:

@begin(transparent, font courier, size 14)
@b(athena% attach olc-stock)

@b(athena% /usr/athena/lib/olc/olc_browser)
@end(transparent)
@end(multiple)

@begin(multiple)
If you need help finding out what a command does, type:

@begin(transparent, font courier, size 14)
@b(athena%) @p(man) @i(command)
@end(transparent)

where @i(command) is the command you are interested in. 
@end(multiple)

@begin(multiple)
If you think you know what you want to do, but don't know the command, then type:

@begin(transparent, font courier, size 14)
@b(athena%) @p(apropos) @i(keyword)
@end(transparent)

where @i(keyword) describes the concept you are interested in.  This will produce a list of commands in UNIX that involve this keyword. 
@end(multiple)

Any of the students from previous years.  Remember, these people have important work to do themselves, and are not being paid to help you out (as opposed to the consultants or your cluster manager).  

There is a tremendous ammount of documentation available in each of the clusters.  We have the manuals on virtually every major piece of software.  

SIPB (Student Information Processing Board):   This group is newly relocated over to the fifth floor of the student center, in room W20-525 or there-abouts.  These people are a bunch of 'hackers' who probably know more about ATHENA than the ATHENA people themselves.  They are usually very eager to answer questions and provide help.

@end(itemize)







@appendix(Sending and Receiving Messages)
@blankspace(1 line)

There are two forms of message sending on Athena.  One is a traditional mail routine known as @i(mh) for mailhandler.  The other is a quick and dirty notification service known as @i(Zephyr).

@appendixsection(Mail Messages)
@blankspace(1 line)

The mail routine on Athena is fairly straightforward.  If you get a message when you log on that you have received mail, then you first need to @i(incorporate) it into your account.  To do this type:

@begin(transparent, font courier, size 14)
@b(athena%) @p(inc)
@end(transparent)

Now, you can use the @i(show) command to see what was sent to you.

@begin(transparent, font courier, size 14)
@b(athena%) @p(show)
@end(transparent)

This will show the messages that you have received.  You can also see other messages by typing the number of the message you want to read:

@begin(transparent, font courier, size 14)
@b(athena%) @p(show 2)
@end(transparent)

Shows message number 2.  All messages, once incorporated, are placed in a directory called:

@begin(transparent, font courier, size 14)
@b(/mit/)@p(yourusername)@b(/Mail/inbox) 
@end(transparent)

If you change directories into it and do a listing you will see a series of numbers, each of which is a message:

@begin(transparent, font courier, size 14)
@b(athena%) @p(cd /mit/yourusername/Mail/inbox)

@b(athena%) @p(ls)

@b(1  2  3  4  5) 
@end(transparent)

If you want to send mail, simply type:

@begin(transparent, font courier, size 14)
@b(athena%) @p(comp) 
@end(transparent)

for compose.  This will create an emacs window to edit the message in (See the Emacs section for more details on using the editor).  Type the intended recipients @i(username) after the To:, and anyone else you want to get it after the cc:.  When you're done, type <Control-x><Control-s> and then <Control-x><Control-c>.  When it says "what now?", type @b(send).

@begin(group)
@bar(0)
If you want to send a file, type:

@begin(transparent, font courier, size 14)
@b(athena%) @p(mhmail) @i(username) @p(<) @i(filename)
@end(transparent)

@i(This above line is a change from the original version of this document.  The 12 June 1989 version incorrectly described this command.)

@bar(0)
@end(group)

@appendixsection(Zephyr Messages)
@blankspace(1 line)

Zephyr messages appear on the screen, but do not stay around as files.  If you receive one, and want to get rid of the stupid window, just move the mouse up to the window you want and click the left button.  

To send a Zephyr message, you need to know the persons username, and that they're on the system, and then type:

@begin(transparent, font courier, size 14)
@b(athena%) @p(zwrite) @i(username) 
@end(transparent)

Then type up to 3-1/2 lines of message and hit <control-d> or leave a period on a line by itself.

For more information on zephyr, use the @p(man) command with the with the qualifiers: @i(zwrite, zbrowser, zlocate, zmailnotify, and zephyr.)  For related commands, type @p(apropos zephyr).



@appendix(Editing with EMACS)
@blankspace(1 line)

Emacs is the editor commonly used on Athena.  It can be used for writing programs, data files, mail messages, word processing, and other applications.  All of the commands in emacs rely on the use of @i(control sequences).  These control sequences are the use of one key in combination with another special function key. The special function keys used are the @i(Control Key) and the @i(Meta Key).  The Meta Key is called "Compose Character" on VAXstations and "Alt" on IBM RT's.  

@b(C) = Hold the Control Key@\@b(M) = Hold the Meta Key


@appendixsection(File Handling)
@blankspace(1 line)

@b(C)-x,@b(C)-f : @i(Finds) a file in your directory and edits it.

@b(C)-x,@b(C)-v : Finds an alternate file (ditches your old one)

@b(C)-x,@b(C)-s : @i(Saves) the file currently used to your directory.

@b(C)-x,@b(C)-c : Ends the emacs session.

@b(C)-x, i : Inserts named file into the current file.

@b(C)-x,@b(C)-w : @i(Write) to a different filename.

@appendixsection(Moving Around)
@blankspace(1 line)

With the mouse: move there and click the left mouse key.

@b(C)-v : Move to next screen.

@b(M)-v : Move to previous screen.

@b(M)-< : Move to top of a file.

@b(M)-> : Move to the bottom.

@b(M)-x goto-line <Return> @i(line number) <Return> :  This will move you to a specific line number in a file.

@appendixsection(Cut and Paste/Copying and Deleting)
@blankspace(1 line)
				   
@b(C)-k : Removes the contents of the line ahead to the buffer @i(but not the "return").  If you do several without moving the cursor, it will keep them all together in one buffer to be yanked back later.

@b(C)-y : Returns "killed" items to the screen at current location.  Can be used several times to make several copies.

@b(C)-@@ : Mark the start of a region (select).

@b(C)-w "Kills" the region between the last mark and the current cursor location (but it can be brought back with @b(C)-y).

@appendixsection(Searching for Something)
@blankspace(1 line)

@b(C)-s, specify text : Searches ahead for text.  

@b(C)-r, specify text : Searches backwards.


@appendixsection(Buffers and EmacsWindows)
@blankspace(1 line)

You can use emacs to edit several files at the same time.  This is a very handy feature if you wish to do something like copy the titlepage from one report to another with the cut and paste commands.

This is done by successively loading different files onto emacs with the @b(C)-x @b(C)-f command.  Once you have a number of files loaded on, you can switch back an forth between them with the @b(C)-x  b command.  To do this, type @b(C)-x and then just a plain old "b".  Emacs will prompt you with a default buffer name (filename).  If you want that one, just type return.  Otherwise type the name of the file you wish to switch to (as long as it has already been loaded).

To get a list of the files you have loaded, use the @b(C)-x, @b(C)-b command.  This will break your emacs window into two parts and display the list of buffers in the bottom one.  To return to having only one window, move the mouse to that window and type @b(C)-x 1.

To get rid of a buffer (make sure you save it first if you have to!), type @b(C)-x k.


@appendixsection(Other Emacs Tricks)
@blankspace(1 line)

If you prefer to write over text, rather than to push it ahead of the cursor, you can switch to overstrike mode by typing "@b(M)-x overwrite".  To switch back to insert mode, type "@b(M)-x overwrite" a second time.

See some of the other emacs documentation around the clusters for more information, and see the section on where to go for help.






@appendix(Word Processing)
@blankspace(1 line)

The primary method of word processing on Athena is through the use of @i(text post-processors).  Post-processors take text that has been created with an editor and checks the text for key words that tell it to do special things, like @b(bold) or @u(underline).  This method tends to be rather user-hostile to those of you used to sitting down at a PC and typing on something like @p(Word) or @p(WordPerfect), but it is very powerful.  The greatest disadvantage is that what you see on the screen as you type isn't what you get after you process it and print it out.  In addition, if you miss-type a command, you won't find out about it until after your done.

Even so, these post-processors can make documents look rather nifty.  This one was done with @p(Scribe)@+(@y(R)).  Another that has just been made system wide is @p(LaTeX/TeX)@+(@y(R)).

@appendixsection(Scribe)
@blankspace(2 lines)


@b(@u(Where to get information))

There is a great deal of information out there about scribe, so I will not go into great detail about it here.  The following are some good sources of information:

@begin(enumerate)
The @u(Scribe Users Manual) and @u(Scribe Pocket Reference Guide) are located in the racks of manuals around the room.  These references are somewhat tedious to use, but contain everything you'll probably ever need to know.

The olc stock answers.  See the section on where to go for help and information.

A few copies of @u(Commonly Asked Questions About Scribe) are floating around the room.  This is a compilation of the olc stock answers about scribe.  

The @i(Essential Scribe, Scribe Report, Scribe Resume,) and @i(Scribe Thesis) documents in the athenadoc locker.  See the where to get help section for how to use the athenadoc locker.
@end(enumerate)


@blankspace(2 lines)

@b(@u(Some Basics About Scribe))

The following information implies that you know at least a tiny bit about UNIX and Emacs.  If not, read those sections first.

@i(@u(Editing Scribe Files))

To edit a file that you will process through scribe, use the @i(emacs) editor.  For example:

@begin(transparent, font courier, size 13)
@p(athena%) @b(emacs) @i(Filename.mss) @b(&)
@end(transparent)

You must use the @i(.mss) ending to your filename in order to activate all the scribe functions within emacs automatically.  You should also include the @b(&) so you can continue to use the current window.

Now just start typing.  You can include the various scribe functions listed below and in the users manual.  All scribe functions begin with the "@@" symbol.  If you need to type an @@ without starting a scribe function then type two @@@@'s in a row.

When you are done, type <Control-x> <Control-s> to save the file.  When you are finished with emacs, type <Control-x> <Control-c to leave.

@i(@u(Processing Scribe Files))

After you have saved your new file, type:

@begin(transparent, font courier, size 13)
@p(athena%) @b(scribe) @i(Filename.mss)
@end(transparent)

Hopefully, there won't be any errors, and it will tell you the name of the ouput files.  Most of the errors it gives you are fairly self explanatory.  

@blankspace(1 line)

@i(@u(Printing Scribe Files))

To print a copy of your file, type:

@begin(transparent, font courier, size 13)
@p(athena%) @b(lpr -Poe) @i(Outputfilename) 
@end(transparent)

Your output filename will have an extension like .PS or .lpt.  Make sure you include this in @i(Outputfilename).  You can also print out your error files the same way in order to find out what went wrong.  The error files have the name @i(Filename.err).

@blankspace(2 lines)
@u(@b(Scribing Well))

@i(@u(A Brief Note))

Scribe uses what is called "word wrap."  This ability allows the text processor to automatically @i(wrap) a word around the end of the line so that you don't have to keep hitting return.  What you will see is a "\" at the end of each line as you type it.  Don't hit return; just keep on typing.  When you want to designate a new paragraph, hit return @b(twice).  If you don't, it will lump the two paragraphs or lines that you want to be separate into one paragraph.  In addition, Scribe will compress spaces.  So, if you leave a bunch of spaces empty, it will squezze them all together into one space.


@i(@u(What's a device?))

A device is a method of controlling how your output looks.  There are two devices:

@begin(transparent, boxed, columns 2, columnwidth 3.75 inches, columnmargin 0 inches)
@begin(itemize)
Lptln

@newcolumn()

Postscript
@end(itemize)
@end(transparent)

The device lptln produces a very bland output @begin(transparent, font courier, size 13)like this.@end(transparent)  It also prevents you from using any other fonts or doing many neat things.  Postscript, on the other hand, allows you to do a lot more and is just as easy.  To designate a device, put the following line @i(at the top of the document).  It @i(must) be the first line:

@b(@@device(postscript)) or @b(@@device(lptln))

If you do not specify, scribe will assume lptln (and your stuff will look yucky).

@blankspace(2 lines)

@u(@b(Time For) @begin(transparent, font avantgarde, size 18)@p(S)@end(transparent)@begin(transparent, font newcenturyschoolbook, size 18)@p(t)@end(transparent)@begin(transparent, font souvenir, size 18)@p(y)@end(transparent)@begin(transparent, font lubalin, size 18)@p(l)@end(transparent)@begin(transparent, font helvetica, size 18)@p(@g(e))@end(transparent))

In the second line of your document you can use the @@style command to specify all kinds of things to be different from the default.  These are just some of the more common ones available (see the scribe manual for more):

@begin(itemize)
@b(indent) -- how far the beginning of each paragraph should be indented in inches

@b(topmargin) -- width of the top margin (default 1 inch)

@b(bottommargin) -- default 1 inch

@b(leftmargin) -- default 1 inch

@b(rightmargin) -- default 1 inch

@b(spacing) -- @i(Spacing 1) single spaces, @i(Spacing 2) double spaces

@b(spacing) -- @i(Spacing 2 lines) puts 2 lines between paragraphs

@b(font) -- specifies a font (default helvetica)

@b(size) -- specifies the size of the font (default 10)
@end(itemize)

For example, the @@style command for this page is:

@@style(font allpostscriptfonts, size 14, spacing 0 lines, bottommargin 0.7 inches, topmargin 0.5 inches, indent 0 inches)

@tabset(1.5 inches)

@blankspace(2 lines)

@u(@b(Document Types))


The third line of your scribe document can specify a document @i(type).  Scribe has a bunch of ready-made formats available for specific applications:

@begin(itemize)
@b(Text) -- plain text, no frills (the default)

@b(Letter) -- business letter

@b(Resume) -- a resume

@b(Report) -- term papers, reports

@b(Thesis) -- MIT thesis
@end(itemize)

To specify a document type, type the following as the third line:

@b(@@make(report))

For more information on document types, see the @i(Essential Athena) report @i(Scribe Report), or whatever.  You can buy these from Graphic arts in 11-0xx or borrow one from me.

@blankspace(2 lines)

@u(@b(Tabbing over in Scribe))


If you hit the tab key in scribe you will see a "@@\" appear.  If you have not set any tabstops this will do nothing for you.  The following commands are available.  They can be placed anywhere in the document, and work just like on a typewriter.

@begin(itemize)
@b(@@tabset(x inches, y inches....)  -- All distances are measured from the left margin.

@b(@@tabclear()) -- Clears all previous settings.

@b(@@tabdivide(x)) -- Divides the document into x equally spaced columns.  Each use of the tab key moves you over one column.
@end(itemize)

@blankspace(2 lines)
@u(@b(Previewing Documents))

Lptln Documents:

Because @i(lptln) generates relatively simple output, you can view the file (called something like: @i(filename.lpt)) by simply typing:

@begin(transparent, font courier, size 13)
@p(athena%) @b(more) @i(filename.lpt)
@end(transparent)

Postscript Documents:

For postscript documents you have to use the function "@i(viewdoc)."  To do this type:

@begin(transparent, font courier, size 13)
@p(athena%) @b(attach athenadoc) 
@p(athena%) @b(/mit/athenadoc/viewdoc) @i(filename.PS) 
@end(transparent)

You only have to attach athenadoc once each time you log on.

@blankspace(2 lines)
@u(@b(Multiple Columns))

There is a more sophisticated way to type in two columns than using the @@tabdivide command:

@begin(transparent, font courier, size 13)
@@begin(transparent, boxed, columns 2, columnwidth 3.0 inches, columnmargin 0.5 inches)

All kinds of text and stuff that will continue on for pages and pages ....

@@end(transparent)
@end(transparent)

This will format everything between the @@begin and the @@end in two columns just like in a textbook.  The "columnmargin" is the distance between columns.  You can specify any number of columns.  You must include the commands "boxed" and "transparent."  

@blankspace(2 lines)
@u(@b(Other Nifty Commands))

@begin(itemize)
@@Libraryfile(Landscape) -- If you place this at the top of your file and use the command "scribe6 @i(filename.mss)" to process your document, you will get output printed the wide way on the paper.

@@newpage(0) -- This will cause a page break right where you put the command.

@@blankpage(3) -- This will leave 3 blank pages starting at the next pagebreak.  They will be numbered.

@@begin(itemize) and @@end(itemize)  -- Stuff put between these commands will be itemized with bullets (like this stuff).

@@begin(enumerate) and @@end(enumerate) -- Just like itemize, except it will number things.  You can nest multiple enumerates inside each other to create a numbered and lettered outline.

@@begin(multiple)  and @@end(multiple) -- This will treat the text in between as one entry for the purposes of enumerate and itemize.

@@newcolumn() -- This will end a column and start on the next if you have specified multiple columns.

@@blankspace(1 inch) or @@blankspace(2 lines)  -- This will leave the designated amount of verical space blank.

@@center(text...) -- This will center up to one line of text in the middle of the page.
@end(itemize)

@blankspace(2 lines)
@u(@b(Typefaces in Scribe))

The following typeface commands are available within fonts:

@blankspace(1 line)

@begin(group)
@b(@@r [phrase]) @\-- The normal typeface (Roman)

@b(@@b [phrase]) @\-- @b(Bolded typeface)

@b(@@i [phrase]) @\-- @i(Italics)

@b(@@p [phrase]) @\-- @p(Bold Italics)

@b(@@c [phrase]) @\-- @c(Small Capitals)

@b(@@u [phrase]) @\-- @u(Underline non-blank characters)

@b(@@ux [phrase]) @\-- @ux(Underline all characters)

@b(@@un [phrase]) @\-- @un(Underline all alpha-numeric characters)

@b(@@t [phrase]) @\-- @t(typewriter font)

@b(@@+ [phrase]) @\-- super@+(script)

@b(@@- [phrase]) @\-- sub@-(script)

@b(@@g [phrase]) @\-- @g(Greek)
@end(group)

@blankspace(2 lines)

@b(@u(Non-standard Fonts))

You can specify a different fonts for your entire Scribe document by including the following lines at the beginning of your file:

@\@@Device(PostScript)

@\@@Style(FontFamily @i(name), Size @i(n))

Where `@i(n)' is the size in 1/72 of a inch, with the default being 10 and
normal values between 10 and 14, and `@i(name)' is one of the following:

@begin(group)
@begin(enumerate)
@begin(transparent, font times, size 13)         
@p(TimesRoman)             @\- standard font,  newspaper
@end(transparent)
          
@begin(transparent, font newcenturyschoolbook, size 13)         
@p(NewCenturySchoolBook)   @\- same, wider and rounder
@end(transparent)
         
@begin(transparent, font helvetica, size 13)         
@p(Helvetica)              @\- no serifs (hooks on letters)
@end(transparent) 
         
@begin(transparent, font avantgarde, size 13)         
@p(AvantGarde)             @\- as Helvetica, thin and round
@end(transparent)
          
@begin(transparent, font lubalin, size 13)         
@p(LubalinGraph)           @\- like AvantGarde with serifs
@end(transparent)
          
@begin(transparent, font souvenir, size 13)         
@p(Souvenir)               @\- small serifs
@end(transparent)
@end(enumerate)
@end(group)


@blankspace(2 lines)
@u(@b(Using More than one Font in Scribe))

If you want to use more than one font in a Scribe document, here is what to
do:

@blankspace(1 line)
@begin(enumerate)

   Place "@i(@@Device(PostScript))" at the top of your file.

@blankspace(1 line)
@begin(multiple)
   Place  "@i(@@Style(Font  AllPostScriptFonts, Size 12))" right after
      that.  You can also specify different sizes.  The default is "10".

      This will define a variety of Fonts, each of  which  is  a  standard
      PostScript FontFamily.  The default fonts are "NewCenturySchoolBook"
      for text and "Helvetica" for Headings.

  On an  Athena  PostScript  printer,
      you can use the following Fonts:

@blankspace(0.5 line)

@begin(group)         
@begin(enumerate)
@begin(transparent, font times, size 13)
@p(Times)                  - standard font,  newspaper
@end(transparent)

            
@begin(transparent, font newcenturyschoolbook, size 13)
@p(NewCenturySchoolBook)   - same, wider and rounder
@end(transparent)

            
@begin(transparent, font helvetica, size 13)
@p(Helvetica)              - no serifs (hooks on letters)
@end(transparent)

            
@begin(transparent, font avantgarde, size 13)
@p(AvantGarde)             - as Helvetica, thin and round
@end(transparent)

            
@begin(transparent, font lubalin, size 13)
@p(Lubalin)                - like AvantGarde with serifs
@end(transparent)

            
@begin(transparent, font souvenir, size 13)
@p(Souvenir)               - small serifs
@end(transparent)

            
@begin(transparent, font courier, size 13)
@p(Courier)                - fixed-width typewriter font
@end(transparent)
@end(enumerate)
@end(group)

@blankspace(0.5 line)

      @i(Note that the Fonts "Times" and "Lubalin" are named differently than
      the FontFamilies "TimesRoman" and "LubalinGraph".)

@end(multiple)

@blankspace(1 line)

@begin(multiple)
  To specify that a particular font be used in a certain area, use:

                  @@Begin(Transparent, Font @i(name), Size @i(size))
                          
This will be printed in font @i(name), with the specified @i(size), where the number for size corresponds to 1/72's of an inch and 12 is tupical (This document is in 13).

                  @@End(Transparent)

@end(multiple)
@end(enumerate)

@tabclear()
@tabset(0.5 inch, 1.6 inch, 2.7 inches, 3.8 inches, 4.9 inches)
@begin(transparent, spacing 0 lines)
@begin(group)

@u(@b(Greek Letters and Symbols in Scribe))
@blankspace(1 line)

@\  @\      @\@ux(Greek Letters) @\@u(Symbols)

@blankspace(0.5 lines)

@\letter@\@@g( )@\LETTER@\@@g(CAPS)@\@@Y(CAPS)
@bar(0)

@blankspace(0.5 lines)

@\a @\@g(a) @\A @\@g(A)@\-None-

@\b @\@g(b) @\B @\@g(B)@\@Y(B)

@\c @\@g(c) @\C @\@g(C)@\@Y(C)

@\d @\@g(d) @\D @\@g(D)@\-None-

@\e @\@g(e) @\E @\@g(E)@\-None-

@bar(0)

@blankspace(0.5 lines)

@\f @\@g(f) @\F @\@g(F)@\-None-

@\g @\@g(g) @\G @\@g(G)@\-None-

@\h @\@g(h) @\H @\@g(H)@\-None-

@\i @\@g(i) @\I @\@g(I)@\-None-

@\j @\-None- @\J @\-None-@\-None-

@bar(0)

@blankspace(0.5 lines)

@\k @\@g(k) @\K @\@g(K)@\-None-

@\l @\@g(l) @\L @\@g(L)@\-None-

@\m @\@g(m) @\M @\@g(M)@\@Y(M)

@\n @\@g(n) @\N @\@g(N)@\@Y(N)

@\o @\@g(o) @\O @\@g(O)@\-None-

@bar(0)

@blankspace(0.5 lines)

@\p @\@g(p) @\P @\@g(P)@\@Y(P)

@\q @\@g(q) @\Q @\@g(Q)@\-None-

@\r @\@g(r) @\R @\@g(R)@\@Y(R)

@\s @\@g(s) @\S @\@g(S)@\@Y(S)

@\t @\@g(t) @\T @\@g(T)@\@Y(T)

@bar(0)

@blankspace(0.5 lines)

@\u @\@g(u) @\U @\@g(U)@\-None-

@\v @\-None- @\V @\-None-@\-None-

@\w @\@g(w) @\W @\@g(W)@\-None-

@\x @\@g(x) @\X @\@g(X)@\-None-

@\y @\@g(y) @\Y @\@g(Y)@\-None-

@\z @\@g(z) @\Z @\@g(Z)@\-None-

@end(group)
@end(transparent)











@appendixsection(TeX and LaTex)
@blankspace(1 line)

I know very little about these post-processors, as they have just been introduced to the system.

@appendixsection(Spell-Checking)
@blankspace(1 line)

There is a spell checker on Athena known as Ispell.  It can be used by typing:

@begin(transparent, font courier, size 14)
@b(athena% ispell) @p(filename)
@end(transparent)

This will spellcheck the named file.  If you hit a space it will skip a word, hit the number, it will take that suggestion as a replacement, "r" will allow you to type the replacement, "a" accepts it for the rest of the session, and "i" includes it into your dictionary.

It can also be started from inside emacs.  If you type Meta-$ this will spell check the following word.  For those who would rather use ispell from inside of emacs, type:

M-x ispell        

(M-x is the Compose or Alt and x keys pressed at the same time)  Now the following commands are available for the duration of your emacs session.

@begin(itemize)
      M-x ispell-word         - @i(Checks word)

      M-x ispell-buffer       - @i(Checks buffer (current file))

      M-x ispell-region       - @i(Checks region)
@end(itemize)

When ispell finds a word that is not in its dictionary, it will outline the
word in reverse video (from emacs it will respond with a message that says,
"Enter letter to replace word; space to flush") If there are "near misses"
in the dictionary, ispell will also display the incorrect word and a list
of correct alternatives at the top if they exist.

At this point, you can type one of the following characters:

@begin(itemize)
@b(r) -- Replace Word -- Ispell asks you for a replacement word.  Ispell will NOT check this word.

@b(#) -- Replace Word with suggested word -- The words at the top of the screen are numbered.  If you type a word's number, ispell will use this word as a replacement.

@b(<space>) -- Skips Word -- Leave this word as is.  If this word is encountered again, ispell will stop and prompt you for an action.

@b(a) -- Accept Word -- Accept this word as correct for remainder of ispell session (or emacs if you are using ispell in emacs).

@b(i) -- Add Word -- Add this word to your personal dictionary. This is a file in your home directory called .ispell.words which tells ispell to accept the word as correct every time you use ispell (useful for things like your name).
 
@b(<CTRL-G>) -- Quit Ispell -- You can quit ispell at any time by pressing <CTRL-G>.  This is done by holding down the CTRL key and pressing "G".
@end(itemize)

The man page on ispell lists more options and gives more detailed
information on this program. 

@begin(transparent, font courier, size 14)
@b(athena% man ispell)
@end(transparent)



@appendix(Spreadsheets)
@blankspace(1 line)

There are two spreadsheets available on the Athena system, 2020 and RS1.  2020 is basically a Lotus 123 clone for mainframe systems.  We recently received Version 2 of 2020.  RS1 is a highly powerful, non-user-friendly system about which I know very little.

@appendixsection(2020)
@blankspace(1 line)

I've used the old version of 2020 a fair amount, but I'm not yet all that familiar with the new one.  It's a lot like Lotus, as mentioned before, although some of the commands are kind of flaky.   In addition, you do not have to specify the "@@" sign in front of the functions, so what was @@sum is now just sum.  For this reason, if you want to title a cell 

@begin(transparent, font courier, size 14)
experience
@end(transparent)

you have to type:

@begin(transparent, font courier, size 14)
'experience
@end(transparent)

or else it will think you are trying to incorrectly use the exponential command.

If there is a way to center justify text in a column, I don't know it (^ doesn't work).  If you find out how, tell me.

I have yet to use the graphics package yet (the old one didn't work), so I'll be interested in your comments.

There are some predefined keys now for 2020, the list of them is given below from @begin(transparent, font courier, size 14)
@b(/mit/2020.r2/doc/keys.2020:)
@end(transparent)

@tabclear()
@tabset(2 inches)
Key@\2020 Function
@bar(0)

PF1@\PAGE (with arrow keys -- ie move by screenwidths)

PF2@\LIST

PF3@\EDIT toggle -- lets you move the cursor within a cell

PF4@\user programmable

F17@\user programmable

F18@\user programmable

F19@\user programmable

F20@\user programmable

control b@\EDIT move left 1 character

control d@\delete character under cursor

control e@\END

control f@\EDIT move right 1 character	

control h@\BACKOUT (ie escape)

control n@\move down 1 cell

control p@\move up 1 cell

control t@\HOME

Help@\HELP

Do@\DO

>@\GOTO (now type a cell location)

up arrow@\move up 1 cell

down arrow@\move down 1 cell

right arrow@\move right 1 cell

left arrow@\move left 1 cell

@bar(0)
@blankspace(1 line)

To start up 2020, type:

@begin(transparent, font courier, size 14)
@b(athena%) @p(attach 2020.r2)

@b(athena%) @p(/mit/2020.r2/vaxbin/s2020)
@end(transparent)

and hit return when it asks about terminal type.

If you want to learn more about 2020 there is supposed to be an online tutorial available by typing:

@begin(transparent, font courier, size 14)
@b(athena%) @p(attach 2020.r2)

@b(athena%) @p(/mit/2020.r2/vaxbin/t2020)
@end(transparent)

For more information, try the Athena consultants, or other sources listed in where to find help.

@appendixsection(RS1)
@blankspace(1 line)


The best source of information on RS1 is probably the athenadoc locker.  The @i(Essential  RS1) documents can be read with viewdoc or printed to our printer.  Also see the section on where to get help.

@appendix(Programming)
@blankspace(1 line)


There are several programming languages available on Athena.  Not all are necessarily supported by Athena (which means they're not obliged to give you straight answers).  C is rapidly becoming the programming language of choice.  If you spend time learning any language here it should be C.  If you don't take that advice then at least learn fortran; everything else is quickly becoming worthless (Fortran only slowly so).  There are debuggers for most of the languages and all sorts of intricate, useful, handy, timesaving, and timesinking ways to use the compilers.  

@appendixsection(BASIC)
@blankspace(1 line)

There are several programming languages available on Athena.  BASIC is not one of them.  If this is the only language you know, time to learn a new one.  Although a fair amount of old code is written in FORTRAN, almost everything new is coming out in C, so I would tend to recommend it.  

@appendixsection(FORTRAN77)
@blankspace(1 line)

There is a fortran compiler available on the system, and it appears to be fairly standard.  For more information, type: 

@begin(transparent, font courier, size 14)
@b(athena%) @p(man f77)
@end(transparent)

This appears to be a pretty standard fortran, complete with debugger.  In addition, there is a manual in the documentation rack floating around the classroom.  The best source is probably the documentation in the athenadoc locker (See the section on where to get help).  The compiler is activated by @b(f77) @i(filename.f), and produces an executable file called a.out.

@appendixsection(PASCAL)
@blankspace(1 line)

I here there is a compiler here somewhere, not that it matters (you'd be the only one outside of course 6 using PASCAL).

@appendixsection(C)
@blankspace(1 line)

There are a couple of different versions available.  The new 6.2A release has a new version of High C for the IBM PC/RT.  There is another version of C floating around for both types of machines but I don't know what its called.  The C compiler used most on athena is called @i(cc), and is activated by @b(cc) @i(filename.c).  It produces an executable file called a.out.  The athenadoc locker has considerable information on C (see the where to get help section for more on the athenadoc locker).  See the manual racks for more info, or the olc stock answers.  

@appendixsection(LISP)
@blankspace(1 line)

I hear Athena supports LISP, but I know nothing about it.

@appendixsection(Scheme)
@blankspace(1 line)

Athena used to support Scheme, but not anymore.  The executables are still available in the Scheme locker for those who care.

@appendix(Computer Aided Drafting/Design)
@blankspace(1 line)

@appendixsection(PED)
@blankspace(1 line)

There is a very rudimentary 2 dimensional drafting capability on athena known as @b(ped).  If you have ever used MacDraw, ped will be very familiar.  The User's Manual is available from Project Athena, but I should warn you that its enormous so you would probably spend more time looking than learning.  

There is a program for drawing diagrams and pictures on Athena similar to MacDraw.  It is called the BLOX Picture Editor.  The program is a mouse driven draw program that lets you create pictures, diagrams, etc.  You can also include text in your pictures.  The ped program runs best on DEC VAX workstations.  To use the program type:

@begin(transparent, font courier, size 14)
@b(athena%) @p(attach  beta)

@b(athena%) @p(source  /mit/beta/vaxblox/bgbsetup)

@b(athena%) @p(ped  file.PIC)
@end(transparent)

If you are on an IBM RT, type "source /mit/beta/rtblox/bgbsetup" and then "ped file.PIC".  The ped program may be slow when run on the RT's.

There are "click boxes" for help, drawing functions, deleting, printing, and exiting/saving.  All mouse keys do the same thing.  When you click on "hcopy1", a postscript file will be created in the directory in which you started ped.  The hardcopy file will be named something like "ped000.PS" or "ped001.PS" This is the file that can be printed on any PostScript printer.  Pictures are saved when you exit with the name "file.PIC".

The "main menu" is the collection of 4 boxes in the upper left hand corner.  The options are:

@begin(itemize)
Draw

Delete

Undo

Options (the arrow "button")
@end(itemize)

The options selections includes one called "transforms".  This selection allows cutting, pasting, moving, copying, scaling, rotating, and gobs of other goodies.

@appendixsection(Other Stuff)
@blankspace(1 line)

There are several other MacDraw-like drafting programs on athena.  I know almost nothing about them.  The list of the ones I know to exist follows:
@blankspace(1 line)
@tabclear()
@tabset(1.5 inches, 3 inches)

@begin(group)
@u(Name  @\Function    @\How to use)

idraw    @\MacDraw     @\attach sipb

         @\            @\/mit/sipb/vaxbin/idraw

xfig     @\MacDraw     @\attach sipb

         @\            @\/usr/sipb/vaxbin/xfig

ped      @\MacDraw     @\listed above
@end(group)

@blankspace(1 line)

In addition, there are some other graphics programs available, about which I know similarly little.
@blankspace(1 line)
@begin(group)
@u(Name  @\Function    @\How to use)

xmath    @\Plotting +  @\attach xmath

         @\            @\/mit/xmath/xmath

prochart @\Grapher     @\attach prochart

         @\            @\/mit/prochart/prochart

matlab   @\Math & Plot @\attach courseware

         @\            @\/mit/courseware/matlab/matlab

macsyma  @\Symbolic Math@\macsyma

matrixx  @\Grapher +   @\attach courseware

         @\            @\/mit/courseware/matrixx/matrixx
@end(group)
@tabclear()



@appendixsection(The future of CAD on Athena)
@blankspace(1 line)

Project Athena is going to implement a new 3D CAD system in the near future (possibly as early as January 1990).  The package has yet to be decided on.



@appendix(Games)
@blankspace(1 line)

There are several excellent games available on athena.  One of the truly nifty things is that some of them allow two or more people to play against each other, all on different terminals.  In order to get to the games type:

@begin(transparent, font courier, size 14)
@b(athena%) @p(attach games)

@b(athena%) @p(cd /mit/games/vaxbin)  @i(if you're on a VAXstation)

@b(athena%) @p(cd /mit/games/rtbin)  @i(if you're on an IBM PC/RT)

@b(athena%) @p(ls)
@end(transparent)

Then try typing the name of the game of your choice.  Some of the good ones are:

@begin(itemize)
xtank

xconq5

aliens

moria

omega

ogre
@end(itemize)

Both xtank and xconq allow multiple players.  Usually these games list where you can get help.  

Have fun!











@appendix(Useful Commands in Unix)
@blankspace(1 line)

Norbert H. Doerry
21 April 1988 :: Revised 31 May 1989 :: Incorporated IRB-6/13/89 :: Revised IRB-8/21/89 :: Revised IRB-9/04/89

This document is intended to be a quick reference for the UNIX commands most commonly used.  Use the 'man' command to find out more about a specific command. The Athena ESSENTIAL series is also an excellent source of information.

Other sources of information:

@begin(transparent, font newcenturyschoolbook, size 14)
@begin(itemize)

ATHENA Consultants: (x3-4435) 11-1xx.  Generally useful if you can get a hold of one.
  
SIPB (Student Information Processing Board):   This group is newly relocated over to the fifth floor of the student center, in room W20-525 or there-abouts.  These people are a bunch of 'hackers' who probably know more about ATHENA than the ATHENA people themselves.  They are usually very eager to answer questions and provide help.

OLC (ONLINE CONSULTANT) : Enter 'olc' when logged on a workstation.  You will be prompted by the program to enter your question  If a consultant is available, he/she will answer your question with a return message.

@end(itemize)
@end(transparent)

@bar(0)	

@u(@p(Some Common Commands:))

@blankspace(1 line)

@begin(transparent, leftmargin 2.0 inches, indent -1.5 inches, spacing 0 lines, font courier, size 14)
@tabset(0 inches)

@begin(transparent, font newcenturyschoolbook, size 14)
The Format for all of the commands listed is:
@end(transparent)
@blankspace(1 line)

@b(Command) @i(Qualifier #1) @i(Qualifier #2) @i(...)
@blankspace(0.5 lines)

@\example of the command
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\Description
@end(transparent)

@blankspace(3 lines)





@b(alias) @i(name) @i(command)         
@blankspace(0.5 lines)

@\alias screendump 'xwd|xpr|lpr'
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\This command allows you to rename a command to something more managable.  It only works in the terminal window that you execute the command in.  (You can put this command in your .cshrc file so that it gets executed everytime you open a new window)
@end(transparent)


@blankspace(1 line)
@b(apropos) @i[topic]
@blankspace(0.5 lines)

@\apropos system
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\This is a 'help' function that prints possible commands related to a specified topic.
@end(transparent)



@blankspace(1 line)
@b(attach) @i[locker]
@blankspace(0.5 lines)

@\attach 13.411
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\attaches course locker so that you can gain access to its files and programs.
@end(transparent)



@blankspace(1 line)
@b(cat) @i[filename]
@blankspace(0.5 lines)

@\cat test
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\Displays the contents of a file on the screen.
@end(transparent)



@blankspace(1 line)
@b(cat -n) @i[filename]
@blankspace(0.5 lines)

@\cat -n test
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\Displays the contents of a file along with line numbers.
@end(transparent)



@blankspace(1 line)
@b(cd) @i[directory path]
@blankspace(0.5 lines)

@\cd /mit/nhd/tester
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\Changes your current directory
@end(transparent)



@blankspace(1 line)
@b(chmod) @i[numb] @i[filename]
@blankspace(0.5 lines)

@\chmod 755 test
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\This changes the permissions on a file or directory.  'numb' is a three digit octal number which indicates what the permissions should be.  Use the 'ls -l' command to see what permissions are presently on the file.  Here are a few common 'numbs' used:
@blankspace(0.5 lines)

@\700  Allows you to read, write, execute the file but no one else

@blankspace(0.5 lines)
@\744  Allows you to do everything, others can read (copy) your file

@blankspace(0.5 lines)
@\755  Allows you to do everything, others can read (copy) and execute your file

@blankspace(0.5 lines)
@\777  Allows everyone to do anything to your file.

@blankspace(0.5 lines)
@\Note: The directory your file is in must also have the the proper protections set.  Use 'chmod' for directories as well.
@end(transparent)


@blankspace(1 line)
@b(cp) @i[from filename] @i[to filename]     
@blankspace(0.5 lines)

@\cp /mit/nhd/tester/test testa
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\Copy contents of a file from one file to another.
@end(transparent)


@blankspace(1 line)
@b(cp) @i[from filename] .                 
@blankspace(0.5 lines)

@\cp /mit/nhd/tester/test .
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\Copy file to the current directory.  Keep the same name.
@end(transparent)


@blankspace(1 line)
@b(detach) @i[locker]       
@blankspace(0.5 lines)

@\detach 13.411
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\Detach course locker after you are completed with it.
@end(transparent)


@blankspace(1 line)
@b(dirs) 
@blankspace(0.5 lines)

@\dirs
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\Shows the current working directory of that window.  Faster than pwd.
@end(transparent)


@blankspace(1 line)
@b(emacs) @i[filename] &                   
@blankspace(0.5 lines)

@\emacs test &
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\This is the text editor for the UNIX system.  See Essential Emacs.  The '&' executes the program in 'background' so that your original window is free to execute other commands.  It will still work if you leave it off.
@end(transparent)

@blankspace(1 line)
@b(exit)
@blankspace(0.5 lines)

@\exit
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\kills the window your in.  If you are in the original window you will logout.
@end(transparent)



@blankspace(1 line)
@b(logout)
@blankspace(0.5 lines)

@\logout
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\logs you off of the terminal.
@end(transparent)



@blankspace(1 line)
@b(lpq)
@blankspace(0.5 lines)
                
@\lpq
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\show the status of the printer jobs for the default printer.
@end(transparent)


@blankspace(1 line)
@b(lpq -P)@i[printer]                      
@blankspace(0.5 lines)

@\lpq -Plinus
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\show the status of the printer jobs for the specified printer.
@end(transparent)



@blankspace(1 line)
@b(lpr) @i[filename]                       
@blankspace(0.5 lines)

@\lpr test
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\prints the file to the default printer
@end(transparent)



@blankspace(1 line)
@b(lpr -p) @i[filename]                    
@blankspace(0.5 lines)

@\lpr -p test
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\prints the file to the default printer with page numbers and margins
@end(transparent)



@blankspace(1 line)
@b(lpr -P)@i[printer] @i[filename]           
@blankspace(0.5 lines)

@\lpr -Plinus test
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\prints the file to the specifed printer
@end(transparent)



@blankspace(1 line)
@b(ls)
@blankspace(0.5 lines)
                                   
@\ls
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\show the contents of the current directory.
@end(transparent)



@blankspace(1 line)
@b(ls)  @i[directory]                       
@blankspace(0.5 lines)

@\ls /mit/nhd/testa
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\show the contents of the specified directory.
@end(transparent)
 


@blankspace(1 line)
@b(ls -a)
@blankspace(0.5 lines)

@\ls -a
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\show all of the files, including files beginning with a '.'
@end(transparent)



@blankspace(1 line)
@b(ls -l)
@blankspace(0.5 lines)

@\ls -l
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\show the contents along with additional information of the current directory.
@end(transparent)




@blankspace(1 line)
@b(man) @i[command]
@blankspace(0.5 lines)

@\man lpr
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\displays the UNIX Manual page for the specified command.
@end(transparent)



@blankspace(1 line)
@b(mkdir) @i[directory]                    
@blankspace(0.5 lines)

@\mkdir testb
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\make a directory
@end(transparent)




@blankspace(1 line)
@b(more) @i[filename]
@blankspace(0.5 lines)
                      
@\more test
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\Displays the contents of a file, one page at a time.  Hit
		a space bar to go forward one page, 'b' to go back one page,
		Return to go forward one line.
@end(transparent)



@blankspace(1 line)
@b(mv) @i[from file] @i[to file]              
@blankspace(0.5 lines)

@\mv test testa
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\moves the contents of a file from one file to another.  The first file is then deleted.  This is how you rename a file as well.
@end(transparent)



@blankspace(1 line)
@b(pwd)
@blankspace(0.5 lines)
 
@\pwd
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\print working directory.
@end(transparent)



@blankspace(1 line)
@b(quota -v)
@blankspace(0.5 lines)
 
@\quota -v
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\Shows how much memory you have available and how much has been used.
@end(transparent)


@blankspace(1 line)
@b(rm) @i[filename]	                     
@blankspace(0.5 lines)

@\rm test
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\removes the file.  Caution 'rm' is forever.  Be very careful if you use 'wild cards' in the filename.  Recommend using rm -i.
@end(transparent)



@blankspace(1 line)
@b(rm -i) @i[filename]
@blankspace(0.5 lines)

@\rm -i test
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\removes the file, but asks you for a confirmation response.  If you use 'wild cards' in the filename, you should use this command to eliminate the possibility of killing the wrong files.
@end(transparent)




@blankspace(1 line)
@b(rmdir) @i[directory]                    
@blankspace(0.5 lines)

@\rmdir testb
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\removes the specified directory.
@end(transparent)


@blankspace(1 line)
@b(setenv PRINTER) @i[printer]                    
@blankspace(0.5 lines)

@\setenv PRINTER @i(printername)
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\Sets the designated printer to be the default.
@end(transparent)


@blankspace(1 line)
@b(set lineedit)
@blankspace(0.5 lines)

@\set lineedit
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\Allows the use of a history of commands.  Hitting the up and down arrows when at the athena prompt will list the previous 20 commands used.  They can be editted and reused.
@end(transparent)




@blankspace(1 line)
@b(xcalc &)
@blankspace(0.5 lines)

@\xcalc &
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\creates a 'TI' calculator on the workstation
@end(transparent)



@blankspace(1 line)
@b(xcalc -rpn &)
@blankspace(0.5 lines)
                         
@\xcalc -rpn &
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\creates an 'HP' calculator on the workstation
@end(transparent)



@blankspace(1 line)
@b(xclock & )
@blankspace(0.5 lines)

@\xclock &
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\creates an analog clock on the workstation
@end(transparent)




@blankspace(1 line)
@b(xwd | xpr -device ps | lpr)
@blankspace(0.5 lines)

@\xwd | xpr -device ps | lpr
@blankspace(0.5 lines)

or
@blankspace(0.5 lines)

@b(xdpr -device ps)                         
@blankspace(0.5 lines)

@\xpdr -device ps
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\performs a screendump of a window to the default printer.  After you enter this command, the cursor will change to a cross hair.  Move the cross hair to the window you want dumped, and hit one of the mouse buttons.  You should hear a single beep, followd by two beeps.  A short time later the printer will churn out the picture.
@end(transparent)



@blankspace(1 line)
@b(xterm &) 
@blankspace(0.5 lines)
                             
@\xterm &
@blankspace(0.5 lines)

@begin(transparent, font newcenturyschoolbook, size 14)
@\create a new window.  Shortly after entering the command, the cursor will change to a left corner.  Press the left button mouse for a default sized window.  For a user specified window size, Press the middle button, then drag the mouse until the window is of the proper size.
@end(transparent)

@end(transparent)

@p(@u(Logging Out))

After you are done, you can log out by entering :

@begin(transparent, font courier, size 14)
@b(athena% logout)
@end(transparent)
or

@begin(transparent, font courier, size 14)
@b(athena% exit)
@end(transparent)

in your original window.


@p(@u(Notes:))
@begin(enumerate)
@begin(multiple)
For a listing of the common unix commands enter:

@begin(transparent, font courier, size 14)
@b(athena% more /mit/13.411/junk/unix.doc)
@end(transparent)

You can print this file on the default printer by entering:

@begin(transparent, font courier, size 14)
@b(athena% lpr -P)@i(printername) @b(/mit/13.411/junk/unix.doc)
@end(transparent)
@end(multiple)

The 'alias' command can make your life a lot easier by allowing you to assign a short name to a long command.  See unix.doc for more information.  In addition, if you are used to another operating system (such as VMS), you can force unix to look like something you understand (ie. change ls -l to dir). 

@begin(multiple)
You can create a .cshrc.mine file so that your favorite aliases are executed automatically whenever you open a new window.  The file /mit/13.411/junk/cshrc.mine contains a number of aliases that may be of use. To replace your .cshrc.mine with this file, enter the following commands

@begin(transparent, font courier, size 14)
@b(athena% attach 13.411)

@b(athena% cp /mit/13.411/junk/cshrc.mine .cshrc.mine)
@end(transparent)
@end(multiple)

@begin(multiple)
Likewise, you can create a .startup.X file as well.

@begin(transparent, font courier, size 14)
@b(athena% attach 13.411)

@b(athena% cp /mit/13.411/junk/login.mine .startup.X)
@end(transparent)
@end(multiple)
@end(enumerate)


@end(transparent)

	



