牛骨文教育服务平台(让学习变的简单)
博文笔记

comp.os.msdos.programmer

创建时间:2011-08-14 投稿人: 浏览次数:142
             
This is part 1 of 5 parts.

TABLE OF CONTENTS

PART 1: (this part)
Section 1.  General FAQ and Newsgroup Information
  <Q:01.01> - Is MS-DOS Dead?
  <Q:01.02> - What is this article for?
  <Q:01.03> - Who has contributed to this article?
  <Q:01.04> - How can I search this article for a particular topic?
  <Q:01.05> - Are the answers guaranteed to be correct and complete?
  <Q:01.06> - What is comp.os.msdos.programmer about?
  <Q:01.07> - Is comp.os.msdos.programmer just for C programmers?
  <Q:01.08> - What is comp.sys.ibm.pc.programmer?
  <Q:01.09> - Is comp.os.msdos.programmer available as a mailing list?
  <Q:01.10> - What"s this netiquette?
  <Q:01.11> - How can I learn more about Usenet?
  <Q:01.12> - What other technical newsgroups should I know about?
  <Q:01.13> - Where are FAQ lists archived?
  <Q:01.14> - Where can I get the latest copy of this FAQ list?

Section 2.  General Reference
  <Q:02.01> - Are there any good on-line references for PC hardware
              components?
  <Q:02.02> - Are there any good on-line references for PC interrupts?
  <Q:02.03> - What and where is Ralf Brown"s interrupt list?
  <Q:02.04> - Where can I find lex, yacc, and language grammars?
  <Q:02.05> - What"s the best book to learn programming?
  <Q:02.06> - Why won"t my code work?
  <Q:02.07> - Are there any good sources of example code?
  <Q:02.08> - What and where is SNIPPETS?
  <Q:02.09> - Is the source code MS-DOS available?
  <Q:02.10> - What are my alternatives for MS-DOS compatible OSes?
  <Q:02.11> - What and where is FreeDOS?
  <Q:02.12> - Where can I find out about batch files?

PART 2: 
Section 3.  Compile and link
  <Q:03.01> - What the heck is DGROUP > 64K?
  <Q:03.02> - How do I fix "automatic data segment exceeds 64K" or "stack
              plus data exceed 64K"?
  <Q:03.03> - Will Borland C code and Microsoft C code link together?
  <Q:03.04> - Why did my program bomb at run time with "floating point
              formats not linked" or "floating point not loaded"?
  <Q:03.05> - How can I change the stack size in Borland"s C compilers?
  <Q:03.06> - What"s the format of an .OBJ file?
  <Q:03.07> - What"s the format of an .EXE header?
  <Q:03.08> - What"s the difference between .COM and .EXE formats?
  <Q:03.09> - How do I create a .COM file?
  <Q:03.10> - Where is EXE2BIN located?
  <Q:03.11> - What does this message mean: "A20 already enabled so test
              is meaning less?"

Section 4.  Keyboard
  <Q:04.01> - How can I read a character without echoing it to the
              screen, and without waiting for the user to press the Enter
              key?
  <Q:04.02> - How can I find out whether a character has been typed,
              without waiting for one?
  <Q:04.03> - How can I disable Ctrl-C/Ctrl-Break and/or Ctrl-Alt-Del?
  <Q:04.04> - How can I disable the print screen function?
  <Q:04.05> - How can my program turn NumLock (CapsLock, ScrollLock) on
              or off?
  <Q:04.06> - How can I speed up the keyboard"s auto-repeat?
  <Q:04.07> - What is the SysRq key for?
  <Q:04.08> - How can my program tell what kind of keyboard is on the
              system?
  <Q:04.09> - How can I tell if input, output, or stderr has been
              redirected?
  <Q:04.10> - How can I increase the size of the keyboard buffer?
  <Q:04.11> - How can I stuff characters into the keyboard buffer?

PART 3: 
Section 5.  Disks and files
  <Q:05.01> - What drive was the PC booted from?
  <Q:05.02> - How can I boot from drive B:?
  <Q:05.03> - Which real and virtual disk drives are valid?
  <Q:05.04> - How can I make my single floppy drive both a: and b:?
  <Q:05.05> - How can I disable access to a drive?
  <Q:05.06> - How can a batch file test existence of a directory?
  <Q:05.07> - Why won"t my C program open a file with a path?
  <Q:05.08> - How can I redirect printer output to a file?
  <Q:05.09> - How can I redirect the output of a batch file?
  <Q:05.10> - How can I redirect stderr?
  <Q:05.11> - How can my program open more files than DOS"s limit of 20?
  <Q:05.12> - How can I read, create, change, or delete the volume label?
  <Q:05.13> - How can I get the disk serial number?
  <Q:05.14> - What"s the format of .OBJ, .EXE., .COM files?
  <Q:05.15> - How can I flush the software disk cache?
  <Q:05.16> - How can I see if a drive is a RAM drive?
  <Q:05.17> - How can I determine a hard drive"s manufacturer?
  <Q:05.18> - Where can I find information about the ATA/ATAPI
              specification?
  <Q:05.19> - How can I copy files to or from filenames containing date
              information?

