CUSTOMIZATION OF WORDSTAR 3.0
-----------------------------------------------------------------------------
Settings given are for UNinstalled CP/M80 WordStar Version 3.0
## --> indicates the number of characters for this function, the maximum
         number available is shown by the number of 00's that follow.  If no-
         zero in the uninstalled W*, the values are shown.
xx --> indicates an address for this function that should not be changed, use
         this address to map additional keys to the defined function.
         Remember reversed order for addresses!
00 --> A patch point.  Where a string of bytes is available, trucated to a
         single '0' in order to keep within 80 characters wide.
rr --> reserved bytes
?? --> guessed operation

LABEL   LOCATION           OPERATION                          DEFAULT

         0100    ?                    \                      JMP 2D08
         0103    ?                     \ JUMP                JMP 2CF8
OUTCHR    0106    CRT CHARACTER OUTPUT  / TABLE ?             JMP 20B3
         0109    ?                    /                      JMP 2D19
PATVER    010C    INSTALLER OR PATCHER VERSION TO USE ?       0B 00
MSGVER    010E    VERSION OF MSG FILE TO USE ?                0F 00
WSVER     0110    VERSION OF OVERLAY FILE TO USE ?            18 00
COPRIT    0117    COPYRIGHT NOTICE                      "  COPYRIGHT ...
SIGNON    0153    VENDOR AND PROGRAM NAME               "  MicroPro ...
         017F    SERIAL NUMBER                         "xxxxxxx ...
IDTEX     018F    TERMINAL ID TEXT                      " no terminal ...
PIDTEX    01B3    PRINTER ID TEXT                       " I/O Master ...
PROTTX    01D7    PRINTER PROTOCOL TEXT                       <blank>
PDRVTX    01FD    PORT DRIVER TEXT                            <blank>
WFLAGS    0220    ?                                           00
WRAPF     0220    ?                                           00
JUSTF     0221    ?                                           00
VTABF     0222    ?                                           00 00
HYPF      0224    ?                                           00
SHOWDF    0225    ?                                           00
SHOWM     0226    ?                                           00 00
PAGDIS    0228    ?                                           00
LSPACE    0229    ?                                           00 00
DISDIR    022B    ?                                           00
AUPAV     0234    ?                                           FF
MSGLEN    0235    ?                                           22
INSTLD    0236    0=UNINSTALLED, FF=INSTALLED ?               00
PCLAS     0237    ?                                           05
SAVEND    0238    ?                                           FD 32 24 06 A8 32

USER1 - TERMINAL PATCH AREA

         0246    SCREEN HEIGHT ?                             18
         0247    SCREEN WIDTH ?                              50
HITE      0248    SCREEN HEIGHT IN LINES (24)                 18
WID       0249    SCREEN WIDTH IN COLUMNS (80)                50
    CURSOR POSTIONING:
CLEAD1    024A    LEAD-IN CHARACTERS                          02 1B 3D 00 00
                                                                00 00 00 00
CLEAD2    0253    CHARS BETWEEN COLUMN OR LINE                ## 00 00 00 00
CTRAIL    0258    TRAILING CHARACTERS                         ## 00 00 00 00
CB4LFG    025D    =FF FOR COLUMN FIRST                        00
LINOFF    025E    ASCII LINE OFFSET                           20
COLOFF    025F    ASCII COLUMN OFFSET                         20
ASCUR     0260    TYPE:0=BINARY,2=2DIGIT ASCII,3=3DIGIT ASCII 00 rr rr rr
UCRPOS    0264    JUMP TO OWN CURSOR POSITIONING ROUTINE      00 00 C9
                 (RECEIVE LINE=L,COLUMN=H; CALL OUTCHR FOR OUTPUT)
OUTCHR    0267    ADDRESS OF BYTE OUTPUT (SEE NOTE)           06 01 rr rr rr rr
    TERMINAL CODES:
