From 9c9735c095f948967c200c9cf179425520d4fa0f Mon Sep 17 00:00:00 2001 From: Lee Morgan Date: Thu, 25 Jun 2015 19:56:31 -0400 Subject: [PATCH] Removed increment of register I in opcode 0xF055 and 0xF065. The original CHIP-8 design incremented I. However, on current implementations I is left unchanged. Reference: https://en.wikipedia.org/wiki/CHIP-8#cite_note-memi-4 --- Chip8/Chip8.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/Chip8/Chip8.c b/Chip8/Chip8.c index 75a7d6f..30a3266 100644 --- a/Chip8/Chip8.c +++ b/Chip8/Chip8.c @@ -44,7 +44,7 @@ The Chip8 system has a HEX based keypad (0x0 - 0xF). Opcode Table - • NNN address + • NNN 12-bit address • NN 8-bit constant • N 4-bit constant • X and Y 4-bit register identifier @@ -562,7 +562,6 @@ void emulateCycle() { for (unsigned char r = 0; r <= X; r++) { memory[I+r] = V[r]; } - I = I + X + 1; pc += 2; } else if (submaskedOpcode == 0x0065) { @@ -570,7 +569,6 @@ void emulateCycle() { for (unsigned char r = 0; r <= X; r++) { V[r] = memory[I+r]; } - I = I + X + 1; pc += 2; } else {