Section 6.  Serial ports (COM ports)
  <Q:06.01> - How do I set my machine up to use COM3 and COM4?
  <Q:06.02> - How do I find the I/O address of a COM port?
  <Q:06.03> - But aren"t the COM ports always at I/O addresses 3F8, 2F8,
              3E8, and 2E8?
  <Q:06.04> - How do I configure a COM port and use it to transmit data?

PART 4: 
Section 7.  Other hardware questions and problems
  <Q:07.01> - Which 80x86 CPU is running my program?
  <Q:07.02> - How can a C program send control codes to my printer?
  <Q:07.03> - How can I redirect printer output?
  <Q:07.04> - Which video adapter is installed?
  <Q:07.05> - How do I switch to 43- or 50-line mode?
  <Q:07.06> - How can I find the Microsoft mouse position and button
              status?
  <Q:07.07> - How can I access a specific address in the PC"s memory?
  <Q:07.08> - How can I read or write my PC"s CMOS memory?
  <Q:07.09> - How can I access memory beyond 640K?
  <Q:07.10> - How can I use the protected mode?
  <Q:07.11> - How can I tell if my program is running on a PS/2-style
              machine.
  <Q:07.12> - Is there a 80x87 math unit installed?
  <Q:07.13> - How can I power off the computer from a batch file?

Section 8.  Other software questions and problems
  <Q:08.01> - How can a program reboot my PC?
  <Q:08.02> - How can I time events with finer resolution than the system
              clock"s 55 ms (about 18 ticks a second)?
  <Q:08.03> - How can I find the error level of the previous program?
  <Q:08.04> - How can a program set DOS environment variables?
  <Q:08.05> - How can I change the switch character to - from /?
  <Q:08.06> - How can I write a TSR (terminate-stay-resident utility)?
  <Q:08.07> - Why does my interrupt function behave strangely?
  <Q:08.08> - How can I write a device driver?
  <Q:08.09> - What can I use to manage versions of software?
  <Q:08.10> - What"s this "null pointer assignment" after my C program
              executes?
  <Q:08.11> - How can a batch file tell whether it"s being run in a DOS
              box under Windows?
  <Q:08.12> - How can my program tell if it"s running under Windows?
  <Q:08.13> - How can a program tell whether ANSI.SYS is installed?
  <Q:08.14> - How do I copyright software that I write?
  <Q:08.15> - How can I place date and time information into environment
              variables?

PART 5: 
Section 9.  Downloading
  <Q:09.01> - What are SimTel and Garbo?
  <Q:09.02> - Can I get archives on CD-ROM?
  <Q:09.03> - Where do I find program <mumble>?

Section 10.  Vendors and products
  <Q:10.01> - How can I contact Borland?
  <Q:10.02> - How can I contact Microsoft?
  <Q:10.03> - What is the current version of DJGPP?
  <Q:10.04> - What and where is DJGPP?
  <Q:10.05> - Are there any good shareware/freeware compilers?
  <Q:10.06> - Where is QBASIC?
  <Q:10.07> - What is a vendor"s web site address?



Subject: Section 1. General FAQ and Newsgroup Information
Date: 5 Feb 2002 22:03:03 -0400

 The General FAQ and Newsgroup Information section contains information
 about how to use the FAQ and the newsgroup.



Subject: <Q:01.01> - Is MS-DOS Dead?
Date: 7 Feb 2002 14:31:56 -0400

 No. Though Microsoft may not be actively developing MS-DOS there are
 still many computers that are not capable of running Microsoft Windows.
 The current versions of Microsoft Windows will also run most MS-DOS
 programs; therefore, MS-DOS is not dead, and will most- likely never die
 just as Commodore-64s and Amigas have not completely died.

 Indeed, DOS has found a new life in embedded systems. Other parties
 continue to develop MS-DOS compatible operating systems for more
 information see <Q:02.10> [What are my alternatives for MS-DOS
 compatible OSes?]

 Windows NT, 2000, and XP all have a "Command Prompt" which is similar to
 the orignal MS-DOS command prompt. The new Windows command prompt has
 some differences from the original MS-DOS command prompty; see <Q:01.12>
 [What other technical newsgroups should I know about?] for pointers on
 where to learn about these diffences.



