From 1c67357ad255533b03cb22d31b7c6cf31028fc99 Mon Sep 17 00:00:00 2001
From: Jana Rekittke <jana@rekittke.name>
Date: Thu, 2 Jul 2009 21:14:37 +0200
Subject: adapt instructions changes from back/tac.py

---
 src/emu/cpu.c | 32 +++++++++++++++-----------------
 src/emu/opc.c | 13 +++++++------
 src/emu/opc.h | 13 +++++++------
 3 files changed, 29 insertions(+), 29 deletions(-)

diff --git a/src/emu/cpu.c b/src/emu/cpu.c
index 5256cb6..7e62ffb 100644
--- a/src/emu/cpu.c
+++ b/src/emu/cpu.c
@@ -198,29 +198,27 @@ void execute(uint32_t IR)
 		Z = (GPR[a] == GPR[b]);
 		N = (GPR[a] < GPR[b]);
 		break;
-	case OPC_BEQ:
-		if (Z)
+	case OPC_BEZ:
+		if (GPR[a] == 0)
 			PC += c * sizeof(uint32_t);
 		break;
-	case OPC_BNE:
-		if (!Z)
-			PC += c * sizeof(uint32_t);
+	case OPC_EQ:
+		GPR[a] = Z;
 		break;
-	case OPC_BLT:
-		if (N)
-			PC += c * sizeof(uint32_t);
+	case OPC_NE:
+		GPR[a] = !Z;
 		break;
-	case OPC_BGE:
-		if (!N)
-			PC += c * sizeof(uint32_t);
+	case OPC_LT:
+		GPR[a] = N;
 		break;
-	case OPC_BLE:
-		if (Z || N)
-			PC += c * sizeof(uint32_t);
+	case OPC_LE:
+		GPR[a] = Z || N;
 		break;
-	case OPC_BGT:
-		if (!Z && !N)
-			PC += c * sizeof(uint32_t);
+	case OPC_GE:
+		GPR[a] = !N;
+		break;
+	case OPC_GT:
+		GPR[a] = !Z && !N;
 	case OPC_J:
 		PC = GPR[a];
 		break;
diff --git a/src/emu/opc.c b/src/emu/opc.c
index 870a272..fa46b26 100644
--- a/src/emu/opc.c
+++ b/src/emu/opc.c
@@ -28,12 +28,13 @@ opc_mapping_t opc_map[] = {
 	{ "SH",  OPC_SH },
 	{ "SW",  OPC_SW },
 	{ "CMP", OPC_CMP },
-	{ "BEQ", OPC_BEQ },
-	{ "BNE", OPC_BNE },
-	{ "BLT", OPC_BLT },
-	{ "BGE", OPC_BGE },
-	{ "BLE", OPC_BLE },
-	{ "BGT", OPC_BGT },
+	{ "BEZ", OPC_BEZ },
+	{ "EQ",  OPC_EQ },
+	{ "NE",  OPC_NE },
+	{ "LT",  OPC_LT },
+	{ "GE",  OPC_GE },
+	{ "LE",  OPC_LE },
+	{ "GT",  OPC_GT },
 	{ "J",   OPC_J },
 	{ "JAL", OPC_JAL },
 	{ "SYS", OPC_SYS },
diff --git a/src/emu/opc.h b/src/emu/opc.h
index 45d21a8..b766afa 100644
--- a/src/emu/opc.h
+++ b/src/emu/opc.h
@@ -47,12 +47,13 @@
 
 /* branch instructions */
 #define OPC_CMP  030
-#define OPC_BEQ  031
-#define OPC_BNE  032
-#define OPC_BLT  033
-#define OPC_BGE  034
-#define OPC_BLE  035
-#define OPC_BGT  036
+#define OPC_BEZ  031
+#define OPC_EQ   032
+#define OPC_NE   033
+#define OPC_LT   034
+#define OPC_LE   035
+#define OPC_GE   036
+#define OPC_GT   037
 
 /* jump instructions */
 #define OPC_J    040
-- 
cgit v1.2.3