summaryrefslogtreecommitdiff
path: root/src/chip8.rs
diff options
context:
space:
mode:
authorSamuel Perrouault <samuel.perrouault@gmail.com>2025-03-26 15:25:58 +0100
committerSamuel Perrouault <samuel.perrouault@gmail.com>2025-03-26 15:25:58 +0100
commitd13128082efbc70ef61900b603b22a5967b3c459 (patch)
tree7df048a8cba8a441bfa0eaf62302a33715d565c9 /src/chip8.rs
parentd7241bdc0d4883dc1355bb7614b9feaf961a620a (diff)
implement SHR Vx
Diffstat (limited to 'src/chip8.rs')
-rw-r--r--src/chip8.rs5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/chip8.rs b/src/chip8.rs
index 38e4831..eae4a4f 100644
--- a/src/chip8.rs
+++ b/src/chip8.rs
@@ -135,6 +135,11 @@ impl Chip8 {
self.v[0xF] = if self.v[x] > self.v[y] { 1 } else { 0 };
self.v[x] = self.v[x].wrapping_sub(self.v[y]);
}
+ 0x0006 => {
+ eprintln!("SHR V{}", x);
+ self.v[0xF] = if self.v[x] & 1 == 1 { 1 } else { 0 };
+ self.v[x] /= 2;
+ }
0x000E => {
eprintln!("SHL V{}", x);
self.v[0xF] = if (self.v[x] >> 7) & 1 == 1 { 1 } else { 0 };