home *** CD-ROM | disk | FTP | other *** search
/ Vectronix 2 / VECTRONIX2.iso / FILES_01 / LATTIC_3.LZH / HEADERS / VDI.H < prev   
C/C++ Source or Header  |  1990-02-12  |  7KB  |  251 lines

  1. /*
  2.  * vdi.h - vdi interface header file
  3.  *
  4.  * Started 16/9/89 Alex G. Kiernan
  5.  *
  6.  * Copyright (c) 1989 HiSoft
  7.  */
  8.  
  9. #ifndef _VDI_H
  10. #define _VDI_H
  11.  
  12. __regargs int _VDIif(unsigned long,unsigned long);
  13.  
  14. extern short *_VDIpb[5];
  15.  
  16. extern short _VDIcontrl[];    /* default 11 */
  17. extern short _VDIintin[];    /* default 128 */
  18. extern short _VDIintout[];    /* default 128 */
  19. extern short _VDIptsin[];    /* default 8 */
  20. extern short _VDIptsout[];    /* default 10 */
  21.  
  22. /* Control library definitions */
  23. void v_opnwk(short *,short *,short *);
  24. void v_clswk(int);
  25. void v_opnvwk(short *,short *,short *);
  26. void v_clsvwk(int);
  27. void v_clrwk(int);
  28. void v_updwk(int);
  29. int vst_load_fonts(int,int);
  30. void vst_unload_fonts(int,int);
  31. void vs_clip(int,int,short *);
  32.  
  33. /* Output library definitions */
  34. void v_pline(int,int,short *);
  35. void v_pmarker(int,int,short *);
  36. void v_gtext(int,int,int,const char *);
  37. void v_fillarea(int,int,short *);
  38. void v_cellarray(int,short *,int,int,int,int,short *);
  39. void v_contourfill(int,int,int,int);
  40. void vr_recfl(int,short *);
  41. void v_bar(int,short *);
  42. void v_arc(int,int,int,int,int,int);
  43. void v_pieslice(int,int,int,int,int,int);
  44. void v_circle(int,int,int,int);
  45. void v_ellarc(int,int,int,int,int,int,int);
  46. void v_ellpie(int,int,int,int,int,int,int);
  47. void v_ellipse(int,int,int,int,int);
  48. void v_rbox(int,short *);
  49. void v_rfbox(int,short *);
  50. void v_justified(int,int,int,const char *,int,int,int);
  51.  
  52. /* Attribute library definitions */
  53. #define MD_REPLACE    1
  54. #define MD_TRANS    2
  55. #define MD_XOR    3
  56. #define MD_ERASE    4
  57.  
  58. #define FIS_HOLLOW    0
  59. #define HOLLOW    FIS_HOLLOW
  60. #define FIS_SOLID    1
  61. #define SOLID    FIS_SOLID
  62. #define FIS_PATTERN    2
  63. #define PATTERN    FIS_PATTERN
  64. #define FIS_HATCH    3
  65. #define HATCH    FIS_HATCH
  66. #define FIS_USER    4
  67. #define UDFILLSTYLE    FIS_USER
  68.  
  69. #define ALL_WHITE    0    /* bit blt rules */
  70. #define S_AND_D    1
  71. #define S_AND_NOTD    2
  72. #define S_ONLY    3
  73. #define NOTS_AND_D    4
  74. #define D_ONLY    5
  75. #define S_XOR_D    6
  76. #define S_OR_D    7
  77. #define NOT_SORD    8
  78. #define NOT_SXORD    9
  79. #define NOT_D    10
  80. #define S_OR_NOTD    11
  81. #define NOT_S    12
  82. #define NOTS_OR_D    13
  83. #define NOT_SANDD    14
  84. #define ALL_BLACK    15
  85.  
  86. /*#define SOLID    1*/    /* polyline line styles */
  87. #define LDASHED    2
  88. #define LONGDASH    LDASHED
  89. #define DOTTED    3
  90. #define DOT    DOTTED
  91. #define DASHDOT    4
  92. #define DASHED    5
  93. #define DASH    DASHED
  94. #define DASHDOTDOT    6
  95. #define DASH2DOT    DASHDOTDOT
  96. #define USERLINE    7
  97.  
  98. #define SQUARE    0
  99. #define SQUARED    SQUARE
  100. #define ARROWED    1
  101. #define ROUND    2
  102. #define ROUNDED    ROUND
  103.  
  104. #define DOTS    3    /* fill patterns */
  105. #define GRID    6
  106. #define BRICKS    9
  107. #define WEAVE    16
  108.  
  109. #define THICKENED    0x0001    /* text effects */
  110. #define SHADED    0x0002
  111. #define SKEWED    0x0004
  112. #define UNDERLINED    0x0008
  113. #define OUTLINE    0x0010
  114. #define SHADOW    0x0020
  115.  
  116. int vswr_mode(int,int);
  117. void vs_color(int,int,short *);
  118. int vsl_type(int,int);
  119. void vsl_udsty(int,int);
  120. int vsl_width(int,int);
  121. int vsl_color(int,int);
  122. void vsl_ends(int,int,int);
  123. int vsm_type(int,int);
  124. int vsm_height(int,int);
  125. int vsm_color(int,int);
  126. void vst_height(int,int,short *,short *,short *,short *);
  127. int vst_point(int,int,short *,short *,short *,short *);
  128. int vst_rotation(int,int);
  129. int vst_font(int,int);
  130. int vst_color(int,int);
  131. int vst_effects(int,int);
  132. void vst_alignment(int,int,int,short *,short *);
  133. int vsf_interior(int,int);
  134. int vsf_style(int,int);
  135. int vsf_color(int,int);
  136. int vsf_perimeter(int,int);
  137. void vsf_udpat(int,short *,int);
  138.  
  139. /* Raster library definitions */
  140. typedef struct fdbstr
  141. {
  142.     void *fd_addr;
  143.     short fd_w;
  144.     short fd_h;
  145.     short fd_wdwidth;
  146.     short fd_stand;
  147.     short fd_nplanes;
  148.     short fd_r1;
  149.     short fd_r2;
  150.     short fd_r3;
  151. } MFDB, FDB;
  152.  
  153. void vro_cpyfm(int,int,short *,MFDB *,MFDB *);
  154. void vrt_cpyfm(int,int,short *,MFDB *,MFDB *,short *);
  155. void vr_trnfm(int,MFDB *,MFDB *);
  156. void v_get_pixel(int,int,int,short *,short *);
  157.  
  158. /* Input library definitions */
  159. typedef struct mfstr
  160. {
  161.     short mf_xhot;
  162.     short mf_yhot;
  163.     short mf_nplanes;
  164.     short mf_fg;
  165.     short mf_bg;
  166.     short mf_mask[16];
  167.     short mf_data[16];
  168. } MFORM;
  169.  
  170. int vsin_mode(int,int,int);
  171. void vrq_locator(int,int,int,short *,short *,short *);
  172. int vsm_locator(int,int,int,short *,short *,short *);
  173. void vrq_valuator(int,int,short *,short *);
  174. void vsm_valuator(int,int,short *,short *,short *);
  175. void vrq_choice(int,int,short *);
  176. int vsm_choice(int,short *);
  177. void vrq_string(int,int,int,short *,char *);
  178. int vsm_string(int,int,int,short *,char *);
  179. void vsc_form(int,MFORM *);
  180. void vex_timv(int,int (*)(void),int (**)(void),short *);
  181. void v_show_c(int,int);
  182. void v_hide_c(int);
  183. void vq_mouse(int,short *,short *,short *);
  184. void vex_butv(int,int __regargs (*)(short),int __regargs (**)(short));
  185. void vex_motv(int,int __regargs (*)(short,short),int __regargs (**)(short,short));
  186. void vex_curv(int,int __regargs (*)(short,short),int __regargs (**)(short,short));
  187. void vq_key_s(int,short *);
  188.  
  189. /* Inquire library definitions */
  190. void vq_extnd(int,int,short *);
  191. void vq_color(int,int,int,short *);
  192. void vql_attributes(int,short *);
  193. void vqm_attributes(int,short *);
  194. void vqf_attributes(int,short *);
  195. void vqt_attributes(int,short *);
  196. void vqt_extent(int,const char *,short *);
  197. int vqt_width(int,int,short *,short *,short *);
  198. int vqt_name(int,int,char *);
  199. void vq_cellarray(int,short *,int,int,short *,short *,short *,short *);
  200. void vqin_mode(int,int,short *);
  201. void vqt_fontinfo(int,short *,short *,short *,short *,short *);
  202.  
  203. /* Escape library definitions */
  204. void vq_chcells(int,short *,short *);
  205. void v_exit_cur(int);
  206. void v_enter_cur(int);
  207. void v_curup(int);
  208. void v_curdown(int);
  209. void v_curright(int);
  210. void v_curleft(int);
  211. void v_curhome(int);
  212. void v_eeos(int);
  213. void v_eeol(int);
  214. void vs_curaddress(int,int,int);
  215. void v_curtext(int,const char *);
  216. void v_rvon(int);
  217. void v_rvoff(int);
  218. void vq_curaddress(int,short *,short *);
  219. int vq_tabstatus(int);
  220. void v_hardcopy(int);
  221. void v_dspcur(int,int,int);
  222. void v_rmcur(int);
  223. void v_form_adv(int);
  224. void v_output_window(int,short *);
  225. void v_clear_disp_list(int);
  226. void v_bit_image(int,const char *,int,int,int,int,int,short *);
  227. void vq_scan(int,short *,short *,short *,short *,short *);
  228. void v_alpha_text(int,const char *);
  229. int vs_palette(int,int);
  230. void vqp_films(int,char *);
  231. void vqp_state(int,short *,short *,short *,short *,short *,short *);
  232. void vsp_state(int,int,int,int,int,int,short *);
  233. void vsp_save(int);
  234. void vsp_message(int);
  235. int vqp_error(int);
  236. void v_meta_extents(int,int,int,int,int);
  237. void v_write_meta(int,int,short *,int,short *);
  238. void vm_filename(int,const char *);
  239.  
  240. /* Metafile sub-opcodes for GEM output */
  241. void vm_pagesize(int,int,int);
  242. void vm_coords(int,int,int,int,int);
  243.  
  244. /* Atari specific escape library defintions */
  245. void v_offset(int,int);
  246. void v_font(int,void *);
  247.  
  248. /* GDOS detection function */
  249. int vq_gdos(void);
  250. #endif
  251.