Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

58 lines
1.4 KiB

  1. ;***
  2. ;defsegs.inc - defines segments.
  3. ;
  4. ; Copyright (c) 1989-2001, Microsoft Corporation. All rights reserved.
  5. ;
  6. ;Purpose:
  7. ; This file defines segments for the math libs.
  8. ;
  9. ;Revision History:
  10. ; 11-14-89 WAJ Initial version.
  11. ;
  12. ;*******************************************************************************
  13. CrtDefSegs macro SegList
  14. irp seg, <SegList>
  15. ifidni <seg>,<code>
  16. ifdef I386
  17. createSeg _TEXT,code,dword,public,code,FLAT
  18. defGrp FLAT,<code>
  19. else
  20. ifdef FAR_CODE
  21. createSeg _RTEXT,code,word,public,code
  22. else
  23. createSeg _RTEXT,code,word,public,code
  24. endif
  25. endif
  26. elseifidni <seg>,<data>
  27. ifdef I386
  28. createSeg DATA,data,dword,public,DATA,FLAT
  29. defGrp FLAT,<data>
  30. else
  31. createSeg DATA,data,word,public,DATA,DGROUP
  32. defGrp DGROUP,<data>
  33. endif
  34. elseifidni <seg>,<init>
  35. ifdef I386
  36. createSeg XIB, xibseg, dword, public, DATA, FLAT
  37. createSeg XI, xiseg, dword, public, DATA, FLAT
  38. createSeg XIE, xieseg, dword, public, DATA, FLAT
  39. defGrp FLAT,<xibseg,xiseg,xieseg>
  40. else
  41. createSeg XIB, xibseg, word, public, DATA, DGROUP
  42. createSeg XI, xiseg, word, public, DATA, DGROUP
  43. createSeg XIE, xieseg, word, public, DATA, DGROUP
  44. defGrp DGROUP,<xibseg,xiseg,xieseg>
  45. endif
  46. else
  47. %out <Error in CrtDefSeg: Unknown segment &seg.>
  48. .err
  49. endif
  50. endm ;; irp loop
  51. endm ;; CrtDefSeg macro