ERAEOL    026D    ERASE TO END OF LINE                       ## 0 0 0 0 0 0
LINDEL    0274    DELETE LINE                                ## 0 0 0 0 0 0
LININS    027B    INSERT LINE (CR)                           ## 0 0 0 0 0 0 0 0
IVON      0284    TURN ON HIGHLIGHTING                       ## 0 0 0 0 0 0
IVOFF     028B    TURN OFF HIGHLIGHTING                      ## 0 0 0 0 0 0
TRMINI    0292    TERMINAL INITIALIZATION STRING             ## 0 0 0 0 0 0 0 0
TRMUNI    029B    TERMINAL TERMINATION STRING                ## 0 0 0 0 0 0 0 0
INISUB    02A4    SPECIAL STRING FOR CUSTOM INITIALIZATION    00 00 C9
                 (IF #0, CALLED BEFORE TRMINI IS SENT)
UNISUB    02A7    SPECIAL STRING FOR CUSTOM TERMINATION       00 00 C9
                 (IF #0, CALLED BEFORE TRMUNI IS SENT)
    SYSTEM VARIABLES:
USELST    02AA    =FF FOR LAST COLUMN/ROW DISPLAY FLAG        00 rr rr rr
DELCUS    02AE    DELAY AFTER CURSOR SET                      0A
DELMIS    02AF    DELAY AFTER OTHER FUNCTIONS                 05
    MEMORY-MAPPED DISPLAY:
MEMAPV    02B0    =FF FOR MEMORY-MAPPED DISPLAY TERMINAL      00
MEMADR    02B1    RAM ADDRESS OF FIRST SCREEN CHARACTER       00 00
HIBIV     02B3    =FF IF INVERSE VIDEO BY HI ORDER BIT        00
HIBCUR    02B4    =FF IF DISPLAY CURSOR BY HI ORDER BIT       00
CRBLIV    02B5    =FF TO BLINK CURSOR IF ON INVERSE VIDEO     00
    FIX FOR BACKSPACE ON <DEL>:
ZAFCIN    02B6    BIOS ADDRESS OF LAST CHARACTER INPUT        00 00
RUBFXF    02B8    =FF TO OUTPUT RFIXER CHARACTER ON <DEL>     00
RFIXER    02B9    CHARACTER TO OUTPUT AFTER EACH <DEL>        00
    USER-SUPPLIED CONSOLE I/O ROUNTINES:
UCNSTA    02BA    JUMP TO STATUS OF CONSOLE (CHAR READY?)     00 00 C9
UCONI     02BD    JUMP TO INPUT CHAR FROM CONSOLE             00 00 C9
UCONO     02C0    JUMP TO OUTPUT TO CONSOLE                   00 00 C9
SWIN      02C3    OPTIONAL ROUTINE BEFORE DMA TO VIDEO BOARD  00 00 C9 00 00 00
                 (JUMP OR 6 BYTE OR LESS ROUTINE)
SWOUT     02C9    OPTIONAL ROUTINE AFTER DMA TO VIDEO BOARD   00 00 C9 00 00 00
                 (JUMP OR 6 BYTE OR LESS ROUTINE)
    DELAYS:
DEL1      02CF    SHORT DELAY - CURSOR BLINK                  03
DEL2      02D0    MEDIUM-SHORT DELAY - CURSOR BLINK           09
DEL3      02D1    MEDIUM-LONG DELAY - TIME TO PREFIX MENUS    19
DEL4      02D2    LONG DELAY - TIME FOR NOTE DISPLAYS         40
DEL5      02D3    DELAY UNTIL SCREEN REDISPLAY                09
    NON-STANDARD VERSION OF WORDSTAR
TRSCRS    02D4    FOR TRS-80 ONLY (FF= SPECIAL CURSOR DRIVER) 00
TRSCIF    02D5    FOR TRS-80 ONLY (FF= SPECIAL KB DRIVERS)    00
HETHBS    02D6    FOR LIFEBOAT CP/M FOR HEATH-89              00
APLFLG    02D7    FOR APPLE ONLY                              00
NMOFUS    02D8    NUMBER OF USERS ON SYSTEM                   01 01
                 (SET HIGHER TO REDUCE CONSOLE STATUS CHECKS)
TCKFLG    02DA    =FF FOR MP/M                                00
RSTFLG    02DB    =FF FOR NO DISK RESETS                      00
DEFDSK    02DC    WHERE TO LOOK FOR WSOVLY1.OVR AFTER DEFAULT 01
SCRLSZ    02DD    NUMBER OF COLUMNS FOR HORIZONTAL SCROLL     14
MORPAT    02E0    USER PATCH AREA - USE UP TO 035B            00 00 ...
PBGMEM    035C    EXTENDED PATCH AREA SHOULD START AT:        49 78
                 (xx xx IS LAST ADDRESS THAT W* NEEDS, ADD ADDITIONAL PATCHES
                 AFTER THIS ADDRESS; WILL REDUCE WORKING AREA!)

USER2 - PARAMETERS USER MAY ALTER

    INITIALIZATION ITEMS:
ITHELP    0360    INITIAL HELP LEVEL                          02
NITHLF    0361    =0 FOR MAXIMUM HELP MESSAGE                 FF
ITITOG    0362    INSERT: OFF=0, ON=FF                        FF
ITDSDR    0363    NO-FILE DIRECTORY OFF=0, ON=FF              FF rr rr
INITPF|   0366    LINE HEIGHT, 1/48'S                         08
     |   0367    PAPER LENGTH IN LINES (66)                  42
     |   0368    PAPER LENGTH IN 1/48'S                      02 10
     |   036A    LINE HEIGHT AGAIN                           08
     |   036B    MARGIN AT TOP IN LINES                      03
     |   036C    MARGIN AT TOP IN 1/48'S                     00 18
     |   036E    LINE HEIGHT AGAIN                           08
     |   036F    HEADING MARGIN IN LINES                     02
     |   0370    HEADING MARGIN IN 1/48'S                    00 10
     |   0372    LINE HEIGHT AGAIN                           08
     |   0373    BOTTOM MARGIN IN LINES                      08
     |   0374    BOTTOM MARGIN IN 1/48'S                     00 40
     |   0376    LINE HEIGHT AGAIN                           08
     |   0377    FOOTING MARGIN IN LINES                     02
     |   0378    FOOTING MARGIN IN 1/48'S                    00 10
     |   037A    LINE HEIGHT AGAIN                           08
     |   037B    =0 FOR STANDARD CHAR WIDTH                  00
     |   037C    STD CHAR WIDTH IN 1/120'S                   0C
     |   037D    ALT CHAR WIDTH IN 1/120'S                   0A
     |   037E    PAGE OFFSET IN CHARS                        08
INITLM    037F    INITIAL LEFT MARGIN LESS 1                  00
INITRM    0380    INITIAL RIGHT MARGIN LESS 1 UP TO WID-4     40
INITSR    0381    INITIAL SUB/SUPER-SCRIPT ROLL IN 1/48'S     03 rr rr rr
INITWF|   0385    WORD WRAP FLAG, OFF=0; ON=FF                FF
     |   0386    JUSTIFY FLAG, OFF=0; ON=FF                  FF
     |   0387    VARIABLE TABS FLAG, OFF=0; ON=FF            FF
     |   0388    SOFT HYPHEN FLAG, OFF=0; ON=FF              00
     |   0389    HYPEN-HELP FLAG, OFF=0; ON=FF               FF
     |   038A    PRINT CONTROL CHARS FLAG, OFF=0; ON=FF      FF
     |   038B    RULER LINE DISPLAY, OFF=0; ON=FF            FF
     |   038C    PAGE BREAK DETERMINATION, OFF=0; ON=FF      FF
     |   038D    PAGE BREAK DISPLAY, OFF=0; ON=FF            FF
     |   038E    LINE SPACING                                01
     |   038F    0=BLOCK, FF=COLUMN MODE                     00 rr rr
NONDOC    0392    DIRECT ENTRY 0=DOC, FF=NON-DOC EDIT         00
DECCHR    0393    DECIMAL POINT CHARACTER              .      2E rr
DOTCHR    0395    CHAR TO BEGIN 'DOT' COMMANDS         .      2E
BLNCHR    0396    NON-BREAK SPACE CHAR                 ^O     0F
DOTSON    0397    FF=ENABLE, 0=DISABLE DOT COMMANDS           00 rr rr
HZONE     039A    HYPHENATION; INCREASE FOR LESS STOPS        04
PVWTB     039B    ADDRESS OF VOWEL TABLE                      03 9F
PNCON     039D    ADDRESS OF NOT-CONSONANT TABLE              03 A4
VOWTAB    039F    TABLE OF VOWELS                      Y[]{}  59 5B 5D 7B 7D
NONCON    03A4    TABLE OF NON-CONSONANT LETTERS       AEIOU  41 45 49 4F 55
                 (MORE VOWELS - ENDS IN 00)                  00 00 00 00
EOFCHR    03AD    END OF FILE FLAG                     .      2E
BOFCHR    03AE    BEGINNING OF FILE FLAG               :      3A
CONCHR    03AF    FILE LINE CONTINUATION FLAG          +      2B
OVPCHR    03B0    OVERPRINT LINE FLAG                  -      2D
LFCHR     03B1    LINE ENDS IN LF W/O CR FLAG          J      4A
PAGCHR    03B2    END OF PAGE FLAG                     P      50
SOFTCR    03B3    SOFT CR FLAG                         <sp>   20
HARDCR    03B4    HARD CR FLAG                         <      3C
FDTCHR    03B5    MERGE-PRINT COMMAND FLAG             M      4D rr rr
SOFHYC    03B8    CHARACTER USED FOR SOFT HYPHENS      -(+80) AD
PAGFIL    03B9    CHARACTER USED FOR PAGE BREAKS       -      2D
MARKS |   03BA    CHARACTER USED FOR START OF BLOCKS   B      42
     |   03BB    CHARACTER USED FOR END OF BLOCKS     K      4B rr rr rr
     |   03BF    CHARACTER USED FOR USER MARKS        01234  30 31 32 33 34
                                                      56789  35 36 37 38 39 rr
PODBLK|   03CA    DISK FILE OUTPUT DEFAULT, 0=NO, FF=YES      00
     |   03CB    USE FORM FEEDS, 0=NO, FF=YES                00
     |   03CC    SUPPRESS PAGE FORMATTING, 0=NO, FF=YES      00
     |   03CD    PAUSE BETWEEN PAGES, 0=NO, FF=YES           00 rr rr rr
NOUFF     03D1    =FF FOR SUPPRESS FORM FEED QUESTION         00 rr
ITPOPN    03D3    PRINT PAGE NUMBERS, 0=ON, FF=OFF            00
ITMIJ     03D4    MICROJUSTIFY SWITCH, FF=ON, 0=OFF           FF
ITBIP     03D5    BI-DIRECTIONAL PRINT, FF=ON, 0=OFF          FF rr rr
RVELIM    03D8    DELIMITER FOR DATA VALUES            ,      2C
RVQUOT    03D9    DELIMITER FOR ENCLOSED VALUES "      22 rr
VARCH1    03DB    DELIMITER THAT INTRODUCES VARIABLES  &      26
VARCH2    03DC    DELIMITER THAT TERIMATES VARIABLE    &      26 rr
VAROPC    03DE    CHARACTER AFTER NAME &B4 OPTION LETTERS  /  2F
         03DF    OPTION LETTER FOR OMIT LINE IF VBL NULL  O  4F rr rr rr r r r
    FILE NAMES:
FNWSCM    03E6    NAME OF WORDSTAR PROGRAM              "WS       COM"
DSKTNA    03F2    NAME OF MESSAGE FILE                  "WSMSGS   OVR"
FNOVLY    03FE    NAME OF OVERLAY FILE                  "WSOVLY1  OVR"
FNMRGP    040A    NAME OF MERGE-PRINT OVERLAY           "MAILMRGE OVR"
         0416    12 BYTES RESERVED                           rr rr ...
    AUTOMATIC BACKSPACE TABLE:
AUTOBS    0422    CHARS FOR AUTO BACK-SPACE, 10 MAX, 00 ENDS  00 00 ... 00
BSCHR     042D    AUTO BACK-SPACE CHARACTER            ^H     08

USER 3 - KEYSTROKE DISPATCH TABLES

    NO-FILE MENU:
NOFTAB    0430    EDIT FILE, DOCUMENT MODE             ^D     04 00 xx xx
         0434    EDIT FILE, PROGRAM MODE              ^N     0E 00 xx xx
         0438    SET HELP LEVEL                       ^H     08 00 xx xx
         043C    EXIT TO SYSTEM                       ^X     18 00 xx xx
         0440    PRINT FILE                           ^P     10 00 xx xx
         0444    MERGE-PRINT FILE                     ^M     0D 00 xx xx
         0448    DELETE FILE                          ^Y     19 00 xx xx
         044C    DIRECTORY DISPLAY                    ^F     06 00 xx xx
         0450    SCROLL DIRECTORY UP                  ^Z     1A 00 xx xx
         0454    SCROLL DIRECTORY DOWN                ^W     17 00 xx xx
         0458    SELECT CURRENT DISK DRIVE            ^L     0C 00 xx xx
         045C    EXECUTE PROGRAM                      ^R     12 00 xx xx
         0460    COPY FILE                            ^O     0F 00 xx xx
         0464    RENAME FILE                          ^E     05 00 xx xx
         0468    ???                                  ^V     16 00 xx xx
         046C    RUN SPELLSTAR COMMAND                ^S     13 00 xx xx
         0470    SPACE FOR DUPLICATE ENTRY                   00 00 xx xx
         0474    SPACE FOR DUPLICATE ENTRY                   00 00 xx xx
         0478    SPACE FOR DUPLICATE ENTRY                   00 00 xx xx
         047C    SPACE FOR DUPLICATE ENTRY                   00 00 xx xx
         0480    END OF TABLE                                00

    FILE-EDITING COMMAND DISPATCH TABLE:
VTAB      0481    FF 2ND BYTE: DISPLAY ^Q MENU         ^Q     11 FF xx xx
         0485    FF 2ND BYTE: DISPLAY ^K MENU         ^K     0B FF xx xx
         0489    FF 2ND BYTE: DISPLAY ^O MENU         ^O     0F FF xx xx
         048D    FF 2ND BYTE: DISPLAY ^J MENU         ^J     0A FF xx xx
         0491    SET HELP LEVELS                      ^JH    0A 08 xx xx
         0495    MOVE CURSOR LEFT                     ^S     13 00 xx xx
         0499    BACKSPACE                            ^H     08 00 xx xx
         049D    MOVE CURSOR FORWARD                  ^D     04 00 xx xx
         04A1    MOVE CURSOR LEFT WORD                ^A     01 00 xx xx
         04A5    MOVE CURSOR RIGHT WORD               ^F     06 00 xx xx
         04A9    MOVE CURSOR DOWN                     ^X     18 00 xx xx
         04AD    MOVE CURSOR UP                       ^E     05 00 xx xx
         04B1    MOVE CURSOR TO LEFT MARGIN           ^QS    11 13 xx xx
         04B5    MOVE CURSOR TO END OF LINE           ^QD    11 04 xx xx
         04B9    CURSOR TO BOTTOM OF SCREEN           ^QX    11 18 xx xx
         04BD    CURSOR TO TOP OF SCREEN              ^QE    11 05 xx xx
         04C1    CURSOR BLOCK-BEGINNING               ^QB    11 42 xx xx
         04C5    CURSOR BLOCK-END                     ^QK    11 4B xx xx
         04C9    CURSOR POSITION-BEFORE PREVIOUS COMMAND ^QP 11 50 xx xx
         04CD    CURSOR TO WHERE SEARCH OR MOVE BEGAN  ^QV   11 56 xx xx
         04D1    CURSOR TO MARKER 0                   ^Q0    11 30 xx xx
         04D5    CURSOR TO MARKER 1                   ^Q1    11 31 xx xx
         04D9    CURSOR TO MARKER 2                   ^Q2    11 32 xx xx
         04DD    CURSOR TO MARKER 3                   ^Q3    11 33 xx xx
         04E1    CURSOR TO MARKER 4                   ^Q4    11 34 xx xx
         04E5    CURSOR TO MARKER 5                   ^Q5    11 35 xx xx
         04E9    CURSOR TO MARKER 6                   ^Q6    11 36 xx xx
         04ED    CURSOR TO MARKER 7                   ^Q7    11 37 xx xx
         04F1    CURSOR TO MARKER 8                   ^Q8    11 38 xx xx
         04F5    CURSOR TO MARKER 9                   ^Q9    11 39 xx xx
         04F9    MOVE TO TOP OF FILE                  ^QR    11 12 xx xx
         04FD    MOVE TO BOTTOM OF FILE               ^QC    11 03 xx xx
         0501    FIND                                 ^QF    11 06 xx xx
         0505    FIND & REPLACE                       ^QA    11 01 xx xx
         0509    DO SPECIAL SPELLSTAR FIND & REPLACE  ^QL    11 0C xx xx
         050D    REPEAT FIND & REPLACE                ^L     0C 00 xx xx
         0511    SCROLL DOWN CONTINUOUSLY             ^QW    11 17 xx xx
         0515    SCROLL UP CONTINUOUSLY               ^QZ    11 1A xx xx
         0519    MOVE SCREEN UP ONE LINE              ^Z     1A 00 xx xx
         051D    MOVE SCREEN DOWN ONE LINE            ^W     17 00 xx xx
         0521    SCROLL DOWN SCREENFUL                ^R     12 00 xx xx
         0525    SCROLL UP SCREENFUL                  ^C     03 00 xx xx
         0529    DELETE CHARACTER LEFT                <del>  7F 00 xx xx
         052D    ALTERNATE DELETE CHARTACTER LEFT     ^_     1F 00 xx xx
         0531    DELETE CHARACTER RIGHT               ^G     07 00 xx xx
         0535    DELETE LINE                          ^Y     19 00 xx xx
         0539    DELETE TO BEGINNING OF LINE          ^Qdel  11 7F xx xx
         053D    ALT DELETE TO BOL                    ^Q_    11 1F xx xx
         0541    ERASE TO END OF LINE                 ^QY    11 19 xx xx
         0545    ERASE WORD TO RIGHT                  ^T     14 00 xx xx
         0549    INSERT MODE ON/OFF                   ^V     16 00 xx xx
         054D    REFORMAT TO END OF PARAGRAPH         ^B     02 00 xx xx
         0551    REPEAT NEXT COMMAND                  ^QQ    11 11 xx xx
         0555    INSERT LINE                          ^N     0E 00 xx xx
         0559    TAB                                  ^I     09 00 xx xx
         055D    CARRIAGE RETURN                      ^M     0D 00 xx xx
         0561    INSERT NEXT CHARACTER LITERALLY      ^P     10 00 xx xx
         0565    HIDE/DISPLAY MARKED BLOCK            ^KH    0B 08 xx xx
         0569    MARK/HIDE BLOCK BEGINNING            ^KB    0B 42 xx xx
         056D    MARK BLOCK END                       ^KK    0B 4B xx xx
         0571    SET/HIDE MARKER 0                    ^K0    0B 30 xx xx
         0575    SET/HIDE MARKER 1                    ^K1    0B 31 xx xx
         0579    SET/HIDE MARKER 2                    ^K2    0B 32 xx xx
         057D    SET/HIDE MARKER 3                    ^K3    0B 33 xx xx
         0581    SET/HIDE MARKER 4                    ^K4    0B 34 xx xx
         0585    SET/HIDE MARKER 5                    ^K5    0B 35 xx xx
         0589    SET/HIDE MARKER 6                    ^K6    0B 36 xx xx
         058D    SET/HIDE MARKER 7                    ^K7    0B 37 xx xx
         0591    SET/HIDE MARKER 8                    ^K8    0B 38 xx xx
         0595    SET/HIDE MARKER 9                    ^K9    0B 39 xx xx

         0599    MOVE MARKED TEXT                     ^KV    0B 16 xx xx
         059D    COPY MARKED TEXT                     ^KC    0B 03 xx xx
         05A1    DELETE MARKED TEXT                   ^KY    0B 19 xx xx
         05A5    TOGGLE CLOUMN MOVE ON/OFF            ^KN    0B 0E xx xx
         05A9    ???                                  ^KZ    0B 1A xx xx
         05AD    INTERRUPT COMMAND IN PROGRESS        ^U     15 00 xx xx
         05B1    DONE-SAVE-EXIT                       ^KX    0B 18 xx xx
         05B5    DONE-SAVE-RETURN TO MENU             ^KD    0B 04 xx xx
         05B9    SAVE-CONTINUE EDIT                   ^KS    0B 13 xx xx
         05BD    ABANDON EDIT-RETURN TO MENU          ^KQ    0B 11 xx xx
         05C1    INSERT/READ FILE INTO TEXT           ^KR    0B 12 xx xx
         05C5    WRITE BLOCK TO ANOTHER FILE          ^KW    0B 17 xx xx
         05C9    DELETE A FILE                        ^KY    0B 0A xx xx
         05CD    FILE DIRECTORY ON/OFF                ^KF    0B 06 xx xx
         05D1    PRINT A FILE                         ^KP    0B 10 xx xx
         05D5    LOG DISK DRIVE                       ^KL    0B 0C xx xx
         05D9    COPY FILE                            ^KO    0B 0F xx xx
         05DD    RENAME A FILE                        ^KE    0B 05 xx xx
         05E1    LEFT MARGIN SET                      ^OL    0F 0C xx xx
         05E5    RIGHT MARGIN SET                     ^OR    0F 12 xx xx
         05E9    TAB SET                              ^OI    0F 09 xx xx
         05ED    TAB CLEAR                            ^ON    0F 0E xx xx
         05F1    SET MARGIN/TABS FROM FILE LINE       ^OF    0F 06 xx xx
         05F5    WORD WRAP ON/OFF                     ^OW    0F 17 xx xx
         05F9    JUSTIFICATION ON/OFF                 ^OJ    0F 0A xx xx
         05FD    VARIABLE TABBING ON/OFF              ^OV    0F 16 xx xx
         0601    DOT COMMAND DISPLAY ON/OFF           ^OD    0F 04 xx xx
         0605    RULER DISPLAY ON/OFF                 ^OT    0F 14 xx xx
         0609    PAGE BREAK DISPLAY ON/OFF            ^OP    0F 10 xx xx
         060D    SOFT HYPHEN ENTRY ON/OFF             ^OE    0F 05 xx xx
         0611    HYPHEN HELP ON/OFF                   ^OH    0F 08 xx xx
         0615    PARAGRAPH TAB                        ^OG    0F 07 xx xx
         0619    MARGIN RELEASE                       ^OX    0F 18 xx xx
         061D    CENTER LINE                          ^OC    0F 03 xx xx
         0621    LINE SPACE SETTING                   ^OS    0F 13 xx xx
         0625    PRINT DIRECTIVES                     ^JD    0A 04 xx xx
         0629    EXPLAIN STATUS LINE                  ^JS    0A 13 xx xx
         062D    EXPLAIN FLAGS                        ^JF    0A 06 xx xx
         0631    EXPLAIN PLACE MARKERS                ^JP    0A 10 xx xx
         0635    EXPLAIN PARAGRAPH REFORMING          ^JB    0A 02 xx xx
         0639    EXPLAIN TABS AND MARGINS             ^JM    0A 0D xx xx
         063D    COMMAND INDEX                        ^JI    0A 09 xx xx
         0641    EXPLAIN MOVING TEXT                  ^JV    0A 16 xx xx
         0645    EXPLAIN RULER LINE                   ^JR    0A 12 xx xx
XTAB      0649    EDITING COMMAND EXPANSION SPACE             00 00 xx xx ...
                 (4 BYTES EACH, ROOM FOR 9 REDUNDANT ENTRIES)
         066D    END OF DISPATCH TABLE                       00
    MERGE-PRINT COMMAND DISPATCH TABLE:
FPTAB     066E    STOP THE PRINT!                      ^P     10 00 xx xx
         0672    SCROLL DIRECTORY UP                  ^Z     1A 00 xx xx
         0676    SCROLL DIRECTORY DOWN                ^W     17 00 xx xx
         067A    ???                                  ^V     16 00 xx xx
         067E    END OF DISPATCH TABLE                       00
    DISPATCH TABLE POINTERS:
PNFTAB    067F    POINTER TO NO-FILE DISPATCH TABLE           30 04
PVTAB     0681    POINTER TO EDITING COMMAND DISPATCH TABLE   81 04
PFPTAB    0683    POINTER TO MERGE-PRINT DISPATCH TABLE       6E 06
    CONTROL CHARACTERS FOR"?" PROMPTS:
CLCHR     0686    DELETE CHAR (CURSOR LEFT)            ^S     13
CRCHR     0687    CURSOR RIGHT, UNDELETING CHARACTER   ^D     04
LITCHR    0688    LITERAL ESCAPE                       ^V     10
DIRCH     0669    DISPLAY DIRECTORY                    ^F     06
         066A    SCROLL DIRECTORY UP                  ^Z     1A
         066B    SCROLL DIRECTORY DOWN                ^W     17
    INTERRUPT & ESCAPE:
STPCHR    066C    STOP EVERYTHING, I WANT TO GET OFF!  ^U     15
ERELCH    066D    ERROR RELEASE                        <ESC>  1B

USER4 - PRINTER PATCH AREA:

    ALL PRINTERS:
POSMTH    0690    PRINTER TYPE (1=DAISY,0=BS'ING,FF=TTY)      01
BLDSTR    0691    NUMBER OF STRIKES FOR BOLDFACE              02
DBLSTR    0692    NUMBER OF STRIKES FOR DOUBLE-STRIKE         02 rr rr rr
PSCRLF    0696    STRING TO ADVANCE TO NEXT LINE              02 0D 0A 0 0 0
                                                                00 00 0 0 0
PSCR      06A1    STRING TO RETURN CARRIAGE TO SOL            02 0D 00 0 0 0 0
    NON-DAISY PRINTERS:
PSHALF    06A8    <CR> AND HALF LINE-FEED                     ## 00 00 0 0 0 0
PBACKS    06AF    PRINT BACKSPACE                      ^H     01 08 00 0 0 0
PALT      06B5    SET ALTERNATE CHARACTER WIDTH        ^A     ## 00 00 0 0
PSTD      06BA    RESET STANDARD CHARACTER WIDTH       ^N     ## 00 00 0 0
ROLUP     06BF    ROLL CARRIAGE UP PARTIAL LINE        ^T     ## 00 00 0 0
ROLDOW    06C4    ROLL CARRIAGE DOWN PARTIAL LINE      ^V     ## 00 00 0 0
    ALL PRINTERS:
USR1      06C9    USER FUNCTION #1                     ^Q     ## 00 00 00 00
USR2      06CE    USER FUNCTION #2                     ^W     ## 00 00 00 00
USR3      06D3    USER FUNCTION #3                     ^E     ## 00 00 00 00
USR4      06D8    USER FUNCTION #4                     ^R     ## 00 00 00 00
RIBBON    06DD    CHANGE TO ALTERNATE COLOR RIBBON     ^Y     ## 00 00 00 00
RIBOFF    06E2    CHANGE TO BLACK RIBBON               ^Y     ## 00 00 00 00
PSINIT    06E7    STRING TO INITIALIZE PRINTER               ## 0 0 0 0 0 0 0 0
                                                               0 0 0 0 0 0 0 0
PSFINI    06F8    STRING TO TERMINATE PRINTING               ## 0 0 0 0 0 0 0 0
                                                               0 0 0 0 0 0 0 0
SOCHR     070B    CHARACTER FOR STRIKEOUT              -      2D
ULCHR     070C    CHARACTER FOR UNDERLINING            _      5F
PRINIT    070D    JUMP TO CUSTOM PRINTER INIT ROUTINE         00 00 C9
PRFINI    0710    JUMP TO CUSTOM PRINTER TERM ROUTINE         00 00 C9 r r r r
    TRANSMISSION OF CHARACTERS TO PRINTER:
CSWTCH    0717    WHERE TO SEND OUTPUT (0=LST,1=W* PORT       03
                 DRIVER, 2=USER SUPPLIED DRIVER, 3=OEM DAISY, 4=ALT CONSOLE)
HAVBSY    0718    =FF IF PRINTER DRIVER INSTALLED             FF rr
    CSWTCH=0, OUTPUT TO LST: DEVICE
LIBSY     071A    JUMP TO PRINTER BUSY TEST ENTRY             00 B7 C9
LISEND    071D    OUTPUT CHARACTER                            ...
LISINP    0725    JUMP TO INPUT CHARACTER FROM PRINTER        00 37 C9
    CSWTCH=1, USE PORT DRIVER TO OUTPUT
POBSY     0728    PORT DRIVER STATUS ENTRY                    DB
POSTAT    0729    OUTPUT STATUS PORT #                        05 00 E6
POMASK    072C    WHICH BIT IS OF INTEREST                    01 EE
POOM      072E    FOR PRINTER READY                           01 37 C0 B7 C9
POSEND    0733    PORT DRIVER SEND CHAR ENTRY                 D3
POOP      0734    OUTPUT DATA PORT                            04 00 C9
POINP     0737    PORT DRIVER INPUT CHAR ENTRY                DB
PISTAT    0738    INPUT STATUS PORT                           05 00 E6
POINSK    073B    WHICH BIT IS OF INTEREST                    02 EE
POIM      073D    FOR INPUT CHAR READY                        02 37 C0 DB
POIP      0741    INPUT DATA PORT                             04 00 B7 C9
         0745    RESERVED (7 BYTES)                          r r r r r r r
    CSWTCH=2, USER-SUPPIED OUTPUT DRIVER
PUBSY     074C    JUMP TO PRINTER STATUS ROUTINE              00 B7 C9
PUSEND    074F    JUMP TO PRINT CHARACTER ROUTINE             00 00 C9
PUINP     0752    JUMP TO INPUT CHARACTER FROM PRINTER ROUTINE 00 37 C9
         0755    RESERVED                                    rr rr rr
    CSWTCH=4, ALTERNATE CONSOLE PRINTER DRIVER
ACBSY     0758    BUSY TEST ENTRY                 00 B7 C9
ACSEND    075B    SEND A CHARACTER                CD 07 77 CD xx xx C3 07 6E
ACINP     0764    INPUT A CHARACTER               CD 07 77 CD xx xx C4 xx xx 57
ACFIN     076E    EXIT ROUTINE                    78
ACSTA1    076F    RESET IOBYTE                    32 00 03 7A B7 C0 37 C9
ACSTAR    0777    ENTRY ROUTINE                   57 3A 00 03 47 E6 FC F6
CONFIE    077F    SET IOBYTE                      01 C3 07 6F
         0783    RESERVED                        rr rr rr
    FLOW CONTROL:
PROTCL    0786    PROTOCAL TYPE (0=NONE,1=ETX/ACK,2=XON/XOFF) 00
EAKBSZ    0787    ETX/ACK MESSAGE LENGTH                   7F rr rr rr rr rr rr

 USER5 - FOR DAISY PRINTERS:

DVMILE    0790    VERTICAL MOTION INDEX LEADIN STRING         02 1B 1E 00 00
DVMMIN    0795    MINIMUM DVMILE (FOR NO MOTION) \            00 01
DVMRNG    0797    MAXIMUM DVMILE                 / 1/48'S     00 7E
DHMILE    0799    HORIZONTAL MOTION INDEX LEADIN STRING       02 1B 1F 00 00
DHMIFG    079E    0 FOR 120THS, FF FOR 60THS                  00
DHMIN     079F    MINIMUM DHMILE \                            00 01
DHRNG     07A1    MAXIMUM DHMILE / IN DHMIFG'S                00 7E
DFWD      07A3    SET FORWARD PRINT                           02 1B 3E 00 00
DBAK      07A8    SET BACKWARD PRINT                          02 1B 3C 00 00
DSP       07AD    FORWARD SPACE                               01 20 00 00 00
DBS       07B2    BACKWARD SPACE                              01 08 00 00 00
DLF       07B7    LINE FEED VMI                               01 0A 00 00 00
DRLF      07BC    REVERSE LINE FEED                           02 1B 39 00 00
DPHSPC    07C1    PRINT PHANTOM SPACE                         02 1B 59 00
DPHRUB    07C5    PRINT PHANTOM RUBOUT                        02 1B 5A 00
         07C9    RESERVED 10 BYTES                           00 00 ...
DNPROS    07D3    SUPPRESS ALL PROPOR SPACING 0=ON, FF=OFF    00
DMJWB     07D5    ALTER MICROJUSTIFY ALGORITHM 0=NO, FF=ALT   00 rr rr rr
    PROPORTIONAL SPACING TABLE - DEVELOPMENTAL
         DIGIT 1 FOR NON-PROPORTIONAL TYPEWHEELS, VALUE IN 1/60THS <SP>=5
         DIGIT 2 FOR PROPORTIONAL TYPEWHEELS, (THEME PS 10) <SP>=3
         (HIGH ORDER BIT OF BOTH HEX DIGITS RE UNASSIGNED)
PSTAB     07D8    SPACE, PHANTOM SPACE                        53
         07D9  "!" MARK                                    43
                 ETC IN ASCII ORDER TO
         0836  "~" CHARACTER                               56
         0837    PHANTOM RUBOUT                              55

INFCB     083A    INTERNAL FILE CONTROL BLOCK ?               00 20 20 ...

NOTES:

OUTCHR entered as a label to the W* patcher points to location 0106 but the
notes say that OUTCHR is at 0267.  0267 has in it the address 0106 so to
output a character to the CRT, Call 0106 which is a JMP to the output
character routine.

PSCR and POIM are valid labels listed in the W* patcher but are not recognized
as labels.

Other labels listed above may not be recognized by the patcher, depending on
version.  (Not listed in the patcher's internal list, i.e. PVWTB, PNCON,
VOWTAB and NONCON.)

The purpose of the dispatch table entries at 0468 and 05A9 is unknown.  (Best
guess would be that these are used by MicroPro for debugging.

The label INFCB purpose is unknown, it falls outside of the normal user patch
areas.  The notes do reference a"USER 6" as the "INPUT FILE NAME file control
block patch area" but the source was not included.

The area from 0100 to 0248 also falls out of the user patch areas.  Other than
the guesses above, there is no further documentation on these points.  WFLAGS
and WRAPF do point to the same address.