home *** CD-ROM | disk | FTP | other *** search
/ Power-Programmierung / CD2.mdf / c / library / dos / memory / emslib / model.mac < prev    next >
Encoding:
Text File  |  1988-04-23  |  1.6 KB  |  105 lines

  1.  
  2. ifdef SMALL
  3.       codesize  equ  0
  4.       datasize  equ  0
  5. endif
  6. ifdef MEDIUM
  7.       codesize  equ  1
  8.       datasize  equ  0
  9. endif
  10. ifdef COMPACT
  11.       codesize  equ  0
  12.       datasize  equ  1
  13. endif
  14. ifdef LARGE
  15.       codesize  equ  1
  16.       datasize  equ  1
  17. endif
  18.  
  19. if codesize
  20.       codeptr   equ  4
  21. else
  22.       codeptr   equ  2
  23. endif
  24.  
  25. if datasize
  26.       dataptr   equ  4
  27. else
  28.       dataptr   equ  2
  29. endif
  30.  
  31.       over      equ  2+codeptr
  32.  
  33. procstart MACRO name
  34. if codesize
  35. name      PROC  FAR
  36.           public name
  37. else
  38. name      PROC  NEAR
  39.           public name
  40. endif
  41.           ENDM
  42.  
  43. procend   MACRO name
  44. if codesize
  45. name      ENDP
  46. else
  47. name      ENDP
  48. endif
  49.           ENDM
  50.  
  51. begbssseg MACRO
  52. _BSS      SEGMENT WORD PUBLIC 'BSS'
  53.           ENDM
  54.  
  55. endbssseg MACRO
  56. _BSS      ENDS
  57.           ENDM
  58.  
  59. begconseg MACRO
  60. CONST     SEGMENT WORD PUBLIC 'CONST'
  61.           ENDM
  62.  
  63. endconseg MACRO
  64. CONST     ENDS
  65.           ENDM
  66.  
  67. begdataseg MACRO
  68. _DATA     SEGMENT WORD PUBLIC 'DATA'
  69.           ENDM
  70.  
  71. enddataseg MACRO
  72. _DATA     ENDS
  73.           ENDM
  74.  
  75. header    MACRO
  76. begdataseg
  77. enddataseg
  78. begconseg
  79. endconseg
  80. begbssseg
  81. endbssseg
  82.           ENDM
  83.  
  84.  
  85. begcodeseg MACRO name
  86. if codesize
  87. name_TEXT SEGMENT WORD PUBLIC 'CODE'
  88. DGROUP    GROUP   _DATA,_BSS,CONST
  89.           ASSUME  CS:name_TEXT,DS:DGROUP,SS:DGROUP
  90. else
  91. _TEXT     SEGMENT WORD PUBLIC 'CODE'
  92. DGROUP    GROUP   _DATA,_BSS,CONST
  93.           ASSUME CS:_TEXT,DS:DGROUP,SS:DGROUP
  94. endif
  95.           ENDM
  96.  
  97. endcodeseg MACRO name
  98. if codesize
  99. name_TEXT ENDS
  100. else
  101. _TEXT     ENDS
  102. endif
  103.           ENDM
  104.  
  105.