Advertisement
Guest User

Untitled

a guest
Jul 21st, 2017
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.71 KB | None | 0 0
  1. ;;-------------------------------------------------------------------
  2. %macro .STARTUP 0
  3. ;group dgroup .data .bss
  4. global _start
  5. _start:
  6. %endmacro
  7. ;;-------------------------------------------------------------------
  8.  
  9.  
  10. ;;-------------------------------------------------------------------
  11. %macro .EXIT 0
  12. mov EAX,1
  13. xor EBX,EBX
  14. int 0x80
  15. %endmacro
  16. ;;-------------------------------------------------------------------
  17.  
  18.  
  19. ;;-------------------------------------------------------------------
  20. %macro .DATA 0
  21. segment .data
  22. %endmacro
  23. ;;-------------------------------------------------------------------
  24.  
  25. ;;-------------------------------------------------------------------
  26. %macro .UDATA 0
  27. segment .bss
  28. %endmacro
  29. ;;-------------------------------------------------------------------
  30.  
  31. ;;-------------------------------------------------------------------
  32. %macro .CODE 0
  33. segment .data
  34. segment .bss
  35. segment .text
  36. %endmacro
  37. ;;-------------------------------------------------------------------
  38.  
  39.  
  40. ;;-------------------------------------------------------------------
  41. %macro nwln 0
  42. call proc_nwln
  43. %endmacro
  44. ;;-------------------------------------------------------------------
  45.  
  46.  
  47. ;;-------------------------------------------------------------------
  48. %macro PutCh 1
  49. push AX
  50. mov AL,%1
  51. call proc_PutCh
  52. pop AX
  53. %endmacro
  54. ;;-------------------------------------------------------------------
  55.  
  56.  
  57. ;;-------------------------------------------------------------------
  58. %macro PutStr 1
  59. push ECX
  60. mov ECX,%1
  61. call proc_PutStr
  62. pop ECX
  63. %endmacro
  64. ;;-------------------------------------------------------------------
  65.  
  66.  
  67. ;;-------------------------------------------------------------------
  68. %macro GetStr 1-2 81
  69. push ESI
  70. push EDI
  71. mov EDI,%1
  72. mov ESI,%2
  73. call proc_GetStr
  74. pop EDI
  75. pop ESI
  76. %endmacro
  77. ;;-------------------------------------------------------------------
  78.  
  79.  
  80. ;;-------------------------------------------------------------------
  81. %macro GetCh 1
  82. push SI
  83. xor SI,SI
  84. %ifidni %1,AL
  85. ;inc SI
  86. call proc_GetCh
  87. %elifidni %1,AH
  88. mov SI,1
  89. call proc_GetCh
  90. %else
  91. push AX
  92. call proc_GetCh
  93. mov %1,AL
  94. pop AX
  95. %endif
  96. pop SI
  97. %endmacro
  98. ;;-------------------------------------------------------------------
  99.  
  100.  
  101. ;;-------------------------------------------------------------------
  102. %macro PutInt 1
  103. push AX
  104. mov AX,%1
  105. call proc_PutInt
  106. pop AX
  107. %endmacro
  108. ;;-------------------------------------------------------------------
  109.  
  110.  
  111. ;;-------------------------------------------------------------------
  112. %macro GetInt 1
  113. %ifnidni %1,AX
  114. push AX
  115. call proc_GetInt
  116. mov %1,AX
  117. pop AX
  118. %else
  119. call proc_GetInt
  120. %endif
  121. %endmacro
  122. ;;-------------------------------------------------------------------
  123.  
  124. ;;-------------------------------------------------------------------
  125. %macro PutLInt 1
  126. push EAX
  127. mov EAX,%1
  128. call proc_PutLInt
  129. pop EAX
  130. %endmacro
  131. ;;-------------------------------------------------------------------
  132.  
  133. ;;-------------------------------------------------------------------
  134. %macro GetLInt 1
  135. %ifnidni %1,EAX
  136. push EAX
  137. call proc_GetLInt
  138. mov %1,EAX
  139. pop EAX
  140. %else
  141. call proc_GetLInt
  142. %endif
  143. %endmacro
  144. ;;--
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement