Subversion Repositories Kolibri OS

Rev

Go to most recent revision | Blame | Last modification | View Log | Download | RSS feed

  1. use32
  2. org 0x0
  3.   db 'MENUET01'
  4.   dd 0x1
  5.   dd MenuetEntryPoint
  6.   dd I_END
  7.   dd U_END+STACKSIZE+HEAPSIZE
  8.   dd U_END+STACKSIZE
  9.   dd @Menuet@CommandLine,0x0
  10.  
  11. ptr equ
  12. offset equ
  13. short equ
  14. tbyte equ tword
  15.  
  16. PTR equ
  17. OFFSET equ
  18. SHORT equ
  19. TBYTE equ TWORD
  20.  
  21. macro movsb a,b
  22. {
  23.   if a eq & b eq
  24.     movsb
  25.   else
  26.     movsx a,b
  27.   end if
  28. }
  29.  
  30. macro movsw a,b
  31. {
  32.   if a eq & b eq
  33.     movsw
  34.   else
  35.     movsx a,b
  36.   end if
  37. }
  38.  
  39. macro segment name {}
  40.  
  41. macro endseg  name {}
  42.  
  43. macro usedef [link]
  44. {
  45.   common
  46.     if ~link eq
  47.     virtual at 0
  48.   forward
  49.     dd   link
  50.   common
  51.     end virtual
  52.     end if
  53. }
  54.  
  55. macro define x,[link]
  56. {
  57.   common
  58.     if x eq
  59.     else if used x
  60.     x:
  61.     usedef link
  62. }
  63.  
  64. macro enddef [link]
  65. {
  66.   common
  67.     usedef link
  68.     end if
  69. }
  70.  
  71. macro newdef x,[link]
  72. {
  73.   common
  74.     end if
  75.     if x eq
  76.     else if used x
  77.     x:
  78.     usedef link
  79. }
  80.  
  81. macro nextdef x,[link]
  82. {
  83.   common
  84.     usedef x
  85.     end if
  86.     if x eq
  87.     else if used x
  88.     x:
  89.     usedef link
  90. }
  91.