summaryrefslogtreecommitdiff
path: root/test/test5.asm
diff options
context:
space:
mode:
Diffstat (limited to 'test/test5.asm')
-rw-r--r--test/test5.asm43
1 files changed, 43 insertions, 0 deletions
diff --git a/test/test5.asm b/test/test5.asm
new file mode 100644
index 00000000..12b0ee42
--- /dev/null
+++ b/test/test5.asm
@@ -0,0 +1,43 @@
+%macro pushm 1-*
+%rep %0
+%rotate -1
+push %1
+%endrep
+%endmacro
+
+%macro popm 1-*
+%rep %0
+pop %1
+%rotate 1
+%endrep
+%endmacro
+
+%macro pusha 0
+push ax
+push cx
+push dx
+push bx
+push bp
+mov bp,sp
+lea bp,[bp+10]
+xchg bp,[bp-10]
+push bp
+push si
+push di
+%endmacro
+
+%macro popa 0
+pop di
+pop si
+pop bp
+pop bx
+pop bx
+pop dx
+pop cx
+pop ax
+%endmacro
+
+ pushm ax,bx,cx,dx
+ popm ax,bx,cx,dx
+ pusha
+ popa