home *** CD-ROM | disk | FTP | other *** search
/ DP Tool Club 3 / CDASC03.ISO / sorties / 314 / misc.txt < prev    next >
Text File  |  1993-04-01  |  32KB  |  1,017 lines

  1. @Uncategorized/Miscellaneous Topics
  2. :help:?
  3. ^HelpPC Quick Reference Utility
  4.  
  5. %    Please support HelpPC by sending $25 (US, $30 outside US) to:
  6.  
  7.         David Jurgens
  8.         1550 Alton Darby Creek Road
  9.         Columbus, OH  43228
  10.         CompuServe: 71270,2422
  11.  
  12.  
  13. ^Keys used for navigating through HelpPC
  14.  
  15.     Esc    Exit current screen or HelpPC
  16.     End    Moves text or menu to the last line/item
  17.     Home    Moves text or menu to the first line/item
  18.     PgUp    Moves text or menu to page top or previous page
  19.     PgDn    Moves text or menu to page bottom or next page
  20.     F1    Switches from menu to prompting mode and vice versa
  21.     Alt-P    Write current topic to printer
  22.     Alt-W    Write topic to file HelpPC.DAT in the current directory
  23.     Alt-X    Exit HelpPC and without clearing current screen
  24.     TAB    Go to next hypertext link (Right-Arrow also)
  25.     BackTab    Go to previous hypertext link (Left-Arrow also)
  26.     Enter    Jump to highlighted hypertext link
  27.  
  28. ^Using HelpPC
  29.  
  30.     HelpPC has three modes of operation.  The first is the Menu
  31.     Mode which as its name implies is menu driven.    To use the Menu
  32.     Mode just omit the topic from the command line.     The second mode
  33.     is the command line mode where you supply a topic as a parameter.
  34.     The third is the Prompted Mode where HelpPC prompts you for
  35.     topics until you exit.   You may switch    between Menu mode and
  36.     Prompted Mode with the F1 key.
  37.  
  38. ^Examples of Command Line Usage
  39.  
  40. %    For information about:        Use the following topics:
  41.  
  42.     Installation:            HelpPC ~install~
  43.     Creating help files:        HelpPC ~HelpPC format~
  44.     Interrupts:            HelpPC int #
  45.     example:            HelpPC ~int 13~
  46.     Interrupt subfunction:        HelpPC int #,func
  47.     example:            HelpPC ~int 21,4E~
  48.     C function usage:        HelpPC function
  49.     examples:            HelpPC ~open~
  50.                     HelpPC ~is...~
  51.                     HelpPC ~str...~
  52.     Other topics:            HelpPC ~interrupt table~
  53.     examples:            HelpPC ~BIOS Data Area~  (or ~BDA~)
  54.                     HelpPC ~ANSI codes~
  55.                     HelpPC ~bibliography~
  56.  
  57.     All topics are case insensitive
  58.  
  59. ^Trademarks of Vendors Mentioned in HelpPC Databases
  60.  
  61.     ∙ Compaq is a registered trademark of Compaq Computer Corporation
  62.     ∙ CompuServe is a registered trademark of CompuServe Incorporated
  63.     ∙ DESQview is a trademark of Quarterdeck Office Systems
  64.     ∙ Epson is a registered trademark of Seiko Epson Corporation
  65.     ∙ HP is a registered trademark of Hewlett-Packard Company
  66.     ∙ IBM, PC/AT, PC-DOS, PC/XT and PS/2 are trademarks of International
  67.       Business Machines Corporation
  68.     ∙ Intel is a registered trademark of Intel Corporation
  69.     ∙ LIM and EMS are trademarks of Lotus, Intel and Microsoft Corporations
  70.     ∙ Maxtor is a trademark of Maxtor Corporation
  71.     ∙ Microsoft is a registered trademark of Microsoft Corporation
  72.     ∙ NEC is a registered trademark of NEC Electronics Incorported
  73.     ∙ Tandy is a registered trademark of Tandy Corporation
  74.     ∙ Turbo C is a registered trademark of Borland International Inc.
  75.     ∙ Other brand and product names are trademarks or registered
  76.       trademarks of their respective holders.
  77.  
  78.     - see    ~INSTALL~   ~HELPPC FORMAT~
  79. :install:setup
  80. ^INSTALL/SETUP - HELPPC Installation
  81.  
  82.     Installation requires two steps.  First, simply decompress the
  83.     HelpPC archive file.  Second, issue the following command:
  84.  
  85.     SET HLP=d:dirname     (no blanks, except between "SET HLP")
  86.  
  87.     Where 'd:' is the drive and 'dirname' is the directory where
  88.     the HelpPC.NDX and the .TXT files will reside (should be fully
  89.     qualified, with or without the trailing backslash '\', see
  90.     example below).  HelpPC.COM can exist anywhere it can be
  91.     accessed through the DOS command search path (PATH).  The
  92.     "SET HLP=" command should be placed in the AUTOEXEC.BAT file
  93.     to allow easy access to the database each time your PC is
  94.     rebooted.  It is recommended that HelpPC.COM be renamed to
  95.     something quick and comfortable to use, like  H.COM or HELP.COM.
  96.  
  97.  
  98.     As an example, if the files HelpPC.NDX and the .TXT files
  99.     reside in a directory named  C:\HELPPC  then use:
  100.  
  101. %    SET HLP=C:\HELPPC    or     SET HLP=C:\HELPPC\
  102.  
  103. :HelpPC format
  104. ^HelpPC Text File Format
  105.  
  106.     HelpPC in its standard form can handle 2000 indexed topics
  107.     and 16 independent help files.    If you find you need a larger
  108.     capacity, please contact the author.  Each file must have its
  109.     own title which will show up in the main menu.  Each topic
  110.     following the file title (see below) will show up in the
  111.     subtopic menu.  Also note that HelpPC will adjust the menu
  112.     format based on the screen height and the number of items in
  113.     the main menu.
  114.  
  115.     HelpPC text files are simple ASCII files that contain control
  116.     codes in column one.  Each file must contain a title in the
  117.     first line.  The remainder of the file consists of keyed lines
  118.     and help text.     Each line must end with a CR/LF pair (standard
  119.     DOS format) and shouldn't be longer than 70 characters.  Tabs
  120.     position the text using 8 character tab positions.  The following
  121.     is a list of keys and special characters:
  122.  
  123.     '@'  in column 1 indicates a file title which will appear in
  124.          the main topic menu.  This must be the very first line
  125.          in the file and has a maximum length of 40 characters
  126.          (excluding the '@').
  127.     ':'  in column 1 indicates a subtopic key.  Multiple keys
  128.          separated by colons ':' can be entered on the same line.
  129.          Single spaces are allowed in a key, multiple spaces are
  130.          compressed to single.
  131.     '%'  in column 1 indicates to highlight the entire line
  132.     '^'  in column 1 indicates to center and highlight the line
  133.     ' '  (space) normal text
  134.     '~~'  Tilde, used to mark text as a hypertext link.  Use two
  135.          tilde characters to represent an actual tilde in the data.
  136.          A word or phrase enclosed between tilde's will become a
  137.          hypertext link for the current topic.
  138.     TAB  start text in column 9
  139.     any other character in column 1 is invalid an will not display
  140.  
  141.  
  142.     Use the BUILD command to index/reindex the default help text
  143.     files.    To add your own files to the index use the command:
  144.  
  145. %        BUILD [fname [file2 ...]]
  146.  
  147.  
  148. %        Limits of the HelpPC program
  149.  
  150.         Max items in main topic menu:           16
  151.         Max items in subtopic menu:          512
  152.         Max topics in index:             2000
  153.         Max size of topic text:         16384 bytes
  154.         Max lines of text per topic:          512
  155.         Max topic key length:               20
  156.         Max file title length:               40
  157.         Max hypertext links per topic:          120    
  158.         No limit on text file size
  159.  
  160.  
  161. %    Example help file:
  162.  
  163.  
  164.     @This title appears in main menu
  165.     :key1:key2:key3
  166.     ^This line will be displayed centered and highlighted
  167.     
  168.     %This line will appear highlighted
  169.     
  170.     These lines are normal text.  All three topic keys will point to
  171.     this same database entry.  The following phrase ~~Hypertext Link~~
  172.     is a link to another topic.  The tilde characters will cause it
  173.     to be highlighted and selectable.
  174.  
  175. :Bibliography
  176. ^Bibliography of Published Sources Referenced in HelpPC
  177.  
  178. %    The following list contains information on reference materials
  179. %    used to verify and supply the information found in HelpPC. They
  180. %    are listed chronologically in the order I used them in HelpPC.
  181.  
  182.      1. Powell, David.  "IBM PC-DOS Programmer's Quick Reference
  183.         Summary".  (Unpublished paper.)
  184.  
  185.      2. Powell, David.  "IBM BIOS Programmer's Quick Reference
  186.         Summary".  (Unpublished paper.)
  187.      
  188.      3. Norton, Peter.  "Programmer's Guide to the IBM PC".
  189.         Redmond, Washington: Microsoft Press, 1985.
  190.  
  191.      4. Duncan, Ray.  "Advanced MS-DOS".
  192.         Redmond, Washington: Microsoft Press, 1986.
  193.  
  194.      5. IBM Corporation.  "Disk Operating System Version 3.10: Technical
  195.         Reference". Boca Raton, Florida: International Business Machines
  196.         Corporation, 1986.
  197.  
  198.      6. Davies, Russ.  "COMPUTE!'s Mapping the IBM PC and PCjr".
  199.         Greensboro, North Carolina: COMPUTE! Publications, Inc., 1986.
  200.  
  201.      7. Brenner, Robert C.    "IBM PC Troubleshooting & Repair Guide".
  202.          Indianapolis, Indiana: Howard W Sams & Company, 1985.
  203.  
  204.      8. Borland International, Inc.  "Turbo C Reference Guide".  Scotts
  205.         Valley, California: Borland International, Inc., 1987.
  206.  
  207.      9. Scanlon, Leo J.  "8086/88 Assembly Language Programming".
  208.         Bowie, Maryland: Robert J. Brady Co., 1984.
  209.  
  210.     10. IBM Corporation. "Technical Reference: PC/XT".  Boca Raton,
  211.         Florida: International Business Machines Corporation, 1983.
  212.  
  213.     11. Wilton, Richard.  "Programmer's Guide to PC & PS/2 Video
  214.         Systems".  Redmond, Washington: Microsoft Press, 1987.
  215.  
  216.     12. Dettemann, Terry R.  "DOS Programmers Reference".
  217.         Carmel, Indiana: Que Corporation, 1988.
  218.  
  219.     13. Hogan, Thom.  "The Programmer's PC Sourcebook".
  220.         Redmond, Washington: Microsoft Press, 1988.
  221.  
  222.     14. Intel Corporation.    "Microprocessor and Peripheral Handbook".
  223.         2 vols.  Mountain View, California: Intel Corporation, 1989.
  224.  
  225.     15. Wyatt, Allen L. Sr.  "Assembly Language Quick Reference".
  226.         Carmel, Indiana: Que Corporation, 1989.
  227.  
  228.     16. IBM Corporation. "Technical Reference: PS/2 Model 30 Technical
  229.         Reference".  Boca Raton, Florida: International Business
  230.         Machines Corporation, 1987.
  231.  
  232.     17. IBM Corporation. "Technical Reference: PS/2 Model 50 and 60
  233.         Technical Reference".  Boca Raton, Florida: International
  234.         Business Machines Corporation, 1987.
  235.  
  236.     18. Norton, Peter, and Richard Wilton.    "Programmer's Guide to the
  237.         IBM PC & PS/2".  Redmond, Washington: Microsoft Press, 1988.
  238.  
  239.     19. Duncan, Ray, and Susan Lammers, eds. "The MS-DOS Encyclopedia".
  240.         Redmond, Washington: Microsoft Press, 1988.
  241.  
  242.     20. IBM Corporation. "Technical Reference: PCjr".  Boca Raton,
  243.         Florida: International Business Machines Corporation, 1983.
  244.  
  245.     21. IBM Corporation, "Technical Reference: PC/AT".  Boca Raton,
  246.         Florida: International Business Machines Corporation, 1984.
  247.  
  248.     22. Bailey, Sharon.  "Periscope Manual".  Atlanta, Georgia:
  249.         The Periscope Company, 1990.
  250.  
  251.     23. Microsoft Corporation.  "Microsoft Mouse Programmer's
  252.         Reference".  Redmond, Washington: Microsoft Press, 1989.
  253.  
  254.     24. Schemmer, Bernd.  Letter to author.  1 July 1990.
  255.  
  256.     25. Microsoft Corporation.  "Microsoft Macro Assembler 5.0,
  257.         Programmer's Guide".  Redmond, Washington: Microsoft
  258.         Corporation, 1987.
  259.  
  260.     26. Parke, William C.  "Data Structures Used in IBM PC Compatibles
  261.         and the PS/2".  (Unpublished paper).
  262.     
  263.     27. NEC Electronics, Inc.  "Intelligent Peripheral Devices (IPD)
  264.         Data Book".  Mountain View, California: NEC Electronics,
  265.         Inc., 1989.
  266.  
  267.     28. Seiko Epson Corporation. "Epson LX-800 User's Manual".  Nagano,
  268.         Japan: Seiko Epson Corporation, 1987.
  269.  
  270.     29. Hewlett-Packard Company. "Hewlett-Packard LaserJet Family
  271.         Technical Reference Manual".  Boise, Idaho: Hewlett-Packard
  272.         Company, 1986.
  273.  
  274.     30. "System BIOS for IBM PC/XT/AT Computers and Compatibles".
  275.         Phoenix Technical Reference Series.  Reading, Massachusetts:
  276.         Addison-Wesley, 1990.
  277.  
  278.     31. Schulman, Andrew.  "Undocumented DOS".
  279.         Reading, Massachusetts: Addison-Wesley, 1990.
  280. :character codes:character set:ASCII:EBCDIC:extended ASCII
  281. ^ASCII - EBCDIC - Character Codes and Character Sets
  282.  
  283. %                 Extended              Control
  284. %     Dec   Octal    Hex   ASCII    EBCDIC  ASCII   Codes
  285.       0    000    00        NUL    NUL    ^@
  286.       1    001    01   blk Face    SOH    SOH    ^A
  287.       2    002    02        STX    STX    ^B
  288.       3    003    03        ETX    ETX    ^C
  289.       4    004    04        PF    EOT    ^D
  290.       5    005    05        HT    ENQ    ^E
  291.       6    006    06        LC    ACK    ^F
  292.       7    007    07        DEL    BEL    ^G
  293.       8    010    08     ...        BS    ^H
  294.       9    011    09     ...        HT    ^I
  295.      10    012    0A     ...    SMM    LF    ^J
  296.      11    013    0B         VT    VT    ^K
  297.      12    014    0C         FF    FF    ^L
  298.      13    015    0D     ...    CR    CR    ^M
  299.      14    016    0E        SO    SO    ^N
  300.      15    017    0F        SI    SI    ^O
  301.      16    020    10        DLE    DLE    ^P
  302.      17    021    11        DC1    DC1    ^Q
  303.      18    022    12        DC2    DC2    ^R
  304.      19    023    13        TM    DC3    ^S
  305.      20    024    14        RES    DC4    ^T
  306.      21    025    15        NL    NAK    ^U
  307.      22    026    16        BS    SYN    ^V
  308.      23    027    17        IL    ETB    ^W
  309.      24    030    18        CAN    CAN    ^X
  310.      25    031    19        EM    EM    ^Y
  311.      26    032    1A     ...    CC    SUB    ^Z
  312.      27    033    1B        CU1    ESC    ^[
  313.      28    034    1C        IFS    FS    ^\
  314.      29    035    1D        IGS    GS    ^]
  315.      30    036    1E        IRS    RS    ^^
  316.      31    037    1F        IUS    US    ^_
  317.      32    040    20         DS    SP
  318.      33    041    21    !    SOS    !
  319.      34    042    22    "    FS    "
  320.      35    043    23    #        #
  321.      36    044    24    $    BYP    $
  322.      37    045    25    %    LF    %
  323.      38    046    26    &    ETB    &
  324.      39    047    27    '    ESC    '
  325.      40    050    28    (        (
  326.      41    051    29    )        )
  327.      42    052    2A    *    SM    *
  328.      43    053    2B    +    CU2    +
  329.      44    054    2C    ,        ,
  330.      45    055    2D    -    ENQ    -
  331.      46    056    2E    .    ACK    .
  332.      47    057    2F    /    BEL    /
  333.      48    060    30    0        0
  334.      49    061    31    1        1
  335.      50    062    32    2    SYN    2
  336.      51    063    33    3        3
  337.      52    064    34    4    PN    4
  338.      53    065    35    5    RS    5
  339.      54    066    36    6    UC    6
  340.      55    067    37    7    EOT    7
  341.      56    070    38    8        8
  342.      57    071    39    9        9
  343.      58    072    3A    :        :
  344.      59    073    3B    ;    CU3    ;
  345.      60    074    3C    <    DC4    <
  346.      61    075    3D    =    NAK    =
  347.      62    076    3E    >        >
  348.      63    077    3F    ?    SUB    ?
  349.      64    100    40    @    SP    @
  350.      65    101    41    A        A
  351.      66    102    42    B        B
  352.      67    103    43    C        C
  353.      68    104    44    D        D
  354.      69    105    45    E        E
  355.      70    106    46    F        F
  356.      71    107    47    G        G
  357.      72    110    48    H        H
  358.      73    111    49    I        I
  359.      74    112    4A    J    ¢    J
  360.      75    113    4B    K    .    K
  361.      76    114    4C    L    <    L
  362.      77    115    4D    M    {    M
  363.      78    116    4E    N    +    N
  364.      79    117    4F    O    |    O
  365.      80    120    50    P    &    P
  366.      81    121    51    Q        Q
  367.      82    122    52    R        R
  368.      83    123    53    S        S
  369.      84    124    54    T        T
  370.      85    125    55    U        U
  371.      86    126    56    V        V
  372.      87    127    57    W        W
  373.      88    130    58    X        X
  374.      89    131    59    Y        Y
  375.      90    132    5A    Z    !    Z
  376.      91    133    5B    [    $    [
  377.      92    134    5C    \    *    \
  378.      93    135    5D    ]    )    ]
  379.      94    136    5E    ^    ;    ^
  380.      95    137    5F    _    ¬    _
  381.      96    140    60    `        `
  382.      97    141    61    a    /    a
  383.      98    142    62    b        b
  384.      99    143    63    c        c
  385.     100    144    64    d        d
  386.     101    145    65    e        e
  387.     102    146    66    f        f
  388.     103    147    67    g        g
  389.     104    150    68    h        h
  390.     105    151    69    i        i
  391.     106    152    6A    j        j
  392.     107    153    6B    k    ,    k
  393.     108    154    6C    l    %    l
  394.     109    155    6D    m    _    m
  395.     110    156    6E    n    >    n
  396.     111    157    6F    o    ?    o
  397.     112    160    70    p        p
  398.     113    161    71    q        q
  399.     114    162    72    r        r
  400.     115    163    73    s        s
  401.     116    164    74    t        t
  402.     117    165    75    u        u
  403.     118    166    76    v        v
  404.     119    167    77    w        w
  405.     120    170    78    x        x
  406.     121    171    79    y        y
  407.     122    172    7A    z    :    z
  408.     123    173    7B    {    #    {
  409.     124    174    7C    |    @    |
  410.     125    175    7D    }    '    }
  411.     126    176    7E    ~~    =    ~~
  412.     127    177    7F        "    
  413.     128    200    80    Ç
  414.     129    201    81    ü    a
  415.     130    202    82    é    b
  416.     131    203    83    â    c
  417.     132    204    84    ä    d
  418.     133    205    85    à    e
  419.     134    206    86    å    f
  420.     135    207    87    ç    g
  421.     136    210    88    ê    h
  422.     137    211    89    ë    i
  423.     138    212    8A    è
  424.     139    213    8B    ï
  425.     140    214    8C    î
  426.     141    215    8D    ì
  427.     142    216    8E    Ä
  428.     143    217    8F    Å
  429.     144    220    90    É
  430.     145    221    91    æ    j
  431.     146    222    92    Æ    k
  432.     147    223    93    ô    l
  433.     148    224    94    ö    m
  434.     149    225    95    ò    n
  435.     150    226    96    û    o
  436.     151    227    97    ù    p
  437.     152    230    98    ÿ    q
  438.     153    231    99    Ö    r
  439.     154    232    9A    Ü
  440.     155    233    9B    ¢
  441.     156    234    9C    £
  442.     157    235    9D    ¥
  443.     158    236    9E    ₧
  444.     159    237    9F    ƒ
  445.     160    240    A0    á
  446.     161    241    A1    í
  447.     162    242    A2    ó    s
  448.     163    243    A3    ú    t
  449.     164    244    A4    ñ    u
  450.     165    245    A5    Ñ    v
  451.     166    246    A6    ª    w
  452.     167    247    A7    º    x
  453.     168    250    A8    ¿    y
  454.     169    251    A9    ⌐    z
  455.     170    252    AA    ¬
  456.     171    253    AB    ½
  457.     172    254    AC    ¼
  458.     173    255    AD    ¡
  459.     174    256    AE    «
  460.     175    257    AF    »
  461.     176    260    B0    ░
  462.     177    261    B1    ▒
  463.     178    262    B2    ▓
  464.     179    263    B3    │
  465.     180    264    B4    ┤
  466.     181    265    B5    ╡
  467.     182    266    B6    ╢
  468.     183    267    B7    ╖
  469.     184    270    B8    ╕
  470.     185    271    B9    ╣
  471.     186    272    BA    ║
  472.     187    273    BB    ╗
  473.     188    274    BC    ╝
  474.     189    275    BD    ╜
  475.     190    276    BE    ╛
  476.     191    277    BF    ┐
  477.     192    300    C0    └
  478.     193    301    C1    ┴    A
  479.     194    302    C2    ┬    B
  480.     195    303    C3    ├    C
  481.     196    304    C4    ─    D
  482.     197    305    C5    ┼    E
  483.     198    306    C6    ╞    F
  484.     199    307    C7    ╟    G
  485.     200    310    C8    ╚    H
  486.     201    311    C9    ╔    I
  487.     202    312    CA    ╩
  488.     203    313    CB    ╦
  489.     204    314    CC    ╠
  490.     205    315    CD    ═
  491.     206    316    CE    ╬
  492.     207    317    CF    ╧
  493.     208    320    D0    ╨
  494.     209    321    D1    ╤    J
  495.     210    322    D2    ╥    K
  496.     211    323    D3    ╙    L
  497.     212    324    D4    ╘    M
  498.     213    325    D5    ╒    N
  499.     214    326    D6    ╓    O
  500.     215    327    D7    ╫    P
  501.     216    330    D8    ╪    Q
  502.     217    331    D9    ┘    R
  503.     218    332    DA    ┌
  504.     219    333    DB    █
  505.     220    334    DC    ▄
  506.     221    335    DD    ▌
  507.     222    336    DE    ▐
  508.     223    337    DF    ▀
  509.     224    340    E0    α
  510.     225    341    E1    ß
  511.     226    342    E2    Γ    S
  512.     227    343    E3    π    T
  513.     228    344    E4    Σ    U
  514.     229    345    E5    σ    V
  515.     230    346    E6    µ    W
  516.     231    347    E7    τ    X
  517.     232    350    E8    Φ    Y
  518.     233    351    E9    Θ    Z
  519.     234    352    EA    Ω
  520.     235    353    EB    δ
  521.     236    354    EC    ∞
  522.     237    355    ED    φ
  523.     238    356    EE    ε
  524.     239    357    EF    ∩
  525.     240    360    F0    ≡    0
  526.     241    361    F1    ±    1
  527.     242    362    F2    ≥    2
  528.     243    363    F3    ≤    3
  529.     244    364    F4    ⌠    4
  530.     245    365    F5    ⌡    5
  531.     246    366    F6    ÷    6
  532.     247    367    F7    ≈    7
  533.     248    370    F8    °    8
  534.     249    371    F9    ∙    9
  535.     250    372    FA    ·
  536.     251    373    FB    √
  537.     252    374    FC    ⁿ
  538.     253    375    FD    ²
  539.     254    376    FE    ■
  540.     255    377    FF
  541.  
  542. :ANSI codes:ANSI control codes
  543. ^ANSI.SYS and NANSI.SYS Functions  -  ANSI x3.64
  544.  
  545.     ESC[y,xH    Cursor position y,x
  546.     ESC[nA        Cursor Up n lines
  547.     ESC[nB        Cursor Down n lines
  548.     ESC[nC        Cursor Forward n characters
  549.     ESC[nD        Cursor Backward n characters
  550.     ESC[y;xf    Cursor position y,x (less frequently used)
  551.     ESC[y;xR    Cursor position report y,x
  552.     ESC[6n        Device status report (cursor pos)(n is constant 'n')
  553.     ESC[s        Save cursor position
  554.     ESC[u        Restore cursor position
  555.     ESC[2J        Erase display
  556.     ESC[K        Erase to end of line
  557.     ESC[nL        Inserts n blank lines at cursor line.    (NANSI)
  558.     ESC[nM        Deletes n lines including cursor line.    (NANSI)
  559.     ESC[n@        Inserts n blank chars at cursor.    (NANSI)
  560.     ESC[nP        Deletes n chars including cursor char.    (NANSI)
  561.     ESC[n;ny    Output char translate            (NANSI)
  562.         When first char is encountered in output request, it
  563.         is replaced with the second char.  When no parameters
  564.         are given, all chars are reset.
  565.     ESC["str"p    Keyboard Key Reassignment. The first char of str gives
  566.         the key to redefine; the rest of the string is the
  567.         key's new value.  To specify unprintable chars, give
  568.         the ASCII value of the char outside of quotes, as a
  569.         normal parm.  IBM function keys are two byte strings.
  570.  
  571.         Ex:  ESC[0;";dir a:";13;p
  572.  
  573.         redefines F1 to have the value "dir a:" followed by CR.
  574.         If no parameters given, all keys are reset to their
  575.         default values.  Single or double quotes are valid.
  576.  
  577.     ESC[n;n;...nm    Set Graphics Rendition is used to set attributes as
  578.         well as foreground and background colors.  If multiple
  579.         parameters are used, they are executed in sequence, and
  580.         the effects are cumulative. 'n' is one of the following
  581.         attributes or colors:
  582.  
  583.         0  All attributes off        5  Blink
  584.         1  Bold                7  Reverse Video
  585.         2  Dim                8  Invisible
  586.         4  Underline
  587.  
  588.  
  589. %        Foreground colors    Background colors
  590.  
  591.             30    Black            40    Black
  592.             31    Red            41    Red
  593.             32    Green            42    Green
  594.             33    Yellow            43    Yellow
  595.             34    Blue            44    Blue
  596.             35    Magenta            45    Magenta
  597.             36    Cyan            46    Cyan
  598.             37    White            47    White
  599.  
  600.  
  601.     ESC[=nh    Set mode (see screen modes for n)
  602.     ESC[=nl    Reset Mode (see screen modes for n)
  603.  
  604.  
  605. ^Screen modes are similar to those found in the IBM BIOS:
  606.  
  607.              0   text 40x25 Black & White
  608.              1   text 40x25 Color
  609.              2   text 80x25 Black & White
  610.              3   text 80x25 Color
  611.              4   320x200 4 bits/pixel
  612.              5   320x200 1 bit/pixel
  613.              6   640x200 1 bit/pixel
  614.              7   cursor wrap
  615.             13   320x200 4 bits/pixel (EGA)
  616.             14   640x200 4 bits/pixel (EGA)
  617.             16   640x350 4 bits/pixel (EGA)
  618.  
  619.  
  620.     - for more information see ANSI document x3.64 or your DOS manual
  621.  
  622. :byte ordering
  623. ^Byte Ordering of Different Computer Architectures
  624.  
  625.  
  626. %            16 Bit        32 Bit        Floating
  627. %    Architecture    Integer        Format         Point
  628.  
  629.      MC68000      MSB         MSB          MSB
  630.      Intel          LSB         LSB          LSB
  631.      PDP-11          LSB          MSW...LSW           MSW...LSW
  632.      VAX          LSB         LSB           MSW...LSW
  633.      IBM 360/370      MSB         MSB          MSB
  634.  
  635.  
  636.      MSB means Most Significant Byte first or a byte order of 3210
  637.      LSB means Least Significant Byte first or a byte order of 0123
  638.      MSW...LSW means a byte order of 3201 or 67452301
  639.  
  640.  
  641.      See ~BIBLIO~ reference "Computer Language Magazine", April, 1987,
  642.      P.J. Plauger for more information
  643.  
  644. :cold boot:POST
  645. ^POST - Cold Boot / Power On Self Test Activities
  646.  
  647.     - power supply starts Clock Generator (8284) with Power
  648.       Good signal on BUS
  649.     - CPU reset line is pulsed resetting CPU
  650.     - DS, ES, and SS are cleared to zero
  651.  
  652. %    Cold and Warm Boot both execute the following sequence
  653.     - CS:IP are set to FFFF:0000 (address of ROM POST code)
  654.     - jump to CS:IP  (execute POST, Power On Self test)
  655.     - interrupts are disabled
  656.     - CPU flags are set, read/write/read test of CPU registers
  657.     - checksum test of ROM BIOS
  658.     - Initialize DMA (verify/init 8237 timer, begin DMA RAM refresh)
  659.     - save reset flag then read/write test the first 32K of memory
  660.     - Initialize the Programmable Interrupt Controller (8259)
  661.       and set 8 major BIOS ~interrupt~ vectors (interrupts 10h-17h)
  662.     - determine and set configuration information
  663.     - initialize/test CRT controller & test video memory (unless 1234h
  664.       found in reset word)
  665.     - test ~8259~ Programmable Interrupt Controller
  666.     - test Programmable Interrupt Timer (~8253~)
  667.     - reset/enable keyboard, verify scan code (AAh), clear keyboard,
  668.       check for stuck keys, setup interrupt vector lookup table
  669.     - hardware interrupt vectors are set
  670.     - test for expansion box, test additional RAM
  671.     - read/write memory above 32K (unless 1234h found in reset word)
  672.     - addresses C800:0 through F400:0 are scanned in 2Kb blocks in
  673.       search of valid ROM.    If found, a far call to byte 3 of the ROM
  674.       is executed.
  675.     - test ROM cassette BASIC (checksum test)
  676.     - test for installed diskette drives & ~FDC~ recalibration & seek
  677.     - test printer and RS-232 ports.  store printer port addresses
  678.       at 400h and RS-232 port addresses at 408h.  store printer
  679.       time-out values at 478h and Serial time-out values at 47Ch.
  680.     - NMI interrupts are enabled
  681.     - perform ~INT 19~ (bootstrap loader), pass control to boot record
  682.       or cassette BASIC if no bootable disk found
  683.     - ~WARM BOOT~ procedure is now executed
  684.  
  685.     - see   ~DIAGNOSTIC CODES~
  686.  
  687. :CPU
  688. ^CPU Characteristics / Determination
  689.  
  690.     8088,80188,V20    six byte prefetch queue, allows use of self
  691.             modifying code to determine length of prefetch
  692.  
  693.     8086,80186,V30    four byte prefetch queue, allows use of self
  694.             modifying code to determine length of prefetch
  695.  
  696.     8088,8086,80188,81086,v20,v30    Flag register bits 12 through
  697.             15 cannot be cleared
  698.  
  699.     8088,8086    will shift left or right using all 8 bits of
  700.             CL, if CL = 33, register is guaranteed to be
  701.             cleared
  702.  
  703.     80188,80186,80286,80386    will shift left or right using only
  704.             lower 5 bits of CL.  If CL = 32, the shift will
  705.             not occur
  706.  
  707.     80286,80386    earlier CPU's decremented SP before a PUSH SP, but
  708.             286+ pushes the value first then, decrements SP
  709.  
  710.     8088,8086    non-zero multiplication result clears zero flag
  711.  
  712.     V20,V30        non-zero multiplication result does not clear
  713.             zero flag, set ZF before multiply, and test after,
  714.             if it's still set, then it's a V20, V30
  715.  
  716.      80286        allows setting of bit 15 of the flags register
  717.  
  718.      80386        allows setting of bits 12 through 14 of flags register
  719.  
  720.  
  721.     see ~BIBLIO~ reference to  PC Tech Journal, "Chips In Transition",
  722.     April 1986
  723.  
  724. :detecting:detection:determine
  725. ^Detecting ANSI.SYS
  726.  
  727.     Compare segment address of a DOS interrupt with the segment of the
  728.     standard CON device.  If equal, then ANSI is not loaded.  If the
  729.     segment address of CON is greater than the DOS interrupt, then ANSI
  730.     is loaded or a TSR is handling the interrupt.
  731.  
  732.     - see ~INT 21,52~ for info on CON device address
  733.  
  734.  
  735. ^Detecting DESQView
  736.  
  737.     1.  call INT 2F with AX = DE00h
  738.     2.  if AL = FF on return DESQView is installed
  739.  
  740.  
  741. ^Detecting Disk Ready
  742.  
  743.     1.  use ~INT 13,4~ (Verify Sector) to check ready for read
  744.     2.  check for error in AH of:
  745.         80h  Time out, or Not Ready
  746.         AAh  Drive not ready
  747.         00h  drive is ready for reading
  748.         other value indicates drive is ready, but an error occurred
  749.     3.  use ~INT 13,2~ (Read Sector) followed by ~INT 13,3~ (Write Sector)
  750.         to check ready for read/write.  First read sector, test for
  751.         ready;  write sector back, check for 03h (write protect) or
  752.         any of the other BIOS disk errors
  753.  
  754.     - multiple attempts should be made to allow for diskette motor startup
  755.     - allows testing of drive ready by bypassing DOS and critical errors
  756.     - see  ~INT 13,STATUS~
  757.  
  758.  
  759. ^Detecting Drive Existence
  760.  
  761.     1.  save current drive    (~INT 21,19~)
  762.     2.  set current drive  (~INT 21,E~)
  763.     3.  get current drive  (~INT 21,19~)
  764.     4.  if current drive == drive requested
  765.            then drive exists
  766.            else drive doesn't exist
  767.     5.  reset original drive  (~INT 21,E~)
  768.  
  769.     - no critical error is generated if invalid drive is selected
  770.  
  771.  
  772. ^Detecting EGA Video
  773.  
  774.     INT 10h, function 12h (~INT 10,12~), subfunction 10h (in BL) will
  775.     return BL = 10h if not an EGA since invalid functions requests
  776.     return without register modification
  777.  
  778.  
  779. ^Detecting VGA Video
  780.  
  781.     ~INT 10,1A~ can be used to detect the presence of VGA.
  782.     BL = 7    VGA with analog monochrome display
  783.        = 8    VGA with analog color display
  784.  
  785.     - some enhanced EGA adapters will incorrectly identify as VGA
  786.       when ~INT 10,1B~ is used
  787.  
  788.  
  789. ^Detecting Extended Keyboard BIOS
  790.  
  791.     1.  use ~INT 16,5~ to stuff FFFF into the keyboard buffer
  792.     2.  use ~INT 16,10~ to read the keystrokes back
  793.     3.  if the data stuffed into the keyboard is returned within 16
  794.         extended reads, the BIOS handles the extended keyboard
  795.     4.  byte at 40:96 (~BDA~) is another method of detecting extended BIOS
  796.         but is not reliable since some compatibles give false positives
  797.  
  798.     - see    ~BIOS DATA AREA~   ~INT 9~
  799.  
  800.  
  801. ^Detecting present of Expanded Memory Manager
  802.  
  803.     1.  attempt to open file/device 'EMMXXXX0' using ~INT 21,3D~;
  804.         if successful continue, else no EMM
  805.     2.  make sure EMMXXXX0 is a character device and not a disk file
  806.         by using IOCTL function 0 (Get Device Info);  bit 7 of DX
  807.         should be set for char device and clear for disk file
  808.     3.  make sure Expanded Memory Manager is available using IOCTL
  809.         function 7 (Get Output Status);  AL should be non-zero (FF)
  810.         if Memory Manager is available, and zero if not available.
  811.     4.  call ~INT 67,46~  to get version information
  812.  
  813.     - see also   ~IOCTL,0~   ~IOCTL,7~
  814.  
  815.  
  816. ^Detecting Existence of Mouse Driver
  817.  
  818.     1.  check ~INT 33~ vector is not 0:0
  819.     2.  check INT 33 vector does not point to an IRET
  820.     3.  call ~INT 33,0~ to reset the mouse and get installed state
  821.     4.  call ~INT 33,24~ to check version, type and IRQ
  822.  
  823.  
  824. ^Detecting Miscellaneous
  825.  
  826.     Boot drive;   see ~INT 21,33~ (DOS 4.0+)
  827.  
  828.     CPU type;   see ~CPU~
  829.  
  830.     Hardware configuration;   see ~INT 11~
  831.  
  832.     Logical Drive Assignment;   see ~IOCTL,E~
  833.  
  834.     Memory size, Base;   see ~INT 12~
  835.  
  836.     Memory size, Extended;     see ~CMOS~
  837.  
  838.     Micro Channel Bus on PS/2;   see ~INT 15,C0~
  839.     
  840.     Network or Local Disk;     see ~IOCTL,9~
  841.  
  842.     Network or Local File;     see ~IOCTL,A~
  843.  
  844.     Parallel ports;   see  ~BIOS DATA AREA~  locations 40:08-40:0F
  845.  
  846.     RAM Disk;   see  ~INT 21,32~   and   ~MEDIA DESCRIPTOR~
  847.  
  848.     Redirection on command line;   see  ~IOCTL,0~
  849.  
  850.     Removable media;   ~INT 21,1B~    ~INT 21,1C~
  851.                ~MEDIA DESCRIPTOR BYTE~  and  ~IOCTL,8~
  852.  
  853.     Serial ports;    see ~BIOS DATA AREA~  locations 40:00-40:07
  854.  
  855.     Single drive A: or B: selection;   see ~BIOS DATA AREA~ byte 50:04
  856.  
  857.     SUBST'ed drive;  see ~INT 21,32~
  858.  
  859.     Video Screen Size in Columns;  see  ~INT 10,F~
  860.  
  861.     Video Screen Size in Rows;  see  ~INT 10,11~  subfunction 30h (EGA+)
  862.  
  863.     APPEND resident;   see ~INT 2F,0~
  864.     ASSIGN resident;   see ~INT 2F,0~
  865.     DOSSHELL resident;   see ~INT 2F,0~
  866.     NLSFUNC resident;   see ~INT 2F,0~
  867.     PRINT resident;   see ~INT 2F,0~
  868.     SHARE resident;   see ~INT 2F,0~
  869.  
  870. :dBASE files:DBF files
  871. ^dBASE - File Header Structure (dBASE II)
  872.  
  873. %    Offset Size          Description
  874.  
  875.       00   byte    dBASE version number 02h=dBASE II
  876.       01   word    number of data records in file
  877.       03   byte    month of last update
  878.       04   byte    day of last update
  879.       05   byte    year of last update
  880.       06   word    size of each data record
  881.       08 512bytes  field descriptors  (see below)
  882.      520   byte    0Dh if all 32 field descriptors used; otherwise 00h
  883.  
  884.     - dBASE II file header has a fixed size of 521 bytes
  885.  
  886.  
  887. ^DBASE - File header structure (DBASE III)
  888.  
  889. %    Offset Size           Description
  890.  
  891.       00   byte     dBASE vers num 03h=dBASE III w/o .DBT
  892.              83h=dBASE III w .DBT
  893.       01   byte     year of last update
  894.       02   byte     month of last update
  895.       03   byte     day of last update
  896.       04   dword     long int number of data records in file
  897.       08   word     header structure length
  898.       10   word     data record length
  899.       12 20bytes     version 1.0 reserved data space
  900.     32-n 32bytes ea. field descriptors  (see below)
  901.      n+1   byte     0dH field terminator.
  902.  
  903.  
  904.     - unlike dBASE II, dBASE III has a variable length header
  905.  
  906.  
  907. ^dBASE - Field Descriptors
  908.  
  909. %dBASE II Field Descriptors (header contains 32 FDs)
  910.  
  911. %    Offset Size          Description
  912.  
  913.       00  11bytes     null terminated field name string, 0Dh as first
  914.              byte indicates end of FDs
  915.       11   byte     data type, Char/Num/Logical (C,N,L)
  916.       12   byte     field length
  917.       13   word     field data address, (set in memory)
  918.       15   byte     number of decimal places
  919.  
  920.  
  921. %dBASE III Field Descriptors (FD count varies):
  922.  
  923. %    Offset Size           Description
  924.  
  925.       00  11bytes    null terminated field name string
  926.       11   byte    data type, Char/Num/Logical/Date/Memo
  927.       12   dword    long int field data address, (set in memory)
  928.       16   byte    field length
  929.       17   byte    number of decimal places
  930.       18  14bytes    version 1.00 reserved data area
  931.  
  932. :numeric ranges:data ranges:ranges
  933. ^Numeric Ranges for Data Elements
  934.  
  935.  
  936. %         Size            Range          Significant digits
  937.  
  938.      1 byte integer          -128 to 127
  939.      1 byte unsigned         0 to 255
  940.      2 byte integer        -32,768 to 32,767
  941.      2 byte unsigned         0 to 65535
  942.      4 byte integer -2,147,483,648 to 2,147,483,647
  943.      4 byte unsigned         0 to 4,294,967,295
  944.      8 byte integer       -9x10e18 to 9x10e18
  945.      4 byte real        3.4x10e-38 to 3.37x10e38          7
  946.      8 byte real       1.7x10e-308 to 1.67x10e308         15
  947.     10 byte real      3.4x10e-4932 to 1.1x10e4932         19
  948.     10 byte packed dec     -99..99 to 99..99
  949. :undocumented
  950. ^DOS Undocumented Interrupts, Functions and Structures
  951.  
  952.     ~INT 15,20~   PRINT.COM Critical Region Flag (DOS 3.x+)
  953.     ~INT 21,1F~   Get pointer to current drive parameter table
  954.     ~INT 21,32~   Get pointer to drive parameter table
  955.     ~INT 21,34~   Get address to DOS critical flag (INDOS flag)
  956.     ~INT 21,37~   Get/set switch char
  957.     ~INT 21,4B~   EXEC/Load and execute (Function 1 undocumented)
  958.     ~INT 21,50~   Set current process id (DOS 2.x)
  959.     ~INT 21,51~   Get current process id (DOS 2.x)
  960.     ~INT 21,52~   Get pointer to DOS "~INVARS~"
  961.     ~INT 21,53~   Generate drive parameter table
  962.     ~INT 21,55~   Create new ~PSP~
  963.     ~INT 21,58~   Get/set memory allocation strategy (DOS 3.x+)
  964.     ~INT 21,5D~   Critical error information (DOS 3.x+)
  965.     ~INT 21,60~   Get fully qualified file name (DOS 3.x+)
  966.     ~INT 21,64~   Set device driver look ahead  (DOS 3.3+)
  967.     ~INT 21,69~   Get/set disk serial number (DOS 4.0+)
  968.     ~INT 21,F8~   Set INT 21 OEM handler
  969.     ~INT 28~      DOS idle loop/scheduler
  970.     ~INT 29~      Fast character output
  971.     ~INT 2E~      Execute command using base level COMMAND.COM
  972.  
  973.     ~BCB~        Batch Control Block
  974.     ~DTA~        Disk Transfer Area    (partially undocumented)
  975.     ~MCB~        Memory Control Block
  976.     ~PSP~        Program Segment Prefix Layout (partially undocumented)
  977.     ~SFT~        System File Table
  978.  
  979.  
  980.     - the above items are undocumented with respect to IBM/Microsoft
  981.       and should be not be used unless one fully understands the
  982.       repercussions
  983.     - several functions are version dependant and OEM specific
  984.  
  985. :warm boot:bootstrap:reboot
  986. ^Warm Boot / System Bootstrap
  987.  
  988.     - Ctrl-Alt-Delete results in a warm boot but only after part of the
  989.       ~POST~ sequence has executed.  See  ~COLD BOOT~  for more information.
  990.     - ROM BIOS bootstrap loader (~INT 19~) attempts Boot Record load
  991.     - Drive A: is searched for a Boot Record, if no Boot Record is found
  992.       the active partition of the first drive is searched.    If found, it
  993.       is loaded into memory at 7C00:0 and given control.  If still not
  994.       found Cassette BASIC is loaded (IBM only) or a prompt for a system
  995.       diskette is displayed.
  996.     - the boot record code checks that IBMBIO.COM and IBMDOS.COM (IO.SYS
  997.       and DOS.SYS for MSDOS) exist and are the first two files.  These
  998.       files must be contiguous and the first two directory entries.
  999.     - boot record loads IBMBIO.COM
  1000.     - IBMBIO.COM initialization code loads IBMDOS.COM
  1001.       ∙ determines equipment status
  1002.       ∙ resets disk system
  1003.       ∙ initializes attached devices
  1004.       ∙ loads installable device drivers
  1005.       ∙ sets DOS relative interrupt vectors
  1006.       ∙ relocates IBMDOS.COM downward and begins its execution
  1007.     - IBMDOS.COM initializes its working tables
  1008.       ∙ initializes DOS interrupt vectors for interrupts 20h through 27h
  1009.       ∙ builds ~PSP~ for COMMAND.COM at lowest possible segment
  1010.       ∙ interrupt vectors for INTs 0Fh through 3Fh are initialized
  1011.         (for DOS 3.1+)
  1012.       ∙ loads COMMAND.COM (or specified command interpreter) using the
  1013.         ~EXEC~ call.
  1014.     - AUTOEXEC.BAT is then loaded and executed
  1015.  
  1016.     - see    ~BOOT RECORD~   ~COLD BOOT~
  1017.