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 / C128 / VDE-C128.ARK / VINST266.DOC < prev   
Text File  |  1989-01-27  |  26KB  |  450 lines

  1.                                  VINST266.DOC
  2.                                  ------------
  3.                            [Supplement to VDE.DOC]
  4.  
  5.                     Instuctions for VINSTALL 2.66 (06/88)
  6.                 Installation Utility for Video Display Editor
  7.  
  8.                                (c)1988 E. Meyer
  9.  
  10.  
  11.      As distributed, VDE is set up for a basic Generic Terminal, and VDE-M is 
  12. set up for an Osborne Executive.  Unless you have an Executive, you will want 
  13. to re-"install" VDE(M) before using it.  The "Generic" VDE installation may 
  14. run on many different computers, but it is very slow.
  15.      VDE can now be installed for ANY terminal; if improperly installed, the 
  16. display may be a mess, but there are no other side effects.  VDE-M requires a 
  17. computer with memory-mapped video; if improperly installed, it may crash.
  18.      Most users should be able to install VDE simply by going to the Terminal 
  19. Installation and choosing the <L>ist option to select from a menu of terminals 
  20. already built into VINSTALL.  The list is not exhaustive, but it includes most 
  21. basic types: for example, the "LearSiegler ADM3" data should do well enough on 
  22. Qume, Wyse, Freedom and many other terminals, as well as many computers, that 
  23. emulate an ADM3 terminal.  Check your manual to see whether your machine 
  24. emulates one on the menu, or comes close.  Once you have VDE basically 
  25. working, you may want to go through the detailed <E>dit procedure to fine tune 
  26. things; the better the installation, the faster and more attractive the 
  27. display will be.
  28.      NOTE: the installation of arrow keys affects VDE's command behavior.  If 
  29. the keys ^J,^K,^L are in use as arrow keys, as in many of the CP/M defaults, 
  30. they will not function as Wordstar synonyms.
  31.      Installing VDE for your computer should not be difficult.  If you find 
  32. that it was, please send me a note with the details of what was required, so 
  33. that future versions of VINSTALL can be improved.
  34.  
  35.      Terminal installation, while necessary, is only one part of VINSTALL.  
  36. There are also a number of User Options affecting the operation of VDE that 
  37. you can select or modify to suit your taste, and a default set of Macro Keys.
  38.      The default printer installation is a basic Teletype (no special codes 
  39. enabled); VDE assumes only that the printer responds normally to Backspace (if 
  40. ^PH is used), Linefeed, and Formfeed.  You will probably want to redo this, so 
  41. you will have access to your printer's special features.
  42.      
  43.  
  44. =============================  RUNNING VINSTALL  =============================
  45.  
  46. VINSTALL SYNTAX:    A>vinstall {d:}vdename{.com} {instfil}     "{}"=optional
  47.  
  48.      Typically, you can use VINSTxx to modify VDExx.COM (of course, feel free 
  49. to rename these files more conveniently) simply by typing:
  50.                     A>VINSTxx VDExx
  51. and selecting the values you want to change.  If you have to do a manual 
  52. installation of VDE for your computer, you may want to create an "installation 
  53. file" which you can use (and give to others) to supplement the built-in 
  54. terminal list of VINSTALL.  This is done by specifying another filename:
  55.                     A>VINSTxx VDExx TERMNAME
  56. VINSTALL will load and use (or create) the file TERMNAME.VDE (or .VDM), and 
  57. update it as well as VDE.COM when you exit.  The installation file is very 
  58. small, containing just terminal parameters (no user options, etc).
  59.      It is also possible to create "key files" of VDE macro key definitions.  
  60. These work just the same way, except they must have a filetype of ".VDK", and 
  61. this must be specified on the command line, eg:
  62.                     A>VINSTxx VDExx MYKEYS.VDK
  63.      There are also "printer files" of type ".VDP", which store your printer 
  64. installation data, and work the same way:
  65.                     A>VINSTxx VDExx OKIDATA.VDP
  66. (No, you can't specify more than one supplemental file at once.)  The version 
  67. numbers of VDE(M), VINSTALL, and any ".VDx" files must "agree" or you will get 
  68. an error.  The match need not be exact, as there may be a new release of VDE 
  69. without modifying the installation areas.
  70.      VINSTALL's Key (".VDK") files are compatible with MSDOS versions of VDE 
  71. as well (except that the MSDOS version allows up to 1K for definitions).
  72.  
  73.      VINSTALL is largely self-documenting, and steps you through each item 
  74. individually.  If this is your first time running the program, take advantage 
  75. of its "Help" option before you start in, for some basic instructions.  You 
  76. may also find a good ASCII chart helpful.  VINSTALL uses several different 
  77. types of data entry:
  78.      TEXT - Just type in the character(s).
  79.      LOGICAL - Yes/No.  Just type "Y" or "N".
  80.      DECIMAL - Enter a number from 0 to 255.
  81.      HEX - Enter a two-digit hex byte value 00-FF.  (Don't omit lead zeros.)
  82.      BYTE STRINGS - fixed length: enter the required number of hex bytes.
  83.                     variable: enter the (hex) count for the number of bytes, 
  84.               followed by the bytes themselves.  Example:  (02)1B3D.  The max- 
  85.               imum length is given in square brackets [#].  This format is 
  86.               referred to below as "(#),bytes".
  87. VINSTALL can't check for illegal values; be careful what you enter!
  88.  
  89.      What follows is a more detailed explanation of installation items, in 
  90. about the same order as in the VINSTALL procedure.  Most people will be using 
  91. VDE; you can try to use VDE-M instead if you have memory mapped video with:  
  92. (1) a high bit that can be used to highlight and provide a cursor; (2) an 
  93. absolute address at or above 4000h.  Memory mapped video provides much faster 
  94. screen display if your hardware supports it.
  95.  
  96.  
  97. =============================  USER OPTIONS  =================================
  98.  
  99. Create BAKup files (Y/N) - Should a backup file be made when you edit an 
  100.     existing file?  Choose "Y" to play safe, "N" to save disk space.
  101. Default file mode (W/A/N) -  Which of the three file modes "W","A","N" 
  102.     described in VDE.DOC do you want as the default?  (Originally "A".)
  103. Auto mode select filetypes  -  You can specify two filetypes (or masks, using 
  104.     "?" as a wildcard) to automatically set a file mode other than the 
  105.     default.  For example, you can declare all "ASM" files to be "N" mode, or 
  106.     all filetypes "?88" to be "W", by default.  If not used, fill with some 
  107.     illegal character like ".".
  108.  
  109. Default insert on (Y/N) - Do you want the INSERT toggle to start out ON when 
  110.     first entering VDE?  (Originally No.)
  111. Default ruler on (Y/N) - Do you want the Ruler line (^OT) to start out ON when 
  112.     first entering VDE?  (Originally No.)
  113. Default HCR display on (Y/N) - Do you want Hard CR display (^OD) to start out 
  114.     ON when entering a Document file ("W/A" mode)?  Originally Yes.  (The 
  115.     default is always OFF in "N" mode.)
  116. Enable hyphenation (Y/N) - Do you want hyphenation (^OH) to start out ON when 
  117.     first entering VDE?  Originally Yes.
  118.  
  119. Left and Right margin columns (1-255) - Default margin settings for "W/A" 
  120.     modes.  Set both to 1 to entirely disable wordwrap and reformatting.
  121. Scroll overlap (0-255) - This is the number of lines overlap between screens 
  122.     when scrolling with ^R/^C.  The smaller, the larger the scroll.  Keep this 
  123.     smaller than your screen size!
  124.  
  125. Show system files (Y/N) - Do you want files with the SYStem attribute to show 
  126.     in the VDE directory display?
  127. Fixed drives (A-P) -  This lets you specify that up to two CP/M logical drives 
  128.     are nonremovable media (hard or RAM disk), so VDE won't reset them before 
  129.     writing to them, speeding up some systems.  Enter two drives from "A" to 
  130.     "P"; to leave either blank, enter "@".  (The default is "@@", or none; if 
  131.     you have a RAM drive C:, enter "C@".)  Caution: naming a floppy drive here 
  132.     can cause serious BDOS errors on CP/M 2 systems.
  133. Ring bell on error (Y/N) - Do you want your terminal bell to ring when a VDE 
  134.     error message displays?
  135. Enable help menus (Y/N) - Do you want to have the help menus (^J,ESC-H) avail- 
  136.     able?  Normally "Y".  If you change this to "N", you will have about 1K 
  137.     more free memory for editing.
  138. Alternate video in header (Y/N) - Do you want the header, messages, etc to 
  139.     appear in a contrasting video mode (if installed)?
  140. Suppress header by default (Y/N) - Do you want header display (^OQ) to start 
  141.     out off?  Normally "N", and the header is displayed.
  142.  
  143. Clock speed in MHz (01-FF) - Set this hex value to reflect your CPU clock 
  144.     speed; most Z80 computers are 4.0 MHz (use 40 here).
  145. Horizontal scroll delay (01-FF) - This value affects the delay between 
  146.     scrolling the current line and the rest of the screen, when working beyond 
  147.     the right screen edge.  The average value is 80; adjust up or down as you 
  148.     like.  (VDE-M is so fast that a value of 01 is recommended.)
  149.  
  150. Hard Tab display spacing  -  This determines how any actual Tabs (^I) in your 
  151.     text will display.  Usually 8, this can be made 2, 4, 16, or any other 
  152.     power of two.  Other values will produce erratic results.
  153. Variable tab stops -  Enter a list of up to 8 variable tab stop columns, in 
  154.     ascending order.  (Column 1 is the leftmost.)  Fill unused values with 
  155.     zero.  Originally 5,15,35,55.
  156.  
  157.          You will next be asked whether you want to continue to MODIFY DEFAULT 
  158. CHARACTERS? (Y/N)  Ordinarily you will NOT; however, if a default assignment 
  159. in VDE conflicts with some special application, you can change these values.  
  160. Remember the new values if you do!  When entering control codes (00-1F), avoid 
  161. standard ASCII values ^H,^I,^J,^L,^M,^Z (ASCII 08,09,0A,0C,0D,1A).
  162.  
  163. Wildcard character - Normally "_", this is the character that will be used as 
  164.     a wildcard in FIND strings.  Change if you wish.
  165. Block mark character (00-1F) - Normally ^@ (00), but if you need to imbed that 
  166.     code in your files for any reason you can change this.
  167. Print toggles (00-1F) - These are the codes that will call up the four toggles 
  168.     defined in your Printer installation.  Normally ^B,^D,^S,^Y, corresponding 
  169.     to WordStar bold, doublestrike, underline, and ribbon/italic.
  170. Print switches (00-1F) - These are the codes that will call up the four 
  171.     switches defined in your Printer installation.  Normally ^Q,^W,^E,^R.
  172.  
  173.  
  174. ==========================  TERMINAL INSTALLATION  ===========================
  175.  
  176. Terminal ID - Identify the terminal you are installing. (16 characters)
  177. Viewable screen columns (40-255) - Enter the width of your screen in columns.  
  178.     The normal value is 80 for a standard screen.
  179. Screen lines (4-255) - Enter the number of lines on your screen.  Normally 24 
  180.     for a standard screen.  Must be at least 4.
  181.  
  182. DELete character (00-7F) - VDE always accepts DEL (7F) as a delete key. If 
  183.     your keyboard can't generate this you can install an alternate value here 
  184.     (example: 1F enables ^_ on an Osborne 1).  Also, if you prefer to have a 
  185.     destructive (deleting) Backspace, you can install ^H (08) here.  Otherwise 
  186.     you can leave this at the default value, FF for "not used".
  187. Arrows up, down, right, left (00-7F) - VDE always accepts Wordstar arrows 
  188.     ^E,^X,^D,^S, as well as ^H (backspace) and ANSI ESC sequences.  If your 
  189.     terminal has arrow keys that generate different values, you can install 
  190.     them as alternates here.  Omit high (parity) bits; VDE strips these.  Use 
  191.     "FF" for "not used".  The default is CP/M ^K,^J,^L, entered as 0B0A0CFF.  
  192.     (Don't install ^H here.)  These keys will not function as Wordstar 
  193.     synonyms unless you remove these assignments.
  194.  
  195. Terminal init, deinit - Enter the codes you want sent to initialize your 
  196.     screen on entry into VDE, and to deinitialize on exit, in the form (# of 
  197.     bytes),bytes.  Example: ^Z is (01)1A.  Minimally, both sets of codes 
  198.     should clear the screen.
  199.  
  200.                          INSTALLATION (Generic VDE only)
  201.  
  202. Autowrap at line end (Y/N) -  Usually Yes, as most terminals wrap down to the 
  203.     next line when a character is printed at the right edge of the screen.  If 
  204.     yours discards characters instead, set this to No.
  205. Clear to end of line - Enter the codes to clear to the end of the line, as 
  206.     (#),bytes.  Example: ESC-T is (02)1B54.  If your terminal can't do this 
  207.     then zero it out (00).
  208. Alternate video on/off - Enter the codes (#),bytes to turn your favorite video 
  209.     attribute (eg inverse, dim) on and off.  This will be used for control 
  210.     codes and (optionally) the header and messages.  If your terminal has no 
  211.     attributes, zero these out (00).
  212. Use high bit for alt. video (Y/N) - If, instead, your terminal needs the high 
  213.     bit set on characters to put them in alternate video, zero the above 
  214.     strings out and say Yes here; otherwise, No.
  215. Console filter (7D-FF) - This is the highest ASCII code that will be sent to 
  216.     the screen.  Normally 7F; if your terminal can't display codes 7F or 7E 
  217.     (DEL and tilde), lower this to 7E or 7D.  Characters filtered out will 
  218.     display as a "?".
  219.  
  220. Cursor positioning mode (S/R/A/N) - This tells VDE how your terminal can be 
  221.     made to put the cursor at any given row/column on the screen:
  222.               "S"tandard = leadin byte(s), row byte, column byte (default)
  223.               "R"eversed = leadin byte(s), column byte, row byte
  224.               "A"NSI std = ANSI standard sequences "ESC[rr;ccH"
  225.               "N"one     = no absolute cursor addressing supported
  226. Cursor positioning sequence - This is the actual sequence used to address the 
  227.     cursor.  IF YOU CHOSE "A" mode above, you can skip this entirely.  IF YOU 
  228.     CHOSE "S" or "R", then enter the 4-byte sequence for addressing the cursor 
  229.     to the top left:  two lead bytes, then two row/column offsets.  Most 
  230.     terminals use ESC,=,20h+row,20h+col, or 1B3D2020.  If you have only one 
  231.     lead byte, enter 00 for the second.  IF YOU CHOSE "N", then you must enter 
  232.     two 2-byte sequences instead: first one to home the cursor, then one to 
  233.     move it right.  If either is only one byte, enter 00 for the second.  
  234.     Typical values are home=1Eh, right=0Ch, which would make 1E000C00.
  235. Delay after cursor positioning (00-FF) - Normally 00.  Some slow terminals 
  236.     require a delay here to accomplish cursor movement; adjust this value 
  237.     upwards as necessary.
  238.  
  239. Insert, Delete line - Sequences that will cause the current cursor line to be 
  240.     deleted, or a new line inserted there.  Most terminals can do this.  
  241.     Example: on an ADM3-style terminal, ESC-E or (02)1B45 inserts a line 
  242.     before the current one, while ESC-R or (02)1B52 deletes a line.  For a few 
  243.     terminals, you have to specify which line is to be inserted/deleted; in 
  244.     this case, enter the sequences for line 1 (the second screen line).  If 
  245.     your terminal can't do this at all, zero these out (00).
  246. Ins/del specific to line 1 - Usually No; set to Yes only if the ins/del 
  247.     sequences you installed above are for line 1 only, rather than general.
  248.  
  249.                      INSTALLATION (Memory-mapped VDE-M only)
  250.  
  251. Unused columns of RAM (0-255) - Enter the number of unused bytes in video RAM 
  252.     between the end of one visible line and the start of the next.  Example: 
  253.     many computers have 128 bytes of RAM per line, but only show 80 of them.  
  254.     So there would be 48 unused columns.
  255. Cursor on/off - Enter the codes (#),bytes to turn the regular CP/M cursor on 
  256.     and off, so it won't appear on the VDE screen.  If you can't do this zero 
  257.     them out (00), and the cursor will remain visible at the upper corner of 
  258.     the screen.
  259.  
  260. Video RAM start (4000-FFFF) - Enter the starting address of your video memory, 
  261.     as four hex digits.
  262. Video in/out code - If your video RAM is in the ordinary bank of memory (eg, 
  263.     at F000), just enter "C9" here (that's a RET instruction).  Otherwise, you 
  264.     will need the machine-language code to switch video memory in and out.  
  265.     There are 16 bytes available for each routine, and you must preserve all 
  266.     the CPU registers (including A), and end with a RET.  You should find the 
  267.     assembler code to do this in your terminal manual; to convert it to hex, 
  268.     either look up the hex values in a Z80 reference book, or use DDT or 
  269.     ASM/MAC to write and assemble the code to hex form.  You may find it 
  270.     easier to install this code with an assembler overlay than with VINSTALL.  
  271.     The addresses are 0190h (VidIN) and 01A0h (VidOUT).
  272.        CAUTION: if switching in video RAM affects the low end of memory (0000- 
  273.     3FFF) in any way, you will not be able to use VDM.  There is no provision 
  274.     for relocating any VDM code to cope with such situations.
  275.  
  276.  
  277. ===========================  PRINTER INSTALLATION  ===========================
  278.  
  279.      VDE.LBR includes a sample printer driver: EPSON.VDP.  This shows you how 
  280. to implement the basic features (emphasized, underline, etc) on an Epson FX or 
  281. LQ compatible printer.  See above for how to load and use this file.
  282.  
  283. Printer ID - Identify the printer you are installing.  (16 characters)
  284. Send LF after CR (Y/N) - Normally Yes.  But with some printers, which manufac- 
  285.     ture their own LF on receiving a CR, you will want No here.
  286.  
  287. Page length (0-255) - Set the number of text lines to print on a page.  (Does 
  288.     not include the top margin or 3 extra lines for a header, if used.) 
  289.     Setting to 0 disables pagination entirely.
  290. Top margin (0-255) - Set the number of blank lines, if any, to skip at the top 
  291.     of each page when printing.  (Originally 0, none.)
  292. Left margin (0-255) - Set the number of blank columns to skip at the left of 
  293.     each line when printing.  (Originally 0.)
  294.  
  295. Printer initialization - Enter an optional string of code (#),bytes to send to 
  296.     the printer before each print job, to set margins, print modes etc.
  297. Printer deinit - Enter another optional string (#),bytes to send to the 
  298.     printer after each print job, to restore printer to desired state on exit.
  299. Codes for toggles - Enter the actual hex codes (#),bytes to send to the 
  300.     printer on encountering each of the four toggle codes, first to turn a 
  301.     feature on, then off.  The WordStar conventions are:
  302.               ^B  boldface             ^S  underline
  303.               ^D  doublestrike         ^Y  ribbon/italic
  304.     but you can use these however you like.
  305. Codes for switches - Enter the actual hex codes (#),bytes to send to the 
  306.     printer on encountering each of the four switches.  These have no pre- 
  307.     established meaning.
  308.  
  309.  
  310. ================================  MACRO KEYS  ================================
  311.  
  312.      The default macro definitions are those attached to the commands ESC-0..9 
  313. when VDE is first entered.  By changing them you can configure VDE to suit 
  314. your own specialized writing requirements.  (Any Keys defined with ESC-# while 
  315. running VDE override the defaults.)
  316.          VINSTALL gives you a display much like this:
  317.  
  318.       MACRO KEYS:  (01C6 bytes free)  <---- note free bytes (up to 01F4 = 500)
  319.       <0><>
  320.       <1><>                           <---- "<>" flag means empty
  321.       <2><>
  322.       <3>^[;^C                        <---- normal macro key
  323.       <4><>
  324.       <5><N>World Wide Widgets Inc.   <---- "<N>" flag means no-rpt key
  325.       <6><>
  326.       <7><Q>^QR^[B^QC^[T^[C           <---- "<Q>" flag means quiet key
  327.       <8><>
  328.       <9><>
  329.  
  330. This is pretty straightforward; you just select the number of the Key you wish 
  331. to redefine, then type in the new definition, much as you would in VDE.  All 
  332. the same rules apply (but VINSTALL will accept longer keys, up to 128 bytes).  
  333. If the new definition is too long to fit it will be rejected.
  334.  
  335.  
  336. ==========================  FURTHER USER PATCHING  ===========================
  337.  
  338.      Entry to VDE is via a JP instruction at 0100h.  The current value is JP 
  339. 0480h.  Thus, to add a user entry routine, you can instead JP to your own code 
  340. in the User Patch area, and finish it with JP 0480h.  Exit from VDE is via a 
  341. JP instruction at 0103h, normally JP 0000h.  To add a user exit routine, you 
  342. can instead JP to code in the Patch area, ending it with a warm boot (RST 0).
  343.      The address of the User Patch area will be given to you by VINSTALL.  
  344. This small region in VDE can be used to install any extra patch code you need. 
  345. (Example:  if your video in/out routines won't fit into 16 bytes, you can jump 
  346. to the User Patch area and put more code there.)  This is the ONLY such area 
  347. available, as VDE uses all available memory after its own code for editing 
  348. text.  Note: if you find the User Patch area too small, you can also use up to 
  349. 32 extra bytes before it.  This is the Print Switch code area; you must then 
  350. avoid using the four Switch codes.
  351.      VINSTALL also tells you the addresses of the command tables in VDE/M.  
  352. You may find this useful if you need to go in and change a VDE command key 
  353. that conflicts with your computer's firmware.  There are four command tables: 
  354. basic, ESC/^K, ^O, and ^Q.  Each is a list of 3-byte entries, with a one byte 
  355. keycode, then a two byte address.  (Examples: you will find the ^T command in 
  356. the basic table; the ^OX command appears in the ^O table, as ^X.)  Find the 
  357. problem keycode, and use DDT or another utility to change it.  (You will also 
  358. see the "keycodes" 00 and 80-84h in the tables; these are used internally for 
  359. arrow keys and other functions.)
  360.  
  361.  
  362. =============================  RESTORE DEFAULTS  =============================
  363.  
  364.      This option is provided in the event that someone has so mucked up your 
  365. copy of VDE that you can't sort out what's wrong.  This should return VDE to 
  366. nearly the state it was distributed in: all User Options restored to their 
  367. defaults, Terminal Installation set to Generic (or Osborne Exec), printer set 
  368. to a basic Teletype, no Macro Keys, no User Patch code.
  369.  
  370.  
  371. ==========================  GOING BEYOND VINSTALL  ===========================
  372.  
  373.      If your computer requires special additional code, and you know how to 
  374. use an assembler, you may want to make an overlay to add this code to VDE.  
  375. (You may also find this the easiest way to install other data, such as the 
  376. VidIN/OUT routines for the VDM Terminal Installation.)  Write the overlay 
  377. file, generate a HEX file with your assembler, then merge it with VDE.COM 
  378. using MLOAD or a similar utility.  (Be sure the code fits!)
  379.      Example: the following overlay adds special code for the NEC Starlet to 
  380. the User Patch area, where it is immediately executed when VDE is called up.  
  381. The Starlet has different terminal emulations and key definitions; most of 
  382. this code just ensures that it's in Soroc mode (which is what VINSTALL sets 
  383. VDE up for), and sets the cursor and DEL key definitions properly.
  384.      There is another problem: the VDE case toggle command (^^) has to be 
  385. changed, as it will conflict with one of the Soroc arrow keys.  (On some other 
  386. computers, you can't generate ^^ from the keyboard at all.)  Note how the 
  387. overlay finds the address of the main command menu (all the menu addresses are 
  388. stored at 010B-0112h in VDE.COM; alternatively, you can get VINSTALL to tell 
  389. you what they are), adds the appropriate offset (determine this yourself), and 
  390. then changes the command key to something else.  Note the flags "*--->" for 
  391. data that may change with versions of VDE.
  392.        ;NEC8401 Patch for VDE 2.64 (Z80 mnemonics)
  393.        org  0100h             ;At beginning of VDE.COM,
  394.               jp   entry      ; jump to User Patch area
  395. *--->  org  0250h             ;At User Patch area,
  396.        entry: ld   c,08h      ; set screen mode:
  397.               ld   e,81h      ;  Soroc, wrap on, fnkeys off, etc
  398.               rst  10h        ;   call special BIOS
  399.               ld   c,4Eh      ; set cursor keys:
  400.               ld   e,3        ;  to mapped codes
  401.               rst  10h        ;   call special BIOS
  402.               ld   c,4Dh      ; set definable key:
  403.               ld   de,data    ;  using data below
  404.               rst  10h        ;   call special BIOS
  405. *--->         ld   hl,(010Bh) ; get address of main command menu
  406. *--->         ld   de,7*3     ;  offset of ^^ (this may change)
  407.               add  hl,de      ;   point to offending ^^ code
  408.               ld   (hl),'\'   ;    change it to a backslash instead
  409. *--->         jp   0480h      ;Jump to VDE Start point
  410.        data:  db  4,7Fh,0,0   ;Data to set "DEL" key as DEL (7F)
  411.               end
  412.  
  413.      Here's another example: the Bondwell 14 will run VDE-M, but can't turn 
  414. off its own cursor with an ESC sequence.  After selecting the BW14 terminal 
  415. installation from VINSTALL, you need to add small Z80 routines to turn off the 
  416. cursor on entry, and restore it on exit.
  417.        ;BONDWELL 14 patch for VDE-M 2.64 (Z80 mnemonics)
  418.        org  0100h           ;At beginning of VDE.COM,
  419.               jp   entry    ; (0100h) jump to entry routine in Patch area
  420.               jp   exit     ; (0103h) jump to exit routine in Patch area
  421. *--->  org  0250h           ;At User Patch area,
  422.        entry: ld   a,0Ah    ;entry routine to turn cursor off
  423.               out  10h,a
  424.               ld   a,20h
  425.               out  11h,a
  426.               ld   a,0Bh
  427.               out  10h,a
  428.               xor  a,a
  429.               out  11h,a   ;Done...
  430. *--->         jp   0480h   ;Jump to VDE start point
  431.        ;
  432.        exit:  ld   a,0Ah   ;exit routine to turn cursor on
  433.               out  10h,a
  434.               ld   a,40h
  435.               out  11h,a
  436.               ld   a,0Bh
  437.               out  10h,a
  438.               ld   a,8
  439.               out  11h,a   ;Done...
  440.               rst  0       ;Reboot CP/M
  441.               end
  442.  
  443. You can also add code like this to VDE.COM using the "a" command to enter 
  444. assembler mnemonics in a debugging utility like DDT or (Z)SID.
  445.  
  446.  
  447.   Eric Meyer, 427 N. Washington, Bloomington IN 47401  ---  CIS [74415,1305]
  448.  
  449. ==============================================================================