home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Misc / PFONTM-A.DMS / in.adf / Chapter10 < prev    next >
Encoding:
Text File  |  1995-11-12  |  15.0 KB  |  352 lines

  1.  
  2. "Personal Fonts Maker - 10. PDM: The Project Menu"
  3.  
  4.  10. PDM: The Project Menu
  5.   10.1  Load Driver
  6.   10.2  Save Driver
  7.   10.3  Load Definitions
  8.        10.3.1 Commands and Characters
  9.        10.3.2 Commands
  10.        10.3.3 Characters
  11.   10.4  Save Definitions
  12.   10.5  Clear Definitions
  13.        10.5.1 Commands
  14.        10.5.2 Characters
  15.   10.6  Check Definitions
  16.   10.7  Section
  17.        10.7.1 Commands
  18.        10.7.2 Characters
  19.   10.8  Flush Printer Device
  20.   10.9  About
  21.   10.10 Quit
  22.  
  23. "Personal Fonts Maker - 10. PDM: The Project Menu"
  24.  
  25.  
  26. 10.        PDM: The Project Menu
  27.  
  28.    This chapter describes all the functions which can be accessed from the
  29. "Project" menu of the Printer Driver Modifier. All the functions which
  30. read or write data from and to peripheral units, and several more, are
  31. described here.
  32.  
  33.  
  34. 10.1       Load Driver
  35.  
  36.    This function loads a printer driver into the program's memory. A
  37. warning message is displayed if the load operation would clear the data of
  38. the driver currently processed, if this has not been saved. If the
  39. "Cancel" gadget of the warning message is selected, the function is
  40. aborted.
  41.  
  42.    The standard file requester (section 3.23) is used to select the
  43. printer driver which is to be loaded. Printer drivers are usually stored
  44. inside the "printers" drawer, which is contained in the "devs" drawer, of
  45. the Amiga Workbench and Extras disks.
  46.  
  47.    After the driver has been loaded, the control sequences associated with
  48. the commands and characters can be edited by the user, as described in
  49. section 9.4.2 ("The Editing Gadget"). The codes stored in the printer
  50. driver's internal command tables are converted to the FFDL syntax as
  51. specified by the user through the "Decoding Mode" functions (section
  52. 11.4).
  53.  
  54.    Printer drivers which are part of Amiga operating systems previous to
  55. version 1.2 cannot be loaded by the Printer Driver Modifier.
  56.  
  57.  
  58. 10.2       Save Driver
  59.  
  60.    This function saves the current driver. The standard file requester is
  61. used to select the name of the driver. It should be noted that printer
  62. drivers also have an internal name, which should match the name of the
  63. file in which the driver is stored. The internal name is part of the
  64. printer driver data loaded with the "Load Driver" function, and cannot be
  65. modified.
  66.  
  67.    This function initially checks the FFDL sequences written by the user
  68. for any errors. This is the same as the operation which can be executed
  69. manually by the user with the "Check Definitions" function (section 10.6).
  70. The save operation is aborted if any errors are found. Appendix H explains
  71. the error messages which may be displayed.
  72.  
  73.    The control sequences associated with the commands and characters are
  74. packed and optimized as specified by the user through the "Encoding Mode"
  75. parameters (section 11.5).
  76.  
  77.    After the driver has been saved, the program automatically performs a
  78. "Flush Printer Device" operation, as described in section 10.8.
  79.  
  80.  
  81. 10.3       Load Definitions
  82.  
  83.    A driver consists of much more than a table of control sequences. The
  84. "Load Driver" and "Save Driver" functions are used to load and store
  85. entire printer drivers. The Printer Driver Modifier can also load and save
  86. parameter files, similar to those used by the Personal Fonts Maker,
  87. containing FFDL sequences associated with commands and characters.
  88.  
  89.    A parameter file for the Printer Driver Modifier follows exactly the
  90. same format rules for the parameter and macro files of the Personal Fonts
  91. Maker. Section 2.6 ("Program and Font Parameters") explains how the data
  92. has to be written in such a file. The default file name suffix is ".def"
  93. (e.g. "Roman8.def").
  94.  
  95.    The "PDM DEFS" header must appear at the beginning of the file to
  96. identify it as a PDM parameter file. The Printer Driver Modifier uses only
  97. two keywords and one data type for its parameter files. The two keywords
  98. are CHAR and COMM. Both must be followed by a value indicating the
  99. character or code they refer to, an equal sign and the FFDL sequence
  100. associated with the character or code. Comments may not appear on the
  101. right of an FFDL sequence.
  102.  
  103.    The COMM parameter indicates that the following FFDL sequence refers to
  104. the command whose code is indicated immediately after the COMM keyword.
  105. CHAR is used to associate FFDL sequences with characters whose code in the
  106. Amiga set is in the range 160 to 255. The code after the CHAR keywords
  107. determines to which character in the Amiga set the sequence is to be
  108. linked.
  109.  
  110.    The numerical values which appear after the CHAR and COMM keywords
  111. follow the same encoding scheme as the values displayed in the "Number"
  112. gadget (section 9.4.1) of the program's main window.
  113.  
  114.    For example:
  115.  
  116.      PDM DEFS
  117.  
  118.      ;  = @, as in German 7-bit character set
  119.      CHAR 167 = (64)
  120.  
  121.      ; "Underline ON" sequence as in
  122.      ; Epson, IBM Proprinter and NEC Pinwriter
  123.      COMM 8 = ESC \- (1)
  124.  
  125. contains the information to redefine a character and a command. When this
  126. file is loaded with the "Commands and Characters" function (section
  127. 10.3.1), the Printer Driver Modifier associates an FFDL sequence with the
  128. character whose Amiga code is 167, and an FFDL sequence to the command
  129. number 8, which is "Underline On".
  130.  
  131.    The standard file requester (section 3.23) is used to select the file
  132. containing the parameters. A printer driver must already be in the
  133. program's memory when the parameters are loaded. Only the commands or
  134. characters referenced to in the parameter file are modified.
  135.  
  136.    If any errors are encountered in the parameter file, an error message
  137. is displayed and the operation is interrupted. All commands and characters
  138. are cleared. Appendix H describes all messages of the Printer Driver
  139. Modifier.
  140.  
  141.    It is possible to selectively load only the sequences in the file
  142. associated with either commands or characters. The following subsections,
  143. named as the three menu items, explain how this can be done.
  144.  
  145.  
  146. 10.3.1     Commands and Characters
  147.  
  148.    This function loads all the sequences in the file. The only commands or
  149. characters which are not modifed are those for which there is no
  150. associated command sequence in the parameter file (and - of course - those
  151. for which the new sequence is identical to the current one).
  152.  
  153.  
  154. 10.3.2     Commands
  155.  
  156.    This function only loads the sequences in the parameter file associated
  157. with printer commands. These FFDL sequences are introduced by the COMM
  158. keyword. Sequences associated with characters (CHAR keyword) are not
  159. considered.
  160.  
  161.  
  162. 10.3.3     Characters
  163.  
  164.    This function loads only those FFDL sequences in the parameter file
  165. introduced by the CHAR keyword. These are the FFDL sequences associated
  166. with the character table.
  167.  
  168.    This function can be very useful to modify a printer driver which does
  169. not support the downloading of characters whose code is greater than 127.
  170. In this case, a 7-bit character set containing the required national
  171. characters can be selected by choosing from the sets which come with the
  172. data files enclosed with the Personal Fonts Maker and the Printer Driver
  173. Modifier. The font to be downloaded must be designed so that all the
  174. required national characters whose Amiga code is greater than 127 are
  175. placed within the range accessible with 7 bits addressing, and the printer
  176. driver should be modified so that these Amiga codes are converted into the
  177. new codes of the downloaded set. This can be done more rapidly by loading
  178. the same 7-bit character set data file from the files which come both with
  179. the Personal Fonts Maker and the Printer Driver Modifier into both
  180. programs. Of course, it is also possible to design a new character set and
  181. use it with the Personal Fonts Maker and the Printer Driver Modifier.
  182.  
  183.  
  184. 10.4       Save Definitions
  185.  
  186.    This function saves all control sequences defined in the current driver
  187. environment to a file. The standard file requester (section 3.23) is used
  188. to define the file name and the position where the file is to be stored.
  189. The name of the default drawer used to store the control sequence
  190. definition files of the Printer Driver Modifier is "PDM_Defs".
  191.  
  192.    It is always advisable to save a set of new definitions with this
  193. function, even if the printer driver with the same function has also been
  194. saved. If a driver which has already been modified must be modified again,
  195. it is preferable to load the original driver and then the modified
  196. definitions, rather than the driver which has already been modified once.
  197. When a driver is loaded, modified and saved more than once, it may happen
  198. that the tables used to store the characters and commands may not be used
  199. with the maximum efficience.
  200.  
  201.    The definitions are not checked for validity before they are saved. All
  202. definitions are saved. When the definitions are loaded again, it is
  203. possible to selectively load only the sequences associated with commands
  204. or characters (section 10.3, "Load Definitions").
  205.  
  206.    Section 11.2 ("Icons") explains how it is possible to associate an icon
  207. with the parameter files saved by the program. Any errors encountered
  208. during the save operation are signalled by a message, as explained in
  209. appendix H.
  210.  
  211.  
  212. 10.5       Clear Definitions
  213.  
  214.    The Printer Driver Modifier has two functions to quickly remove all
  215. control sequences associated with either commands or characters. These
  216. functions are especially useful if a driver is used as a point of
  217. departure to create a substantially different driver, where perhaps only a
  218. few commands or characters are used. In this case, the control sequences
  219. associated with the unused commands and characters would occupy more
  220. memory than necessary.
  221.  
  222.    The two functions, described in the following subsections, respectively
  223. clear the memory occupied by the command table and the character table.
  224.  
  225.  
  226. 10.5.1     Commands
  227.  
  228.    This function clears all control sequences associated with the printer
  229. commands. This is functionally similar to setting all commands to NOAV, as
  230. described in section 9.4.2 ("The Editing Gadget"). In fact, if the
  231. available memory is sufficient, it is preferable to place a NOAV code in
  232. the editing gadget, rather than leaving the gadget empty.
  233.  
  234.  
  235. 10.5.2     Characters
  236.  
  237.    This function clears all sequences associated with the characters whose
  238. code is greater than or equal to 160. There is no NOAV code to indicate
  239. that a character should not be sent to the printer, as there is for the
  240. command table. The only solution is to clear the control sequence, as is
  241. done by this function for all characters.
  242.  
  243.  
  244. 10.6       Check Definitions
  245.  
  246.    When a control sequence is written in the editing gadget (section
  247. 9.4.2), or loaded from a file (section 10.3, "Load Definitions"), it is
  248. not checked by the program to be error-proof. This is done by the "Check
  249. Definitions" function, which is also used by the functions which save a
  250. printer driver (section 10.2) or modify the decoding mode (section 11.4).
  251.  
  252.    This function searches all control sequences for errors. It also
  253. verifies that the length of the individual sequences (in the fixed
  254. locations mode) or the sum of all the sequences (if the floating locations
  255. mode is selected) does not exceed the limits for the single sequences or
  256. for all sequences respectively.
  257.  
  258.    After an error is found, the search is interrupted, an error message is
  259. displayed and the control sequence containing the error becomes the
  260. current sequence in the editing gadget (section 9.4.2). The message
  261. indicates the type of the error and the position at which it was found.
  262. Appendix H describes all messages of the Printer Driver Modifier. After
  263. the error message is displayed, the cursor in the editing gadget is
  264. positioned over the character where the error was detected.
  265.  
  266.  
  267. 10.7       Section
  268.  
  269.    As already described in section 9.4.1, the program is either in the
  270. command mode or in the character mode. This means that at any given time
  271. the program can only be used to access the codes of one section of the
  272. printer driver, which can be either the command or the character table.
  273.  
  274.    The following two subsections explain the two commands which can be
  275. used to switch between one section and the other. The command or character
  276. which was last selected before a switch to the other mode is selected
  277. again when the previous mode is reselected. In addition to the shortcuts
  278. assigned to each command, the <j> key can be pressed to switch from one
  279. mode to the other.
  280.  
  281.  
  282. 10.7.1     Commands
  283.  
  284.    This function activates the command mode. The program's window is
  285. arranged so that the fields with all the necessary information regarding
  286. the printer commands are displayed. Section 9.4 ("The PDM: The Main
  287. Window") contains a detailed description of each field and gadget.
  288.  
  289.  
  290. 10.7.2     Characters
  291.  
  292.    This command selects the character mode. The appropriate fields and
  293. gadgets in the program's window are displayed.
  294.  
  295.  
  296. 10.8       Flush Printer Device
  297.  
  298.    As explained in section 4.13.2 ("Write Font Data/Printer"), in some
  299. circumstances a printer driver remains in the computer's RAM even when it
  300. is not used. From there, it can be quickly accessed whenever necessary.
  301. This can reduce the number of disk swaps, but may have one side-effect
  302. when the Printer Driver Modifier is used.
  303.  
  304.    If a printer driver is used by a program, but is then modified with the
  305. Printer Driver Modifier, only the driver stored on the disk is updated. If
  306. a copy of the driver is still held by the operating system in the
  307. computer's RAM, that version will be used the driver is needed the next
  308. time. The modified version is not used until the driver is removed from
  309. the RAM after a memory shortage.
  310.  
  311.    The Amiga operating system uses the driver's internal name to
  312. distinguish between different drivers. If a new driver with the same
  313. internal name as the current driver (most likely one being a variant of
  314. the other) is selected, the Amiga behaves as in the case just explained
  315. (different versions of the same driver).
  316.  
  317.    This command removes the printer driver if it is stored in the RAM, so
  318. that the operating system is forced to load the driver again. This means
  319. that if the driver has been modified, the new version is used. If another
  320. program is currently using the printer device, the driver cannot be
  321. "flushed" immediately. The action is deferred until the application using
  322. the driver does not need it any more. This is signalled by a message, as
  323. described in appendix H.
  324.  
  325.    This function is also executed automatically by the "Save Driver"
  326. function, described in section 10.2.
  327.  
  328.  
  329. 10.9       About
  330.  
  331.    This is a graphical menu which can be displayed using the mouse. A box
  332. appears when this menu item is selected. Some information on the Printer
  333. Driver Modifier version, the copyrights and its authors is displayed.
  334.  
  335.  
  336. 10.10      Quit
  337.  
  338.    This command is used to terminate the work with the Printer Driver
  339. Modifier. A warning requester appears if the current definitions have not
  340. yet been saved. The "Proceed" and "Cancel" gadgets of the requester can be
  341. used to confirm or cancel the command. If the choice is confirmed, the
  342. program terminates. The windows opened by the Printer Driver Modifier are
  343. closed and all memory and resources occupied by the program are freed.
  344.  
  345.    It is good practice to always exit from all programs before switching
  346. the computer off or resetting the system (with the <Commodore> + <Amiga> +
  347. <Ctrl> keys).
  348.  
  349.    This function can also be executed by selecting the gadget to the left
  350. of the title bar on the main window of the Printer Driver Modifier.
  351.  
  352.