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 / WSOVR12.ASM < prev    next >
Assembly Source File  |  2000-06-30  |  7KB  |  210 lines

  1. ;--------------------------------------------------------------------
  2. ; WSOVR.ASM    revision 1.2        Jim Lill    10/03/86
  3. ;
  4. ; Speed Up Patches for Wordstar 3.3
  5. ;
  6. ; WSOVR is a slightly different approach to Wordstar patching.    It
  7. ; uses ideas from WSFAST24 etc except it does not do the Kaypro,
  8. ; drive or printer patches.  It does allow patching back to the
  9. ; normal values and tailoring of individual values.  In particular
  10. ; DEL3 requires different values for different systems. On floppy
  11. ; or even rigid systems you might want to delay the help menus
  12. ; that you get after hitting a control key (eg ^K). On ramdisk or
  13. ; cache systems where the menus are virtually instantaneous and don't
  14. ; really slow down editing, you might want "instant help" so you'd
  15. ; set the time shorter. It uses the overlay approach via MLOAD
  16. ; rather than using DDT. Using it is straight forward....
  17. ;
  18. ;        - use WS to set values etc in this source
  19. ;        - ASM WSOVR
  20. ;        - MLOAD WS.COM=WS.COM,WSOVR (or whatever name you use)
  21. ;
  22. ; LEGAL notes......
  23. ;   this overlay will remove your serial number, replacing it with
  24. ; the words "Speed-Up Version" or "Normal Version".  Use it only
  25. ; on your own legal Wordstar. It is NOT intended to "deserialize"
  26. ; illegal copies!; (now optional on rev 1.1)
  27. ;
  28. ; References: WSFAST16.LBR
  29. ;          WSFAST24.LBR
  30. ;           WSPATCH.TBL
  31. ;           WSBIBLE.DOC
  32. ;
  33. ; v 1.1 Tested on:  PCPI Applicard (Apple CP/M)
  34. ;
  35. ; rev 1.0
  36. ;   - created original file        --- Jim Lill  9/18/86
  37. ; rev 1.1
  38. ;   - made elimination of configuration info optional
  39. ;   - made s/n overwrite optional
  40. ;   - added file renaming (see patch area 5)
  41. ;   - added terminal esc seq. for faster edit. INSLIN etc.
  42. ; rev 1.2
  43. ;   - fixed missing ENDIF on LINSTR (oops!;)
  44. ;   - added ability to change default disc 
  45. ;   - added ability to change Configuration Block
  46. ;   - changed delay values to Hex
  47. ;--------------------------------------------------------------------
  48.                 ;
  49. YES    EQU    0FFH
  50. NO    EQU    NOT YES
  51.                 ;
  52.                 ;
  53. ;================== START OF USER DEFINED VALUES ===================
  54.                 ;
  55. DEFDSK    EQU    01H        ;set for default drive, A:= 01H
  56.                 ;eliminates doing a reinstall
  57.                 ;
  58. PATCH    EQU    YES        ;yes for speed-up version
  59.                 ;no for normal version
  60.                 ;doesn't patch s/n back in!
  61.                 ;
  62. NOSN:    EQU    YES        ;yes = speed-up or normal in place of S/N
  63.                 ;no = leave s/n alone
  64.                 ;
  65. RENAME    EQU    NO        ;yes= change name of WS files
  66.                 ;no= leave alone
  67.                 ;
  68. CONFIG    EQU    YES        ;yes= change data in configuration block
  69.                 ;     that shows at signon. See patch area 8
  70.                 ;no= leave alone
  71.                 ;
  72. LINSTR    EQU        NO        ;yes to add line insert, line delete etc
  73.                 ;no leave alone. See patch area 1 below...
  74.                 ;NOT required for Apple (set to NO)
  75.                 ;
  76.                 ;Normal
  77.                 ;Value           Description
  78.                 ;------------------------------------
  79. DEL3    EQU    15H        ; 19H    delay before help menus. 64 for floppy
  80.                 ;    systems. 15 for Ramdisk systems
  81. DEL4    EQU    00H        ; 64H    time for msg displays, copyright etc.
  82. DEL5    EQU    00H        ; 09H    delay until screen refresh
  83. DELCUS    EQU    01H        ; 10H    delay after cursor positioning
  84. DELMIS    EQU    01H        ; 05H    delay after misc other functions
  85.                 ;
  86. NOPRO    EQU    YES        ;bypass MicroPro opening screen
  87. NOLEG    EQU    YES        ;skip legalese
  88. NOCON    EQU    NO        ;skip legalese and configuration info
  89.                 ;
  90. ;=== END OF USER DEFINED VALUES (except for filenames and term. seq) ===
  91.                 ;
  92.     ORG    0170H        ;patch area 0
  93.                 ;
  94. IF PATCH AND NOSN        ;sub for s/n
  95.     DB    'Speed-Up Version '
  96. ENDIF
  97.                 ;
  98. IF NOT PATCH AND NOSN
  99.     DB    ' Normal Version  '
  100. ENDIF
  101.                 ;
  102. ;----------------------------------------------------------------------
  103. ;    The following patch area contains space for you to add the sequences
  104. ; that your terminal requires for Erase to End of Line, Delete Line and
  105. ; Insert Line.    This patch is already part of WS that is supplied
  106. ; specifically for Apples.
  107. ;    The following information is from WSBIBLE.....
  108. ;
  109. ;LINDEL  257  DELETE LINE            ^Y  ## 00 00 00 00 00 00
  110. ;               <try 02,1B,52 on 83 KayPros to
  111. ;            get smoother scroll down, ^QW>
  112. ;LININS  25E  INSERT LINE            ^N  ## 00 00 00 00 00 00 00 00
  113. ;              <try 02,1B,45 on 83 KayPros to get
  114. ;               smoother scroll up
  115. ;
  116. ; ## (above) leading data byte (DB) in a string which tells how
  117. ; many bytes of data follow.
  118.  
  119. IF LINSTR
  120.                     ;
  121.     ORG    0250H            ;patch area 1
  122. ERAEOL    DB    02H,1BH,54H,0,0        ;string to erase to end of line
  123.     ORG    0257H
  124. LINDEL    DB    02H,1BH,52H,0,0        ;string to delete line
  125.     ORG    025EH
  126. LININS    DB    02H,1BH,45H,0,0        ;string to insert line
  127.                     ;
  128. ENDIF
  129. ;----------------------------------------------------------------------
  130.     ORG    02B1H            ;patch area 2
  131.                     ;
  132. IF PATCH
  133.     DB    DEL3,DEL4,DEL5        ;speed up
  134. ENDIF
  135.                     ;
  136. IF NOT PATCH
  137.     DB    25,64,09        ;normal values
  138. ENDIF
  139.                     ;
  140. ;----------------------------------------------------------------------
  141.     ORG    28EH            ;patch area 3
  142.                     ;
  143. IF PATCH
  144.     DB    DELCUS,DELMIS        ;speed-up
  145. ENDIF
  146.                     ;
  147. IF NOT PATCH
  148.     DB    10,05            ;normal values
  149. ENDIF
  150.                     ;
  151. ;-----------------------------------------------------------------------
  152.     ORG    3CF1H            ;patch area 4
  153. IF NOPRO AND PATCH
  154.     JMP    3CFDH            ;no logo
  155. ENDIF
  156.                     ;
  157. IF NOT PATCH
  158.     DB    21H,0fH,41H        ;make normal
  159. ENDIF
  160. ;-----------------------------------------------------------------------
  161. IF NOLEG AND PATCH
  162.     ORG    3F1DH            ;patch area 5A
  163.     DB    00H            ;only skip legal
  164. ENDIF
  165.                     ;
  166. IF NOCON AND PATCH
  167.     ORG    3D0FH            ;patch area 5B
  168.     JMP    3D27H            ;skip legal and conf. info
  169. ENDIF
  170.                     ;
  171. IF NOT PATCH
  172.     ORG    3D0FH
  173.     DB    21H,1CH,3FH        ;make normal again
  174.     ORG    3F1DH
  175.     DB    20H
  176. ENDIF
  177.                     ;
  178. ;-------------------------------------------------------------------------
  179. IF RENAME
  180.  
  181.     ORG    0400H            ;patch area 6
  182.     DB    0
  183.     DB    'WS      COM'        ;name of WS.COM
  184.     DB    0
  185.     DB    'WSMSGS  OVR'        ;name of WSMSGS.OVR
  186.     DB    0
  187.     DB    'WSOVLY1 OVR'        ;name of WSOVLY1.OVR
  188.     DB    0
  189.     DB    'MAILMRGEOVR'        ;name of MAILMRGE.OVR
  190. ENDIF
  191. ;------------------------------------------------------------------------
  192.     ORG    02B9H            ;patch area 7
  193.     DB    DEFDSK            ;this always gets patched
  194. ;------------------------------------------------------------------------
  195. IF CONFIG        ;
  196.               ;     |<<center 34 characters on this line        
  197.     ORG    018AH    ;     |             patch area 8A
  198.     DB    '           Apple  //e             '    ;terminal id
  199.     ORG    01AEH    ;     |             patch area 8B
  200.     DB    '         Standard Printer         '    ;printer id
  201.     ORG    01D2H    ;         |             patch area 8C
  202.     DB    '    LST Device      No Protocol   '    ;printer protocol
  203.     ORG    01F6H    ;          |             patch area 8D
  204.     DB    '      Configured 3 Oct 1986       '    ;port driver
  205.             ;     |<<center line, maintain length 
  206. ENDIF
  207.                     ;
  208.                     ;
  209.     END.
  210.