about summary refs log tree commit diff
diff options
context:
space:
mode:
authorManuel Palenzuela <manuelpalenzuelamerino@gmail.com>2021-07-19 14:27:00 +0100
committerManuel Palenzuela <manuelpalenzuelamerino@gmail.com>2021-07-19 14:27:00 +0100
commite7038f60b8a8372ce48b58d81e166a6c7e896f04 (patch)
tree8f88af1ba77bf8676c045aee7367b6ce2c8d0491
parentFeature: Added basic rom loading (diff)
downloadCHIP8-Emulator-e7038f60b8a8372ce48b58d81e166a6c7e896f04.tar.gz
CHIP8-Emulator-e7038f60b8a8372ce48b58d81e166a6c7e896f04.tar.bz2
CHIP8-Emulator-e7038f60b8a8372ce48b58d81e166a6c7e896f04.zip
Feature: Added registers
-rw-r--r--emulator.h22
-rw-r--r--main.c2
2 files changed, 23 insertions, 1 deletions
diff --git a/emulator.h b/emulator.h
index edffa47..c8114cb 100644
--- a/emulator.h
+++ b/emulator.h
@@ -6,8 +6,30 @@
 
 typedef struct
 {
+    // general purpose registers
+    uint8_t V0;
+    uint8_t V1;
+    uint8_t V2;
+    uint8_t V3;
+    uint8_t V4;
+    uint8_t V5;
+    uint8_t V6;
+    uint8_t V7;
+    uint8_t V8;
+    uint8_t V9;
+    uint8_t VA;
+    uint8_t VB;
+    uint8_t VC;
+    uint8_t VD;
+    uint8_t VE;
+    uint8_t VF; //flag register
+} Registers;
+
+typedef struct
+{
     uint8_t is_on;
     uint16_t pc;
+    Registers regs;
     uint8_t memory[4096];
 } Emulator;
 
diff --git a/main.c b/main.c
index 114126f..53dd85c 100644
--- a/main.c
+++ b/main.c
@@ -21,7 +21,7 @@ int main(int argc, char** argv)
 
     printf("Hello brother!\n");
 
-    /*for(int i = 0; i < 4096; ++i)
+    /*for(int i = 0; i < sizeof(emulator.memory); ++i)
     {
         printf("%c ", emulator.memory[i]);
     }