home *** CD-ROM | disk | FTP | other *** search
/ Dave Lowe: Devpac ST / Lowe_DevpacST.img / GEMMACRO.S < prev    next >
Encoding:
Text File  |  1988-09-11  |  14.2 KB  |  926 lines

  1.  
  2. * Macro library to call AES & VDI
  3. * Copyright (c) HiSoft 1988
  4.  
  5. * 31.5.88    fixed appl_read,appl_write,graf_slidebox
  6. * 2.6.88    fixed evnt_multi
  7. * 11.9.88    v_contour_fill corrected (to v_contourfill)
  8.  
  9. ***********AES Macros******************
  10.  
  11. * macro to call a given AES routine
  12. aes    macro    aes_number
  13.     XREF    CALL_AES,int_in,addr_in,int_out,addr_out,current_handle
  14.     moveq    #\1,d0
  15.     bsr    CALL_AES
  16.     endm
  17. *    may need to change BSR CALL_AES to JSR for large programs
  18.  
  19. appl_init    macro
  20.     aes    10
  21.     endm
  22.  
  23. appl_read    macro    id,length,buff
  24.     move.w    \1,int_in
  25.     move.w    \2,int_in+2
  26.     move.l    \3,addr_in
  27.     aes    11
  28.     endm
  29.  
  30. appl_write    macro    id,length,buffer
  31.     move.w    \1,int_in
  32.     move.w    \2,int_in+2
  33.     move.l    \3,addr_in
  34.     aes    12
  35.     endm
  36.  
  37. appl_find    macro    name
  38.     move.l    \1,addr_in
  39.     aes    13
  40.     endm
  41.  
  42. appl_tplay    macro    mem,num,scale
  43.     move.l    \1,addr_in
  44.     move.w    \2,int_in
  45.     move.w    \3,int_in+2
  46.     aes    14
  47.     endm
  48.  
  49. appl_trecord    macro    mem,count
  50.     move.l    \1,addr_in
  51.     move.w    \2,int_in
  52.     aes    15
  53.     endm
  54.  
  55. appl_exit    macro
  56.     aes    19
  57.     endm
  58.  
  59. evnt_keybd    macro
  60.     aes    20
  61.     endm
  62.  
  63. evnt_button    macro    clicks,mask,state
  64.     move.w    \1,int_in
  65.     move.w    \2,int_in+2
  66.     move.w    \3,int_in+4
  67.     aes    21
  68.     endm
  69.  
  70. evnt_mouse    macro    flags,x,y,w,h
  71.     move.w    \1,int_in
  72.     move.w    \2,int_in+2
  73.     move.w    \3,int_in+4
  74.     move.w    \4,int_in+6
  75.     move.w    \5,int_in+8
  76.     aes    22
  77.     endm
  78.  
  79. evnt_mesag    macro    buffer
  80.     move.l    \1,addr_in
  81.     aes    23
  82.     endm
  83.  
  84. evnt_timer    macro    longcount
  85.     move.l    \1,d0
  86.     swap    d0
  87.     move.l    d0,int_in
  88.     aes    24
  89.     endm
  90.  
  91. evnt_multi    macro    flags[,lots]
  92.     move.w    \1,int_in
  93.     IFNC    '\2',''
  94.     move.w    \2,int_in+2
  95.     ENDC
  96.     IFNC    '\3',''
  97.     move.w    \3,int_in+4
  98.     ENDC
  99.     IFNC    '\4',''
  100.     move.w    \4,int_in+6
  101.     ENDC
  102.     IFNC    '\5',''
  103.     move.w    \5,int_in+8
  104.     ENDC
  105.     IFNC    '\6',''
  106.     move.w    \6,int_in+10
  107.     ENDC
  108.     IFNC    '\7',''
  109.     move.w    \7,int_in+12
  110.     ENDC
  111.     IFNC    '\8',''
  112.     move.w    \8,int_in+14
  113.     ENDC
  114.     IFNC    '\9',''
  115.     move.w    \9,int_in+16
  116.     ENDC
  117.     IFNC    '\A',''
  118.     move.w    \A,int_in+18
  119.     ENDC
  120.     IFNC    '\B',''
  121.     move.w    \B,int_in+20
  122.     ENDC
  123.     IFNC    '\C',''
  124.     move.w    \C,int_in+22
  125.     ENDC
  126.     IFNC    '\D',''
  127.     move.w    \D,int_in+24
  128.     ENDC
  129.     IFNC    '\E',''
  130.     move.w    \E,int_in+26
  131.     ENDC
  132.     IFNC    '\F',''
  133.     move.l    \F,addr_in
  134.     ENDC
  135.     IFNC    '\G',''
  136.     move.l    \G,d0
  137.     swap    d0
  138.     move.l    d0,int_in+28
  139.     ENDC
  140.     aes    25
  141.     endm
  142.  
  143. evnt_dclick    macro    new,getset
  144.     move.w    \1,int_in
  145.     move.w    \2,int_in+2
  146.     aes    26
  147.     endm
  148.  
  149. menu_bar    macro    tree,show
  150.     move.l    \1,addr_in
  151.     move.w    \2,int_in
  152.     aes    30
  153.     endm
  154.  
  155. menu_icheck    macro    tree,item,check
  156.     move.l    \1,addr_in
  157.     move.w    \2,int_in
  158.     move.w    \3,int_in+2
  159.     aes    31
  160.     endm
  161.  
  162. menu_ienable    macro    tree,item,enable
  163.     move.l    \1,addr_in
  164.     move.w    \2,int_in
  165.     move.w    \3,int_in+2
  166.     aes    32
  167.     endm
  168.  
  169. menu_tnormal    macro    tree,title,normal
  170.     move.l    \1,addr_in
  171.     move.w    \2,int_in
  172.     move.w    \3,int_in+2
  173.     aes    33
  174.     endm
  175.  
  176. menu_text    macro    tree,item,text
  177.     move.l    \1,addr_in
  178.     move.w    \2,int_in
  179.     move.l    \3,addr_in+4
  180.     aes    34
  181.     endm
  182.  
  183. menu_register    macro    id,string
  184.     move.w    \1,int_in
  185.     move.l    \2,addr_in
  186.     aes    35
  187.     endm
  188.  
  189. objc_add    macro    tree,parent,child
  190.     move.l    \1,addr_in
  191.     move.w    \2,int_in
  192.     move.w    \3,int_in+2
  193.     aes    40
  194.     endm
  195.  
  196. objc_delete    macro    tree,object
  197.     move.l    \1,addr_in
  198.     move.w    \2,int_in
  199.     aes    41
  200.     endm
  201.  
  202. objc_draw    macro    tree,startob,depth,x,y,w,h
  203.     move.l    \1,addr_in
  204.     move.w    \2,int_in
  205.     move.w    \3,int_in+2
  206.     move.w    \4,int_in+4
  207.     move.w    \5,int_in+6
  208.     move.w    \6,int_in+8
  209.     move.w    \7,int_in+10
  210.     aes    42
  211.     endm
  212.  
  213. objc_find    macro    tree,startob,depth,x,y
  214.     move.l    \1,addr_in
  215.     move.w    \2,int_in
  216.     move.w    \3,int_in+2
  217.     move.w    \4,int_in+4
  218.     move.w    \5,int_in+6
  219.     aes    43
  220.     endm
  221.  
  222. objc_offset    macro    tree,object
  223.     move.l    \1,addr_in
  224.     move.w    \2,int_in
  225.     aes    44
  226.     endm
  227.  
  228. objc_order    macro    tree,object,newpos
  229.     move.l    \1,addr_in
  230.     move.w    \2,int_in
  231.     move.w    \3,int_in+2
  232.     aes    45
  233.     endm
  234.  
  235. objc_edit    macro    tree,object,char,idx,kind
  236.     move.l    \1,addr_in
  237.     move.w    \2,int_in
  238.     move.w    \3,int_in+2
  239.     move.w    \4,int_in+4
  240.     move.w    \5,int_in+6
  241.     aes    46
  242.     endm
  243.  
  244. objc_change    macro    tree,object,x,y,w,h,new,redraw
  245.     move.l    \1,addr_in
  246.     move.w    \2,int_in
  247.     clr.w    int_in+2
  248.     move.w    \3,int_in+4
  249.     move.w    \4,int_in+6
  250.     move.w    \5,int_in+8
  251.     move.w    \6,int_in+10
  252.     move.w    \7,int_in+12
  253.     move.w    \8,int_in+14
  254.     aes    47
  255.     endm
  256.  
  257. form_do    macro    tree,startob
  258.     move.l    \1,addr_in
  259.     move.w    \2,int_in
  260.     aes    50
  261.     endm
  262.  
  263. form_dial    macro    flag,x,y,w,h,x2,y2,w2,h2
  264.     move.w    \1,int_in
  265.     move.w    \2,int_in+2
  266.     move.w    \3,int_in+4
  267.     move.w    \4,int_in+6
  268.     move.w    \5,int_in+8
  269.     move.w    \6,int_in+10
  270.     move.w    \7,int_in+12
  271.     move.w    \8,int_in+14
  272.     move.w    \9,int_in+16
  273.     aes    51
  274.     endm
  275.  
  276. form_alert    macro    button,string
  277.     move.w    \1,int_in
  278.     move.l    \2,addr_in
  279.     aes    52
  280.     endm
  281.  
  282. form_error    macro    errnum
  283.     move.w    \1,int_in
  284.     aes    53
  285.     endm
  286.  
  287. form_center    macro    tree
  288.     move.l    \1,addr_in
  289.     aes    54
  290.     endm
  291.  
  292. graf_rubberbox    macro    x,y,w,h
  293.     move.w    \1,int_in
  294.     move.w    \2,int_in+2
  295.     move.w    \3,int_in+4
  296.     move.w    \4,int_in+6
  297.     aes    70
  298.     endm
  299.     
  300. graf_dragbox    macro    w,h,x,y,bx,bh,bw,bh
  301.     move.w    \1,int_in
  302.     move.w    \2,int_in+2
  303.     move.w    \3,int_in+4
  304.     move.w    \4,int_in+6
  305.     move.w    \5,int_in+8
  306.     move.w    \6,int_in+10
  307.     move.w    \7,int_in+12
  308.     move.w    \8,int_in+14
  309.     aes    71
  310.     endm
  311.  
  312. graf_movebox    macro    w,h,x,y,dx,dy
  313.     move.w    \1,int_in
  314.     move.w    \2,int_in+2
  315.     move.w    \3,int_in+4
  316.     move.w    \4,int_in+6
  317.     move.w    \5,int_in+8
  318.     move.w    \6,int_in+10
  319.     aes    72
  320.     endm
  321.  
  322. graf_growbox    macro    x,y,w,h,fx,fy,fw,fh
  323.     move.w    \1,int_in
  324.     move.w    \2,int_in+2
  325.     move.w    \3,int_in+4
  326.     move.w    \4,int_in+6
  327.     move.w    \5,int_in+8
  328.     move.w    \6,int_in+10
  329.     move.w    \7,int_in+12
  330.     move.w    \8,int_in+14
  331.     aes    73
  332.     endm
  333.  
  334. graf_shrinkbox    macro    x,y,w,h,sx,sy,sw,sh
  335.     move.w    \1,int_in
  336.     move.w    \2,int_in+2
  337.     move.w    \3,int_in+4
  338.     move.w    \4,int_in+6
  339.     move.w    \5,int_in+8
  340.     move.w    \6,int_in+10
  341.     move.w    \7,int_in+12
  342.     move.w    \8,int_in+14
  343.     aes    74
  344.     endm
  345.  
  346. graf_watchbox    macro    tree,object,instate,outstate
  347.     clr.w    int_in
  348.     move.l    \1,addr_in
  349.     move.w    \2,int_in+2
  350.     move.w    \3,int_in+4
  351.     move.w    \4,int_in+6
  352.     aes    75
  353.     endm
  354.  
  355. graf_slidebox    macro    tree,parent,obj,vh
  356.     move.l    \1,addr_in
  357.     move.w    \2,int_in
  358.     move.w    \3,int_in+2
  359.     move.w    \4,int_in+4
  360.     aes    76
  361.     endm
  362.  
  363. graf_handle    macro
  364.     aes    77
  365.     endm
  366.  
  367. graf_mouse    macro    num<,addr>
  368.     move.w    \1,int_in
  369.     IFNC    '\2',''
  370.     move.l    \2,addr_in
  371.     ENDC
  372.     aes    78
  373.     endm
  374.  
  375. graf_mkstate    macro
  376.     aes    79
  377.     endm
  378.  
  379. scrp_read    macro    scrap
  380.     move.l    \1,addr_in
  381.     aes    80
  382.     endm
  383.  
  384. scrp_write    macro    scrap
  385.     move.l    \1,addr_in
  386.     aes    81
  387.     endm
  388.  
  389. fsel_input    macro    path,filename
  390.     move.l    \1,addr_in
  391.     move.l    \2,addr_in+4
  392.     aes    90
  393.     endm
  394.  
  395. wind_create    macro    kind,x,y,w,h
  396.     move.w    \1,int_in
  397.     move.w    \2,int_in+2
  398.     move.w    \3,int_in+4
  399.     move.w    \4,int_in+6
  400.     move.w    \5,int_in+8
  401.     aes    100
  402.     endm
  403.  
  404. wind_open    macro    handle,x,y,w,h
  405.     move.w    \1,int_in
  406.     move.w    \2,int_in+2
  407.     move.w    \3,int_in+4
  408.     move.w    \4,int_in+6
  409.     move.w    \5,int_in+8
  410.     aes    101
  411.     endm
  412.  
  413. wind_close    macro    handle
  414.     move.w    \1,int_in
  415.     aes    102
  416.     endm
  417.  
  418. wind_delete    macro    handle
  419.     move.w    \1,int_in
  420.     aes    103
  421.     endm
  422.  
  423. wind_get    macro    handle,field
  424.     move.w    \1,int_in
  425.     move.w    \2,int_in+2
  426.     aes    104
  427.     endm
  428.  
  429. wind_set    macro    handle,field
  430.     move.w    \1,int_in
  431.     move.w    \2,int_in+2
  432.     aes    105
  433.     endm
  434.  
  435. wind_find    macro    x,y
  436.     move.w    \1,int_in
  437.     move.w    \2,int_in+2
  438.     aes    106
  439.     endm
  440.  
  441. wind_update    macro    begend
  442.     move.w    \1,int_in
  443.     aes    107
  444.     endm
  445.  
  446. wind_calc    macro    type,kind,inx,iny,inw,inh
  447.     move.w    \1,int_in
  448.     move.w    \2,int_in+2
  449.     move.w    \3,int_in+4
  450.     move.w    \4,int_in+6
  451.     move.w    \5,int_in+8
  452.     move.w    \6,int_in+10
  453.     aes    108
  454.     endm
  455.  
  456. rsrc_load    macro    name
  457.     move.l    \1,addr_in
  458.     aes    110
  459.     endm
  460.  
  461. rsrc_free    macro
  462.     aes    111
  463.     endm
  464.  
  465. rsrc_gaddr    macro    type,index
  466.     move.w    \1,int_in
  467.     move.w    \2,int_in+2
  468.     move.l    #112<<16+2,control
  469.     move.l    #1<<16,control+4
  470.     move.w    #1,control+8        unique!
  471.     move.l    #aes_params,d1
  472.     move.w    #200,d0
  473.     trap    #2
  474.     move.w    int_out,d0
  475.     endm
  476.  
  477. rsrc_saddr    macro    type,index,saddr
  478.     move.w    \1,int_in
  479.     move.w    \2,int_in+2
  480.     move.l    \3,addr_in
  481.     aes    113
  482.     endm
  483.  
  484. rsrc_obfix    macro    tree,object
  485.     move.l    \1,addr_in
  486.     move.w    \2,int_in
  487.     aes    114
  488.     endm
  489.  
  490. shel_read    macro    command,shell
  491.     move.l    \1,addr_in
  492.     move.l    \2,addr_in+4
  493.     aes    120
  494.     endm
  495.  
  496. shel_write    macro    doex,sgr,scr,cmd,shell
  497.     move.w    \1,int_in
  498.     move.w    \2,int_in+2
  499.     move.w    \3,int_in+4
  500.     move.l    \4,addr_in
  501.     move.l    \5,addr_in+4
  502.     aes    121
  503.     endm
  504.  
  505. shel_find    macro    buffer
  506.     move.l    \1,addr_in
  507.     aes    124
  508.     endm
  509.  
  510. shel_envrn    macro    value,string
  511.     move.l    \1,addr_in
  512.     move.l    \2,addr_in+4
  513.     aes    125
  514.     endm
  515.  
  516.  
  517. *********** END OF AES *************
  518.  
  519.  
  520. *********** VDI MACROS *************
  521.  
  522. * conditional macro definition(!) to call vdi routine
  523.     IFGT    __LK
  524. callvdi    macro    vdiname
  525.     XREF    \1,contrl,contrl1,contrl3
  526.     XREF    intin,ptsin,intout,ptsout,vdi_params
  527.     BSR    \1
  528.     endm
  529.     ELSEIF
  530. callvdi    macro    vdiname
  531.     BSR    \1
  532.     endm
  533.     ENDC
  534. * may need to change BSR above to JSR for large progs
  535.  
  536. v_opnwk    macro
  537.     callvdi    v_opnwk
  538.     endm
  539.  
  540. v_clswk    macro
  541.     callvdi    v_clswk
  542.     endm
  543.  
  544. v_opnvwk    macro
  545.     callvdi    v_opnvwk
  546.     endm
  547.  
  548. v_clsvwk    macro
  549.     callvdi    v_clsvwk
  550.     endm
  551.  
  552. v_clrwk    macro
  553.     callvdi    v_clrwk
  554.     endm
  555.  
  556. v_updwk    macro
  557.     callvdi    v_updwk
  558.     endm
  559.  
  560. vst_load_fonts    macro
  561.     callvdi    vst_load_fonts
  562.     endm
  563.  
  564. vst_unload_fonts    macro
  565.     callvdi    vst_unload_fonts
  566.     endm
  567.  
  568. vs_clip    macro    flag,x1,y1,x2,y2
  569.     move.w    \1,intin
  570.     move.w    \2,ptsin
  571.     move.w    \3,ptsin+2
  572.     move.w    \4,ptsin+4
  573.     move.w    \5,ptsin+6
  574.     callvdi    vs_clip
  575.     endm
  576.  
  577. v_pline    macro    count
  578.     move.w    \1,contrl1
  579.     callvdi    v_pline
  580.     endm
  581.  
  582. v_pmarker    macro    count
  583.     move.w    \1,contrl1
  584.     callvdi    v_pmarker
  585.     endm
  586.  
  587. v_gtext    macro    x,y,string
  588.     move.w    \1,ptsin
  589.     move.w    \2,ptsin+2
  590.     move.l    \3,a0
  591.     callvdi    v_gtext
  592.     endm
  593.  
  594. v_fillarea    macro    count
  595.     move.w    \1,contrl1
  596.     callvdi    v_fillarea
  597.     endm
  598.     
  599. v_contourfill    macro    x,y,index
  600.     move.w    \1,ptsin
  601.     move.w    \2,ptsin+2
  602.     move.w    \3,intin
  603.     callvdi    v_contourfill
  604.     endm
  605.  
  606. vr_recfl    macro    x1,y1,x2,y2
  607.     move.w    \1,ptsin
  608.     move.w    \2,ptsin+2
  609.     move.w    \3,ptsin+4
  610.     move.w    \4,ptsin+6
  611.     callvdi    vr_recfl
  612.     endm
  613.  
  614. v_bar    macro    x1,y1,x2,y2
  615.     move.w    \1,ptsin
  616.     move.w    \2,ptsin+2
  617.     move.w    \3,ptsin+4
  618.     move.w    \4,ptsin+6
  619.     callvdi    v_bar
  620.     endm
  621.  
  622. v_arc    macro    x,y,rad,start,end
  623.     move.w    \1,ptsin
  624.     move.w    \2,ptsin+2
  625.     move.w    \3,ptsin+12
  626.     moev.w    \4,intin
  627.     move.w    \5,intin+2
  628.     callvdi    v_arc
  629.     endm
  630.  
  631. v_pieslice    macro    x,y,rad,start,end
  632.     move.w    \1,ptsin
  633.     move.w    \2,ptsin+2
  634.     move.w    \3,ptsin+12
  635.     moev.w    \4,intin
  636.     move.w    \5,intin+2
  637.     callvdi    v_pieslice
  638.     endm
  639.  
  640. v_circle    macro    x,y,rad
  641.     move.w    \1,ptsin
  642.     move.w    \2,ptsin+2
  643.     move.w    \3,ptsin+8
  644.     callvdi    v_circle
  645.     endm
  646.  
  647. v_ellarc    macro    x,y,xr,yr,start,end
  648.     move.w    \1,ptsin
  649.     move.w    \2,ptsin+2
  650.     move.w    \3,ptsin+4
  651.     move.w    \4,ptsin+6
  652.     move.w    \5,intin
  653.     move.w    \6,intin+2
  654.     callvdi    v_ellarc
  655.     endm
  656.  
  657. v_ellpie    macro    x,y,xr,yr,start,end
  658.     move.w    \1,ptsin
  659.     move.w    \2,ptsin+2
  660.     move.w    \3,ptsin+4
  661.     move.w    \4,ptsin+6
  662.     move.w    \5,intin
  663.     move.w    \6,intin+2
  664.     callvdi    v_ellpie
  665.     endm
  666.  
  667. v_ellipse    macro    x,y,xr,yr
  668.     move.w    \1,ptsin
  669.     move.w    \2,ptsin+2
  670.     move.w    \3,ptsin+4
  671.     move.w    \4,ptsin+6
  672.     callvdi    v_ellipse
  673.     endm
  674.  
  675. v_rbox    macro    x1,y1,x2,y2
  676.     move.w    \1,ptsin
  677.     move.w    \2,ptsin+2
  678.     move.w    \3,ptsin+4
  679.     move.w    \4,ptsin+6
  680.     callvdi    v_rbox
  681.     endm
  682.  
  683. v_rfbox    macro    x1,y1,x2,y2
  684.     move.w    \1,ptsin
  685.     move.w    \2,ptsin+2
  686.     move.w    \3,ptsin+4
  687.     move.w    \4,ptsin+6
  688.     callvdi    v_rfbox
  689.     endm
  690.  
  691. v_justified    macro    x,y,string,length,ws,cs
  692.     move.w    \1,ptsin
  693.     move.w    \2,ptsin+2
  694.     move.w    \4,ptsin+4
  695.     move.w    \5,intin
  696.     move.w    \6,intin+2
  697.     move.l    \3,a0
  698.     callvdi    v_justified
  699.     endm
  700.  
  701. vswr_mode    macro    mode
  702.     move.w    \1,intint
  703.     callvdi    vswr_mode
  704.     endm
  705.  
  706. vs_color    macro    index,read,green,blue
  707.     move.w    \1,intin
  708.     move.w    \2,intin+2
  709.     move.w    \3,intin+4
  710.     move.w    \4,intin+6
  711.     callvdi    vs_color
  712.     endm
  713.  
  714. vsl_type    macro    style
  715.     move.w    \1,intin
  716.     callvdi    vsl_type
  717.     endm
  718.  
  719. vsl_udsty    macro    pattern
  720.     move.w    \1,intin
  721.     callvdi    vsl_udsty
  722.     endm
  723.  
  724. vsl_width    macro    width
  725.     move.w    \1,ptsin
  726.     callvdi    vsl_width
  727.     endm
  728.  
  729. vsl_color    macro    index
  730.     move.w    \1,intin
  731.     callvdi    vsl_color
  732.     endm
  733.  
  734. vsl_ends    macro    beg,end
  735.     move.w    \1,intin
  736.     move.w    \2,intin+2
  737.     callvdi    vsl_ends
  738.     endm
  739.  
  740. vsm_type    macro    symbol
  741.     move.w    \1,intin
  742.     callvdi    vsm_type
  743.     endm
  744.  
  745. vsm_height    macro    height
  746.     move.w    \1,ptsin+2
  747.     callvdi    vsm_height
  748.     endm
  749.  
  750. vsm_color    macro    index
  751.     move.w    \1,intin
  752.     callvdi    vsm_color
  753.     endm
  754.  
  755. vst_height    macro    height
  756.     move.w    \1,ptsin+2
  757.     callvdi    vst_height
  758.     endm
  759.  
  760. vst_point    macro    point
  761.     move.w    \1,intin
  762.     callvdi    vst_point
  763.     endm
  764.  
  765. vst_rotation    macro    angle
  766.     move.w    \1,intin
  767.     callvdi    vst_rotation
  768.     endm
  769.  
  770. vst_font    macro    font
  771.     move.w    \1,intin
  772.     callvdi    vst_font
  773.     endm
  774.  
  775. vst_color    macro    index
  776.     move.w    \1,intin
  777.     callvdi    vst_color
  778.     endm
  779.  
  780. vst_effects    macro    effect
  781.     move.w    \1,intin
  782.     callvdi    vst_effects
  783.     endm
  784.  
  785. vst_alignment    macro    hor,vert
  786.     move.w    \1,intin
  787.     move.w    \2,intin+2
  788.     callvdi    vst_alignment
  789.     endm
  790.  
  791. vsf_interior    macro    style
  792.     move.w    \1,intin
  793.     callvdi    vsf_interior
  794.     endm
  795.  
  796. vsf_style    macro    index
  797.     move.w    \1,intin
  798.     callvdi    vsf_style
  799.     endm
  800.  
  801. vsf_color    macro    index
  802.     move.w    \1,intin
  803.     callvdi    vsf_color
  804.     endm
  805.  
  806. vsf_perimeter    macro    vis
  807.     move.w    \1,intin
  808.     callvdi    vsf_perimeter
  809.     endm
  810.  
  811. vsf_updat    macro
  812.     callvdi    vsf_updat
  813.     endm
  814.  
  815. vro_cpyfm    macro    mode,sourceMFDB,destMFDB
  816.     move.w    \1,intin
  817.     move.l    \2,contrl+14
  818.     move.l    \3,contrl+18
  819.     callvdi    vro_cpyfm
  820.     endm
  821.  
  822. vrt_cpyfm    macro    mode,sourceMFDB,destMFDB,index1,index2
  823.     move.w    \1,intin
  824.     move.l    \2,contrl+14
  825.     move.l    \3,contrl+18
  826.     move.w    \4,intin+2
  827.     move.w    \5,intin+4
  828.     callvdi    vrt_cpyfm
  829.     endm
  830.  
  831. vr_trnfm    macro    source,dest
  832.     move.l    \1,contrl+14
  833.     move.l    \2,contrl+18
  834.     callvdi    vr_trnfm
  835.     endm
  836.  
  837. v_get_pixel    macro    x,y
  838.     move.w    \1,ptsin
  839.     move.w    \2,ptsin+2
  840.     callvdi    v_get_pixel
  841.     endm
  842.  
  843. vex_timv    macro    newtimer
  844.     move.l    \1,contrl+14
  845.     callvdi    vex_timv
  846.     endm
  847.  
  848. v_show_c    macro    reset
  849.     move.w    \1,intin
  850.     callvdi    v_show_c
  851.     endm
  852.  
  853. v_hide_c    macro
  854.     callvdi    v_hide_c
  855.     endm
  856.  
  857. vq_mouse    macro
  858.     callvdi    vq_mouse
  859.     endm
  860.  
  861. vex_butv    macro    newxbut
  862.     move.l    \1,contrl+14
  863.     callvdi    vex_butv
  864.     endm
  865.  
  866. vex_motv    macro    newmov
  867.     move.l    \1,contrl+14
  868.     callvdi    vex_motv
  869.     endm
  870.  
  871. vex_curv    macro    newcursor
  872.     move.l    \1,contrl+14
  873.     callvdi    vex_curv
  874.     endm
  875.  
  876. vq_key_s    macro
  877.     callvdi    vq_key_s
  878.     endm
  879.  
  880. vq_extnd    macro    flag
  881.     move.w    \1,intin
  882.     callvdi    vq_extnd
  883.  
  884. vq_color    macro    index,flag
  885.     move.w    \1,intin
  886.     move.w    \2,intin+2
  887.     callvdi    vq_color
  888.     endm
  889.  
  890. vql_attributes    macro
  891.     callvdi    vql_attributes
  892.     endm
  893.  
  894. vqm_attributes    macro
  895.     callvdi    vqm_attributes
  896.     endm
  897.  
  898. vqf_attributes    macro
  899.     callvdi    vqf_attributes
  900.     endm
  901.  
  902. vqt_attributes    macro
  903.     callvdi    vqt_attributes
  904.     endm
  905.  
  906. vqt_extent    macro    string
  907.     move.l    \1,a0
  908.     callvdi    vqt_extent
  909.     endm
  910.  
  911. vqt_width    macro    char
  912.     move.w    \1,intin
  913.     callvdi    vqt_width
  914.     endm
  915.  
  916. vqt_name    macro    number
  917.     move.w    \1,intin
  918.     callvdi    vqt_name
  919.     endm
  920.  
  921. vqt_fontinfo    macro
  922.     callvdi    vqt_fontinfo
  923.     endm
  924.  
  925. *********** END OF VDI *****************
  926.