From b92ef5212daad3f318aa26fdaf69fdeb7e66e8a4 Mon Sep 17 00:00:00 2001 From: exegete Date: Fri, 16 Oct 2020 16:25:06 +0300 Subject: set, get, syscall, makefile --- ia32/stack.sts | 28 ++++++++++++++++++++-------- 1 file changed, 20 insertions(+), 8 deletions(-) (limited to 'ia32/stack.sts') diff --git a/ia32/stack.sts b/ia32/stack.sts index 56f4f07..cf1bd21 100644 --- a/ia32/stack.sts +++ b/ia32/stack.sts @@ -1,18 +1,30 @@ -defasm drop - # 58 ?' ; pop eax +defasm get + # 58 ?' ; pop eax + # 8b ?' # 4 ?' # 84 ?' ; mov eax, [esp + 4 * eax] + # 50 ?' ; push eax +next + +defasm set + # 5b ?' ; pop ebx + # 58 ?' ; pop eax + # 89 ?' # 04 ?' # 9c ?' ; mov [esp + 4 * ebx], eax next +defasm drop + # 58 ?' ; pop eax +next + defasm dup - # ff ?' # 34 ?' # 24 ?' ; push dword [esp] + # ff ?' # 34 ?' # 24 ?' ; push dword [esp] next defasm over - # ff ?' # 74 ?' # 24 ?' # 4 ?' ; push dword [esp + 4] + # ff ?' # 74 ?' # 24 ?' # 4 ?' ; push dword [esp + 4] next defasm swap - # 58 ?' ; pop eax - # 5b ?' ; pop ebx - # 50 ?' ; push eax - # 53 ?' ; push ebx + # 58 ?' ; pop eax + # 5b ?' ; pop ebx + # 50 ?' ; push eax + # 53 ?' ; push ebx next -- cgit v1.2.3