Subject: <Q:01.02> - What is this article for?
Date: 5 Feb 2002 22:03:03 -0400

 This is the FAQ (Frequently Asked Questions) list for the newsgroup
 comp.os.msdos.programmer.

 FAQ lists are intended to reduce the noise level in their newsgroups
 that results from the repetition of the same questions, correct answers,
 wrong answers, corrections to the wrong answers, corrections to the
 corrections, debate, etc.

 This list should serve as a repository of the canonical "best" answers
 to the questions in it. The names of folks who have helped to improve
 this FAQ list are listed in <Q:01.03> [Who has contributed to this
 article?]



Subject: <Q:01.03> - Who has contributed to this article?
Date: 27 Jun 2003 07:18:11 -0400

 This list is maintained and edited by Jeffrey Carlyle. To contact him
 send email to <mailto:jeffrey@carlyle.com> or visit his website at
 <http://www.jeffc.org/> for more information.

 Stan Brown, as the former list maintainer, has been the major
 contributor: Stan wrote most of this list.

 Many articles posted in comp.os.msdos.programmer sparked ideas or
 provided information for the first version of this list. Though they are
 not responsible for any errors, thanks are due to the following persons
 for posted articles or private email that led to improvements in this
 FAQ list:

 Jamshid Afshar, Mark Aitchison, Sanjay Aiyagari, George Almasi, Aaron
 Auseth, Robert Baker, Preston Bannister, Scott Barman, Denis Beauregard,
 Per Bergland, Mike Black, Chris Blum, Ron Bodkin, Mark Brader, Jon
 Brinkmann, Andrew James Bromage, Glynn Brooks, Paul Brooks, Ralf Brown,
 Stan Brown, Shaun Burnett, D"Arcy J.M. Cain, Jeffrey Carlyle, Raymond
 Chen, Dale Curtis, Denny de Jonge, Eric DeVolder, Alan Drew, Paul
 Ducklin, Gary Dueck, Dave Dunfield, Roland Eriksson, Mark Evans, Markus
 Fischer, George Forsman, Roger Fulton, Vincent Giovannone, Robert
 Grunloh, B.Haible, Janos Haide, Klaus Hartnegg, Kris Heidenstrom, Tom
 Haapanen, Joel Hoffman, Ari Hovila, Chin Huang, Daniel P Hudson, Joe
 Huffman, Michael Holin, Mike Iarrobino, Byrial Jensen, Rune Jorgensen,
 Ajay Kamdar, Everett Kaser, Tim Kannel, JJ Keijser, Jeff Kellam, Igor
 Kerp, Jen Kilmer, Reinhard Kirchner, Dave Kirsch, Chad Knudsen, Samuel
 Ko, Jan Kotas, Janne Kukonlehto, Robert Luursema, Benjamin Lee, Stephen
 Lee, Jim Lynch, Greg Malknecht, Sidney Markowitz, Jim Marks, Dimitri
 Matzarakis, Fred McCall, Ken McKee, Doug Merrett, Tom Milner, Bill
 Moore, Duncan Murdoch, Steve Murphy, Daniel Neri, Mert Nickerson, David
 Nugent, John Oldenburg, David Pape, Keith Petersen, Kevin D. Quitt, Karl
 Riedling, Arthur Rubin, Gerald Ruderman, Timo Salmi, Tapio Sand, Charles
 Sandmann, John Schmid, Russell Schulz, Paul Schylter, Huseyin Sevay,
 Adam Seychell, Ajay Shah, Bob Smith, John Stockton, Bob Stout, Sean
 Sullivan, Steve Summit, Tom Swingle, Anders Thulin, Curt Tilmes, Rick
 Watkins, Ya-Gui Wei, Morten Welinder, Joe Wells, Scott Winder, Gregory
 Youngblood, Eli Zaretski, ceison@lis.net.au, khill@vax1.umkc.edu



Subject: <Q:01.04> - How can I search this article for a particular
        topic?
Date: 5 Feb 2002 22:03:03 -0400

 To locate a certain word or phrase use your newsreader"s, browser"s, or
 editor"s search function.



Subject: <Q:01.05> - Are the answers guaranteed to be correct and
        complete?
