Dec 05 03:17:26.696 INFO checking BlinfoldKing/Chip8-rs against master#c8ae2de8363be088604ffa2ccba84ff7ad7250bc for pr-56481 Dec 05 03:17:26.696 INFO running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/pr-56481/worker-2/master#c8ae2de8363be088604ffa2ccba84ff7ad7250bc:/target:rw,Z" "-v" "/mnt/big/crater/work/local/test-source/worker-2/pr-56481/master#c8ae2de8363be088604ffa2ccba84ff7ad7250bc:/source:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/source" "-e" "USER_ID=1000" "-e" "CMD=cargo +c8ae2de8363be088604ffa2ccba84ff7ad7250bc-alt check --frozen --all --all-targets" "-e" "CARGO_TARGET_DIR=/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/cargo-home" "-e" "RUSTUP_HOME=/rustup-home" "-m" "1536M" "--network" "none" "crater"` Dec 05 03:17:27.140 INFO [stdout] 989b0289c2691810c6ca8674d8605bb0ee1e7d98e73e883d807060261fa53798 Dec 05 03:17:27.142 INFO running `"docker" "start" "-a" "989b0289c2691810c6ca8674d8605bb0ee1e7d98e73e883d807060261fa53798"` Dec 05 03:17:28.517 INFO [stderr] usermod: no changes Dec 05 03:17:28.943 INFO [stderr] Checking gfx_core v0.8.3 Dec 05 03:17:28.960 INFO [stderr] Compiling num-derive v0.2.3 Dec 05 03:17:28.962 INFO [stderr] Checking rusttype v0.4.3 Dec 05 03:17:28.972 INFO [stderr] Checking pistoncore-input v0.21.0 Dec 05 03:17:28.975 INFO [stderr] Checking glutin v0.18.0 Dec 05 03:17:35.143 INFO [stderr] Checking piston2d-graphics v0.26.0 Dec 05 03:17:42.834 INFO [stderr] Checking pistoncore-window v0.32.0 Dec 05 03:17:47.375 INFO [stderr] Checking pistoncore-event_loop v0.37.0 Dec 05 03:17:47.377 INFO [stderr] Checking pistoncore-glutin_window v0.48.0 Dec 05 03:17:50.095 INFO [stderr] Checking tiff v0.2.1 Dec 05 03:17:51.907 INFO [stderr] Checking piston v0.37.0 Dec 05 03:17:53.075 INFO [stderr] Checking image v0.20.0 Dec 05 03:18:05.455 INFO [stderr] Checking piston2d-opengl_graphics v0.54.0 Dec 05 03:18:16.643 INFO [stderr] Checking gfx v0.17.1 Dec 05 03:18:16.643 INFO [stderr] Checking gfx_device_gl v0.15.3 Dec 05 03:18:23.751 INFO [stderr] Checking piston-gfx_texture v0.34.0 Dec 05 03:18:26.860 INFO [stderr] Checking piston2d-gfx_graphics v0.52.0 Dec 05 03:18:31.392 INFO [stderr] Checking piston_window v0.81.0 Dec 05 03:18:36.811 INFO [stderr] Checking chip8-rust v0.1.0 (/source) Dec 05 03:18:42.580 INFO [stderr] warning: unused import: `piston::window::WindowSettings` Dec 05 03:18:42.581 INFO [stderr] --> src/main.rs:9:5 Dec 05 03:18:42.581 INFO [stderr] | Dec 05 03:18:42.581 INFO [stderr] 9 | use piston::window::WindowSettings; Dec 05 03:18:42.581 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Dec 05 03:18:42.581 INFO [stderr] | Dec 05 03:18:42.582 INFO [stderr] = note: #[warn(unused_imports)] on by default Dec 05 03:18:42.582 INFO [stderr] Dec 05 03:18:42.582 INFO [stderr] warning: unused import: `glutin_window::GlutinWindow as Window` Dec 05 03:18:42.582 INFO [stderr] --> src/main.rs:10:5 Dec 05 03:18:42.582 INFO [stderr] | Dec 05 03:18:42.582 INFO [stderr] 10 | use glutin_window::GlutinWindow as Window; Dec 05 03:18:42.582 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Dec 05 03:18:42.582 INFO [stderr] Dec 05 03:18:42.582 INFO [stderr] warning: unused import: `piston::event_loop::*` Dec 05 03:18:42.582 INFO [stderr] --> src/main.rs:11:5 Dec 05 03:18:42.582 INFO [stderr] | Dec 05 03:18:42.582 INFO [stderr] 11 | use piston::event_loop::*; Dec 05 03:18:42.582 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^ Dec 05 03:18:42.587 INFO [stderr] Dec 05 03:18:42.587 INFO [stderr] warning: unused import: `piston::input::*` Dec 05 03:18:42.587 INFO [stderr] --> src/main.rs:12:5 Dec 05 03:18:42.587 INFO [stderr] | Dec 05 03:18:42.587 INFO [stderr] 12 | use piston::input::*; Dec 05 03:18:42.587 INFO [stderr] | ^^^^^^^^^^^^^^^^ Dec 05 03:18:42.587 INFO [stderr] Dec 05 03:18:42.587 INFO [stderr] warning: unused imports: `GlGraphics`, `OpenGL` Dec 05 03:18:42.587 INFO [stderr] --> src/main.rs:13:24 Dec 05 03:18:42.587 INFO [stderr] | Dec 05 03:18:42.587 INFO [stderr] 13 | use opengl_graphics::{ GlGraphics, OpenGL }; Dec 05 03:18:42.587 INFO [stderr] | ^^^^^^^^^^ ^^^^^^ Dec 05 03:18:42.587 INFO [stderr] Dec 05 03:18:42.587 INFO [stderr] warning: unused import: `std::io::prelude::*` Dec 05 03:18:42.587 INFO [stderr] --> src/CPU.rs:4:5 Dec 05 03:18:42.587 INFO [stderr] | Dec 05 03:18:42.587 INFO [stderr] 4 | use std::io::prelude::*; Dec 05 03:18:42.587 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^ Dec 05 03:18:42.587 INFO [stderr] Dec 05 03:18:42.655 INFO [stderr] warning: unreachable statement Dec 05 03:18:42.655 INFO [stderr] --> src/main.rs:29:5 Dec 05 03:18:42.655 INFO [stderr] | Dec 05 03:18:42.655 INFO [stderr] 29 | println!("Hello, world!"); Dec 05 03:18:42.655 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ Dec 05 03:18:42.655 INFO [stderr] | Dec 05 03:18:42.655 INFO [stderr] = note: #[warn(unreachable_code)] on by default Dec 05 03:18:42.655 INFO [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) Dec 05 03:18:42.655 INFO [stderr] Dec 05 03:18:42.783 INFO [stderr] warning: unused variable: `state` Dec 05 03:18:42.783 INFO [stderr] --> src/CPU.rs:83:13 Dec 05 03:18:42.783 INFO [stderr] | Dec 05 03:18:42.783 INFO [stderr] 83 | let state = match nibble { Dec 05 03:18:42.783 INFO [stderr] | ^^^^^ help: consider using `_state` instead Dec 05 03:18:42.783 INFO [stderr] | Dec 05 03:18:42.783 INFO [stderr] = note: #[warn(unused_variables)] on by default Dec 05 03:18:42.783 INFO [stderr] Dec 05 03:18:42.783 INFO [stderr] warning: unused variable: `bytes_read` Dec 05 03:18:42.783 INFO [stderr] --> src/CPU.rs:265:13 Dec 05 03:18:42.783 INFO [stderr] | Dec 05 03:18:42.783 INFO [stderr] 265 | let bytes_read = if let Ok(bytes_read) = reader.read(&mut buffer) { Dec 05 03:18:42.783 INFO [stderr] | ^^^^^^^^^^ help: consider using `_bytes_read` instead Dec 05 03:18:42.783 INFO [stderr] Dec 05 03:18:42.783 INFO [stderr] warning: unused import: `piston::window::WindowSettings` Dec 05 03:18:42.783 INFO [stderr] --> src/main.rs:9:5 Dec 05 03:18:42.783 INFO [stderr] | Dec 05 03:18:42.783 INFO [stderr] 9 | use piston::window::WindowSettings; Dec 05 03:18:42.783 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Dec 05 03:18:42.783 INFO [stderr] | Dec 05 03:18:42.783 INFO [stderr] = note: #[warn(unused_imports)] on by default Dec 05 03:18:42.783 INFO [stderr] Dec 05 03:18:42.783 INFO [stderr] warning: unused import: `glutin_window::GlutinWindow as Window` Dec 05 03:18:42.783 INFO [stderr] --> src/main.rs:10:5 Dec 05 03:18:42.783 INFO [stderr] | Dec 05 03:18:42.783 INFO [stderr] 10 | use glutin_window::GlutinWindow as Window; Dec 05 03:18:42.783 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Dec 05 03:18:42.783 INFO [stderr] Dec 05 03:18:42.783 INFO [stderr] warning: unused import: `piston::event_loop::*` Dec 05 03:18:42.783 INFO [stderr] --> src/main.rs:11:5 Dec 05 03:18:42.783 INFO [stderr] | Dec 05 03:18:42.783 INFO [stderr] 11 | use piston::event_loop::*; Dec 05 03:18:42.783 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^ Dec 05 03:18:42.783 INFO [stderr] Dec 05 03:18:42.783 INFO [stderr] warning: unused import: `piston::input::*` Dec 05 03:18:42.783 INFO [stderr] --> src/main.rs:12:5 Dec 05 03:18:42.783 INFO [stderr] | Dec 05 03:18:42.783 INFO [stderr] 12 | use piston::input::*; Dec 05 03:18:42.783 INFO [stderr] | ^^^^^^^^^^^^^^^^ Dec 05 03:18:42.783 INFO [stderr] Dec 05 03:18:42.783 INFO [stderr] warning: unused imports: `GlGraphics`, `OpenGL` Dec 05 03:18:42.783 INFO [stderr] --> src/main.rs:13:24 Dec 05 03:18:42.783 INFO [stderr] | Dec 05 03:18:42.783 INFO [stderr] 13 | use opengl_graphics::{ GlGraphics, OpenGL }; Dec 05 03:18:42.783 INFO [stderr] | ^^^^^^^^^^ ^^^^^^ Dec 05 03:18:42.783 INFO [stderr] Dec 05 03:18:42.783 INFO [stderr] warning: unused import: `std::io::prelude::*` Dec 05 03:18:42.783 INFO [stderr] --> src/CPU.rs:4:5 Dec 05 03:18:42.783 INFO [stderr] | Dec 05 03:18:42.783 INFO [stderr] 4 | use std::io::prelude::*; Dec 05 03:18:42.783 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^ Dec 05 03:18:42.783 INFO [stderr] Dec 05 03:18:42.821 INFO [stderr] warning: field is never used: `gfx` Dec 05 03:18:42.821 INFO [stderr] --> src/CPU.rs:24:5 Dec 05 03:18:42.821 INFO [stderr] | Dec 05 03:18:42.821 INFO [stderr] 24 | gfx: [[u8; 32]; 64], Dec 05 03:18:42.821 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^ Dec 05 03:18:42.821 INFO [stderr] | Dec 05 03:18:42.821 INFO [stderr] = note: #[warn(dead_code)] on by default Dec 05 03:18:42.821 INFO [stderr] Dec 05 03:18:42.821 INFO [stderr] warning: field is never used: `delay_timer` Dec 05 03:18:42.821 INFO [stderr] --> src/CPU.rs:27:5 Dec 05 03:18:42.821 INFO [stderr] | Dec 05 03:18:42.821 INFO [stderr] 27 | delay_timer: u8, Dec 05 03:18:42.821 INFO [stderr] | ^^^^^^^^^^^^^^^ Dec 05 03:18:42.821 INFO [stderr] Dec 05 03:18:42.821 INFO [stderr] warning: field is never used: `sound_timer` Dec 05 03:18:42.821 INFO [stderr] --> src/CPU.rs:28:5 Dec 05 03:18:42.821 INFO [stderr] | Dec 05 03:18:42.821 INFO [stderr] 28 | sound_timer: u8, Dec 05 03:18:42.821 INFO [stderr] | ^^^^^^^^^^^^^^^ Dec 05 03:18:42.821 INFO [stderr] Dec 05 03:18:42.821 INFO [stderr] warning: module `CPU` should have a snake case name such as `cpu` Dec 05 03:18:42.821 INFO [stderr] --> src/main.rs:15:1 Dec 05 03:18:42.821 INFO [stderr] | Dec 05 03:18:42.821 INFO [stderr] 15 | mod CPU; Dec 05 03:18:42.821 INFO [stderr] | ^^^^^^^^ Dec 05 03:18:42.821 INFO [stderr] | Dec 05 03:18:42.821 INFO [stderr] = note: #[warn(non_snake_case)] on by default Dec 05 03:18:42.821 INFO [stderr] Dec 05 03:18:42.821 INFO [stderr] warning: constant `fontset` should have an upper case name such as `FONTSET` Dec 05 03:18:42.821 INFO [stderr] --> src/CPU.rs:9:1 Dec 05 03:18:42.821 INFO [stderr] | Dec 05 03:18:42.821 INFO [stderr] 9 | / const fontset: [u8; 80] = [ Dec 05 03:18:42.821 INFO [stderr] 10 | | 0xF0, 0x90, 0x90, 0x90, 0xF0, 0x20, 0x60, 0x20, 0x20, 0x70, Dec 05 03:18:42.821 INFO [stderr] 11 | | 0xF0, 0x10, 0xF0, 0x80, 0xF0, 0xF0, 0x10, 0xF0, 0x10, 0xF0, Dec 05 03:18:42.821 INFO [stderr] 12 | | 0x90, 0x90, 0xF0, 0x10, 0x10, 0xF0, 0x80, 0xF0, 0x10, 0xF0, Dec 05 03:18:42.821 INFO [stderr] ... | Dec 05 03:18:42.821 INFO [stderr] 17 | | 0xF0, 0x80, 0xF0, 0x80, 0xF0, 0xF0, 0x80, 0xF0, 0x80, 0x80 Dec 05 03:18:42.821 INFO [stderr] 18 | | ]; Dec 05 03:18:42.821 INFO [stderr] | |__^ Dec 05 03:18:42.821 INFO [stderr] | Dec 05 03:18:42.821 INFO [stderr] = note: #[warn(non_upper_case_globals)] on by default Dec 05 03:18:42.821 INFO [stderr] Dec 05 03:18:42.822 INFO [stderr] warning: structure field `V` should have a snake case name such as `v` Dec 05 03:18:42.822 INFO [stderr] --> src/CPU.rs:26:5 Dec 05 03:18:42.822 INFO [stderr] | Dec 05 03:18:42.822 INFO [stderr] 26 | V: [u8; 16], // General purpose registers Dec 05 03:18:42.822 INFO [stderr] | ^^^^^^^^^^^ Dec 05 03:18:42.822 INFO [stderr] Dec 05 03:18:42.822 INFO [stderr] warning: method `JP` should have a snake case name such as `jp` Dec 05 03:18:42.822 INFO [stderr] --> src/CPU.rs:116:5 Dec 05 03:18:42.822 INFO [stderr] | Dec 05 03:18:42.822 INFO [stderr] 116 | / fn JP (&mut self, nnn: u16) { Dec 05 03:18:42.822 INFO [stderr] 117 | | println!("JP {}", nnn); Dec 05 03:18:42.822 INFO [stderr] 118 | | self.program_counter = nnn; Dec 05 03:18:42.822 INFO [stderr] 119 | | } Dec 05 03:18:42.822 INFO [stderr] | |_____^ Dec 05 03:18:42.822 INFO [stderr] Dec 05 03:18:42.822 INFO [stderr] warning: method `CALL` should have a snake case name such as `call` Dec 05 03:18:42.822 INFO [stderr] --> src/CPU.rs:121:5 Dec 05 03:18:42.822 INFO [stderr] | Dec 05 03:18:42.822 INFO [stderr] 121 | / fn CALL (&mut self, nnn: u16) { Dec 05 03:18:42.822 INFO [stderr] 122 | | println!("CALL {}", nnn); Dec 05 03:18:42.822 INFO [stderr] 123 | | self.stack[self.sp as usize] = self.program_counter; Dec 05 03:18:42.822 INFO [stderr] 124 | | self.sp + 1; Dec 05 03:18:42.822 INFO [stderr] 125 | | self.program_counter = nnn; Dec 05 03:18:42.822 INFO [stderr] 126 | | } Dec 05 03:18:42.822 INFO [stderr] | |_____^ Dec 05 03:18:42.822 INFO [stderr] Dec 05 03:18:42.822 INFO [stderr] warning: unused arithmetic operation that must be used Dec 05 03:18:42.822 INFO [stderr] --> src/CPU.rs:124:9 Dec 05 03:18:42.822 INFO [stderr] | Dec 05 03:18:42.822 INFO [stderr] 124 | self.sp + 1; Dec 05 03:18:42.822 INFO [stderr] | ^^^^^^^^^^^ Dec 05 03:18:42.822 INFO [stderr] | Dec 05 03:18:42.822 INFO [stderr] = note: #[warn(unused_must_use)] on by default Dec 05 03:18:42.822 INFO [stderr] Dec 05 03:18:42.822 INFO [stderr] warning: method `RET` should have a snake case name such as `ret` Dec 05 03:18:42.822 INFO [stderr] --> src/CPU.rs:128:5 Dec 05 03:18:42.822 INFO [stderr] | Dec 05 03:18:42.822 INFO [stderr] 128 | / fn RET (&mut self) { Dec 05 03:18:42.822 INFO [stderr] 129 | | println!("RET"); Dec 05 03:18:42.822 INFO [stderr] 130 | | self.program_counter = self.stack[self.sp as usize]; Dec 05 03:18:42.822 INFO [stderr] 131 | | self.sp -= 1; Dec 05 03:18:42.822 INFO [stderr] 132 | | } Dec 05 03:18:42.822 INFO [stderr] | |_____^ Dec 05 03:18:42.822 INFO [stderr] Dec 05 03:18:42.822 INFO [stderr] warning: method `SE` should have a snake case name such as `se` Dec 05 03:18:42.822 INFO [stderr] --> src/CPU.rs:134:5 Dec 05 03:18:42.822 INFO [stderr] | Dec 05 03:18:42.822 INFO [stderr] 134 | / fn SE (&mut self, x: u16, kk: u16) { Dec 05 03:18:42.822 INFO [stderr] 135 | | println!("SE {} {}", x, kk); Dec 05 03:18:42.822 INFO [stderr] 136 | | if self.V[x as usize] as u16 == kk { Dec 05 03:18:42.822 INFO [stderr] 137 | | self.program_counter += 2; Dec 05 03:18:42.822 INFO [stderr] 138 | | } Dec 05 03:18:42.822 INFO [stderr] 139 | | } Dec 05 03:18:42.822 INFO [stderr] | |_____^ Dec 05 03:18:42.822 INFO [stderr] Dec 05 03:18:42.822 INFO [stderr] warning: method `SNE` should have a snake case name such as `sne` Dec 05 03:18:42.822 INFO [stderr] --> src/CPU.rs:141:5 Dec 05 03:18:42.822 INFO [stderr] | Dec 05 03:18:42.822 INFO [stderr] 141 | / fn SNE (&mut self, x: u16, kk: u16) { Dec 05 03:18:42.822 INFO [stderr] 142 | | println!("SNE {} {}", x, kk); Dec 05 03:18:42.822 INFO [stderr] 143 | | if self.V[x as usize] as u16 != kk { Dec 05 03:18:42.822 INFO [stderr] 144 | | self.program_counter += 2; Dec 05 03:18:42.822 INFO [stderr] 145 | | } Dec 05 03:18:42.822 INFO [stderr] 146 | | } Dec 05 03:18:42.822 INFO [stderr] | |_____^ Dec 05 03:18:42.822 INFO [stderr] Dec 05 03:18:42.822 INFO [stderr] warning: method `SE_xy` should have a snake case name such as `se_xy` Dec 05 03:18:42.822 INFO [stderr] --> src/CPU.rs:148:5 Dec 05 03:18:42.822 INFO [stderr] | Dec 05 03:18:42.822 INFO [stderr] 148 | / fn SE_xy (&mut self, x: u16, y: u16) { Dec 05 03:18:42.822 INFO [stderr] 149 | | println!("SE_xy {} {}", x, y); Dec 05 03:18:42.822 INFO [stderr] 150 | | if self.V[x as usize] != self.V[y as usize] { Dec 05 03:18:42.822 INFO [stderr] 151 | | self.program_counter += 2; Dec 05 03:18:42.822 INFO [stderr] 152 | | } Dec 05 03:18:42.822 INFO [stderr] 153 | | } Dec 05 03:18:42.822 INFO [stderr] | |_____^ Dec 05 03:18:42.822 INFO [stderr] Dec 05 03:18:42.822 INFO [stderr] warning: method `LD` should have a snake case name such as `ld` Dec 05 03:18:42.822 INFO [stderr] --> src/CPU.rs:155:5 Dec 05 03:18:42.822 INFO [stderr] | Dec 05 03:18:42.822 INFO [stderr] 155 | / fn LD (&mut self, x: u16, kk: u16) { Dec 05 03:18:42.822 INFO [stderr] 156 | | println!("LD {} {}", x, kk); Dec 05 03:18:42.823 INFO [stderr] 157 | | self.V[x as usize] = kk as u8; Dec 05 03:18:42.823 INFO [stderr] 158 | | } Dec 05 03:18:42.823 INFO [stderr] | |_____^ Dec 05 03:18:42.823 INFO [stderr] Dec 05 03:18:42.823 INFO [stderr] warning: method `ADD` should have a snake case name such as `add` Dec 05 03:18:42.823 INFO [stderr] --> src/CPU.rs:160:5 Dec 05 03:18:42.823 INFO [stderr] | Dec 05 03:18:42.823 INFO [stderr] 160 | / fn ADD (&mut self, x: u16, kk: u16) { Dec 05 03:18:42.823 INFO [stderr] 161 | | println!("ADD {} {}", x, kk); Dec 05 03:18:42.823 INFO [stderr] 162 | | self.V[x as usize] += kk as u8; Dec 05 03:18:42.823 INFO [stderr] 163 | | } Dec 05 03:18:42.823 INFO [stderr] | |_____^ Dec 05 03:18:42.823 INFO [stderr] Dec 05 03:18:42.823 INFO [stderr] warning: method `LD_xy` should have a snake case name such as `ld_xy` Dec 05 03:18:42.823 INFO [stderr] --> src/CPU.rs:165:5 Dec 05 03:18:42.823 INFO [stderr] | Dec 05 03:18:42.823 INFO [stderr] 165 | / fn LD_xy (&mut self, x: u16, y: u16) { Dec 05 03:18:42.823 INFO [stderr] 166 | | println!("LD_xy {} {}", x, y); Dec 05 03:18:42.823 INFO [stderr] 167 | | self.V[x as usize] = self.V[y as usize]; Dec 05 03:18:42.823 INFO [stderr] 168 | | } Dec 05 03:18:42.823 INFO [stderr] | |_____^ Dec 05 03:18:42.823 INFO [stderr] Dec 05 03:18:42.823 INFO [stderr] warning: method `OR` should have a snake case name such as `or` Dec 05 03:18:42.823 INFO [stderr] --> src/CPU.rs:170:5 Dec 05 03:18:42.823 INFO [stderr] | Dec 05 03:18:42.823 INFO [stderr] 170 | / fn OR (&mut self, x: u16, y: u16) { Dec 05 03:18:42.823 INFO [stderr] 171 | | println!("OR {} {}", x, y); Dec 05 03:18:42.823 INFO [stderr] 172 | | self.V[x as usize] |= self.V[y as usize]; Dec 05 03:18:42.823 INFO [stderr] 173 | | } Dec 05 03:18:42.823 INFO [stderr] | |_____^ Dec 05 03:18:42.823 INFO [stderr] Dec 05 03:18:42.823 INFO [stderr] warning: method `AND` should have a snake case name such as `and` Dec 05 03:18:42.823 INFO [stderr] --> src/CPU.rs:175:5 Dec 05 03:18:42.823 INFO [stderr] | Dec 05 03:18:42.823 INFO [stderr] 175 | / fn AND (&mut self, x: u16, y: u16) { Dec 05 03:18:42.823 INFO [stderr] 176 | | println!("AND {} {}", x, y); Dec 05 03:18:42.823 INFO [stderr] 177 | | self.V[x as usize] &= self.V[y as usize]; Dec 05 03:18:42.823 INFO [stderr] 178 | | } Dec 05 03:18:42.823 INFO [stderr] | |_____^ Dec 05 03:18:42.823 INFO [stderr] Dec 05 03:18:42.823 INFO [stderr] warning: method `XOR` should have a snake case name such as `xor` Dec 05 03:18:42.823 INFO [stderr] --> src/CPU.rs:180:5 Dec 05 03:18:42.823 INFO [stderr] | Dec 05 03:18:42.823 INFO [stderr] 180 | / fn XOR (&mut self, x: u16, y: u16) { Dec 05 03:18:42.823 INFO [stderr] 181 | | println!("XOR {} {}", x, y); Dec 05 03:18:42.823 INFO [stderr] 182 | | self.V[x as usize] ^= self.V[y as usize]; Dec 05 03:18:42.823 INFO [stderr] 183 | | } Dec 05 03:18:42.823 INFO [stderr] | |_____^ Dec 05 03:18:42.823 INFO [stderr] Dec 05 03:18:42.823 INFO [stderr] warning: method `ADD_xy` should have a snake case name such as `add_xy` Dec 05 03:18:42.823 INFO [stderr] --> src/CPU.rs:185:5 Dec 05 03:18:42.823 INFO [stderr] | Dec 05 03:18:42.823 INFO [stderr] 185 | / fn ADD_xy (&mut self, x: u16, y: u16) { Dec 05 03:18:42.823 INFO [stderr] 186 | | println!("ADD_xy {} {}", x, y); Dec 05 03:18:42.823 INFO [stderr] 187 | | self.V[x as usize] += self.V[y as usize]; Dec 05 03:18:42.823 INFO [stderr] 188 | | } Dec 05 03:18:42.823 INFO [stderr] | |_____^ Dec 05 03:18:42.823 INFO [stderr] Dec 05 03:18:42.823 INFO [stderr] warning: method `SUB` should have a snake case name such as `sub` Dec 05 03:18:42.823 INFO [stderr] --> src/CPU.rs:190:5 Dec 05 03:18:42.823 INFO [stderr] | Dec 05 03:18:42.823 INFO [stderr] 190 | / fn SUB (&mut self, x: u16, y: u16) { Dec 05 03:18:42.823 INFO [stderr] 191 | | println!("SUB {} {}", x, y); Dec 05 03:18:42.823 INFO [stderr] 192 | | if self.V[x as usize] > self.V[y as usize] { Dec 05 03:18:42.823 INFO [stderr] 193 | | self.V[0xF] = 1; Dec 05 03:18:42.823 INFO [stderr] ... | Dec 05 03:18:42.823 INFO [stderr] 197 | | self.V[x as usize] -= self.V[y as usize]; Dec 05 03:18:42.823 INFO [stderr] 198 | | } Dec 05 03:18:42.823 INFO [stderr] | |_____^ Dec 05 03:18:42.823 INFO [stderr] Dec 05 03:18:42.823 INFO [stderr] warning: method `SHR` should have a snake case name such as `shr` Dec 05 03:18:42.823 INFO [stderr] --> src/CPU.rs:200:5 Dec 05 03:18:42.823 INFO [stderr] | Dec 05 03:18:42.823 INFO [stderr] 200 | / fn SHR (&mut self, x: u16) { Dec 05 03:18:42.823 INFO [stderr] 201 | | println!("SHR {}", x); Dec 05 03:18:42.823 INFO [stderr] 202 | | self.V[0xF] = self.V[x as usize] & 0x1; Dec 05 03:18:42.823 INFO [stderr] 203 | | self.V[x as usize] >>= 1; Dec 05 03:18:42.823 INFO [stderr] 204 | | } Dec 05 03:18:42.823 INFO [stderr] | |_____^ Dec 05 03:18:42.823 INFO [stderr] Dec 05 03:18:42.823 INFO [stderr] warning: method `SUBN` should have a snake case name such as `subn` Dec 05 03:18:42.823 INFO [stderr] --> src/CPU.rs:206:5 Dec 05 03:18:42.824 INFO [stderr] | Dec 05 03:18:42.824 INFO [stderr] 206 | / fn SUBN (&mut self, x: u16, y: u16) { Dec 05 03:18:42.824 INFO [stderr] 207 | | println!("SUB {} {}", x, y); Dec 05 03:18:42.824 INFO [stderr] 208 | | if self.V[y as usize] > self.V[x as usize] { Dec 05 03:18:42.824 INFO [stderr] 209 | | self.V[0xF] = 1; Dec 05 03:18:42.824 INFO [stderr] ... | Dec 05 03:18:42.824 INFO [stderr] 213 | | self.V[x as usize] -= self.V[y as usize]; Dec 05 03:18:42.824 INFO [stderr] 214 | | } Dec 05 03:18:42.824 INFO [stderr] | |_____^ Dec 05 03:18:42.824 INFO [stderr] Dec 05 03:18:42.824 INFO [stderr] warning: method `SHL` should have a snake case name such as `shl` Dec 05 03:18:42.824 INFO [stderr] --> src/CPU.rs:216:5 Dec 05 03:18:42.824 INFO [stderr] | Dec 05 03:18:42.824 INFO [stderr] 216 | / fn SHL (&mut self, x: u16) { Dec 05 03:18:42.824 INFO [stderr] 217 | | println!("SHL {}", x); Dec 05 03:18:42.824 INFO [stderr] 218 | | self.V[0xF] = self.V[x as usize] & 0x80; Dec 05 03:18:42.824 INFO [stderr] 219 | | self.V[x as usize] <<= 1; Dec 05 03:18:42.824 INFO [stderr] 220 | | } Dec 05 03:18:42.824 INFO [stderr] | |_____^ Dec 05 03:18:42.824 INFO [stderr] Dec 05 03:18:42.824 INFO [stderr] warning: method `SNE_xy` should have a snake case name such as `sne_xy` Dec 05 03:18:42.824 INFO [stderr] --> src/CPU.rs:222:5 Dec 05 03:18:42.824 INFO [stderr] | Dec 05 03:18:42.824 INFO [stderr] 222 | / fn SNE_xy (&mut self, x: u16, y: u16) { Dec 05 03:18:42.824 INFO [stderr] 223 | | println!("SNE_xy {} {}", x, y); Dec 05 03:18:42.824 INFO [stderr] 224 | | if self.V[x as usize] == self.V[y as usize] { Dec 05 03:18:42.824 INFO [stderr] 225 | | self.program_counter += 2; Dec 05 03:18:42.824 INFO [stderr] 226 | | } Dec 05 03:18:42.824 INFO [stderr] 227 | | } Dec 05 03:18:42.824 INFO [stderr] | |_____^ Dec 05 03:18:42.824 INFO [stderr] Dec 05 03:18:42.824 INFO [stderr] warning: method `LD_I` should have a snake case name such as `ld_i` Dec 05 03:18:42.824 INFO [stderr] --> src/CPU.rs:229:5 Dec 05 03:18:42.824 INFO [stderr] | Dec 05 03:18:42.824 INFO [stderr] 229 | / fn LD_I (&mut self, nnn: u16) { Dec 05 03:18:42.824 INFO [stderr] 230 | | println!("LD_I {}", nnn); Dec 05 03:18:42.824 INFO [stderr] 231 | | self.index_register = nnn; Dec 05 03:18:42.824 INFO [stderr] 232 | | } Dec 05 03:18:42.824 INFO [stderr] | |_____^ Dec 05 03:18:42.824 INFO [stderr] Dec 05 03:18:42.824 INFO [stderr] warning: method `JP_V0` should have a snake case name such as `jp_v0` Dec 05 03:18:42.824 INFO [stderr] --> src/CPU.rs:234:5 Dec 05 03:18:42.824 INFO [stderr] | Dec 05 03:18:42.824 INFO [stderr] 234 | / fn JP_V0 (&mut self, nnn: u16) { Dec 05 03:18:42.824 INFO [stderr] 235 | | println!("JP_V0 {}", nnn); Dec 05 03:18:42.824 INFO [stderr] 236 | | self.program_counter = (self.V[0] + nnn as u8).into(); Dec 05 03:18:42.824 INFO [stderr] 237 | | } Dec 05 03:18:42.824 INFO [stderr] | |_____^ Dec 05 03:18:42.824 INFO [stderr] Dec 05 03:18:42.824 INFO [stderr] warning: method `RND` should have a snake case name such as `rnd` Dec 05 03:18:42.824 INFO [stderr] --> src/CPU.rs:239:5 Dec 05 03:18:42.824 INFO [stderr] | Dec 05 03:18:42.824 INFO [stderr] 239 | / fn RND (&mut self, x: u16, kk: u16) { Dec 05 03:18:42.824 INFO [stderr] 240 | | println!("RND {} {}", x, kk); Dec 05 03:18:42.824 INFO [stderr] 241 | | self.V[x as usize] = (thread_rng().gen_range(0, 255) as u16 & kk) as u8; Dec 05 03:18:42.824 INFO [stderr] 242 | | } Dec 05 03:18:42.824 INFO [stderr] | |_____^ Dec 05 03:18:42.824 INFO [stderr] Dec 05 03:18:42.824 INFO [stderr] warning: method `SKP` should have a snake case name such as `skp` Dec 05 03:18:42.824 INFO [stderr] --> src/CPU.rs:244:5 Dec 05 03:18:42.824 INFO [stderr] | Dec 05 03:18:42.824 INFO [stderr] 244 | / fn SKP (&mut self, x: u16) { Dec 05 03:18:42.824 INFO [stderr] 245 | | println!("SKP {}", x); Dec 05 03:18:42.824 INFO [stderr] 246 | | if true { Dec 05 03:18:42.824 INFO [stderr] 247 | | // self.program_counter += 2; Dec 05 03:18:42.824 INFO [stderr] 248 | | } Dec 05 03:18:42.824 INFO [stderr] 249 | | } Dec 05 03:18:42.824 INFO [stderr] | |_____^ Dec 05 03:18:42.824 INFO [stderr] Dec 05 03:18:42.824 INFO [stderr] warning: method `SKNP` should have a snake case name such as `sknp` Dec 05 03:18:42.824 INFO [stderr] --> src/CPU.rs:251:5 Dec 05 03:18:42.824 INFO [stderr] | Dec 05 03:18:42.824 INFO [stderr] 251 | / fn SKNP (&mut self, x: u16) { Dec 05 03:18:42.824 INFO [stderr] 252 | | println!("SKNP {}", x); Dec 05 03:18:42.824 INFO [stderr] 253 | | if true { Dec 05 03:18:42.824 INFO [stderr] 254 | | // self.program_counter += 2; Dec 05 03:18:42.824 INFO [stderr] 255 | | } Dec 05 03:18:42.824 INFO [stderr] 256 | | } Dec 05 03:18:42.824 INFO [stderr] | |_____^ Dec 05 03:18:42.824 INFO [stderr] Dec 05 03:18:42.839 INFO [stderr] warning: unreachable statement Dec 05 03:18:42.839 INFO [stderr] --> src/main.rs:29:5 Dec 05 03:18:42.839 INFO [stderr] | Dec 05 03:18:42.843 INFO [stderr] 29 | println!("Hello, world!"); Dec 05 03:18:42.843 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ Dec 05 03:18:42.843 INFO [stderr] | Dec 05 03:18:42.843 INFO [stderr] = note: #[warn(unreachable_code)] on by default Dec 05 03:18:42.843 INFO [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) Dec 05 03:18:42.843 INFO [stderr] Dec 05 03:18:42.949 INFO [stderr] warning: unused variable: `state` Dec 05 03:18:42.949 INFO [stderr] --> src/CPU.rs:83:13 Dec 05 03:18:42.949 INFO [stderr] | Dec 05 03:18:42.949 INFO [stderr] 83 | let state = match nibble { Dec 05 03:18:42.949 INFO [stderr] | ^^^^^ help: consider using `_state` instead Dec 05 03:18:42.949 INFO [stderr] | Dec 05 03:18:42.949 INFO [stderr] = note: #[warn(unused_variables)] on by default Dec 05 03:18:42.949 INFO [stderr] Dec 05 03:18:42.951 INFO [stderr] warning: unused variable: `bytes_read` Dec 05 03:18:42.951 INFO [stderr] --> src/CPU.rs:265:13 Dec 05 03:18:42.951 INFO [stderr] | Dec 05 03:18:42.951 INFO [stderr] 265 | let bytes_read = if let Ok(bytes_read) = reader.read(&mut buffer) { Dec 05 03:18:42.951 INFO [stderr] | ^^^^^^^^^^ help: consider using `_bytes_read` instead Dec 05 03:18:42.951 INFO [stderr] Dec 05 03:18:42.978 INFO [stderr] warning: field is never used: `gfx` Dec 05 03:18:42.983 INFO [stderr] --> src/CPU.rs:24:5 Dec 05 03:18:42.983 INFO [stderr] | Dec 05 03:18:42.983 INFO [stderr] 24 | gfx: [[u8; 32]; 64], Dec 05 03:18:42.983 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^ Dec 05 03:18:42.983 INFO [stderr] | Dec 05 03:18:42.983 INFO [stderr] = note: #[warn(dead_code)] on by default Dec 05 03:18:42.983 INFO [stderr] Dec 05 03:18:42.983 INFO [stderr] warning: field is never used: `delay_timer` Dec 05 03:18:42.983 INFO [stderr] --> src/CPU.rs:27:5 Dec 05 03:18:42.983 INFO [stderr] | Dec 05 03:18:42.983 INFO [stderr] 27 | delay_timer: u8, Dec 05 03:18:42.983 INFO [stderr] | ^^^^^^^^^^^^^^^ Dec 05 03:18:42.983 INFO [stderr] Dec 05 03:18:42.983 INFO [stderr] warning: field is never used: `sound_timer` Dec 05 03:18:42.983 INFO [stderr] --> src/CPU.rs:28:5 Dec 05 03:18:42.983 INFO [stderr] | Dec 05 03:18:42.983 INFO [stderr] 28 | sound_timer: u8, Dec 05 03:18:42.983 INFO [stderr] | ^^^^^^^^^^^^^^^ Dec 05 03:18:42.983 INFO [stderr] Dec 05 03:18:42.983 INFO [stderr] warning: module `CPU` should have a snake case name such as `cpu` Dec 05 03:18:42.983 INFO [stderr] --> src/main.rs:15:1 Dec 05 03:18:42.983 INFO [stderr] | Dec 05 03:18:42.983 INFO [stderr] 15 | mod CPU; Dec 05 03:18:42.983 INFO [stderr] | ^^^^^^^^ Dec 05 03:18:42.983 INFO [stderr] | Dec 05 03:18:42.983 INFO [stderr] = note: #[warn(non_snake_case)] on by default Dec 05 03:18:42.983 INFO [stderr] Dec 05 03:18:42.983 INFO [stderr] warning: constant `fontset` should have an upper case name such as `FONTSET` Dec 05 03:18:42.983 INFO [stderr] --> src/CPU.rs:9:1 Dec 05 03:18:42.983 INFO [stderr] | Dec 05 03:18:42.983 INFO [stderr] 9 | / const fontset: [u8; 80] = [ Dec 05 03:18:42.983 INFO [stderr] 10 | | 0xF0, 0x90, 0x90, 0x90, 0xF0, 0x20, 0x60, 0x20, 0x20, 0x70, Dec 05 03:18:42.983 INFO [stderr] 11 | | 0xF0, 0x10, 0xF0, 0x80, 0xF0, 0xF0, 0x10, 0xF0, 0x10, 0xF0, Dec 05 03:18:42.983 INFO [stderr] 12 | | 0x90, 0x90, 0xF0, 0x10, 0x10, 0xF0, 0x80, 0xF0, 0x10, 0xF0, Dec 05 03:18:42.983 INFO [stderr] ... | Dec 05 03:18:42.983 INFO [stderr] 17 | | 0xF0, 0x80, 0xF0, 0x80, 0xF0, 0xF0, 0x80, 0xF0, 0x80, 0x80 Dec 05 03:18:42.983 INFO [stderr] 18 | | ]; Dec 05 03:18:42.983 INFO [stderr] | |__^ Dec 05 03:18:42.983 INFO [stderr] | Dec 05 03:18:42.983 INFO [stderr] = note: #[warn(non_upper_case_globals)] on by default Dec 05 03:18:42.983 INFO [stderr] Dec 05 03:18:42.983 INFO [stderr] warning: structure field `V` should have a snake case name such as `v` Dec 05 03:18:42.983 INFO [stderr] --> src/CPU.rs:26:5 Dec 05 03:18:42.983 INFO [stderr] | Dec 05 03:18:42.983 INFO [stderr] 26 | V: [u8; 16], // General purpose registers Dec 05 03:18:42.983 INFO [stderr] | ^^^^^^^^^^^ Dec 05 03:18:42.983 INFO [stderr] Dec 05 03:18:42.983 INFO [stderr] warning: method `JP` should have a snake case name such as `jp` Dec 05 03:18:42.983 INFO [stderr] --> src/CPU.rs:116:5 Dec 05 03:18:42.983 INFO [stderr] | Dec 05 03:18:42.983 INFO [stderr] 116 | / fn JP (&mut self, nnn: u16) { Dec 05 03:18:42.983 INFO [stderr] 117 | | println!("JP {}", nnn); Dec 05 03:18:42.983 INFO [stderr] 118 | | self.program_counter = nnn; Dec 05 03:18:42.983 INFO [stderr] 119 | | } Dec 05 03:18:42.983 INFO [stderr] | |_____^ Dec 05 03:18:42.983 INFO [stderr] Dec 05 03:18:42.983 INFO [stderr] warning: method `CALL` should have a snake case name such as `call` Dec 05 03:18:42.983 INFO [stderr] --> src/CPU.rs:121:5 Dec 05 03:18:42.983 INFO [stderr] | Dec 05 03:18:42.983 INFO [stderr] 121 | / fn CALL (&mut self, nnn: u16) { Dec 05 03:18:42.983 INFO [stderr] 122 | | println!("CALL {}", nnn); Dec 05 03:18:42.983 INFO [stderr] 123 | | self.stack[self.sp as usize] = self.program_counter; Dec 05 03:18:42.983 INFO [stderr] 124 | | self.sp + 1; Dec 05 03:18:42.983 INFO [stderr] 125 | | self.program_counter = nnn; Dec 05 03:18:42.983 INFO [stderr] 126 | | } Dec 05 03:18:42.983 INFO [stderr] | |_____^ Dec 05 03:18:42.983 INFO [stderr] Dec 05 03:18:42.983 INFO [stderr] warning: unused arithmetic operation that must be used Dec 05 03:18:42.983 INFO [stderr] --> src/CPU.rs:124:9 Dec 05 03:18:42.983 INFO [stderr] | Dec 05 03:18:42.983 INFO [stderr] 124 | self.sp + 1; Dec 05 03:18:42.983 INFO [stderr] | ^^^^^^^^^^^ Dec 05 03:18:42.983 INFO [stderr] | Dec 05 03:18:42.983 INFO [stderr] = note: #[warn(unused_must_use)] on by default Dec 05 03:18:42.983 INFO [stderr] Dec 05 03:18:42.986 INFO [stderr] warning: method `RET` should have a snake case name such as `ret` Dec 05 03:18:42.986 INFO [stderr] --> src/CPU.rs:128:5 Dec 05 03:18:42.986 INFO [stderr] | Dec 05 03:18:42.986 INFO [stderr] 128 | / fn RET (&mut self) { Dec 05 03:18:42.986 INFO [stderr] 129 | | println!("RET"); Dec 05 03:18:42.986 INFO [stderr] 130 | | self.program_counter = self.stack[self.sp as usize]; Dec 05 03:18:42.986 INFO [stderr] 131 | | self.sp -= 1; Dec 05 03:18:42.986 INFO [stderr] 132 | | } Dec 05 03:18:42.986 INFO [stderr] | |_____^ Dec 05 03:18:42.987 INFO [stderr] Dec 05 03:18:42.987 INFO [stderr] warning: method `SE` should have a snake case name such as `se` Dec 05 03:18:42.987 INFO [stderr] --> src/CPU.rs:134:5 Dec 05 03:18:42.987 INFO [stderr] | Dec 05 03:18:42.987 INFO [stderr] 134 | / fn SE (&mut self, x: u16, kk: u16) { Dec 05 03:18:42.987 INFO [stderr] 135 | | println!("SE {} {}", x, kk); Dec 05 03:18:42.987 INFO [stderr] 136 | | if self.V[x as usize] as u16 == kk { Dec 05 03:18:42.987 INFO [stderr] 137 | | self.program_counter += 2; Dec 05 03:18:42.987 INFO [stderr] 138 | | } Dec 05 03:18:42.987 INFO [stderr] 139 | | } Dec 05 03:18:42.987 INFO [stderr] | |_____^ Dec 05 03:18:42.987 INFO [stderr] Dec 05 03:18:42.987 INFO [stderr] warning: method `SNE` should have a snake case name such as `sne` Dec 05 03:18:42.987 INFO [stderr] --> src/CPU.rs:141:5 Dec 05 03:18:42.987 INFO [stderr] | Dec 05 03:18:42.987 INFO [stderr] 141 | / fn SNE (&mut self, x: u16, kk: u16) { Dec 05 03:18:42.987 INFO [stderr] 142 | | println!("SNE {} {}", x, kk); Dec 05 03:18:42.987 INFO [stderr] 143 | | if self.V[x as usize] as u16 != kk { Dec 05 03:18:42.987 INFO [stderr] 144 | | self.program_counter += 2; Dec 05 03:18:42.987 INFO [stderr] 145 | | } Dec 05 03:18:42.987 INFO [stderr] 146 | | } Dec 05 03:18:42.987 INFO [stderr] | |_____^ Dec 05 03:18:42.987 INFO [stderr] Dec 05 03:18:42.987 INFO [stderr] warning: method `SE_xy` should have a snake case name such as `se_xy` Dec 05 03:18:42.987 INFO [stderr] --> src/CPU.rs:148:5 Dec 05 03:18:42.987 INFO [stderr] | Dec 05 03:18:42.987 INFO [stderr] 148 | / fn SE_xy (&mut self, x: u16, y: u16) { Dec 05 03:18:42.987 INFO [stderr] 149 | | println!("SE_xy {} {}", x, y); Dec 05 03:18:42.987 INFO [stderr] 150 | | if self.V[x as usize] != self.V[y as usize] { Dec 05 03:18:42.987 INFO [stderr] 151 | | self.program_counter += 2; Dec 05 03:18:42.987 INFO [stderr] 152 | | } Dec 05 03:18:42.987 INFO [stderr] 153 | | } Dec 05 03:18:42.987 INFO [stderr] | |_____^ Dec 05 03:18:42.987 INFO [stderr] Dec 05 03:18:42.987 INFO [stderr] warning: method `LD` should have a snake case name such as `ld` Dec 05 03:18:42.987 INFO [stderr] --> src/CPU.rs:155:5 Dec 05 03:18:42.987 INFO [stderr] | Dec 05 03:18:42.987 INFO [stderr] 155 | / fn LD (&mut self, x: u16, kk: u16) { Dec 05 03:18:42.987 INFO [stderr] 156 | | println!("LD {} {}", x, kk); Dec 05 03:18:42.987 INFO [stderr] 157 | | self.V[x as usize] = kk as u8; Dec 05 03:18:42.987 INFO [stderr] 158 | | } Dec 05 03:18:42.987 INFO [stderr] | |_____^ Dec 05 03:18:42.987 INFO [stderr] Dec 05 03:18:42.987 INFO [stderr] warning: method `ADD` should have a snake case name such as `add` Dec 05 03:18:42.987 INFO [stderr] --> src/CPU.rs:160:5 Dec 05 03:18:42.987 INFO [stderr] | Dec 05 03:18:42.987 INFO [stderr] 160 | / fn ADD (&mut self, x: u16, kk: u16) { Dec 05 03:18:42.987 INFO [stderr] 161 | | println!("ADD {} {}", x, kk); Dec 05 03:18:42.987 INFO [stderr] 162 | | self.V[x as usize] += kk as u8; Dec 05 03:18:42.987 INFO [stderr] 163 | | } Dec 05 03:18:42.987 INFO [stderr] | |_____^ Dec 05 03:18:42.987 INFO [stderr] Dec 05 03:18:42.987 INFO [stderr] warning: method `LD_xy` should have a snake case name such as `ld_xy` Dec 05 03:18:42.987 INFO [stderr] --> src/CPU.rs:165:5 Dec 05 03:18:42.987 INFO [stderr] | Dec 05 03:18:42.987 INFO [stderr] 165 | / fn LD_xy (&mut self, x: u16, y: u16) { Dec 05 03:18:42.987 INFO [stderr] 166 | | println!("LD_xy {} {}", x, y); Dec 05 03:18:42.987 INFO [stderr] 167 | | self.V[x as usize] = self.V[y as usize]; Dec 05 03:18:42.987 INFO [stderr] 168 | | } Dec 05 03:18:42.987 INFO [stderr] | |_____^ Dec 05 03:18:42.987 INFO [stderr] Dec 05 03:18:42.987 INFO [stderr] warning: method `OR` should have a snake case name such as `or` Dec 05 03:18:42.987 INFO [stderr] --> src/CPU.rs:170:5 Dec 05 03:18:42.987 INFO [stderr] | Dec 05 03:18:42.987 INFO [stderr] 170 | / fn OR (&mut self, x: u16, y: u16) { Dec 05 03:18:42.987 INFO [stderr] 171 | | println!("OR {} {}", x, y); Dec 05 03:18:42.987 INFO [stderr] 172 | | self.V[x as usize] |= self.V[y as usize]; Dec 05 03:18:42.987 INFO [stderr] 173 | | } Dec 05 03:18:42.987 INFO [stderr] | |_____^ Dec 05 03:18:42.987 INFO [stderr] Dec 05 03:18:42.987 INFO [stderr] warning: method `AND` should have a snake case name such as `and` Dec 05 03:18:42.987 INFO [stderr] --> src/CPU.rs:175:5 Dec 05 03:18:42.987 INFO [stderr] | Dec 05 03:18:42.987 INFO [stderr] 175 | / fn AND (&mut self, x: u16, y: u16) { Dec 05 03:18:42.987 INFO [stderr] 176 | | println!("AND {} {}", x, y); Dec 05 03:18:42.987 INFO [stderr] 177 | | self.V[x as usize] &= self.V[y as usize]; Dec 05 03:18:42.987 INFO [stderr] 178 | | } Dec 05 03:18:42.987 INFO [stderr] | |_____^ Dec 05 03:18:42.987 INFO [stderr] Dec 05 03:18:42.987 INFO [stderr] warning: method `XOR` should have a snake case name such as `xor` Dec 05 03:18:42.987 INFO [stderr] --> src/CPU.rs:180:5 Dec 05 03:18:42.987 INFO [stderr] | Dec 05 03:18:42.987 INFO [stderr] 180 | / fn XOR (&mut self, x: u16, y: u16) { Dec 05 03:18:42.987 INFO [stderr] 181 | | println!("XOR {} {}", x, y); Dec 05 03:18:42.987 INFO [stderr] 182 | | self.V[x as usize] ^= self.V[y as usize]; Dec 05 03:18:42.987 INFO [stderr] 183 | | } Dec 05 03:18:42.987 INFO [stderr] | |_____^ Dec 05 03:18:42.987 INFO [stderr] Dec 05 03:18:42.987 INFO [stderr] warning: method `ADD_xy` should have a snake case name such as `add_xy` Dec 05 03:18:42.987 INFO [stderr] --> src/CPU.rs:185:5 Dec 05 03:18:42.987 INFO [stderr] | Dec 05 03:18:42.987 INFO [stderr] 185 | / fn ADD_xy (&mut self, x: u16, y: u16) { Dec 05 03:18:42.987 INFO [stderr] 186 | | println!("ADD_xy {} {}", x, y); Dec 05 03:18:42.988 INFO [stderr] 187 | | self.V[x as usize] += self.V[y as usize]; Dec 05 03:18:42.988 INFO [stderr] 188 | | } Dec 05 03:18:42.988 INFO [stderr] | |_____^ Dec 05 03:18:42.988 INFO [stderr] Dec 05 03:18:42.988 INFO [stderr] warning: method `SUB` should have a snake case name such as `sub` Dec 05 03:18:42.988 INFO [stderr] --> src/CPU.rs:190:5 Dec 05 03:18:42.988 INFO [stderr] | Dec 05 03:18:42.988 INFO [stderr] 190 | / fn SUB (&mut self, x: u16, y: u16) { Dec 05 03:18:42.988 INFO [stderr] 191 | | println!("SUB {} {}", x, y); Dec 05 03:18:42.988 INFO [stderr] 192 | | if self.V[x as usize] > self.V[y as usize] { Dec 05 03:18:42.988 INFO [stderr] 193 | | self.V[0xF] = 1; Dec 05 03:18:42.988 INFO [stderr] ... | Dec 05 03:18:42.988 INFO [stderr] 197 | | self.V[x as usize] -= self.V[y as usize]; Dec 05 03:18:42.988 INFO [stderr] 198 | | } Dec 05 03:18:42.988 INFO [stderr] | |_____^ Dec 05 03:18:42.988 INFO [stderr] Dec 05 03:18:42.988 INFO [stderr] warning: method `SHR` should have a snake case name such as `shr` Dec 05 03:18:42.988 INFO [stderr] --> src/CPU.rs:200:5 Dec 05 03:18:42.988 INFO [stderr] | Dec 05 03:18:42.988 INFO [stderr] 200 | / fn SHR (&mut self, x: u16) { Dec 05 03:18:42.988 INFO [stderr] 201 | | println!("SHR {}", x); Dec 05 03:18:42.988 INFO [stderr] 202 | | self.V[0xF] = self.V[x as usize] & 0x1; Dec 05 03:18:42.988 INFO [stderr] 203 | | self.V[x as usize] >>= 1; Dec 05 03:18:42.988 INFO [stderr] 204 | | } Dec 05 03:18:42.988 INFO [stderr] | |_____^ Dec 05 03:18:42.988 INFO [stderr] Dec 05 03:18:42.988 INFO [stderr] warning: method `SUBN` should have a snake case name such as `subn` Dec 05 03:18:42.988 INFO [stderr] --> src/CPU.rs:206:5 Dec 05 03:18:42.988 INFO [stderr] | Dec 05 03:18:42.988 INFO [stderr] 206 | / fn SUBN (&mut self, x: u16, y: u16) { Dec 05 03:18:42.988 INFO [stderr] 207 | | println!("SUB {} {}", x, y); Dec 05 03:18:42.988 INFO [stderr] 208 | | if self.V[y as usize] > self.V[x as usize] { Dec 05 03:18:42.988 INFO [stderr] 209 | | self.V[0xF] = 1; Dec 05 03:18:42.988 INFO [stderr] ... | Dec 05 03:18:42.988 INFO [stderr] 213 | | self.V[x as usize] -= self.V[y as usize]; Dec 05 03:18:42.988 INFO [stderr] 214 | | } Dec 05 03:18:42.988 INFO [stderr] | |_____^ Dec 05 03:18:42.988 INFO [stderr] Dec 05 03:18:42.988 INFO [stderr] warning: method `SHL` should have a snake case name such as `shl` Dec 05 03:18:42.988 INFO [stderr] --> src/CPU.rs:216:5 Dec 05 03:18:42.988 INFO [stderr] | Dec 05 03:18:42.988 INFO [stderr] 216 | / fn SHL (&mut self, x: u16) { Dec 05 03:18:42.988 INFO [stderr] 217 | | println!("SHL {}", x); Dec 05 03:18:42.988 INFO [stderr] 218 | | self.V[0xF] = self.V[x as usize] & 0x80; Dec 05 03:18:42.988 INFO [stderr] 219 | | self.V[x as usize] <<= 1; Dec 05 03:18:42.988 INFO [stderr] 220 | | } Dec 05 03:18:42.988 INFO [stderr] | |_____^ Dec 05 03:18:42.988 INFO [stderr] Dec 05 03:18:42.988 INFO [stderr] warning: method `SNE_xy` should have a snake case name such as `sne_xy` Dec 05 03:18:42.988 INFO [stderr] --> src/CPU.rs:222:5 Dec 05 03:18:42.988 INFO [stderr] | Dec 05 03:18:42.988 INFO [stderr] 222 | / fn SNE_xy (&mut self, x: u16, y: u16) { Dec 05 03:18:42.988 INFO [stderr] 223 | | println!("SNE_xy {} {}", x, y); Dec 05 03:18:42.988 INFO [stderr] 224 | | if self.V[x as usize] == self.V[y as usize] { Dec 05 03:18:42.988 INFO [stderr] 225 | | self.program_counter += 2; Dec 05 03:18:42.988 INFO [stderr] 226 | | } Dec 05 03:18:42.988 INFO [stderr] 227 | | } Dec 05 03:18:42.988 INFO [stderr] | |_____^ Dec 05 03:18:42.988 INFO [stderr] Dec 05 03:18:42.988 INFO [stderr] warning: method `LD_I` should have a snake case name such as `ld_i` Dec 05 03:18:42.988 INFO [stderr] --> src/CPU.rs:229:5 Dec 05 03:18:42.988 INFO [stderr] | Dec 05 03:18:42.988 INFO [stderr] 229 | / fn LD_I (&mut self, nnn: u16) { Dec 05 03:18:42.988 INFO [stderr] 230 | | println!("LD_I {}", nnn); Dec 05 03:18:42.988 INFO [stderr] 231 | | self.index_register = nnn; Dec 05 03:18:42.988 INFO [stderr] 232 | | } Dec 05 03:18:42.988 INFO [stderr] | |_____^ Dec 05 03:18:42.988 INFO [stderr] Dec 05 03:18:42.988 INFO [stderr] warning: method `JP_V0` should have a snake case name such as `jp_v0` Dec 05 03:18:42.988 INFO [stderr] --> src/CPU.rs:234:5 Dec 05 03:18:42.988 INFO [stderr] | Dec 05 03:18:42.988 INFO [stderr] 234 | / fn JP_V0 (&mut self, nnn: u16) { Dec 05 03:18:42.988 INFO [stderr] 235 | | println!("JP_V0 {}", nnn); Dec 05 03:18:42.988 INFO [stderr] 236 | | self.program_counter = (self.V[0] + nnn as u8).into(); Dec 05 03:18:42.988 INFO [stderr] 237 | | } Dec 05 03:18:42.988 INFO [stderr] | |_____^ Dec 05 03:18:42.988 INFO [stderr] Dec 05 03:18:42.988 INFO [stderr] warning: method `RND` should have a snake case name such as `rnd` Dec 05 03:18:42.988 INFO [stderr] --> src/CPU.rs:239:5 Dec 05 03:18:42.988 INFO [stderr] | Dec 05 03:18:42.989 INFO [stderr] 239 | / fn RND (&mut self, x: u16, kk: u16) { Dec 05 03:18:42.989 INFO [stderr] 240 | | println!("RND {} {}", x, kk); Dec 05 03:18:42.989 INFO [stderr] 241 | | self.V[x as usize] = (thread_rng().gen_range(0, 255) as u16 & kk) as u8; Dec 05 03:18:42.989 INFO [stderr] 242 | | } Dec 05 03:18:42.989 INFO [stderr] | |_____^ Dec 05 03:18:42.989 INFO [stderr] Dec 05 03:18:42.989 INFO [stderr] warning: method `SKP` should have a snake case name such as `skp` Dec 05 03:18:42.989 INFO [stderr] --> src/CPU.rs:244:5 Dec 05 03:18:42.989 INFO [stderr] | Dec 05 03:18:42.989 INFO [stderr] 244 | / fn SKP (&mut self, x: u16) { Dec 05 03:18:42.989 INFO [stderr] 245 | | println!("SKP {}", x); Dec 05 03:18:42.989 INFO [stderr] 246 | | if true { Dec 05 03:18:42.989 INFO [stderr] 247 | | // self.program_counter += 2; Dec 05 03:18:42.989 INFO [stderr] 248 | | } Dec 05 03:18:42.989 INFO [stderr] 249 | | } Dec 05 03:18:42.989 INFO [stderr] | |_____^ Dec 05 03:18:42.989 INFO [stderr] Dec 05 03:18:42.989 INFO [stderr] warning: method `SKNP` should have a snake case name such as `sknp` Dec 05 03:18:42.989 INFO [stderr] --> src/CPU.rs:251:5 Dec 05 03:18:42.989 INFO [stderr] | Dec 05 03:18:42.989 INFO [stderr] 251 | / fn SKNP (&mut self, x: u16) { Dec 05 03:18:42.989 INFO [stderr] 252 | | println!("SKNP {}", x); Dec 05 03:18:42.989 INFO [stderr] 253 | | if true { Dec 05 03:18:42.989 INFO [stderr] 254 | | // self.program_counter += 2; Dec 05 03:18:42.989 INFO [stderr] 255 | | } Dec 05 03:18:42.989 INFO [stderr] 256 | | } Dec 05 03:18:42.989 INFO [stderr] | |_____^ Dec 05 03:18:42.989 INFO [stderr] Dec 05 03:18:43.011 INFO [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1m 14s Dec 05 03:18:43.031 INFO [stderr] su: No module specific data is present Dec 05 03:18:43.516 INFO running `"docker" "inspect" "989b0289c2691810c6ca8674d8605bb0ee1e7d98e73e883d807060261fa53798"` Dec 05 03:18:43.620 INFO running `"docker" "rm" "-f" "989b0289c2691810c6ca8674d8605bb0ee1e7d98e73e883d807060261fa53798"` Dec 05 03:18:43.828 INFO [stdout] 989b0289c2691810c6ca8674d8605bb0ee1e7d98e73e883d807060261fa53798