aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCyrill Gorcunov <gorcunov@gmail.com>2020-10-11 13:00:57 +0300
committerCyrill Gorcunov <gorcunov@gmail.com>2020-10-11 13:00:57 +0300
commit4bedceb83c6473c7bda3b6ee13bd238c4b2ab567 (patch)
tree2aeee43210d9c9af7cff63776a9d62a27205a504
parent31ad91346b9ee983f361761575d5b29693532fda (diff)
downloadnasm-4bedceb83c6473c7bda3b6ee13bd238c4b2ab567.tar.gz
nasm-4bedceb83c6473c7bda3b6ee13bd238c4b2ab567.tar.xz
nasm-4bedceb83c6473c7bda3b6ee13bd238c4b2ab567.zip
travis: add objexe
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
-rw-r--r--travis/test/objexe.asm30
-rw-r--r--travis/test/objexe.json12
-rw-r--r--travis/test/objexe.obj.tbin0 -> 192 bytes
3 files changed, 42 insertions, 0 deletions
diff --git a/travis/test/objexe.asm b/travis/test/objexe.asm
new file mode 100644
index 00000000..971336ea
--- /dev/null
+++ b/travis/test/objexe.asm
@@ -0,0 +1,30 @@
+; Demonstration of how to write an entire .EXE format program as a .OBJ
+; file to be linked. Tested with the VAL free linker.
+; To build:
+; nasm -fobj objexe.asm
+; val objexe.obj,objexe.exe;
+; To test:
+; objexe
+; (should print `hello, world')
+
+ segment code
+
+..start: mov ax,data
+ mov ds,ax
+ mov ax,stack
+ mov ss,ax
+ mov sp,stacktop
+
+ mov dx,hello
+ mov ah,9
+ int 0x21
+
+ mov ax,0x4c00
+ int 0x21
+
+ segment data
+hello: db 'hello, world', 13, 10, '$'
+
+ segment stack stack
+ resb 64
+stacktop:
diff --git a/travis/test/objexe.json b/travis/test/objexe.json
new file mode 100644
index 00000000..924136c6
--- /dev/null
+++ b/travis/test/objexe.json
@@ -0,0 +1,12 @@
+[
+ {
+ "description": "Test obj executable builtin",
+ "id": "objexe",
+ "format": "obj",
+ "source": "objexe.asm",
+ "option": "-Ox",
+ "target": [
+ { "output": "objexe.obj" }
+ ]
+ }
+]
diff --git a/travis/test/objexe.obj.t b/travis/test/objexe.obj.t
new file mode 100644
index 00000000..167c1162
--- /dev/null
+++ b/travis/test/objexe.obj.t
Binary files differ