pifty
/
tutes-dump
Archived
1
1
Fork 1
This repository has been archived on 2020-07-16. You can view files and clone it, but cannot push or open issues or pull requests.
tutes-dump/site-tutorials/unx/node7.html

615 lines
20 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<!--Converted with LaTeX2HTML 2K.1beta (1.50)
original version by: Nikos Drakos, CBLU, University of Leeds
* revised and updated by: Marcus Hennecke, Ross Moore, Herb Swan
* with significant contributions from:
Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
<HTML>
<HEAD>
<TITLE>6. Super Dimension Fortress</TITLE>
<META NAME="description" CONTENT="6. Super Dimension Fortress">
<META NAME="keywords" CONTENT="unx">
<META NAME="resource-type" CONTENT="document">
<META NAME="distribution" CONTENT="global">
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<META NAME="Generator" CONTENT="LaTeX2HTML v2K.1beta">
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
<LINK REL="STYLESHEET" HREF="unx.css">
<LINK REL="next" HREF="node8.html">
<LINK REL="previous" HREF="node6.html">
<LINK REL="up" HREF="unx.html">
<LINK REL="next" HREF="node8.html">
</HEAD>
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html236"
HREF="node8.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
SRC="../img/latex2html/next.png"></A>
<A NAME="tex2html232"
HREF="unx.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
SRC="../img/latex2html/up.png"></A>
<A NAME="tex2html226"
HREF="node6.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
SRC="../img/latex2html/prev.png"></A>
<A NAME="tex2html234"
HREF="node1.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents"
SRC="../img/latex2html/contents.png"></A>
<A NAME="tex2html1"
HREF="../"><IMG
ALIGN="BOTTOM" SRC="../img/latex2html/root.png"
ALT="root">
</A>
<BR>
<B> Next:</B> <A NAME="tex2html237"
HREF="node8.html">7. Programming</A>
<B> Up:</B> <A NAME="tex2html233"
HREF="unx.html">Introduction to Unix &amp;</A>
<B> Previous:</B> <A NAME="tex2html227"
HREF="node6.html">5. Learning More</A>
&nbsp <B> <A NAME="tex2html235"
HREF="node1.html">Contents</A></B>
<BR>
<BR>
<!--End of Navigation Panel-->
<!--Table of Child-Links-->
<A NAME="CHILD_LINKS"><STRONG>Subsections</STRONG></A>
<UL>
<LI><A NAME="tex2html238"
HREF="#SECTION00710000000000000000">6.1 Getting Information on SDF</A>
<LI><A NAME="tex2html239"
HREF="#SECTION00720000000000000000">6.2 COM Mode</A>
<UL>
<LI><A NAME="tex2html240"
HREF="#SECTION00721000000000000000">6.2.1 COM Commands Discussion</A>
<LI><A NAME="tex2html241"
HREF="#SECTION00722000000000000000">6.2.2 COM Session Example</A>
<LI><A NAME="tex2html242"
HREF="#SECTION00723000000000000000">6.2.3 What to Do if You Are Caught in the Newbie Loop</A>
<LI><A NAME="tex2html243"
HREF="#SECTION00724000000000000000">6.2.4 COM History</A>
</UL>
<BR>
<LI><A NAME="tex2html244"
HREF="#SECTION00730000000000000000">6.3 Bulletin Board</A>
</UL>
<!--End of Table of Child-Links-->
<HR>
<H1><A NAME="SECTION00700000000000000000">
6. Super Dimension Fortress</A>
</H1>
<P>
Here is some quick reference information about using
<A NAME="tex2html15"
HREF="http://sdf.lonestar.org/">Super Dimension
Fortress</A> (SDF). I'm not a
member of SDF's staff, so the information here is not
definitive. If you find a discrepancy between what I say
&amp; how things actually work on SDF, it's an error in what
I've said, not in how SDF behaves.
<P>
<H1><A NAME="SECTION00710000000000000000">
6.1 Getting Information on SDF</A>
</H1>
<P>
Use the <EM>faq</EM> or <EM>help</EM> commands to get information
about SDF. These are not standard unix programs. They are
specific to SDF.
<P>
The <EM>help</EM> command mostly gives you lists of other
commands. If you type ``<TT>help</TT>'', you'll see a menu
like this:
<P>
<PRE>
SDF Help System - v8, 1993 - sdf!smj
[a] Directory and File Utilities
[b] Email Information
[c] USENET Information
[d] User and Process Information
[e] Tutorials and Very Useful Commands
[f] ARPA Services (internetworking)
[g] Homepage, VHOST and MetaARPA Utilities
[q] Quit SDF Help System
Your Choice?
For more help, type 'faq'
For a list of basic UNIX commands, type 'unix'
to remove your account, type 'delme'
</PRE>
<P>
Most of the letters in the menu will give you lists of
commands. After you quit the <EM>help</EM> program with
``<TT>q</TT>'', you could run the commands or read more about
them in the online manual I discussed earlier.
Some of the programs are specific to SDF &amp; are not
discussed in the man. SDF's excellent <EM>com</EM> program is
an example of a program that is not discussed in the man.
<P>
To me, the <EM>faq</EM> program is more useful. In it, you can
find short explanations of unix file permissions, uploading
&amp; downloading, SDF's policies, &amp; the history of SDF.
<P>
To enter the faq, type ``<TT>faq</TT>'' on the command line, &amp; the <EM>faq</EM> program gives
you a list of sections. This is faq's main menu. You can
exit by typing ``<TT>q</TT>'' here. If you type ``<TT>g</TT>'', it will
ask you for the name of a section. You enter a section
name &amp; press return, &amp; you'll see the section's menu.
<P>
In a section's menu, you have a numbered list of questions
or topics. If you type ``<TT>g</TT>'', &amp; press return, you'll see
main menu again. If you type ``<TT>t</TT>'', you'll be prompted for
the number of a question or topic. Type that &amp; press
return. You should type the number exactly as it appears in
the menu, including leading zeros.
<P>
Some things you can learn from the <EM>faq</EM> include:
<P>
<UL>
<LI>SDF's policies (&amp; prices, methinks)
</LI>
<LI>brief history of unix
</LI>
</UL>
<P>
<H1><A NAME="SECTION00720000000000000000"></A>
<A NAME="com-mode"></A>
<BR>
6.2 COM Mode
</H1>
<P>
SDF has its own chat system, called <TT>com</TT>. It's like a
stripped-down IRC, but much cooler than IRC because people
actually talk, &amp; you don't get unwanted pop-up download
files &amp; you don't have tons &amp; tons of bots waiting to
download ``warez''. Anyway, <TT>com</TT> is like IRC except
that <TT>com</TT> is cool.
<P>
To use com, type ``<TT>com</TT>'' on the command line. You'll
be plopped into the lobby, which is the default room.
<P>
Com uses <EM>single-key commands</EM> mostly. If you are new to <TT>com</TT>, you might want to read <A HREF="#com-command-discussion">COM Command
Discussion</A> in this same
article. If you are having trouble exiting from the <TT>com</TT> program, then you definitely need to read <A HREF="#com-command-discussion">COM Command
Discussion</A>.
<P>
Table&nbsp;<A HREF="node7.html#tab-com-commands">6.1</A> shows the most frequently
needed <TT>com</TT> commands.
<P>
<BR><P></P>
<DIV ALIGN="CENTER"><A NAME="485"></A>
<TABLE>
<CAPTION><STRONG>Table 6.1:</STRONG>
The most frequently needed commands for <TT>com</TT></CAPTION>
<TR><TD><TABLE CELLPADDING=3 BORDER="1">
<TR><TD ALIGN="RIGHT"><B>key</B></TD>
<TD ALIGN="LEFT"><B>meaning</B></TD>
</TR>
<TR><TD ALIGN="RIGHT">h</TD>
<TD ALIGN="LEFT">Get a list of all the commands</TD>
</TR>
<TR><TD ALIGN="RIGHT">?</TD>
<TD ALIGN="LEFT">Get a list of all the commands</TD>
</TR>
<TR><TD ALIGN="RIGHT"><EM>space bar</EM></TD>
<TD ALIGN="LEFT">Enter text that you ``say'' into the room</TD>
</TR>
<TR><TD ALIGN="RIGHT"><EM>return</EM></TD>
<TD ALIGN="LEFT">Enter text that you ``say'' into the room</TD>
</TR>
<TR><TD ALIGN="RIGHT">g</TD>
<TD ALIGN="LEFT">goto another room</TD>
</TR>
<TR><TD ALIGN="RIGHT">q</TD>
<TD ALIGN="LEFT">Quit COM Mode</TD>
</TR>
</TABLE>
<A NAME="tab-com-commands"></A></TD></TR>
</TABLE>
</DIV><P></P>
<BR>
<P>
Also, from COM Mode, you can compete with others in games of
Nethack, Netris, &amp; some others. If you can master the ``h'' command in COM,
it will show you the commands for playing these games.
<P>
<H2><A NAME="SECTION00721000000000000000"></A>
<A NAME="com-commands-discussion"></A>
<BR>
6.2.1 COM Commands Discussion
</H2>
<P>
The <TT>com</TT> commands are <EM>hot</EM>. By that, I mean that
you type a command character, &amp; <TT>com</TT> immediately takes
action. You must be careful to type only the command
character you intend. If you type other characters along
with the character you intend, one of those other characters
might be interpreted as a command, &amp; the character you
intend will be interpreted as an argument to that command.
It might sound like I'm being pedantic, but people who are
new to <TT>com</TT> often have this problem.
<P>
Table&nbsp;<A HREF="node7.html#tab-proper-com">6.2</A> shows the proper sequence of
steps for entering a command in <TT>com</TT>. It assumes you
are already running <TT>com</TT> &amp; that you are not currently
processing any <TT>com</TT> commands. You are just reading the
text in the room.
<P>
<BR><P></P>
<DIV ALIGN="CENTER"><A NAME="tab-proper-com"></A><A NAME="487"></A>
<TABLE>
<CAPTION><STRONG>Table 6.2:</STRONG>
The proper &amp; detailed sequence of events for executing a
command in <TT>com</TT></CAPTION>
<TR><TD><IMG
WIDTH="537" HEIGHT="684" BORDER="0"
SRC="img3.png"
ALT="\begin{table}\begin{enumerate}
\item Put both hands in your lap so that neither ...
...the command key you intended,
you did it incorrectly.
\end{enumerate}\end{table}"></TD></TR>
</TABLE>
</DIV><P></P>
<BR>
<P>
Step number 4 in Table&nbsp;<A HREF="node7.html#tab-proper-com">6.2</A> is critically
important &amp; deserves further discussion.
In step number 4, you touch (or ``type'') the command key.
You do not touch (or type) any other keys on your keyboard
or on any other keyboard. You don't need to ``enter'' the
command by typing the Return or Enter key on your keyboard;
<TT>com</TT> will acknowledge your command key
immediately.<A NAME="tex2html18"
HREF="footnode.html#foot488"><SUP>6.1</SUP></A>
<P>
A common error for new users is to type the Return (or
Enter) key after they type the command key. <TT>Com</TT>
executes the command key fine, then it notices the Return
key. Return is a command, so <TT>com</TT> executes it. The
Return command gets you a prompt so that you may enter text
that you ``say'' for other people to ``hear'' in the room.
Because of the Return key, <TT>com</TT> is not interpreting the
new user's keystrokes as commands.
<P>
Then the new user tries to type another command, such as the
``q'' (quit) command, but <TT>com</TT> interprets it as text to
say into the room. The new user is under the impression
that he needs to end commands with Return, so he does that,
which causes <TT>com</TT> to print ``q'' into the room for
everyone to see. The new user is confused about why his
command doesn't execute, so he types ``h'' &amp; Return again.
The ``h'' is interpreted as a command &amp; gets him a menu,
but the Return is also interpreted as a command &amp; puts him
into enter-a-line-of-text mode. He sees the ``q'' command
in the menu, types it &amp; Return, &amp; the cycle repeats.
<P>
All of this discussion may seem silly to most people, but a
lot of new users have amazingly huge amounts of trouble when
they learn to enter a command into <TT>com</TT>.<A NAME="tex2html19"
HREF="footnode.html#foot489"><SUP>6.2</SUP></A>
<P>
<H2><A NAME="SECTION00722000000000000000">
6.2.2 COM Session Example</A>
</H2>
<P>
Let's walk a new user named <EM>newbie</EM> through his first
session in <TT>com</TT>.
<P>
<OL>
<LI>Newbie starts on the unix command line.
<P>
</LI>
<LI>Newbie enters COM Mode by typing ``<TT>com</TT>'' &amp;
pressing the Return key.
<P>
</LI>
<LI>Newbie might have to wait a few seconds, but she
eventually sees <TT>com</TT> start. (I think new users see a
menu of the <TT>com</TT> commands &amp; have to answer Yes that
they have read &amp; understood the menu.) After <TT>com</TT>
starts, Newbie will be in the <EM>lobby</EM> &amp; will see a list
of the people in that room. (The lobby is the default room
&amp; is where most of the chatting happens.)
<P>
</LI>
<LI>Newbie wants to say hello to everyone, so she types
the Space Bar &amp; waits until she sees a ``<TT>[newbie]</TT>''
prompt. Then Newbie types ``Hi all. I'm new.'' &amp; then
types the Return key.
<P>
</LI>
<LI>Everyone in the room will see ``<TT>[newbie] Hi all.
I'm new.</TT>''.
<P>
</LI>
<LI><EM>Newbie is doing well so far, but now let's have
her make a mistake.</EM>
<P>
</LI>
<LI>Newbie wants to leave <TT>com</TT>, but she can't
remember the command, so she types ``h'' to get a menu &amp;
pressed Return. <EM>This was a mistake. Newbie should
have typed ``h'' alone &amp; not pressed Return.</EM>
<P>
</LI>
<LI><EM><TT>Com</TT> sees Newbie's ``h'' command &amp; prints the
help menu. That's good, but <TT>com</TT> also sees Newbies
Return &amp; assumes Newbie wants to ``say'' a line of text
into the room. So <TT>com</TT> prints a ``<TT>[newbie]</TT>''
prompt &amp; waits for Newbie to type some text, but Newbie is
busy reading the help menu &amp; doesn't notice the prompt.</EM>
<P>
</LI>
<LI>Newbie sees the ``q'' (quit) command on the help menu
&amp; types ``q'' &amp; then Return. <EM>This is a double
mistake. <TT>Com</TT> thinks Newbie is typing a line of text
to say into the room, so her ``q'' is not interpreted as a
command. Also, Newbie is still under the incorrect belief
that she must end <TT>com</TT> commands with a Return.</EM>
<P>
</LI>
<LI>Because of Newbie's mistake in the previous step, <TT>com</TT> prints ``<TT>[newbie] q</TT>'' into the room.
<P>
</LI>
<LI>Newbie is confused that her ``q'' command didn't work,
so she types ``h'' &amp; Return. This takes her back to step
7.
<P>
She'll repeat this who knows how many times. Other
people in the lobby will notice her problem &amp; try to help,
but Newbie has to go through the error many times before she
stops typing Return after her commands.
<P>
The problem is compounded by <TT>com</TT>'s modality &amp;
Newbie's failure to realize that <TT>com</TT> is modal.
Sometimes, <TT>com</TT> is waiting for Newbie to type a
command. Some commands are single key. (The ``q'' &amp;
``h'' commands are examples.) Other commands wait for
Newbie to type something, &amp; during that time, <TT>com</TT>
does not interpret her keystrokes as commands. (The Space
Bar and Return commands, both of which are for saying text
into the room, are examples.)
<P>
The other people in the room see what Newbie is going
through, but there isn't much they can do because they
can't see Newbie's screen &amp; help her figure out whether
<TT>com</TT> is waiting for her to type a command or waiting
for her to type text. What's more, whenever they say
something like ``Type <EM>h</EM> by itself'', Newbie types an
``h'' &amp; then a Return. So Newbie keeps going around &amp;
around.
<P>
</LI>
<LI>Eventually, Newbie figures it out while <TT>com</TT> is
waiting for her to type a command. At this time, Newbie
types ``q'' (&amp; does not type any other characters at all).
<P>
</LI>
<LI>Newbie might have to wait a few seconds, but she
eventually sees <TT>com</TT> print an ``Unlinking tty''
message, &amp; then Newbie is dropped back into her unix
command line.
</LI>
</OL>
<P>
<H2><A NAME="SECTION00723000000000000000">
6.2.3 What to Do if You Are Caught in the Newbie Loop</A>
</H2>
<P>
The problem is that <TT>com</TT> is modal &amp;
new users sometimes fail to realize that.
<P>
What does it mean for a program to be <B>modal</B>?
It means that sometimes, <TT>com</TT> is waiting for you to type a
command, &amp; sometimes it is waiting for you to type
arguments to a command. Some commands are single key. (The ``q'' &amp;
``h'' commands are examples.) Other commands wait for
you to type something, &amp; during that time, <TT>com</TT>
does not interpret her keystrokes as commands. (The Space
Bar and Return commands, both of which are for saying text
into the room, are examples.)
<P>
If you find yourself in the <TT>Com</TT> Newbie loop, here's
how to get out of it. Follow the exact steps from
Table&nbsp;<A HREF="node7.html#tab-exit-newbie-loop">6.3</A>. Type only what it says to
type. Do not type anything else. Do not type Return unless
a step in the table says to type Return.
<P>
<BR><P></P>
<DIV ALIGN="CENTER"><A NAME="tab-exit-newbie-loop"></A><A NAME="492"></A>
<TABLE>
<CAPTION><STRONG>Table 6.3:</STRONG>
The steps to get out of the <TT>Com</TT> Newbie loop.
Do exactly what the steps say. Do only what the steps say.
Do not type anything else.</CAPTION>
<TR><TD><IMG
WIDTH="534" HEIGHT="194" BORDER="0"
SRC="img4.png"
ALT="\begin{table}\begin{enumerate}
\item Type the Space Bar.
\item Type the Return (...
...u may now re-enter {\tt com} or go do something
else.
\end{enumerate}\end{table}"></TD></TR>
</TABLE>
</DIV><P></P>
<BR>
<P>
Here's why the steps in Table&nbsp;<A HREF="node7.html#tab-exit-newbie-loop">6.3</A> work:
<P>
<OL>
<LI>If <TT>com</TT> is waiting for you to type a command,
then you could type the command anyway, but you type Space,
which gets you a prompt (<TT>com</TT> isn't interpreting
commands). Then you type Return, which ends that prompt.
So now <TT>com</TT> is waiting for a command again. So the
Space Bar &amp; Return sequence was unnecessary, but it
did not harm. (People in the room won't even see it
because if you try to ``say'' an empty line, <TT>com</TT>
doesn't print anything.)
</LI>
<LI>If <TT>com</TT> has prompted you &amp; is not interpreting
your commands, the Space Bar won't do anything useful, but
the Return key will end that prompt. If you had
mistakenly typed Return earlier &amp; <TT>com</TT> was waiting for
you to say something into the room, the Space Bar will do
nothing, but the Return will end that mode, &amp; <TT>com</TT>
will now wait for you to type a command.. (If you had
typed things before the Space Bar, you will ``say'' them
into the room.)
</LI>
</OL>
<P>
<H2><A NAME="SECTION00724000000000000000">
6.2.4 COM History</A>
</H2>
<P>
I have heard that early versions of COM Mode were fairly
simple shell scripts that ran <EM>tail</EM> on a common file.
Excellently unixly elegant. COM Mode is in about version 6
now, &amp; it works across a bunch of computers networked at
SDF, so I don't know if it's still just some shell scripts.
<P>
<H1><A NAME="SECTION00730000000000000000">
6.3 Bulletin Board</A>
</H1>
<P>
If you type ``<TT>bboard</TT>'', you'll enter the bulletin
board. Its commands resemble those of the <EM>faq</EM>:
<P>
<DL>
<DT><STRONG>g</STRONG></DT>
<DD>Prompts you for a section name, which you type.
Then takes you to that section.
</DD>
<DT><STRONG>t</STRONG></DT>
<DD>From a section's menu, prompts you for a message
number (which you must enter exactly, including leading
zeros). Then it prints the message &amp; all replies to
your screen.
</DD>
<DT><STRONG>q</STRONG></DT>
<DD>Quits the bulletin board.
</DD>
</DL>
<P>
<HR>
<!--Navigation Panel-->
<A NAME="tex2html236"
HREF="node8.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
SRC="../img/latex2html/next.png"></A>
<A NAME="tex2html232"
HREF="unx.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
SRC="../img/latex2html/up.png"></A>
<A NAME="tex2html226"
HREF="node6.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
SRC="../img/latex2html/prev.png"></A>
<A NAME="tex2html234"
HREF="node1.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents"
SRC="../img/latex2html/contents.png"></A>
<A NAME="tex2html1"
HREF="../"><IMG
ALIGN="BOTTOM" SRC="../img/latex2html/root.png"
ALT="root">
</A>
<BR>
<B> Next:</B> <A NAME="tex2html237"
HREF="node8.html">7. Programming</A>
<B> Up:</B> <A NAME="tex2html233"
HREF="unx.html">Introduction to Unix &amp;</A>
<B> Previous:</B> <A NAME="tex2html227"
HREF="node6.html">5. Learning More</A>
&nbsp <B> <A NAME="tex2html235"
HREF="node1.html">Contents</A></B>
<!--End of Navigation Panel-->
<ADDRESS>
Gene Michael Stover
2005-07-07
</ADDRESS>
</BODY>
</HTML>