[INFO] cloning repository https://github.com/patallen/RIP-8 [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/patallen/RIP-8" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpatallen%2FRIP-8", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpatallen%2FRIP-8'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 418e27bc9f00fb6353adaac0d313ce8ca545af10 [INFO] checking patallen/RIP-8 against master#a609fb45efad59dfd459c76e50899be9f0583b5a for pr-80579 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpatallen%2FRIP-8" "/workspace/builds/worker-12/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-12/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/patallen/RIP-8 on toolchain a609fb45efad59dfd459c76e50899be9f0583b5a [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a609fb45efad59dfd459c76e50899be9f0583b5a" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/patallen/RIP-8 [INFO] finished tweaking git repo https://github.com/patallen/RIP-8 [INFO] tweaked toml for git repo https://github.com/patallen/RIP-8 written to /workspace/builds/worker-12/source/Cargo.toml [INFO] crate git repo https://github.com/patallen/RIP-8 already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a609fb45efad59dfd459c76e50899be9f0583b5a" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/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" "rustops/crates-build-env@sha256:b8eeb62f26c39b23691079a6cb6de528d8e88b4d71a8f6b1d30f8ba7d9c16de9" "/opt/rustwide/cargo-home/bin/cargo" "+a609fb45efad59dfd459c76e50899be9f0583b5a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] d5ae43f1955438d17b4c030ba8c8287b1d414e1864c640cbc488ab6b5bd727d3 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "d5ae43f1955438d17b4c030ba8c8287b1d414e1864c640cbc488ab6b5bd727d3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "d5ae43f1955438d17b4c030ba8c8287b1d414e1864c640cbc488ab6b5bd727d3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d5ae43f1955438d17b4c030ba8c8287b1d414e1864c640cbc488ab6b5bd727d3", kill_on_drop: false }` [INFO] [stdout] d5ae43f1955438d17b4c030ba8c8287b1d414e1864c640cbc488ab6b5bd727d3 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/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" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:b8eeb62f26c39b23691079a6cb6de528d8e88b4d71a8f6b1d30f8ba7d9c16de9" "/opt/rustwide/cargo-home/bin/cargo" "+a609fb45efad59dfd459c76e50899be9f0583b5a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] aca80b89b762a9b6d796a6d5ec0d920d4d5da93e8511d6e90d4188c29042c50a [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "aca80b89b762a9b6d796a6d5ec0d920d4d5da93e8511d6e90d4188c29042c50a", kill_on_drop: false }` [INFO] [stderr] Compiling unicode-xid v0.0.4 [INFO] [stderr] Compiling gcc v0.3.45 [INFO] [stderr] Compiling quote v0.3.15 [INFO] [stderr] Checking serde v0.9.12 [INFO] [stderr] Checking void v1.0.2 [INFO] [stderr] Checking linked-hash-map v0.3.0 [INFO] [stderr] Compiling sdl2-sys v0.27.2 [INFO] [stderr] Checking log-mdc v0.1.0 [INFO] [stderr] Checking lazy_static v0.2.5 [INFO] [stderr] Checking num-integer v0.1.33 [INFO] [stderr] Checking termion v1.3.0 [INFO] [stderr] Checking unsafe-any v0.4.1 [INFO] [stderr] Checking humantime v1.0.0 [INFO] [stderr] Checking unreachable v0.1.1 [INFO] [stderr] Checking typemap v0.3.3 [INFO] [stderr] Compiling synom v0.11.3 [INFO] [stderr] Checking num-iter v0.1.33 [INFO] [stderr] Checking yaml-rust v0.3.5 [INFO] [stderr] Checking ordered-float v0.4.0 [INFO] [stderr] Compiling syn v0.11.9 [INFO] [stderr] Checking num v0.1.37 [INFO] [stderr] Checking chrono v0.3.0 [INFO] [stderr] Checking sdl2 v0.27.3 [INFO] [stderr] Compiling miniz-sys v0.1.9 [INFO] [stderr] Compiling serde_codegen_internals v0.14.2 [INFO] [stderr] Checking flate2 v0.2.17 [INFO] [stderr] Compiling serde_derive v0.9.12 [INFO] [stderr] Checking serde_json v0.9.9 [INFO] [stderr] Checking serde-value v0.4.0 [INFO] [stderr] Checking serde_yaml v0.6.2 [INFO] [stderr] Checking log4rs v0.6.2 [INFO] [stderr] Checking chip8 v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: variant `SysAddressJump_0x0NNN` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | SysAddressJump_0x0NNN, // Jump to address NNN [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SysAddressJump0x0nnn` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ClearDisplay_0x00E0` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | ClearDisplay_0x00E0, // Clear the display [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ClearDisplay0x00e0` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `RetFromSubroutine_0x00EE` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | RetFromSubroutine_0x00EE, // Return from Subroutine [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RetFromSubroutine0x00ee` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `JumpLocation_0x1NNN` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | JumpLocation_0x1NNN, // Jump to address: Set PC to 0xNNN [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `JumpLocation0x1nnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `CallSubroutine_0x2NNN` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | CallSubroutine_0x2NNN, // Call Subroutine: Set PC to 0xNNN, set sp += 1, set pc = NNN [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CallSubroutine0x2nnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SkipInstrIfVxEqPL_0x3XNN` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | SkipInstrIfVxEqPL_0x3XNN, // Skip Instruction if v[x] == 0xNN [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SkipInstrIfVxEqPl0x3xnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SkipInstrIfVxNotEqPL_0x4XNN` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | SkipInstrIfVxNotEqPL_0x4XNN, // Skip Instruction if v[x] != 0xNN [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SkipInstrIfVxNotEqPl0x4xnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SkipInstrIfVxVy_0x5XY0` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | SkipInstrIfVxVy_0x5XY0, // Skip Instruction if v[x] == v[y] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SkipInstrIfVxVy0x5xy0` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SetVxToPL_0x6XNN` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | SetVxToPL_0x6XNN, // Set v[x] to 0xNN [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SetVxToPl0x6xnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `IncrementVxByPL_0x7XNN` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | IncrementVxByPL_0x7XNN, // Increment v[x] by 0xNN [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `IncrementVxByPl0x7xnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SetVxToVy_0x8XY0` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | SetVxToVy_0x8XY0, // Set v[x] to v[y](xx) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SetVxToVy0x8xy0` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SetVxToVxORVy_0x8XY1` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | SetVxToVxORVy_0x8XY1, // Set v[x] to v[x] | v[y] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SetVxToVxOrvy0x8xy1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SetVxToVxANDVy_0x8XY2` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | SetVxToVxANDVy_0x8XY2, // Set v[x] to v[x] & v[y] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SetVxToVxAndvy0x8xy2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SetVxToVxXORVy_0x8XY3` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | SetVxToVxXORVy_0x8XY3, // Set v[x] to v[x] ^ v[y] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SetVxToVxXorvy0x8xy3` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `IncrementVxByVyAndCarry_0x8XY4` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | IncrementVxByVyAndCarry_0x8XY4, // Increment v[x](xx) by v[y](yy) and set v[F] = 1 if overflow [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `IncrementVxByVyAndCarry0x8xy4` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `DecrementVxByVyNoBorrow_0x8XY5` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | DecrementVxByVyNoBorrow_0x8XY5, // Decrement v[x](xx) by v[y](yy) and set v[F] = 1 if v[x] > v[y] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `DecrementVxByVyNoBorrow0x8xy5` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ShiftAndRotateVxRight_0x8XY6` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | ShiftAndRotateVxRight_0x8XY6, // Shift and rotate v[x] right [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ShiftAndRotateVxRight0x8xy6` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `DecrementVyByVxNoBorrow_0x8XY7` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | DecrementVyByVxNoBorrow_0x8XY7, // Decrement v[y](yy) by v[x](xx) and set v[F] = 1 if v[y] > v[x] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `DecrementVyByVxNoBorrow0x8xy7` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ShiftAndRotateVxLeft_0x8XYE` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | ShiftAndRotateVxLeft_0x8XYE, // Shift and rotate v[x] left [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ShiftAndRotateVxLeft0x8xye` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SkipInstrIfVxNotVy_0x9XY0` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | SkipInstrIfVxNotVy_0x9XY0, // Skip instruction if v[x](xx) != v[y](yy) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SkipInstrIfVxNotVy0x9xy0` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SetIndexRegToPL_0xANNN` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | SetIndexRegToPL_0xANNN, // Set index to 0xNNN [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SetIndexRegToPl0xAnnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `JumpToV0PlusPL_0xBNNN` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | JumpToV0PlusPL_0xBNNN, // Jump to v[0] + 0xNNN: Set PC to 0xXXX [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `JumpToV0plusPl0xBnnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SetVxRandByteANDPL_0xCXNN` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 25 | SetVxRandByteANDPL_0xCXNN, // Set v[x] to randbyte(0xNNN) & 0xNN [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SetVxRandByteAndpl0xCxnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `DisplaySpriteSetVfColl_0xDXYN` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | DisplaySpriteSetVfColl_0xDXYN, // Display N-byte sprite and set v[F] = 1 if collision [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `DisplaySpriteSetVfColl0xDxyn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SkipInstrIfVxPressed_0xEX9E` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | SkipInstrIfVxPressed_0xEX9E, // Skip instruction if v[x](keycode) pressed [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SkipInstrIfVxPressed0xEx9e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SkipInstrIfVxNotPressed_0xEXA1` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | SkipInstrIfVxNotPressed_0xEXA1, // Skip instruction if v[x](keycode) not pressed [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SkipInstrIfVxNotPressed0xExa1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SetVxToDelayTimerVal_0xFX07` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | SetVxToDelayTimerVal_0xFX07, // Set v[x] to value of delay timer (xxx) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SetVxToDelayTimerVal0xFx07` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `WaitForKeyStoreInVx_0xFX0A` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | WaitForKeyStoreInVx_0xFX0A, // Wait for key and store it's value in v[x] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `WaitForKeyStoreInVx0xFx0a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SetDelayTimerToVx_0xFX15` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 31 | SetDelayTimerToVx_0xFX15, // Set delay timer to v[x](xx) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SetDelayTimerToVx0xFx15` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SetSoundTimerToVx_0xFX18` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 32 | SetSoundTimerToVx_0xFX18, // Set sound timer to v[x](xx) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SetSoundTimerToVx0xFx18` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `IncrementIndexRegByVx_0xFX1E` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 33 | IncrementIndexRegByVx_0xFX1E, // Set index = index(xx) + v[x](xx) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `IncrementIndexRegByVx0xFx1e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SetIndexRegToVxSprite_0xFX29` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 34 | SetIndexRegToVxSprite_0xFX29, // Set index equal to the v[x]th sprite (v[x] * 5) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SetIndexRegToVxSprite0xFx29` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `StoreBCDOfVxIn3Bytes_0xFX33` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 35 | StoreBCDOfVxIn3Bytes_0xFX33, // Store BCD of v[x](xxx) in mem[i], mem[i+1], mem[i+2] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `StoreBcdofVxIn3bytes0xFx33` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `StoreRegsUptoVx_0xFX55` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | StoreRegsUptoVx_0xFX55, // Store v[0] through v[x] in mem[i] through mem[i + x] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `StoreRegsUptoVx0xFx55` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ReadRegsUptoVx_0xFX65` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | ReadRegsUptoVx_0xFX65, // Store mem[i] through mem[i+x] in v[0] through v[x] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ReadRegsUptoVx0xFx65` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `debugger::Debugger` [INFO] [stdout] --> src/main.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use debugger::Debugger; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> src/main.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | use std::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SysAddressJump_0x0NNN` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | SysAddressJump_0x0NNN, // Jump to address NNN [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SysAddressJump0x0nnn` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ClearDisplay_0x00E0` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | ClearDisplay_0x00E0, // Clear the display [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ClearDisplay0x00e0` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `RetFromSubroutine_0x00EE` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | RetFromSubroutine_0x00EE, // Return from Subroutine [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RetFromSubroutine0x00ee` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `JumpLocation_0x1NNN` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | JumpLocation_0x1NNN, // Jump to address: Set PC to 0xNNN [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `JumpLocation0x1nnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `CallSubroutine_0x2NNN` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | CallSubroutine_0x2NNN, // Call Subroutine: Set PC to 0xNNN, set sp += 1, set pc = NNN [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CallSubroutine0x2nnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SkipInstrIfVxEqPL_0x3XNN` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | SkipInstrIfVxEqPL_0x3XNN, // Skip Instruction if v[x] == 0xNN [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SkipInstrIfVxEqPl0x3xnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SkipInstrIfVxNotEqPL_0x4XNN` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | SkipInstrIfVxNotEqPL_0x4XNN, // Skip Instruction if v[x] != 0xNN [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SkipInstrIfVxNotEqPl0x4xnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SkipInstrIfVxVy_0x5XY0` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | SkipInstrIfVxVy_0x5XY0, // Skip Instruction if v[x] == v[y] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SkipInstrIfVxVy0x5xy0` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SetVxToPL_0x6XNN` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | SetVxToPL_0x6XNN, // Set v[x] to 0xNN [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SetVxToPl0x6xnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `IncrementVxByPL_0x7XNN` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | IncrementVxByPL_0x7XNN, // Increment v[x] by 0xNN [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `IncrementVxByPl0x7xnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SetVxToVy_0x8XY0` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | SetVxToVy_0x8XY0, // Set v[x] to v[y](xx) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SetVxToVy0x8xy0` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SetVxToVxORVy_0x8XY1` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | SetVxToVxORVy_0x8XY1, // Set v[x] to v[x] | v[y] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SetVxToVxOrvy0x8xy1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SetVxToVxANDVy_0x8XY2` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | SetVxToVxANDVy_0x8XY2, // Set v[x] to v[x] & v[y] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SetVxToVxAndvy0x8xy2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SetVxToVxXORVy_0x8XY3` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | SetVxToVxXORVy_0x8XY3, // Set v[x] to v[x] ^ v[y] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SetVxToVxXorvy0x8xy3` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `IncrementVxByVyAndCarry_0x8XY4` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | IncrementVxByVyAndCarry_0x8XY4, // Increment v[x](xx) by v[y](yy) and set v[F] = 1 if overflow [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `IncrementVxByVyAndCarry0x8xy4` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `DecrementVxByVyNoBorrow_0x8XY5` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | DecrementVxByVyNoBorrow_0x8XY5, // Decrement v[x](xx) by v[y](yy) and set v[F] = 1 if v[x] > v[y] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `DecrementVxByVyNoBorrow0x8xy5` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ShiftAndRotateVxRight_0x8XY6` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | ShiftAndRotateVxRight_0x8XY6, // Shift and rotate v[x] right [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ShiftAndRotateVxRight0x8xy6` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `DecrementVyByVxNoBorrow_0x8XY7` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | DecrementVyByVxNoBorrow_0x8XY7, // Decrement v[y](yy) by v[x](xx) and set v[F] = 1 if v[y] > v[x] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `DecrementVyByVxNoBorrow0x8xy7` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ShiftAndRotateVxLeft_0x8XYE` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | ShiftAndRotateVxLeft_0x8XYE, // Shift and rotate v[x] left [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ShiftAndRotateVxLeft0x8xye` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SkipInstrIfVxNotVy_0x9XY0` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | SkipInstrIfVxNotVy_0x9XY0, // Skip instruction if v[x](xx) != v[y](yy) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SkipInstrIfVxNotVy0x9xy0` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SetIndexRegToPL_0xANNN` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | SetIndexRegToPL_0xANNN, // Set index to 0xNNN [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SetIndexRegToPl0xAnnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `JumpToV0PlusPL_0xBNNN` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | JumpToV0PlusPL_0xBNNN, // Jump to v[0] + 0xNNN: Set PC to 0xXXX [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `JumpToV0plusPl0xBnnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SetVxRandByteANDPL_0xCXNN` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 25 | SetVxRandByteANDPL_0xCXNN, // Set v[x] to randbyte(0xNNN) & 0xNN [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SetVxRandByteAndpl0xCxnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `DisplaySpriteSetVfColl_0xDXYN` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | DisplaySpriteSetVfColl_0xDXYN, // Display N-byte sprite and set v[F] = 1 if collision [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `DisplaySpriteSetVfColl0xDxyn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SkipInstrIfVxPressed_0xEX9E` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | SkipInstrIfVxPressed_0xEX9E, // Skip instruction if v[x](keycode) pressed [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SkipInstrIfVxPressed0xEx9e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SkipInstrIfVxNotPressed_0xEXA1` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | SkipInstrIfVxNotPressed_0xEXA1, // Skip instruction if v[x](keycode) not pressed [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SkipInstrIfVxNotPressed0xExa1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SetVxToDelayTimerVal_0xFX07` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | SetVxToDelayTimerVal_0xFX07, // Set v[x] to value of delay timer (xxx) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SetVxToDelayTimerVal0xFx07` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `WaitForKeyStoreInVx_0xFX0A` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | WaitForKeyStoreInVx_0xFX0A, // Wait for key and store it's value in v[x] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `WaitForKeyStoreInVx0xFx0a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SetDelayTimerToVx_0xFX15` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 31 | SetDelayTimerToVx_0xFX15, // Set delay timer to v[x](xx) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SetDelayTimerToVx0xFx15` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SetSoundTimerToVx_0xFX18` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 32 | SetSoundTimerToVx_0xFX18, // Set sound timer to v[x](xx) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SetSoundTimerToVx0xFx18` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `IncrementIndexRegByVx_0xFX1E` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 33 | IncrementIndexRegByVx_0xFX1E, // Set index = index(xx) + v[x](xx) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `IncrementIndexRegByVx0xFx1e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SetIndexRegToVxSprite_0xFX29` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 34 | SetIndexRegToVxSprite_0xFX29, // Set index equal to the v[x]th sprite (v[x] * 5) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SetIndexRegToVxSprite0xFx29` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `StoreBCDOfVxIn3Bytes_0xFX33` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 35 | StoreBCDOfVxIn3Bytes_0xFX33, // Store BCD of v[x](xxx) in mem[i], mem[i+1], mem[i+2] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `StoreBcdofVxIn3bytes0xFx33` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `StoreRegsUptoVx_0xFX55` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | StoreRegsUptoVx_0xFX55, // Store v[0] through v[x] in mem[i] through mem[i + x] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `StoreRegsUptoVx0xFx55` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ReadRegsUptoVx_0xFX65` should have an upper camel case name [INFO] [stdout] --> src/opcodes.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | ReadRegsUptoVx_0xFX65, // Store mem[i] through mem[i+x] in v[0] through v[x] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ReadRegsUptoVx0xFx65` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `debugger::Debugger` [INFO] [stdout] --> src/main.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use debugger::Debugger; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> src/main.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | use std::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> src/device.rs:68:73 [INFO] [stdout] | [INFO] [stdout] 68 | let beep = audio_subsystem.open_playback(None, &desired_spec, | s | { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `sp` on type `CPU<'_>` [INFO] [stdout] --> src/cpu.rs:464:20 [INFO] [stdout] | [INFO] [stdout] 464 | assert_eq!(cpu.sp, 1); [INFO] [stdout] | ^^ unknown field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `hz`, `program_delay`, `mem`, `regs`, `index` ... and 6 others [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cpu` [INFO] [stdout] --> src/debugger/mod.rs:164:55 [INFO] [stdout] | [INFO] [stdout] 164 | pub fn disassemble_opcode(&self, opcode: &Opcode, cpu: &CPU) -> String { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cpu` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `sp` on type `CPU<'_>` [INFO] [stdout] --> src/cpu.rs:465:30 [INFO] [stdout] | [INFO] [stdout] 465 | assert_eq!(cpu.stack[cpu.sp as usize], 0x202); [INFO] [stdout] | ^^ unknown field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `hz`, `program_delay`, `mem`, `regs`, `index` ... and 6 others [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `sp` on type `CPU<'_>` [INFO] [stdout] --> src/cpu.rs:479:20 [INFO] [stdout] | [INFO] [stdout] 479 | assert_eq!(cpu.sp, 0); [INFO] [stdout] | ^^ unknown field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `hz`, `program_delay`, `mem`, `regs`, `index` ... and 6 others [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 1 argument but 0 arguments were supplied [INFO] [stdout] --> src/display.rs:120:20 [INFO] [stdout] | [INFO] [stdout] 120 | let mut disp = Display::new(); [INFO] [stdout] | ^^^^^^^^^^^^-- supplied 0 arguments [INFO] [stdout] | | [INFO] [stdout] | expected 1 argument [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/display.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn new(context: sdl2::Sdl) -> Display<'d> { [INFO] [stdout] | ^^^ ------------------ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 1 argument but 0 arguments were supplied [INFO] [stdout] --> src/display.rs:132:20 [INFO] [stdout] | [INFO] [stdout] 132 | let mut disp = Display::new(); [INFO] [stdout] | ^^^^^^^^^^^^-- supplied 0 arguments [INFO] [stdout] | | [INFO] [stdout] | expected 1 argument [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/display.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn new(context: sdl2::Sdl) -> Display<'d> { [INFO] [stdout] | ^^^ ------------------ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `write_byte` found for struct `display::Display<'_>` in the current scope [INFO] [stdout] --> src/display.rs:133:20 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct Display<'d> { [INFO] [stdout] | ---------------------- method `write_byte` not found for this [INFO] [stdout] ... [INFO] [stdout] 133 | let res = disp.write_byte(byte, x, y); [INFO] [stdout] | ^^^^^^^^^^ help: there is an associated function with a similar name: `write_bytes` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/display.rs:135:36 [INFO] [stdout] | [INFO] [stdout] 135 | let arr: [u8; 8] = get_sub_arr(&disp.pixels, x, y); [INFO] [stdout] | ^^^^^^^^^^^^ expected `u8`, found `bool` [INFO] [stdout] | [INFO] [stdout] = note: expected reference `&[u8; 2048]` [INFO] [stdout] found reference `&[bool; 2048]` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `reset` [INFO] [stdout] --> src/cpu.rs:69:12 [INFO] [stdout] | [INFO] [stdout] 69 | pub fn reset(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `initialize` [INFO] [stdout] --> src/cpu.rs:79:12 [INFO] [stdout] | [INFO] [stdout] 79 | pub fn initialize(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `set_speed_hz` [INFO] [stdout] --> src/cpu.rs:92:12 [INFO] [stdout] | [INFO] [stdout] 92 | pub fn set_speed_hz(&mut self, hertz: u32) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `get_sub_arr` [INFO] [stdout] --> src/cpu.rs:441:8 [INFO] [stdout] | [INFO] [stdout] 441 | pub fn get_sub_arr(arr: &[u8; 4096], start: usize) -> [u8; 8] { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `byte_to_digits` [INFO] [stdout] --> src/display.rs:56:8 [INFO] [stdout] | [INFO] [stdout] 56 | fn byte_to_digits(&self, byte: u8) -> [u8; 8] { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `get_sub_arr` [INFO] [stdout] --> src/display.rs:109:8 [INFO] [stdout] | [INFO] [stdout] 109 | pub fn get_sub_arr(arr: &[u8; 2048], x: usize, y: usize) -> [u8; 8] { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `current_index` [INFO] [stdout] --> src/utils.rs:57:12 [INFO] [stdout] | [INFO] [stdout] 57 | pub fn current_index(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `peek` [INFO] [stdout] --> src/utils.rs:84:12 [INFO] [stdout] | [INFO] [stdout] 84 | pub fn peek(&self, index: usize) -> u16 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `clear` [INFO] [stdout] --> src/utils.rs:87:12 [INFO] [stdout] | [INFO] [stdout] 87 | pub fn clear(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `OPTION_MENU` [INFO] [stdout] --> src/debugger/view.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | const OPTION_MENU: &'static str = "| Instructions | State

