home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / beehive / cpmforth / sedit10.lbr / SEDIT10.DZC / SEDIT10.DOC
Text File  |  1979-12-31  |  5KB  |  132 lines

  1.  
  2.                             SEDIT.DOC
  3.  
  4.       A full screen editor for the Laxen & Perry F83 forth.
  5.  
  6. Unlike the simple line editor provided with F83, this full-screen
  7. editor allows the user to modify a forth source screen quickly and
  8. easily with a minimum of trouble. Just move the cursor anywhere on
  9. the screen and make the desired changes. What you see, is what you
  10. get.
  11.  
  12. Hopefully the release of this editor will encourage those who had
  13. previously 'had a go' at forth but were frustrated by the awkward-
  14. ness of single-line editing. Not only is this editor quite usable,
  15. it can also serve as a useful learning tool. You are encouraged to
  16. modify it or add extra features - all easily done with forth.
  17.  
  18. SEDIT is an enhanced version of the editor which appeared in the
  19. book 'Forth - A Text and Reference' by Kelly and Spies. Improved
  20. screen display, error checking and re-coding of some commands now
  21. makes this editor virtually bomb-proof. We would be surprised if
  22. you find any bugs in it.
  23.  
  24.  
  25. 1. Installation:
  26.  
  27. As supplied, this editor is configured for use with computers and
  28. terminals that support the following screen and cursor control
  29. codes.
  30.  
  31.      Clear Screen             1Ah
  32.      Erase to End of Line     1Bh 54h
  33.      Cursor Positioning       1Bh 3Dh (row) (col)
  34.      Cursor Right             0Ch
  35.      Cursor Up                0Bh
  36.      Backspace                08h
  37.      Line Feed                0Ah
  38.  
  39. If your machine's codes are different you will need to alter the
  40. definitions on screen 3 of SEDIT.BLK (using F83's line editor).
  41.  
  42.  
  43. 2. SEDIT Commands:
  44.  
  45. a) Cursor movement -
  46.  
  47. Ctl-D  Move cursor right one character.
  48. Ctl-S  Move cursor left one character.
  49. Ctl-E  Move cursor up one character.
  50. Ctl-X  Move cursor down one character.
  51. Ctl-I  Horizontal tab (currently set to every fourth column).
  52. Ctl-Q  Set cursor to home position.
  53.  
  54. (Should your keyboard be equipped with arrow keys you may wish to
  55. alter the definitions on screen 10 and let the arrow keys move the
  56. cursor around.)
  57.  
  58.  
  59. b) Edit functions -
  60.  
  61. Ctl-G  Delete next character.
  62. Ctl-H  Delete previous character.
  63. Ctl-T  Erase all characters from cursor position to end of line. 
  64. Ctl-O  Open text, inserting a space at the current position.
  65. Ctl-Y  Delete a line and place into circular buffer.
  66. Ctl-N  Insert a line from circular buffer and move existing lines
  67.        down one position. Last line moves into the circular buffer.
  68. Ctl-A  Place current line into the single-line buffer.
  69. Ctl-P  Overwrite current line with the text in the line buffer.
  70.  
  71.  
  72. c) Block functions -
  73.  
  74. Ctl-C  Jump to next screen in current file.
  75. Ctl-R  Jump to previous screen in current file.
  76. Ctl-K  Marks the current screen as updated. (See note below) 
  77. Ctl-L  Restore screen to unmodified condition.
  78.  
  79.  
  80. d) Miscellaneous -
  81.  
  82. Ctl-Z  Clear screen or circular buffer.
  83. Ctl-V  Toggles insert mode.
  84. Ctl-U  Exit editor
  85.  
  86.  
  87. 3. Notes:
  88.  
  89. This editor actually has two buffers - a single line buffer for
  90. storing and retrieving a line of text and a novel circular buffer
  91. which holds up to sixteen lines deleted by the ctrl-Y command. If
  92. enough lines are deleted using ctrl-Y, one eventually finds the
  93. old deleted lines starting to reappear on the screen. Thus deleted
  94. lines are never lost except through delete character or erase to
  95. end of line. A deleted line may be restored by using ctrl-N.
  96. Should the circular buffer fill up with all manner of junk, it can
  97. be cleared with the ctrl-Z command.
  98.  
  99. Entering the editor is done with the command - 'n SEDIT' where n
  100. is the screen number to be edited. After editing a screen, it must
  101. be marked as updated by using the ctrl-K command. Failure to do so
  102. will result in the changes not being written to disk. Control-K
  103. should be issued BEFORE moving to another screen. Control-U exits
  104. the editor.
  105.  
  106. SEDIT assumes that you have patched F83's MS command to suit your
  107. cpu clock speed. If not, then do it now. Load F83.com and type the
  108. following line -
  109.  
  110.      BEEP  30000 MS  BEEP   <return>
  111.  
  112. This should give a delay between the two beeps of 30000 milli-
  113. seconds (ie. 30 seconds). If the delay is not correct then you
  114. will need to adjust the value of the variable FUDGE. For a 4Mhz
  115. Z80 microprocessor this is set to 10.
  116.  
  117. eg.   10 FUDGE !
  118.  
  119. Once you have found the correct value for FUDGE, save a new ver-
  120. sion of F83 with 'SAVE-SYSTEM F83-NEW.COM'. If you want the new
  121. F83 to include the SEDIT editor permanently, then simply load
  122. SEDIT before doing the SAVE-SYSTEM.
  123.  
  124.  
  125. Well that's it. You will find that editing forth screens is no
  126. longer the laborious task it once was. Of course, many extra
  127. features could be added to SEDIT but we will leave that for you
  128. to do.
  129.  
  130. lt in the changes not being written to disk. Control-K
  131. should be issued BEFORE moving to another screen. Control-U exits
  132. th