Add tests for ORL instruction
authorHugo Villeneuve <hugo@hugovil.com>
Mon, 25 Nov 2013 04:02:31 +0000 (23:02 -0500)
committerHugo Villeneuve <hugo@hugovil.com>
Mon, 2 Dec 2013 02:00:07 +0000 (21:00 -0500)
tests/Makefile.am
tests/orl.asm [new file with mode: 0644]

index be13db3..3d47a1d 100644 (file)
@@ -7,11 +7,11 @@ SUFFIXES = .hex .asm
 TESTS = \
     opcodes
 
-check_PROGRAMS = mul1.hex mul2.hex
+check_PROGRAMS = mul1.hex mul2.hex orl.hex
 
 mul1.hex: mul1.asm
-
 mul2.hex: mul2.asm
+orl.hex: orl.asm
 
 .asm.hex:
        $(AS51) $<
diff --git a/tests/orl.asm b/tests/orl.asm
new file mode 100644 (file)
index 0000000..43e00b6
--- /dev/null
@@ -0,0 +1,22 @@
+; Test program to verify correct emu8051 operation
+;
+; Test desc: ORL
+; Test output1: A = $60
+; Test output2: PSW = $E0
+; Test output3: TCON = $01
+
+        CSEG
+
+        ORG     0000h           ; Reset vector
+
+        MOV     PSW, #0E0h
+        CLR    TCON.0
+        CLR     C
+        ORL     C, TCON.0       ; CY Should be 0
+        MOV     A, PSW
+
+        SETB           TCON.0
+        ORL     C, TCON.0       ; CY Should be 1
+
+        LJMP    0FFF0h
+        END