home *** CD-ROM | disk | FTP | other *** search
/ 8bitfiles.net/archives / archives.tar / archives / genie-commodore-file-library / GEOSApps / GEOUTILS.ARC / PRINTDRVRPATCHER (.txt) < prev    next >
GEOS ConVerT  |  2019-04-13  |  14KB  |  158 lines

  1. PrintDrvrPatcher
  2. PRG formatted GEOS file V1.0
  3. Star NX-10
  4. PRINTDRVRPATCHER
  5. BLASTER'S CONVERTER V2.5    Y
  6. CONVERT
  7. PrintPatcherV2.0
  8. George H. Wells, Jr.
  9. Patch Printer Drivers easily according to instructions provided by a programmer.
  10. GEOS Printer Driver Patcher
  11. ^${P?
  12. LV    H 
  13. LV    $z
  14. ${0` 
  15. LV    ${0
  16. Incomplete list of patches.
  17. JJJJ B
  18.          GEOS Printer Driver Patcher
  19. Please select the old (original) printer driver:
  20. (First-time users should click YES for info.)
  21. Iand click
  22. dfor info
  23. & options
  24. to deskTop
  25. Please select the new (previously patched)
  26. printer driver.  Use the old one if you are
  27. just starting to patch:
  28. Xand click
  29. to deskTop
  30. Old Driver Name:
  31. Old CRC code:
  32. New Driver Name:
  33. Enter an UN-used filename for the
  34. New Driver and hit RETURN or:
  35. sto quit to deskTop
  36. Before CBM PRoGram file can be 
  37. written to disk, please enter an 
  38. UN-used filename and hit RETURN.
  39. End Address:
  40. cwrite attempt
  41. rto print pro-
  42. {gramming info
  43. This application provides an easy way for any
  44. GEOS user to make minor changes in an existing
  45. Printer Driver according to instructions provided
  46. by a programmer. It is intended for customizing
  47. such things as page length, NLQ or other printer
  48. codes, or removing extra line-feeds.  Before
  49. proceeding, you should print the user informa-
  50. tion (one page) and retain for future reference.
  51. pto print user
  52. yinformation
  53. pfor program-
  54. ymers only
  55. to return
  56. to patching
  57. to deskTop
  58. Old Driver Name:  
  59. Old CRC Code:     
  60. Old End Address:  
  61. New Driver Name:  
  62. New CRC Code:     
  63. New End Address:  
  64. Number of Patches:
  65. sto print
  66. |patches
  67. swrite
  68. |file to
  69. for more
  70. patches
  71. exit to
  72. deskTop
  73. Before file can be written to
  74. disk, please enter an UN-used
  75. filename and hit RETURN.
  76. End Address:
  77. uwrite attempt
  78. Hit mouse button to halt printing....
  79. Form Feed Printer?              
  80. The Active Printer Driver is
  81. not on the disk.
  82. There has been a disk error.
  83. Make sure original disk is in
  84. the same drive and that it
  85. is not write-protected.
  86. No disk transfer has been made.
  87. uto return to patching
  88. Hit mouse button to halt printing....
  89. Return to patching?            
  90. The file has been successfully
  91. written to disk.
  92. ato deskTop
  93. uto return to patching
  94. The active printer driver:
  95. appears to be an early version
  96. that will not print ASCII text.
  97. Select another from the deskTop.
  98. uto return to patching
  99. Cannot find printer driver:
  100. Make sure a copy of it is on
  101. this disk or select a different
  102. driver from the deskTop.
  103. uto return to patching
  104. Form Feed Printer?
  105. Hthen return
  106. to patching
  107. fthen exit
  108. to deskTop
  109. File:
  110. has not yet been written to
  111. disk.  Are you sure you want
  112. to discard this patched file?
  113. bto discard patched file
  114. vto return to patching
  115. There has been a printer error.
  116. Make sure printer is plugged in
  117. and on-line and is not out
  118. of paper.
  119. uto return to patching
  120.                User Information for GEOS Printer Driver Patcher 
  121. Use this program when you have a programmer's list of instructions to patch a printer driver to solve a problem with your printer. You might get such a list from a BBS, a magazine or user group newsletter, or even privately. Example: 
  122. ------------------------------------------------------------------------------
  123. These patches delete all the special printer codes for TEXT so you can manually select an NLQ font built into your printer without the New Driver over-riding it. It also works with daisy wheel printers and all non-Commodore printers that use ASCII and support form-feed. It modifies only NLQ and DRAFT, not other geo- Write fonts or geoPaint graphics. The Old Driver came with GEOS 1.3 products. 
  124. Old Driver Name:  Epson FX-80
  125. Old CRC Code:     82a1
  126. Old End Address:  7b51
  127. New Driver Name:  Epson FX-80noNLQ
  128. New CRC Code:     d298
  129. New End Address:  7b51
  130. Number of Patches:     2
  131. 7915 4c 60   7ac1 0d fa
  132. -------------------------------------------------------------------------------
  133. Due to risk in patching, always use a separate work disk with copies of this program, the Old Driver to be patched, and your active printer driver if you decide to print your patches to verify against the list. 
  134. In the first two Dialog Boxes, select the same Old Driver Name (the one to be patched). The third Dialog Box gives you the CRC Code for the Old Driver. A CRC Code is like a checksum which is calculated when the driver is loaded from disk. If the Old CRC Code in the Dialog Box does NOT exactly match the Old CRC Code in the list, go back to the deskTop to search for the correct driver on another disk. Matching CRC Codes is your only guarantee that you have the correct driver since there can be more than one version with the same name. If you find another candidate, copy it to your work disk and rerun the program. When the CRC Codes DO match, type a UNIQUE New Driver Name and hit <RETURN>. 
  135. The next Dialog Box shows a four-digit hexidecimal address, followed by its two-digit hex data, and Verify and Done icons. In the example, the first address that needs to be patched is (7915). Go to it by DELeting back over the data and current address. Type in (7915) and <RETURN>. You should see (7915) and its current data (4c). At the cursor enter the patching (new) data (60) and <RETURN>. This is VERY important: <RETURN> makes the program replace the old data (4c) with the new data (60) and display the next address (7916) with its data (f6). Now make the next patch from the example, DELeting (7916 f6) and typing (7ac1) <RETURN>, then after (0d), type (fa) <RETURN>. Continue if more are listed. Disregard dashes: the program replaces them with (60) if required. 
  136. When you have made the patches, click on the Verify icon. The Dialog Box displays the first patch; clicking again shows the second, etc. A patch at an incorrect address may be removed by entering <DEL> <DEL> <RETURN>. If all patches match those in the instructions, click on the Done icon. 
  137. The next Dialog Box shows seven lines of information. The New CRC Code and New End Address on the screen MUST MATCH those in the list. If NOT, DELete and type the correct New End Address and <RETURN>. The program will recalculate the New CRC Code. If either or both still do not match, print the patches to proof-read against the list and/or click OK to re-enter patching mode to correct them. 
  138. When everything matches, write the file to Disk and exit to the deskTop. Click geos in the command bar to select your new printer driver. Until you are sure it does what you want, work only with copies of documents. 
  139.                Information on GEOS Printer Driver Patcher 
  140.                           Notes for Programmers
  141. You can convert any GEOS printer driver to a standard CBM machine language program to be disassembled and printed out with a monitor. Select the desired printer driver in the first Dialog Box and click the YES icon for options. In the second Dialog Box, click the Disk icon: "for programmers only". The third Dialog Box requests a new name (do not use lower-case characters) for the CBM version of the driver. It also tells you the end address of the driver for you to know how far to disassemble. (All printer drivers start at $7900.) NOTE: since the CBM version is not a valid GEOS printer driver, it will not appear in the file selection menus. Do not try to use the CBM version within GEOS, except to delete it. Make notes of your desired patches and use this program to create a new patched driver. If you need more room than the original (Old) driver, the extra space will be pre-loaded with RTS's ($60), whether you change the New End Address directly or just patch beyond the Old End Address. 
  142. Assuming that it takes several versions to get a patched driver to do what you want, print out the list(s) of instructions by selecting the Old Driver Name in the first Dialog Box, the New Driver Name in the second Dialog Box, and clicking YES: "to print patches" in the third Dialog Box. To help keep track of the versions, you can use the deskTop to put a brief note in the file's info box. This is especially important for any patched drivers you plan to share with others. 
  143. Most of the Dialog Boxes are self-instructing; the small fourth Patching Dialog Box needs more explanation: 
  144. Each time the box is presented, it displays an address in the range ($7900-7f40), followed optionally by the old and new data. If this Current Address is at or beyond the New End Address, two hyphens, equivalent to RTS's ($60), are displayed instead of the Old Data. Following that is the New Data if it is different from the Old Data. 
  145. At this point you can do one of three things: 
  146. 1. Clicking Done leaves the patching mode;
  147. 2. Clicking Verify makes the program search the old and new drivers for the next patch;
  148. 3. And <RETURN> causes the currently displayed line of characters, which you may have modified, to be interpreted according to the following rules: 
  149. Only hexidecimal characters are significant. These are the numerals (0-9) and the letters (a-f and A-F). Any other characters are ignored. The first four hex digits are interpreted as an address and become the Current Address if in the range ($7900-$7f3f). The last two hex digits (beyond the four address digits) will be patched into the new file at that address. For example:  (79Ea5f) <RETURN> will put ($5f) at address ($79ea). (So will T7Q9eAB5-F.) Then the Current Address is incremented to the next address for the next Dialog Box. If only an address is input, it will become the current address for the next Dialog Box. 
  150. The New End Address automatically is adjusted any time a patch is made at or beyond its current location. (Note: the end address is one digit greater than the last used address of a file.) Both the old and new drivers are padded with data of RTS's ($60) from their initial end addresses to ($7f3f), the last possible file address. 
  151. This program was written by George H. Wells, Jr. and is released to the public domain. If you find this program useful, please share it and your patches with others. Special thanks go to Terry Mills and Marte Brengle for their help in testing this program. 
  152. 7900 60 4C
  153. C0DE 
  154. 701d 
  155. C0DE 
  156. 7fff 
  157. 1234 
  158.