Date: 5 Feb 2002 22:03:03 -0400

 There has been an attempt to check all facts, but THERE IS NO WARRANTY
 ON THE CODE OR ON THE TECHNIQUES DESCRIBED HEREIN. Please send
 corrections to <mailto:jeffrey@carlyle.org>. All the code has been
 tested; but the testing may not have been perfect, and machines and
 configurations vary. (Except where otherwise noted, C code was tested
 with MSC 5, BC++ 2.0, BC++ 4.x, MSVC 5, or MSVC 6.)

 The mention of particular books or programs must not be construed to
 reflect unfavorably on any that are not mentioned.

 If you encounter any errors in the FAQ please contact me via email.



Subject: <Q:01.06> - What is comp.os.msdos.programmer about?
Date: 5 Feb 2002 22:03:03 -0400

 Comp.os.msdos.programmer (comp.sys.ibm.pc.programmer until September
 1990) concerns programming for MS-DOS systems. The article "USENET
 Readership report for Jul 94" in news.lists shows 120,000 readers of
 this newsgroup worldwide. Traffic (exclusive of crossposts) was 1981
 articles aggregating 3.1 Megabytes. It ranked as the 79th most popular
 newsgroup.

 More programming topics in the newsgroup focus on C than on any one
 other language, but we are not just for C programmers (see <Q:01.07> [Is
 comp.os.msdos.programmer just for C programmers?]).

 Since most MS-DOS systems run on hardware that is roughly compatible
 with the IBM PC, on Intel 8088, 80188, or 80x86 chips, we tend to get a
 lot of questions and answers about programming other parts of the
 hardware.



Subject: <Q:01.07> - Is comp.os.msdos.programmer just for C programmers?
Date: 7 Feb 2002 14:40:59 -0400

 No, it is for all programmers who want to share information about
 programming in MS-DOS and DOS replacements like 4DOS. Programs and
 questions are also posted in Pascal, assembly, and other languages
 (including MS-DOS batch programming).

 Why does the newsgroup seem to be so C-oriented sometimes? There are two
 reasons. First, comp.lang.c and comp.lang.pascal have evolved in
 different directions. Comp.lang.pascal has split into discussions about
 individual Pascal compilers. comp.lang.pascal.borland welcomes
 discussion specific to Turbo Pascal, and the other new groups likewise.
 Turbo Pascal programmers tend to find DOS questions welcomed in
 comp.lang.pascal.borland, so that comp.os.msdos.programmer gets less of
 the "DOS in Turbo Pascal" traffic. On the other hand, comp.lang.c has
 stayed closer to talking only about the C language, and vendor-specific
 or operating-system-specific questions are not welcome. This tends to
 push questions about disks, DOS file structure, video, the keyboard,
 TSRs, etc. to comp.os.msdos.programmer even when those programs are
 written in C.

 This FAQ is definitely C-oriented, not because that"s necessarily best
 but because I tried to stick to what I could verify personally. As a C
 programmer (with some assembler), I could most carefully verify
 solutions in C or assembler. I felt that short, clear programs could be
 published in just one language and programmers could translate them into
 their languages of choice. But the FAQ list also contains several long
 programs written only in C; this is a defect with no obvious remedy.
 Most answers that point to source code at archive sites include both C-
 and Pascal- language source when available.



Subject: <Q:01.08> - What is comp.sys.ibm.pc.programmer?
Date: 5 Feb 2002 22:03:03 -0400

 The newsgroup comp.sys.ibm.pc.programmer is the old name of the modern
 newsgroup comp.os.msdos.programmer, and the old name has been obsolete
 since September 1990; however, some systems may not have removed the old
 group, or may have removed it but aliased it to the new name.This means
 that some people still think they"re posting to
 comp.sys.ibm.pc.programmer even though they"re actually posting to
 comp.os.msdos.programmer.

 You can easily verify the non-existence of comp.sys.ibm.pc.programmer by
 reference to the "List of Active Newsgroups" posted to news.groups. It"s
 available at:

 <ftp://rtfm.mit.edu/pub/usenet-by-group/news.answers/>

 (For RTFM usage instructions see <Q:01.13> [Where are FAQ lists
 archived?])



Subject: <Q:01.09> - Is comp.os.msdos.programmer available as a mailing
        list?
Date: 5 Feb 2002 22:03:03 -0400

 Sorry, the newsgroup is not available as a mailing list.



