home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 7 / 07.iso / c / c221 / 1.ddi / MWHC.001 / T < prev    next >
Encoding:
Text File  |  1992-12-09  |  1.9 KB  |  79 lines

  1. ;
  2. ; (C) Copyright 1987-1992;    MetaWare Incorporated
  3. ;
  4. ; Set the memory model here.
  5. ; 1. Chose Small_code or Large_code.
  6. ; 2. Choose Small_data or Large_data.
  7. ; 3. IF YOU CHOSE Large_data, choose DS_grouped or not.
  8.  
  9. COMMENT %
  10.  These symbols get set depending on the memory model.
  11. Large_code    equ    1    ; Many CSs.
  12. Small_code    equ    1    ; CS is fixed.
  13. Large_data    equ    1    ; ES & SS separate; DS may or may not vary.
  14. Small_data    equ    1    ; DS=SS=ES.
  15. ifdef    Small_data
  16. DS_grouped    equ    1
  17. else
  18.  Is DS grouped or does it vary?    Choose this only in Large_data model.
  19.  You choose, in large data case, whether DS is grouped.
  20. DS_grouped    equ    1
  21. endif
  22. %
  23.  
  24.  
  25. ; Which memory model?
  26. ifdef small_m
  27.     Small_code    equ    1
  28.     Small_data    equ    1
  29.     DS_grouped    equ    1
  30.     extrn    SMALL?:near
  31. else
  32.     ifdef compact_m
  33.     Small_code    equ    1
  34.     Large_data    equ    1
  35.     DS_grouped    equ    1
  36.     extrn    COMPACT?:near
  37.     else
  38.     ifdef big_m
  39.         Large_code    equ    1
  40.         Large_data    equ    1
  41.         DS_grouped    equ    1
  42.         extrn    BIG?:near
  43.     else
  44.         ifdef large_m
  45.         Large_code    equ    1
  46.         Large_data    equ    1
  47.         extrn    LARGE?:near
  48.         else
  49.         ifdef medium_m
  50.             Large_code    equ    1
  51.             Small_data    equ    1
  52.             DS_grouped    equ    1
  53.             extrn    MEDIUM?:near
  54.         else
  55.             %out1 >>>> Target memory model not specified for model file
  56.             %out1 >>>> You must define one of:
  57.             %out1 >>>>     small_m, compact_m, medium_m, big_m, large_m
  58.             %out1 >>>> on the assembler command line.
  59.             .err
  60.         endif
  61.         endif
  62.     endif
  63.     endif
  64. endif
  65.             
  66. ; There are 6 possible libraries:
  67. ; 1 CS        1 DS    1 SS=ES=DS    ; Small
  68. ; Many CS    1 DS    1 SS=ES=DS      ; Medium
  69. ; 1 CS        1 DS    1 SS,Many ES    ; Compact
  70. ; Many CS    1 DS    1 SS,Many ES    ; Big
  71. ; 1 CS        Many DS    1 SS,Many ES    ; Semi-Giant; strange; support?
  72. ; Many CS    Many DS    1 SS,Many ES    ; Giant
  73. ; Not supported:
  74. ; 1 CS        1 DS    1 SS,1 ES    ; No one supports this.
  75. ; Many CS    1 DS    1 SS,1 ES    ; " "
  76.  
  77. include macros
  78.  
  79.