home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Programming / Misc / TRSICAT.LZX / CATS_CD2_TRSI / Inc&AD2.1 / includes / intuition / preferences.i < prev    next >
Encoding:
Text File  |  1992-09-11  |  8.7 KB  |  276 lines

  1.     IFND  INTUITION_PREFERENCES_I
  2. INTUITION_PREFERENCES_I    SET  1
  3. **
  4. **    $VER: preferences.i 36.6 (13.03.91)
  5. **    Includes Release 38.56
  6. **
  7. **    Structure definition for old-style preferences
  8. **
  9. **    (C) Copyright 1985-1992 Commodore-Amiga, Inc.
  10. **        All Rights Reserved
  11. **
  12.  
  13.     IFND EXEC_TYPES_I
  14.     INCLUDE "exec/types.i"
  15.     ENDC
  16.  
  17.     IFND    DEVICES_TIMER_I
  18.     INCLUDE    "devices/timer.i"
  19.     ENDC
  20.  
  21. ; ========================================================================
  22. ; === Preferences ========================================================
  23. ; ========================================================================
  24.  
  25. ; these are the definitions for the printer configurations
  26. FILENAME_SIZE EQU    30    ; Filename size
  27.  
  28. POINTERSIZE    EQU    (1+16+1)*2    ; Size of Pointer data buffer
  29.  
  30. ; These defines are for the default font size.    These actually describe the
  31. ; height of the defaults fonts.  The default font type is the topaz
  32. ; font, which is a fixed width font that can be used in either
  33. ; eighty-column or sixty-column mode.  The Preferences structure reflects
  34. ; which is currently selected by the value found in the variable FontSize,
  35. ; which may have either of the values defined below.  These values actually
  36. ; are used to select the height of the default font.  By changing the
  37. ; height, the resolution of the font changes as well.
  38. TOPAZ_EIGHTY    EQU    8
  39. TOPAZ_SIXTY    EQU    9
  40.  
  41. ; ------------------------------------------------------------------------
  42.  STRUCTURE Preferences,0
  43.  
  44.     ; the default font height
  45.     BYTE pf_FontHeight        ; height for system default font
  46.  
  47.     ; constant describing what's hooked up to the port
  48.     BYTE pf_PrinterPort    ; printer port connection
  49.  
  50.     ; the baud rate of the port
  51.     WORD pf_BaudRate        ; baud rate for the serial port
  52.     
  53.     ; various timing rates
  54.     STRUCT pf_KeyRptSpeed,TV_SIZE ; repeat speed for keyboard
  55.     STRUCT pf_KeyRptDelay,TV_SIZE ; Delay before keys repeat
  56.     STRUCT pf_DoubleClick,TV_SIZE ; Interval allowed between clicks
  57.  
  58.     ; Intuition Pointer data
  59.     STRUCT pf_PointerMatrix,POINTERSIZE*2 ; Definition of pointer sprite
  60.     BYTE pf_XOffset        ; X-Offset for active 'bit'
  61.     BYTE pf_YOffset        ; Y-Offset for active 'bit'
  62.     WORD pf_color17        ;********************************
  63.     WORD pf_color18        ; Colours for sprite pointer
  64.     WORD pf_color19        ;********************************
  65.     WORD pf_PointerTicks    ; Sensitivity of the pointer    
  66.  
  67.     ; Workbench Screen colors
  68.     WORD pf_color0        ;********************************
  69.     WORD pf_color1        ;  Standard default colours
  70.     WORD pf_color2        ;   Used in the Workbench
  71.     WORD pf_color3        ;********************************
  72.  
  73.     ; positioning data for the Intuition View
  74.     BYTE pf_ViewXOffset        ; Offset for top lefthand corner
  75.     BYTE pf_ViewYOffset        ; X and Y dimensions
  76.     WORD pf_ViewInitX        ; View initial offsets at startup
  77.     WORD pf_ViewInitY        ; View initial offsets at startup
  78.  
  79.     BOOL EnableCLI        ; CLI availability switch
  80.  
  81.     ; printer configurations
  82.     WORD pf_PrinterType        ; printer type
  83.     STRUCT pf_PrinterFilename,FILENAME_SIZE ; file for printer
  84.  
  85.     ; print format and quality configurations
  86.     WORD pf_PrintPitch         ; print pitch
  87.     WORD pf_PrintQuality    ; print quality
  88.     WORD pf_PrintSpacing    ; number of lines per inch
  89.     WORD pf_PrintLeftMargin    ; left margin in characters
  90.     WORD pf_PrintRightMargin    ; right margin in characters
  91.     WORD pf_PrintImage        ; positive or negative
  92.     WORD pf_PrintAspect        ; horizontal or vertical
  93.     WORD pf_PrintShade        ; b&w, half-tone, or color
  94.     WORD pf_PrintThreshold    ; darkness ctrl for b/w dumps
  95.  
  96.  
  97.     ; print paper description
  98.     WORD pf_PaperSize        ; paper size
  99.     WORD pf_PaperLength        ; paper length in lines
  100.     WORD pf_PaperType        ; continuous or single sheet
  101.  
  102.     ; Serial device settings: These are six nibble-fields in three bytes
  103.     ; (these look a little strange so the defaults will map out to zero)
  104.     BYTE pf_SerRWBits           ; upper nibble = (8-number of read bits)
  105.                                 ; lower nibble = (8-number of write bits)
  106.     BYTE pf_SerStopBuf          ; upper nibble = (number of stop bits - 1)
  107.                                 ; lower nibble = (table value for BufSize)
  108.     BYTE pf_SerParShk           ; upper nibble = (value for Parity setting)
  109.                                 ; lower nibble = (value for Handshake mode)
  110.  
  111.     BYTE pf_LaceWB        ; if workbench is to be interlaced
  112.  
  113.     STRUCT pf_WorkName,FILENAME_SIZE ; temp file for printer
  114.  
  115.     BYTE    pf_RowSizeChange    ; 
  116.     BYTE    pf_ColumnSizeChange ;
  117.  
  118.     UWORD   pf_PrintFlags    ; user preference flags
  119.     WORD    pf_PrintMaxWidth    ; max width of printed picture in 10ths/inch
  120.     UWORD   pf_PrintMaxHeight   ; max height of printed picture in 10ths/inch 
  121.     UBYTE   pf_PrintDensity     ; print density
  122.     UBYTE   pf_PrintXOffset     ; offset of printed picture in 10ths/inch
  123.  
  124.     UWORD   pf_wb_Width        ; override default workbench width
  125.     UWORD   pf_wb_Height    ; override default workbench height
  126.     UBYTE   pf_wb_Depth        ; override default workbench depth
  127.  
  128.     UBYTE   pf_ext_size        ; extension information -- do not touch!
  129.                 ; extension size in blocks of 64 bytes
  130.  
  131.     LABEL pf_SIZEOF
  132.  
  133.  
  134. ; === Preferences definitions ===========================================
  135.  
  136. ; Workbench Interlace (use one bit)
  137. LACEWB        EQU    $01
  138.  
  139. ; PrinterPort
  140. PARALLEL_PRINTER EQU    $00
  141. SERIAL_PRINTER    EQU    $01
  142.  
  143. ; BaudRate
  144. BAUD_110    EQU    $00
  145. BAUD_300    EQU    $01
  146. BAUD_1200    EQU    $02
  147. BAUD_2400    EQU    $03
  148. BAUD_4800    EQU    $04
  149. BAUD_9600    EQU    $05
  150. BAUD_19200    EQU    $06
  151. BAUD_MIDI    EQU    $07
  152.  
  153. ; PaperType
  154. FANFOLD     EQU    $00
  155. SINGLE        EQU    $80
  156.  
  157. ; PrintPitch
  158. PICA        EQU    $000
  159. ELITE        EQU    $400
  160. FINE        EQU    $800
  161.  
  162. ; PrintQuality
  163. DRAFT        EQU    $000
  164. LETTER        EQU    $100
  165.  
  166. ; PrintSpacing
  167. SIX_LPI        EQU    $000
  168. EIGHT_LPI    EQU    $200
  169.  
  170. ; Print Image
  171. IMAGE_POSITIVE    EQU    $00
  172. IMAGE_NEGATIVE    EQU    $01
  173.  
  174. ; PrintAspect
  175. ASPECT_HORIZ    EQU    $00
  176. ASPECT_VERT    EQU    $01
  177.  
  178. ; PrintShade
  179. SHADE_BW    EQU    $00
  180. SHADE_GREYSCALE    EQU    $01
  181. SHADE_COLOR    EQU    $02
  182.  
  183. ; PaperSize
  184. US_LETTER    EQU    $00
  185. US_LEGAL    EQU    $10
  186. N_TRACTOR    EQU    $20
  187. W_TRACTOR    EQU    $30
  188. CUSTOM        EQU    $40
  189.  
  190. ; New PaperSizes for V36:
  191. EURO_A0         EQU    $50            ; European size A0: 841 x 1189
  192. EURO_A1         EQU    $60            ; European size A1: 594 x 841
  193. EURO_A2         EQU    $70            ; European size A2: 420 x 594
  194. EURO_A3         EQU    $80            ; European size A3: 297 x 420
  195. EURO_A4         EQU    $90            ; European size A4: 210 x 297
  196. EURO_A5         EQU    $A0            ; European size A5: 148 x 210
  197. EURO_A6         EQU    $B0            ; European size A6: 105 x 148
  198. EURO_A7         EQU    $C0            ; European size A7: 74 x 105
  199. EURO_A8         EQU    $D0            ; European size A8: 52 x 74
  200.  
  201. ; PrinterType
  202. CUSTOM_NAME    EQU    $00
  203. ALPHA_P_101    EQU    $01
  204. BROTHER_15XL    EQU    $02
  205. CBM_MPS1000    EQU    $03
  206. DIAB_630    EQU    $04
  207. DIAB_ADV_D25    EQU    $05
  208. DIAB_C_150    EQU    $06
  209. EPSON        EQU    $07
  210. EPSON_JX_80    EQU    $08
  211. OKIMATE_20    EQU    $09
  212. QUME_LP_20    EQU    $0A
  213. ; new printer entries, 3 October 1985
  214. HP_LASERJET    EQU    $0B
  215. HP_LASERJET_PLUS EQU    $0C
  216.  
  217.  
  218. ; Serial Input Buffer Sizes
  219. SBUF_512        EQU     $00
  220. SBUF_1024       EQU     $01
  221. SBUF_2048       EQU     $02
  222. SBUF_4096       EQU     $03
  223. SBUF_8000       EQU     $04
  224. SBUF_16000      EQU     $05
  225.  
  226. ; Serial Bit Masks
  227. SREAD_BITS    EQU    $F0    ; pf_SerRWBits
  228. SWRITE_BITS    EQU    $0F
  229.  
  230. SSTOP_BITS    EQU    $F0    ; pf_SerStopBuf
  231. SBUFSIZE_BITS    EQU    $0F
  232.  
  233. SPARITY_BITS    EQU    $F0    ; pf_SerParShk
  234. SHSHAKE_BITS    EQU    $0F
  235.  
  236. ; Serial Parity (high nibble, but here shifted right, as by C-macro SPARNUM)
  237. SPARITY_NONE    EQU     $00
  238. SPARITY_EVEN    EQU     $01
  239. SPARITY_ODD     EQU     $02
  240. ; New parity definitions for V36:
  241. SPARITY_MARK    EQU    $03
  242. SPARITY_SPACE    EQU    $04
  243.  
  244. ; Serial Handshake Mode (low nibble, mask by SHSHAKE_BITS)
  245. SHSHAKE_XON     EQU     $00
  246. SHSHAKE_RTS     EQU     $01
  247. SHSHAKE_NONE    EQU     $02
  248.  
  249. ; new defines for PrintFlags
  250. CORRECT_RED         EQU $0001    ; color correct red shades
  251. CORRECT_GREEN       EQU $0002    ; color correct green shades 
  252. CORRECT_BLUE        EQU $0004    ; color correct blue shades
  253.  
  254. CENTER_IMAGE        EQU $0008      ; center image on paper
  255.  
  256. IGNORE_DIMENSIONS   EQU $0000    ; ignore max width/height settings
  257. BOUNDED_DIMENSIONS  EQU $0010    ; use max width/height as boundaries
  258. ABSOLUTE_DIMENSIONS EQU $0020    ; use max width/height as absolutes
  259. PIXEL_DIMENSIONS    EQU $0040    ; use max width/height as prt pixels
  260. MULTIPLY_DIMENSIONS EQU $0080    ; use max width/height as multipliers
  261.  
  262. INTEGER_SCALING     EQU $0100    ; force integer scaling
  263.  
  264. ORDERED_DITHERING   EQU $0000    ; ordered dithering
  265. HALFTONE_DITHERING  EQU $0200    ; halftone dithering
  266. FLOYD_DITHERING     EQU $0400    ; floyd-steinberg dithering
  267.  
  268. ANTI_ALIAS          EQU $0800    ; anti-alias image
  269. GREY_SCALE2         EQU $1000    ; for use with hi-res monitor
  270.  
  271. CORRECT_RGB_MASK    EQU (CORRECT_RED+CORRECT_GREEN+CORRECT_BLUE)
  272. DIMENSIONS_MASK     EQU (BOUNDED_DIMENSIONS+ABSOLUTE_DIMENSIONS+PIXEL_DIMENSIONS+MULTIPLY_DIMENSIONS)
  273. DITHERING_MASK      EQU (HALFTONE_DITHERING+FLOYD_DITHERING)
  274.  
  275.     ENDC
  276.