home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 7 / 07.iso / c / c222 / 1.ddi / INC / BLACKSTR.MAC < prev    next >
Encoding:
Text File  |  1990-05-17  |  929 b   |  71 lines

  1. ;       For large data, use the default data segment for
  2. ;       BLACKSTAR variables.
  3. dseg    macro   name
  4.     data segment word public name
  5.     dgroup group data
  6.     assume ds:dgroup
  7.     endm
  8.  
  9. enddseg macro
  10.     data ends
  11.     endm
  12.  
  13. ;
  14. ;       macro to pass a dgroup pointer to a c function
  15. ;
  16. mpassp  macro   pointer
  17.  
  18. ifdef   Large_data
  19.     mov     eax,seg dgroup               ;need the segment
  20.     push    eax
  21. endif
  22.     mov     eax,offset dgroup:&pointer
  23.     push    eax
  24.     endm
  25.  
  26. alias   macro   name,size
  27.     &name   label   &size
  28.     public  &name
  29.     endm
  30.  
  31. ;
  32. ;       DOS call macro
  33. ;
  34. doscall macro function
  35.     mov     ah,&function
  36.     int     21h
  37.     endm
  38.  
  39.  
  40. DWRDSIZE macro
  41.     ifdef   asm_386
  42.     QWORD
  43.     else
  44.     DWORD
  45.     endif
  46.     endm
  47.  
  48. WRDSIZE macro
  49.     ifdef   asm_386
  50.     DWORD
  51.     else
  52.     WORD
  53.     endif
  54.     endm
  55.  
  56. defdw   macro
  57.     ifdef   asm_386
  58.     dq
  59.     else
  60.     dd
  61.     endif
  62.     endm
  63.  
  64. defw    macro
  65.     ifdef   asm_386
  66.     dd
  67.     else
  68.     dw
  69.     endif
  70.     endm
  71.