summaryrefslogtreecommitdiffstatshomepage
path: root/src
diff options
context:
space:
mode:
author Felipe CorrĂȘa da Silva Sanches <fsanches@metamaquina.com.br>2015-11-29 21:59:13 -0200
committer Felipe CorrĂȘa da Silva Sanches <fsanches@metamaquina.com.br>2015-12-06 13:32:04 -0200
commitb1960f236073ec1c3269bb8a8382dfea90743bff (patch)
tree49ba9cd467a1b22390261cf14c13707c4109d3e8 /src
parentb6e4298ee6cbcd95747e44096666e41b83565ed3 (diff)
[patinho] Implement instructions LIM, INC, UNEG and LIMP1
Diffstat (limited to 'src')
-rw-r--r--src/devices/cpu/patinhofeio/patinho_feio.cpp23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/devices/cpu/patinhofeio/patinho_feio.cpp b/src/devices/cpu/patinhofeio/patinho_feio.cpp
index f0c8ee8e1ba..4f2baa16382 100644
--- a/src/devices/cpu/patinhofeio/patinho_feio.cpp
+++ b/src/devices/cpu/patinhofeio/patinho_feio.cpp
@@ -131,6 +131,29 @@ void patinho_feio_cpu_device::execute_instruction()
ACC = ~ACC + 1;
FLAGS = 0; //TODO: fix-me (I'm not sure yet how to compute the flags here)
return;
+ case 0x84:
+ //LIM="Limpa":
+ // Clear flags
+ FLAGS = 0;
+ return;
+ case 0x85:
+ //INC:
+ // Increment accumulator
+ ACC++;
+ FLAGS = 0; //TODO: fix-me (I'm not sure yet how to compute the flags here)
+ return;
+ case 0x86:
+ //UNEG="Um Negativo":
+ // Load -1 into accumulator and clear flags
+ ACC = -1;
+ FLAGS = 0;
+ return;
+ case 0x87:
+ //LIMP1:
+ // Clear accumulator and sets V=1
+ ACC = 0;
+ FLAGS = V;
+ return;
case 0x9A:
//INIB="Inibe"
// disables interrupts