home *** CD-ROM | disk | FTP | other *** search
/ gondwana.ecr.mu.oz.au/pub/ / Graphics.tar / Graphics / VOGLE.ZIP / SRC / MSFORT / FDRAW.ASM < prev    next >
Assembly Source File  |  2000-02-11  |  5KB  |  269 lines

  1. ;    Static Name Aliases
  2. ;
  3.     TITLE   fdraw.for
  4.     NAME    fdraw
  5.  
  6.     .8087
  7. FDRAW_TEXT    SEGMENT  BYTE PUBLIC 'CODE'
  8. FDRAW_TEXT    ENDS
  9. _DATA    SEGMENT  WORD PUBLIC 'DATA'
  10. _DATA    ENDS
  11. CONST    SEGMENT  WORD PUBLIC 'CONST'
  12. CONST    ENDS
  13. _BSS    SEGMENT  WORD PUBLIC 'BSS'
  14. _BSS    ENDS
  15. DGROUP    GROUP    CONST, _BSS, _DATA
  16.     ASSUME  CS: FDRAW_TEXT, DS: DGROUP, SS: DGROUP, ES: DGROUP
  17. EXTRN    __acrtused:ABS
  18. EXTRN    _setdash:FAR
  19. EXTRN    _linestyle:FAR
  20. EXTRN    _draw:FAR
  21. EXTRN    _draw2:FAR
  22. EXTRN    _rdraw:FAR
  23. EXTRN    _rdraw2:FAR
  24. EXTRN    _sdraw2:FAR
  25. EXTRN    _rsdraw2:FAR
  26. EXTRN    T_STRING:FAR
  27. EXTRN    __FCclenv:DWORD
  28. FDRAW_TEXT      SEGMENT
  29. ; Line 34
  30.     PUBLIC    SETDASH
  31. SETDASH    PROC FAR
  32.     push    bp
  33.     mov    bp,sp
  34. ;    X = 6
  35.     les    bx,DWORD PTR [bp+6]    ;X
  36.     fld    DWORD PTR es:[bx]
  37.     sub    sp,8
  38.     mov    bx,sp
  39.     fstp    QWORD PTR [bx]
  40.     fwait    
  41.     call    FAR PTR _setdash
  42. ; Line 35
  43.     mov    sp,bp
  44.     pop    bp
  45.     ret    4
  46.  
  47. SETDASH    ENDP
  48. ; Line 41
  49.     PUBLIC    LINESTYLE
  50. LINESTYLE    PROC FAR
  51.     push    bp
  52.     mov    bp,sp
  53.     sub    sp,268
  54.     push    di
  55.     push    si
  56. ;    S = 6
  57.     mov    ax,WORD PTR __FCclenv
  58.     mov    dx,WORD PTR __FCclenv+2
  59.     mov    WORD PTR [bp-12],ax
  60.     mov    WORD PTR [bp-10],dx
  61.     mov    WORD PTR [bp-2],128
  62.     les    bx,DWORD PTR [bp-12]
  63.     mov    ax,WORD PTR es:[bx+2]
  64.     mov    WORD PTR [bp-6],ax
  65.     push    WORD PTR [bp+8]
  66.     push    WORD PTR [bp+6]    ;S
  67.     lea    ax,WORD PTR [bp-140]
  68.     push    ax
  69.     mov    WORD PTR [bp-8],128
  70.     lea    ax,WORD PTR [bp-8]
  71.     mov    dx,ss
  72.     mov    WORD PTR __FCclenv,ax
  73.     mov    WORD PTR __FCclenv+2,dx
  74.     call    FAR PTR T_STRING
  75.     lea    di,WORD PTR [bp-268]
  76.     mov    si,ax
  77.     push    ss
  78.     pop    es
  79.     mov    cx,64
  80.     rep    movsw
  81.     lea    ax,WORD PTR [bp-268]
  82.     push    ss
  83.     push    ax
  84.     lea    ax,WORD PTR [bp-4]
  85.     mov    WORD PTR __FCclenv,ax
  86.     mov    WORD PTR __FCclenv+2,ss
  87.     call    FAR PTR _linestyle
  88.     add    sp,4
  89. ; Line 42
  90.     pop    si
  91.     pop    di
  92.     mov    sp,bp
  93.     pop    bp
  94.     ret    4
  95.  
  96. LINESTYLE    ENDP
  97. ; Line 45
  98.     PUBLIC    DRAW
  99. DRAW    PROC FAR
  100.     push    bp
  101.     mov    bp,sp
  102. ;    X = 14
  103. ;    Y = 10
  104. ;    Z = 6
  105.     les    bx,DWORD PTR [bp+6]    ;Z
  106.     fld    DWORD PTR es:[bx]
  107.     sub    sp,8
  108.     mov    bx,sp
  109.     fstp    QWORD PTR [bx]
  110.     fwait    
  111.     les    bx,DWORD PTR [bp+10]    ;Y
  112.     fld    DWORD PTR es:[bx]
  113.     sub    sp,8
  114.     mov    bx,sp
  115.     fstp    QWORD PTR [bx]
  116.     fwait    
  117.     les    bx,DWORD PTR [bp+14]    ;X
  118.     fld    DWORD PTR es:[bx]
  119.     sub    sp,8
  120.     mov    bx,sp
  121.     fstp    QWORD PTR [bx]
  122.     fwait    
  123.     call    FAR PTR _draw
  124. ; Line 46
  125.     mov    sp,bp
  126.     pop    bp
  127.     ret    12
  128.  
  129. DRAW    ENDP
  130. ; Line 49
  131.     PUBLIC    DRAW2
  132. DRAW2    PROC FAR
  133.     push    bp
  134.     mov    bp,sp
  135. ;    X = 10
  136. ;    Y = 6
  137.     les    bx,DWORD PTR [bp+6]    ;Y
  138.     fld    DWORD PTR es:[bx]
  139.     sub    sp,8
  140.     mov    bx,sp
  141.     fstp    QWORD PTR [bx]
  142.     fwait    
  143.     les    bx,DWORD PTR [bp+10]    ;X
  144.     fld    DWORD PTR es:[bx]
  145.     sub    sp,8
  146.     mov    bx,sp
  147.     fstp    QWORD PTR [bx]
  148.     fwait    
  149.     call    FAR PTR _draw2
  150. ; Line 50
  151.     mov    sp,bp
  152.     pop    bp
  153.     ret    8
  154.  
  155. DRAW2    ENDP
  156. ; Line 53
  157.     PUBLIC    RDRAW
  158. RDRAW    PROC FAR
  159.     push    bp
  160.     mov    bp,sp
  161. ;    X = 14
  162. ;    Y = 10
  163. ;    Z = 6
  164.     les    bx,DWORD PTR [bp+6]    ;Z
  165.     fld    DWORD PTR es:[bx]
  166.     sub    sp,8
  167.     mov    bx,sp
  168.     fstp    QWORD PTR [bx]
  169.     fwait    
  170.     les    bx,DWORD PTR [bp+10]    ;Y
  171.     fld    DWORD PTR es:[bx]
  172.     sub    sp,8
  173.     mov    bx,sp
  174.     fstp    QWORD PTR [bx]
  175.     fwait    
  176.     les    bx,DWORD PTR [bp+14]    ;X
  177.     fld    DWORD PTR es:[bx]
  178.     sub    sp,8
  179.     mov    bx,sp
  180.     fstp    QWORD PTR [bx]
  181.     fwait    
  182.     call    FAR PTR _rdraw
  183. ; Line 54
  184.     mov    sp,bp
  185.     pop    bp
  186.     ret    12
  187.  
  188. RDRAW    ENDP
  189. ; Line 57
  190.     PUBLIC    RDRAW2
  191. RDRAW2    PROC FAR
  192.     push    bp
  193.     mov    bp,sp
  194. ;    X = 10
  195. ;    Y = 6
  196.     les    bx,DWORD PTR [bp+6]    ;Y
  197.     fld    DWORD PTR es:[bx]
  198.     sub    sp,8
  199.     mov    bx,sp
  200.     fstp    QWORD PTR [bx]
  201.     fwait    
  202.     les    bx,DWORD PTR [bp+10]    ;X
  203.     fld    DWORD PTR es:[bx]
  204.     sub    sp,8
  205.     mov    bx,sp
  206.     fstp    QWORD PTR [bx]
  207.     fwait    
  208.     call    FAR PTR _rdraw2
  209. ; Line 58
  210.     mov    sp,bp
  211.     pop    bp
  212.     ret    8
  213.  
  214. RDRAW2    ENDP
  215. ; Line 61
  216.     PUBLIC    SDRAW2
  217. SDRAW2    PROC FAR
  218.     push    bp
  219.     mov    bp,sp
  220. ;    X = 10
  221. ;    Y = 6
  222.     les    bx,DWORD PTR [bp+6]    ;Y
  223.     fld    DWORD PTR es:[bx]
  224.     sub    sp,8
  225.     mov    bx,sp
  226.     fstp    QWORD PTR [bx]
  227.     fwait    
  228.     les    bx,DWORD PTR [bp+10]    ;X
  229.     fld    DWORD PTR es:[bx]
  230.     sub    sp,8
  231.     mov    bx,sp
  232.     fstp    QWORD PTR [bx]
  233.     fwait    
  234.     call    FAR PTR _sdraw2
  235. ; Line 62
  236.     mov    sp,bp
  237.     pop    bp
  238.     ret    8
  239.  
  240. SDRAW2    ENDP
  241. ; Line 65
  242.     PUBLIC    RSDRAW2
  243. RSDRAW2    PROC FAR
  244.     push    bp
  245.     mov    bp,sp
  246. ;    X = 10
  247. ;    Y = 6
  248.     les    bx,DWORD PTR [bp+6]    ;Y
  249.     fld    DWORD PTR es:[bx]
  250.     sub    sp,8
  251.     mov    bx,sp
  252.     fstp    QWORD PTR [bx]
  253.     fwait    
  254.     les    bx,DWORD PTR [bp+10]    ;X
  255.     fld    DWORD PTR es:[bx]
  256.     sub    sp,8
  257.     mov    bx,sp
  258.     fstp    QWORD PTR [bx]
  259.     fwait    
  260.     call    FAR PTR _rsdraw2
  261. ; Line 66
  262.     mov    sp,bp
  263.     pop    bp
  264.     ret    8
  265.  
  266. RSDRAW2    ENDP
  267. FDRAW_TEXT    ENDS
  268. END
  269.