Subject: <Q:01.10> - What"s this netiquette?
Date: 5 Feb 2002 22:03:03 -0400

 Netiquette is good Usenet etiquette. It includes basic rules like the
 ones below. (See also <Q:01.11> [How can I learn more about Usenet?])

 * Always read a newsgroup for a reasonable time before you post an
   article to it.

 * Pick the one right group for your article; don"t crosspost unless
   absolutely necessary. If you absolutely must post an article to more
   than one group, do crosspost it and don"t post the same article
   separately to each group. See <Q:01.12> [What other technical
   newsgroups should I know about?] when considering where to post an
   article.

 * Before you post a question, make sure you"re posting to the right
   newsgroup; the best way to do that is to observe the proceeding rule.
   Check the group"s FAQ list (if it has one) to make sure that your
   question isn"t already answered there; see <Q:01.13> [Where are FAQ
   lists archived?]

 * When you post a question, if you ask for email responses then promise
   to post a summary. Keep your promise. And make it a real summary:
   don"t just append all the email you got. Instead, write your own
   (brief) description of the solution: this is the best way to make sure
   you really understand it.

 * Before you post a follow-up, read the other follow-ups. Very often
   you"ll find that someone else has already made the point you had in
   mind.

 * When someone posts a question, if you want to know the answer don"t
   post a "me, too". Instead send email to the poster asking him or her
   to share responses with you.

 * When posting a follow-up to another posted article, remove all headers
   and signature lines from the old article; just keep the line "In
   <article>, so-and-so writes:". Also cut the original article down as
   much as possible; just keep enough of it to remind readers of the
   context.

 * Keep lines in posted articles to 72-75 characters. Many newsreaders
   chop off column 81 or arbitrarily insert a newline there, which makes
   longer lines difficult or impossible to read. But you need to keep
   well below 80 characters per line to allow for the > characters that
   get inserted when other people post follow-ups to your article.

 * Keep your signature to 4 lines or less (including any graphics) and
   for heaven"s sake make sure it doesn"t get posted twice in your
   article.

 * Don"t post email without first obtaining the permission of the sender.



Subject: <Q:01.11> - How can I learn more about Usenet?
Date: 5 Feb 2002 22:03:03 -0400

 There are two important newsgroups for learning about how Usenet and
 newsreader software works:

 * News.announce.newusers contains periodic postings that everybody is
   asked to read before posting anything to Usenet. (In theory, all new
   users are subscribed to news.announce.newusers automatically. But in
   practice not all newsreader software does that, so that many people
   violate the guidelines given there simply because they don"t know
   about them.)

 * News.newusers.questions is described as "Q & A for users new to the
   Usenet". But new and long-time users can ask or answer questions about
   Usenet and newsreader software there. There"s an important article,
   "Welcome to news.newusers.questions! (Weekly posting)", that everyone
   is asked to read before posting to news.newusers.questions. (See below
   for ways to get a copy of that article.)

 The following postings in news.announce.newusers might be considered the
 "mandatory course" for new users:

 * Introduction to news.announce.newusers

 * What is Usenet

 * Answers to Frequently Asked Questions

 * Rules for posting to Usenet

 * A Primer on How to Work with the Usenet Community

 * Hints on writing style for Usenet

 * Emily Postnews Answers Your Questions on Netiquette

 The articles mentioned above are downloadable via ftp from rtfm.mit.edu
 in the following files:

 Welcome to news.newusers.questions (Weekly posting):
 <ftp://rtfm.mit.edu/pub/usenet-by-group/news.answers/>

 Introduction to news.announce.newusers:
 <ftp://rtfm.mit.edu/pub/usenet-by-group/news.answers/news-announce/introduction/part1>

 What is Usenet:
 <ftp://rtfm.mit.edu/pub/usenet-by-group/news.answers/usenet/what-is/part1>
 <ftp://rtfm.mit.edu/pub/usenet-by-group/news.answers/usenet/what-is/part2>

 Answers to Frequently Asked Questions:
 <ftp://rtfm.mit.edu/pub/usenet-by-group/news.answers/usenet/faq/>

 Rules for posting to Usenet:
 <ftp://rtfm.mit.edu/pub/usenet-by-group/news.answers/usenet/posting-rules/>

 A Primer on How to Work with the Usenet Community:
 <ftp://rtfm.mit.edu/pub/usenet-by-group/news.answers/usenet/primer/>

 Hints on writing style for Usenet:
 <ftp://rtfm.mit.edu/pub/usenet-by-group/news.answers/usenet/writing-style/part1>

 Emily Postnews Answers Your Questions on Netiquette:
 <ftp://rtfm.mit.edu/pub/usenet-by-group/news.answers/usenet/emily-postnews/>

 For rtfm.mit.edu instructions, see <Q:01.13> [Where are FAQ lists
 archived?]