(Pause/Play) | Quit | Speed |"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `View` [INFO] [stdout] --> src/debugger/view.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct View<'view> { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/debugger/view.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 20 | pub fn new() -> View<'view> { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `initialize` [INFO] [stdout] --> src/debugger/view.rs:33:12 [INFO] [stdout] | [INFO] [stdout] 33 | pub fn initialize(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `render` [INFO] [stdout] --> src/debugger/view.rs:38:12 [INFO] [stdout] | [INFO] [stdout] 38 | pub fn render(&mut self, lines: I, info:Vec) [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `clear` [INFO] [stdout] --> src/debugger/view.rs:52:12 [INFO] [stdout] | [INFO] [stdout] 52 | pub fn clear(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `paint_lines` [INFO] [stdout] --> src/debugger/view.rs:55:8 [INFO] [stdout] | [INFO] [stdout] 55 | fn paint_lines(&mut self, lines: I) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `paint_menu` [INFO] [stdout] --> src/debugger/view.rs:75:8 [INFO] [stdout] | [INFO] [stdout] 75 | fn paint_menu(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `paint_info` [INFO] [stdout] --> src/debugger/view.rs:82:8 [INFO] [stdout] | [INFO] [stdout] 82 | fn paint_info(&mut self, info: Vec) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `update` [INFO] [stdout] --> src/debugger/view.rs:89:8 [INFO] [stdout] | [INFO] [stdout] 89 | fn update(&mut self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `blank_string` [INFO] [stdout] --> src/debugger/view.rs:97:4 [INFO] [stdout] | [INFO] [stdout] 97 | fn blank_string(size: usize) -> String { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `PlayToggle` [INFO] [stdout] --> src/debugger/mod.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | PlayToggle, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Step` [INFO] [stdout] --> src/debugger/mod.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | Step, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Back` [INFO] [stdout] --> src/debugger/mod.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | Back, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Next` [INFO] [stdout] --> src/debugger/mod.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | Next, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Quit` [INFO] [stdout] --> src/debugger/mod.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | Quit, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Reset` [INFO] [stdout] --> src/debugger/mod.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | Reset, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `ChangeSpeed` [INFO] [stdout] --> src/debugger/mod.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | ChangeSpeed(i32) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Quitting` [INFO] [stdout] --> src/debugger/mod.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | Quitting, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Paused` [INFO] [stdout] --> src/debugger/mod.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | Paused, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Running` [INFO] [stdout] --> src/debugger/mod.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | Running, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Debugger` [INFO] [stdout] --> src/debugger/mod.rs:32:12 [INFO] [stdout] | [INFO] [stdout] 32 | pub struct Debugger<'a> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/debugger/mod.rs:42:12 [INFO] [stdout] | [INFO] [stdout] 42 | pub fn new() -> Debugger<'a> { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `dump_instr` [INFO] [stdout] --> src/debugger/mod.rs:52:8 [INFO] [stdout] | [INFO] [stdout] 52 | fn dump_instr(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `reset` [INFO] [stdout] --> src/debugger/mod.rs:58:8 [INFO] [stdout] | [INFO] [stdout] 58 | fn reset(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `load_rom` [INFO] [stdout] --> src/debugger/mod.rs:65:12 [INFO] [stdout] | [INFO] [stdout] 65 | pub fn load_rom(&mut self, rom: &str) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `step` [INFO] [stdout] --> src/debugger/mod.rs:68:8 [INFO] [stdout] | [INFO] [stdout] 68 | fn step(&mut self, distance: i32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `cycle` [INFO] [stdout] --> src/debugger/mod.rs:74:8 [INFO] [stdout] | [INFO] [stdout] 74 | fn cycle(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `render` [INFO] [stdout] --> src/debugger/mod.rs:78:8 [INFO] [stdout] | [INFO] [stdout] 78 | fn render(&mut self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `toggle_play` [INFO] [stdout] --> src/debugger/mod.rs:109:8 [INFO] [stdout] | [INFO] [stdout] 109 | fn toggle_play(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `quit` [INFO] [stdout] --> src/debugger/mod.rs:115:8 [INFO] [stdout] | [INFO] [stdout] 115 | fn quit(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `change_speed` [INFO] [stdout] --> src/debugger/mod.rs:118:8 [INFO] [stdout] | [INFO] [stdout] 118 | fn change_speed(&mut self, hertz: i32) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `handle_command` [INFO] [stdout] --> src/debugger/mod.rs:122:8 [INFO] [stdout] | [INFO] [stdout] 122 | fn handle_command(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `run` [INFO] [stdout] --> src/debugger/mod.rs:134:12 [INFO] [stdout] | [INFO] [stdout] 134 | pub fn run(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `disassemble_opcode` [INFO] [stdout] --> src/debugger/mod.rs:164:12 [INFO] [stdout] | [INFO] [stdout] 164 | pub fn disassemble_opcode(&self, opcode: &Opcode, cpu: &CPU) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 1 argument but 0 arguments were supplied [INFO] [stdout] --> src/display.rs:142:20 [INFO] [stdout] | [INFO] [stdout] 142 | let mut disp = Display::new(); [INFO] [stdout] | ^^^^^^^^^^^^-- supplied 0 arguments [INFO] [stdout] | | [INFO] [stdout] | expected 1 argument [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/display.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn new(context: sdl2::Sdl) -> Display<'d> { [INFO] [stdout] | ^^^ ------------------ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this method call currently resolves to `<&[T; N] as IntoIterator>::into_iter` (due to autoref coercions), but that might change in the future when `IntoIterator` impls for arrays are added. [INFO] [stdout] --> src/cpu.rs:120:35 [INFO] [stdout] | [INFO] [stdout] 120 | for (i, byte) in FONT_SET.into_iter().enumerate() { [INFO] [stdout] | ^^^^^^^^^ help: use `.iter()` instead of `.into_iter()` to avoid ambiguity: `iter` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(array_into_iter)]` on by default [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #66145 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this method call currently resolves to `<&[T; N] as IntoIterator>::into_iter` (due to autoref coercions), but that might change in the future when `IntoIterator` impls for arrays are added. [INFO] [stdout] --> src/display.rs:69:37 [INFO] [stdout] | [INFO] [stdout] 69 | for (idx, p) in self.pixels.into_iter().enumerate() { [INFO] [stdout] | ^^^^^^^^^ help: use `.iter()` instead of `.into_iter()` to avoid ambiguity: `iter` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #66145 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `write_byte` found for struct `display::Display<'_>` in the current scope [INFO] [stdout] --> src/display.rs:143:20 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct Display<'d> { [INFO] [stdout] | ---------------------- method `write_byte` not found for this [INFO] [stdout] ... [INFO] [stdout] 143 | let res = disp.write_byte(0b10101010, 60, 1); [INFO] [stdout] | ^^^^^^^^^^ help: there is an associated function with a similar name: `write_bytes` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this method call currently resolves to `<&[T; N] as IntoIterator>::into_iter` (due to autoref coercions), but that might change in the future when `IntoIterator` impls for arrays are added. [INFO] [stdout] --> src/keyboard.rs:155:32 [INFO] [stdout] | [INFO] [stdout] 155 | for key in self.keys().into_iter() { [INFO] [stdout] | ^^^^^^^^^ help: use `.iter()` instead of `.into_iter()` to avoid ambiguity: `iter` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #66145 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this method call currently resolves to `<&[T; N] as IntoIterator>::into_iter` (due to autoref coercions), but that might change in the future when `IntoIterator` impls for arrays are added. [INFO] [stdout] --> src/keyboard.rs:164:32 [INFO] [stdout] | [INFO] [stdout] 164 | for key in self.keys().into_iter() { [INFO] [stdout] | ^^^^^^^^^ help: use `.iter()` instead of `.into_iter()` to avoid ambiguity: `iter` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #66145 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/cpu.rs:113:9 [INFO] [stdout] | [INFO] [stdout] 113 | file.read_to_end(&mut rom); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/display.rs:74:17 [INFO] [stdout] | [INFO] [stdout] 74 | self.renderer.fill_rect(pixel.to_sdl()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/display.rs:148:19 [INFO] [stdout] | [INFO] [stdout] 148 | list[i] = disp.pixels[i + start]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ expected `u8`, found `bool` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/debugger/view.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | self.stdout.flush(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/debugger/view.rs:47:13 [INFO] [stdout] | [INFO] [stdout] 47 | self.stdout.flush(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/debugger/view.rs:53:9 [INFO] [stdout] | [INFO] [stdout] 53 | write!(self.stdout, "{}", clear::All); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/debugger/view.rs:86:13 [INFO] [stdout] | [INFO] [stdout] 86 | write!(self.stdout, "{}{}", cursor::Goto(x, (y + i) as u16), s); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 93 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no variant or associated item named `SysAddressJump_0x0000` found for enum `Instruction` in the current scope [INFO] [stdout] --> src/opcodes.rs:140:31 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum Instruction { [INFO] [stdout] | -------------------- variant or associated item `SysAddressJump_0x0000` not found here [INFO] [stdout] ... [INFO] [stdout] 140 | (0x0000, Instruction::SysAddressJump_0x0000), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | variant or associated item not found in `Instruction` [INFO] [stdout] | help: there is a variant with a similar name: `SysAddressJump_0x0NNN` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no variant or associated item named `JumpLocation_0x1000` found for enum `Instruction` in the current scope [INFO] [stdout] --> src/opcodes.rs:141:31 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum Instruction { [INFO] [stdout] | -------------------- variant or associated item `JumpLocation_0x1000` not found here [INFO] [stdout] ... [INFO] [stdout] 141 | (0x1000, Instruction::JumpLocation_0x1000), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | variant or associated item not found in `Instruction` [INFO] [stdout] | help: there is a variant with a similar name: `JumpLocation_0x1NNN` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no variant or associated item named `CallSubroutine_0x2000` found for enum `Instruction` in the current scope [INFO] [stdout] --> src/opcodes.rs:142:31 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum Instruction { [INFO] [stdout] | -------------------- variant or associated item `CallSubroutine_0x2000` not found here [INFO] [stdout] ... [INFO] [stdout] 142 | (0x2000, Instruction::CallSubroutine_0x2000), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | variant or associated item not found in `Instruction` [INFO] [stdout] | help: there is a variant with a similar name: `CallSubroutine_0x2NNN` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no variant or associated item named `SkipInstrIfVxEqPL_0x3000` found for enum `Instruction` in the current scope [INFO] [stdout] --> src/opcodes.rs:143:31 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum Instruction { [INFO] [stdout] | -------------------- variant or associated item `SkipInstrIfVxEqPL_0x3000` not found here [INFO] [stdout] ... [INFO] [stdout] 143 | (0x3000, Instruction::SkipInstrIfVxEqPL_0x3000), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | variant or associated item not found in `Instruction` [INFO] [stdout] | help: there is a variant with a similar name: `SkipInstrIfVxEqPL_0x3XNN` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no variant or associated item named `SkipInstrIfVxNotEqPL_0x4000` found for enum `Instruction` in the current scope [INFO] [stdout] --> src/opcodes.rs:144:31 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum Instruction { [INFO] [stdout] | -------------------- variant or associated item `SkipInstrIfVxNotEqPL_0x4000` not found here [INFO] [stdout] ... [INFO] [stdout] 144 | (0x4000, Instruction::SkipInstrIfVxNotEqPL_0x4000), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | variant or associated item not found in `Instruction` [INFO] [stdout] | help: there is a variant with a similar name: `SkipInstrIfVxNotEqPL_0x4XNN` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no variant or associated item named `SkipInstrIfVxVy_0x5000` found for enum `Instruction` in the current scope [INFO] [stdout] --> src/opcodes.rs:145:31 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum Instruction { [INFO] [stdout] | -------------------- variant or associated item `SkipInstrIfVxVy_0x5000` not found here [INFO] [stdout] ... [INFO] [stdout] 145 | (0x5000, Instruction::SkipInstrIfVxVy_0x5000), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | variant or associated item not found in `Instruction` [INFO] [stdout] | help: there is a variant with a similar name: `SkipInstrIfVxVy_0x5XY0` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no variant or associated item named `SetVxToPL_0x6000` found for enum `Instruction` in the current scope [INFO] [stdout] --> src/opcodes.rs:146:31 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum Instruction { [INFO] [stdout] | -------------------- variant or associated item `SetVxToPL_0x6000` not found here [INFO] [stdout] ... [INFO] [stdout] 146 | (0x6000, Instruction::SetVxToPL_0x6000), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | variant or associated item not found in `Instruction` [INFO] [stdout] | help: there is a variant with a similar name: `SetVxToPL_0x6XNN` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no variant or associated item named `IncrementVxByPL_0x7000` found for enum `Instruction` in the current scope [INFO] [stdout] --> src/opcodes.rs:147:31 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum Instruction { [INFO] [stdout] | -------------------- variant or associated item `IncrementVxByPL_0x7000` not found here [INFO] [stdout] ... [INFO] [stdout] 147 | (0x7000, Instruction::IncrementVxByPL_0x7000), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | variant or associated item not found in `Instruction` [INFO] [stdout] | help: there is a variant with a similar name: `IncrementVxByPL_0x7XNN` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no variant or associated item named `SetVxToVy_0x8000` found for enum `Instruction` in the current scope [INFO] [stdout] --> src/opcodes.rs:148:31 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum Instruction { [INFO] [stdout] | -------------------- variant or associated item `SetVxToVy_0x8000` not found here [INFO] [stdout] ... [INFO] [stdout] 148 | (0x8FF0, Instruction::SetVxToVy_0x8000), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | variant or associated item not found in `Instruction` [INFO] [stdout] | help: there is a variant with a similar name: `SetVxToVy_0x8XY0` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no variant or associated item named `SetVxToVxORVy_0x8001` found for enum `Instruction` in the current scope [INFO] [stdout] --> src/opcodes.rs:149:31 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum Instruction { [INFO] [stdout] | -------------------- variant or associated item `SetVxToVxORVy_0x8001` not found here [INFO] [stdout] ... [INFO] [stdout] 149 | (0x8FF1, Instruction::SetVxToVxORVy_0x8001), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | variant or associated item not found in `Instruction` [INFO] [stdout] | help: there is a variant with a similar name: `SetVxToVxORVy_0x8XY1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no variant or associated item named `SetVxToVxANDVy_0x8002` found for enum `Instruction` in the current scope [INFO] [stdout] --> src/opcodes.rs:150:31 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum Instruction { [INFO] [stdout] | -------------------- variant or associated item `SetVxToVxANDVy_0x8002` not found here [INFO] [stdout] ... [INFO] [stdout] 150 | (0x8FF2, Instruction::SetVxToVxANDVy_0x8002), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | variant or associated item not found in `Instruction` [INFO] [stdout] | help: there is a variant with a similar name: `SetVxToVxANDVy_0x8XY2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no variant or associated item named `SetVxToVxXORVy_0x8003` found for enum `Instruction` in the current scope [INFO] [stdout] --> src/opcodes.rs:151:31 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum Instruction { [INFO] [stdout] | -------------------- variant or associated item `SetVxToVxXORVy_0x8003` not found here [INFO] [stdout] ... [INFO] [stdout] 151 | (0x8FF3, Instruction::SetVxToVxXORVy_0x8003), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | variant or associated item not found in `Instruction` [INFO] [stdout] | help: there is a variant with a similar name: `SetVxToVxXORVy_0x8XY3` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no variant or associated item named `IncrementVxByVyAndCarry_0x8004` found for enum `Instruction` in the current scope [INFO] [stdout] --> src/opcodes.rs:152:31 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum Instruction { [INFO] [stdout] | -------------------- variant or associated item `IncrementVxByVyAndCarry_0x8004` not found here [INFO] [stdout] ... [INFO] [stdout] 152 | (0x8FF4, Instruction::IncrementVxByVyAndCarry_0x8004), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | variant or associated item not found in `Instruction` [INFO] [stdout] | help: there is a variant with a similar name: `IncrementVxByVyAndCarry_0x8XY4` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no variant or associated item named `DecrementVxByVyNoBorrow_0x8005` found for enum `Instruction` in the current scope [INFO] [stdout] --> src/opcodes.rs:153:31 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum Instruction { [INFO] [stdout] | -------------------- variant or associated item `DecrementVxByVyNoBorrow_0x8005` not found here [INFO] [stdout] ... [INFO] [stdout] 153 | (0x8FF5, Instruction::DecrementVxByVyNoBorrow_0x8005), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | variant or associated item not found in `Instruction` [INFO] [stdout] | help: there is a variant with a similar name: `DecrementVxByVyNoBorrow_0x8XY5` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no variant or associated item named `ShiftAndRotateVxRight_0x8006` found for enum `Instruction` in the current scope [INFO] [stdout] --> src/opcodes.rs:154:31 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum Instruction { [INFO] [stdout] | -------------------- variant or associated item `ShiftAndRotateVxRight_0x8006` not found here [INFO] [stdout] ... [INFO] [stdout] 154 | (0x8FF6, Instruction::ShiftAndRotateVxRight_0x8006), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | variant or associated item not found in `Instruction` [INFO] [stdout] | help: there is a variant with a similar name: `ShiftAndRotateVxRight_0x8XY6` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no variant or associated item named `DecrementVyByVxNoBorrow_0x8007` found for enum `Instruction` in the current scope [INFO] [stdout] --> src/opcodes.rs:155:31 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum Instruction { [INFO] [stdout] | -------------------- variant or associated item `DecrementVyByVxNoBorrow_0x8007` not found here [INFO] [stdout] ... [INFO] [stdout] 155 | (0x8FF7, Instruction::DecrementVyByVxNoBorrow_0x8007), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | variant or associated item not found in `Instruction` [INFO] [stdout] | help: there is a variant with a similar name: `DecrementVyByVxNoBorrow_0x8XY7` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no variant or associated item named `ShiftAndRotateVxLeft_0x800E` found for enum `Instruction` in the current scope [INFO] [stdout] --> src/opcodes.rs:156:31 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum Instruction { [INFO] [stdout] | -------------------- variant or associated item `ShiftAndRotateVxLeft_0x800E` not found here [INFO] [stdout] ... [INFO] [stdout] 156 | (0x8FFE, Instruction::ShiftAndRotateVxLeft_0x800E), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | variant or associated item not found in `Instruction` [INFO] [stdout] | help: there is a variant with a similar name: `ShiftAndRotateVxLeft_0x8XYE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no variant or associated item named `SkipInstrIfVxNotVy_0x9000` found for enum `Instruction` in the current scope [INFO] [stdout] --> src/opcodes.rs:157:31 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum Instruction { [INFO] [stdout] | -------------------- variant or associated item `SkipInstrIfVxNotVy_0x9000` not found here [INFO] [stdout] ... [INFO] [stdout] 157 | (0x9000, Instruction::SkipInstrIfVxNotVy_0x9000), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | variant or associated item not found in `Instruction` [INFO] [stdout] | help: there is a variant with a similar name: `SkipInstrIfVxNotVy_0x9XY0` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no variant or associated item named `SetIndexRegToPL_0xA000` found for enum `Instruction` in the current scope [INFO] [stdout] --> src/opcodes.rs:158:31 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum Instruction { [INFO] [stdout] | -------------------- variant or associated item `SetIndexRegToPL_0xA000` not found here [INFO] [stdout] ... [INFO] [stdout] 158 | (0xA000, Instruction::SetIndexRegToPL_0xA000), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | variant or associated item not found in `Instruction` [INFO] [stdout] | help: there is a variant with a similar name: `SetIndexRegToPL_0xANNN` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no variant or associated item named `JumpToV0PlusPL_0xB000` found for enum `Instruction` in the current scope [INFO] [stdout] --> src/opcodes.rs:159:31 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum Instruction { [INFO] [stdout] | -------------------- variant or associated item `JumpToV0PlusPL_0xB000` not found here [INFO] [stdout] ... [INFO] [stdout] 159 | (0xB000, Instruction::JumpToV0PlusPL_0xB000), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | variant or associated item not found in `Instruction` [INFO] [stdout] | help: there is a variant with a similar name: `JumpToV0PlusPL_0xBNNN` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no variant or associated item named `SetVxRandByteANDPL_0xC000` found for enum `Instruction` in the current scope [INFO] [stdout] --> src/opcodes.rs:160:31 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum Instruction { [INFO] [stdout] | -------------------- variant or associated item `SetVxRandByteANDPL_0xC000` not found here [INFO] [stdout] ... [INFO] [stdout] 160 | (0xC000, Instruction::SetVxRandByteANDPL_0xC000), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | variant or associated item not found in `Instruction` [INFO] [stdout] | help: there is a variant with a similar name: `SetVxRandByteANDPL_0xCXNN` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no variant or associated item named `DisplaySpriteSetVfColl_0xD000` found for enum `Instruction` in the current scope [INFO] [stdout] --> src/opcodes.rs:161:31 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum Instruction { [INFO] [stdout] | -------------------- variant or associated item `DisplaySpriteSetVfColl_0xD000` not found here [INFO] [stdout] ... [INFO] [stdout] 161 | (0xD000, Instruction::DisplaySpriteSetVfColl_0xD000), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | variant or associated item not found in `Instruction` [INFO] [stdout] | help: there is a variant with a similar name: `DisplaySpriteSetVfColl_0xDXYN` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no variant or associated item named `SkipInstrIfVxPressed_0xE09E` found for enum `Instruction` in the current scope [INFO] [stdout] --> src/opcodes.rs:162:31 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum Instruction { [INFO] [stdout] | -------------------- variant or associated item `SkipInstrIfVxPressed_0xE09E` not found here [INFO] [stdout] ... [INFO] [stdout] 162 | (0xEF9E, Instruction::SkipInstrIfVxPressed_0xE09E), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | variant or associated item not found in `Instruction` [INFO] [stdout] | help: there is a variant with a similar name: `SkipInstrIfVxPressed_0xEX9E` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no variant or associated item named `SkipInstrIfVxNotPressed_0xE0A1` found for enum `Instruction` in the current scope [INFO] [stdout] --> src/opcodes.rs:163:31 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum Instruction { [INFO] [stdout] | -------------------- variant or associated item `SkipInstrIfVxNotPressed_0xE0A1` not found here [INFO] [stdout] ... [INFO] [stdout] 163 | (0xEFA1, Instruction::SkipInstrIfVxNotPressed_0xE0A1), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | variant or associated item not found in `Instruction` [INFO] [stdout] | help: there is a variant with a similar name: `SkipInstrIfVxNotPressed_0xEXA1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no variant or associated item named `SetVxToDelayTimerVal_0xF007` found for enum `Instruction` in the current scope [INFO] [stdout] --> src/opcodes.rs:164:31 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum Instruction { [INFO] [stdout] | -------------------- variant or associated item `SetVxToDelayTimerVal_0xF007` not found here [INFO] [stdout] ... [INFO] [stdout] 164 | (0xFF07, Instruction::SetVxToDelayTimerVal_0xF007), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | variant or associated item not found in `Instruction` [INFO] [stdout] | help: there is a variant with a similar name: `SetVxToDelayTimerVal_0xFX07` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no variant or associated item named `WaitForKeyStoreInVx_0xF00A` found for enum `Instruction` in the current scope [INFO] [stdout] --> src/opcodes.rs:165:31 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum Instruction { [INFO] [stdout] | -------------------- variant or associated item `WaitForKeyStoreInVx_0xF00A` not found here [INFO] [stdout] ... [INFO] [stdout] 165 | (0xFF0A, Instruction::WaitForKeyStoreInVx_0xF00A), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | variant or associated item not found in `Instruction` [INFO] [stdout] | help: there is a variant with a similar name: `WaitForKeyStoreInVx_0xFX0A` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no variant or associated item named `SetDelayTimerToVx_0xF015` found for enum `Instruction` in the current scope [INFO] [stdout] --> src/opcodes.rs:166:31 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum Instruction { [INFO] [stdout] | -------------------- variant or associated item `SetDelayTimerToVx_0xF015` not found here [INFO] [stdout] ... [INFO] [stdout] 166 | (0xFF15, Instruction::SetDelayTimerToVx_0xF015), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | variant or associated item not found in `Instruction` [INFO] [stdout] | help: there is a variant with a similar name: `SetDelayTimerToVx_0xFX15` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no variant or associated item named `SetSoundTimerToVx_0xF018` found for enum `Instruction` in the current scope [INFO] [stdout] --> src/opcodes.rs:167:31 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum Instruction { [INFO] [stdout] | -------------------- variant or associated item `SetSoundTimerToVx_0xF018` not found here [INFO] [stdout] ... [INFO] [stdout] 167 | (0xFF18, Instruction::SetSoundTimerToVx_0xF018), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | variant or associated item not found in `Instruction` [INFO] [stdout] | help: there is a variant with a similar name: `SetSoundTimerToVx_0xFX18` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no variant or associated item named `IncrementIndexRegByVx_0xF01E` found for enum `Instruction` in the current scope [INFO] [stdout] --> src/opcodes.rs:168:31 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum Instruction { [INFO] [stdout] | -------------------- variant or associated item `IncrementIndexRegByVx_0xF01E` not found here [INFO] [stdout] ... [INFO] [stdout] 168 | (0xFF1E, Instruction::IncrementIndexRegByVx_0xF01E), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | variant or associated item not found in `Instruction` [INFO] [stdout] | help: there is a variant with a similar name: `IncrementIndexRegByVx_0xFX1E` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no variant or associated item named `SetIndexRegToVxSprite_0xF029` found for enum `Instruction` in the current scope [INFO] [stdout] --> src/opcodes.rs:169:31 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum Instruction { [INFO] [stdout] | -------------------- variant or associated item `SetIndexRegToVxSprite_0xF029` not found here [INFO] [stdout] ... [INFO] [stdout] 169 | (0xFF29, Instruction::SetIndexRegToVxSprite_0xF029), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | variant or associated item not found in `Instruction` [INFO] [stdout] | help: there is a variant with a similar name: `SetIndexRegToVxSprite_0xFX29` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no variant or associated item named `StoreBCDOfVxIn3Bytes_0xF033` found for enum `Instruction` in the current scope [INFO] [stdout] --> src/opcodes.rs:170:31 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum Instruction { [INFO] [stdout] | -------------------- variant or associated item `StoreBCDOfVxIn3Bytes_0xF033` not found here [INFO] [stdout] ... [INFO] [stdout] 170 | (0xFF33, Instruction::StoreBCDOfVxIn3Bytes_0xF033), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | variant or associated item not found in `Instruction` [INFO] [stdout] | help: there is a variant with a similar name: `StoreBCDOfVxIn3Bytes_0xFX33` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no variant or associated item named `StoreRegsUptoVx_0xF055` found for enum `Instruction` in the current scope [INFO] [stdout] --> src/opcodes.rs:171:31 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum Instruction { [INFO] [stdout] | -------------------- variant or associated item `StoreRegsUptoVx_0xF055` not found here [INFO] [stdout] ... [INFO] [stdout] 171 | (0xFF55, Instruction::StoreRegsUptoVx_0xF055), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | variant or associated item not found in `Instruction` [INFO] [stdout] | help: there is a variant with a similar name: `StoreRegsUptoVx_0xFX55` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no variant or associated item named `ReadRegsUptoVx_0xF065` found for enum `Instruction` in the current scope [INFO] [stdout] --> src/opcodes.rs:172:31 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum Instruction { [INFO] [stdout] | -------------------- variant or associated item `ReadRegsUptoVx_0xF065` not found here [INFO] [stdout] ... [INFO] [stdout] 172 | (0xFF65, Instruction::ReadRegsUptoVx_0xF065), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | variant or associated item not found in `Instruction` [INFO] [stdout] | help: there is a variant with a similar name: `ReadRegsUptoVx_0xFX65` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 43 previous errors; 37 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0061, E0308, E0599, E0609. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0061`. [INFO] [stdout] [INFO] [stderr] error: could not compile `chip8` [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `Command { std: "docker" "inspect" "aca80b89b762a9b6d796a6d5ec0d920d4d5da93e8511d6e90d4188c29042c50a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "aca80b89b762a9b6d796a6d5ec0d920d4d5da93e8511d6e90d4188c29042c50a", kill_on_drop: false }` [INFO] [stdout] aca80b89b762a9b6d796a6d5ec0d920d4d5da93e8511d6e90d4188c29042c50a