summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal@nekernel.org>2026-01-19 12:45:24 +0100
committerAmlal El Mahrouss <amlal@nekernel.org>2026-01-19 12:45:24 +0100
commitdc40fa12319a854650d8e4ad424b338d57c29f59 (patch)
tree88420cbc18e66a8401fa6f7f12f5a1d4e4bbec97
parent0c35acc79b523a41f277d25a923ed25f2f668c33 (diff)
chore: Add MASM example for Nectar.
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
-rw-r--r--doc/specs/MASM_SPEC.md1
-rw-r--r--doc/specs/NEKERNEL_ABI.md2
-rw-r--r--example/example_05_masm_osx/example.asm27
3 files changed, 29 insertions, 1 deletions
diff --git a/doc/specs/MASM_SPEC.md b/doc/specs/MASM_SPEC.md
new file mode 100644
index 0000000..8b19b8e
--- /dev/null
+++ b/doc/specs/MASM_SPEC.md
@@ -0,0 +1 @@
+# Specification of NeKernel Assembler
diff --git a/doc/specs/NEKERNEL_ABI.md b/doc/specs/NEKERNEL_ABI.md
index 385c330..e8141ac 100644
--- a/doc/specs/NEKERNEL_ABI.md
+++ b/doc/specs/NEKERNEL_ABI.md
@@ -1,4 +1,4 @@
-# Specification of NeKernel's ABI
+# Specification of NeKernel ABI
The PEF ABI has multiple versions depending on the ISA.
diff --git a/example/example_05_masm_osx/example.asm b/example/example_05_masm_osx/example.asm
new file mode 100644
index 0000000..b2b9cdb
--- /dev/null
+++ b/example/example_05_masm_osx/example.asm
@@ -0,0 +1,27 @@
+%bits 64
+public_segment .code64 main
+
+mov [rsp+0], 0x48
+mov [rsp+1], 0x65
+mov [rsp+2], 0x6C
+mov [rsp+3], 0x6C
+mov [rsp+4], 0x6F
+mov [rsp+5], 0x20
+mov [rsp+6], 0x57
+mov [rsp+7], 0x6F
+mov [rsp+8], 0x72
+mov [rsp+9], 0x6C
+mov [rsp+10], 0x64
+mov [rsp+11], 0x0A
+
+mov rax, 0x2000004
+mov rdi, 0x01
+lea rsi, [rsp]
+mov rdx, 0x0C
+syscall
+
+mov rax, 0x2000001
+xor rdi, rdi
+syscall
+
+ret \ No newline at end of file