mirror of https://github.com/tLDP/LDP
updated
This commit is contained in:
parent
dcfbf637cb
commit
edd6c425b5
|
@ -2,7 +2,7 @@
|
|||
<article>
|
||||
<title>Howtos-with-LinuxDoc-mini-HOWTO
|
||||
<author>David S. Lawyer
|
||||
<date>v0.02, November 2003
|
||||
<date>v0.03, December 2003
|
||||
<abstract>
|
||||
This is about how to write HOWTOs using the simple LinuxDoc markup.
|
||||
It's primarily for Linux Documentation Project authors (and future
|
||||
|
@ -15,6 +15,8 @@ Guide.</abstract>
|
|||
v0.01 generic url for Greg Ferg. hmtl a flavor of sgml (per D.
|
||||
Merrill's suggestion but ...)
|
||||
v0.02 Nov. 2003: comparison errors: don't need to type release twice
|
||||
v0.03 Dec. 2003: Character codes are seldom needed, ref to HOWTO, misc
|
||||
changes
|
||||
-->
|
||||
<sect> Introduction
|
||||
|
||||
|
@ -33,28 +35,17 @@ answer yes to these, then you're encouraged to write something for the
|
|||
LDP. But be warned that it may take more time than you expected.
|
||||
|
||||
<sect1>Copyright (skip this if you're in a hurry)
|
||||
<p> Copyright (c) 2001 by David S. Lawyer. Please freely copy and
|
||||
distribute (sell or give away) this document in any format. Send any
|
||||
corrections and comments to the document maintainer. You may create a
|
||||
derivative work and distribute it provided that you:
|
||||
|
||||
<enum>
|
||||
<item> If it's not a translation: Email a copy of your derivative work
|
||||
to the LDP (Linux Documentation Project) for free distribution on the
|
||||
Internet in a format LDP accepts. Also email such a copy to the
|
||||
author(s) and maintainer (could be the same person).
|
||||
<item>License the derivative work in the spirit of this license or use
|
||||
GPL. Include a copyright notice and at least a pointer to the
|
||||
license used.
|
||||
<item>Give due credit to previous authors and major contributors.
|
||||
</enum>
|
||||
<p> Copyright (c) 2001-3 by David S. Lawyer. You may freely copy and
|
||||
distribute (sell or give away) this document. You may create a
|
||||
derivative work and distribute it provided that you licnese it in the
|
||||
spirit of this license and give proper credits. The author would like
|
||||
to receive your comments, suggestions, and plans for any derivative
|
||||
work based on this.
|
||||
|
||||
<sect1>Why I wrote this
|
||||
<p>Why did I write this when there is already an "LDP Authoring
|
||||
Guide"? Well, the LDP guide is a long and detailed work. If you want
|
||||
to get started quickly, you need something much simpler and shorter.
|
||||
Furthermore the LDP guide fails to even mention the simplicity of
|
||||
LinuxDoc.
|
||||
|
||||
Thanks to Matt Welsh for his example.sgml file which I used as a major
|
||||
source of info for the example sections.
|
||||
|
@ -63,15 +54,20 @@ source of info for the example sections.
|
|||
<sect1> Copyright
|
||||
<p> All HOWTOs and other LDP documents are copyright by the authors so
|
||||
the LDP doesn't have any special rights to your writing. We only accept
|
||||
documents that have a license Mich permits anyone to copy and
|
||||
distribute the document. So that gives us (and everyone else) the
|
||||
right to distribute it. We encourage authors to also allow
|
||||
documents that have a license which permits anyone to copy and
|
||||
distribute the document. We encourage authors to also allow
|
||||
modification in their license. This way, if the author stops
|
||||
maintaining a document, someone else can do so. For more details see
|
||||
our Manifesto.
|
||||
|
||||
<sect1> Choosing a topic
|
||||
<p>
|
||||
<p> If you are not sure what to write about, take look at some of
|
||||
LDP's documents, including the ones in "unmaintained. You should find
|
||||
ones that need rewriting. Also you may find topics that you are
|
||||
interested in that are not adequately covered by existing
|
||||
documentation. If you find something already written that seems to
|
||||
need a lot of improvement, try to contact the author.
|
||||
|
||||
<sect> The Format of HOWTOs
|
||||
<sect1> Introduction
|
||||
<p> Our HOWTOs are released in various formats: Plain Text, HTML,
|
||||
|
@ -172,7 +168,7 @@ Generalized Markup Language. You are now reading the LinuxDoc flavor
|
|||
of sgml as specified in the very first line of this file.
|
||||
|
||||
<sect> Tags
|
||||
<p> Tags are anything inside angle brackets. The "sect" tag above
|
||||
<p> Tags are words inside angle brackets. The "sect" tag above
|
||||
marks the start of a new section of this example document.
|
||||
"Introduction" was the first section and you are now reading the
|
||||
second section titled "Tags". If this were a long document (like a
|
||||
|
@ -202,7 +198,7 @@ examples.
|
|||
<tscreen><verb>
|
||||
<!-- This is a comment. It's ignored when this source file gets
|
||||
converted to other formats. -->
|
||||
<!-- The next required tag implies that this file is in LinuxDoc format -->
|
||||
<!-- The tag below says that this file is in LinuxDoc format -->
|
||||
<!doctype linuxdoc system>
|
||||
|
||||
<article>
|
||||
|
@ -233,31 +229,32 @@ translator such as sgml2txt to convert them to text and notice how the
|
|||
result looks different than this "source" document with all its tags.
|
||||
|
||||
<sect>Article Layout
|
||||
<sect1>Document Header
|
||||
<p> One way to create a header part is just to copy them from another
|
||||
.sgml file. Then replace everything except the tags with the correct
|
||||
info for your document. This is like using a "template".
|
||||
|
||||
<sect1> Document Body
|
||||
<p>
|
||||
After the header comes the body of the document, consisting of nested
|
||||
sections marked by sect-tags. Subsections are marked by sect1-tags.
|
||||
Since this is the first subsection within the 2nd main section, it's
|
||||
actually section 2.1. Within a subsection there may be
|
||||
sub-subsections marked by sect2-tags, etc. For a sub-sub-sub-section
|
||||
use "sect3". There are even such tags as sect4 and sect5, but you are
|
||||
unlikely to need them.
|
||||
|
||||
<p> After the header comes the body of the document, consisting of
|
||||
nested sections marked by sect-tags. Subsections are
|
||||
marked by sect1-tags. Since this is the first subsection
|
||||
within the 2nd main section, it's becomes section 2.1. Within a
|
||||
subsection marked by sect1 there may be sub-subsections like
|
||||
sect2. There are even tags like sect3, sect4, etc., but you are
|
||||
unlikely to need them. Note the the real tags must be encosed in
|
||||
angle brackets < and >. If I had put these brakets
|
||||
|
||||
<sect2> This is a sub-sub-section
|
||||
<p>
|
||||
It's 2.2.1. Note that a "p" tag may be on a line by itself. This
|
||||
It's 2.1.1. Note that a "p" tag may be on a line by itself. This
|
||||
doesn't change a thing in the resulting documents.
|
||||
|
||||
<sect1>Document Header
|
||||
<p> One way to create a header part is just to copy one from another
|
||||
.sgml file. Then replace everything except the tags with the correct
|
||||
info for your document. This is like using a "template".
|
||||
|
||||
<sect> More Features in example3
|
||||
<p> With the tags in this example2 you can write a simple short document
|
||||
a few pages long. But for longer documents or for other important
|
||||
features such as putting links into documents, you need to study the
|
||||
next example: example3. It will show you how to create lists and
|
||||
next example: example3. It will also show you how to create lists and
|
||||
fonts.
|
||||
&etago;article>
|
||||
</verb></tscreen>
|
||||
|
@ -266,8 +263,8 @@ fonts.
|
|||
<p>
|
||||
<tscreen><verb>
|
||||
<!doctype linuxdoc system>
|
||||
<!-- Note the mailto: after my name. This allows the reader to click
|
||||
on it to send me email -->
|
||||
<!-- Note the mailto: after my name. This allows the reader of html
|
||||
format to click on my email address to send me email -->
|
||||
|
||||
<article>
|
||||
<title>Third Example (example3)
|
||||
|
@ -286,12 +283,11 @@ While they will not show up in a plain text output, they will work
|
|||
for other conversions.
|
||||
<bf>boldface font&etago;bf> <em>emphasis font&etago;em> <sf>sans serif&etago;sf>
|
||||
<sl>slanted font&etago;sl> <tt>typewriter font&etago;tt> <it>italics font&etago;it>
|
||||
There's another way to get these same fonts by enclosing
|
||||
the text in slashes like this:
|
||||
<bf/boldface font/ <em/emphasis font/ <sf/sans serif/
|
||||
<sl/slanted font/ <tt/typewriter font/ <it/italics font/
|
||||
Note that DocBook doesn't have font tags so it may be best not to use
|
||||
fonts if you plan to convert to DocBook.
|
||||
There's another way to get these same fonts by enclosing the text in
|
||||
slashes like this: <bf/boldface font/ <em/emphasis font/
|
||||
<sf/sans serif/ <sl/slanted font/ <tt/typewriter font/
|
||||
<it/italics font/ Note that DocBook doesn't have font tags so it may
|
||||
be best not to use fonts if you plan to convert to DocBook.
|
||||
|
||||
<sect> Links <label id="links_">
|
||||
<p> You may create links (something that html browsers may click on to
|
||||
|
@ -317,7 +313,7 @@ not even need to explain where the link leads to since it's obvious by
|
|||
the name.
|
||||
|
||||
<sect> Prohibited Characters
|
||||
<p> Anything you type between angle brackets will be interpreted as a
|
||||
<p> Any word you type between angle brackets will be interpreted as a
|
||||
tag. But what if you want to display a tag in a document? For this
|
||||
you use a code word for the angle characters.
|
||||
|
||||
|
@ -327,21 +323,23 @@ course it doesn't actually start any paragraph, but it will appear in
|
|||
the converted document as <p>. These codes all start with an &
|
||||
character. The ; after the lt is to separate it. It's not needed if
|
||||
there is a space after it. For example: 3 &lt 4. Actually, if
|
||||
you know that its OK to use an unpaired > then you could have written
|
||||
you knew that its OK to use an unpaired > then you could have written
|
||||
<p> as &lt;p>. This will not be mistakenly recognized as a tag
|
||||
since there is no opening <.
|
||||
since there is no opening <. Actually 3 < 4 works fine too.
|
||||
|
||||
There are other characters that you can't put into the document text
|
||||
directly. For & in an AT modem command use: AT&amp;. If other
|
||||
characters cause you trouble see example3 or the "guide" that comes
|
||||
with linuxdoc-tools or sgml-tools.
|
||||
characters cause you trouble (they seldom will) see <ref id="ch_codes"
|
||||
name="Character Codes (macros)"> or the "guide" that comes with
|
||||
linuxdoc-tools or sgml-tools.
|
||||
|
||||
<sect> Verbatim, Code & Newline
|
||||
<sect1> Verbatim
|
||||
<p> If you want to insure that lines are not joined together during
|
||||
conversion to other formats, use verbatim (verb). Some things still
|
||||
get recognized even though they are between verbatim tags. This
|
||||
includes the macros starting with & and end tags with /.
|
||||
<p> If you want to insure that it will look exactly like you typed it
|
||||
after it's converted to other formats, use verbatim (verb). This is
|
||||
useful for creating tables, etc. But some things still get recognized
|
||||
as markup even though they are between verbatim tags. This includes
|
||||
the macros starting with & and end tags with /.
|
||||
|
||||
<tscreen><verb>
|
||||
% sgml2txt -f example.sgml
|
||||
|
@ -442,29 +440,39 @@ To force a newline <newline>
|
|||
&etago;verb>&etago;tscreen>
|
||||
</verb></tscreen>
|
||||
|
||||
<sect2> Character Codes (macros).
|
||||
<p>
|
||||
<sect2> Character Codes (macros) <label id="ch_codes">
|
||||
<p>You don't always need to use these.
|
||||
<itemize>
|
||||
<item>Use <tt>&amp;</tt> for the ampersand (&),
|
||||
<item>Use <tt>&lt;</tt> for a left bracket (<),
|
||||
<item>Use <tt>&gt;</tt> for a right bracket (>),
|
||||
<item>Use <tt>&etago;</tt> for a left bracket with a slash
|
||||
(<tt>&etago;</tt>)
|
||||
</itemize>
|
||||
|
||||
Use of these are optional and I seldom use them. <itemize>
|
||||
<item>Use <tt>``</tt> and <tt>''</tt> for opening and closing double
|
||||
quotes
|
||||
<item>Use <tt>&shy;</tt> for a soft hyphen (that is, an indication
|
||||
that this is a good place to break a very long word to insert a
|
||||
hyphen for horizontal justification).
|
||||
</itemize>
|
||||
|
||||
Only use these if LinuxDoc complains about it or fails to generate
|
||||
them in the formated document. I've seldom had to use them.
|
||||
<itemize>
|
||||
<item>Use <tt>&dollar;</tt> for a dollar sign ($),
|
||||
<item>Use <tt>&num;</tt> for a hash (#),
|
||||
<item>Use <tt>&percnt;</tt> for a percent (%),
|
||||
<item>Use <tt>&tilde;</tt> for a tilde (˜),
|
||||
<item>Use <tt>``</tt> and <tt>''</tt> for quotes, or use
|
||||
<tt>&dquot;</tt> for &dquot;.
|
||||
<item>Use <tt>&shy;</tt> for a soft hyphen (that is, an indication
|
||||
that this is a good place to break a word for horizontal justification).
|
||||
<item>Use <tt>&dquot;</tt> for ".
|
||||
</itemize>
|
||||
|
||||
<sect> Getting/Using the LinuxDoc Software
|
||||
<p> You could write a LinuxDoc document without having any LinuxDoc
|
||||
software. However, it's likely that it would contain some errors in
|
||||
the tags (or their use) so that it would be returned to you for
|
||||
correction. Even if there were no errors, the results likely would
|
||||
correction. Even if there were no errors, the results might not
|
||||
not look quite right. So it's best for you to have the software to
|
||||
convert your source code on your computer.
|
||||
|
||||
|
@ -501,7 +509,7 @@ it's not required.
|
|||
only guessing. I use ?? if I'm not sure.
|
||||
<item> Make sure that you are covering the most recent version of the
|
||||
available software.
|
||||
<item> Consider including a "FAQ" section. It might also be called
|
||||
<item> Consider including a "FAQ" section or sections called
|
||||
"Common Problems" or "Trouble Shooting".
|
||||
<item> Be sure to copyright it in your name and include a license
|
||||
which meets the requirements stated in the LDP manifesto.
|
||||
|
@ -511,20 +519,18 @@ it's not required.
|
|||
<item> Lastly, be prepared to receive email questions and comments
|
||||
from readers. How much you help people is up to you but you should
|
||||
make use of good suggestions and reports of errors. You may also
|
||||
get some "thank you" email as well as well as mail from people asking
|
||||
for help who never even looked at your HOWTO.
|
||||
get some "thank you for writing this" email.
|
||||
</itemize>
|
||||
|
||||
<sect1> Submitting the HOWTO, etc.
|
||||
<p> After you have written the HOWTO, email the SGML source to
|
||||
submit@en.tldp.org. Then all you need to do is to keep the HOWTO
|
||||
submit@linuxdoc.org. Then all you need to do is to keep the HOWTO
|
||||
up-to date by submitting periodic updates to the same email as you
|
||||
used for the first edition.
|
||||
|
||||
<sect> More Information
|
||||
<p> There's a forthcoming HOWTO about LinuxDoc that covers it in much
|
||||
greater detail than this mini-HOWTO. To be released sometime in April
|
||||
2001 ??
|
||||
<p> There's a HOWTO: Linuxdoc-Reference that covers it in much
|
||||
greater detail than this mini-HOWTO.
|
||||
|
||||
</article>
|
||||
|
||||
|
|
|
@ -3,11 +3,12 @@
|
|||
<title> Modem-HOWTO
|
||||
<author>David S.Lawyer
|
||||
<tt><url url="mailto:dave@lafn.org"></tt>
|
||||
<date> v0.31, November 2003
|
||||
<date> v0.32, December 2003
|
||||
|
||||
<!--
|
||||
Change log: + => added more info ++ => added new topic
|
||||
v0.31 Mgetty dial-in, setserial rewritten
|
||||
v0.32 Dec. 2003: Still newer gromitkc url w/o pop ups; more on devfs
|
||||
v0.31 Nov. 2003: Mgetty dial-in, setserial rewritten
|
||||
v0.30 August 2003 New gromitkc url, some internals have FIFO overrun
|
||||
v0.29 July 2003 New gromitkc url, but many links in it are broken
|
||||
v0.28 June 2003 Parallel port modems, lockfile permissions for wvdial
|
||||
|
@ -153,9 +154,9 @@ respective owners. <!-- license.D end -->
|
|||
|
||||
|
||||
"Hayes" is a trademark of Microcomputer Products Inc. I use
|
||||
"winmodem" to mean any modem which requires MS-Windows and not in the
|
||||
trademark sense. All other trademarks belong to their respective
|
||||
owners.
|
||||
"winmodem" to mean any modem which originally required MS-Windows and
|
||||
not in the trademark sense. All other trademarks belong to their
|
||||
respective owners.
|
||||
|
||||
<sect2> Credits
|
||||
<p> The following is only a rough approximation of how this this
|
||||
|
@ -185,7 +186,7 @@ send me any other info that you think belongs in this document.
|
|||
Your problem might be solved in the latest version. It will be
|
||||
available to browse and/or download at LDP mirror sites. For a list
|
||||
of such sites see: <url url="http://www.tldp.org/mirrors.html"> If you
|
||||
only want to quickly compare the date of this the version v0.31, November 2003 with
|
||||
only want to quickly compare the date of this the version v0.32, December 2003 with
|
||||
the date of the latest version go to: <url
|
||||
url="http://www.tldp.org/HOWTO/Modem-HOWTO.html">
|
||||
|
||||
|
@ -194,8 +195,9 @@ url="http://www.tldp.org/HOWTO/Modem-HOWTO.html">
|
|||
the source file (in linuxdoc format) at <url
|
||||
url="http://www.ibiblio.org/pub/linux/docs/HOWTO/other-formats/sgml/Modem-HOWTO.sgml.gz">.
|
||||
<itemize>
|
||||
<item>v0.31 Mgetty dial-in, setserial rewritten
|
||||
<item>v0.30 August 2003 New gromitkc url
|
||||
<item>v0.32 Dec. 2003: Still newer gromitkc url w/o pop ups; more on devfs
|
||||
<item>v0.31 Nov. 2003: Mgetty dial-in, setserial rewritten
|
||||
<item>v0.30 August 2003: New gromitkc url
|
||||
<item>v0.29 July 2003 New gromitkc url, but many links in it are broken
|
||||
<item>v0.28 June 2003: Parallel port modems, lockfile permissions for wvdial
|
||||
<item>v0.27 May 2003: "Flow control" improved
|
||||
|
@ -208,43 +210,46 @@ url="http://www.ibiblio.org/pub/linux/docs/HOWTO/other-formats/sgml/Modem-HOWTO.
|
|||
</itemize>
|
||||
|
||||
<sect1> What is a Modem ? <label id="what_is_modem">
|
||||
<p> A modem is a device that lets one send digital signals over an
|
||||
ordinary telephone line not designed for digital signals. If
|
||||
telephone lines were all digital then you wouldn't need a modem. It
|
||||
permits your computer to connect to and communicate with the rest of
|
||||
the world. When you use a modem, you normally use a communication
|
||||
program or web browser to utilize the modem and dial-out on a
|
||||
telephone line. Advanced modem users can set things up so that others
|
||||
may phone in to them and use their computer. This is called
|
||||
<p> A modem (or analog modem) is a device that lets one send digital
|
||||
signals over an ordinary telephone line not designed for digital
|
||||
signals. If telephone lines were all digital then you wouldn't need a
|
||||
modem. But sometimes, a substitute for an analog modem, connected to
|
||||
a digital phone line, is imprecisely called a "digital modem". A
|
||||
modem permits your computer to connect to and communicate with the
|
||||
rest of the world. When you use a modem, you normally use a
|
||||
communication program or web browser to utilize the modem and dial-out
|
||||
on a telephone line. Advanced modem users can set things up so that
|
||||
others may phone in to them and use their computer. This is called
|
||||
"dial-in".
|
||||
|
||||
There are four basic types of modems for a PC: external, USB, internal
|
||||
and built-in. The external and USB set on your desk outside the PC
|
||||
while the other two types are not visible since they're inside the PC.
|
||||
Sometimes the USB type is called "USB external". The external serial
|
||||
modem plugs into a connector on the back of the PC known as a "serial
|
||||
port". The USB modem plugs into the USB bus cable. See <ref
|
||||
id="usb_" name="USB Modems">. The internal modem is a card that is
|
||||
inserted inside the computer. The built-in modem is part of the
|
||||
motherboard and is thus built into the computer. It's is just like an
|
||||
internal modem except it can't be removed or replaced. As of 2001,
|
||||
built-in modems are primarily for laptops. What is said in this HOWTO
|
||||
regarding internal modems will generally apply also to built-in
|
||||
There are four basic types of modems for a PC: external, USB,
|
||||
internal, and built-in. The external and USB set on your desk outside
|
||||
the PC while the other two types are not visible since they're inside
|
||||
the PC. Sometimes the USB type is called "USB external". The
|
||||
external serial modem plugs into a connector on the back of the PC
|
||||
known as a "serial port". The USB modem plugs into the USB bus cable.
|
||||
See <ref id="usb_" name="USB Modems">. The internal modem is a card
|
||||
that is inserted inside the computer. The built-in modem is part of
|
||||
the motherboard and is thus built into the computer. It's is just
|
||||
like an internal modem except it can't be removed or replaced. As of
|
||||
2001, built-in modems are primarily for laptops. What is said in this
|
||||
HOWTO regarding internal modems will generally apply also to built-in
|
||||
modems.
|
||||
|
||||
For a more detailed comparison see <ref id="int_vs_ext" name="External
|
||||
vs. Internal">. When you get an internal or, built-in, modem,
|
||||
you also get a dedicated serial port (which can only be used with the
|
||||
modem and not with anything else such as another modem or a printer).
|
||||
In Linux, the common serial ports are named ttyS0, ttyS1, etc.
|
||||
(usually corresponding respectively to COM1, COM2, etc. in
|
||||
Dos/Windows). But in special cases, the names are longer: ttySHCF0 is
|
||||
the 0th serial port for a type of winmodem (HCF = Host Controlled
|
||||
Family). New types of serial ports just add some more letter to ttyS.
|
||||
In Linux, the common serial ports are named ttyS0, ttyS1, etc. (or
|
||||
tts/0, tts/1 for the device file system (devfs). These ports usually
|
||||
corresponding respectively to COM1, COM2, etc. in Dos/Windows). But
|
||||
in special cases, the names are longer: ttySHCF0 is the 0th serial
|
||||
port for a type of winmodem (HCF = Host Controlled Family). New types
|
||||
of serial ports just add some more letter to ttyS.
|
||||
|
||||
For the new devfs the common serial ports are all in the /dev/ttys/
|
||||
directory and named 0, 1, etc. See <ref id="basics_" name="Modem &
|
||||
Serial Port Basics"> for more details on modems and serial ports.
|
||||
See <ref id="basics_" name="Modem &
|
||||
Serial Port Basics"> for more details on how modems and serial ports
|
||||
work.
|
||||
With a USB modem, the driver simulates a serial port at for example
|
||||
/dev/ttySHCFUSB or /dev/usb/asm/0 (for devfs).
|
||||
|
||||
|
@ -286,11 +291,11 @@ name="All Modems"> for further instructions.
|
|||
<p> The first thing to do is to make sure that the modem will work
|
||||
under Linux since (as of 2002) many modems don't. If it's a
|
||||
"winmodem" you'll need a driver for it (if one exists). See <url
|
||||
url="http://free.hostdepartment.com/g/gromitkc/winmodem.html" name="modem
|
||||
list"> and <ref id="soft_modem" name="Software-based Modems
|
||||
(winmodems)">. If the modem is both PnP and directly supported by the
|
||||
serial driver (kernel 2.4 +) or by a winmodem driver then there is no
|
||||
configuring for you to do since the driver should configure it.
|
||||
url="http://flash.to/modem" name="modem list"> and <ref
|
||||
id="soft_modem" name="Software-based Modems (winmodems)">. If the
|
||||
modem is both PnP and directly supported by the serial driver (kernel
|
||||
2.4 +) or by a winmodem driver then there is no configuring for you to
|
||||
do since the driver should configure it.
|
||||
|
||||
To physically install a modem card, remove the cover of the PC by
|
||||
/removing some screws. Find a matching vacant slot for the card next
|
||||
|
@ -593,8 +598,9 @@ details.
|
|||
<item> <url url="http://linmodems.org"> is a project to turn winmodems
|
||||
into linmodems. Has a mailing list.
|
||||
<item>Conexant+Rockwell-modem-HOWTO
|
||||
<item><url url="http://free.hostdepartment.com/g/gromitkc/winmodem.html"
|
||||
name="big modem list">. Has links to linmodem info.
|
||||
<item><url url="http://flash.to/modem" name="modem list"> Has links to
|
||||
linmodem info.
|
||||
|
||||
<item> PCTel-HSP-MicroModem-Configuration-mini-HOWTO
|
||||
</itemize>
|
||||
|
||||
|
@ -739,9 +745,9 @@ software which uses the modem.
|
|||
<item> <ref id="soft_modem" name="Software-based Modems (winmodems,
|
||||
linmodems)"> Only about half have a Linux driver available.
|
||||
<item> <ref id="dsp_" name="MWave and DSP Modems"> might work, but only if
|
||||
you first start Windows/Dos each time you power on your PC
|
||||
<item> Modems with <ref id="rpi_" name="RPI (Rockwell)"> drivers work
|
||||
but with reduced performance
|
||||
you first start Windows/Dos each time you power on your PC.
|
||||
<item> Modems with <ref id="rpi_" name="Old Rockwell (RPI) Drivers">
|
||||
work but with reduced performance.
|
||||
</itemize>
|
||||
|
||||
<sect2> MWave and some DSP Modems <label id="dsp_">
|
||||
|
@ -792,7 +798,7 @@ since its simulation of a serial port is non-standard. The patch and
|
|||
other info for using this modem with Linux is at <url
|
||||
url="http://quinine.pharmacy.ohio-state.edu/~ejolson/linux/newcom.html">.
|
||||
|
||||
<sect2> Rockwell (RPI) Drivers <label id="rpi_">
|
||||
<sect2> Old Rockwell (RPI) Drivers <label id="rpi_">
|
||||
<p> Some older Rockwell chips need Rockwell RPI (Rockwell
|
||||
Protocol Interface) drivers for compression and error correction.
|
||||
They can still be used with Linux even though the driver software
|
||||
|
@ -924,7 +930,7 @@ name="What do I need to be an ISP?">. Cyclades promotes their own
|
|||
products here so please do comparison shopping before buying anything.
|
||||
|
||||
<sect> Serial Port and Modem Basics <label id="basics_">
|
||||
<!-- basics.H begin <sect> Serial Port and Modem Basics
|
||||
<!-- basics.D begin <sect> Serial Port and Modem Basics
|
||||
or <sect> Serial Port Basics In SS and MM -->
|
||||
<!-- Change log:
|
||||
Nov. '99: 2 serial drivers concurrently NG
|
||||
|
@ -1510,7 +1516,7 @@ to the first but with the correct IRQ, etc. See
|
|||
See <ref id="set_serial" name="What is Setserial"> for more info on
|
||||
<tt/setserial/.
|
||||
|
||||
<!-- basics.H end -->
|
||||
<!-- basics.D end -->
|
||||
|
||||
|
||||
<sect> Configuring Overview
|
||||
|
@ -1551,7 +1557,7 @@ your modem is on, then you can try to find it yourself per the next
|
|||
section but it may not be easy.
|
||||
|
||||
<sect>Locating the Serial Port: IO address, IRQs <label id="locate_port">
|
||||
<!-- locate.H begin (in MM, SS)
|
||||
<!-- locate.D begin (in MM, SS)
|
||||
<sect>Configuring the Serial Port
|
||||
Change-log:
|
||||
Aug. 2001: removed mention of patch to convert Linux to a PnP OS;
|
||||
|
@ -1559,30 +1565,34 @@ better explanation of PCI
|
|||
July 2001: Improve PCI part. Remove "card" since serial ports are
|
||||
often built into the motherboard.
|
||||
Feb. 2003: Removed request to send info to Ted Tso.
|
||||
Dec. 2003: May need to create /dev/ttyS4 even if its auto detected
|
||||
-->
|
||||
|
||||
<sect1> IO & IRQ Overview
|
||||
<p> For a serial port to work properly, it must have both an IRQ and
|
||||
an IO address. Without an IO address, it can't be located and will not
|
||||
work at all. Without an IRQ it will need to use inefficient polling
|
||||
methods for which one must set the IRQ to 0. So every serial port
|
||||
needs an IO address and IRQ. In olden days this was set by jumpers on
|
||||
a serial port card. Today it's set by digital signals sent to the
|
||||
hardware and this is part of "Plug-and-Play (PnP).
|
||||
methods for which one must set the IRQ to 0 in the serial driver. So
|
||||
every serial port needs an IO address and IRQ. In olden days this was
|
||||
set by jumpers on a serial port card. Today it's set by digital
|
||||
signals sent to the hardware and this is part of "Plug-and-Play (PnP).
|
||||
It all should get configured automatically so that you only need to
|
||||
read this if you're having problems or if you want to understand how
|
||||
it works.
|
||||
|
||||
The driver must also know both the IO address and IRQ so that it can
|
||||
locate the port chip. Modern serial port drivers (kernel 2.4) try to
|
||||
determine this by PnP methods so one doesn't need to tell them (by
|
||||
using "setserial"). Such a driver might also set an IO address or
|
||||
enable the hardware. But unfortunately, there is some PCI serial port
|
||||
hardware that the driver doesn't recognize so you may need to enable
|
||||
the port yourself. See <ref id="pci_enabled" name="PCI: Enabling a
|
||||
disabled port">
|
||||
talk to the port chip. Modern serial port drivers (kernel 2.4) try to
|
||||
determine this by PnP methods so one doesn't normally need to tell the driver
|
||||
(by using "setserial"). The modern driver might also enable the serial
|
||||
port and set an IO address or IRQ in the hardware. But unfortunately,
|
||||
there is some PCI serial port hardware that the driver doesn't
|
||||
recognize so you might need to enable the port yourself. See <ref
|
||||
id="pci_enabled" name="PCI: Enabling a disabled port">
|
||||
|
||||
The driver also probes possible ISA serial port addresses to see if
|
||||
The driver also probes likely ISA serial port addresses to see if
|
||||
there are any serial ports there. This works for the case of jumpers
|
||||
and sometimes works for a PnP port when the driver doesn't do PnP
|
||||
(prior to kernel 2.4).
|
||||
and sometimes works for a ISA PnP port when the driver doesn't do ISA
|
||||
PnP (prior to kernel 2.4).
|
||||
|
||||
Locating the serial port by giving it an IRQ and IO address is
|
||||
low-level configuring. It's often automatically done by the serial
|
||||
|
@ -1590,19 +1600,21 @@ driver but sometimes you have to do it yourself. What follows repeats
|
|||
what was said above but in more detail.
|
||||
|
||||
The low-level configuring consists of assigning an IO address, IRQ,
|
||||
and name (such as ttyS2). This IO-IRQ pair must be set in both the
|
||||
hardware and told to the serial driver. Only the driver needs to know
|
||||
the name.We could call this "io-irq" configuring for short. The
|
||||
"setserial" program is one way to tell the driver. The other way is
|
||||
for the driver to use PnP methods to determine/set the IO/IRQ and then
|
||||
remember what it did. For jumpers you must always use "setserial".
|
||||
If you need to configure but don't understand certain details it's
|
||||
easy to get into trouble.
|
||||
and name (such as ttyS2 = tts/2). This IO-IRQ pair must be set in both the
|
||||
hardware and told to the serial driver. And the driver needs to call
|
||||
this pair a name (such as ttyS2). We could call this "io-irq"
|
||||
configuring for short. The "setserial" program is one way to tell the
|
||||
driver. The other way is for the driver to use PnP methods to
|
||||
determine/set the IO/IRQ and then remember what it did. For jumpers
|
||||
there is no PnP but the driver might detect the port if the jumpers
|
||||
are set to the usual I0/IRQ. If you need to configure but don't
|
||||
understand certain details it's easy to get into trouble.
|
||||
|
||||
When Linux starts, some effort is made to detect and configure
|
||||
(low-level) a few serial ports. Exactly what happens depends on your
|
||||
BIOS, hardware, Linux distribution, etc. If the serial ports work OK,
|
||||
there may be no need for you to do any more low-level configuring.
|
||||
(low-level) serial ports. Exactly what happens depends on your BIOS,
|
||||
hardware, Linux distribution, kernel version, etc. If the serial
|
||||
ports work OK, there may be no need for you to do any more low-level
|
||||
configuring.
|
||||
|
||||
If you're having problems with the serial ports, then you may need to
|
||||
do low-level configuring. If you have kernel 2.2 or lower,
|
||||
|
@ -1625,15 +1637,16 @@ cause people more trouble than the high-level stuff, although for many
|
|||
it's fully automatic and there is no configuring to be done. Until
|
||||
the serial driver knows the correct IRQ and IO address, the port will
|
||||
not usually not work at all. Also, PnP ports can be disabled so that
|
||||
they can't be found (except with PnP tools such as lspci).
|
||||
Applications, and utilities such as "setserial" and "scanport" (Debian
|
||||
only ??) don't use PnP tools and thus can't detect
|
||||
they don't have any IO address and thus can't be used. However PnP
|
||||
tools such as lspci should be able to find them. Applications, and
|
||||
utilities such as "setserial" and "scanport" (Debian only ??) only
|
||||
probe I0 addresses, don't use PnP tools, and thus can't detect
|
||||
disabled ports.
|
||||
|
||||
Even if an ISA port can be found by the probing of the serial driver
|
||||
it may work extremely slow if the IRQ is wrong. See <ref id="slow_"
|
||||
name="Extremely Slow: Text appears on the screen slowly after long
|
||||
delays">. PCI ports are less likely to get the IRQ wrong.
|
||||
Even if an ISA port can be found by the probing done by the serial
|
||||
driver it may work extremely slow if the IRQ is wrong. See <ref
|
||||
id="slow_" name="Extremely Slow: Text appears on the screen slowly
|
||||
after long delays">. PCI ports are less likely to get the IRQ wrong.
|
||||
|
||||
In the Wintel world, the IO address and IRQ are called "resources" and
|
||||
we are thus configuring certain resources. But there are many other
|
||||
|
@ -1643,9 +1656,9 @@ name (ttyS2 for example) and putting two values (an IRQ number and IO
|
|||
address) into two places:
|
||||
|
||||
<enum>
|
||||
<item> the device driver (often by running "<tt/setserial/" at
|
||||
boot-time)
|
||||
<item> the device driver (done by PnP or "<tt/setserial/")
|
||||
<item> configuration registers of the serial port hardware itself
|
||||
(done by PnP or jumpers)
|
||||
</enum>
|
||||
|
||||
You may watch the start-up (= boot-time) messages. They are usually
|
||||
|
@ -1661,18 +1674,30 @@ Boot-time messages">.
|
|||
Although some PCI modems are "winmodems" without a Linux driver
|
||||
(and will not work under Linux), other PCI modems will often work OK
|
||||
under Linux. If it's a software modem, then you need to find a driver
|
||||
for it. See Linmodem-HOWTO.
|
||||
for it since support for "winmodems" is not built into ther serial
|
||||
driver. See Linmodem-HOWTO.
|
||||
|
||||
If you have kernel 2.4, then there should be support for PnP (either
|
||||
built-in or by modules). Some PCI serial ports can be automatically
|
||||
detected and low-level configured by the serial driver. Others may
|
||||
not be.
|
||||
No support exists in the serial driver for software modems. But
|
||||
separate drivers exist for many of them.Kernel 2.2 had no support for PCI serial ports (although some people
|
||||
got them working anyway). The 2.4 serial driver will read the id
|
||||
number digitally stored in the serial hardware to determine how to
|
||||
support it (if it knows how). It should assign an I/O address to it,
|
||||
determine it's IRQ, etc. So you don't need to use "setserial" for it.
|
||||
|
||||
While kernel 2.2 supported PCI in general, it had no support for PCI
|
||||
serial ports (although some people got them working anyway). The 2.4
|
||||
serial driver will read the id number digitally stored in the serial
|
||||
hardware to determine how to support it (if it knows how). It should
|
||||
assign an I/O address to it, determine it's IRQ, etc. So you don't
|
||||
need to use "setserial" for it.
|
||||
|
||||
There is a possible problem if you don't use the device filesystem.
|
||||
The driver may assign the port to say "<tt/ttyS04" per a boot-time
|
||||
message (use <tt/dmesg/ to see it). But if you don't have a "file" /dev/ttyS4
|
||||
then the port will not work. So you will then need to create it,
|
||||
using<newline>
|
||||
<tt>cd /dev</tt> and then <tt>./MAKEDEV ttyS4</tt><newline>
|
||||
For the device filesystem, the driver should create the device
|
||||
<tt>tts/1</tt>
|
||||
|
||||
<!--
|
||||
<sect2> Requesting that future drivers support your serial port
|
||||
<p>If you have a
|
||||
|
@ -2152,18 +2177,15 @@ you want to let a PnP BIOS do such configuring. Not all PnP BIOS can
|
|||
do this. The BIOS usually has a CMOS menu for setting up the first
|
||||
two serial ports. This menu may be hard to find. For an "Award"
|
||||
BIOS it was found under "chipset features setup" There is often
|
||||
little to choose from. Unless otherwise indicated in a menu, these
|
||||
first two ports normally get set at the standard IO addresses and
|
||||
IRQs. See <ref id="dev_nos" name="Serial Port Device Names &
|
||||
Numbers">
|
||||
little to choose from. For ISA serial ports, the first two ports
|
||||
normally get set at the standard IO addresses and IRQs. See <ref
|
||||
id="dev_nos" name="More on Serial Port Names">
|
||||
|
||||
Whether you like it or not, when you start up a PC a PnP BIOS starts
|
||||
Whether you like it or not, when you start up a PC, a PnP BIOS starts
|
||||
to do PnP (io-irq) configuring of hardware devices. It may do the job
|
||||
partially and turn the rest over to a PnP OS (which Linux is in some
|
||||
sense) or if thinks you don't have a PnP OS it may fully configure all
|
||||
the PnP devices but not configure the device drivers. This is what
|
||||
you want but it's not always easy to figure out exactly what the PnP
|
||||
BIOS has done.
|
||||
the PnP devices but not configure the device drivers.
|
||||
|
||||
If you tell the BIOS that you don't have a PnP OS, then the PnP BIOS
|
||||
should do the configuring of all PnP serial ports --not just the first
|
||||
|
@ -2194,7 +2216,7 @@ it shows you may not be clear to a novice.
|
|||
for it to be done by PnP) you also need to insure that the "setserial"
|
||||
command is run each time you start Linux. See the subsection <ref
|
||||
id="sets_boot_time" name="Boot-time Configuration">
|
||||
<!-- configure.H end-->
|
||||
<!-- configure.D end-->
|
||||
|
||||
|
||||
<sect> Configuring the Serial Driver (high-level) "stty"
|
||||
|
@ -2438,7 +2460,7 @@ cases.
|
|||
Dialing"
|
||||
</itemize>
|
||||
|
||||
<sect1> Other AT Modem Commands <label id="modem_commands">
|
||||
<sect1>Other AT Modem Commands <label id="modem_commands">
|
||||
<p> For dial-in see <ref
|
||||
id="dial-in_conf" name="Dial-in Modem Configuration">. The rest of
|
||||
this section is mostly what was in the old Serial-HOWTO. All strings
|
||||
|
@ -2546,35 +2568,63 @@ AT-command (or idle) state.
|
|||
|
||||
<sect> Serial Port Devices /dev/ttyS2, (or /dev/ttys/2) etc.
|
||||
<label id="ttySN_">
|
||||
<!-- device_dir.H begin
|
||||
<!-- dev_names.D begin
|
||||
in Modem and Serial HOWTOs
|
||||
Nov. 2003: rewrite
|
||||
<sect> Serial Port Devices /dev/ttyS2, etc. -->
|
||||
|
||||
<p> For creating devices in the device directory see:
|
||||
the Serial-HOWTO: "Creating Devices In the /dev directory".
|
||||
<sect1>Serial Port Names: ttyS2, tts/1, etc.
|
||||
<p>Once upon a time the names of the serial ports were simple. Except
|
||||
for some multiport serial cards they were named /dev/ttyS0,
|
||||
/dev/ttyS1, etc. Then around the year 2000 came the USB bus with
|
||||
names like /dev/ttyUSB0 and /dev/ttyACM1 (for the ACM modem on the USB
|
||||
bus). A little later with kernel 2.4 came the "device file system"
|
||||
(devfs) with a whole new set of names for everything. ttyS1 is now
|
||||
tts/1, ttyUSB1 is now /usb/tts/1, and ttyACM1 is now /usb/acm/1.
|
||||
Note that the the number 1 above is just an example. It could be
|
||||
replaced by 0, 2, 3, etc. The use of the device file system is
|
||||
optional and many are still using the legacy system. Others use devfs
|
||||
but have the old legacy names linked (via symlinks) to the new names.
|
||||
So they use the new system with the old names but may also use some of
|
||||
the new names for some devices. It's even possible ?? to use
|
||||
the new names for the old (non-devfs) system.
|
||||
|
||||
<sect1>Devfs (The Device File System)
|
||||
<p>Starting with kernel 2.4, a new system of device naming was
|
||||
created. It makes it easy to deal with a huge number of devices. But
|
||||
there's an option to continue using the old names. However, a new
|
||||
device may not have an old-style name so then one must use the new
|
||||
devfs. For a detailed description of it see: <url
|
||||
url="http://www.atnf.csiro.au/~rgooch/linux/docs/devfs.html"> Also see
|
||||
the kernel documentation tree: filesystems/devfs.
|
||||
|
||||
<sect1> Devfs (The new Device File System)
|
||||
<p> This is a new type of device interface to Linux. It's optional
|
||||
starting with kernel 2.4. It's more efficient than the conventional
|
||||
interface and makes it easy to deal with a huge number of devices.
|
||||
The device names have all changed as well. But there's an option to
|
||||
continue using the old names. For a detailed description of it see:
|
||||
<url url="http://www.atnf.csiro.au/~rgooch/linux/docs/devfs.html">
|
||||
Also see the kernel documentation tree: filesystems/devfs.
|
||||
|
||||
The name changes (if used) are: ttyS2 becomes tts/2 (Serial port),
|
||||
tty3 becomes vc/3 (Virtual Console), ptyp1 becomes pty/m1 (PTY
|
||||
Some more examples of name changes are: ttyS2 becomes tts/2 (Serial
|
||||
port), tty3 becomes vc/3 (Virtual Console), ptyp1 becomes pty/m1 (PTY
|
||||
master), ttyp2 becomes pty/s2 (PTY slave). "tts" looks like a
|
||||
directory which contains devices "files": 0, 1, 2, etc. All of these
|
||||
new names should still be in the /dev directory although optionally
|
||||
one may put them elsewhere.
|
||||
|
||||
<sect1>Serial Port Device Names & Numbers <label id="dev_nos">
|
||||
<p> Devices in Linux have major and minor numbers (unless you use the
|
||||
new devfs). The serial port ttySx (x=0,1,2, etc.) has major number 4.
|
||||
You may see this (and the minor numbers too) by typing: "ls -l ttyS*"
|
||||
in the /dev directory.
|
||||
Device names in the /dev directory are created automatically by the
|
||||
corresponding driver. Thus, if serial support comes from a module and
|
||||
that module isn't loaded yet, there will not be any serial devices in
|
||||
the /dev directory. This can be confusing: you physically have serial
|
||||
ports but don't see them in the /dev directory. However, if a device
|
||||
name is told to a communication program and the serial module isn't
|
||||
loaded, the kernel is supposed to try to find a driver for it and
|
||||
create a name for it in the /dev directory.
|
||||
|
||||
This is works OK if it finds a driver. But suppose there is no driver
|
||||
found for it. For example, if you try to use "setserial" to configure
|
||||
a port that the driver failed to detect, it claims there is no such
|
||||
port. How does one create a devfs port in this case?
|
||||
|
||||
<sect1>Legacy Serial Port Device Names & Numbers
|
||||
<p> Before the device file system, devices in Linux had major and
|
||||
minor numbers. The serial port ttySx (x=0,1,2, etc.) was major number
|
||||
4. You could see this (and the minor numbers too) by typing: "ls -l
|
||||
ttyS*" in the /dev directory. To find the old device names for various
|
||||
devices, see the "devices" file in the kernel documentation.
|
||||
|
||||
There formerly was a "cua" name for each serial port and it behaved
|
||||
just a little differently. For example, ttyS2 would correspond to
|
||||
|
@ -2583,28 +2633,40 @@ minor numbers started at 64. You may still have the cua devices in
|
|||
your /dev directory but they are now deprecated. For details see
|
||||
Modem-HOWTO, section: cua Device Obsolete.
|
||||
|
||||
Dos/Windows use the COM name while the <tt/setserial/ program uses
|
||||
tty00, tty01, etc. Don't confuse these with dev/tty0, dev/tty1, etc.
|
||||
which are used for the console (your PC monitor) but are not serial
|
||||
ports. The table below is for the "standard" case (but yours could be
|
||||
different). The major/minor numbers don't exist with the devfs. For
|
||||
the PCI bus the IO addresses are different.
|
||||
For creating the old devices in the device directory see:
|
||||
the Serial-HOWTO: "Creating Devices In the /dev directory".
|
||||
|
||||
|
||||
<sect1>More on Serial Port Names <label id="dev_nos">
|
||||
<p>Dos/Windows use the COM name while the messages from the serial driver
|
||||
use ttyS00, ttyS01, etc. Older serial drivers (2001 ?) used just
|
||||
tty00, tty01, etc.
|
||||
|
||||
<p>The tables below shows some examples of serial device names. The
|
||||
IO addresses are the default addresses for the old ISA bus (not for
|
||||
the newer PCI and USB buses). The major/minor numbers aren't needed
|
||||
for the devfs, but they often exist anyway just in case the devfs
|
||||
method of locating drivers can't be used.
|
||||
|
||||
<verb>
|
||||
ISA IO devfs usb
|
||||
dos major minor address devfs devfs usb acm modem
|
||||
COM1 /dev/ttyS0 4, 64; 3F8 /dev/tts/0 /dev/usb/tts/0 /dev/usb/acm/0
|
||||
COM2 /dev/ttyS1 4, 65; 2F8 /dev/tts/1 /dev/usb/tts/1 /dev/usb/acm/1
|
||||
COM3 /dev/ttyS2 4, 66; 3E8 /dev/tts/2 /dev/usb/tts/2 /dev/usb/acm/2
|
||||
COM4 /dev/ttyS3 4, 67; 2E8 /dev/tts/3 /dev/usb/tts/3 /dev/usb/acm/3
|
||||
old old ISA IO
|
||||
dos devfs old name major minor address
|
||||
COM1 /dev/tts/0 /dev/ttyS0 4, 64; 3F8
|
||||
COM2 /dev/tts/1 /dev/ttyS1 4, 65; 2F8
|
||||
COM3 /dev/tts/2 /dev/ttyS2 4, 66; 3E8
|
||||
COM4 /dev/tts/3 /dev/ttyS3 4, 67; 2E8
|
||||
|
||||
DEVICES-ON-THE-USB-BUS (acm is a certain type of modem)
|
||||
devfs legacy name devfs legacy name
|
||||
/dev/usb/tts/0 /dev/ttyUSB0 | /dev/usb/acm/0 /dev/ttyACM0
|
||||
/dev/usb/tts/1 /dev/ttyUSB1 | /dev/usb/acm/1 /dev/ttyACM1
|
||||
/dev/usb/tts/2 /dev/ttyUSB2 | /dev/usb/acm/2 /dev/ttyACM2
|
||||
/dev/usb/tts/3 /dev/ttyUSB3 | /dev/usb/acm/3 /dev/ttyACM3
|
||||
</verb>
|
||||
|
||||
<sect1> USB (Universal Serial Bus) Ports
|
||||
<p>The serial ports on the USB are: /dev/ttyUSB0, /dev/ttyUSB1, etc.
|
||||
The devfs names for these are: /dev/usb/tts/0, /dev/usb/tts/1, etc.
|
||||
For many modems they are /dev/usb/acm/0, etc. (in devfs notation).
|
||||
For more info see the usb subdirectory in the kernel documentation
|
||||
directory for files: acm and usb-serial.
|
||||
<sect1> USB (Universal Serial Bus) Serial Ports
|
||||
<p> For more info see the usb subdirectory in the kernel documentation
|
||||
directory for files: usb-serial, acm, etc.
|
||||
|
||||
<sect1> Link ttySN to /dev/modem
|
||||
<p> On some installations, two extra devices will be created,
|
||||
|
@ -2614,12 +2676,12 @@ device in <tt>/dev</tt> which you specified during the installation
|
|||
Except if you have a bus mouse, then <tt>/dev/mouse</tt> will point to
|
||||
the bus mouse device).
|
||||
|
||||
Formerly (in the 1990s) the use of <tt>/dev/modem</tt> was discouraged
|
||||
since lock files might not realize that it was really say
|
||||
<tt>/dev/ttyS2</tt>. The newer lock file system doesn't fall into
|
||||
this trap so it's now OK to use such links.
|
||||
Historical note: Formerly (in the 1990s) the use of
|
||||
<tt>/dev/modem</tt> was discouraged since lock files might not realize
|
||||
that it was really say <tt>/dev/ttyS2</tt>. The newer lock file
|
||||
system doesn't fall into this trap so it's now OK to use such links.
|
||||
|
||||
<!-- device_dir.H end -->
|
||||
<!-- dev_names.D end -->
|
||||
|
||||
|
||||
<sect1> cua Device Obsolete <label id="cua_dev">
|
||||
|
@ -2648,7 +2710,7 @@ should be avoided if possible.
|
|||
<sect>Interesting Programs You Should Know About
|
||||
|
||||
<sect1>What is setserial ? <label id="set_serial">
|
||||
<!-- setserial.H begin (in MM TT SS)
|
||||
<!-- setserial.D begin (in MM TT SS)
|
||||
<sect1>What is Setserial ? <label id="set_serial">
|
||||
Change Log:
|
||||
May 2000: <sect2> IRQs near end ttyS0 -> ttyS1 + clarity
|
||||
|
@ -2656,7 +2718,7 @@ Nov. 2000: auto_irq may work on the 2nd try
|
|||
Dec. 2000: saving state of serial module
|
||||
June 2001 OK to use setserial with Laptops
|
||||
Nov. 2002 Debian's /var/lib/serial.conf
|
||||
Nov. 2003 Major revision, since today, plug-and-play dominates
|
||||
Nov. 2003 Major revision. Plug-and-play dominates
|
||||
/var/lib/setserial/autoserial.conf
|
||||
-->
|
||||
<p> This part is in 3 HOWTOs: Modem, Serial, and Text-Terminal. There
|
||||
|
@ -3068,7 +3130,7 @@ shouldn't save anything for PCMCIA cards (but Debian did until
|
|||
2.15-7). Of course, it's always OK to use setserial to find out how
|
||||
the driver is configured for PCMCIA cards.
|
||||
|
||||
<!-- setserial.H end -->
|
||||
<!-- setserial.D end -->
|
||||
|
||||
|
||||
<sect1> What is isapnp ?
|
||||
|
@ -4104,7 +4166,7 @@ do it. If the two modems on a connection were to be set this way to
|
|||
different speeds, then they couldn't communicate with each other.
|
||||
|
||||
<sect1> Can't Set a High Enough Speed <label id="high_speed">
|
||||
<!-- high_speed.H begin In Serial and Modem HOWTOs but some of the speed
|
||||
<!-- high_speed.D begin In Serial and Modem HOWTOs but some of the speed
|
||||
section is unique to each HOWTO.
|
||||
Feb. 2003,
|
||||
-->
|
||||
|
@ -4174,15 +4236,15 @@ Normally, if you specify a speed of 115.2k (in your communication
|
|||
program or by stty) then the serial driver sets the port hardware to
|
||||
divisor 1 which sets the highest speed.
|
||||
|
||||
Besides using a very high divisor to set high speed the conventional
|
||||
Besides using a very high divisor to set high speed, the conventional
|
||||
way to do it is as follows: If you happen to have hardware with a
|
||||
maximum speed of say 230.4k (and the 230.4k speed has been enabled),
|
||||
then specifying 115.2k will result in divisor 1. For some hardware
|
||||
this will actually give you 230.4k. This is double the speed that you
|
||||
set. In fact, for any speed you set, the actual speed will be double.
|
||||
If you had hardware that could run at 460.8k then the actual speed
|
||||
would be quadruple what you set. All the above assumes that you don't
|
||||
use "setserial" to modify things.
|
||||
maximum speed of say 230.4k (and the 230.4k speed has been enabled in
|
||||
the hardware), then specifying 115.2k will result in divisor 1. For
|
||||
some hardware this will actually give you 230.4k. This is double the
|
||||
speed that you set. In fact, for any speed you set, the actual speed
|
||||
will be double. If you had hardware that could run at 460.8k then the
|
||||
actual speed would be quadruple what you set. All the above assumes
|
||||
that you don't use "setserial" to modify things.
|
||||
|
||||
<sect2> Setting the divisor, speed accounting
|
||||
<p> To correct this accounting (but not always fix the problem) you
|
||||
|
@ -4191,11 +4253,12 @@ speed of your port such as 230.4k. Then if you set the speed (by your
|
|||
application or by stty) to 230.4k, a divisor of 1 will be used and
|
||||
you'll get the same speed as you set.
|
||||
|
||||
If you have old software which will not permit such a high speed (but
|
||||
your hardware has it enabled) then you might want to look into using
|
||||
the "spd_cust" parameter for setserial with "divisor 1". Then when
|
||||
you tell the application that the speed it 38,400, it will use divisor
|
||||
1 and get the highest speed.
|
||||
If you have very old software which will not allow you to tell it such
|
||||
a high speed (but your hardware has it enabled) then you might want to
|
||||
look into using the "spd_cust" parameter. This allows you to tell the
|
||||
application that the speed is 38,400 but the actual speed for this
|
||||
case is determined by the value of "divisor" which has also been set
|
||||
in setserial. I think it best to try to avoid using this kludge.
|
||||
|
||||
There are some brands of UARTs that uses a very high divisor to set
|
||||
high speeds. There isn't any satisfactory way to use "setserial" (say
|
||||
|
@ -4211,11 +4274,12 @@ speed of 115.2k. The reason the crystal frequency needs to be higher
|
|||
is so that this high crystal speed can generate clock ticks to take a
|
||||
number of samples of each bit to determine if it's a 1 or a 0.
|
||||
|
||||
Actually, the 1.8432 MHz "crystal frequency" is obtained from a 18.432
|
||||
MHz crystal oscillator by dividing by 10 before being fed to the UART.
|
||||
Other schemes are also possible as long as the UART performs properly.
|
||||
Actually, the 1.8432 MHz "crystal frequency" may be obtained from a
|
||||
18.432 MHz crystal oscillator by dividing by 10 before being fed to
|
||||
the UART. Other schemes are also possible as long as the UART
|
||||
performs properly.
|
||||
|
||||
<!-- high_speed.H end -->
|
||||
<!-- high_speed.D end -->
|
||||
|
||||
|
||||
<sect1> Speed Table <label id="speed_table">
|
||||
|
@ -4348,11 +4412,20 @@ vgetty) features. See <ref id="mgetty_" name="About mgetty">
|
|||
<tt/ps_getty/ package. See <ref id="uugetty_" name="About
|
||||
getty_ps"></itemize>
|
||||
|
||||
<sect2> Other
|
||||
<sect2>Network Connection
|
||||
<p>
|
||||
<itemize>
|
||||
<item><tt/ser2net/
|
||||
<item><tt/sredird/
|
||||
</itemize>
|
||||
|
||||
<sect2>Other
|
||||
<p> <itemize>
|
||||
<item><tt/callback/ is where you dial out to a remote modem and then
|
||||
that modem hangs up and calls you back (to save on phone bills).
|
||||
|
||||
<item><tt/xringd/ listens for rings and detects inter-ring times etc.
|
||||
|
||||
<item><tt/SLiRP/ and <tt/term/ provide a PPP-like service that you can
|
||||
run in user space on a remote computer with a shell account.
|
||||
See <ref id="term+slurp" name="term and SLiRP"> for more details
|
||||
|
@ -4722,6 +4795,7 @@ Dec. '02: IO error may mean IRQ conflict or IO address conflict.
|
|||
Jan. '03: LSR safety check error
|
||||
Feb. '03: Interrupts may be shared on PCI Bus
|
||||
June '03: Wvdial: busy message due to lockfile permissions
|
||||
Dec. '03: Scanport can also detect an enabled PnP port
|
||||
-->
|
||||
<sect1>(The following subsections are in both the Serial and Modem HOWTOs)
|
||||
|
||||
|
@ -4732,17 +4806,16 @@ often because it's disabled and has no address (PnP hasn't enabled it)
|
|||
or that it is enabled but is not at the I/O address that setserial
|
||||
thinks it's at. Thus it can't be found.
|
||||
|
||||
First check BIOS messages at boot-time (and possible the BIOS menu for
|
||||
the serial port). For the PCI bus use lspci or scanpci. If it's an
|
||||
ISA bus PnP serial port, try "pnpdump --dumpregs" and/or see
|
||||
First check BIOS messages at boot-time (and possibly the BIOS menu for
|
||||
the serial port). Then for the PCI bus use lspci or scanpci. If it's
|
||||
an ISA bus PnP serial port, try "pnpdump --dumpregs" and/or see
|
||||
Plug-and-Play-HOWTO. If the port happens to be enabled then the
|
||||
following two paragraphs may help find it:
|
||||
|
||||
For a non-PnP ISA legacy port, using "scanport" (Debian only ??) will
|
||||
scan all bus ports and may discover an unknown port that could be a
|
||||
serial port (but it doesn't probe the port). It could hang your PC.
|
||||
You may try probing with setserial. See <ref id="probing_ss"
|
||||
name="Probing">.
|
||||
Using "scanport" (Debian only ??) will scan all enabled bus ports and
|
||||
may discover an unknown port that could be a serial port (but it
|
||||
doesn't probe the port). It could hang your PC. You may try probing
|
||||
with setserial. See <ref id="probing_ss" name="Probing">.
|
||||
|
||||
If nothing seems to get thru the port it may be accessible but have a
|
||||
bad interrupt. See <ref id="slow_" name="Extremely Slow: Text appears
|
||||
|
@ -5035,7 +5108,7 @@ troubleshooting:
|
|||
and tty/driver/serial).
|
||||
</itemize>
|
||||
|
||||
<!-- troubleshooting.H end -->
|
||||
<!-- troubleshooting.D end -->
|
||||
|
||||
|
||||
<sect> Flash Upgrades
|
||||
|
@ -5151,7 +5224,7 @@ than in the HOWTO.
|
|||
<sect1> Web Sites <label id="web_sites">
|
||||
<p> <itemize>
|
||||
<item> Modem List of modems which work/don't_work under Linux
|
||||
<url url="http://free.hostdepartment.com/g/gromitkc/winmodem.html">
|
||||
<url url="http://flash.to/modem">
|
||||
<item> <url url="http://serial.sourceforge.net/" name="Linux Serial
|
||||
Driver home page"> Includes info about support for PCI modems.
|
||||
<item>Hayes AT modem commands
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -1,13 +1,14 @@
|
|||
<!doctype linuxdoc system>
|
||||
<article>
|
||||
<title>Text-Terminal-HOWTO</title>
|
||||
<title> Text-Terminal-HOWTO
|
||||
<author> David S. Lawyer <url url="mailto:dave@lafn.org">
|
||||
<date> v1.33, November 2003
|
||||
<date> v1.34, December 2003
|
||||
|
||||
<!--
|
||||
Change log:
|
||||
using minicom with directly connected terminals
|
||||
v1.33 Nov. 2003: revised setserial section
|
||||
v1.34 Dec. 2003: All ~ (tildes) are now in text (formatting problem with Linuxdoc)
|
||||
v1.33 Nov. 2003: revised setserial section; using minicom with
|
||||
directly connected terminals
|
||||
v1.32: Sept. 2003: man page console_codes, name: serial
|
||||
monitor/console, "init string" rewrite, netrik text browser, new url
|
||||
for terminfo
|
||||
|
@ -191,7 +192,7 @@ url="http://tldp.org/mirrors.html">. Various formats are
|
|||
available. If you only want to quickly check the date of the latest
|
||||
version look at <url
|
||||
url="http://tldp.org/HOWTO/Text-Terminal-HOWTO.html">. The
|
||||
version your are currently reading is: v1.33, November 2003 .
|
||||
version your are currently reading is: v1.34, December 2003 .
|
||||
|
||||
<sect1>New in Recent Versions:
|
||||
<p> For a full revision history going back to the first version see
|
||||
|
@ -199,7 +200,10 @@ the source file (in linuxdoc format) at <url
|
|||
url="http://www.ibiblio.org/pub/linux/docs/HOWTO/other-formats/sgml/Text-Terminal-HOWTO.sgml.gz">.
|
||||
|
||||
<itemize>
|
||||
<item>v1.33 Nov. 2003: revised setserial section
|
||||
<item>v1.34 Dec. 2003: All ~ (tildes) are now in text (formatting
|
||||
problem with Linuxdoc)
|
||||
<item>v1.33 Nov. 2003: revised setserial section; using minicom with
|
||||
directly connected terminals
|
||||
<item>v1.32: September 2003: man page console_codes, name: serial
|
||||
monitor/console, "init string" rewrite, netrik text browser, new url
|
||||
for terminfo
|
||||
|
@ -208,9 +212,6 @@ devfs, removed all mention of obsolete /dev/cua, pin numbering, new
|
|||
X-Terminal HOWTO, Hydra date is 1998 (not 1988), edited thin clients
|
||||
<item>v1.30 Sept. 2002: fixed typos, redid Windows Terminal
|
||||
Server (Linux client possible)
|
||||
<item>v1.29 Mar. 2002: key-switch spring and bending "contact", getty:
|
||||
Red Hat url, getty: source code -> executable code
|
||||
about 20 typos fixed
|
||||
</itemize>
|
||||
|
||||
<sect1> Related HOWTOs, etc. <label id="related_howtos">
|
||||
|
@ -1395,10 +1396,11 @@ that 8-bit character codes have mostly replaced 7-bit ones, it's
|
|||
better to use an 8-bit code which has both all the ASCII symbols plus
|
||||
the non-ASCII characters for various languages.
|
||||
|
||||
ISO-646 (for 1972 and later) permits this. It specifies that the
|
||||
above mentioned character codes may be borrowed, but doesn't specify
|
||||
which national characters are to replace them. Some countries
|
||||
standardized the replacements by registering them with ECMA.
|
||||
ISO-646 (for 1972 and later) permits using National Replacement
|
||||
Characters (7-bit). It specifies that the above mentioned character
|
||||
codes may be borrowed, but doesn't specify which national characters
|
||||
are to replace them. Some countries standardized the replacements
|
||||
by registering them with ECMA.
|
||||
|
||||
Many terminals exist which support these national replacement
|
||||
characters but you probably don't want to implement them unless you
|
||||
|
@ -3798,7 +3800,7 @@ supply a shell script which runs <tt/setserial/ but seldom supply one
|
|||
which runs <tt/stty/ since on seldom need it.
|
||||
|
||||
<sect1> Setserial <label id="set_serial">
|
||||
<!-- setserial.H begin (in MM TT SS)
|
||||
<!-- setserial.D begin (in MM TT SS)
|
||||
<sect1>What is Setserial ? <label id="set_serial">
|
||||
Change Log:
|
||||
May 2000: <sect2> IRQs near end ttyS0 -> ttyS1 + clarity
|
||||
|
@ -3806,7 +3808,7 @@ Nov. 2000: auto_irq may work on the 2nd try
|
|||
Dec. 2000: saving state of serial module
|
||||
June 2001 OK to use setserial with Laptops
|
||||
Nov. 2002 Debian's /var/lib/serial.conf
|
||||
Nov. 2003 Major revision, since today, plug-and-play dominates
|
||||
Nov. 2003 Major revision. Plug-and-play dominates
|
||||
/var/lib/setserial/autoserial.conf
|
||||
-->
|
||||
<p> This part is in 3 HOWTOs: Modem, Serial, and Text-Terminal. There
|
||||
|
@ -4218,10 +4220,10 @@ shouldn't save anything for PCMCIA cards (but Debian did until
|
|||
2.15-7). Of course, it's always OK to use setserial to find out how
|
||||
the driver is configured for PCMCIA cards.
|
||||
|
||||
<!-- setserial.H end -->
|
||||
<!-- setserial.D end -->
|
||||
|
||||
<sect1> Stty <label id="stty_">
|
||||
<!-- stty.H begin <sect1> Stty <label id="stty_">
|
||||
<!-- stty.D begin <sect1> Stty <label id="stty_">
|
||||
In Serial and Text-Terminal -->
|
||||
<sect2> Introduction
|
||||
<p> <tt/stty/ does much of the configuration of the serial port but
|
||||
|
@ -4417,7 +4419,7 @@ so that the low level stuff is done first. If you have directories in
|
|||
the /etc tree where every file in them is executed at boot-time
|
||||
(System V Init) then you could create a file named "stty" for this
|
||||
purpose.
|
||||
<!-- stty.H end -->
|
||||
<!-- stty.D end -->
|
||||
|
||||
|
||||
<sect1> Terminfo & Termcap (brief) <label id="termcap1">
|
||||
|
@ -4930,9 +4932,9 @@ $endif
|
|||
|
||||
If the terminal is already in "application key mode" there's no need
|
||||
to "set enable-keypad on". enable-keypad will send the terminal the
|
||||
escape sequence named smkx in terminfo (which for wyse60 is \E~3 and
|
||||
makes the arrow keys send D1-D3). Many other application send this
|
||||
without needing to be told to do so.
|
||||
escape sequence named smkx in terminfo (which for wyse60 is \E˜3
|
||||
and makes the arrow keys send D1-D3). Many other application send
|
||||
this without needing to be told to do so.
|
||||
|
||||
<sect1>Color ls Corruption
|
||||
<p> If <tt/ls/ is corrupting your terminal emulation with the color
|
||||
|
@ -5812,7 +5814,7 @@ characters).
|
|||
because the starting of the login shell has reconfigured the terminal
|
||||
(to an incorrect setting) by a command which someone put into one of
|
||||
the files that are run when you login and a shell starts. These files
|
||||
include /etc/profile and ~/.bashrc. Look for a command starting with
|
||||
include /etc/profile and ˜/.bashrc. Look for a command starting with
|
||||
"stty" or "setserial" and make sure that it's correct. Even if it's
|
||||
done OK in one initialization file, it may be reset incorrectly in
|
||||
another initialization file that you are not aware of. Ways to get
|
||||
|
@ -6070,6 +6072,7 @@ select "local" from a menu (or press a certain key). See <ref
|
|||
id="enter_setup" name="Getting Into Set-Up (Configuration) Mode">.
|
||||
|
||||
<sect1> Serial Electrical Test Equipment <label id="ser_elect_test">
|
||||
<!-- begin ser_elect_test.D. in Serial, Text-Terminal -->
|
||||
<sect2> Breakout Gadgets, etc.
|
||||
<p> While a multimeter (used as a voltmeter) may be all that you need
|
||||
for just a few serial ports, simple special test equipment has been
|
||||
|
@ -6127,7 +6130,7 @@ For the test for 12 V, Lick a finger and hold one test lead in it.
|
|||
Put the other test lead on your tongue. If the lead on your tongue is
|
||||
positive, there will be a noticeable taste. You might try this with
|
||||
flashlight batteries first so you will know what taste to expect.
|
||||
|
||||
<!-- end ser_elect_test.D in Serial, Text-Terminal -->
|
||||
|
||||
|
||||
<sect> Repair & Diagnose <label id="repair_">
|
||||
|
@ -7338,7 +7341,7 @@ in use.
|
|||
VR302, Width VR101 (also affects height). If you want to use it in
|
||||
Native Personality, then the arrow-key codes will conflict with the
|
||||
codes used in vi (such as ^L). To fix this set "Application key mode"
|
||||
with ESC ~ 3. This results in the arrow keys sending 0xd1 - 0xd4.
|
||||
with ESC ˜ 3. This results in the arrow keys sending 0xd1 - 0xd4.
|
||||
Due to a bug in the readline interface of the Bash shell, you need to
|
||||
edit /etc/inputrc so that the arrow keys will work in Bash. See <ref
|
||||
id="bash_bug" name="Bugs in Bash">
|
||||
|
@ -7424,3 +7427,4 @@ the set-up (confusing menu design).
|
|||
|
||||
END OF Text-Terminal-HOWTO
|
||||
</article>
|
||||
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
|
||||
<title>Linux User Group HOWTO
|
||||
<author><url name="Rick Moen" url="mailto:%20rick@linuxmafia.com%20"></author>
|
||||
<date>v1.7.4, 2003-12-27
|
||||
<date>v1.7.5, 2004-01-09
|
||||
|
||||
<abstract>
|
||||
The Linux User Group HOWTO is a guide to founding, maintaining, and
|
||||
|
@ -30,20 +30,22 @@ tiny to colossal:
|
|||
<item><bf>Diverse <url name="PDA / embedded / microcontroller / router"
|
||||
url="http://www.uclinux.org/ports/"> devices:</bf>
|
||||
<itemize>
|
||||
<item>Advanced RISC Machines, Ltd. <url name="ARM" url="http://www.arm.uk.linux.org/"> family (StrongARM SA-1110, XScale, ARM6, ARM7, ARM2, ARM250, ARM3i, ARM610, ARM710, ARM720T, ARM920T)</item>
|
||||
<item>Axis Communications <url name="ETRAX" url="http://developer.axis.com/software/"> ("CRIS" RISC architecture)</item>
|
||||
<item>Advanced RISC Machines, Ltd. <url name="ARM" url="http://www.arm.uk.linux.org/"> family (StrongARM SA-1110, XScale, ARM6, ARM7, ARM2, ARM250, ARM3i, ARM610, ARM710, ARM720T, and ARM920T)</item>
|
||||
<item>Analog Devices, Inc.'s <url name="Blackfin DSP" url="http://linuxdevices.com/news/NS9596714596.html"></item>
|
||||
<item>Axis Communications <url name="ETRAX series" url="http://developer.axis.com/software/"> ("CRIS" = Code Reduced Instruction Set RISC architecture)</item>
|
||||
<item>Elan SC520 and SC300</item>
|
||||
<item>Fujitsu <url name="FR-V" url="http://sources.redhat.com/ecos/hardware.html#FR-V"></item>
|
||||
<item>Hitachi <url name="H8" url="http://www.uclinux.org/pub/uClinux/ports/h8/"> series</item>
|
||||
<item>Intel i960</item>
|
||||
<item>Intel IA32-compatibles (Cyrix MediaGX, STMicroelectronics <url name="STPC" url="http://www.stmcu.com/forums-cat-132-6.html">, ZF Micro ZFx86)</item>
|
||||
<item>Matsushita <url name="AM3x" url="http://sources.redhat.com/ecos/hardware.html#Matsushita%20AM3x"></item>
|
||||
<item>MIPS-compatibles (Toshiba <url name="TMPRxxxx / TXnnnn" url="http://www.bluecat.com/products/bluecat/bluecatbsp.php3#mips">, NEC <url name="VR" url="http://www.linux-vr.org/"> series)</item>
|
||||
<item>MIPS-compatibles (Toshiba <url name="TMPRxxxx / TXnnnn" url="http://www.bluecat.com/products/bluecat/bluecatbsp.php3#mips">, NEC <url name="VR" url="http://www.linux-vr.org/"> series, <url name="Realtek 8181" url="http://www.deakin.edu.au/~btfo/networking/minitar.html">)</item>
|
||||
<item>Motorola 680x0-based machines (Motorola VMEbus boards, <url name="ISICAD Prisma" url="http://ds.dial.pipex.com/town/way/fr30/"> machines, and Motorola <url name="Dragonball" url="http://www.linuxdevices.com/products/PD5338609592.html"> & <url name="ColdFire" url="http://www.uclinux.org/ports/coldfire/"> CPUs, and Cisco 2500/3000/4000 series routers)</item>
|
||||
<item>Motorola embedded <url name="PowerPC" url="http://penguinppc.org/embedded/hardware/"> (including MPC / PowerQUICC I, II, III families)</item>
|
||||
<item>NEC <url name="V850E" url="http://www.ee.nec.de/_uclinux/"></item>
|
||||
<item>Renesas Technology (formerly Hitachi) SH3/SH4 (SuperH: <url name="link1" url="http://www.superhlinux.com/"> <url name="link2" url="http://linuxsh.sourceforge.net/">)</item>
|
||||
<item>Samsung <url name="CalmRISC" url="http://sources.redhat.com/ecos/hardware.html#CalmRISC"></item>
|
||||
<item>Texas Instruments's <url name="DM64x" url="http://linuxdevices.com/news/NS3468265897.html"> and <url name="C54x DSP" url="http://www.linuxdevices.com/news/NS9254493853.html"> families</item>
|
||||
</itemize>
|
||||
</item>
|
||||
<item><bf>Intel <url name="8086 / 80286"
|
||||
|
@ -1437,11 +1439,11 @@ Have fun!
|
|||
<sect1>Terms of use
|
||||
<p>
|
||||
|
||||
Copyright (C) 2003, Rick Moen. Copyright (C) 1997-1998 by Kendall Grant
|
||||
Copyright (C) 2003-2004, Rick Moen. Copyright (C) 1997-1998 by Kendall Grant
|
||||
Clark. This document may be distributed under the terms set forth
|
||||
in the LDP licence at <url
|
||||
name="http://www.tldp.org/COPYRIGHT.html"
|
||||
url="http://www.tldp.org/COPYRIGHT.html">.
|
||||
in the Creative Commons Attribution-ShareAlike 1.0 licence at <url
|
||||
name="http://creativecommons.org/licenses/by-sa/1.0/"
|
||||
url="http://creativecommons.org/licenses/by-sa/1.0/">.
|
||||
|
||||
<sect1>New versions
|
||||
<p>
|
||||
|
@ -1504,6 +1506,7 @@ Gazette's move to new hosting. Added LinuxFocus.</item>
|
|||
<item>1.7.4: Added LinuxWorld Magazine, fixed URL of Recipe for
|
||||
a Successful Linux User Group, which I moved. Added Tux.Org and
|
||||
LinuxUserGroups.org as LUG support organisations.
|
||||
<item>1.7.5: Added several more embedded CPUs to the supported list, implemented licence change to Creative Commons Attribution ShareAlike 1.0 after securiing permission from Kendall Clark.</item>
|
||||
</itemize>
|
||||
|
||||
|
||||
|
@ -1514,7 +1517,7 @@ I would like to give a big thank-you to Kendall Grant Clark for the
|
|||
initial versions of this document in 1997-1998, and for trusting me to take
|
||||
over and renovate his creation starting in 2003.
|
||||
|
||||
Warn regards and thanks to <url name="Chris Browne"
|
||||
Warm regards and thanks to <url name="Chris Browne"
|
||||
url="mailto:%20cbbrowne@cbbrowne.com%20"> for describing the situation with
|
||||
non-profit and charitable groups in Canada, his thoughts on financial
|
||||
donations as a way to participate in Linux and the free software and
|
||||
|
@ -1534,6 +1537,5 @@ suggestions:
|
|||
<item>Don Marti</item>
|
||||
</itemize>
|
||||
|
||||
|
||||
</article>
|
||||
|
||||
|
|
Loading…
Reference in New Issue