Subject: <Q:01.12> - What other technical newsgroups should I know about?
Date: 7 Feb 2002 14:35:45 -0400

 It is impractical to attempt to list all relevant newsgroups here. The
 few that are listed are some of the older newsgroups. To find additional
 groups use your newsreader"s newsgroup search facility.

 Caution: Some of these newsgroups have specialized charters; you"ll
 probably get flamed (and deserve it) if you post to an inappropriate
 group. Most groups have FAQ lists that will tell you what"s appropriate.
 Don"t post a request for the FAQ list; instead, retrieve it yourself:
 see <Q:01.13> [Where are FAQ lists archived?]

 * The various misc.forsale.computers.* are where you post notices of
   equipment, software, or computer books that you want to sell. Please
   don"t post or crosspost those notices to comp.os.msdos.programmer.

 * The various comp.os.ms-windows.programmer.* groups (formerly
   comp.windows.ms.programmer) are for articles specifict to the various
   Microsoft Windows platforms.

 * The various comp.sys.ibm.pc.hardware.* groups are for more
   hardware-oriented discussions of the machines that run DOS.

 * The various comp.lang.* groups for articles and questions on the
   programming languages. Caution: some groups welcome discussions that
   are operating-system dependent or vendor specific; others do not. For
   example, comp.lang.c is definitely _not_ for questions about
   programming DOS or PC system features, even if the programs are
   written in C.

 * comp.binaries.ibm.pc.wanted: AFTER you have looked in the other
   groups, this is the place to post a request for a particular binary
   program.

 * comp.archives.msdos.announce (moderated) explains how to use the
   archive sites, especially Garbo and SimTel, and lists files uploaded
   to them. Discussions belong in comp.archives.msdos.d, which replaced
   comp.binaries.ibm.pc.archives in December 1992.

 * comp.binaries.ibm.pc.d is for discussions about programs posted in
   comp.binaries.ibm.pc, and only those programs. This is a good place to
   report bugs in the programs, but not to ask where to find them (see
   cbip.wanted, above). comp.binaries.ibm.pc.d is NOT supposed to be a
   general PC discussion group.

 * comp.sources.misc: a moderated group for source code for many computer
   systems. It tends to get lots of Unix stuff, but you may also pick up
   some DOS-compatible code here.

 * alt.sources: an unmoderated group for source code. Guidelines are
   posted periodically.

 * comp.os.msdos.djgpp is specifically for support of DJGPP. For more
   information on DJGPP see <Q:10.04> [What and where is DJGPP?]

 * comp.os.msdos.programmer.turbovision is specifically for programming
   in Turbo Vision.

 * rec.games.programmer discusses many graphics programming topics.

 * alt.msdos.batch specializes in the discussion of MS-DOS batch files.

 * alt.msdos.batch.nt specializes in the discussion of batch files for
   Windows NT, 2000, and XP.



Subject: <Q:01.13> - Where are FAQ lists archived?
Date: 5 Feb 2002 22:03:03 -0400

 Very possibly the FAQ list you want is already at your site. Check the
 newsgroup news.answers; if your site doesn"t carry news.answers, check
 comp.answers, rec.answers, etc., according to the top-level name in the
 FAQ list"s "home" newsgroup. Articles are posted to the *.answers groups
 in a way that should make them last until the next versions are posted.
 If they expire sooner at your site, you might want to lobby your
 sysadmin to treat the moderated *.answers groups as a special case and
 grant them longer expiration times than other groups.

 To ftp most FAQ lists, connect to
 <ftp://rtfm.mit.edu/pub/usenet-by-group/>. The name of the
 file that you want is the Archive-name from the top of the article. For
 instance, if the Archive-name were software-eng/part1 you would retrieve
 <ftp://rtfm.mit.edu/pub/usenet-by-group/news.answers/software-eng/part1>.

 By email (only if you have no ftp access, please), the server is
 <mailto:mail-server@rtfm.mit.edu>. It accepts "send" commands that omit
 the leading "/pub/" from file names; for example:

 send usenet-by-group/news.answers/software-eng/part1

 For full instructions about the mail server, send it a message
 consisting of these two lines:

     help
     index

 Not just FAQ lists, but every article listed in the "List of Periodic
 Informational Postings" (LoPIP) can be obtained by ftp or email from
 rtfm.mit.edu. If you have an old copy of an informational article, look
 for an "Archive-name" at the beginning. The article is stored under that
 name at <ftp://rtfm.mit.edu/pub/usenet-by-group/>. If the
 article has no Archive-name, check the first name on the Newsgroups line
 and change to that directory under
 <ftp://rtfm.mit.edu/pub/>.

 Stan Brown also maintains a FAQ on finding FAQs. It can be found at
 <http://www.mindspring.com/~brahms/faqget.htm>.



