[INFO] cloning repository https://github.com/Hugobros3/nes
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Hugobros3/nes" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FHugobros3%2Fnes", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FHugobros3%2Fnes'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] ca1cf64e5a9475f6b38edd63f229550f149aa003
[INFO] checking Hugobros3/nes against try#79452e8441468c5568c20bfca2aa1fe75b645b2d for pr-152210
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FHugobros3%2Fnes" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Hugobros3/nes
[INFO] finished tweaking git repo https://github.com/Hugobros3/nes
[INFO] tweaked toml for git repo https://github.com/Hugobros3/nes written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Hugobros3/nes on toolchain 79452e8441468c5568c20bfca2aa1fe75b645b2d
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+79452e8441468c5568c20bfca2aa1fe75b645b2d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Hugobros3/nes already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+79452e8441468c5568c20bfca2aa1fe75b645b2d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded autocfg v0.1.6
[INFO] [stderr]   Downloaded minifb v0.13.0
[INFO] [stderr]   Downloaded pkg-config v0.3.16
[INFO] [stderr]   Downloaded c2-chacha v0.2.2
[INFO] [stderr]   Downloaded x11-dl v2.18.4
[INFO] [stderr]   Downloaded ppv-lite86 v0.2.5
[INFO] [stderr]   Downloaded getrandom v0.1.12
[INFO] [stderr]   Downloaded spin_sleep v0.3.7
[INFO] [stderr]   Downloaded coreaudio-sys v0.2.3
[INFO] [stderr]   Downloaded bf-impl v1.0.0
[INFO] [stderr]   Downloaded rustc-hash v1.0.1
[INFO] [stderr]   Downloaded bitutils v3.0.0
[INFO] [stderr]   Downloaded num-iter v0.1.39
[INFO] [stderr]   Downloaded synstructure v0.12.1
[INFO] [stderr]   Downloaded alsa-sys v0.1.2
[INFO] [stderr]   Downloaded cc v1.0.45
[INFO] [stderr]   Downloaded clang-sys v0.28.1
[INFO] [stderr]   Downloaded cpal v0.10.0
[INFO] [stderr]   Downloaded proc-macro2 v1.0.5
[INFO] [stderr]   Downloaded backtrace v0.3.38
[INFO] [stderr]   Downloaded coreaudio-rs v0.9.1
[INFO] [stderr]   Downloaded num-integer v0.1.41
[INFO] [stderr]   Downloaded bindgen v0.51.1
[INFO] [stderr]   Downloaded syn v1.0.5
[INFO] [stderr]   Downloaded backtrace-sys v0.1.31
[INFO] [stderr]   Downloaded orbclient v0.3.27
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+79452e8441468c5568c20bfca2aa1fe75b645b2d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 8bd212ad2445ba0a8eec90631a1b4507116a7e415ba2944b0e5ef9774085245e
[INFO] running `Command { std: "docker" "start" "-a" "8bd212ad2445ba0a8eec90631a1b4507116a7e415ba2944b0e5ef9774085245e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8bd212ad2445ba0a8eec90631a1b4507116a7e415ba2944b0e5ef9774085245e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8bd212ad2445ba0a8eec90631a1b4507116a7e415ba2944b0e5ef9774085245e", kill_on_drop: false }`
[INFO] [stdout] 8bd212ad2445ba0a8eec90631a1b4507116a7e415ba2944b0e5ef9774085245e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+79452e8441468c5568c20bfca2aa1fe75b645b2d" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ea359ca18947dc9e52e64672cb8caec26ecdb0ddb5594a70cd16145e1b47e9ab
[INFO] running `Command { std: "docker" "start" "-a" "ea359ca18947dc9e52e64672cb8caec26ecdb0ddb5594a70cd16145e1b47e9ab", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.62
[INFO] [stderr]    Compiling cc v1.0.45
[INFO] [stderr]    Compiling pkg-config v0.3.16
[INFO] [stderr]    Compiling proc-macro2 v1.0.5
[INFO] [stderr]    Compiling syn v1.0.5
[INFO] [stderr]    Compiling proc-macro2 v0.4.30
[INFO] [stderr]    Compiling getrandom v0.1.12
[INFO] [stderr]    Compiling autocfg v0.1.6
[INFO] [stderr]    Compiling syn v0.15.44
[INFO] [stderr]    Compiling failure_derive v0.1.6
[INFO] [stderr]     Checking ppv-lite86 v0.2.5
[INFO] [stderr]     Checking rustc-demangle v0.1.16
[INFO] [stderr]    Compiling cpal v0.10.0
[INFO] [stderr]     Checking cast v0.2.2
[INFO] [stderr]     Checking spin_sleep v0.3.7
[INFO] [stderr]     Checking hex v0.3.2
[INFO] [stderr]    Compiling num-traits v0.2.8
[INFO] [stderr]    Compiling alsa-sys v0.1.2
[INFO] [stderr]    Compiling x11-dl v2.18.4
[INFO] [stderr]     Checking c2-chacha v0.2.2
[INFO] [stderr]     Checking time v0.1.42
[INFO] [stderr]    Compiling backtrace-sys v0.1.31
[INFO] [stderr]    Compiling minifb v0.13.0
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]    Compiling quote v0.6.13
[INFO] [stderr]    Compiling quote v1.0.2
[INFO] [stderr]     Checking rand_chacha v0.2.1
[INFO] [stderr]     Checking rand v0.7.2
[INFO] [stderr]     Checking backtrace v0.3.38
[INFO] [stderr]    Compiling bf-impl v1.0.0
[INFO] [stderr]    Compiling synstructure v0.12.1
[INFO] [stderr]     Checking bitutils v3.0.0
[INFO] [stderr]     Checking failure v0.1.6
[INFO] [stderr]     Checking nes v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `garbage_test`
[INFO] [stdout]   --> src/main.rs:13:49
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::apu::streaming_audio::{launch_sound, garbage_test};
[INFO] [stdout]    |                                                 ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::borrow::BorrowMut`
[INFO] [stdout]  --> src/cpu.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::borrow::BorrowMut;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/cpu/addressing_modes.rs:110:31
[INFO] [stdout]     |
[INFO] [stdout] 110 |     let additional_cycles = if(og_page != offseted_page) { 1 } else { 0 };
[INFO] [stdout]     |                               ^                        ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 110 -     let additional_cycles = if(og_page != offseted_page) { 1 } else { 0 };
[INFO] [stdout] 110 +     let additional_cycles = if og_page != offseted_page  { 1 } else { 0 };
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/cpu/addressing_modes.rs:127:31
[INFO] [stdout]     |
[INFO] [stdout] 127 |     let additional_cycles = if(og_page != offseted_page) { 1 } else { 0 };
[INFO] [stdout]     |                               ^                        ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 127 -     let additional_cycles = if(og_page != offseted_page) { 1 } else { 0 };
[INFO] [stdout] 127 +     let additional_cycles = if og_page != offseted_page  { 1 } else { 0 };
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/cpu/addressing_modes.rs:143:24
[INFO] [stdout]     |
[INFO] [stdout] 143 |     let address_hi = if(ptr_low == 0xFFu8) {
[INFO] [stdout]     |                        ^                 ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 143 -     let address_hi = if(ptr_low == 0xFFu8) {
[INFO] [stdout] 143 +     let address_hi = if ptr_low == 0xFFu8  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]    --> src/cpu/addressing_modes.rs:144:23
[INFO] [stdout]     |
[INFO] [stdout] 144 |          bus.cpu_read((ptr & 0xFF00), false)
[INFO] [stdout]     |                       ^            ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 144 -          bus.cpu_read((ptr & 0xFF00), false)
[INFO] [stdout] 144 +          bus.cpu_read(ptr & 0xFF00 , false)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::main`
[INFO] [stdout]  --> src/ppu.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::main;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::Debug`
[INFO] [stdout]  --> src/ppu.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::fmt::Debug;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicUsize` and `Ordering`
[INFO] [stdout]  --> src/ppu.rs:7:25
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::sync::atomic::{AtomicUsize, Ordering};
[INFO] [stdout]   |                         ^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::ppu::patterns_debug_viewer::PatternsDebugWindow`
[INFO] [stdout]  --> src/ppu/main_window.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::ppu::patterns_debug_viewer::PatternsDebugWindow;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Color`
[INFO] [stdout]  --> src/ppu/main_window.rs:3:33
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::ppu::window_common::{Color, pack};
[INFO] [stdout]   |                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]   --> src/ppu/main_window.rs:38:29
[INFO] [stdout]    |
[INFO] [stdout] 38 |                 self.buffer[(y as usize * width + x as usize)] = pack(rgb.0, rgb.1, rgb.2);
[INFO] [stdout]    |                             ^                               ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 38 -                 self.buffer[(y as usize * width + x as usize)] = pack(rgb.0, rgb.1, rgb.2);
[INFO] [stdout] 38 +                 self.buffer[y as usize * width + x as usize ] = pack(rgb.0, rgb.1, rgb.2);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]   --> src/ppu/patterns_debug_viewer.rs:59:29
[INFO] [stdout]    |
[INFO] [stdout] 59 |                 self.buffer[(y as usize * width + x as usize)] = pack(palette_rgb.0, palette_rgb.1, palette_rgb.2);
[INFO] [stdout]    |                             ^                               ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 59 -                 self.buffer[(y as usize * width + x as usize)] = pack(palette_rgb.0, palette_rgb.1, palette_rgb.2);
[INFO] [stdout] 59 +                 self.buffer[y as usize * width + x as usize ] = pack(palette_rgb.0, palette_rgb.1, palette_rgb.2);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]   --> src/ppu/nametables_debug_viewer.rs:57:45
[INFO] [stdout]    |
[INFO] [stdout] 57 | ...                   self.buffer[((y) as usize * (2 * 256) + (x) as usize)] = pack(palette_rgb.0, palette_rgb.1, palette_rgb.2);
[INFO] [stdout]    |                                   ^                                       ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 57 -                                 self.buffer[((y) as usize * (2 * 256) + (x) as usize)] = pack(palette_rgb.0, palette_rgb.1, palette_rgb.2);
[INFO] [stdout] 57 +                                 self.buffer[(y) as usize * (2 * 256) + (x) as usize ] = pack(palette_rgb.0, palette_rgb.1, palette_rgb.2);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]   --> src/ppu/window_common.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     (r << 16 | g << 8 | b << 0)
[INFO] [stdout]    |     ^                         ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 14 -     (r << 16 | g << 8 | b << 0)
[INFO] [stdout] 14 +     r << 16 | g << 8 | b << 0 
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]    --> src/ppu.rs:227:49
[INFO] [stdout]     |
[INFO] [stdout] 227 |                     self.tram_addr.set_coarse_x(((data >> 3) as u16));
[INFO] [stdout]     |                                                 ^                  ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 227 -                     self.tram_addr.set_coarse_x(((data >> 3) as u16));
[INFO] [stdout] 227 +                     self.tram_addr.set_coarse_x((data >> 3) as u16 );
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]    --> src/ppu.rs:231:49
[INFO] [stdout]     |
[INFO] [stdout] 231 |                     self.tram_addr.set_coarse_y(((data >> 3) as u16));
[INFO] [stdout]     |                                                 ^                  ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 231 -                     self.tram_addr.set_coarse_y(((data >> 3) as u16));
[INFO] [stdout] 231 +                     self.tram_addr.set_coarse_y((data >> 3) as u16 );
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/ppu.rs:247:39
[INFO] [stdout]     |
[INFO] [stdout] 247 |                 self.vram_addr.val += (if self.control.increment_mode() == 1 { 32 } else { 1 });
[INFO] [stdout]     |                                       ^                                                       ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 247 -                 self.vram_addr.val += (if self.control.increment_mode() == 1 { 32 } else { 1 });
[INFO] [stdout] 247 +                 self.vram_addr.val += if self.control.increment_mode() == 1 { 32 } else { 1 } ;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `StreamData` and `UnknownTypeOutputBuffer`
[INFO] [stdout]  --> src/apu/streaming_audio.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | use cpal::{StreamData, UnknownTypeOutputBuffer};
[INFO] [stdout]   |            ^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::UnsafeCell`
[INFO] [stdout]  --> src/apu/streaming_audio.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::cell::UnsafeCell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/apu/pulse_voice.rs:128:34
[INFO] [stdout]     |
[INFO] [stdout] 128 |                 self.register3 = ((shifter_result & 0xFF) as u8);
[INFO] [stdout]     |                                  ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 128 -                 self.register3 = ((shifter_result & 0xFF) as u8);
[INFO] [stdout] 128 +                 self.register3 = (shifter_result & 0xFF) as u8 ;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]   --> src/apu/apu_device.rs:91:47
[INFO] [stdout]    |
[INFO] [stdout] 91 |             self.square_voice1.write_register(((address & 0x03) as u8), data);
[INFO] [stdout]    |                                               ^                      ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 91 -             self.square_voice1.write_register(((address & 0x03) as u8), data);
[INFO] [stdout] 91 +             self.square_voice1.write_register((address & 0x03) as u8 , data);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]   --> src/apu/apu_device.rs:93:47
[INFO] [stdout]    |
[INFO] [stdout] 93 |             self.square_voice2.write_register(((address & 0x03) as u8), data);
[INFO] [stdout]    |                                               ^                      ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 93 -             self.square_voice2.write_register(((address & 0x03) as u8), data);
[INFO] [stdout] 93 +             self.square_voice2.write_register((address & 0x03) as u8 , data);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]   --> src/apu/apu_device.rs:95:48
[INFO] [stdout]    |
[INFO] [stdout] 95 |             self.triangle_voice.write_register(((address & 0x03) as u8), data);
[INFO] [stdout]    |                                                ^                      ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 95 -             self.triangle_voice.write_register(((address & 0x03) as u8), data);
[INFO] [stdout] 95 +             self.triangle_voice.write_register((address & 0x03) as u8 , data);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]   --> src/apu/apu_device.rs:97:45
[INFO] [stdout]    |
[INFO] [stdout] 97 |             self.noise_voice.write_register(((address & 0x03) as u8), data);
[INFO] [stdout]    |                                             ^                      ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 97 -             self.noise_voice.write_register(((address & 0x03) as u8), data);
[INFO] [stdout] 97 +             self.noise_voice.write_register((address & 0x03) as u8 , data);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/apu/apu_device.rs:224:29
[INFO] [stdout]     |
[INFO] [stdout] 224 |             let mut start = (((sample_length as f32 / bytes_req as f32) * (i as f32)) as usize);
[INFO] [stdout]     |                             ^                                                                 ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 224 -             let mut start = (((sample_length as f32 / bytes_req as f32) * (i as f32)) as usize);
[INFO] [stdout] 224 +             let mut start = ((sample_length as f32 / bytes_req as f32) * (i as f32)) as usize ;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/apu/apu_device.rs:225:27
[INFO] [stdout]     |
[INFO] [stdout] 225 |             let mut end = (((sample_length as f32 / bytes_req as f32) * (next as f32)) as usize);
[INFO] [stdout]     |                           ^                                                                    ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 225 -             let mut end = (((sample_length as f32 / bytes_req as f32) * (next as f32)) as usize);
[INFO] [stdout] 225 +             let mut end = ((sample_length as f32 / bytes_req as f32) * (next as f32)) as usize ;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BufRead`
[INFO] [stdout]  --> src/mappers/mapper4.rs:3:32
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::io::{Read, BufReader, BufRead};
[INFO] [stdout]   |                                ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/ines_loader.rs:38:28
[INFO] [stdout]    |
[INFO] [stdout] 38 |     let mirroring_mode = if(mirroring4s) { MirroringMode::FourScreen } else {
[INFO] [stdout]    |                            ^           ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 38 -     let mirroring_mode = if(mirroring4s) { MirroringMode::FourScreen } else {
[INFO] [stdout] 38 +     let mirroring_mode = if mirroring4s  { MirroringMode::FourScreen } else {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/ines_loader.rs:39:11
[INFO] [stdout]    |
[INFO] [stdout] 39 |         if(mirroring_hv) {
[INFO] [stdout]    |           ^            ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 39 -         if(mirroring_hv) {
[INFO] [stdout] 39 +         if mirroring_hv  {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `File`
[INFO] [stdout]  --> src/tools/dump_memory.rs:1:15
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fs::{File, OpenOptions};
[INFO] [stdout]   |               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BufReader`
[INFO] [stdout]  --> src/tools/dump_memory.rs:2:15
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::io::{BufReader, BufWriter, Write};
[INFO] [stdout]   |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `garbage_test`
[INFO] [stdout]   --> src/main.rs:13:49
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::apu::streaming_audio::{launch_sound, garbage_test};
[INFO] [stdout]    |                                                 ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::borrow::BorrowMut`
[INFO] [stdout]  --> src/cpu.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::borrow::BorrowMut;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/cpu/addressing_modes.rs:110:31
[INFO] [stdout]     |
[INFO] [stdout] 110 |     let additional_cycles = if(og_page != offseted_page) { 1 } else { 0 };
[INFO] [stdout]     |                               ^                        ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 110 -     let additional_cycles = if(og_page != offseted_page) { 1 } else { 0 };
[INFO] [stdout] 110 +     let additional_cycles = if og_page != offseted_page  { 1 } else { 0 };
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/cpu/addressing_modes.rs:127:31
[INFO] [stdout]     |
[INFO] [stdout] 127 |     let additional_cycles = if(og_page != offseted_page) { 1 } else { 0 };
[INFO] [stdout]     |                               ^                        ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 127 -     let additional_cycles = if(og_page != offseted_page) { 1 } else { 0 };
[INFO] [stdout] 127 +     let additional_cycles = if og_page != offseted_page  { 1 } else { 0 };
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/cpu/addressing_modes.rs:143:24
[INFO] [stdout]     |
[INFO] [stdout] 143 |     let address_hi = if(ptr_low == 0xFFu8) {
[INFO] [stdout]     |                        ^                 ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 143 -     let address_hi = if(ptr_low == 0xFFu8) {
[INFO] [stdout] 143 +     let address_hi = if ptr_low == 0xFFu8  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]    --> src/cpu/addressing_modes.rs:144:23
[INFO] [stdout]     |
[INFO] [stdout] 144 |          bus.cpu_read((ptr & 0xFF00), false)
[INFO] [stdout]     |                       ^            ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 144 -          bus.cpu_read((ptr & 0xFF00), false)
[INFO] [stdout] 144 +          bus.cpu_read(ptr & 0xFF00 , false)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::main`
[INFO] [stdout]  --> src/ppu.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::main;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::Debug`
[INFO] [stdout]  --> src/ppu.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::fmt::Debug;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicUsize` and `Ordering`
[INFO] [stdout]  --> src/ppu.rs:7:25
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::sync::atomic::{AtomicUsize, Ordering};
[INFO] [stdout]   |                         ^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::ppu::patterns_debug_viewer::PatternsDebugWindow`
[INFO] [stdout]  --> src/ppu/main_window.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::ppu::patterns_debug_viewer::PatternsDebugWindow;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Color`
[INFO] [stdout]  --> src/ppu/main_window.rs:3:33
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::ppu::window_common::{Color, pack};
[INFO] [stdout]   |                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]   --> src/ppu/main_window.rs:38:29
[INFO] [stdout]    |
[INFO] [stdout] 38 |                 self.buffer[(y as usize * width + x as usize)] = pack(rgb.0, rgb.1, rgb.2);
[INFO] [stdout]    |                             ^                               ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 38 -                 self.buffer[(y as usize * width + x as usize)] = pack(rgb.0, rgb.1, rgb.2);
[INFO] [stdout] 38 +                 self.buffer[y as usize * width + x as usize ] = pack(rgb.0, rgb.1, rgb.2);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]   --> src/ppu/patterns_debug_viewer.rs:59:29
[INFO] [stdout]    |
[INFO] [stdout] 59 |                 self.buffer[(y as usize * width + x as usize)] = pack(palette_rgb.0, palette_rgb.1, palette_rgb.2);
[INFO] [stdout]    |                             ^                               ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 59 -                 self.buffer[(y as usize * width + x as usize)] = pack(palette_rgb.0, palette_rgb.1, palette_rgb.2);
[INFO] [stdout] 59 +                 self.buffer[y as usize * width + x as usize ] = pack(palette_rgb.0, palette_rgb.1, palette_rgb.2);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]   --> src/ppu/nametables_debug_viewer.rs:57:45
[INFO] [stdout]    |
[INFO] [stdout] 57 | ...                   self.buffer[((y) as usize * (2 * 256) + (x) as usize)] = pack(palette_rgb.0, palette_rgb.1, palette_rgb.2);
[INFO] [stdout]    |                                   ^                                       ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 57 -                                 self.buffer[((y) as usize * (2 * 256) + (x) as usize)] = pack(palette_rgb.0, palette_rgb.1, palette_rgb.2);
[INFO] [stdout] 57 +                                 self.buffer[(y) as usize * (2 * 256) + (x) as usize ] = pack(palette_rgb.0, palette_rgb.1, palette_rgb.2);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]   --> src/ppu/window_common.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     (r << 16 | g << 8 | b << 0)
[INFO] [stdout]    |     ^                         ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 14 -     (r << 16 | g << 8 | b << 0)
[INFO] [stdout] 14 +     r << 16 | g << 8 | b << 0 
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]    --> src/ppu.rs:227:49
[INFO] [stdout]     |
[INFO] [stdout] 227 |                     self.tram_addr.set_coarse_x(((data >> 3) as u16));
[INFO] [stdout]     |                                                 ^                  ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 227 -                     self.tram_addr.set_coarse_x(((data >> 3) as u16));
[INFO] [stdout] 227 +                     self.tram_addr.set_coarse_x((data >> 3) as u16 );
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]    --> src/ppu.rs:231:49
[INFO] [stdout]     |
[INFO] [stdout] 231 |                     self.tram_addr.set_coarse_y(((data >> 3) as u16));
[INFO] [stdout]     |                                                 ^                  ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 231 -                     self.tram_addr.set_coarse_y(((data >> 3) as u16));
[INFO] [stdout] 231 +                     self.tram_addr.set_coarse_y((data >> 3) as u16 );
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/ppu.rs:247:39
[INFO] [stdout]     |
[INFO] [stdout] 247 |                 self.vram_addr.val += (if self.control.increment_mode() == 1 { 32 } else { 1 });
[INFO] [stdout]     |                                       ^                                                       ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 247 -                 self.vram_addr.val += (if self.control.increment_mode() == 1 { 32 } else { 1 });
[INFO] [stdout] 247 +                 self.vram_addr.val += if self.control.increment_mode() == 1 { 32 } else { 1 } ;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `StreamData` and `UnknownTypeOutputBuffer`
[INFO] [stdout]  --> src/apu/streaming_audio.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | use cpal::{StreamData, UnknownTypeOutputBuffer};
[INFO] [stdout]   |            ^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::UnsafeCell`
[INFO] [stdout]  --> src/apu/streaming_audio.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::cell::UnsafeCell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/apu/pulse_voice.rs:128:34
[INFO] [stdout]     |
[INFO] [stdout] 128 |                 self.register3 = ((shifter_result & 0xFF) as u8);
[INFO] [stdout]     |                                  ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 128 -                 self.register3 = ((shifter_result & 0xFF) as u8);
[INFO] [stdout] 128 +                 self.register3 = (shifter_result & 0xFF) as u8 ;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]   --> src/apu/apu_device.rs:91:47
[INFO] [stdout]    |
[INFO] [stdout] 91 |             self.square_voice1.write_register(((address & 0x03) as u8), data);
[INFO] [stdout]    |                                               ^                      ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 91 -             self.square_voice1.write_register(((address & 0x03) as u8), data);
[INFO] [stdout] 91 +             self.square_voice1.write_register((address & 0x03) as u8 , data);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]   --> src/apu/apu_device.rs:93:47
[INFO] [stdout]    |
[INFO] [stdout] 93 |             self.square_voice2.write_register(((address & 0x03) as u8), data);
[INFO] [stdout]    |                                               ^                      ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 93 -             self.square_voice2.write_register(((address & 0x03) as u8), data);
[INFO] [stdout] 93 +             self.square_voice2.write_register((address & 0x03) as u8 , data);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]   --> src/apu/apu_device.rs:95:48
[INFO] [stdout]    |
[INFO] [stdout] 95 |             self.triangle_voice.write_register(((address & 0x03) as u8), data);
[INFO] [stdout]    |                                                ^                      ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 95 -             self.triangle_voice.write_register(((address & 0x03) as u8), data);
[INFO] [stdout] 95 +             self.triangle_voice.write_register((address & 0x03) as u8 , data);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]   --> src/apu/apu_device.rs:97:45
[INFO] [stdout]    |
[INFO] [stdout] 97 |             self.noise_voice.write_register(((address & 0x03) as u8), data);
[INFO] [stdout]    |                                             ^                      ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 97 -             self.noise_voice.write_register(((address & 0x03) as u8), data);
[INFO] [stdout] 97 +             self.noise_voice.write_register((address & 0x03) as u8 , data);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/apu/apu_device.rs:224:29
[INFO] [stdout]     |
[INFO] [stdout] 224 |             let mut start = (((sample_length as f32 / bytes_req as f32) * (i as f32)) as usize);
[INFO] [stdout]     |                             ^                                                                 ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 224 -             let mut start = (((sample_length as f32 / bytes_req as f32) * (i as f32)) as usize);
[INFO] [stdout] 224 +             let mut start = ((sample_length as f32 / bytes_req as f32) * (i as f32)) as usize ;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/apu/apu_device.rs:225:27
[INFO] [stdout]     |
[INFO] [stdout] 225 |             let mut end = (((sample_length as f32 / bytes_req as f32) * (next as f32)) as usize);
[INFO] [stdout]     |                           ^                                                                    ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 225 -             let mut end = (((sample_length as f32 / bytes_req as f32) * (next as f32)) as usize);
[INFO] [stdout] 225 +             let mut end = ((sample_length as f32 / bytes_req as f32) * (next as f32)) as usize ;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BufRead`
[INFO] [stdout]  --> src/mappers/mapper4.rs:3:32
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::io::{Read, BufReader, BufRead};
[INFO] [stdout]   |                                ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/ines_loader.rs:38:28
[INFO] [stdout]    |
[INFO] [stdout] 38 |     let mirroring_mode = if(mirroring4s) { MirroringMode::FourScreen } else {
[INFO] [stdout]    |                            ^           ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 38 -     let mirroring_mode = if(mirroring4s) { MirroringMode::FourScreen } else {
[INFO] [stdout] 38 +     let mirroring_mode = if mirroring4s  { MirroringMode::FourScreen } else {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/ines_loader.rs:39:11
[INFO] [stdout]    |
[INFO] [stdout] 39 |         if(mirroring_hv) {
[INFO] [stdout]    |           ^            ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 39 -         if(mirroring_hv) {
[INFO] [stdout] 39 +         if mirroring_hv  {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `File`
[INFO] [stdout]  --> src/tools/dump_memory.rs:1:15
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fs::{File, OpenOptions};
[INFO] [stdout]   |               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BufReader`
[INFO] [stdout]  --> src/tools/dump_memory.rs:2:15
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::io::{BufReader, BufWriter, Write};
[INFO] [stdout]   |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0080]: attempt to shift left by `8_i32`, which would overflow
[INFO] [stdout]   --> src/apu/apu_device.rs:19:1
[INFO] [stdout]    |
[INFO] [stdout] 19 | / bf!(DmcReg3[u8] {
[INFO] [stdout] 20 | |     sample_address: 0:7,
[INFO] [stdout] 21 | | });
[INFO] [stdout]    | |__^ evaluation of `apu::apu_device::DmcReg3::sample_address::BASE_MASK` failed here
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::bf_inner` which comes from the expansion of the macro `bf` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0080]: attempt to shift left by `8_i32`, which would overflow
[INFO] [stdout]   --> src/apu/apu_device.rs:19:1
[INFO] [stdout]    |
[INFO] [stdout] 19 | / bf!(DmcReg3[u8] {
[INFO] [stdout] 20 | |     sample_address: 0:7,
[INFO] [stdout] 21 | | });
[INFO] [stdout]    | |__^ evaluation of `apu::apu_device::DmcReg3::set_sample_address::BASE_MASK` failed here
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::bf_inner` which comes from the expansion of the macro `bf` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0080]: attempt to shift left by `8_i32`, which would overflow
[INFO] [stdout]   --> src/apu/apu_device.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | / bf!(DmcReg4[u8] {
[INFO] [stdout] 23 | |     sample_length: 0:7,
[INFO] [stdout] 24 | | });
[INFO] [stdout]    | |__^ evaluation of `apu::apu_device::DmcReg4::sample_length::BASE_MASK` failed here
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::bf_inner` which comes from the expansion of the macro `bf` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0080]: attempt to shift left by `8_i32`, which would overflow
[INFO] [stdout]   --> src/apu/apu_device.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | / bf!(DmcReg4[u8] {
[INFO] [stdout] 23 | |     sample_length: 0:7,
[INFO] [stdout] 24 | | });
[INFO] [stdout]    | |__^ evaluation of `apu::apu_device::DmcReg4::set_sample_length::BASE_MASK` failed here
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::bf_inner` which comes from the expansion of the macro `bf` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0080]: attempt to shift left by `8_i32`, which would overflow
[INFO] [stdout]   --> src/apu/apu_device.rs:19:1
[INFO] [stdout]    |
[INFO] [stdout] 19 | / bf!(DmcReg3[u8] {
[INFO] [stdout] 20 | |     sample_address: 0:7,
[INFO] [stdout] 21 | | });
[INFO] [stdout]    | |__^ evaluation of `apu::apu_device::DmcReg3::sample_address::BASE_MASK` failed here
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::bf_inner` which comes from the expansion of the macro `bf` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0080]: attempt to shift left by `8_i32`, which would overflow
[INFO] [stdout]   --> src/apu/apu_device.rs:19:1
[INFO] [stdout]    |
[INFO] [stdout] 19 | / bf!(DmcReg3[u8] {
[INFO] [stdout] 20 | |     sample_address: 0:7,
[INFO] [stdout] 21 | | });
[INFO] [stdout]    | |__^ evaluation of `apu::apu_device::DmcReg3::set_sample_address::BASE_MASK` failed here
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::bf_inner` which comes from the expansion of the macro `bf` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0080]: attempt to shift left by `8_i32`, which would overflow
[INFO] [stdout]   --> src/apu/apu_device.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | / bf!(DmcReg4[u8] {
[INFO] [stdout] 23 | |     sample_length: 0:7,
[INFO] [stdout] 24 | | });
[INFO] [stdout]    | |__^ evaluation of `apu::apu_device::DmcReg4::sample_length::BASE_MASK` failed here
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::bf_inner` which comes from the expansion of the macro `bf` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0080]: attempt to shift left by `8_i32`, which would overflow
[INFO] [stdout]   --> src/apu/apu_device.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | / bf!(DmcReg4[u8] {
[INFO] [stdout] 23 | |     sample_length: 0:7,
[INFO] [stdout] 24 | | });
[INFO] [stdout]    | |__^ evaluation of `apu::apu_device::DmcReg4::set_sample_length::BASE_MASK` failed here
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::bf_inner` which comes from the expansion of the macro `bf` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]   --> src/cpu/addressing_modes.rs:56:30
[INFO] [stdout]    |
[INFO] [stdout] 56 | fn am_implied(cpu: &mut Cpu, bus: &Bus) -> AddressingResult {
[INFO] [stdout]    |                              ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu`
[INFO] [stdout]    --> src/cpu/addressing_modes.rs:205:25
[INFO] [stdout]     |
[INFO] [stdout] 205 |     pub fn fetch(&self, cpu: &mut Cpu, bus: &Bus) -> u8 {
[INFO] [stdout]     |                         ^^^ help: if this is intentional, prefix it with an underscore: `_cpu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cycles`
[INFO] [stdout]    --> src/cpu/addressing_modes.rs:210:51
[INFO] [stdout]     |
[INFO] [stdout] 210 |             AddressingResult::ReadFrom { address, cycles } => {
[INFO] [stdout]     |                                                   ^^^^^^ help: try ignoring the field: `cycles: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu`
[INFO] [stdout]    --> src/cpu/addressing_modes.rs:220:30
[INFO] [stdout]     |
[INFO] [stdout] 220 |     pub fn offset_rel(&self, cpu: &mut Cpu, bus: &Bus) -> u16 {
[INFO] [stdout]     |                              ^^^ help: if this is intentional, prefix it with an underscore: `_cpu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/addressing_modes.rs:220:45
[INFO] [stdout]     |
[INFO] [stdout] 220 |     pub fn offset_rel(&self, cpu: &mut Cpu, bus: &Bus) -> u16 {
[INFO] [stdout]     |                                             ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu`
[INFO] [stdout]    --> src/cpu/addressing_modes.rs:232:27
[INFO] [stdout]     |
[INFO] [stdout] 232 |     pub fn address(&self, cpu: &mut Cpu, bus: &Bus) -> u16 {
[INFO] [stdout]     |                           ^^^ help: if this is intentional, prefix it with an underscore: `_cpu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/addressing_modes.rs:232:42
[INFO] [stdout]     |
[INFO] [stdout] 232 |     pub fn address(&self, cpu: &mut Cpu, bus: &Bus) -> u16 {
[INFO] [stdout]     |                                          ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu`
[INFO] [stdout]    --> src/cpu/instructions.rs:290:8
[INFO] [stdout]     |
[INFO] [stdout] 290 | fn XXX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |        ^^^ help: if this is intentional, prefix it with an underscore: `_cpu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/instructions.rs:290:23
[INFO] [stdout]     |
[INFO] [stdout] 290 | fn XXX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:290:34
[INFO] [stdout]     |
[INFO] [stdout] 290 | fn XXX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:290:61
[INFO] [stdout]     |
[INFO] [stdout] 290 | fn XXX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:295:34
[INFO] [stdout]     |
[INFO] [stdout] 295 | fn JMP(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:301:34
[INFO] [stdout]     |
[INFO] [stdout] 301 | fn BCS(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:320:34
[INFO] [stdout]     |
[INFO] [stdout] 320 | fn BCC(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:339:34
[INFO] [stdout]     |
[INFO] [stdout] 339 | fn BEQ(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:416:34
[INFO] [stdout]     |
[INFO] [stdout] 416 | fn BVS(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:435:34
[INFO] [stdout]     |
[INFO] [stdout] 435 | fn BVC(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/instructions.rs:454:23
[INFO] [stdout]     |
[INFO] [stdout] 454 | fn CLC(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:454:34
[INFO] [stdout]     |
[INFO] [stdout] 454 | fn CLC(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:454:61
[INFO] [stdout]     |
[INFO] [stdout] 454 | fn CLC(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/instructions.rs:461:23
[INFO] [stdout]     |
[INFO] [stdout] 461 | fn CLD(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:461:34
[INFO] [stdout]     |
[INFO] [stdout] 461 | fn CLD(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:461:61
[INFO] [stdout]     |
[INFO] [stdout] 461 | fn CLD(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/instructions.rs:468:23
[INFO] [stdout]     |
[INFO] [stdout] 468 | fn CLI(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:468:34
[INFO] [stdout]     |
[INFO] [stdout] 468 | fn CLI(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:468:61
[INFO] [stdout]     |
[INFO] [stdout] 468 | fn CLI(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/instructions.rs:475:23
[INFO] [stdout]     |
[INFO] [stdout] 475 | fn CLV(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:475:34
[INFO] [stdout]     |
[INFO] [stdout] 475 | fn CLV(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:475:61
[INFO] [stdout]     |
[INFO] [stdout] 475 | fn CLV(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/instructions.rs:482:23
[INFO] [stdout]     |
[INFO] [stdout] 482 | fn SEC(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:482:34
[INFO] [stdout]     |
[INFO] [stdout] 482 | fn SEC(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:482:61
[INFO] [stdout]     |
[INFO] [stdout] 482 | fn SEC(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/instructions.rs:489:23
[INFO] [stdout]     |
[INFO] [stdout] 489 | fn SED(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:489:34
[INFO] [stdout]     |
[INFO] [stdout] 489 | fn SED(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:489:61
[INFO] [stdout]     |
[INFO] [stdout] 489 | fn SED(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/instructions.rs:496:23
[INFO] [stdout]     |
[INFO] [stdout] 496 | fn SEI(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:496:34
[INFO] [stdout]     |
[INFO] [stdout] 496 | fn SEI(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:496:61
[INFO] [stdout]     |
[INFO] [stdout] 496 | fn SEI(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:503:34
[INFO] [stdout]     |
[INFO] [stdout] 503 | fn ADC(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:523:34
[INFO] [stdout]     |
[INFO] [stdout] 523 | fn SBC(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:543:34
[INFO] [stdout]     |
[INFO] [stdout] 543 | fn PHA(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:543:61
[INFO] [stdout]     |
[INFO] [stdout] 543 | fn PHA(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:550:34
[INFO] [stdout]     |
[INFO] [stdout] 550 | fn PLA(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:550:61
[INFO] [stdout]     |
[INFO] [stdout] 550 | fn PLA(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:563:34
[INFO] [stdout]     |
[INFO] [stdout] 563 | fn PHP(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:563:61
[INFO] [stdout]     |
[INFO] [stdout] 563 | fn PHP(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:575:34
[INFO] [stdout]     |
[INFO] [stdout] 575 | fn PLP(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:575:61
[INFO] [stdout]     |
[INFO] [stdout] 575 | fn PLP(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:584:34
[INFO] [stdout]     |
[INFO] [stdout] 584 | fn BRK(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:584:61
[INFO] [stdout]     |
[INFO] [stdout] 584 | fn BRK(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:614:34
[INFO] [stdout]     |
[INFO] [stdout] 614 | fn RTI(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:614:61
[INFO] [stdout]     |
[INFO] [stdout] 614 | fn RTI(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:632:34
[INFO] [stdout]     |
[INFO] [stdout] 632 | fn JSR(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:648:34
[INFO] [stdout]     |
[INFO] [stdout] 648 | fn RTS(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:648:61
[INFO] [stdout]     |
[INFO] [stdout] 648 | fn RTS(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:662:34
[INFO] [stdout]     |
[INFO] [stdout] 662 | fn STA(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:668:34
[INFO] [stdout]     |
[INFO] [stdout] 668 | fn STX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:674:34
[INFO] [stdout]     |
[INFO] [stdout] 674 | fn STY(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/instructions.rs:680:23
[INFO] [stdout]     |
[INFO] [stdout] 680 | fn TAX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:680:34
[INFO] [stdout]     |
[INFO] [stdout] 680 | fn TAX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:680:61
[INFO] [stdout]     |
[INFO] [stdout] 680 | fn TAX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/instructions.rs:691:23
[INFO] [stdout]     |
[INFO] [stdout] 691 | fn TAY(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:691:34
[INFO] [stdout]     |
[INFO] [stdout] 691 | fn TAY(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:691:61
[INFO] [stdout]     |
[INFO] [stdout] 691 | fn TAY(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/instructions.rs:702:23
[INFO] [stdout]     |
[INFO] [stdout] 702 | fn TSX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:702:34
[INFO] [stdout]     |
[INFO] [stdout] 702 | fn TSX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:702:61
[INFO] [stdout]     |
[INFO] [stdout] 702 | fn TSX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/instructions.rs:713:23
[INFO] [stdout]     |
[INFO] [stdout] 713 | fn TXA(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:713:34
[INFO] [stdout]     |
[INFO] [stdout] 713 | fn TXA(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:713:61
[INFO] [stdout]     |
[INFO] [stdout] 713 | fn TXA(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/instructions.rs:724:23
[INFO] [stdout]     |
[INFO] [stdout] 724 | fn TXS(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:724:34
[INFO] [stdout]     |
[INFO] [stdout] 724 | fn TXS(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:724:61
[INFO] [stdout]     |
[INFO] [stdout] 724 | fn TXS(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/instructions.rs:730:23
[INFO] [stdout]     |
[INFO] [stdout] 730 | fn TYA(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:730:34
[INFO] [stdout]     |
[INFO] [stdout] 730 | fn TYA(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:730:61
[INFO] [stdout]     |
[INFO] [stdout] 730 | fn TYA(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:740:34
[INFO] [stdout]     |
[INFO] [stdout] 740 | fn LDA(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:751:34
[INFO] [stdout]     |
[INFO] [stdout] 751 | fn LDX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:763:34
[INFO] [stdout]     |
[INFO] [stdout] 763 | fn LDY(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu`
[INFO] [stdout]    --> src/cpu/instructions.rs:775:8
[INFO] [stdout]     |
[INFO] [stdout] 775 | fn NOP(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |        ^^^ help: if this is intentional, prefix it with an underscore: `_cpu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/instructions.rs:775:23
[INFO] [stdout]     |
[INFO] [stdout] 775 | fn NOP(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:775:34
[INFO] [stdout]     |
[INFO] [stdout] 775 | fn NOP(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:775:61
[INFO] [stdout]     |
[INFO] [stdout] 775 | fn NOP(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:780:34
[INFO] [stdout]     |
[INFO] [stdout] 780 | fn AND(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:792:34
[INFO] [stdout]     |
[INFO] [stdout] 792 | fn ORA(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:804:34
[INFO] [stdout]     |
[INFO] [stdout] 804 | fn EOR(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:896:34
[INFO] [stdout]     |
[INFO] [stdout] 896 | fn BIT(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:910:34
[INFO] [stdout]     |
[INFO] [stdout] 910 | fn CMP(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:924:34
[INFO] [stdout]     |
[INFO] [stdout] 924 | fn CPX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:938:34
[INFO] [stdout]     |
[INFO] [stdout] 938 | fn CPY(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:952:34
[INFO] [stdout]     |
[INFO] [stdout] 952 | fn DEC(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/instructions.rs:965:23
[INFO] [stdout]     |
[INFO] [stdout] 965 | fn DEX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:965:34
[INFO] [stdout]     |
[INFO] [stdout] 965 | fn DEX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:965:61
[INFO] [stdout]     |
[INFO] [stdout] 965 | fn DEX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/instructions.rs:975:23
[INFO] [stdout]     |
[INFO] [stdout] 975 | fn DEY(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:975:34
[INFO] [stdout]     |
[INFO] [stdout] 975 | fn DEY(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:975:61
[INFO] [stdout]     |
[INFO] [stdout] 975 | fn DEY(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:985:34
[INFO] [stdout]     |
[INFO] [stdout] 985 | fn INC(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/instructions.rs:998:23
[INFO] [stdout]     |
[INFO] [stdout] 998 | fn INX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:998:34
[INFO] [stdout]     |
[INFO] [stdout] 998 | fn INX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:998:61
[INFO] [stdout]     |
[INFO] [stdout] 998 | fn INX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]     --> src/cpu/instructions.rs:1009:23
[INFO] [stdout]      |
[INFO] [stdout] 1009 | fn INY(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]      |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]     --> src/cpu/instructions.rs:1009:34
[INFO] [stdout]      |
[INFO] [stdout] 1009 | fn INY(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]      |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]     --> src/cpu/instructions.rs:1009:61
[INFO] [stdout]      |
[INFO] [stdout] 1009 | fn INY(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]      |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]   --> src/cpu/addressing_modes.rs:56:30
[INFO] [stdout]    |
[INFO] [stdout] 56 | fn am_implied(cpu: &mut Cpu, bus: &Bus) -> AddressingResult {
[INFO] [stdout]    |                              ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu`
[INFO] [stdout]    --> src/cpu/addressing_modes.rs:205:25
[INFO] [stdout]     |
[INFO] [stdout] 205 |     pub fn fetch(&self, cpu: &mut Cpu, bus: &Bus) -> u8 {
[INFO] [stdout]     |                         ^^^ help: if this is intentional, prefix it with an underscore: `_cpu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cycles`
[INFO] [stdout]    --> src/cpu/addressing_modes.rs:210:51
[INFO] [stdout]     |
[INFO] [stdout] 210 |             AddressingResult::ReadFrom { address, cycles } => {
[INFO] [stdout]     |                                                   ^^^^^^ help: try ignoring the field: `cycles: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hex_pc`
[INFO] [stdout]   --> src/cpu.rs:63:17
[INFO] [stdout]    |
[INFO] [stdout] 63 |             let hex_pc = hex::encode(fetching_from.to_be_bytes());
[INFO] [stdout]    |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_hex_pc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu`
[INFO] [stdout]    --> src/cpu/addressing_modes.rs:220:30
[INFO] [stdout]     |
[INFO] [stdout] 220 |     pub fn offset_rel(&self, cpu: &mut Cpu, bus: &Bus) -> u16 {
[INFO] [stdout]     |                              ^^^ help: if this is intentional, prefix it with an underscore: `_cpu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/addressing_modes.rs:220:45
[INFO] [stdout]     |
[INFO] [stdout] 220 |     pub fn offset_rel(&self, cpu: &mut Cpu, bus: &Bus) -> u16 {
[INFO] [stdout]     |                                             ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu`
[INFO] [stdout]    --> src/cpu/addressing_modes.rs:232:27
[INFO] [stdout]     |
[INFO] [stdout] 232 |     pub fn address(&self, cpu: &mut Cpu, bus: &Bus) -> u16 {
[INFO] [stdout]     |                           ^^^ help: if this is intentional, prefix it with an underscore: `_cpu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/addressing_modes.rs:232:42
[INFO] [stdout]     |
[INFO] [stdout] 232 |     pub fn address(&self, cpu: &mut Cpu, bus: &Bus) -> u16 {
[INFO] [stdout]     |                                          ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu`
[INFO] [stdout]    --> src/cpu/instructions.rs:290:8
[INFO] [stdout]     |
[INFO] [stdout] 290 | fn XXX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |        ^^^ help: if this is intentional, prefix it with an underscore: `_cpu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/instructions.rs:290:23
[INFO] [stdout]     |
[INFO] [stdout] 290 | fn XXX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:290:34
[INFO] [stdout]     |
[INFO] [stdout] 290 | fn XXX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:290:61
[INFO] [stdout]     |
[INFO] [stdout] 290 | fn XXX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:295:34
[INFO] [stdout]     |
[INFO] [stdout] 295 | fn JMP(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:301:34
[INFO] [stdout]     |
[INFO] [stdout] 301 | fn BCS(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:320:34
[INFO] [stdout]     |
[INFO] [stdout] 320 | fn BCC(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:339:34
[INFO] [stdout]     |
[INFO] [stdout] 339 | fn BEQ(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:416:34
[INFO] [stdout]     |
[INFO] [stdout] 416 | fn BVS(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:435:34
[INFO] [stdout]     |
[INFO] [stdout] 435 | fn BVC(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/ppu/main_window.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 |         let mut buffer: Vec<u32> = vec![0; (width * height) as usize];
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/ppu/main_window.rs:22:13
[INFO] [stdout]    |
[INFO] [stdout] 22 |         let mut window = Window::new("Output", width as usize, height as usize, options).unwrap_or_else(|e| { panic!("{}", e); });
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/instructions.rs:454:23
[INFO] [stdout]     |
[INFO] [stdout] 454 | fn CLC(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:454:34
[INFO] [stdout]     |
[INFO] [stdout] 454 | fn CLC(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:454:61
[INFO] [stdout]     |
[INFO] [stdout] 454 | fn CLC(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/instructions.rs:461:23
[INFO] [stdout]     |
[INFO] [stdout] 461 | fn CLD(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:461:34
[INFO] [stdout]     |
[INFO] [stdout] 461 | fn CLD(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `height`
[INFO] [stdout]   --> src/ppu/main_window.rs:35:13
[INFO] [stdout]    |
[INFO] [stdout] 35 |         let height = 240 as usize;
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:461:61
[INFO] [stdout]     |
[INFO] [stdout] 461 | fn CLD(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/instructions.rs:468:23
[INFO] [stdout]     |
[INFO] [stdout] 468 | fn CLI(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:468:34
[INFO] [stdout]     |
[INFO] [stdout] 468 | fn CLI(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:468:61
[INFO] [stdout]     |
[INFO] [stdout] 468 | fn CLI(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/ppu/patterns_debug_viewer.rs:16:13
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let mut buffer: Vec<u32> = vec![0; (width * height) as usize];
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/instructions.rs:475:23
[INFO] [stdout]     |
[INFO] [stdout] 475 | fn CLV(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/ppu/patterns_debug_viewer.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 | ...   let mut window = Window::new("Pattern tables", width as usize, height as usize, options).unwrap_or_else(|e| { panic!("{}", e);...
[INFO] [stdout]    |           ----^^^^^^
[INFO] [stdout]    |           |
[INFO] [stdout]    |           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:475:34
[INFO] [stdout]     |
[INFO] [stdout] 475 | fn CLV(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:475:61
[INFO] [stdout]     |
[INFO] [stdout] 475 | fn CLV(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/instructions.rs:482:23
[INFO] [stdout]     |
[INFO] [stdout] 482 | fn SEC(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:482:34
[INFO] [stdout]     |
[INFO] [stdout] 482 | fn SEC(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:482:61
[INFO] [stdout]     |
[INFO] [stdout] 482 | fn SEC(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/instructions.rs:489:23
[INFO] [stdout]     |
[INFO] [stdout] 489 | fn SED(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:489:34
[INFO] [stdout]     |
[INFO] [stdout] 489 | fn SED(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:489:61
[INFO] [stdout]     |
[INFO] [stdout] 489 | fn SED(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/instructions.rs:496:23
[INFO] [stdout]     |
[INFO] [stdout] 496 | fn SEI(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:496:34
[INFO] [stdout]     |
[INFO] [stdout] 496 | fn SEI(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:496:61
[INFO] [stdout]     |
[INFO] [stdout] 496 | fn SEI(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/ppu/nametables_debug_viewer.rs:16:13
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let mut buffer: Vec<u32> = vec![0; (width * height) as usize];
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/ppu/nametables_debug_viewer.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 |         let mut window = Window::new("Name tables", width as usize, height as usize, options).unwrap_or_else(|e| { panic!("{}", e); });
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:503:34
[INFO] [stdout]     |
[INFO] [stdout] 503 | fn ADC(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:523:34
[INFO] [stdout]     |
[INFO] [stdout] 523 | fn SBC(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:543:34
[INFO] [stdout]     |
[INFO] [stdout] 543 | fn PHA(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:543:61
[INFO] [stdout]     |
[INFO] [stdout] 543 | fn PHA(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:550:34
[INFO] [stdout]     |
[INFO] [stdout] 550 | fn PLA(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:550:61
[INFO] [stdout]     |
[INFO] [stdout] 550 | fn PLA(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:563:34
[INFO] [stdout]     |
[INFO] [stdout] 563 | fn PHP(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:563:61
[INFO] [stdout]     |
[INFO] [stdout] 563 | fn PHP(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:575:34
[INFO] [stdout]     |
[INFO] [stdout] 575 | fn PLP(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:575:61
[INFO] [stdout]     |
[INFO] [stdout] 575 | fn PLP(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:584:34
[INFO] [stdout]     |
[INFO] [stdout] 584 | fn BRK(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:584:61
[INFO] [stdout]     |
[INFO] [stdout] 584 | fn BRK(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:614:34
[INFO] [stdout]     |
[INFO] [stdout] 614 | fn RTI(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:614:61
[INFO] [stdout]     |
[INFO] [stdout] 614 | fn RTI(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:632:34
[INFO] [stdout]     |
[INFO] [stdout] 632 | fn JSR(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:648:34
[INFO] [stdout]     |
[INFO] [stdout] 648 | fn RTS(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:648:61
[INFO] [stdout]     |
[INFO] [stdout] 648 | fn RTS(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:662:34
[INFO] [stdout]     |
[INFO] [stdout] 662 | fn STA(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:668:34
[INFO] [stdout]     |
[INFO] [stdout] 668 | fn STX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:674:34
[INFO] [stdout]     |
[INFO] [stdout] 674 | fn STY(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/instructions.rs:680:23
[INFO] [stdout]     |
[INFO] [stdout] 680 | fn TAX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:680:34
[INFO] [stdout]     |
[INFO] [stdout] 680 | fn TAX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:680:61
[INFO] [stdout]     |
[INFO] [stdout] 680 | fn TAX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/instructions.rs:691:23
[INFO] [stdout]     |
[INFO] [stdout] 691 | fn TAY(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:691:34
[INFO] [stdout]     |
[INFO] [stdout] 691 | fn TAY(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:691:61
[INFO] [stdout]     |
[INFO] [stdout] 691 | fn TAY(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/instructions.rs:702:23
[INFO] [stdout]     |
[INFO] [stdout] 702 | fn TSX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:702:34
[INFO] [stdout]     |
[INFO] [stdout] 702 | fn TSX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:702:61
[INFO] [stdout]     |
[INFO] [stdout] 702 | fn TSX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/instructions.rs:713:23
[INFO] [stdout]     |
[INFO] [stdout] 713 | fn TXA(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:713:34
[INFO] [stdout]     |
[INFO] [stdout] 713 | fn TXA(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:713:61
[INFO] [stdout]     |
[INFO] [stdout] 713 | fn TXA(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/instructions.rs:724:23
[INFO] [stdout]     |
[INFO] [stdout] 724 | fn TXS(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:724:34
[INFO] [stdout]     |
[INFO] [stdout] 724 | fn TXS(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:724:61
[INFO] [stdout]     |
[INFO] [stdout] 724 | fn TXS(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/instructions.rs:730:23
[INFO] [stdout]     |
[INFO] [stdout] 730 | fn TYA(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:730:34
[INFO] [stdout]     |
[INFO] [stdout] 730 | fn TYA(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:730:61
[INFO] [stdout]     |
[INFO] [stdout] 730 | fn TYA(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:740:34
[INFO] [stdout]     |
[INFO] [stdout] 740 | fn LDA(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:751:34
[INFO] [stdout]     |
[INFO] [stdout] 751 | fn LDX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:763:34
[INFO] [stdout]     |
[INFO] [stdout] 763 | fn LDY(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu`
[INFO] [stdout]    --> src/cpu/instructions.rs:775:8
[INFO] [stdout]     |
[INFO] [stdout] 775 | fn NOP(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |        ^^^ help: if this is intentional, prefix it with an underscore: `_cpu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/instructions.rs:775:23
[INFO] [stdout]     |
[INFO] [stdout] 775 | fn NOP(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:775:34
[INFO] [stdout]     |
[INFO] [stdout] 775 | fn NOP(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:775:61
[INFO] [stdout]     |
[INFO] [stdout] 775 | fn NOP(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:780:34
[INFO] [stdout]     |
[INFO] [stdout] 780 | fn AND(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:792:34
[INFO] [stdout]     |
[INFO] [stdout] 792 | fn ORA(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:804:34
[INFO] [stdout]     |
[INFO] [stdout] 804 | fn EOR(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:896:34
[INFO] [stdout]     |
[INFO] [stdout] 896 | fn BIT(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:910:34
[INFO] [stdout]     |
[INFO] [stdout] 910 | fn CMP(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:924:34
[INFO] [stdout]     |
[INFO] [stdout] 924 | fn CPX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:938:34
[INFO] [stdout]     |
[INFO] [stdout] 938 | fn CPY(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:952:34
[INFO] [stdout]     |
[INFO] [stdout] 952 | fn DEC(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/instructions.rs:965:23
[INFO] [stdout]     |
[INFO] [stdout] 965 | fn DEX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:965:34
[INFO] [stdout]     |
[INFO] [stdout] 965 | fn DEX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:965:61
[INFO] [stdout]     |
[INFO] [stdout] 965 | fn DEX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/instructions.rs:975:23
[INFO] [stdout]     |
[INFO] [stdout] 975 | fn DEY(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:975:34
[INFO] [stdout]     |
[INFO] [stdout] 975 | fn DEY(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:975:61
[INFO] [stdout]     |
[INFO] [stdout] 975 | fn DEY(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:985:34
[INFO] [stdout]     |
[INFO] [stdout] 985 | fn INC(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/cpu/instructions.rs:998:23
[INFO] [stdout]     |
[INFO] [stdout] 998 | fn INX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]    --> src/cpu/instructions.rs:998:34
[INFO] [stdout]     |
[INFO] [stdout] 998 | fn INX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]    --> src/cpu/instructions.rs:998:61
[INFO] [stdout]     |
[INFO] [stdout] 998 | fn INX(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]     --> src/cpu/instructions.rs:1009:23
[INFO] [stdout]      |
[INFO] [stdout] 1009 | fn INY(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]      |                       ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]     --> src/cpu/instructions.rs:1009:34
[INFO] [stdout]      |
[INFO] [stdout] 1009 | fn INY(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]      |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addressing_result`
[INFO] [stdout]     --> src/cpu/instructions.rs:1009:61
[INFO] [stdout]      |
[INFO] [stdout] 1009 | fn INY(cpu: &mut Cpu, bus: &Bus, instruction: &Instruction, addressing_result: &AddressingResult) -> i8 {
[INFO] [stdout]      |                                                             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addressing_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `read_only`
[INFO] [stdout]    --> src/ppu.rs:253:57
[INFO] [stdout]     |
[INFO] [stdout] 253 |     pub fn ppu_read(&mut self, bus: &Bus, address: u16, read_only: bool) -> u8 {
[INFO] [stdout]     |                                                         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_read_only`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pre`
[INFO] [stdout]    --> src/ppu.rs:342:29
[INFO] [stdout]     |
[INFO] [stdout] 342 |                         let pre = self.vram_addr.nametable_y();
[INFO] [stdout]     |                             ^^^ help: if this is intentional, prefix it with an underscore: `_pre`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ppu.rs:395:21
[INFO] [stdout]     |
[INFO] [stdout] 395 |                 let mut sprite = &mut self.scanline_sprites[i as usize];
[INFO] [stdout]     |                     ----^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hex_pc`
[INFO] [stdout]   --> src/cpu.rs:63:17
[INFO] [stdout]    |
[INFO] [stdout] 63 |             let hex_pc = hex::encode(fetching_from.to_be_bytes());
[INFO] [stdout]    |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_hex_pc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/ppu/main_window.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 |         let mut buffer: Vec<u32> = vec![0; (width * height) as usize];
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/ppu.rs:673:29
[INFO] [stdout]     |
[INFO] [stdout] 673 |     pub fn reset(&mut self, bus: &Bus) {
[INFO] [stdout]     |                             ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/apu/streaming_audio.rs:80:17
[INFO] [stdout]    |
[INFO] [stdout] 80 |                 _ => return,
[INFO] [stdout]    |                 ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]   --> src/apu/streaming_audio.rs:80:17
[INFO] [stdout]    |
[INFO] [stdout] 75 |                 Ok(data) => data,
[INFO] [stdout]    |                 -------- matches some of the same values
[INFO] [stdout] 76 |                 Err(err) => {
[INFO] [stdout]    |                 -------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 80 |                 _ => return,
[INFO] [stdout]    |                 ^ collectively making this unreachable
[INFO] [stdout]    = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sample_rate`
[INFO] [stdout]   --> src/apu/streaming_audio.rs:35:13
[INFO] [stdout]    |
[INFO] [stdout] 35 |         let sample_rate = format.sample_rate.0 as f32;
[INFO] [stdout]    |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sample_rate`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/ppu/main_window.rs:22:13
[INFO] [stdout]    |
[INFO] [stdout] 22 |         let mut window = Window::new("Output", width as usize, height as usize, options).unwrap_or_else(|e| { panic!("{}", e); });
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `height`
[INFO] [stdout]   --> src/ppu/main_window.rs:35:13
[INFO] [stdout]    |
[INFO] [stdout] 35 |         let height = 240 as usize;
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/ppu/patterns_debug_viewer.rs:16:13
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let mut buffer: Vec<u32> = vec![0; (width * height) as usize];
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/ppu/patterns_debug_viewer.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 | ...   let mut window = Window::new("Pattern tables", width as usize, height as usize, options).unwrap_or_else(|e| { panic!("{}", e);...
[INFO] [stdout]    |           ----^^^^^^
[INFO] [stdout]    |           |
[INFO] [stdout]    |           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/ppu/nametables_debug_viewer.rs:16:13
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let mut buffer: Vec<u32> = vec![0; (width * height) as usize];
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/ppu/nametables_debug_viewer.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 |         let mut window = Window::new("Name tables", width as usize, height as usize, options).unwrap_or_else(|e| { panic!("{}", e); });
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `read_only`
[INFO] [stdout]    --> src/ppu.rs:253:57
[INFO] [stdout]     |
[INFO] [stdout] 253 |     pub fn ppu_read(&mut self, bus: &Bus, address: u16, read_only: bool) -> u8 {
[INFO] [stdout]     |                                                         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_read_only`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pre`
[INFO] [stdout]    --> src/ppu.rs:342:29
[INFO] [stdout]     |
[INFO] [stdout] 342 |                         let pre = self.vram_addr.nametable_y();
[INFO] [stdout]     |                             ^^^ help: if this is intentional, prefix it with an underscore: `_pre`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ppu.rs:395:21
[INFO] [stdout]     |
[INFO] [stdout] 395 |                 let mut sprite = &mut self.scanline_sprites[i as usize];
[INFO] [stdout]     |                     ----^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]    --> src/ppu.rs:673:29
[INFO] [stdout]     |
[INFO] [stdout] 673 |     pub fn reset(&mut self, bus: &Bus) {
[INFO] [stdout]     |                             ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/apu/streaming_audio.rs:80:17
[INFO] [stdout]    |
[INFO] [stdout] 80 |                 _ => return,
[INFO] [stdout]    |                 ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]   --> src/apu/streaming_audio.rs:80:17
[INFO] [stdout]    |
[INFO] [stdout] 75 |                 Ok(data) => data,
[INFO] [stdout]    |                 -------- matches some of the same values
[INFO] [stdout] 76 |                 Err(err) => {
[INFO] [stdout]    |                 -------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 80 |                 _ => return,
[INFO] [stdout]    |                 ^ collectively making this unreachable
[INFO] [stdout]    = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sample_rate`
[INFO] [stdout]   --> src/apu/streaming_audio.rs:35:13
[INFO] [stdout]    |
[INFO] [stdout] 35 |         let sample_rate = format.sample_rate.0 as f32;
[INFO] [stdout]    |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sample_rate`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]   --> src/apu/apu_device.rs:89:33
[INFO] [stdout]    |
[INFO] [stdout] 89 |     pub fn cpu_write(&mut self, bus: &Bus, address: u16, data: u8) {
[INFO] [stdout]    |                                 ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/apu/apu_device.rs:215:13
[INFO] [stdout]     |
[INFO] [stdout] 215 |         let mut swap = Vec::<u8>::with_capacity(14_900);
[INFO] [stdout]     |             ----^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/apu/apu_device.rs:220:13
[INFO] [stdout]     |
[INFO] [stdout] 220 |         let mut bytes_req = 800;
[INFO] [stdout]     |             ----^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `address`
[INFO] [stdout]   --> src/input.rs:29:28
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub fn read(&mut self, address: u16, data: &mut u8) {
[INFO] [stdout]    |                            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `controller`
[INFO] [stdout]   --> src/input.rs:43:44
[INFO] [stdout]    |
[INFO] [stdout] 43 |     fn get_button_state(&self, button: u8, controller: u8) -> bool {
[INFO] [stdout]    |                                            ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_controller`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/mappers/mapper0.rs:20:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |         let mut page = [0; 8192];
[INFO] [stdout]    |             ----^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]  --> src/mappers/mapper0.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 |     for i in 0..header.prg_pages {
[INFO] [stdout]   |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/mappers/mapper0.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |     for i in 0..header.chr_pages {
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/mappers/mapper0.rs:51:43
[INFO] [stdout]    |
[INFO] [stdout] 51 |     fn cpu_write(&mut self, address: u16, data: u8) -> bool {
[INFO] [stdout]    |                                           ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bank`
[INFO] [stdout]   --> src/mappers/mapper0.rs:53:17
[INFO] [stdout]    |
[INFO] [stdout] 53 |             let bank = ((address & 0x7FFF) >> 14) % (self.header.prg_pages as u16);
[INFO] [stdout]    |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_bank`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bank`
[INFO] [stdout]   --> src/mappers/mapper0.rs:62:17
[INFO] [stdout]    |
[INFO] [stdout] 62 |             let bank = address >> 12;
[INFO] [stdout]    |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_bank`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/mappers/mapper0.rs:70:43
[INFO] [stdout]    |
[INFO] [stdout] 70 |     fn ppu_write(&mut self, address: u16, data: u8) -> bool {
[INFO] [stdout]    |                                           ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/mappers/mapper2.rs:20:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |         let mut page = [0; 8192];
[INFO] [stdout]    |             ----^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]  --> src/mappers/mapper2.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 |     for i in 0..header.prg_pages {
[INFO] [stdout]   |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/mappers/mapper2.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |     for i in 0..header.chr_pages {
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bank`
[INFO] [stdout]   --> src/mappers/mapper2.rs:62:17
[INFO] [stdout]    |
[INFO] [stdout] 62 |             let bank = address >> 12;
[INFO] [stdout]    |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_bank`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]    --> src/mappers/mapper4.rs:188:43
[INFO] [stdout]     |
[INFO] [stdout] 188 |     fn ppu_write(&mut self, address: u16, data: u8) -> bool {
[INFO] [stdout]     |                                           ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `flags8`
[INFO] [stdout]   --> src/ines_loader.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |     let flags8 = read_byte(reader);
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_flags8`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `flags9`
[INFO] [stdout]   --> src/ines_loader.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 |     let flags9 = read_byte(reader);
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_flags9`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `flags10`
[INFO] [stdout]   --> src/ines_loader.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 51 |     let flags10 = read_byte(reader);
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_flags10`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `padding11`
[INFO] [stdout]   --> src/ines_loader.rs:53:9
[INFO] [stdout]    |
[INFO] [stdout] 53 |     let padding11 = read_byte(reader);
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_padding11`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `padding12`
[INFO] [stdout]   --> src/ines_loader.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 54 |     let padding12 = read_byte(reader);
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_padding12`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `padding13`
[INFO] [stdout]   --> src/ines_loader.rs:55:9
[INFO] [stdout]    |
[INFO] [stdout] 55 |     let padding13 = read_byte(reader);
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_padding13`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `padding14`
[INFO] [stdout]   --> src/ines_loader.rs:56:9
[INFO] [stdout]    |
[INFO] [stdout] 56 |     let padding14 = read_byte(reader);
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_padding14`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `nes` (bin "nes" test) due to 4 previous errors; 181 warnings emitted
[INFO] [stdout] warning: unused variable: `padding15`
[INFO] [stdout]   --> src/ines_loader.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 57 |     let padding15 = read_byte(reader);
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_padding15`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> src/tools/dump_memory.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |     let mut f = OpenOptions::new().write(true).create(true).append(false).open(filename).expect("failed to open file");
[INFO] [stdout]   |         ----^
[INFO] [stdout]   |         |
[INFO] [stdout]   |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `nes` (bin "nes") due to 4 previous errors; 181 warnings emitted
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/tools/dump_memory.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |     let mut f = OpenOptions::new().write(true).create(true).append(false).open(filename).expect("failed to open file");
[INFO] [stdout]    |         ----^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]   --> src/apu/apu_device.rs:89:33
[INFO] [stdout]    |
[INFO] [stdout] 89 |     pub fn cpu_write(&mut self, bus: &Bus, address: u16, data: u8) {
[INFO] [stdout]    |                                 ^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/apu/apu_device.rs:215:13
[INFO] [stdout]     |
[INFO] [stdout] 215 |         let mut swap = Vec::<u8>::with_capacity(14_900);
[INFO] [stdout]     |             ----^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 33 |     let mut audio_tx = launch_sound();
[INFO] [stdout]    |         ----^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/apu/apu_device.rs:220:13
[INFO] [stdout]     |
[INFO] [stdout] 220 |         let mut bytes_req = 800;
[INFO] [stdout]     |             ----^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `unlimited_speed`
[INFO] [stdout]   --> src/main.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |     let unlimited_speed = args.find(|i| { i == "-u"}).is_some();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_unlimited_speed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instr_prev`
[INFO] [stdout]   --> src/main.rs:61:17
[INFO] [stdout]    |
[INFO] [stdout] 61 |             let instr_prev = nes.master_clock_counter;
[INFO] [stdout]    |                 ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instr_prev`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `address`
[INFO] [stdout]   --> src/input.rs:29:28
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub fn read(&mut self, address: u16, data: &mut u8) {
[INFO] [stdout]    |                            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/main.rs:84:13
[INFO] [stdout]    |
[INFO] [stdout] 84 |         for i in 0..750000 {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `controller`
[INFO] [stdout]   --> src/input.rs:43:44
[INFO] [stdout]    |
[INFO] [stdout] 43 |     fn get_button_state(&self, button: u8, controller: u8) -> bool {
[INFO] [stdout]    |                                            ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_controller`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/mappers/mapper0.rs:20:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |         let mut page = [0; 8192];
[INFO] [stdout]    |             ----^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]  --> src/mappers/mapper0.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 |     for i in 0..header.prg_pages {
[INFO] [stdout]   |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/mappers/mapper0.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |     for i in 0..header.chr_pages {
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/mappers/mapper0.rs:51:43
[INFO] [stdout]    |
[INFO] [stdout] 51 |     fn cpu_write(&mut self, address: u16, data: u8) -> bool {
[INFO] [stdout]    |                                           ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bank`
[INFO] [stdout]   --> src/mappers/mapper0.rs:53:17
[INFO] [stdout]    |
[INFO] [stdout] 53 |             let bank = ((address & 0x7FFF) >> 14) % (self.header.prg_pages as u16);
[INFO] [stdout]    |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_bank`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bank`
[INFO] [stdout]   --> src/mappers/mapper0.rs:62:17
[INFO] [stdout]    |
[INFO] [stdout] 62 |             let bank = address >> 12;
[INFO] [stdout]    |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_bank`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/mappers/mapper0.rs:70:43
[INFO] [stdout]    |
[INFO] [stdout] 70 |     fn ppu_write(&mut self, address: u16, data: u8) -> bool {
[INFO] [stdout]    |                                           ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/mappers/mapper2.rs:20:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |         let mut page = [0; 8192];
[INFO] [stdout]    |             ----^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]  --> src/mappers/mapper2.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 |     for i in 0..header.prg_pages {
[INFO] [stdout]   |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/mappers/mapper2.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |     for i in 0..header.chr_pages {
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bank`
[INFO] [stdout]   --> src/mappers/mapper2.rs:62:17
[INFO] [stdout]    |
[INFO] [stdout] 62 |             let bank = address >> 12;
[INFO] [stdout]    |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_bank`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]    --> src/mappers/mapper4.rs:188:43
[INFO] [stdout]     |
[INFO] [stdout] 188 |     fn ppu_write(&mut self, address: u16, data: u8) -> bool {
[INFO] [stdout]     |                                           ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0080`.
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `flags8`
[INFO] [stdout]   --> src/ines_loader.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |     let flags8 = read_byte(reader);
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_flags8`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `flags9`
[INFO] [stdout]   --> src/ines_loader.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 |     let flags9 = read_byte(reader);
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_flags9`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `flags10`
[INFO] [stdout]   --> src/ines_loader.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 51 |     let flags10 = read_byte(reader);
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_flags10`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `padding11`
[INFO] [stdout]   --> src/ines_loader.rs:53:9
[INFO] [stdout]    |
[INFO] [stdout] 53 |     let padding11 = read_byte(reader);
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_padding11`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `padding12`
[INFO] [stdout]   --> src/ines_loader.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 54 |     let padding12 = read_byte(reader);
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_padding12`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `padding13`
[INFO] [stdout]   --> src/ines_loader.rs:55:9
[INFO] [stdout]    |
[INFO] [stdout] 55 |     let padding13 = read_byte(reader);
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_padding13`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `padding14`
[INFO] [stdout]   --> src/ines_loader.rs:56:9
[INFO] [stdout]    |
[INFO] [stdout] 56 |     let padding14 = read_byte(reader);
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_padding14`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `padding15`
[INFO] [stdout]   --> src/ines_loader.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 57 |     let padding15 = read_byte(reader);
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_padding15`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> src/tools/dump_memory.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |     let mut f = OpenOptions::new().write(true).create(true).append(false).open(filename).expect("failed to open file");
[INFO] [stdout]   |         ----^
[INFO] [stdout]   |         |
[INFO] [stdout]   |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/tools/dump_memory.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |     let mut f = OpenOptions::new().write(true).create(true).append(false).open(filename).expect("failed to open file");
[INFO] [stdout]    |         ----^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 33 |     let mut audio_tx = launch_sound();
[INFO] [stdout]    |         ----^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `unlimited_speed`
[INFO] [stdout]   --> src/main.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |     let unlimited_speed = args.find(|i| { i == "-u"}).is_some();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_unlimited_speed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instr_prev`
[INFO] [stdout]   --> src/main.rs:61:17
[INFO] [stdout]    |
[INFO] [stdout] 61 |             let instr_prev = nes.master_clock_counter;
[INFO] [stdout]    |                 ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instr_prev`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/main.rs:84:13
[INFO] [stdout]    |
[INFO] [stdout] 84 |         for i in 0..750000 {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0080`.
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "ea359ca18947dc9e52e64672cb8caec26ecdb0ddb5594a70cd16145e1b47e9ab", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ea359ca18947dc9e52e64672cb8caec26ecdb0ddb5594a70cd16145e1b47e9ab", kill_on_drop: false }`
[INFO] [stdout] ea359ca18947dc9e52e64672cb8caec26ecdb0ddb5594a70cd16145e1b47e9ab
