Leaked source code of windows server 2003
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.

72 lines
1.4 KiB

  1. ;===============================================================================
  2. ;
  3. ; $Workfile: MACROS.INC $
  4. ;
  5. ; Contents:
  6. ; Several macros to track the stack status.
  7. ;
  8. ; Copyright (c) 1996, Cirrus Logic, Inc.
  9. ;
  10. ; $Log: X:/log/laguna/nt35/displays/cl546x/i386/MACROS.INC $
  11. ;
  12. ; Rev 1.5 20 Aug 1996 11:29:02 noelv
  13. ; Bugfix release from Frido 8-19-96
  14. ;
  15. ; Rev 1.0 14 Aug 1996 17:14:36 frido
  16. ; Initial revision.
  17. ;
  18. ; Rev 1.4 04 Apr 1996 13:22:24 noelv
  19. ; Frido version 26
  20. ;
  21. ; Rev 1.2 30 Jan 1996 21:49:52 frido
  22. ; Added OPTION switches for all .ASM files to disable MASM 5.1 compatibility.
  23. ;
  24. ; Rev 1.1 25 Jan 1996 12:43:08 frido
  25. ; Added more stack tracing macros.
  26. ;
  27. ; Rev 1.0 24 Jan 1996 23:13:42 frido
  28. ; Initial release.
  29. ;
  30. ;===============================================================================
  31. OPTION NOM510
  32. OPTION CASEMAP:NONE
  33. OPTION NODOTNAME
  34. OPTION NOOLDMACROS
  35. OPTION NOOLDSTRUCTS
  36. OPTION SCOPED
  37. OPTION EXPR32
  38. OPTION LJMP
  39. push_ MACRO vArg:REQ
  40. push vArg
  41. espPTR = espPTR + 4
  42. frmPTR = frmPTR + 4
  43. ENDM
  44. pop_ MACRO vArg:REQ
  45. pop vArg
  46. espPTR = espPTR - 4
  47. frmPTR = frmPTR - 4
  48. ENDM
  49. enter_ MACRO vArg:REQ
  50. sub esp, vArg
  51. espPTR = espPTR + vArg
  52. frmPTR = 0
  53. ENDM
  54. leave_ MACRO vArg:REQ
  55. add esp, vArg
  56. espPTR = espPTR - vArg
  57. ENDM
  58. save_ MACRO n:REQ
  59. espPTR_&n = espPTR
  60. frmPTR_&n = frmPTR
  61. ENDM
  62. load_ MACRO n:REQ
  63. espPTR = espPTR_&n
  64. frmPTR = frmPTR_&n
  65. ENDM