Subject: <Q:01.14> - Where can I get the latest copy of this FAQ list?
Date: 14 Aug 2003 06:46:14 -0400

 The FAQ"s home page is at <http://www.jeffc.org/msdos/>. The latest
 version of the FAQ can always be found there.

 Additionally there are several sites that archive the FAQ list. A couple
 of the more popular FAQ archives are
 <ftp://rtfm.mit.edu/pub/usenet-by-group/news.answers/>
 and
 <http://www.faqs.org/faqs/by-newsgroup/comp/comp.os.msdos.programmer.html>.

 For more information on the FAQ archives, see <Q:01.13> [Where are FAQ
 lists archived?]



Subject: Section 2. General Reference
Date: 5 Feb 2002 22:03:03 -0400

 The General Reference section contains information about finding popular
 online MS-DOS reference materials.



Subject: <Q:02.01> - Are there any good on-line references for PC
        hardware components?
Date: 8 Feb 2002 19:36:40 -0400

 Good reports of HELPPC21 have been posted. It is downloadable as:
 <ftp://garbo.uwasa.fi/pc/programming/helppc21.zip>

 This hypertext system contains much information on ports and other
 hardware, as well as some overlap with Ralf Brown"s interrupt list
 <Q:02.03> [What and where is Ralf Brown"s interrupt list?]. It is
 shareware ($25).

 Additional information (and more recent) information can be found in
 Ralf Brown"s interrupt list; see <Q:02.03> [What and where is Ralf
 Brown"s interrupt list?] for information on locating the list.



Subject: <Q:02.02> - Are there any good on-line references for PC
        interrupts?
Date: 5 Feb 2002 22:03:03 -0400

 The definitive work is Ralf Brown"s interrupt list. For more information
 see <Q:02.03> [What and where is Ralf Brown"s interrupt list?].



Subject: <Q:02.03> - What and where is Ralf Brown"s interrupt list?
Date: 8 Feb 2002 19:37:16 -0400

 Ralf Brown"s Interrupt List contains megabytes of information on
 documented and (officially) undocumented BIOS and DOS interrupts, DOS
 tables, and interrupts hooked by many software packages.

 The distribution files contain not only the actual list, but also a
 collection of utilities and conversion programs for the list.

 Ralf Brown"s Interrupt List can be downloaded from his page at:
 <http://www.cs.cmu.edu/~ralf/files.html>

 HTML versions of Ralf Brown"s Interrupt List can be found at:

 * <http://www.delorie.com/djgpp/doc/rbinter/>

 * <http://ctyme.com/rbrown.htm>

 Updates are announced in comp.archives.msdos.announce and on Ralf
 Brown"s web page at: <http://www.cs.cmu.edu/~ralf/>

 Ralf"s web page contains the somewhat unassuming line: "[h]e is
 well-known in cyberspace for maintaining the Interrupt List..." Ralf has
 done astounding work as the maintainer of the list; his work has been
 greatly appreciated by thousands of programmers.



Subject: <Q:02.04> - Where can I find lex, yacc, and language grammars?
Date: 5 Feb 2002 22:03:03 -0400

 The FAQ list of the comp.compilers newsgroup answers this for BASIC, C,
 Pascal, and other languages. See <Q:01.13> [Where are FAQ lists
 archived?]



Subject: <Q:02.05> - What"s the best book to learn programming?
Date: 5 Feb 2002 22:03:03 -0400

 Sorry, this FAQ list cannot settle religious arguments.

 Much of the heat over this topic arises because each person believes
 that the book that he or she learned from is the best book, but
 different people have very different experiences of the same book. The
 only person who can tell you which is the best book for learning a given
 topic is you.

 Your best bet is to go to a fairly well stocked bookstore when you have
 a couple of hours to spare. Start at one end of the shelf and work your
 way methodically through every book that looks like it might cover what
 you want to learn. Look at the tables of contents; read a page or two
 from each book. Then make your decision. If money is a problem or if
 you"re not sure of your choice, check out your top two or three from
 your library.



Subject: <Q:02.06> - Why won"t my code work?
Date: 7 Feb 2002 14:44:40 -0400

 First you need to try to determine whether the problem is in your use of
 the programming language or in your use of MS-DOS and your PC hardware.
 (Your manual should tell you which features are standard and which are
 vendor- or MS DOS- or PC-specific. You have read your manual carefully,
 haven"t you?)

 If the feature that seems to be working wrong is something related to
 your PC hardware or to the internals of MS-DOS, this group is the right
 place to ask. (Please check this FAQ list first, to make sure your
 question isn"t already answered here.)

 On the other hand, if your problem is with the programming language, the
 comp.lang hierarchy (including comp.lang.pascal.* and comp.lang.c) is
 probably a better resource. Please read the other group"s FAQ list
 thoroughly before posting. (These exist in comp.lang.c, comp.lang.c++,
 comp.lang.modula3, comp.lang.lisp, comp.lang.perl; they may exist in
 other groups as well. comp.lang.pascal.borland has a Mini-FAQ.) It"s
 almost never a good idea to crosspost between comp.os.msdos.programmer
 and a language group.

 Before posting in either place, try to make your program as small as
 possible while still exhibiting the bad behavior. Sometimes this alone
 is enough to show you where the trouble is. Also edit your description
 of the problem to be as short as possible. This makes it look more like
 you tried to solve the problem on your own, and makes people more
 inclined to try to help you. See also <Q:01.10> [What"s this
 netiquette?]



Subject: <Q:02.07> - Are there any good sources of example code?
Date: 5 Feb 2002 22:03:03 -0400

 Bob Stout maintains a very large archive called SNIPPETS. For more
 information see <Q:02.08> [What and where is SNIPPETS?].



Subject: <Q:02.08> - What and where is SNIPPETS?
Date: 6 Feb 2002 00:00:45 -0400

 Excerpt from the SNIPPETS FAQ follows:

     The  SNIPPETS archive, maintained by Bob Stout, contains  public
     domain/freeware portable C/C++ source code & instructional text.
     There are more than 500 files, including:
  
       Approx.  56,000  lines  of  code + approx.  10,000  lines  of
       tutorials.
       Approx. 30% PC-specific, 70% portable
       Approx. 6% C++-specific, 94% C/C++
  
     The  PC-specific functions are system-level utility  code  -  no
     multimedia or GUI code. Tested on all popular PC compilers  plus
     Unix  compilers  where  possible. An  eclectic  collection  with
     everything  from  macros  to complete cut-and-paste  C/C++  code
     solutions & utilities, along with FAQ and instructional files.

 Official SNIPPETS sites: <ftp://ftp.snippets.org/>
 <http://www.snippets.org/>



Subject: <Q:02.09> - Is the source code MS-DOS available?
Date: 5 Feb 2002 22:03:03 -0400

 No, the source code to MS-DOS is not currently available; however, the
 source code to an MS-DOS alternative known as FreeDOS is freely
 available; see <Q:02.11> [What and where is FreeDOS?] for more
 information.



Subject: <Q:02.10> - What are my alternatives for MS-DOS compatible OSes?
Date: 5 Feb 2002 22:03:03 -0400

 The FreeDOS Project (see <Q:02.11> [What and where is FreeDOS?]) has
 created an open source MS-DOS compatible operating system known as
 FreeDOS. Additionly, IBM has released an updated version of their PC-DOS
 known as PC-DOS 2000.

 Lineo currently owns the rights to DR-DOS, but they appear to no longer
 be developing or supporting it; however, one can still find DR-DOS and
 even CP/M on their FTP site: <ftp://ftp.lineo.com/pub/drdos/>



Subject: <Q:02.11> - What and where is FreeDOS?
Date: 7 Feb 2002 00:49:45 -0400

 The FreeDOS Project creates and maintains FreeDOS an open source
 operating system covered by the GNU General Public License. FreeDOS is a
 functional operating system; however, they have not yet reached their
 stated of goal of being able to run Windows and DOOM. The FreeDOS
 Project has not accessed any Microsoft source code and is creating
 FreeDOS from scratch.

 More information and the FreeDOS distribution itself can be found at:
 <http://www.freedos.org>



Subject: <Q:02.12> - Where can I find out about batch files?
Date: 7 Feb 2002 12:59:56 -0400

 If the question is not answered elsewhere in this FAQ, it may be
 answered in Timo Salmi"s "Frequently Asked Questions about MS-DOS
 batches." This list can be found at
 <ftp://garbo.uwasa.fi/pc/link/>.



Subject: Conclusion

This is the end of part 1 of 5 parts.

This text is copyright 2003 by Jeffrey Carlyle. All rights reserved.
Please see the top of this article for additional copyright information.


声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。