diff options
Diffstat (limited to 'src/vcpu.h')
| -rw-r--r-- | src/vcpu.h | 20 |
1 files changed, 20 insertions, 0 deletions
@@ -1,6 +1,26 @@ #pragma once typedef struct VCPU_State { + // Program Counter (16 bits but only 12 bits used (4096 memory addresses)) + unsigned short PC; + + // Index register (16 bits but only 12 bits used (4096 memory addresses)) + unsigned short I; + + // Stack register (16 bits) + unsigned short S; + + // General purpose registers (8 bits each) + // Note last one often used as a flag register + unsigned char V[16]; + + // Delay timer (8 bits) + unsigned char DT; + + // Sound timer (8 bits) + unsigned char ST; + + // Intruction (opcode + decoded fields) short opcode; char X; char Y; |
