home *** CD-ROM | disk | FTP | other *** search
/ ftp.barnyard.co.uk / 2015.02.ftp.barnyard.co.uk.tar / ftp.barnyard.co.uk / cpm / walnut-creek-CDROM / CPM / PROGRAMS / WSTAR / WS3330.DOC < prev    next >
Text File  |  2000-06-30  |  20KB  |  506 lines

  1.          WS3330.DOC--User Patch Points for WordStar 3.3 and 3.0
  2.  
  3.      This file lists the user patch points for both WordStar 3.3 and WordStar
  4. 3.0, including the mnemonic label, the hexadecimal address, and a brief
  5. description.  The far righthand column lists the bytes (in hex) that will be
  6. found at each location in the Kaypro-installed version of WordStar 3.3
  7. delivered with the Kaypro 2, 2X, 4, and 10.  Users of Kaypro WordStar 3.3 can
  8. use these bytes for reference; all others should just ignore the actual values
  9. given.
  10.      The patch points are listed in the order in which they are found in
  11. WordStar 3.3.  As a result, WordStar 3.0 users will find that a few of their
  12. patch points are not listed strictly in order, as MicroPro moved some things
  13. around when they changed versions.  Sorry, but there was no way to avoid it.
  14.      To make this list, I've combined those from WS33.DOC and WS30.DOC, which
  15. were originally compiled by Milton Hicks and updated by Guy Gamble.  (I owe
  16. them, and the anonymous contributors who preceded them, many thanks.)  I've
  17. also added some new information and made a number of corrections.
  18.  
  19.                     Ted Silveira
  20.                     Santa Cruz, CA
  21.                     06/15/85
  22.  
  23.  
  24.  
  25.      Labels and Addresses of Patch Points for WordStar 3.3 and 3.0
  26.  
  27.                                 KAYPRO
  28.                                 WORDSTAR 3.3
  29.     WS 3.3    WS 3.0                        ORIGINAL
  30. LABEL    ADDR    ADDR    DESCRIPTION                SETTINGS
  31.  
  32. WSVER    0110    0110    WordStar version
  33. COPRIT    0112    0117    copyright notice
  34. SIGNON    014E    0153    WordStar sign-on message
  35.     0179    017F    serial number
  36. IDTEX    018A    018F    terminal id text
  37. PIDTEX    01AE    01B3    printer id text
  38. PROTTX    01D2    01D7    printer protocol text
  39. PDRVTX    01F6    01FD    port driver text
  40.  
  41.     021B    0220    various flags and holders for internal    .
  42.             use by WordStar             .
  43.                                 .
  44.  
  45. HITE    0232    0248    screen height in lines (24)        18
  46. WID    0233    0249    screen width in columns (80)        50
  47. CLEAD1    0234    024A    cursor positioning: lead-in string    02 1B 3D 00 00
  48.                                 00 00 00 00
  49. CLEAD2    023D    0253    crsr pos: string between row/column    00 00 00 00 00
  50. CTRAIL    0242    0258    crsr pos: ending string         00 00 00 00 00
  51. CB4LFG    0247    025D    crsr pos: 00 = row/col, FF = col/row    00
  52. LINOFF    0248    025E    crsr pos: row offset            20
  53. COLOFF    0249    025F    crsr pos: column offset         20
  54. ASCUR    024A    0260    crsr pos: 00 = binary row & col numbers 00
  55. UCRPOS    024B    0264    jmp to user crsr pos routine        00 00 C9 00 00
  56. ERAEOL    0250    026D    terminal erase to end of line string    01 18 00 00 00
  57.                                 00 00
  58. LINDEL    0257    0274    terminal delete line string        00 00 00 00 00
  59.                                 00 00
  60. LININS    025E    027B    terminal insert line string        00 00 00 00 00
  61.                                 00 00 00 00
  62. IVON    0267    0284    turn on highlighting string        06 1B 42 30 1B
  63.                                 42 31
  64. IVOFF    026E    028B    turn off highlighting string        06 1B 43 30 1B
  65.                                 43 31
  66. TRMINI    0275    0292    terminal initialization string        01 1A 00 00 00
  67.                                 00 00 00 00
  68. TRMUNI    027E    029B    terminal uninitialization string    00 00 00 00 00
  69.                                 00 00 00 00
  70. INISUB    0287    02A4    jmp to user term init routine        00 00 C9
  71. UNISUB    028A    02A7    jmp to user term uninit routine     00 00 C9
  72. USELST    028D    02AA    FF = can use last row w/o scrolling    00
  73. DELCUS    028E    02AE    delay after cursor positioning        0A
  74. DELMIS    028F    02AF    delay after misc other functions    05
  75. MEMAPV    0290    02B0    FF = memory-mapped video display    00
  76. MEMADR    0291    02B1    address of home pos in mm video     00 00
  77. HIBIV    0293    02B3    FF = highlighting by setting high bit    00
  78. HIBCUR    0294    02B4    FF = show crsr by setting high bit    00
  79. CRBLIV    0295    02B5    FF = WS blink crsr in iv, term or mmv    00
  80. ZAFCIN    0296    02B6    fix for backspace on delete        00 00
  81. RUBFXF    0298    02B8    FF = use RFIXER             00
  82. RFIXER    0299    02B9    fix for backspace on delete        00
  83. UCNSTA    029A    02BA    jmp to user con stat routine        00 00 C9
  84. UCONI    029D    02BD    jmp to user con input routine        00 00 C9
  85. UCONO    02A0    02C0    jmp to user con output routine        00 00 C9
  86. SWIN    02A3    02C3    routine or jmp before char out to con    00 00 C9 00 00
  87.                                 00
  88. SWOUT    02A9    02C9    routine or jmp after char out to con    00 00 C9 00 00
  89.                                 00
  90. DEL1    02AF    02CF    short delay - highlight crsr blink on    03
  91. DEL2    02B0    02D0    short delay - highlight crsr blink off    09
  92. DEL3    02B1    02D1    medium delay - time to prefix menus    19
  93. DEL4    02B2    02D2    long delay - time for msg displays    40
  94. DEL5    02B3    02D3    delay until screen redisplay/refresh    09
  95. TRSCRS    02B4    02D4    for TRS-80 only             00
  96. TRSCIF    02B5    02D5    for TRS-80 only             00
  97. HETHBS    02B6    02D6    for Lifeboat CP/M - Heath 89        00
  98. APLFLG    02B7    02D7    for Apple only                00
  99. MPMFLG    02B8    <n/a>    MP/M flag                00
  100. NMOFUS    <n/a>    02D8    number of users on system        01
  101. TCKFLG    <n/a>    02DA    for MP/M only                00
  102. RSTFLG    <n/a>    02DB    FF = no disk resets by WordStar     00
  103. DEFDSK    02B9    02DC    drive for OVR files after logged drive    01
  104. SCRLSZ    02BA    02DD    columns for horizontal scroll        14
  105. CNVTBL    02BB    <n/a>    ??                    00 00 00 00 00
  106.                                 .
  107.                                 .
  108.                                 .
  109.  
  110. MORPAT    02CB    02E0    space for user-added routines        CD 8A 02 C3 AB
  111.             (with mysterious 12 bytes of code)    24 CD A0 3E C3
  112.                                 87 02 00 00 00
  113.                                 00 00 00 00 00
  114.                                 .
  115.                                 .
  116.                                 .
  117.  
  118. PBGMEM    034B    035C    pointer to beg of memory (i.e. text)    60 84
  119. ITHELP    034D    0360    initial help level            03
  120. NITHLF    034E    0361    00 = display spec msg if ITHELP 1 or 2    FF
  121. ITITOG    034F    0362    FF = insert mode on, 00 = off        FF
  122. ITDSDR    0350    0363    FF = no-file dir on, 00 = off        FF
  123. INITPF    0351    0366    initial page format: line height 1/48s    08
  124.     0352    0367    paper length (.pl) in lines (66)    42
  125.     0353    0368    paper length in 1/48s            10 02
  126.     0355    036A    line height in 1/48s again        08
  127.     0356    036B    margin at top (.mt) in lines        03
  128.     0357    036C    margin at top in 1/48s            18 00
  129.     0359    036E    line height again            08
  130.     035A    036F    heading margin (.hm) in lines        02
  131.     035B    0370    heading margin in 1/48s         10 00
  132.     035D    0372    line height again            08
  133.     035E    0373    bottom margin (.mb) in lines        08
  134.     035F    0374    bottom margin in 1/48s            40 00
  135.     0361    0376    line height again            08
  136.     0362    0377    footing margin (.fm) in lines        02
  137.     0363    0378    footing margin in 1/48s         10 00
  138.     0365    037A    line height again            08
  139.     0366    037B    00 for standard character width     00
  140.     0367    037C    std char width in 1/120s        0C
  141.     0368    037D    alt char width in 1/120s        0A
  142.     0369    037E    page offset in characters        08
  143. INITLM    036A    037F    initial left margin less 1        00
  144. INITRM    036B    0380    init right mar less 1, up to WID - 4    40
  145. INITSR    036C    0381    initial sub/superscript roll in 1/48s    03
  146. INITWF    036D    0385    word wrap (^OW), 00 = off, FF = on    FF
  147.     036E    0386    justification (^OJ), 00 = off, FF = on    FF
  148.     036F    0387    variable tabs (^OV), 00 = off, FF = on    FF
  149.     0370    0388    soft hyphens (^OE), 00 = off, FF = on    00
  150.     0371    0389    hyphen help (^OH), 00 = off, FF = on    FF
  151.     0372    038A    show ctrl char (^OD), 00 = off, FF = on FF
  152.     0373    038B    show ruler line, 00 = off, FF = on    FF
  153.     0374    038C    figure page breaks, 00 = off, FF = on    FF
  154.     0375    038D    show page breaks, 00 = off, FF = on    FF
  155.     0376    038E    line spacing                01
  156.     0377    038F    (^KN) 00 = block move, FF = column    00
  157. NONDOC    0378    0392    direct entry, 00 = doc, FF = nondoc    00
  158. DOTSON    0379    0397    dot cmds during edit, 00 = disable    FF
  159. DECCHR    037A    0393    decimal point character         2E
  160. DOTCHR    037B    0395    character to begin dot cmds        2E
  161.  
  162. BLNCHR    0386    0396    non-break space char (^O)        0F
  163. CMTCHR    0387    <n/a>    comment char (;)            3B
  164. ENDEXP    0388    <n/a>                        47
  165. RVELIM    0389    03D8    MailMerge delimiter for data values    2C
  166. RVQUOT    038A    03D9    MM delimiter for enclosed values    22
  167.                                 00
  168. TXBACK    038C    <n/a>                        2F
  169.                                 42
  170. VARCH1    038E    03DB    MM delimiter to introduce variables    26
  171. VARCH2    038F    03DC    MM delimiter to terminate variables    26
  172. VAROPC    0390    03DE    char after name before option letters    2F
  173.     0391    03DF    opt ltr for omit line if variable null    4F
  174.                                 .
  175.                                 .
  176.                                 .
  177. COMPOP    0396    <n/a>    table of MM comparison operators    3C 3E 00 FD 3E
  178.                                 .
  179.                                 .
  180.                                 .
  181. LOGICP    03B7    <n/a>    table of MM logical operators        2E 41 4E 44 2E
  182.                                 .
  183.                                 .
  184.                                 .
  185. HZONE    03C9    039A    hyphenation zone at end of line     04
  186.     03CA    039B    pointer to non-consonant table        D3 03
  187.     03CC    039D    pointer to vowel table            CE 03
  188. VOWTAB    03CE    039F    table of vowels             59 5B 5D 7B 7D
  189. NONCON    03D3    03A4    table of non-consonants         41 45 49 4F 55
  190.                                 00 00 00 00 00
  191. BOFCHR    03DD    03AE    beginning of file flag char        3A
  192. CONCHR    03DE    03AF    line cont past screen edge flag char    2B
  193. EOFCHR    03DF    03AD    end of file flag char            2E
  194. FDTCHR    03E0    03B5    merge-print command flag char        4D
  195. HARDCR    03E1    03B4    hard cr flag char            3C
  196. LFCHR    03E2    03B1    line ends in lf w/o cr flag char    4A
  197. OVPCHR    03E3    03B0    overprint line flag char        2D
  198. PAGCHR    03E4    03B2    end of page flag char            50
  199. SOFTCR    03E5    03B3    soft cr flag char            20
  200.  
  201. SOFHYC    03E7    03B8    character used for soft hyphens     AD
  202. PAGFIL    03E8    03B9    character used for page breaks        2D
  203. MARKS    03E9    03BA    character used for start of blocks    42
  204.     03EA    03BB    character used for end of blocks    4B
  205.  
  206.     03EE    03BF    characters (0-9) used for place markers 30 31 32 33 34
  207.                                 35 36 37 38 39
  208. PODBLK    03F8    03CA    disk file output, 00 = no, FF = yes    00
  209.     03F9    03CB    use form feeds, 00 = no, FF = yes    00
  210.     03FA    03CC    suppress page format, 00 = no, FF = yes 00
  211.     03FB    03CD    pause between pages, 00 = no, FF = yes    00
  212. NOUFF    03FC    03D1    FF = suppress form feed question above    00
  213. ITPOPN    03FD    03D3    print page numbers, 00 = on, FF = off    00
  214. ITMIJ    03FE    03D4    microjustification, FF = on, 00 = off    FF
  215. ITBIP    03FF    03D5    bi-directional print, FF = on, 00 = off FF
  216. FNWSCM    0400    03E6    name of main WordStar program        WS    COM
  217. DSKTNA    040C    03F2    name of message file            WSMSGS    OVR
  218. FNOVLY    0418    03FE    name of overlay file            WSOVLY1 OVR
  219. FNMRGP    0424    040A    name of merge-print overlay        MAILMRGEOVR
  220. AUTOBS    0430    0422    table of auto-backspace characters    00 00 00 00 00
  221.                                 00 00 00 00 00
  222.                                 00
  223. BSCHR    043B    042D    char to use after autobs, usually ^H    08
  224. NOFTAB    043C    0430    no-file command table            04 00 00 01
  225.             (each entry 4 bytes, first two are    .
  226.             cmd chars, next two are address of    .
  227.             routine)                .
  228.  
  229. VTAB    0489    0481    file editing command table        11 FF 12 00
  230.             (same format as NOFTAB)         0B FF 16 00
  231.                                 0F FF 1E 00
  232.                                 0A FF 22 00
  233.     0499    0491    set help level            ^JH    0A 08 04 01
  234.     049D    0495    cursor left            ^S    .
  235.     04A1    0499    backspace            ^H    .
  236.     04A5    049D    cursor right            ^D    .
  237.     04A9    04A1    cursor left            ^A
  238.     04AD    04A5    cursor right word        ^F
  239.     04B1    04A9    cursor down            ^X
  240.     04B5    04AD    cursor up            ^E
  241.     04B9    04B1    cursor to left margin        ^QS
  242.     04BD    04B5    cursor to end of line        ^QD
  243.     04C1    04B9    cursor to bottom of screen    ^QX
  244.     04C5    04BD    cursor to top of screen     ^QE
  245.     04C9    04C1    cursor to block begin        ^QB
  246.     04CD    04C5    cursor to block end        ^QK
  247.     04D1    04C9    cursor to previous position    ^QP
  248.     04D5    04CD    crsr to source of search, move    ^QV
  249.     04D9    04D1    cursor to marker 0        ^Q0
  250.     04DD    04D5      "    "    "     1        ^Q1
  251.     04E1    04D9      "    "    "     2        ^Q2
  252.     04E5    04DD      "    "    "     3        ^Q3
  253.     04E9    04E1      "    "    "     4        ^Q4
  254.     04ED    04E5      "    "    "     5        ^Q5
  255.     04F1    04E9      "    "    "     6        ^Q6
  256.     04F5    04ED      "    "    "     7        ^Q7
  257.     04F9    04F1      "    "    "     8        ^Q8
  258.     04FD    04F5      "    "    "     9        ^Q9
  259.     0501    04F9    cursor to begin file        ^QR
  260.     0505    04FD    cursor to end file        ^QC
  261.     0509    0501    find                ^QF
  262.     050D    0505    find & replace            ^QA
  263.     0511    0509    set left margin         ^QL
  264.     0515    0511    scroll back continuously    ^QW
  265.     0519    0515    scroll forward continuously    ^QZ
  266.     051D    0539    delete to begin line        ^Q<DEL>
  267.     0521    053D      "    "    "     "         ^Q_
  268.     0525    0541    delete to end line         ^QY
  269.     0529    0551    repeat nest command         ^QQ
  270.     052D    050D    repeat last ^QF or ^QA         ^L
  271.     0531    0519    scroll forward one line      ^Z
  272.     0535    051D    scroll back one line         ^W
  273.     0539    0521    scroll back one screen         ^R
  274.     053D    0525    scroll forward one screen     ^C
  275.     0541    0529    delete character left        <DEL>
  276.     0545    052D      "       "      "         ^_
  277.     0549    0531    delete char under cursor     ^G
  278.     054D    0535    delete line             ^Y
  279.     0551    0545    delete word right         ^T
  280.     0555    0549    toggle insert mode on/off     ^V
  281.     0559    054D    reformat to end paragraph     ^B
  282.     055D    0555    insert line             ^N
  283.     0561    0559    tab                 ^I
  284.     0565    055D    carriage returnRN         ^M
  285.     0569    0561    put nxt char in txt as ctrl char ^P
  286.     056D    0565    toggle display of marked block     ^KH
  287.     0571    0569    mark/hide block begin         ^KB
  288.     0575    056D    mark/hide block end         ^KK
  289.     0579    0571    set/hide marker  0         ^K0
  290.     057D    0575      "        "     1         ^K1
  291.     0581    0579      "        "     2         ^K2
  292.     0585    057D      "        "     3         ^K3
  293.     0589    0581      "        "     4         ^K4
  294.     058D    0585      "        "     5         ^K5
  295.     0591    0589      "        "     6         ^K6
  296.     0595    058D      "        "     7         ^K7
  297.     0599    0591      "        "     8         ^K8
  298.     059D    0595      "        "     9         ^K9
  299.     05A1    0599    move block             ^KV
  300.     05A5    059D    copy block             ^KC
  301.     05A9    05A1    delete block             ^KY
  302.     05AD    05A5    toggle column mode on/off     ^KN
  303.     05B1    05A9    <not implemented>         ^KZ
  304.     05B5    05AD    interrupt command in progress     ^U
  305.     05B9    05B1    save file and exit         ^KX
  306.     05BD    05B5    save file and return to menu     ^KD
  307.     05C1    05B9    save file and continue         ^KS
  308.     05C5    05BD    abandon file and return to menu  ^KQ
  309.     05C9    05C1    read file into text         ^KR
  310.     05CD    05C5    write block to another file     ^KW
  311.     05D1    05C9    delete file             ^KJ
  312.     05D5    05CD    toggle directory on/off      ^KF
  313.     05D9    05D1    print file             ^KP
  314.     05DD    05D5    change logged disk         ^KL
  315.     05E1    05D9    copy file             ^KO
  316.     05E5    05DD    rename file             ^KE
  317.     05E9    05E1    set left margin          ^OL
  318.     05ED    05E5    set right margin         ^OR
  319.     05F1    05E9    set tab              ^OI
  320.     05F5    05ED    clear tab             ^ON
  321.     05F9    05F1    set mar/tabs frm new ruler line  ^OF
  322.     05FD    05F5    toggle word wrap on/off      ^OW
  323.     0601    05F9      "    justification on/off     ^OJ
  324.     0605    05FD      "    variable tab on/off     ^OV
  325.     0609    0601      "    dot cmd interp on/off     ^OD
  326.     060D    0605      "    ruler display on/off     ^OT
  327.     0611    0609      "    page break display on/off ^OP
  328.     0615    060D      "    soft hyphen on/off     ^OE
  329.     0619    0611      "    hyphen help on/off     ^OH
  330.     061D    0615    paragraph tab             ^OG
  331.     0621    0619    margin release             ^OX
  332.     0625    061D    center line             ^OC
  333.     0629    0621    set line spacing         ^OS
  334.     062D    0625    help for dot commands         ^JD
  335.     0631    0629     "    "  status line         ^JS
  336.     0635    062D     "    "  flags             ^JF
  337.     0639    0631     "    "  place markers         ^JP
  338.     063D    0635     "    "  paragraph reform     ^JB
  339.     0641    0639     "    "  tabs and margins     ^JM
  340.     0645    063D    command index             ^JI
  341.     0649    0641    help for moving text         ^JV    .
  342.     064B    0645     "    "  ruler line         ^JR    .
  343.     0651    <n/a>    <not implemented>         ^JA    .
  344. XTAB    0655    0649    expansion space for edit cmd table    00 00 00 00
  345.                                 .
  346.                                 .
  347.                                 .
  348. FPTAB    067A    066E    merge-print cmd table            10 00 28 43
  349.             (2 byte cmd char + 2 byte address)    .
  350.                                 .
  351.                                 .
  352.                                 00
  353. PNFTAB    068B    067F    pointer to no-file cmd table        3C 04
  354. PVTAB    068D    0681    pointer to edit cmd table        89 04
  355. PFPTAB    068F    0683    pointer to merge-print table        7A 06
  356.  
  357.         (following are spec chars used at prompts)
  358.  
  359. CLCHR    0691    0686    cursor left char            13
  360. CRCHR    0692    0687    cursor right char            04
  361. LITCHR    0693    0688    prefix to take next char as literal    10
  362. DIRCH    0694    0689    directory on/off            06
  363.             scroll dir up                1A
  364.             scroll dir down             17
  365. STPCHR    0697    068C    must match interrupt char above     15
  366. ERELCH    0698    068D    error release char for interrupt    1B
  367. POSMTH    0699    0690    type of printer             FF
  368.             FF = teletype, no backspace
  369.             00 = teletype w/backspace
  370.             01 = daisywheel
  371.             03, 04 = special oem printers
  372.  
  373. BLDSTR    069A    0691    number of strikes for boldface        03
  374. DBLSTR    069B    0692    number of strikes for double-strike    02
  375.  
  376.     (Next 8 labels active only if POSMTH = FF or 00)
  377.  
  378. PSCRLF    069C    0696    string to do CR and LF            02 0D 0A 0D 0A
  379.                                 0A 00 00 00 00
  380.                                 00
  381. PSCR    06A7    06A1    string to do CR only            02 0D 00 00 00
  382.                                 00 00
  383. PSHALF    06AE    06A8    string to do CR and half-LF        00 0D 0A 00 00
  384.                                 00 00
  385. PBACKS    06B5    06AF    string to do backspace            00 08 00 00 00
  386.                                 00
  387. PALT    06BB    06B5    string to set alt char width      ^PA    00 1B 45 00 00
  388. PSTD    06C0    06BA    string to set std char width      ^PN    00 1B 4E 00 00
  389. ROLUP    06C5    06BF    str to roll carr up part line      ^PT    00 00 00 00 00
  390. ROLDOW    06CA    06C4    str to roll carr down part line   ^PV    00 00 00 00 00
  391. USR1    06CF    06C9    string for user function 1      ^PQ    00 00 00 00 00
  392. USR2    06D4    06CE      "    "   "       "     2      ^PW    00 00 00 00 00
  393. USR3    06D9    06D3      "    "   "       "     3      ^PE    00 00 00 00 00
  394. USR4    06DE    06D8      "    "   "       "     4      ^PR    00 00 00 00 00
  395. RIBBON    06E3    06DD    string to set alt ribbon color      ^PY    00 00 00 00 00
  396. RIBOFF    06E8    06E2    string to set std ribbon color      ^PY    00 00 00 00 00
  397. PSINIT    06ED    06E7    string to initialize printer        01 0D 54 31 32
  398.                                 00 00 00 00 00
  399.                                 00 00 00 00 00
  400.                                 00 00
  401. PSFINI    06FE    06F8    string to uninitialize printer        00 1B 41 00 00
  402.                                 00 00 00 00 00
  403.                                 00 00 00 00 00
  404.                                 00 00
  405. SOCHR    070F    070B    character for strikeout         2D
  406. ULCHR    0710    070C    character for underline         5F
  407. PRINIT    0711    070D    jmp to user printer init routine    00 00 C9
  408. PRFINI    0714    0710    jmp to user printer uninit routine    00 00 C9
  409. CSWTCH    0717    0717    switch to select printer driver     00
  410.             (00 = primary list device)
  411.             (01 = WordStar's port driver)
  412.             (02 = user printer driver)
  413.             (03 = oem driver)
  414.             (04 = alternate console driver)
  415. HAVBSY    0718    0718    have printer busy rtn? FF = yes     00
  416.  
  417.         (If CSWTCH = 00, next 3 active)
  418.  
  419. LIBSY    0719    071A    jmp to user busy test routine        00 B7 C9
  420. LISEND    071C    071D    routine send character to list device    5F 0E 05 CD 05
  421.                                 00 B7 C9
  422. LISINP    0724    0725    jmp to user char input rtn        00 37 C9
  423.             (if using XON/XOFF or ETX/ACK)
  424.  
  425.         (If CSWTCH = 01, next 11 active)
  426. POBSY    0727    0728    port driver output status entry     DB
  427. POSTAT    0728    0729    output status port address        05
  428.                                 00 E6
  429. POMASK    072B    072C    bit mask for transmit ready        01
  430.                                 EE
  431. POOM    072D    072E    bits that change            01
  432.                                 37 C0 B7 C9
  433. POSEND    0732    0733    port driver send char entry        D3
  434. POOP    0733    0734    output data port address        04
  435.                                 00 C9
  436. POINP    0736    0737    port driver input status entry        DB
  437. PISTAT    0737    0738    input status port address        05
  438.                                 00 E6
  439. POINSK    073A    073B    bit mask for receive ready        02
  440.                                 EE
  441. POIM    073C    073D    bits that change            02
  442.                                 37 C0 DB
  443. POIP    0740    0741    input data port address         04
  444.                                 00 B7 C9
  445.         (If CSWTCH = 02, next 3 active)
  446.  
  447. PUBSY    0744    074C    jmp to user printer busy test routine    00 B7 C9
  448. PUSEND    0747    074F    jmp to user char output routine     00 00 C9
  449. PUINP    074A    0752    jmp to user char input routine        00 37 C9
  450.  
  451.         (If CSWTCH = 04, next 7 active)
  452.  
  453. ACBSY    074D    0758    jmp to user alt con busy test        00 B7 C9
  454. ACSEND    0750    075B    send char to alt con            CD 6C 07 CD F0
  455.                                 20 C3 63 07
  456. ACINP    0759    0764    input char from alt con         CD 6C 07 CD 55
  457.                                 1D C4 6C 1D 57
  458. ACFIN    0763    076E    exit routine start            78
  459. ACSTA1    076F    076F    set/reset iobyte            32 03 00 7A B7
  460.                                 C0 37 C9
  461. ACSTAR    076C    0777    entry routine start            57 3A 03 00 47
  462.                                 E6 FC F6
  463. CONFIE    0774    077F    alt con device assignment        01
  464.             (00 = TTY:, 01 = CRT:)            .
  465.                                 .
  466.                                 .
  467. PROTCL    0778    0786    printer protocol type            00
  468.             (00 = none)
  469.             (01 = ETX/ACK)
  470.             (02 = XON/XOFF)
  471.  
  472. EAKBSZ    0779    0787    ETX/ACK msg buffer size         7F
  473.  
  474.         (Most of the following are for daisywheels only)
  475.  
  476. DVMILE    077A    0790    vertical motion index leadin string    00 1B 1E 00 00
  477. DVMITR    077F    <n/a>    ??                    00 1B 02 00 00
  478. DVMMIN    0784    0795    ??                    FF FF
  479. DVMRNG    0786    0797    ??                    FF FF
  480. DHMILE    0788    0779    horizontal motion index leadin string    00 1B 1F 00 00
  481. DHMIFG    078D    079E    ??                    00
  482. DHMIN    078E    079F    ??                    FF FF
  483. DHRNG    0790    07A1    ??                    FF FF
  484. DFWD    0792    07A3    string to set forward print        00 1B 35 00 00
  485. DBAK    0797    07A8    string to set backward print        00 1B 36 00 00
  486. DSP    079C    07AD    forward space                00 20 00 00 00
  487. DBS    07A1    07B2    backward space                00 08 00 00 00
  488. DLF    07A6    07B7    line feed vmi                00 0A 00 00 00
  489. DRLF    07AB    07BC    reverse line feed            00 1B 0A 00 00
  490.  
  491. DPHSPC    07B0    07C1    print phantom space            00 1B 59 00
  492. DPHRUB    07B4    07C5    print phantom rubout            00 1B 5A 00
  493. DNPROS    07B8    07D3    suppress proportional spacing        00
  494.             (00 = on, FF = off)
  495.  
  496. DMJWB    07B9    07D5    use alt microjustification algorithm    00
  497.             (00 = no, FF = yes)
  498.  
  499. PSTAB    07BA    07D8    proportional spacing table        .
  500.             (righthand digit of each byte is    .
  501.             the one involved in the totally     .
  502.             unsupported proportional spacing
  503.             command ^P^P)
  504.  
  505.     083A    083A    END OF USER PATCHING AREA
  506.