/[projet1]/public/atari/tools/MOULINEX/VDILIB.S
Defence Force logotype

Contents of /public/atari/tools/MOULINEX/VDILIB.S

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1389 - (show annotations)
Tue Mar 7 19:16:33 2017 UTC (2 years, 6 months ago) by dbug
File size: 6055 byte(s)
Added Moulinex, old tool to convert MOD files to LOW format and vice versa
1
2 * VDI Library Copyright (C) HiSoft 1988
3
4 * 31.5.88 vqt_extent fixed
5
6 * macro to jump to a given VDI routine
7 govdi macro vdi_number
8 IFNE (\1)<128
9 moveq #\1,d0
10 ELSEIF
11 move.w #\1,d0
12 ENDC
13 bra CALL_VDI
14 endm
15
16 DEFV macro name
17 MODULE \1
18 XREF CALL_VDI,LOW_VDI
19 XREF contrl,contrl1,contrl3,contrl6
20 XREF intin,ptsin,intout,ptsout
21 XREF vdi_params,current_handle
22 endm
23
24 EXPORT macro name
25 \1 XDEF \1
26 endm
27
28 docont macro contrl1,contrl3
29 IFEQ \1
30 clr.w contrl1
31 ELSEIF
32 move.w #\1,contrl1
33 ENDC
34 IFEQ \2
35 clr.w contrl3
36 ELSEIF
37 move.w #\2,contrl3
38 ENDC
39 endm
40
41 DEFV Workstations
42
43 EXPORT v_opnwk
44 moveq #1,d0
45 v_opall docont 0,11
46 bsr LOW_VDI
47 move.w contrl6,current_handle
48 rts
49
50 EXPORT v_clswk
51 docont 0,0
52 govdi 2
53
54 EXPORT v_opnvwk
55 moveq #100,d0
56 move.w current_handle,contrl6
57 bra.s v_opall
58
59 EXPORT v_clsvwk
60 docont 0,0
61 govdi 101
62
63 EXPORT v_clrwk
64 moveq #3,d0
65 v_zeroz docont 0,0
66 bra CALL_VDI
67
68 EXPORT v_updwk
69 moveq #4,d0
70 bra.s v_zeroz
71
72 EXPORT vst_load_fonts
73 moveq #119,d0
74 vfont_all
75 docont 0,1
76 clr.w intin
77 bsr CALL_VDI
78 move.w intout,d0
79 rts
80
81 EXPORT vst_unload_fonts
82 moveq #120,d0
83 bra.s vfont_all
84
85 EXPORT vs_clip
86 docont 2,1
87 govdi 129
88
89 DEFV OutputFunctions
90
91 EXPORT v_pline
92 moveq #6,d0
93 v_pall clr.w contrl3
94 bra CALL_VDI
95
96 EXPORT v_pmarker
97 moveq #7,d0
98 bra.s v_pall
99
100 EXPORT v_fillarea
101 moveq #9,d0
102 bra.s v_pall
103
104 EXPORT v_gtext
105 moveq #0,d0
106 moveq #0,d1
107 lea intin,a1
108 .copy move.b (a0)+,d1 convert C string into words
109 beq.s .end
110 move.w d1,(a1)+
111 addq.b #1,d0
112 bpl.s .copy
113 .end move.w d0,contrl3
114 move.w #1,contrl1
115 govdi 8
116
117 EXPORT v_contourfill
118 docont 1,1
119 govdi 103
120
121 EXPORT vr_recfl
122 docont 2,0
123 govdi 114
124
125 EXPORT v_pieslice
126 moveq #3,d0
127 bra.s gdp_arcpie
128
129 EXPORT v_arc
130 moveq #2,d0
131 gdp_arcpie
132 docont 4,2
133 clr.l ptsin+4
134 clr.l ptsin+8
135 clr.w ptsin+14
136 bra gdp_all
137
138 EXPORT v_bar
139 docont 2,0
140 moveq #1,d0
141 bra.s gdp_all
142
143 EXPORT v_circle
144 docont 3,0
145 moveq #4,d0
146 clr.l ptsin+4
147 clr.w ptsin+10
148 bra.s gdp_all
149
150 EXPORT v_ellarc
151 docont 2,2
152 moveq #6,d0
153 bra.s gdp_all
154
155 EXPORT v_ellpie
156 docont 2,2
157 moveq #7,d0
158 bra.s gdp_all
159
160 EXPORT v_ellipse
161 docont 2,0
162 moveq #5,d0
163 bra.s gdp_all
164
165 EXPORT v_rbox
166 moveq #8,d0
167 gdp_box docont 2,0
168 gdp_all move.w d0,contrl+10
169 govdi 11
170
171 EXPORT v_rfbox
172 moveq #8,d0
173 bra.s gdp_box
174
175 EXPORT v_justified
176 moveq #2,d0
177 moveq #0,d1
178 lea intin+4,a1
179 .copy move.b (a0)+,d1 convert C string into words
180 beq.s .end
181 move.w d1,(a1)+
182 addq.b #1,d0
183 bpl.s .copy
184 .end move.w d0,contrl3
185 move.w #2,contrl1
186 moveq #10,d0
187 bra.s gdp_all
188
189
190 DEFV AttributeFunctions
191
192 EXPORT vswr_mode
193 docont 0,1
194 govdi 32
195
196 EXPORT vs_color
197 docont 0,4
198 govdi 14
199
200 EXPORT vsl_type
201 docont 0,1
202 govdi 15
203
204 EXPORT vsl_udsty
205 docont 0,1
206 govdi 113
207
208 EXPORT vsl_width
209 docont 1,0
210 clr.w ptsin+2
211 govdi 16
212
213 EXPORT vsl_color
214 docont 0,1
215 govdi 17
216
217 EXPORT vsl_ends
218 docont 0,2
219 govdi 108
220
221 EXPORT vsm_type
222 docont 0,1
223 govdi 18
224
225 EXPORT vsm_height
226 docont 1,0
227 clr.w ptsin
228 govdi 19
229
230 EXPORT vsm_color
231 docont 0,1
232 govdi 20
233
234 EXPORT vst_height
235 docont 1,0
236 clr.w ptsin
237 govdi 12
238
239 EXPORT vst_point
240 docont 0,1
241 govdi 107
242
243 EXPORT vst_rotation
244 docont 0,1
245 govdi 13
246
247 EXPORT vst_font
248 docont 0,1
249 govdi 21
250
251 EXPORT vst_color
252 docont 0,1
253 govdi 22
254
255 EXPORT vst_effects
256 docont 0,1
257 govdi 106
258
259 EXPORT vst_alignment
260 docont 0,2
261 govdi 39
262
263 EXPORT vsf_interior
264 docont 0,1
265 govdi 23
266
267 EXPORT vsf_style
268 docont 0,1
269 govdi 24
270
271 EXPORT vsf_color
272 docont 0,1
273 govdi 25
274
275 EXPORT vsf_perimeter
276 docont 0,1
277 govdi 104
278
279 EXPORT vsf_updat
280 clr.w contrl1
281 govdi 112
282
283 DEFV RastorOps
284
285 EXPORT vro_cpyfm
286 docont 4,1
287 govdi 109
288
289 EXPORT vrt_cpyfm
290 docont 4,3
291 govdi 121
292
293 EXPORT vr_trnfm
294 docont 0,0
295 govdi 110
296
297 EXPORT v_get_pixel
298 docont 1,0
299 govdi 105
300
301
302 DEFV InputFunctions
303
304 EXPORT vex_timv
305 docont 0,0
306 govdi 118
307
308 EXPORT v_show_c
309 docont 0,1
310 govdi 122
311
312 EXPORT v_hide_c
313 docont 0,0
314 govdi 123
315
316 EXPORT vq_mouse
317 docont 0,0
318 govdi 124
319
320 EXPORT vex_butv
321 docont 0,0
322 govdi 125
323
324 EXPORT vex_motv
325 docont 0,0
326 govdi 126
327
328 EXPORT vex_curv
329 docont 0,0
330 govdi 127
331
332 EXPORT vq_key_s
333 docont 0,0
334 govdi 128
335
336 DEFV InquireFunctions
337
338 EXPORT vq_extnd
339 docont 0,1
340 govdi 102
341
342 EXPORT vq_color
343 docont 0,2
344 govdi 26
345
346 EXPORT vql_attributes
347 docont 0,0
348 govdi 35
349
350 EXPORT vqm_attributes
351 docont 0,0
352 govdi 36
353
354 EXPORT vqf_attributes
355 docont 0,0
356 govdi 37
357
358 EXPORT vqt_attributes
359 docont 0,0
360 govdi 38
361
362 EXPORT vqt_extent
363 moveq #0,d0
364 moveq #0,d1
365 lea intin,a1
366 .copy move.b (a0)+,d1 convert C string into words
367 beq.s .end
368 move.w d1,(a1)+
369 addq.b #1,d0
370 bpl.s .copy
371 .end move.w d0,contrl3
372 clr.w contrl1
373 govdi 116
374
375 EXPORT vqt_width
376 docont 0,1
377 govdi 117
378
379 EXPORT vqt_name
380 docont 0,1
381 govdi 130
382
383 EXPORT vqt_fontinfo
384 docont 0,0
385 govdi 131
386
387
388 * the actual calling of the VDI
389 MODULE LowLevelVDI
390 XDEF CALL_VDI,LOW_VDI
391 XDEF contrl,contrl1,contrl3,contrl6
392 XDEF intin,intout,ptsin,ptsout
393 XDEF current_handle,vdi_params
394
395 * call a VDI routine
396 * in: d0.w=VDI function number
397 * out none
398 * uses d0-d2/a0-a2
399 * uses the current handle
400 CALL_VDI
401 move.w current_handle,contrl6
402 LOW_VDI move.w d0,contrl store the op code
403 move.l #vdi_params,d1
404 move.w #115,d0 function number
405 trap #2
406 rts
407
408 * this is a table of pointers to all the VDI arrays
409 vdi_params dc.l contrl,intin,ptsin,intout,ptsout
410
411 * these don't need initialising so can go in the BSS section
412
413 current_handle ds.w 1 used by all VDI calls
414
415 contrl ds.w 1
416 contrl1 ds.w 1
417 contrl2 ds.w 1
418 contrl3 ds.w 1
419 contrl4 ds.w 1
420 contrl5 ds.w 1
421 contrl6 ds.w 1
422 contrl7 ds.w 1
423 contrl8 ds.w 1
424 contrl9 ds.w 1
425 contrl10 ds.w 1
426 contrl11 ds.w 1
427
428 intin ds.w 128 min 30
429 intout ds.w 128 min 45
430 ptsin ds.w 128 min 30
431 ptsout ds.w 128 min 12
432
433
434 *********** END OF VDI *****************

  ViewVC Help
Powered by ViewVC 1.1.26