[INFO] cloning repository https://github.com/wenhaozhao/gb_simulator [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/wenhaozhao/gb_simulator" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwenhaozhao%2Fgb_simulator", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwenhaozhao%2Fgb_simulator'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 8314221c2e08428d92253b3d002ca0291ca5dd4f [INFO] checking wenhaozhao/gb_simulator against master#1f12b9b0fdbe735968ac002792a720f0ba4faca6 for crater-rollup-uwu [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwenhaozhao%2Fgb_simulator" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/wenhaozhao/gb_simulator on toolchain 1f12b9b0fdbe735968ac002792a720f0ba4faca6 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/wenhaozhao/gb_simulator [INFO] finished tweaking git repo https://github.com/wenhaozhao/gb_simulator [INFO] tweaked toml for git repo https://github.com/wenhaozhao/gb_simulator written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/wenhaozhao/gb_simulator 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" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded x11-dl v2.21.0 [INFO] [stderr] Downloaded once_cell v1.18.0 [INFO] [stderr] Downloaded wayland-scanner v0.29.5 [INFO] [stderr] Downloaded xcursor v0.3.4 [INFO] [stderr] Downloaded wayland-cursor v0.29.5 [INFO] [stderr] Downloaded pkg-config v0.3.27 [INFO] [stderr] Downloaded futures-io v0.3.28 [INFO] [stderr] Downloaded raw-window-handle v0.4.3 [INFO] [stderr] Downloaded futures-task v0.3.28 [INFO] [stderr] Downloaded fastrand v2.0.1 [INFO] [stderr] Downloaded futures-core v0.3.28 [INFO] [stderr] Downloaded futures-executor v0.3.28 [INFO] [stderr] Downloaded semver v1.0.19 [INFO] [stderr] Downloaded cc v1.0.83 [INFO] [stderr] Downloaded js-sys v0.3.64 [INFO] [stderr] Downloaded serde v1.0.189 [INFO] [stderr] Downloaded memchr v2.6.4 [INFO] [stderr] Downloaded wayland-protocols v0.29.5 [INFO] [stderr] Downloaded futures-util v0.3.28 [INFO] [stderr] Downloaded sdl2 v0.35.2 [INFO] [stderr] Downloaded bumpalo v3.14.0 [INFO] [stderr] Downloaded wasm-bindgen v0.2.87 [INFO] [stderr] Downloaded wayland-client v0.29.5 [INFO] [stderr] Downloaded syn v2.0.38 [INFO] [stderr] Downloaded futures v0.3.28 [INFO] [stderr] Downloaded wasm-bindgen-backend v0.2.87 [INFO] [stderr] Downloaded smallvec v1.11.1 [INFO] [stderr] Downloaded proc-macro2 v1.0.68 [INFO] [stderr] Downloaded minifb v0.25.0 [INFO] [stderr] Downloaded rustix v0.38.20 [INFO] [stderr] Downloaded serde_derive v1.0.189 [INFO] [stderr] Downloaded tempfile v3.8.0 [INFO] [stderr] Downloaded wayland-commons v0.29.5 [INFO] [stderr] Downloaded quote v1.0.33 [INFO] [stderr] Downloaded xml-rs v0.8.19 [INFO] [stderr] Downloaded futures-channel v0.3.28 [INFO] [stderr] Downloaded bitflags v2.4.1 [INFO] [stderr] Downloaded log v0.4.20 [INFO] [stderr] Downloaded libloading v0.8.1 [INFO] [stderr] Downloaded futures-macro v0.3.28 [INFO] [stderr] Downloaded version-compare v0.1.1 [INFO] [stderr] Downloaded redox_syscall v0.3.5 [INFO] [stderr] Downloaded wasm-bindgen-macro v0.2.87 [INFO] [stderr] Downloaded wasm-bindgen-futures v0.4.37 [INFO] [stderr] Downloaded errno v0.3.5 [INFO] [stderr] Downloaded wasm-bindgen-macro-support v0.2.87 [INFO] [stderr] Downloaded wayland-sys v0.29.5 [INFO] [stderr] Downloaded libc v0.2.149 [INFO] [stderr] Downloaded cty v0.2.2 [INFO] [stderr] Downloaded web-sys v0.3.64 [INFO] [stderr] Downloaded wasm-bindgen-shared v0.2.87 [INFO] [stderr] Downloaded dlib v0.5.2 [INFO] [stderr] Downloaded orbclient v0.3.46 [INFO] [stderr] Downloaded linux-raw-sys v0.4.10 [INFO] [stderr] Downloaded sdl2-sys v0.35.2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 10e93715ed62a42edf327bdf783e2916f13fd25d0fff6a40ceb0975ca477165b [INFO] running `Command { std: "docker" "start" "-a" "10e93715ed62a42edf327bdf783e2916f13fd25d0fff6a40ceb0975ca477165b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "10e93715ed62a42edf327bdf783e2916f13fd25d0fff6a40ceb0975ca477165b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "10e93715ed62a42edf327bdf783e2916f13fd25d0fff6a40ceb0975ca477165b", kill_on_drop: false }` [INFO] [stdout] 10e93715ed62a42edf327bdf783e2916f13fd25d0fff6a40ceb0975ca477165b [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] bd255ba2c807117ebd0a6ebedc413ee58266f021cb86108254301c6b77dc3002 [INFO] running `Command { std: "docker" "start" "-a" "bd255ba2c807117ebd0a6ebedc413ee58266f021cb86108254301c6b77dc3002", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.68 [INFO] [stderr] Compiling pkg-config v0.3.27 [INFO] [stderr] Compiling libc v0.2.149 [INFO] [stderr] Compiling xml-rs v0.8.19 [INFO] [stderr] Checking once_cell v1.18.0 [INFO] [stderr] Checking smallvec v1.11.1 [INFO] [stderr] Compiling rustix v0.38.20 [INFO] [stderr] Checking scoped-tls v1.0.1 [INFO] [stderr] Checking downcast-rs v1.2.0 [INFO] [stderr] Checking memchr v2.6.4 [INFO] [stderr] Checking minimal-lexical v0.2.1 [INFO] [stderr] Compiling memoffset v0.6.5 [INFO] [stderr] Checking libloading v0.8.1 [INFO] [stderr] Checking bitflags v2.4.1 [INFO] [stderr] Checking linux-raw-sys v0.4.10 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Checking cty v0.2.2 [INFO] [stderr] Checking fastrand v2.0.1 [INFO] [stderr] Checking dlib v0.5.2 [INFO] [stderr] Checking raw-window-handle v0.4.3 [INFO] [stderr] Compiling wayland-sys v0.29.5 [INFO] [stderr] Compiling x11-dl v2.21.0 [INFO] [stderr] Checking nom v7.1.3 [INFO] [stderr] Compiling quote v1.0.33 [INFO] [stderr] Compiling wayland-scanner v0.29.5 [INFO] [stderr] Compiling cc v1.0.83 [INFO] [stderr] Checking nix v0.24.3 [INFO] [stderr] Compiling minifb v0.25.0 [INFO] [stderr] Compiling wayland-client v0.29.5 [INFO] [stderr] Compiling wayland-protocols v0.29.5 [INFO] [stderr] Checking tempfile v3.8.0 [INFO] [stderr] Checking xcursor v0.3.4 [INFO] [stderr] Checking wayland-commons v0.29.5 [INFO] [stderr] Compiling derive_more v0.99.17 [INFO] [stderr] Checking wayland-cursor v0.29.5 [INFO] [stderr] Checking gb_simulator v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `Memory` [INFO] [stdout] --> src/cpu/mod.rs:5:18 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::mmu::{Memory, RefMemory}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::cpu::CPU` [INFO] [stdout] --> src/cpu/lr35902/opcode/mod.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::cpu::CPU; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression [INFO] [stdout] --> src/cpu/lr35902/opcode/cbprefixed_opcode.rs:156:31 [INFO] [stdout] | [INFO] [stdout] 156 | let n = match (opcode) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 156 - let n = match (opcode) { [INFO] [stdout] 156 + let n = match opcode { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression [INFO] [stdout] --> src/cpu/lr35902/opcode/cbprefixed_opcode.rs:181:31 [INFO] [stdout] | [INFO] [stdout] 181 | let n = match (opcode) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 181 - let n = match (opcode) { [INFO] [stdout] 181 + let n = match opcode { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression [INFO] [stdout] --> src/cpu/lr35902/opcode/cbprefixed_opcode.rs:208:31 [INFO] [stdout] | [INFO] [stdout] 208 | let n = match (opcode) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 208 - let n = match (opcode) { [INFO] [stdout] 208 + let n = match opcode { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression [INFO] [stdout] --> src/cpu/lr35902/opcode/cbprefixed_opcode.rs:238:15 [INFO] [stdout] | [INFO] [stdout] 238 | match (opcode & 0x0F) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 238 - match (opcode & 0x0F) { [INFO] [stdout] 238 + match opcode & 0x0F { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/cpu/lr35902/opcode/cbprefixed_opcode.rs:280:19 [INFO] [stdout] | [INFO] [stdout] 280 | let res = (val >> 1); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 280 - let res = (val >> 1); [INFO] [stdout] 280 + let res = val >> 1; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `RefCell` [INFO] [stdout] --> src/mother_board.rs:1:22 [INFO] [stdout] | [INFO] [stdout] 1 | use std::cell::{Ref, RefCell}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Memory` [INFO] [stdout] --> src/mother_board.rs:9:18 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::mmu::{Memory, MMU, RefMemory}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:98:32 [INFO] [stdout] | [INFO] [stdout] 98 | 0xFF01 => todo!(), /// SB Serial transfer data R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 99 | / 0xFF02 => todo!(), /// SC Serial transfer control R/W Mixed [INFO] [stdout] 100| | 0xFF04 => todo!(), /// DIV Divider register R/W All [INFO] [stdout] 101| | 0xFF05 => todo!(), /// TIMA Timer counter R/W All [INFO] [stdout] 102| | 0xFF06 => todo!(), /// TMA Timer modulo R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:99:32 [INFO] [stdout] | [INFO] [stdout] 99 | 0xFF02 => todo!(), /// SC Serial transfer control R/W Mixed [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 100| / 0xFF04 => todo!(), /// DIV Divider register R/W All [INFO] [stdout] 101| | 0xFF05 => todo!(), /// TIMA Timer counter R/W All [INFO] [stdout] 102| | 0xFF06 => todo!(), /// TMA Timer modulo R/W All [INFO] [stdout] 103| | 0xFF07 => todo!(), /// TAC Timer control R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:100:32 [INFO] [stdout] | [INFO] [stdout] 100 | 0xFF04 => todo!(), /// DIV Divider register R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 101 | / 0xFF05 => todo!(), /// TIMA Timer counter R/W All [INFO] [stdout] 102 | | 0xFF06 => todo!(), /// TMA Timer modulo R/W All [INFO] [stdout] 103 | | 0xFF07 => todo!(), /// TAC Timer control R/W All [INFO] [stdout] 104 | | 0xFF0F => self.interrupt.borrow().get(addr), [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:101:32 [INFO] [stdout] | [INFO] [stdout] 101 | 0xFF05 => todo!(), /// TIMA Timer counter R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 102 | / 0xFF06 => todo!(), /// TMA Timer modulo R/W All [INFO] [stdout] 103 | | 0xFF07 => todo!(), /// TAC Timer control R/W All [INFO] [stdout] 104 | | 0xFF0F => self.interrupt.borrow().get(addr), [INFO] [stdout] 105 | | 0xFF10 => todo!(), /// NR10 Sound channel 1 sweep R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:102:32 [INFO] [stdout] | [INFO] [stdout] 102 | 0xFF06 => todo!(), /// TMA Timer modulo R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 103 | / 0xFF07 => todo!(), /// TAC Timer control R/W All [INFO] [stdout] 104 | | 0xFF0F => self.interrupt.borrow().get(addr), [INFO] [stdout] 105 | | 0xFF10 => todo!(), /// NR10 Sound channel 1 sweep R/W All [INFO] [stdout] 106 | | 0xFF11 => todo!(), /// NR11 Sound channel 1 length timer & duty cycle Mixed All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:103:32 [INFO] [stdout] | [INFO] [stdout] 103 | 0xFF07 => todo!(), /// TAC Timer control R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 104 | 0xFF0F => self.interrupt.borrow().get(addr), [INFO] [stdout] | ------------------------------------------- rustdoc does not generate documentation for match arms [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Memory` [INFO] [stdout] --> src/cpu/mod.rs:5:18 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::mmu::{Memory, RefMemory}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:105:32 [INFO] [stdout] | [INFO] [stdout] 105 | 0xFF10 => todo!(), /// NR10 Sound channel 1 sweep R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 106 | / 0xFF11 => todo!(), /// NR11 Sound channel 1 length timer & duty cycle Mixed All [INFO] [stdout] 107 | | 0xFF12 => todo!(), /// NR12 Sound channel 1 volume & envelope R/W All [INFO] [stdout] 108 | | 0xFF13 => todo!(), /// NR13 Sound channel 1 period low W All [INFO] [stdout] 109 | | 0xFF14 => todo!(), /// NR14 Sound channel 1 period high & control Mixed All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:106:32 [INFO] [stdout] | [INFO] [stdout] 106 | 0xFF11 => todo!(), /// NR11 Sound channel 1 length timer & duty cycle Mixed All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 107 | / 0xFF12 => todo!(), /// NR12 Sound channel 1 volume & envelope R/W All [INFO] [stdout] 108 | | 0xFF13 => todo!(), /// NR13 Sound channel 1 period low W All [INFO] [stdout] 109 | | 0xFF14 => todo!(), /// NR14 Sound channel 1 period high & control Mixed All [INFO] [stdout] 110 | | 0xFF16 => todo!(), /// NR21 Sound channel 2 length timer & duty cycle Mixed All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::cpu::CPU` [INFO] [stdout] --> src/cpu/lr35902/opcode/mod.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::cpu::CPU; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:107:32 [INFO] [stdout] | [INFO] [stdout] 107 | 0xFF12 => todo!(), /// NR12 Sound channel 1 volume & envelope R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 108 | / 0xFF13 => todo!(), /// NR13 Sound channel 1 period low W All [INFO] [stdout] 109 | | 0xFF14 => todo!(), /// NR14 Sound channel 1 period high & control Mixed All [INFO] [stdout] 110 | | 0xFF16 => todo!(), /// NR21 Sound channel 2 length timer & duty cycle Mixed All [INFO] [stdout] 111 | | 0xFF17 => todo!(), /// NR22 Sound channel 2 volume & envelope R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:108:32 [INFO] [stdout] | [INFO] [stdout] 108 | 0xFF13 => todo!(), /// NR13 Sound channel 1 period low W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 109 | / 0xFF14 => todo!(), /// NR14 Sound channel 1 period high & control Mixed All [INFO] [stdout] 110 | | 0xFF16 => todo!(), /// NR21 Sound channel 2 length timer & duty cycle Mixed All [INFO] [stdout] 111 | | 0xFF17 => todo!(), /// NR22 Sound channel 2 volume & envelope R/W All [INFO] [stdout] 112 | | 0xFF18 => todo!(), /// NR23 Sound channel 2 period low W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:109:32 [INFO] [stdout] | [INFO] [stdout] 109 | 0xFF14 => todo!(), /// NR14 Sound channel 1 period high & control Mixed All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 110 | / 0xFF16 => todo!(), /// NR21 Sound channel 2 length timer & duty cycle Mixed All [INFO] [stdout] 111 | | 0xFF17 => todo!(), /// NR22 Sound channel 2 volume & envelope R/W All [INFO] [stdout] 112 | | 0xFF18 => todo!(), /// NR23 Sound channel 2 period low W All [INFO] [stdout] 113 | | 0xFF19 => todo!(), /// NR24 Sound channel 2 period high & control Mixed All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression [INFO] [stdout] --> src/cpu/lr35902/opcode/cbprefixed_opcode.rs:156:31 [INFO] [stdout] | [INFO] [stdout] 156 | let n = match (opcode) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 156 - let n = match (opcode) { [INFO] [stdout] 156 + let n = match opcode { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:110:32 [INFO] [stdout] | [INFO] [stdout] 110 | 0xFF16 => todo!(), /// NR21 Sound channel 2 length timer & duty cycle Mixed All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 111 | / 0xFF17 => todo!(), /// NR22 Sound channel 2 volume & envelope R/W All [INFO] [stdout] 112 | | 0xFF18 => todo!(), /// NR23 Sound channel 2 period low W All [INFO] [stdout] 113 | | 0xFF19 => todo!(), /// NR24 Sound channel 2 period high & control Mixed All [INFO] [stdout] 114 | | 0xFF1A => todo!(), /// NR30 Sound channel 3 DAC enable R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression [INFO] [stdout] --> src/cpu/lr35902/opcode/cbprefixed_opcode.rs:181:31 [INFO] [stdout] | [INFO] [stdout] 181 | let n = match (opcode) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 181 - let n = match (opcode) { [INFO] [stdout] 181 + let n = match opcode { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:111:32 [INFO] [stdout] | [INFO] [stdout] 111 | 0xFF17 => todo!(), /// NR22 Sound channel 2 volume & envelope R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 112 | / 0xFF18 => todo!(), /// NR23 Sound channel 2 period low W All [INFO] [stdout] 113 | | 0xFF19 => todo!(), /// NR24 Sound channel 2 period high & control Mixed All [INFO] [stdout] 114 | | 0xFF1A => todo!(), /// NR30 Sound channel 3 DAC enable R/W All [INFO] [stdout] 115 | | 0xFF1B => todo!(), /// NR31 Sound channel 3 length timer W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression [INFO] [stdout] --> src/cpu/lr35902/opcode/cbprefixed_opcode.rs:208:31 [INFO] [stdout] | [INFO] [stdout] 208 | let n = match (opcode) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 208 - let n = match (opcode) { [INFO] [stdout] 208 + let n = match opcode { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:112:32 [INFO] [stdout] | [INFO] [stdout] 112 | 0xFF18 => todo!(), /// NR23 Sound channel 2 period low W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 113 | / 0xFF19 => todo!(), /// NR24 Sound channel 2 period high & control Mixed All [INFO] [stdout] 114 | | 0xFF1A => todo!(), /// NR30 Sound channel 3 DAC enable R/W All [INFO] [stdout] 115 | | 0xFF1B => todo!(), /// NR31 Sound channel 3 length timer W All [INFO] [stdout] 116 | | 0xFF1C => todo!(), /// NR32 Sound channel 3 output level R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:113:32 [INFO] [stdout] | [INFO] [stdout] 113 | 0xFF19 => todo!(), /// NR24 Sound channel 2 period high & control Mixed All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 114 | / 0xFF1A => todo!(), /// NR30 Sound channel 3 DAC enable R/W All [INFO] [stdout] 115 | | 0xFF1B => todo!(), /// NR31 Sound channel 3 length timer W All [INFO] [stdout] 116 | | 0xFF1C => todo!(), /// NR32 Sound channel 3 output level R/W All [INFO] [stdout] 117 | | 0xFF1D => todo!(), /// NR33 Sound channel 3 period low W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression [INFO] [stdout] --> src/cpu/lr35902/opcode/cbprefixed_opcode.rs:238:15 [INFO] [stdout] | [INFO] [stdout] 238 | match (opcode & 0x0F) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 238 - match (opcode & 0x0F) { [INFO] [stdout] 238 + match opcode & 0x0F { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:114:32 [INFO] [stdout] | [INFO] [stdout] 114 | 0xFF1A => todo!(), /// NR30 Sound channel 3 DAC enable R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 115 | / 0xFF1B => todo!(), /// NR31 Sound channel 3 length timer W All [INFO] [stdout] 116 | | 0xFF1C => todo!(), /// NR32 Sound channel 3 output level R/W All [INFO] [stdout] 117 | | 0xFF1D => todo!(), /// NR33 Sound channel 3 period low W All [INFO] [stdout] 118 | | 0xFF1E => todo!(), /// NR34 Sound channel 3 period high & control Mixed All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/cpu/lr35902/opcode/cbprefixed_opcode.rs:280:19 [INFO] [stdout] | [INFO] [stdout] 280 | let res = (val >> 1); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 280 - let res = (val >> 1); [INFO] [stdout] 280 + let res = val >> 1; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:115:32 [INFO] [stdout] | [INFO] [stdout] 115 | 0xFF1B => todo!(), /// NR31 Sound channel 3 length timer W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 116 | / 0xFF1C => todo!(), /// NR32 Sound channel 3 output level R/W All [INFO] [stdout] 117 | | 0xFF1D => todo!(), /// NR33 Sound channel 3 period low W All [INFO] [stdout] 118 | | 0xFF1E => todo!(), /// NR34 Sound channel 3 period high & control Mixed All [INFO] [stdout] 119 | | 0xFF20 => todo!(), /// NR41 Sound channel 4 length timer W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cell::RefCell` [INFO] [stdout] --> src/tests/cpu_instrs.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::cell::RefCell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:116:32 [INFO] [stdout] | [INFO] [stdout] 116 | 0xFF1C => todo!(), /// NR32 Sound channel 3 output level R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 117 | / 0xFF1D => todo!(), /// NR33 Sound channel 3 period low W All [INFO] [stdout] 118 | | 0xFF1E => todo!(), /// NR34 Sound channel 3 period high & control Mixed All [INFO] [stdout] 119 | | 0xFF20 => todo!(), /// NR41 Sound channel 4 length timer W All [INFO] [stdout] 120 | | 0xFF21 => todo!(), /// NR42 Sound channel 4 volume & envelope R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::rc::Rc` [INFO] [stdout] --> src/tests/cpu_instrs.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::rc::Rc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:117:32 [INFO] [stdout] | [INFO] [stdout] 117 | 0xFF1D => todo!(), /// NR33 Sound channel 3 period low W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 118 | / 0xFF1E => todo!(), /// NR34 Sound channel 3 period high & control Mixed All [INFO] [stdout] 119 | | 0xFF20 => todo!(), /// NR41 Sound channel 4 length timer W All [INFO] [stdout] 120 | | 0xFF21 => todo!(), /// NR42 Sound channel 4 volume & envelope R/W All [INFO] [stdout] 121 | | 0xFF22 => todo!(), /// NR43 Sound channel 4 frequency & randomness R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `GBTerm` and `cpu` [INFO] [stdout] --> src/tests/cpu_instrs.rs:4:13 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::{cpu, GBTerm}; [INFO] [stdout] | ^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:118:32 [INFO] [stdout] | [INFO] [stdout] 118 | 0xFF1E => todo!(), /// NR34 Sound channel 3 period high & control Mixed All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 119 | / 0xFF20 => todo!(), /// NR41 Sound channel 4 length timer W All [INFO] [stdout] 120 | | 0xFF21 => todo!(), /// NR42 Sound channel 4 volume & envelope R/W All [INFO] [stdout] 121 | | 0xFF22 => todo!(), /// NR43 Sound channel 4 frequency & randomness R/W All [INFO] [stdout] 122 | | 0xFF23 => todo!(), /// NR44 Sound channel 4 control Mixed All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::cpu::CPU` [INFO] [stdout] --> src/tests/cpu_instrs.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::cpu::CPU; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:119:32 [INFO] [stdout] | [INFO] [stdout] 119 | 0xFF20 => todo!(), /// NR41 Sound channel 4 length timer W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 120 | / 0xFF21 => todo!(), /// NR42 Sound channel 4 volume & envelope R/W All [INFO] [stdout] 121 | | 0xFF22 => todo!(), /// NR43 Sound channel 4 frequency & randomness R/W All [INFO] [stdout] 122 | | 0xFF23 => todo!(), /// NR44 Sound channel 4 control Mixed All [INFO] [stdout] 123 | | 0xFF24 => todo!(), /// NR50 Master volume & VIN panning R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::io_device::cartridge` [INFO] [stdout] --> src/tests/cpu_instrs.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::io_device::cartridge; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::mmu::MMU` [INFO] [stdout] --> src/tests/cpu_instrs.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::mmu::MMU; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:120:32 [INFO] [stdout] | [INFO] [stdout] 120 | 0xFF21 => todo!(), /// NR42 Sound channel 4 volume & envelope R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 121 | / 0xFF22 => todo!(), /// NR43 Sound channel 4 frequency & randomness R/W All [INFO] [stdout] 122 | | 0xFF23 => todo!(), /// NR44 Sound channel 4 control Mixed All [INFO] [stdout] 123 | | 0xFF24 => todo!(), /// NR50 Master volume & VIN panning R/W All [INFO] [stdout] 124 | | 0xFF25 => todo!(), /// NR51 Sound panning R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `RefCell` [INFO] [stdout] --> src/mother_board.rs:1:22 [INFO] [stdout] | [INFO] [stdout] 1 | use std::cell::{Ref, RefCell}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:121:32 [INFO] [stdout] | [INFO] [stdout] 121 | 0xFF22 => todo!(), /// NR43 Sound channel 4 frequency & randomness R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 122 | / 0xFF23 => todo!(), /// NR44 Sound channel 4 control Mixed All [INFO] [stdout] 123 | | 0xFF24 => todo!(), /// NR50 Master volume & VIN panning R/W All [INFO] [stdout] 124 | | 0xFF25 => todo!(), /// NR51 Sound panning R/W All [INFO] [stdout] 125 | | 0xFF26 => todo!(), /// NR52 Sound on/off Mixed All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Memory` [INFO] [stdout] --> src/mother_board.rs:9:18 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::mmu::{Memory, MMU, RefMemory}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:122:32 [INFO] [stdout] | [INFO] [stdout] 122 | 0xFF23 => todo!(), /// NR44 Sound channel 4 control Mixed All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 123 | / 0xFF24 => todo!(), /// NR50 Master volume & VIN panning R/W All [INFO] [stdout] 124 | | 0xFF25 => todo!(), /// NR51 Sound panning R/W All [INFO] [stdout] 125 | | 0xFF26 => todo!(), /// NR52 Sound on/off Mixed All [INFO] [stdout] 126 | | 0xFF30..=0xFF3F => todo!(), /// Wave RAM Storage for one of the sound channels’ waveform R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:98:32 [INFO] [stdout] | [INFO] [stdout] 98 | 0xFF01 => todo!(), /// SB Serial transfer data R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 99 | / 0xFF02 => todo!(), /// SC Serial transfer control R/W Mixed [INFO] [stdout] 100| | 0xFF04 => todo!(), /// DIV Divider register R/W All [INFO] [stdout] 101| | 0xFF05 => todo!(), /// TIMA Timer counter R/W All [INFO] [stdout] 102| | 0xFF06 => todo!(), /// TMA Timer modulo R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:123:32 [INFO] [stdout] | [INFO] [stdout] 123 | 0xFF24 => todo!(), /// NR50 Master volume & VIN panning R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 124 | / 0xFF25 => todo!(), /// NR51 Sound panning R/W All [INFO] [stdout] 125 | | 0xFF26 => todo!(), /// NR52 Sound on/off Mixed All [INFO] [stdout] 126 | | 0xFF30..=0xFF3F => todo!(), /// Wave RAM Storage for one of the sound channels’ waveform R/W All [INFO] [stdout] 127 | | 0xFF40 => todo!(), /// LCDC LCD control R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:99:32 [INFO] [stdout] | [INFO] [stdout] 99 | 0xFF02 => todo!(), /// SC Serial transfer control R/W Mixed [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 100| / 0xFF04 => todo!(), /// DIV Divider register R/W All [INFO] [stdout] 101| | 0xFF05 => todo!(), /// TIMA Timer counter R/W All [INFO] [stdout] 102| | 0xFF06 => todo!(), /// TMA Timer modulo R/W All [INFO] [stdout] 103| | 0xFF07 => todo!(), /// TAC Timer control R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:124:32 [INFO] [stdout] | [INFO] [stdout] 124 | 0xFF25 => todo!(), /// NR51 Sound panning R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 125 | / 0xFF26 => todo!(), /// NR52 Sound on/off Mixed All [INFO] [stdout] 126 | | 0xFF30..=0xFF3F => todo!(), /// Wave RAM Storage for one of the sound channels’ waveform R/W All [INFO] [stdout] 127 | | 0xFF40 => todo!(), /// LCDC LCD control R/W All [INFO] [stdout] 128 | | 0xFF41 => todo!(), /// STAT LCD status Mixed All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:100:32 [INFO] [stdout] | [INFO] [stdout] 100 | 0xFF04 => todo!(), /// DIV Divider register R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 101 | / 0xFF05 => todo!(), /// TIMA Timer counter R/W All [INFO] [stdout] 102 | | 0xFF06 => todo!(), /// TMA Timer modulo R/W All [INFO] [stdout] 103 | | 0xFF07 => todo!(), /// TAC Timer control R/W All [INFO] [stdout] 104 | | 0xFF0F => self.interrupt.borrow().get(addr), [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:125:32 [INFO] [stdout] | [INFO] [stdout] 125 | 0xFF26 => todo!(), /// NR52 Sound on/off Mixed All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 126 | / 0xFF30..=0xFF3F => todo!(), /// Wave RAM Storage for one of the sound channels’ waveform R/W All [INFO] [stdout] 127 | | 0xFF40 => todo!(), /// LCDC LCD control R/W All [INFO] [stdout] 128 | | 0xFF41 => todo!(), /// STAT LCD status Mixed All [INFO] [stdout] 129 | | 0xFF42 => todo!(), /// SCY Viewport Y position R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:101:32 [INFO] [stdout] | [INFO] [stdout] 101 | 0xFF05 => todo!(), /// TIMA Timer counter R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 102 | / 0xFF06 => todo!(), /// TMA Timer modulo R/W All [INFO] [stdout] 103 | | 0xFF07 => todo!(), /// TAC Timer control R/W All [INFO] [stdout] 104 | | 0xFF0F => self.interrupt.borrow().get(addr), [INFO] [stdout] 105 | | 0xFF10 => todo!(), /// NR10 Sound channel 1 sweep R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:126:41 [INFO] [stdout] | [INFO] [stdout] 126 | 0xFF30..=0xFF3F => todo!(), /// Wave RAM Storage for one of the sound channels’ waveform R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 127 | / 0xFF40 => todo!(), /// LCDC LCD control R/W All [INFO] [stdout] 128 | | 0xFF41 => todo!(), /// STAT LCD status Mixed All [INFO] [stdout] 129 | | 0xFF42 => todo!(), /// SCY Viewport Y position R/W All [INFO] [stdout] 130 | | 0xFF43 => todo!(), /// SCX Viewport X position R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:127:32 [INFO] [stdout] | [INFO] [stdout] 127 | 0xFF40 => todo!(), /// LCDC LCD control R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 128 | / 0xFF41 => todo!(), /// STAT LCD status Mixed All [INFO] [stdout] 129 | | 0xFF42 => todo!(), /// SCY Viewport Y position R/W All [INFO] [stdout] 130 | | 0xFF43 => todo!(), /// SCX Viewport X position R/W All [INFO] [stdout] 131 | | 0xFF44 => todo!(), /// LY LCD Y coordinate R All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:102:32 [INFO] [stdout] | [INFO] [stdout] 102 | 0xFF06 => todo!(), /// TMA Timer modulo R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 103 | / 0xFF07 => todo!(), /// TAC Timer control R/W All [INFO] [stdout] 104 | | 0xFF0F => self.interrupt.borrow().get(addr), [INFO] [stdout] 105 | | 0xFF10 => todo!(), /// NR10 Sound channel 1 sweep R/W All [INFO] [stdout] 106 | | 0xFF11 => todo!(), /// NR11 Sound channel 1 length timer & duty cycle Mixed All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:128:32 [INFO] [stdout] | [INFO] [stdout] 128 | 0xFF41 => todo!(), /// STAT LCD status Mixed All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 129 | / 0xFF42 => todo!(), /// SCY Viewport Y position R/W All [INFO] [stdout] 130 | | 0xFF43 => todo!(), /// SCX Viewport X position R/W All [INFO] [stdout] 131 | | 0xFF44 => todo!(), /// LY LCD Y coordinate R All [INFO] [stdout] 132 | | 0xFF45 => todo!(), /// LYC LY compare R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:103:32 [INFO] [stdout] | [INFO] [stdout] 103 | 0xFF07 => todo!(), /// TAC Timer control R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 104 | 0xFF0F => self.interrupt.borrow().get(addr), [INFO] [stdout] | ------------------------------------------- rustdoc does not generate documentation for match arms [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:129:32 [INFO] [stdout] | [INFO] [stdout] 129 | 0xFF42 => todo!(), /// SCY Viewport Y position R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 130 | / 0xFF43 => todo!(), /// SCX Viewport X position R/W All [INFO] [stdout] 131 | | 0xFF44 => todo!(), /// LY LCD Y coordinate R All [INFO] [stdout] 132 | | 0xFF45 => todo!(), /// LYC LY compare R/W All [INFO] [stdout] 133 | | 0xFF46 => todo!(), /// DMA OAM DMA source address & start R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:105:32 [INFO] [stdout] | [INFO] [stdout] 105 | 0xFF10 => todo!(), /// NR10 Sound channel 1 sweep R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 106 | / 0xFF11 => todo!(), /// NR11 Sound channel 1 length timer & duty cycle Mixed All [INFO] [stdout] 107 | | 0xFF12 => todo!(), /// NR12 Sound channel 1 volume & envelope R/W All [INFO] [stdout] 108 | | 0xFF13 => todo!(), /// NR13 Sound channel 1 period low W All [INFO] [stdout] 109 | | 0xFF14 => todo!(), /// NR14 Sound channel 1 period high & control Mixed All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:130:32 [INFO] [stdout] | [INFO] [stdout] 130 | 0xFF43 => todo!(), /// SCX Viewport X position R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 131 | / 0xFF44 => todo!(), /// LY LCD Y coordinate R All [INFO] [stdout] 132 | | 0xFF45 => todo!(), /// LYC LY compare R/W All [INFO] [stdout] 133 | | 0xFF46 => todo!(), /// DMA OAM DMA source address & start R/W All [INFO] [stdout] 134 | | 0xFF47 => todo!(), /// BGP BG palette data R/W DMG [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:106:32 [INFO] [stdout] | [INFO] [stdout] 106 | 0xFF11 => todo!(), /// NR11 Sound channel 1 length timer & duty cycle Mixed All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 107 | / 0xFF12 => todo!(), /// NR12 Sound channel 1 volume & envelope R/W All [INFO] [stdout] 108 | | 0xFF13 => todo!(), /// NR13 Sound channel 1 period low W All [INFO] [stdout] 109 | | 0xFF14 => todo!(), /// NR14 Sound channel 1 period high & control Mixed All [INFO] [stdout] 110 | | 0xFF16 => todo!(), /// NR21 Sound channel 2 length timer & duty cycle Mixed All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:131:32 [INFO] [stdout] | [INFO] [stdout] 131 | 0xFF44 => todo!(), /// LY LCD Y coordinate R All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 132 | / 0xFF45 => todo!(), /// LYC LY compare R/W All [INFO] [stdout] 133 | | 0xFF46 => todo!(), /// DMA OAM DMA source address & start R/W All [INFO] [stdout] 134 | | 0xFF47 => todo!(), /// BGP BG palette data R/W DMG [INFO] [stdout] 135 | | 0xFF48 => todo!(), /// OBP0 OBJ palette 0 data R/W DMG [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:107:32 [INFO] [stdout] | [INFO] [stdout] 107 | 0xFF12 => todo!(), /// NR12 Sound channel 1 volume & envelope R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 108 | / 0xFF13 => todo!(), /// NR13 Sound channel 1 period low W All [INFO] [stdout] 109 | | 0xFF14 => todo!(), /// NR14 Sound channel 1 period high & control Mixed All [INFO] [stdout] 110 | | 0xFF16 => todo!(), /// NR21 Sound channel 2 length timer & duty cycle Mixed All [INFO] [stdout] 111 | | 0xFF17 => todo!(), /// NR22 Sound channel 2 volume & envelope R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:132:32 [INFO] [stdout] | [INFO] [stdout] 132 | 0xFF45 => todo!(), /// LYC LY compare R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 133 | / 0xFF46 => todo!(), /// DMA OAM DMA source address & start R/W All [INFO] [stdout] 134 | | 0xFF47 => todo!(), /// BGP BG palette data R/W DMG [INFO] [stdout] 135 | | 0xFF48 => todo!(), /// OBP0 OBJ palette 0 data R/W DMG [INFO] [stdout] 136 | | 0xFF49 => todo!(), /// OBP1 OBJ palette 1 data R/W DMG [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:108:32 [INFO] [stdout] | [INFO] [stdout] 108 | 0xFF13 => todo!(), /// NR13 Sound channel 1 period low W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 109 | / 0xFF14 => todo!(), /// NR14 Sound channel 1 period high & control Mixed All [INFO] [stdout] 110 | | 0xFF16 => todo!(), /// NR21 Sound channel 2 length timer & duty cycle Mixed All [INFO] [stdout] 111 | | 0xFF17 => todo!(), /// NR22 Sound channel 2 volume & envelope R/W All [INFO] [stdout] 112 | | 0xFF18 => todo!(), /// NR23 Sound channel 2 period low W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:133:32 [INFO] [stdout] | [INFO] [stdout] 133 | 0xFF46 => todo!(), /// DMA OAM DMA source address & start R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 134 | / 0xFF47 => todo!(), /// BGP BG palette data R/W DMG [INFO] [stdout] 135 | | 0xFF48 => todo!(), /// OBP0 OBJ palette 0 data R/W DMG [INFO] [stdout] 136 | | 0xFF49 => todo!(), /// OBP1 OBJ palette 1 data R/W DMG [INFO] [stdout] 137 | | 0xFF4A => todo!(), /// WY Window Y position R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:109:32 [INFO] [stdout] | [INFO] [stdout] 109 | 0xFF14 => todo!(), /// NR14 Sound channel 1 period high & control Mixed All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 110 | / 0xFF16 => todo!(), /// NR21 Sound channel 2 length timer & duty cycle Mixed All [INFO] [stdout] 111 | | 0xFF17 => todo!(), /// NR22 Sound channel 2 volume & envelope R/W All [INFO] [stdout] 112 | | 0xFF18 => todo!(), /// NR23 Sound channel 2 period low W All [INFO] [stdout] 113 | | 0xFF19 => todo!(), /// NR24 Sound channel 2 period high & control Mixed All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:134:32 [INFO] [stdout] | [INFO] [stdout] 134 | 0xFF47 => todo!(), /// BGP BG palette data R/W DMG [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 135 | / 0xFF48 => todo!(), /// OBP0 OBJ palette 0 data R/W DMG [INFO] [stdout] 136 | | 0xFF49 => todo!(), /// OBP1 OBJ palette 1 data R/W DMG [INFO] [stdout] 137 | | 0xFF4A => todo!(), /// WY Window Y position R/W All [INFO] [stdout] 138 | | 0xFF4B => todo!(), /// WX Window X position plus 7 R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:110:32 [INFO] [stdout] | [INFO] [stdout] 110 | 0xFF16 => todo!(), /// NR21 Sound channel 2 length timer & duty cycle Mixed All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 111 | / 0xFF17 => todo!(), /// NR22 Sound channel 2 volume & envelope R/W All [INFO] [stdout] 112 | | 0xFF18 => todo!(), /// NR23 Sound channel 2 period low W All [INFO] [stdout] 113 | | 0xFF19 => todo!(), /// NR24 Sound channel 2 period high & control Mixed All [INFO] [stdout] 114 | | 0xFF1A => todo!(), /// NR30 Sound channel 3 DAC enable R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:135:32 [INFO] [stdout] | [INFO] [stdout] 135 | 0xFF48 => todo!(), /// OBP0 OBJ palette 0 data R/W DMG [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 136 | / 0xFF49 => todo!(), /// OBP1 OBJ palette 1 data R/W DMG [INFO] [stdout] 137 | | 0xFF4A => todo!(), /// WY Window Y position R/W All [INFO] [stdout] 138 | | 0xFF4B => todo!(), /// WX Window X position plus 7 R/W All [INFO] [stdout] 139 | | 0xFF4D => todo!(), /// KEY1 Prepare speed switch Mixed CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:111:32 [INFO] [stdout] | [INFO] [stdout] 111 | 0xFF17 => todo!(), /// NR22 Sound channel 2 volume & envelope R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 112 | / 0xFF18 => todo!(), /// NR23 Sound channel 2 period low W All [INFO] [stdout] 113 | | 0xFF19 => todo!(), /// NR24 Sound channel 2 period high & control Mixed All [INFO] [stdout] 114 | | 0xFF1A => todo!(), /// NR30 Sound channel 3 DAC enable R/W All [INFO] [stdout] 115 | | 0xFF1B => todo!(), /// NR31 Sound channel 3 length timer W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:136:32 [INFO] [stdout] | [INFO] [stdout] 136 | 0xFF49 => todo!(), /// OBP1 OBJ palette 1 data R/W DMG [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 137 | / 0xFF4A => todo!(), /// WY Window Y position R/W All [INFO] [stdout] 138 | | 0xFF4B => todo!(), /// WX Window X position plus 7 R/W All [INFO] [stdout] 139 | | 0xFF4D => todo!(), /// KEY1 Prepare speed switch Mixed CGB [INFO] [stdout] 140 | | 0xFF4F => self.video.get(addr), /// VBK VRAM bank R/W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:112:32 [INFO] [stdout] | [INFO] [stdout] 112 | 0xFF18 => todo!(), /// NR23 Sound channel 2 period low W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 113 | / 0xFF19 => todo!(), /// NR24 Sound channel 2 period high & control Mixed All [INFO] [stdout] 114 | | 0xFF1A => todo!(), /// NR30 Sound channel 3 DAC enable R/W All [INFO] [stdout] 115 | | 0xFF1B => todo!(), /// NR31 Sound channel 3 length timer W All [INFO] [stdout] 116 | | 0xFF1C => todo!(), /// NR32 Sound channel 3 output level R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:137:32 [INFO] [stdout] | [INFO] [stdout] 137 | 0xFF4A => todo!(), /// WY Window Y position R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 138 | / 0xFF4B => todo!(), /// WX Window X position plus 7 R/W All [INFO] [stdout] 139 | | 0xFF4D => todo!(), /// KEY1 Prepare speed switch Mixed CGB [INFO] [stdout] 140 | | 0xFF4F => self.video.get(addr), /// VBK VRAM bank R/W CGB [INFO] [stdout] 141 | | 0xFF51 => todo!(), /// HDMA1 VRAM DMA source high W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:113:32 [INFO] [stdout] | [INFO] [stdout] 113 | 0xFF19 => todo!(), /// NR24 Sound channel 2 period high & control Mixed All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 114 | / 0xFF1A => todo!(), /// NR30 Sound channel 3 DAC enable R/W All [INFO] [stdout] 115 | | 0xFF1B => todo!(), /// NR31 Sound channel 3 length timer W All [INFO] [stdout] 116 | | 0xFF1C => todo!(), /// NR32 Sound channel 3 output level R/W All [INFO] [stdout] 117 | | 0xFF1D => todo!(), /// NR33 Sound channel 3 period low W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:138:32 [INFO] [stdout] | [INFO] [stdout] 138 | 0xFF4B => todo!(), /// WX Window X position plus 7 R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 139 | / 0xFF4D => todo!(), /// KEY1 Prepare speed switch Mixed CGB [INFO] [stdout] 140 | | 0xFF4F => self.video.get(addr), /// VBK VRAM bank R/W CGB [INFO] [stdout] 141 | | 0xFF51 => todo!(), /// HDMA1 VRAM DMA source high W CGB [INFO] [stdout] 142 | | 0xFF52 => todo!(), /// HDMA2 VRAM DMA source low W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:114:32 [INFO] [stdout] | [INFO] [stdout] 114 | 0xFF1A => todo!(), /// NR30 Sound channel 3 DAC enable R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 115 | / 0xFF1B => todo!(), /// NR31 Sound channel 3 length timer W All [INFO] [stdout] 116 | | 0xFF1C => todo!(), /// NR32 Sound channel 3 output level R/W All [INFO] [stdout] 117 | | 0xFF1D => todo!(), /// NR33 Sound channel 3 period low W All [INFO] [stdout] 118 | | 0xFF1E => todo!(), /// NR34 Sound channel 3 period high & control Mixed All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:139:32 [INFO] [stdout] | [INFO] [stdout] 139 | 0xFF4D => todo!(), /// KEY1 Prepare speed switch Mixed CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 140 | 0xFF4F => self.video.get(addr), /// VBK VRAM bank R/W CGB [INFO] [stdout] | ------------------------------ rustdoc does not generate documentation for match arms [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:115:32 [INFO] [stdout] | [INFO] [stdout] 115 | 0xFF1B => todo!(), /// NR31 Sound channel 3 length timer W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 116 | / 0xFF1C => todo!(), /// NR32 Sound channel 3 output level R/W All [INFO] [stdout] 117 | | 0xFF1D => todo!(), /// NR33 Sound channel 3 period low W All [INFO] [stdout] 118 | | 0xFF1E => todo!(), /// NR34 Sound channel 3 period high & control Mixed All [INFO] [stdout] 119 | | 0xFF20 => todo!(), /// NR41 Sound channel 4 length timer W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:140:45 [INFO] [stdout] | [INFO] [stdout] 140 | 0xFF4F => self.video.get(addr), /// VBK VRAM bank R/W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 141 | / 0xFF51 => todo!(), /// HDMA1 VRAM DMA source high W CGB [INFO] [stdout] 142 | | 0xFF52 => todo!(), /// HDMA2 VRAM DMA source low W CGB [INFO] [stdout] 143 | | 0xFF53 => todo!(), /// HDMA3 VRAM DMA destination high W CGB [INFO] [stdout] 144 | | 0xFF54 => todo!(), /// HDMA4 VRAM DMA destination low W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:116:32 [INFO] [stdout] | [INFO] [stdout] 116 | 0xFF1C => todo!(), /// NR32 Sound channel 3 output level R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 117 | / 0xFF1D => todo!(), /// NR33 Sound channel 3 period low W All [INFO] [stdout] 118 | | 0xFF1E => todo!(), /// NR34 Sound channel 3 period high & control Mixed All [INFO] [stdout] 119 | | 0xFF20 => todo!(), /// NR41 Sound channel 4 length timer W All [INFO] [stdout] 120 | | 0xFF21 => todo!(), /// NR42 Sound channel 4 volume & envelope R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:117:32 [INFO] [stdout] | [INFO] [stdout] 117 | 0xFF1D => todo!(), /// NR33 Sound channel 3 period low W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 118 | / 0xFF1E => todo!(), /// NR34 Sound channel 3 period high & control Mixed All [INFO] [stdout] 119 | | 0xFF20 => todo!(), /// NR41 Sound channel 4 length timer W All [INFO] [stdout] 120 | | 0xFF21 => todo!(), /// NR42 Sound channel 4 volume & envelope R/W All [INFO] [stdout] 121 | | 0xFF22 => todo!(), /// NR43 Sound channel 4 frequency & randomness R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:141:32 [INFO] [stdout] | [INFO] [stdout] 141 | 0xFF51 => todo!(), /// HDMA1 VRAM DMA source high W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 142 | / 0xFF52 => todo!(), /// HDMA2 VRAM DMA source low W CGB [INFO] [stdout] 143 | | 0xFF53 => todo!(), /// HDMA3 VRAM DMA destination high W CGB [INFO] [stdout] 144 | | 0xFF54 => todo!(), /// HDMA4 VRAM DMA destination low W CGB [INFO] [stdout] 145 | | 0xFF55 => todo!(), /// HDMA5 VRAM DMA length/mode/start R/W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:118:32 [INFO] [stdout] | [INFO] [stdout] 118 | 0xFF1E => todo!(), /// NR34 Sound channel 3 period high & control Mixed All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 119 | / 0xFF20 => todo!(), /// NR41 Sound channel 4 length timer W All [INFO] [stdout] 120 | | 0xFF21 => todo!(), /// NR42 Sound channel 4 volume & envelope R/W All [INFO] [stdout] 121 | | 0xFF22 => todo!(), /// NR43 Sound channel 4 frequency & randomness R/W All [INFO] [stdout] 122 | | 0xFF23 => todo!(), /// NR44 Sound channel 4 control Mixed All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:142:32 [INFO] [stdout] | [INFO] [stdout] 142 | 0xFF52 => todo!(), /// HDMA2 VRAM DMA source low W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 143 | / 0xFF53 => todo!(), /// HDMA3 VRAM DMA destination high W CGB [INFO] [stdout] 144 | | 0xFF54 => todo!(), /// HDMA4 VRAM DMA destination low W CGB [INFO] [stdout] 145 | | 0xFF55 => todo!(), /// HDMA5 VRAM DMA length/mode/start R/W CGB [INFO] [stdout] 146 | | 0xFF56 => todo!(), /// RP Infrared communications port Mixed CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:119:32 [INFO] [stdout] | [INFO] [stdout] 119 | 0xFF20 => todo!(), /// NR41 Sound channel 4 length timer W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 120 | / 0xFF21 => todo!(), /// NR42 Sound channel 4 volume & envelope R/W All [INFO] [stdout] 121 | | 0xFF22 => todo!(), /// NR43 Sound channel 4 frequency & randomness R/W All [INFO] [stdout] 122 | | 0xFF23 => todo!(), /// NR44 Sound channel 4 control Mixed All [INFO] [stdout] 123 | | 0xFF24 => todo!(), /// NR50 Master volume & VIN panning R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:143:32 [INFO] [stdout] | [INFO] [stdout] 143 | 0xFF53 => todo!(), /// HDMA3 VRAM DMA destination high W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 144 | / 0xFF54 => todo!(), /// HDMA4 VRAM DMA destination low W CGB [INFO] [stdout] 145 | | 0xFF55 => todo!(), /// HDMA5 VRAM DMA length/mode/start R/W CGB [INFO] [stdout] 146 | | 0xFF56 => todo!(), /// RP Infrared communications port Mixed CGB [INFO] [stdout] 147 | | 0xFF68 => todo!(), /// BCPS/BGPI Background color palette specification / Background palette index R/W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:120:32 [INFO] [stdout] | [INFO] [stdout] 120 | 0xFF21 => todo!(), /// NR42 Sound channel 4 volume & envelope R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 121 | / 0xFF22 => todo!(), /// NR43 Sound channel 4 frequency & randomness R/W All [INFO] [stdout] 122 | | 0xFF23 => todo!(), /// NR44 Sound channel 4 control Mixed All [INFO] [stdout] 123 | | 0xFF24 => todo!(), /// NR50 Master volume & VIN panning R/W All [INFO] [stdout] 124 | | 0xFF25 => todo!(), /// NR51 Sound panning R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:144:32 [INFO] [stdout] | [INFO] [stdout] 144 | 0xFF54 => todo!(), /// HDMA4 VRAM DMA destination low W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 145 | / 0xFF55 => todo!(), /// HDMA5 VRAM DMA length/mode/start R/W CGB [INFO] [stdout] 146 | | 0xFF56 => todo!(), /// RP Infrared communications port Mixed CGB [INFO] [stdout] 147 | | 0xFF68 => todo!(), /// BCPS/BGPI Background color palette specification / Background palette index R/W CGB [INFO] [stdout] 148 | | 0xFF69 => todo!(), /// BCPD/BGPD Background color palette data / Background palette data R/W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:121:32 [INFO] [stdout] | [INFO] [stdout] 121 | 0xFF22 => todo!(), /// NR43 Sound channel 4 frequency & randomness R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 122 | / 0xFF23 => todo!(), /// NR44 Sound channel 4 control Mixed All [INFO] [stdout] 123 | | 0xFF24 => todo!(), /// NR50 Master volume & VIN panning R/W All [INFO] [stdout] 124 | | 0xFF25 => todo!(), /// NR51 Sound panning R/W All [INFO] [stdout] 125 | | 0xFF26 => todo!(), /// NR52 Sound on/off Mixed All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:145:32 [INFO] [stdout] | [INFO] [stdout] 145 | 0xFF55 => todo!(), /// HDMA5 VRAM DMA length/mode/start R/W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 146 | / 0xFF56 => todo!(), /// RP Infrared communications port Mixed CGB [INFO] [stdout] 147 | | 0xFF68 => todo!(), /// BCPS/BGPI Background color palette specification / Background palette index R/W CGB [INFO] [stdout] 148 | | 0xFF69 => todo!(), /// BCPD/BGPD Background color palette data / Background palette data R/W CGB [INFO] [stdout] 149 | | 0xFF6A => todo!(), /// OCPS/OBPI OBJ color palette specification / OBJ palette index R/W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:122:32 [INFO] [stdout] | [INFO] [stdout] 122 | 0xFF23 => todo!(), /// NR44 Sound channel 4 control Mixed All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 123 | / 0xFF24 => todo!(), /// NR50 Master volume & VIN panning R/W All [INFO] [stdout] 124 | | 0xFF25 => todo!(), /// NR51 Sound panning R/W All [INFO] [stdout] 125 | | 0xFF26 => todo!(), /// NR52 Sound on/off Mixed All [INFO] [stdout] 126 | | 0xFF30..=0xFF3F => todo!(), /// Wave RAM Storage for one of the sound channels’ waveform R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:146:32 [INFO] [stdout] | [INFO] [stdout] 146 | 0xFF56 => todo!(), /// RP Infrared communications port Mixed CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 147 | / 0xFF68 => todo!(), /// BCPS/BGPI Background color palette specification / Background palette index R/W CGB [INFO] [stdout] 148 | | 0xFF69 => todo!(), /// BCPD/BGPD Background color palette data / Background palette data R/W CGB [INFO] [stdout] 149 | | 0xFF6A => todo!(), /// OCPS/OBPI OBJ color palette specification / OBJ palette index R/W CGB [INFO] [stdout] 150 | | 0xFF6B => todo!(), /// OCPD/OBPD OBJ color palette data / OBJ palette data R/W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:123:32 [INFO] [stdout] | [INFO] [stdout] 123 | 0xFF24 => todo!(), /// NR50 Master volume & VIN panning R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 124 | / 0xFF25 => todo!(), /// NR51 Sound panning R/W All [INFO] [stdout] 125 | | 0xFF26 => todo!(), /// NR52 Sound on/off Mixed All [INFO] [stdout] 126 | | 0xFF30..=0xFF3F => todo!(), /// Wave RAM Storage for one of the sound channels’ waveform R/W All [INFO] [stdout] 127 | | 0xFF40 => todo!(), /// LCDC LCD control R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:147:32 [INFO] [stdout] | [INFO] [stdout] 147 | 0xFF68 => todo!(), /// BCPS/BGPI Background color palette specification / Background palette index R/W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 148 | / 0xFF69 => todo!(), /// BCPD/BGPD Background color palette data / Background palette data R/W CGB [INFO] [stdout] 149 | | 0xFF6A => todo!(), /// OCPS/OBPI OBJ color palette specification / OBJ palette index R/W CGB [INFO] [stdout] 150 | | 0xFF6B => todo!(), /// OCPD/OBPD OBJ color palette data / OBJ palette data R/W CGB [INFO] [stdout] 151 | | 0xFF6C => todo!(), /// OPRI Object priority mode R/W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:124:32 [INFO] [stdout] | [INFO] [stdout] 124 | 0xFF25 => todo!(), /// NR51 Sound panning R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 125 | / 0xFF26 => todo!(), /// NR52 Sound on/off Mixed All [INFO] [stdout] 126 | | 0xFF30..=0xFF3F => todo!(), /// Wave RAM Storage for one of the sound channels’ waveform R/W All [INFO] [stdout] 127 | | 0xFF40 => todo!(), /// LCDC LCD control R/W All [INFO] [stdout] 128 | | 0xFF41 => todo!(), /// STAT LCD status Mixed All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:148:32 [INFO] [stdout] | [INFO] [stdout] 148 | 0xFF69 => todo!(), /// BCPD/BGPD Background color palette data / Background palette data R/W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 149 | / 0xFF6A => todo!(), /// OCPS/OBPI OBJ color palette specification / OBJ palette index R/W CGB [INFO] [stdout] 150 | | 0xFF6B => todo!(), /// OCPD/OBPD OBJ color palette data / OBJ palette data R/W CGB [INFO] [stdout] 151 | | 0xFF6C => todo!(), /// OPRI Object priority mode R/W CGB [INFO] [stdout] 152 | | 0xFF70 => self.work_ram.get(addr), /// SVBK WRAM bank R/W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:125:32 [INFO] [stdout] | [INFO] [stdout] 125 | 0xFF26 => todo!(), /// NR52 Sound on/off Mixed All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 126 | / 0xFF30..=0xFF3F => todo!(), /// Wave RAM Storage for one of the sound channels’ waveform R/W All [INFO] [stdout] 127 | | 0xFF40 => todo!(), /// LCDC LCD control R/W All [INFO] [stdout] 128 | | 0xFF41 => todo!(), /// STAT LCD status Mixed All [INFO] [stdout] 129 | | 0xFF42 => todo!(), /// SCY Viewport Y position R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:149:32 [INFO] [stdout] | [INFO] [stdout] 149 | 0xFF6A => todo!(), /// OCPS/OBPI OBJ color palette specification / OBJ palette index R/W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 150 | / 0xFF6B => todo!(), /// OCPD/OBPD OBJ color palette data / OBJ palette data R/W CGB [INFO] [stdout] 151 | | 0xFF6C => todo!(), /// OPRI Object priority mode R/W CGB [INFO] [stdout] 152 | | 0xFF70 => self.work_ram.get(addr), /// SVBK WRAM bank R/W CGB [INFO] [stdout] 153 | | 0xFF76 => todo!(), /// PCM12 Audio digital outputs 1 & 2 R CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:126:41 [INFO] [stdout] | [INFO] [stdout] 126 | 0xFF30..=0xFF3F => todo!(), /// Wave RAM Storage for one of the sound channels’ waveform R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 127 | / 0xFF40 => todo!(), /// LCDC LCD control R/W All [INFO] [stdout] 128 | | 0xFF41 => todo!(), /// STAT LCD status Mixed All [INFO] [stdout] 129 | | 0xFF42 => todo!(), /// SCY Viewport Y position R/W All [INFO] [stdout] 130 | | 0xFF43 => todo!(), /// SCX Viewport X position R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:150:32 [INFO] [stdout] | [INFO] [stdout] 150 | 0xFF6B => todo!(), /// OCPD/OBPD OBJ color palette data / OBJ palette data R/W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 151 | / 0xFF6C => todo!(), /// OPRI Object priority mode R/W CGB [INFO] [stdout] 152 | | 0xFF70 => self.work_ram.get(addr), /// SVBK WRAM bank R/W CGB [INFO] [stdout] 153 | | 0xFF76 => todo!(), /// PCM12 Audio digital outputs 1 & 2 R CGB [INFO] [stdout] 154 | | 0xFF77 => todo!(), /// PCM34 Audio digital outputs 3 & 4 R CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:127:32 [INFO] [stdout] | [INFO] [stdout] 127 | 0xFF40 => todo!(), /// LCDC LCD control R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 128 | / 0xFF41 => todo!(), /// STAT LCD status Mixed All [INFO] [stdout] 129 | | 0xFF42 => todo!(), /// SCY Viewport Y position R/W All [INFO] [stdout] 130 | | 0xFF43 => todo!(), /// SCX Viewport X position R/W All [INFO] [stdout] 131 | | 0xFF44 => todo!(), /// LY LCD Y coordinate R All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:151:32 [INFO] [stdout] | [INFO] [stdout] 151 | 0xFF6C => todo!(), /// OPRI Object priority mode R/W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 152 | 0xFF70 => self.work_ram.get(addr), /// SVBK WRAM bank R/W CGB [INFO] [stdout] | --------------------------------- rustdoc does not generate documentation for match arms [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:128:32 [INFO] [stdout] | [INFO] [stdout] 128 | 0xFF41 => todo!(), /// STAT LCD status Mixed All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 129 | / 0xFF42 => todo!(), /// SCY Viewport Y position R/W All [INFO] [stdout] 130 | | 0xFF43 => todo!(), /// SCX Viewport X position R/W All [INFO] [stdout] 131 | | 0xFF44 => todo!(), /// LY LCD Y coordinate R All [INFO] [stdout] 132 | | 0xFF45 => todo!(), /// LYC LY compare R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:152:48 [INFO] [stdout] | [INFO] [stdout] 152 | 0xFF70 => self.work_ram.get(addr), /// SVBK WRAM bank R/W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 153 | / 0xFF76 => todo!(), /// PCM12 Audio digital outputs 1 & 2 R CGB [INFO] [stdout] 154 | | 0xFF77 => todo!(), /// PCM34 Audio digital outputs 3 & 4 R CGB [INFO] [stdout] 155 | | 0xFF80..=0xFFFE => self.work_ram.get(addr), [INFO] [stdout] 156 | | 0xFFFF => self.interrupt.borrow().get(addr), [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:129:32 [INFO] [stdout] | [INFO] [stdout] 129 | 0xFF42 => todo!(), /// SCY Viewport Y position R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 130 | / 0xFF43 => todo!(), /// SCX Viewport X position R/W All [INFO] [stdout] 131 | | 0xFF44 => todo!(), /// LY LCD Y coordinate R All [INFO] [stdout] 132 | | 0xFF45 => todo!(), /// LYC LY compare R/W All [INFO] [stdout] 133 | | 0xFF46 => todo!(), /// DMA OAM DMA source address & start R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:153:32 [INFO] [stdout] | [INFO] [stdout] 153 | 0xFF76 => todo!(), /// PCM12 Audio digital outputs 1 & 2 R CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 154 | / 0xFF77 => todo!(), /// PCM34 Audio digital outputs 3 & 4 R CGB [INFO] [stdout] 155 | | 0xFF80..=0xFFFE => self.work_ram.get(addr), [INFO] [stdout] 156 | | 0xFFFF => self.interrupt.borrow().get(addr), [INFO] [stdout] 157 | | addr => panic!("MMU access denied, addr: 0x{:04X}", addr), [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:130:32 [INFO] [stdout] | [INFO] [stdout] 130 | 0xFF43 => todo!(), /// SCX Viewport X position R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 131 | / 0xFF44 => todo!(), /// LY LCD Y coordinate R All [INFO] [stdout] 132 | | 0xFF45 => todo!(), /// LYC LY compare R/W All [INFO] [stdout] 133 | | 0xFF46 => todo!(), /// DMA OAM DMA source address & start R/W All [INFO] [stdout] 134 | | 0xFF47 => todo!(), /// BGP BG palette data R/W DMG [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:154:32 [INFO] [stdout] | [INFO] [stdout] 154 | 0xFF77 => todo!(), /// PCM34 Audio digital outputs 3 & 4 R CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 155 | 0xFF80..=0xFFFE => self.work_ram.get(addr), [INFO] [stdout] | ------------------------------------------ rustdoc does not generate documentation for match arms [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:131:32 [INFO] [stdout] | [INFO] [stdout] 131 | 0xFF44 => todo!(), /// LY LCD Y coordinate R All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 132 | / 0xFF45 => todo!(), /// LYC LY compare R/W All [INFO] [stdout] 133 | | 0xFF46 => todo!(), /// DMA OAM DMA source address & start R/W All [INFO] [stdout] 134 | | 0xFF47 => todo!(), /// BGP BG palette data R/W DMG [INFO] [stdout] 135 | | 0xFF48 => todo!(), /// OBP0 OBJ palette 0 data R/W DMG [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:171:32 [INFO] [stdout] | [INFO] [stdout] 171 | 0xFF01 => todo!(), /// SB Serial transfer data R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 172 | / 0xFF02 => todo!(), /// SC Serial transfer control R/W Mixed [INFO] [stdout] 173 | | 0xFF04 => todo!(), /// DIV Divider register R/W All [INFO] [stdout] 174 | | 0xFF05 => todo!(), /// TIMA Timer counter R/W All [INFO] [stdout] 175 | | 0xFF06 => todo!(), /// TMA Timer modulo R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:172:32 [INFO] [stdout] | [INFO] [stdout] 172 | 0xFF02 => todo!(), /// SC Serial transfer control R/W Mixed [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 173 | / 0xFF04 => todo!(), /// DIV Divider register R/W All [INFO] [stdout] 174 | | 0xFF05 => todo!(), /// TIMA Timer counter R/W All [INFO] [stdout] 175 | | 0xFF06 => todo!(), /// TMA Timer modulo R/W All [INFO] [stdout] 176 | | 0xFF07 => todo!(), /// TAC Timer control R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:132:32 [INFO] [stdout] | [INFO] [stdout] 132 | 0xFF45 => todo!(), /// LYC LY compare R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 133 | / 0xFF46 => todo!(), /// DMA OAM DMA source address & start R/W All [INFO] [stdout] 134 | | 0xFF47 => todo!(), /// BGP BG palette data R/W DMG [INFO] [stdout] 135 | | 0xFF48 => todo!(), /// OBP0 OBJ palette 0 data R/W DMG [INFO] [stdout] 136 | | 0xFF49 => todo!(), /// OBP1 OBJ palette 1 data R/W DMG [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:133:32 [INFO] [stdout] | [INFO] [stdout] 133 | 0xFF46 => todo!(), /// DMA OAM DMA source address & start R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 134 | / 0xFF47 => todo!(), /// BGP BG palette data R/W DMG [INFO] [stdout] 135 | | 0xFF48 => todo!(), /// OBP0 OBJ palette 0 data R/W DMG [INFO] [stdout] 136 | | 0xFF49 => todo!(), /// OBP1 OBJ palette 1 data R/W DMG [INFO] [stdout] 137 | | 0xFF4A => todo!(), /// WY Window Y position R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:173:32 [INFO] [stdout] | [INFO] [stdout] 173 | 0xFF04 => todo!(), /// DIV Divider register R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 174 | / 0xFF05 => todo!(), /// TIMA Timer counter R/W All [INFO] [stdout] 175 | | 0xFF06 => todo!(), /// TMA Timer modulo R/W All [INFO] [stdout] 176 | | 0xFF07 => todo!(), /// TAC Timer control R/W All [INFO] [stdout] 177 | | 0xFF0F => self.interrupt.borrow_mut().set(addr, v), [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:134:32 [INFO] [stdout] | [INFO] [stdout] 134 | 0xFF47 => todo!(), /// BGP BG palette data R/W DMG [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 135 | / 0xFF48 => todo!(), /// OBP0 OBJ palette 0 data R/W DMG [INFO] [stdout] 136 | | 0xFF49 => todo!(), /// OBP1 OBJ palette 1 data R/W DMG [INFO] [stdout] 137 | | 0xFF4A => todo!(), /// WY Window Y position R/W All [INFO] [stdout] 138 | | 0xFF4B => todo!(), /// WX Window X position plus 7 R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:174:32 [INFO] [stdout] | [INFO] [stdout] 174 | 0xFF05 => todo!(), /// TIMA Timer counter R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 175 | / 0xFF06 => todo!(), /// TMA Timer modulo R/W All [INFO] [stdout] 176 | | 0xFF07 => todo!(), /// TAC Timer control R/W All [INFO] [stdout] 177 | | 0xFF0F => self.interrupt.borrow_mut().set(addr, v), [INFO] [stdout] 178 | | 0xFF10 => todo!(), /// NR10 Sound channel 1 sweep R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:135:32 [INFO] [stdout] | [INFO] [stdout] 135 | 0xFF48 => todo!(), /// OBP0 OBJ palette 0 data R/W DMG [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 136 | / 0xFF49 => todo!(), /// OBP1 OBJ palette 1 data R/W DMG [INFO] [stdout] 137 | | 0xFF4A => todo!(), /// WY Window Y position R/W All [INFO] [stdout] 138 | | 0xFF4B => todo!(), /// WX Window X position plus 7 R/W All [INFO] [stdout] 139 | | 0xFF4D => todo!(), /// KEY1 Prepare speed switch Mixed CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:175:32 [INFO] [stdout] | [INFO] [stdout] 175 | 0xFF06 => todo!(), /// TMA Timer modulo R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 176 | / 0xFF07 => todo!(), /// TAC Timer control R/W All [INFO] [stdout] 177 | | 0xFF0F => self.interrupt.borrow_mut().set(addr, v), [INFO] [stdout] 178 | | 0xFF10 => todo!(), /// NR10 Sound channel 1 sweep R/W All [INFO] [stdout] 179 | | 0xFF11 => todo!(), /// NR11 Sound channel 1 length timer & duty cycle Mixed All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:136:32 [INFO] [stdout] | [INFO] [stdout] 136 | 0xFF49 => todo!(), /// OBP1 OBJ palette 1 data R/W DMG [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 137 | / 0xFF4A => todo!(), /// WY Window Y position R/W All [INFO] [stdout] 138 | | 0xFF4B => todo!(), /// WX Window X position plus 7 R/W All [INFO] [stdout] 139 | | 0xFF4D => todo!(), /// KEY1 Prepare speed switch Mixed CGB [INFO] [stdout] 140 | | 0xFF4F => self.video.get(addr), /// VBK VRAM bank R/W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:176:32 [INFO] [stdout] | [INFO] [stdout] 176 | 0xFF07 => todo!(), /// TAC Timer control R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 177 | 0xFF0F => self.interrupt.borrow_mut().set(addr, v), [INFO] [stdout] | -------------------------------------------------- rustdoc does not generate documentation for match arms [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:178:32 [INFO] [stdout] | [INFO] [stdout] 178 | 0xFF10 => todo!(), /// NR10 Sound channel 1 sweep R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 179 | / 0xFF11 => todo!(), /// NR11 Sound channel 1 length timer & duty cycle Mixed All [INFO] [stdout] 180 | | 0xFF12 => todo!(), /// NR12 Sound channel 1 volume & envelope R/W All [INFO] [stdout] 181 | | 0xFF13 => todo!(), /// NR13 Sound channel 1 period low W All [INFO] [stdout] 182 | | 0xFF14 => todo!(), /// NR14 Sound channel 1 period high & control Mixed All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:137:32 [INFO] [stdout] | [INFO] [stdout] 137 | 0xFF4A => todo!(), /// WY Window Y position R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 138 | / 0xFF4B => todo!(), /// WX Window X position plus 7 R/W All [INFO] [stdout] 139 | | 0xFF4D => todo!(), /// KEY1 Prepare speed switch Mixed CGB [INFO] [stdout] 140 | | 0xFF4F => self.video.get(addr), /// VBK VRAM bank R/W CGB [INFO] [stdout] 141 | | 0xFF51 => todo!(), /// HDMA1 VRAM DMA source high W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:179:32 [INFO] [stdout] | [INFO] [stdout] 179 | 0xFF11 => todo!(), /// NR11 Sound channel 1 length timer & duty cycle Mixed All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 180 | / 0xFF12 => todo!(), /// NR12 Sound channel 1 volume & envelope R/W All [INFO] [stdout] 181 | | 0xFF13 => todo!(), /// NR13 Sound channel 1 period low W All [INFO] [stdout] 182 | | 0xFF14 => todo!(), /// NR14 Sound channel 1 period high & control Mixed All [INFO] [stdout] 183 | | 0xFF16 => todo!(), /// NR21 Sound channel 2 length timer & duty cycle Mixed All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:138:32 [INFO] [stdout] | [INFO] [stdout] 138 | 0xFF4B => todo!(), /// WX Window X position plus 7 R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 139 | / 0xFF4D => todo!(), /// KEY1 Prepare speed switch Mixed CGB [INFO] [stdout] 140 | | 0xFF4F => self.video.get(addr), /// VBK VRAM bank R/W CGB [INFO] [stdout] 141 | | 0xFF51 => todo!(), /// HDMA1 VRAM DMA source high W CGB [INFO] [stdout] 142 | | 0xFF52 => todo!(), /// HDMA2 VRAM DMA source low W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:139:32 [INFO] [stdout] | [INFO] [stdout] 139 | 0xFF4D => todo!(), /// KEY1 Prepare speed switch Mixed CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 140 | 0xFF4F => self.video.get(addr), /// VBK VRAM bank R/W CGB [INFO] [stdout] | ------------------------------ rustdoc does not generate documentation for match arms [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:180:32 [INFO] [stdout] | [INFO] [stdout] 180 | 0xFF12 => todo!(), /// NR12 Sound channel 1 volume & envelope R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 181 | / 0xFF13 => todo!(), /// NR13 Sound channel 1 period low W All [INFO] [stdout] 182 | | 0xFF14 => todo!(), /// NR14 Sound channel 1 period high & control Mixed All [INFO] [stdout] 183 | | 0xFF16 => todo!(), /// NR21 Sound channel 2 length timer & duty cycle Mixed All [INFO] [stdout] 184 | | 0xFF17 => todo!(), /// NR22 Sound channel 2 volume & envelope R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:140:45 [INFO] [stdout] | [INFO] [stdout] 140 | 0xFF4F => self.video.get(addr), /// VBK VRAM bank R/W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 141 | / 0xFF51 => todo!(), /// HDMA1 VRAM DMA source high W CGB [INFO] [stdout] 142 | | 0xFF52 => todo!(), /// HDMA2 VRAM DMA source low W CGB [INFO] [stdout] 143 | | 0xFF53 => todo!(), /// HDMA3 VRAM DMA destination high W CGB [INFO] [stdout] 144 | | 0xFF54 => todo!(), /// HDMA4 VRAM DMA destination low W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:181:32 [INFO] [stdout] | [INFO] [stdout] 181 | 0xFF13 => todo!(), /// NR13 Sound channel 1 period low W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 182 | / 0xFF14 => todo!(), /// NR14 Sound channel 1 period high & control Mixed All [INFO] [stdout] 183 | | 0xFF16 => todo!(), /// NR21 Sound channel 2 length timer & duty cycle Mixed All [INFO] [stdout] 184 | | 0xFF17 => todo!(), /// NR22 Sound channel 2 volume & envelope R/W All [INFO] [stdout] 185 | | 0xFF18 => todo!(), /// NR23 Sound channel 2 period low W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:141:32 [INFO] [stdout] | [INFO] [stdout] 141 | 0xFF51 => todo!(), /// HDMA1 VRAM DMA source high W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 142 | / 0xFF52 => todo!(), /// HDMA2 VRAM DMA source low W CGB [INFO] [stdout] 143 | | 0xFF53 => todo!(), /// HDMA3 VRAM DMA destination high W CGB [INFO] [stdout] 144 | | 0xFF54 => todo!(), /// HDMA4 VRAM DMA destination low W CGB [INFO] [stdout] 145 | | 0xFF55 => todo!(), /// HDMA5 VRAM DMA length/mode/start R/W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:182:32 [INFO] [stdout] | [INFO] [stdout] 182 | 0xFF14 => todo!(), /// NR14 Sound channel 1 period high & control Mixed All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 183 | / 0xFF16 => todo!(), /// NR21 Sound channel 2 length timer & duty cycle Mixed All [INFO] [stdout] 184 | | 0xFF17 => todo!(), /// NR22 Sound channel 2 volume & envelope R/W All [INFO] [stdout] 185 | | 0xFF18 => todo!(), /// NR23 Sound channel 2 period low W All [INFO] [stdout] 186 | | 0xFF19 => todo!(), /// NR24 Sound channel 2 period high & control Mixed All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:142:32 [INFO] [stdout] | [INFO] [stdout] 142 | 0xFF52 => todo!(), /// HDMA2 VRAM DMA source low W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 143 | / 0xFF53 => todo!(), /// HDMA3 VRAM DMA destination high W CGB [INFO] [stdout] 144 | | 0xFF54 => todo!(), /// HDMA4 VRAM DMA destination low W CGB [INFO] [stdout] 145 | | 0xFF55 => todo!(), /// HDMA5 VRAM DMA length/mode/start R/W CGB [INFO] [stdout] 146 | | 0xFF56 => todo!(), /// RP Infrared communications port Mixed CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:183:32 [INFO] [stdout] | [INFO] [stdout] 183 | 0xFF16 => todo!(), /// NR21 Sound channel 2 length timer & duty cycle Mixed All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 184 | / 0xFF17 => todo!(), /// NR22 Sound channel 2 volume & envelope R/W All [INFO] [stdout] 185 | | 0xFF18 => todo!(), /// NR23 Sound channel 2 period low W All [INFO] [stdout] 186 | | 0xFF19 => todo!(), /// NR24 Sound channel 2 period high & control Mixed All [INFO] [stdout] 187 | | 0xFF1A => todo!(), /// NR30 Sound channel 3 DAC enable R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:143:32 [INFO] [stdout] | [INFO] [stdout] 143 | 0xFF53 => todo!(), /// HDMA3 VRAM DMA destination high W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 144 | / 0xFF54 => todo!(), /// HDMA4 VRAM DMA destination low W CGB [INFO] [stdout] 145 | | 0xFF55 => todo!(), /// HDMA5 VRAM DMA length/mode/start R/W CGB [INFO] [stdout] 146 | | 0xFF56 => todo!(), /// RP Infrared communications port Mixed CGB [INFO] [stdout] 147 | | 0xFF68 => todo!(), /// BCPS/BGPI Background color palette specification / Background palette index R/W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:184:32 [INFO] [stdout] | [INFO] [stdout] 184 | 0xFF17 => todo!(), /// NR22 Sound channel 2 volume & envelope R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 185 | / 0xFF18 => todo!(), /// NR23 Sound channel 2 period low W All [INFO] [stdout] 186 | | 0xFF19 => todo!(), /// NR24 Sound channel 2 period high & control Mixed All [INFO] [stdout] 187 | | 0xFF1A => todo!(), /// NR30 Sound channel 3 DAC enable R/W All [INFO] [stdout] 188 | | 0xFF1B => todo!(), /// NR31 Sound channel 3 length timer W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:144:32 [INFO] [stdout] | [INFO] [stdout] 144 | 0xFF54 => todo!(), /// HDMA4 VRAM DMA destination low W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 145 | / 0xFF55 => todo!(), /// HDMA5 VRAM DMA length/mode/start R/W CGB [INFO] [stdout] 146 | | 0xFF56 => todo!(), /// RP Infrared communications port Mixed CGB [INFO] [stdout] 147 | | 0xFF68 => todo!(), /// BCPS/BGPI Background color palette specification / Background palette index R/W CGB [INFO] [stdout] 148 | | 0xFF69 => todo!(), /// BCPD/BGPD Background color palette data / Background palette data R/W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:185:32 [INFO] [stdout] | [INFO] [stdout] 185 | 0xFF18 => todo!(), /// NR23 Sound channel 2 period low W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 186 | / 0xFF19 => todo!(), /// NR24 Sound channel 2 period high & control Mixed All [INFO] [stdout] 187 | | 0xFF1A => todo!(), /// NR30 Sound channel 3 DAC enable R/W All [INFO] [stdout] 188 | | 0xFF1B => todo!(), /// NR31 Sound channel 3 length timer W All [INFO] [stdout] 189 | | 0xFF1C => todo!(), /// NR32 Sound channel 3 output level R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:145:32 [INFO] [stdout] | [INFO] [stdout] 145 | 0xFF55 => todo!(), /// HDMA5 VRAM DMA length/mode/start R/W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 146 | / 0xFF56 => todo!(), /// RP Infrared communications port Mixed CGB [INFO] [stdout] 147 | | 0xFF68 => todo!(), /// BCPS/BGPI Background color palette specification / Background palette index R/W CGB [INFO] [stdout] 148 | | 0xFF69 => todo!(), /// BCPD/BGPD Background color palette data / Background palette data R/W CGB [INFO] [stdout] 149 | | 0xFF6A => todo!(), /// OCPS/OBPI OBJ color palette specification / OBJ palette index R/W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:186:32 [INFO] [stdout] | [INFO] [stdout] 186 | 0xFF19 => todo!(), /// NR24 Sound channel 2 period high & control Mixed All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 187 | / 0xFF1A => todo!(), /// NR30 Sound channel 3 DAC enable R/W All [INFO] [stdout] 188 | | 0xFF1B => todo!(), /// NR31 Sound channel 3 length timer W All [INFO] [stdout] 189 | | 0xFF1C => todo!(), /// NR32 Sound channel 3 output level R/W All [INFO] [stdout] 190 | | 0xFF1D => todo!(), /// NR33 Sound channel 3 period low W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:146:32 [INFO] [stdout] | [INFO] [stdout] 146 | 0xFF56 => todo!(), /// RP Infrared communications port Mixed CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 147 | / 0xFF68 => todo!(), /// BCPS/BGPI Background color palette specification / Background palette index R/W CGB [INFO] [stdout] 148 | | 0xFF69 => todo!(), /// BCPD/BGPD Background color palette data / Background palette data R/W CGB [INFO] [stdout] 149 | | 0xFF6A => todo!(), /// OCPS/OBPI OBJ color palette specification / OBJ palette index R/W CGB [INFO] [stdout] 150 | | 0xFF6B => todo!(), /// OCPD/OBPD OBJ color palette data / OBJ palette data R/W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:187:32 [INFO] [stdout] | [INFO] [stdout] 187 | 0xFF1A => todo!(), /// NR30 Sound channel 3 DAC enable R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 188 | / 0xFF1B => todo!(), /// NR31 Sound channel 3 length timer W All [INFO] [stdout] 189 | | 0xFF1C => todo!(), /// NR32 Sound channel 3 output level R/W All [INFO] [stdout] 190 | | 0xFF1D => todo!(), /// NR33 Sound channel 3 period low W All [INFO] [stdout] 191 | | 0xFF1E => todo!(), /// NR34 Sound channel 3 period high & control Mixed All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:147:32 [INFO] [stdout] | [INFO] [stdout] 147 | 0xFF68 => todo!(), /// BCPS/BGPI Background color palette specification / Background palette index R/W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 148 | / 0xFF69 => todo!(), /// BCPD/BGPD Background color palette data / Background palette data R/W CGB [INFO] [stdout] 149 | | 0xFF6A => todo!(), /// OCPS/OBPI OBJ color palette specification / OBJ palette index R/W CGB [INFO] [stdout] 150 | | 0xFF6B => todo!(), /// OCPD/OBPD OBJ color palette data / OBJ palette data R/W CGB [INFO] [stdout] 151 | | 0xFF6C => todo!(), /// OPRI Object priority mode R/W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:188:32 [INFO] [stdout] | [INFO] [stdout] 188 | 0xFF1B => todo!(), /// NR31 Sound channel 3 length timer W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 189 | / 0xFF1C => todo!(), /// NR32 Sound channel 3 output level R/W All [INFO] [stdout] 190 | | 0xFF1D => todo!(), /// NR33 Sound channel 3 period low W All [INFO] [stdout] 191 | | 0xFF1E => todo!(), /// NR34 Sound channel 3 period high & control Mixed All [INFO] [stdout] 192 | | 0xFF20 => todo!(), /// NR41 Sound channel 4 length timer W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:148:32 [INFO] [stdout] | [INFO] [stdout] 148 | 0xFF69 => todo!(), /// BCPD/BGPD Background color palette data / Background palette data R/W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 149 | / 0xFF6A => todo!(), /// OCPS/OBPI OBJ color palette specification / OBJ palette index R/W CGB [INFO] [stdout] 150 | | 0xFF6B => todo!(), /// OCPD/OBPD OBJ color palette data / OBJ palette data R/W CGB [INFO] [stdout] 151 | | 0xFF6C => todo!(), /// OPRI Object priority mode R/W CGB [INFO] [stdout] 152 | | 0xFF70 => self.work_ram.get(addr), /// SVBK WRAM bank R/W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:189:32 [INFO] [stdout] | [INFO] [stdout] 189 | 0xFF1C => todo!(), /// NR32 Sound channel 3 output level R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 190 | / 0xFF1D => todo!(), /// NR33 Sound channel 3 period low W All [INFO] [stdout] 191 | | 0xFF1E => todo!(), /// NR34 Sound channel 3 period high & control Mixed All [INFO] [stdout] 192 | | 0xFF20 => todo!(), /// NR41 Sound channel 4 length timer W All [INFO] [stdout] 193 | | 0xFF21 => todo!(), /// NR42 Sound channel 4 volume & envelope R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:149:32 [INFO] [stdout] | [INFO] [stdout] 149 | 0xFF6A => todo!(), /// OCPS/OBPI OBJ color palette specification / OBJ palette index R/W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 150 | / 0xFF6B => todo!(), /// OCPD/OBPD OBJ color palette data / OBJ palette data R/W CGB [INFO] [stdout] 151 | | 0xFF6C => todo!(), /// OPRI Object priority mode R/W CGB [INFO] [stdout] 152 | | 0xFF70 => self.work_ram.get(addr), /// SVBK WRAM bank R/W CGB [INFO] [stdout] 153 | | 0xFF76 => todo!(), /// PCM12 Audio digital outputs 1 & 2 R CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:150:32 [INFO] [stdout] | [INFO] [stdout] 150 | 0xFF6B => todo!(), /// OCPD/OBPD OBJ color palette data / OBJ palette data R/W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 151 | / 0xFF6C => todo!(), /// OPRI Object priority mode R/W CGB [INFO] [stdout] 152 | | 0xFF70 => self.work_ram.get(addr), /// SVBK WRAM bank R/W CGB [INFO] [stdout] 153 | | 0xFF76 => todo!(), /// PCM12 Audio digital outputs 1 & 2 R CGB [INFO] [stdout] 154 | | 0xFF77 => todo!(), /// PCM34 Audio digital outputs 3 & 4 R CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:190:32 [INFO] [stdout] | [INFO] [stdout] 190 | 0xFF1D => todo!(), /// NR33 Sound channel 3 period low W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 191 | / 0xFF1E => todo!(), /// NR34 Sound channel 3 period high & control Mixed All [INFO] [stdout] 192 | | 0xFF20 => todo!(), /// NR41 Sound channel 4 length timer W All [INFO] [stdout] 193 | | 0xFF21 => todo!(), /// NR42 Sound channel 4 volume & envelope R/W All [INFO] [stdout] 194 | | 0xFF22 => todo!(), /// NR43 Sound channel 4 frequency & randomness R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:151:32 [INFO] [stdout] | [INFO] [stdout] 151 | 0xFF6C => todo!(), /// OPRI Object priority mode R/W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 152 | 0xFF70 => self.work_ram.get(addr), /// SVBK WRAM bank R/W CGB [INFO] [stdout] | --------------------------------- rustdoc does not generate documentation for match arms [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:191:32 [INFO] [stdout] | [INFO] [stdout] 191 | 0xFF1E => todo!(), /// NR34 Sound channel 3 period high & control Mixed All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 192 | / 0xFF20 => todo!(), /// NR41 Sound channel 4 length timer W All [INFO] [stdout] 193 | | 0xFF21 => todo!(), /// NR42 Sound channel 4 volume & envelope R/W All [INFO] [stdout] 194 | | 0xFF22 => todo!(), /// NR43 Sound channel 4 frequency & randomness R/W All [INFO] [stdout] 195 | | 0xFF23 => todo!(), /// NR44 Sound channel 4 control Mixed All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:152:48 [INFO] [stdout] | [INFO] [stdout] 152 | 0xFF70 => self.work_ram.get(addr), /// SVBK WRAM bank R/W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 153 | / 0xFF76 => todo!(), /// PCM12 Audio digital outputs 1 & 2 R CGB [INFO] [stdout] 154 | | 0xFF77 => todo!(), /// PCM34 Audio digital outputs 3 & 4 R CGB [INFO] [stdout] 155 | | 0xFF80..=0xFFFE => self.work_ram.get(addr), [INFO] [stdout] 156 | | 0xFFFF => self.interrupt.borrow().get(addr), [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:153:32 [INFO] [stdout] | [INFO] [stdout] 153 | 0xFF76 => todo!(), /// PCM12 Audio digital outputs 1 & 2 R CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 154 | / 0xFF77 => todo!(), /// PCM34 Audio digital outputs 3 & 4 R CGB [INFO] [stdout] 155 | | 0xFF80..=0xFFFE => self.work_ram.get(addr), [INFO] [stdout] 156 | | 0xFFFF => self.interrupt.borrow().get(addr), [INFO] [stdout] 157 | | addr => panic!("MMU access denied, addr: 0x{:04X}", addr), [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:192:32 [INFO] [stdout] | [INFO] [stdout] 192 | 0xFF20 => todo!(), /// NR41 Sound channel 4 length timer W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 193 | / 0xFF21 => todo!(), /// NR42 Sound channel 4 volume & envelope R/W All [INFO] [stdout] 194 | | 0xFF22 => todo!(), /// NR43 Sound channel 4 frequency & randomness R/W All [INFO] [stdout] 195 | | 0xFF23 => todo!(), /// NR44 Sound channel 4 control Mixed All [INFO] [stdout] 196 | | 0xFF24 => todo!(), /// NR50 Master volume & VIN panning R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:193:32 [INFO] [stdout] | [INFO] [stdout] 193 | 0xFF21 => todo!(), /// NR42 Sound channel 4 volume & envelope R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 194 | / 0xFF22 => todo!(), /// NR43 Sound channel 4 frequency & randomness R/W All [INFO] [stdout] 195 | | 0xFF23 => todo!(), /// NR44 Sound channel 4 control Mixed All [INFO] [stdout] 196 | | 0xFF24 => todo!(), /// NR50 Master volume & VIN panning R/W All [INFO] [stdout] 197 | | 0xFF25 => todo!(), /// NR51 Sound panning R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:154:32 [INFO] [stdout] | [INFO] [stdout] 154 | 0xFF77 => todo!(), /// PCM34 Audio digital outputs 3 & 4 R CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 155 | 0xFF80..=0xFFFE => self.work_ram.get(addr), [INFO] [stdout] | ------------------------------------------ rustdoc does not generate documentation for match arms [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:194:32 [INFO] [stdout] | [INFO] [stdout] 194 | 0xFF22 => todo!(), /// NR43 Sound channel 4 frequency & randomness R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 195 | / 0xFF23 => todo!(), /// NR44 Sound channel 4 control Mixed All [INFO] [stdout] 196 | | 0xFF24 => todo!(), /// NR50 Master volume & VIN panning R/W All [INFO] [stdout] 197 | | 0xFF25 => todo!(), /// NR51 Sound panning R/W All [INFO] [stdout] 198 | | 0xFF26 => todo!(), /// NR52 Sound on/off Mixed All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:171:32 [INFO] [stdout] | [INFO] [stdout] 171 | 0xFF01 => todo!(), /// SB Serial transfer data R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 172 | / 0xFF02 => todo!(), /// SC Serial transfer control R/W Mixed [INFO] [stdout] 173 | | 0xFF04 => todo!(), /// DIV Divider register R/W All [INFO] [stdout] 174 | | 0xFF05 => todo!(), /// TIMA Timer counter R/W All [INFO] [stdout] 175 | | 0xFF06 => todo!(), /// TMA Timer modulo R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:195:32 [INFO] [stdout] | [INFO] [stdout] 195 | 0xFF23 => todo!(), /// NR44 Sound channel 4 control Mixed All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 196 | / 0xFF24 => todo!(), /// NR50 Master volume & VIN panning R/W All [INFO] [stdout] 197 | | 0xFF25 => todo!(), /// NR51 Sound panning R/W All [INFO] [stdout] 198 | | 0xFF26 => todo!(), /// NR52 Sound on/off Mixed All [INFO] [stdout] 199 | | 0xFF30..=0xFF3F => todo!(), /// Wave RAM Storage for one of the sound channels’ waveform R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:172:32 [INFO] [stdout] | [INFO] [stdout] 172 | 0xFF02 => todo!(), /// SC Serial transfer control R/W Mixed [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 173 | / 0xFF04 => todo!(), /// DIV Divider register R/W All [INFO] [stdout] 174 | | 0xFF05 => todo!(), /// TIMA Timer counter R/W All [INFO] [stdout] 175 | | 0xFF06 => todo!(), /// TMA Timer modulo R/W All [INFO] [stdout] 176 | | 0xFF07 => todo!(), /// TAC Timer control R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:196:32 [INFO] [stdout] | [INFO] [stdout] 196 | 0xFF24 => todo!(), /// NR50 Master volume & VIN panning R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 197 | / 0xFF25 => todo!(), /// NR51 Sound panning R/W All [INFO] [stdout] 198 | | 0xFF26 => todo!(), /// NR52 Sound on/off Mixed All [INFO] [stdout] 199 | | 0xFF30..=0xFF3F => todo!(), /// Wave RAM Storage for one of the sound channels’ waveform R/W All [INFO] [stdout] 200 | | 0xFF40 => todo!(), /// LCDC LCD control R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:197:32 [INFO] [stdout] | [INFO] [stdout] 197 | 0xFF25 => todo!(), /// NR51 Sound panning R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 198 | / 0xFF26 => todo!(), /// NR52 Sound on/off Mixed All [INFO] [stdout] 199 | | 0xFF30..=0xFF3F => todo!(), /// Wave RAM Storage for one of the sound channels’ waveform R/W All [INFO] [stdout] 200 | | 0xFF40 => todo!(), /// LCDC LCD control R/W All [INFO] [stdout] 201 | | 0xFF41 => todo!(), /// STAT LCD status Mixed All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:173:32 [INFO] [stdout] | [INFO] [stdout] 173 | 0xFF04 => todo!(), /// DIV Divider register R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 174 | / 0xFF05 => todo!(), /// TIMA Timer counter R/W All [INFO] [stdout] 175 | | 0xFF06 => todo!(), /// TMA Timer modulo R/W All [INFO] [stdout] 176 | | 0xFF07 => todo!(), /// TAC Timer control R/W All [INFO] [stdout] 177 | | 0xFF0F => self.interrupt.borrow_mut().set(addr, v), [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:198:32 [INFO] [stdout] | [INFO] [stdout] 198 | 0xFF26 => todo!(), /// NR52 Sound on/off Mixed All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 199 | / 0xFF30..=0xFF3F => todo!(), /// Wave RAM Storage for one of the sound channels’ waveform R/W All [INFO] [stdout] 200 | | 0xFF40 => todo!(), /// LCDC LCD control R/W All [INFO] [stdout] 201 | | 0xFF41 => todo!(), /// STAT LCD status Mixed All [INFO] [stdout] 202 | | 0xFF42 => todo!(), /// SCY Viewport Y position R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:174:32 [INFO] [stdout] | [INFO] [stdout] 174 | 0xFF05 => todo!(), /// TIMA Timer counter R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 175 | / 0xFF06 => todo!(), /// TMA Timer modulo R/W All [INFO] [stdout] 176 | | 0xFF07 => todo!(), /// TAC Timer control R/W All [INFO] [stdout] 177 | | 0xFF0F => self.interrupt.borrow_mut().set(addr, v), [INFO] [stdout] 178 | | 0xFF10 => todo!(), /// NR10 Sound channel 1 sweep R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:199:41 [INFO] [stdout] | [INFO] [stdout] 199 | 0xFF30..=0xFF3F => todo!(), /// Wave RAM Storage for one of the sound channels’ waveform R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 200 | / 0xFF40 => todo!(), /// LCDC LCD control R/W All [INFO] [stdout] 201 | | 0xFF41 => todo!(), /// STAT LCD status Mixed All [INFO] [stdout] 202 | | 0xFF42 => todo!(), /// SCY Viewport Y position R/W All [INFO] [stdout] 203 | | 0xFF43 => todo!(), /// SCX Viewport X position R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:175:32 [INFO] [stdout] | [INFO] [stdout] 175 | 0xFF06 => todo!(), /// TMA Timer modulo R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 176 | / 0xFF07 => todo!(), /// TAC Timer control R/W All [INFO] [stdout] 177 | | 0xFF0F => self.interrupt.borrow_mut().set(addr, v), [INFO] [stdout] 178 | | 0xFF10 => todo!(), /// NR10 Sound channel 1 sweep R/W All [INFO] [stdout] 179 | | 0xFF11 => todo!(), /// NR11 Sound channel 1 length timer & duty cycle Mixed All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:200:32 [INFO] [stdout] | [INFO] [stdout] 200 | 0xFF40 => todo!(), /// LCDC LCD control R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 201 | / 0xFF41 => todo!(), /// STAT LCD status Mixed All [INFO] [stdout] 202 | | 0xFF42 => todo!(), /// SCY Viewport Y position R/W All [INFO] [stdout] 203 | | 0xFF43 => todo!(), /// SCX Viewport X position R/W All [INFO] [stdout] 204 | | 0xFF44 => todo!(), /// LY LCD Y coordinate R All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:176:32 [INFO] [stdout] | [INFO] [stdout] 176 | 0xFF07 => todo!(), /// TAC Timer control R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 177 | 0xFF0F => self.interrupt.borrow_mut().set(addr, v), [INFO] [stdout] | -------------------------------------------------- rustdoc does not generate documentation for match arms [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:201:32 [INFO] [stdout] | [INFO] [stdout] 201 | 0xFF41 => todo!(), /// STAT LCD status Mixed All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 202 | / 0xFF42 => todo!(), /// SCY Viewport Y position R/W All [INFO] [stdout] 203 | | 0xFF43 => todo!(), /// SCX Viewport X position R/W All [INFO] [stdout] 204 | | 0xFF44 => todo!(), /// LY LCD Y coordinate R All [INFO] [stdout] 205 | | 0xFF45 => todo!(), /// LYC LY compare R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:178:32 [INFO] [stdout] | [INFO] [stdout] 178 | 0xFF10 => todo!(), /// NR10 Sound channel 1 sweep R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 179 | / 0xFF11 => todo!(), /// NR11 Sound channel 1 length timer & duty cycle Mixed All [INFO] [stdout] 180 | | 0xFF12 => todo!(), /// NR12 Sound channel 1 volume & envelope R/W All [INFO] [stdout] 181 | | 0xFF13 => todo!(), /// NR13 Sound channel 1 period low W All [INFO] [stdout] 182 | | 0xFF14 => todo!(), /// NR14 Sound channel 1 period high & control Mixed All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:202:32 [INFO] [stdout] | [INFO] [stdout] 202 | 0xFF42 => todo!(), /// SCY Viewport Y position R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 203 | / 0xFF43 => todo!(), /// SCX Viewport X position R/W All [INFO] [stdout] 204 | | 0xFF44 => todo!(), /// LY LCD Y coordinate R All [INFO] [stdout] 205 | | 0xFF45 => todo!(), /// LYC LY compare R/W All [INFO] [stdout] 206 | | 0xFF46 => todo!(), /// DMA OAM DMA source address & start R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:179:32 [INFO] [stdout] | [INFO] [stdout] 179 | 0xFF11 => todo!(), /// NR11 Sound channel 1 length timer & duty cycle Mixed All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 180 | / 0xFF12 => todo!(), /// NR12 Sound channel 1 volume & envelope R/W All [INFO] [stdout] 181 | | 0xFF13 => todo!(), /// NR13 Sound channel 1 period low W All [INFO] [stdout] 182 | | 0xFF14 => todo!(), /// NR14 Sound channel 1 period high & control Mixed All [INFO] [stdout] 183 | | 0xFF16 => todo!(), /// NR21 Sound channel 2 length timer & duty cycle Mixed All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:203:32 [INFO] [stdout] | [INFO] [stdout] 203 | 0xFF43 => todo!(), /// SCX Viewport X position R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 204 | / 0xFF44 => todo!(), /// LY LCD Y coordinate R All [INFO] [stdout] 205 | | 0xFF45 => todo!(), /// LYC LY compare R/W All [INFO] [stdout] 206 | | 0xFF46 => todo!(), /// DMA OAM DMA source address & start R/W All [INFO] [stdout] 207 | | 0xFF47 => todo!(), /// BGP BG palette data R/W DMG [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:180:32 [INFO] [stdout] | [INFO] [stdout] 180 | 0xFF12 => todo!(), /// NR12 Sound channel 1 volume & envelope R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 181 | / 0xFF13 => todo!(), /// NR13 Sound channel 1 period low W All [INFO] [stdout] 182 | | 0xFF14 => todo!(), /// NR14 Sound channel 1 period high & control Mixed All [INFO] [stdout] 183 | | 0xFF16 => todo!(), /// NR21 Sound channel 2 length timer & duty cycle Mixed All [INFO] [stdout] 184 | | 0xFF17 => todo!(), /// NR22 Sound channel 2 volume & envelope R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:204:32 [INFO] [stdout] | [INFO] [stdout] 204 | 0xFF44 => todo!(), /// LY LCD Y coordinate R All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 205 | / 0xFF45 => todo!(), /// LYC LY compare R/W All [INFO] [stdout] 206 | | 0xFF46 => todo!(), /// DMA OAM DMA source address & start R/W All [INFO] [stdout] 207 | | 0xFF47 => todo!(), /// BGP BG palette data R/W DMG [INFO] [stdout] 208 | | 0xFF48 => todo!(), /// OBP0 OBJ palette 0 data R/W DMG [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:181:32 [INFO] [stdout] | [INFO] [stdout] 181 | 0xFF13 => todo!(), /// NR13 Sound channel 1 period low W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 182 | / 0xFF14 => todo!(), /// NR14 Sound channel 1 period high & control Mixed All [INFO] [stdout] 183 | | 0xFF16 => todo!(), /// NR21 Sound channel 2 length timer & duty cycle Mixed All [INFO] [stdout] 184 | | 0xFF17 => todo!(), /// NR22 Sound channel 2 volume & envelope R/W All [INFO] [stdout] 185 | | 0xFF18 => todo!(), /// NR23 Sound channel 2 period low W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:205:32 [INFO] [stdout] | [INFO] [stdout] 205 | 0xFF45 => todo!(), /// LYC LY compare R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 206 | / 0xFF46 => todo!(), /// DMA OAM DMA source address & start R/W All [INFO] [stdout] 207 | | 0xFF47 => todo!(), /// BGP BG palette data R/W DMG [INFO] [stdout] 208 | | 0xFF48 => todo!(), /// OBP0 OBJ palette 0 data R/W DMG [INFO] [stdout] 209 | | 0xFF49 => todo!(), /// OBP1 OBJ palette 1 data R/W DMG [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:182:32 [INFO] [stdout] | [INFO] [stdout] 182 | 0xFF14 => todo!(), /// NR14 Sound channel 1 period high & control Mixed All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 183 | / 0xFF16 => todo!(), /// NR21 Sound channel 2 length timer & duty cycle Mixed All [INFO] [stdout] 184 | | 0xFF17 => todo!(), /// NR22 Sound channel 2 volume & envelope R/W All [INFO] [stdout] 185 | | 0xFF18 => todo!(), /// NR23 Sound channel 2 period low W All [INFO] [stdout] 186 | | 0xFF19 => todo!(), /// NR24 Sound channel 2 period high & control Mixed All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:206:32 [INFO] [stdout] | [INFO] [stdout] 206 | 0xFF46 => todo!(), /// DMA OAM DMA source address & start R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 207 | / 0xFF47 => todo!(), /// BGP BG palette data R/W DMG [INFO] [stdout] 208 | | 0xFF48 => todo!(), /// OBP0 OBJ palette 0 data R/W DMG [INFO] [stdout] 209 | | 0xFF49 => todo!(), /// OBP1 OBJ palette 1 data R/W DMG [INFO] [stdout] 210 | | 0xFF4A => todo!(), /// WY Window Y position R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:183:32 [INFO] [stdout] | [INFO] [stdout] 183 | 0xFF16 => todo!(), /// NR21 Sound channel 2 length timer & duty cycle Mixed All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 184 | / 0xFF17 => todo!(), /// NR22 Sound channel 2 volume & envelope R/W All [INFO] [stdout] 185 | | 0xFF18 => todo!(), /// NR23 Sound channel 2 period low W All [INFO] [stdout] 186 | | 0xFF19 => todo!(), /// NR24 Sound channel 2 period high & control Mixed All [INFO] [stdout] 187 | | 0xFF1A => todo!(), /// NR30 Sound channel 3 DAC enable R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:184:32 [INFO] [stdout] | [INFO] [stdout] 184 | 0xFF17 => todo!(), /// NR22 Sound channel 2 volume & envelope R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 185 | / 0xFF18 => todo!(), /// NR23 Sound channel 2 period low W All [INFO] [stdout] 186 | | 0xFF19 => todo!(), /// NR24 Sound channel 2 period high & control Mixed All [INFO] [stdout] 187 | | 0xFF1A => todo!(), /// NR30 Sound channel 3 DAC enable R/W All [INFO] [stdout] 188 | | 0xFF1B => todo!(), /// NR31 Sound channel 3 length timer W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:185:32 [INFO] [stdout] | [INFO] [stdout] 185 | 0xFF18 => todo!(), /// NR23 Sound channel 2 period low W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 186 | / 0xFF19 => todo!(), /// NR24 Sound channel 2 period high & control Mixed All [INFO] [stdout] 187 | | 0xFF1A => todo!(), /// NR30 Sound channel 3 DAC enable R/W All [INFO] [stdout] 188 | | 0xFF1B => todo!(), /// NR31 Sound channel 3 length timer W All [INFO] [stdout] 189 | | 0xFF1C => todo!(), /// NR32 Sound channel 3 output level R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:186:32 [INFO] [stdout] | [INFO] [stdout] 186 | 0xFF19 => todo!(), /// NR24 Sound channel 2 period high & control Mixed All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 187 | / 0xFF1A => todo!(), /// NR30 Sound channel 3 DAC enable R/W All [INFO] [stdout] 188 | | 0xFF1B => todo!(), /// NR31 Sound channel 3 length timer W All [INFO] [stdout] 189 | | 0xFF1C => todo!(), /// NR32 Sound channel 3 output level R/W All [INFO] [stdout] 190 | | 0xFF1D => todo!(), /// NR33 Sound channel 3 period low W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:207:32 [INFO] [stdout] | [INFO] [stdout] 207 | 0xFF47 => todo!(), /// BGP BG palette data R/W DMG [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 208 | / 0xFF48 => todo!(), /// OBP0 OBJ palette 0 data R/W DMG [INFO] [stdout] 209 | | 0xFF49 => todo!(), /// OBP1 OBJ palette 1 data R/W DMG [INFO] [stdout] 210 | | 0xFF4A => todo!(), /// WY Window Y position R/W All [INFO] [stdout] 211 | | 0xFF4B => todo!(), /// WX Window X position plus 7 R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:187:32 [INFO] [stdout] | [INFO] [stdout] 187 | 0xFF1A => todo!(), /// NR30 Sound channel 3 DAC enable R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 188 | / 0xFF1B => todo!(), /// NR31 Sound channel 3 length timer W All [INFO] [stdout] 189 | | 0xFF1C => todo!(), /// NR32 Sound channel 3 output level R/W All [INFO] [stdout] 190 | | 0xFF1D => todo!(), /// NR33 Sound channel 3 period low W All [INFO] [stdout] 191 | | 0xFF1E => todo!(), /// NR34 Sound channel 3 period high & control Mixed All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:188:32 [INFO] [stdout] | [INFO] [stdout] 188 | 0xFF1B => todo!(), /// NR31 Sound channel 3 length timer W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 189 | / 0xFF1C => todo!(), /// NR32 Sound channel 3 output level R/W All [INFO] [stdout] 190 | | 0xFF1D => todo!(), /// NR33 Sound channel 3 period low W All [INFO] [stdout] 191 | | 0xFF1E => todo!(), /// NR34 Sound channel 3 period high & control Mixed All [INFO] [stdout] 192 | | 0xFF20 => todo!(), /// NR41 Sound channel 4 length timer W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:208:32 [INFO] [stdout] | [INFO] [stdout] 208 | 0xFF48 => todo!(), /// OBP0 OBJ palette 0 data R/W DMG [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 209 | / 0xFF49 => todo!(), /// OBP1 OBJ palette 1 data R/W DMG [INFO] [stdout] 210 | | 0xFF4A => todo!(), /// WY Window Y position R/W All [INFO] [stdout] 211 | | 0xFF4B => todo!(), /// WX Window X position plus 7 R/W All [INFO] [stdout] 212 | | 0xFF4D => todo!(), /// KEY1 Prepare speed switch Mixed CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:189:32 [INFO] [stdout] | [INFO] [stdout] 189 | 0xFF1C => todo!(), /// NR32 Sound channel 3 output level R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 190 | / 0xFF1D => todo!(), /// NR33 Sound channel 3 period low W All [INFO] [stdout] 191 | | 0xFF1E => todo!(), /// NR34 Sound channel 3 period high & control Mixed All [INFO] [stdout] 192 | | 0xFF20 => todo!(), /// NR41 Sound channel 4 length timer W All [INFO] [stdout] 193 | | 0xFF21 => todo!(), /// NR42 Sound channel 4 volume & envelope R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:209:32 [INFO] [stdout] | [INFO] [stdout] 209 | 0xFF49 => todo!(), /// OBP1 OBJ palette 1 data R/W DMG [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 210 | / 0xFF4A => todo!(), /// WY Window Y position R/W All [INFO] [stdout] 211 | | 0xFF4B => todo!(), /// WX Window X position plus 7 R/W All [INFO] [stdout] 212 | | 0xFF4D => todo!(), /// KEY1 Prepare speed switch Mixed CGB [INFO] [stdout] 213 | | 0xFF4F => self.video.set(addr, v), /// VBK VRAM bank R/W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:190:32 [INFO] [stdout] | [INFO] [stdout] 190 | 0xFF1D => todo!(), /// NR33 Sound channel 3 period low W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 191 | / 0xFF1E => todo!(), /// NR34 Sound channel 3 period high & control Mixed All [INFO] [stdout] 192 | | 0xFF20 => todo!(), /// NR41 Sound channel 4 length timer W All [INFO] [stdout] 193 | | 0xFF21 => todo!(), /// NR42 Sound channel 4 volume & envelope R/W All [INFO] [stdout] 194 | | 0xFF22 => todo!(), /// NR43 Sound channel 4 frequency & randomness R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:191:32 [INFO] [stdout] | [INFO] [stdout] 191 | 0xFF1E => todo!(), /// NR34 Sound channel 3 period high & control Mixed All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 192 | / 0xFF20 => todo!(), /// NR41 Sound channel 4 length timer W All [INFO] [stdout] 193 | | 0xFF21 => todo!(), /// NR42 Sound channel 4 volume & envelope R/W All [INFO] [stdout] 194 | | 0xFF22 => todo!(), /// NR43 Sound channel 4 frequency & randomness R/W All [INFO] [stdout] 195 | | 0xFF23 => todo!(), /// NR44 Sound channel 4 control Mixed All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:210:32 [INFO] [stdout] | [INFO] [stdout] 210 | 0xFF4A => todo!(), /// WY Window Y position R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 211 | / 0xFF4B => todo!(), /// WX Window X position plus 7 R/W All [INFO] [stdout] 212 | | 0xFF4D => todo!(), /// KEY1 Prepare speed switch Mixed CGB [INFO] [stdout] 213 | | 0xFF4F => self.video.set(addr, v), /// VBK VRAM bank R/W CGB [INFO] [stdout] 214 | | 0xFF51 => todo!(), /// HDMA1 VRAM DMA source high W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:192:32 [INFO] [stdout] | [INFO] [stdout] 192 | 0xFF20 => todo!(), /// NR41 Sound channel 4 length timer W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 193 | / 0xFF21 => todo!(), /// NR42 Sound channel 4 volume & envelope R/W All [INFO] [stdout] 194 | | 0xFF22 => todo!(), /// NR43 Sound channel 4 frequency & randomness R/W All [INFO] [stdout] 195 | | 0xFF23 => todo!(), /// NR44 Sound channel 4 control Mixed All [INFO] [stdout] 196 | | 0xFF24 => todo!(), /// NR50 Master volume & VIN panning R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:211:32 [INFO] [stdout] | [INFO] [stdout] 211 | 0xFF4B => todo!(), /// WX Window X position plus 7 R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 212 | / 0xFF4D => todo!(), /// KEY1 Prepare speed switch Mixed CGB [INFO] [stdout] 213 | | 0xFF4F => self.video.set(addr, v), /// VBK VRAM bank R/W CGB [INFO] [stdout] 214 | | 0xFF51 => todo!(), /// HDMA1 VRAM DMA source high W CGB [INFO] [stdout] 215 | | 0xFF52 => todo!(), /// HDMA2 VRAM DMA source low W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:193:32 [INFO] [stdout] | [INFO] [stdout] 193 | 0xFF21 => todo!(), /// NR42 Sound channel 4 volume & envelope R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 194 | / 0xFF22 => todo!(), /// NR43 Sound channel 4 frequency & randomness R/W All [INFO] [stdout] 195 | | 0xFF23 => todo!(), /// NR44 Sound channel 4 control Mixed All [INFO] [stdout] 196 | | 0xFF24 => todo!(), /// NR50 Master volume & VIN panning R/W All [INFO] [stdout] 197 | | 0xFF25 => todo!(), /// NR51 Sound panning R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:212:32 [INFO] [stdout] | [INFO] [stdout] 212 | 0xFF4D => todo!(), /// KEY1 Prepare speed switch Mixed CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 213 | 0xFF4F => self.video.set(addr, v), /// VBK VRAM bank R/W CGB [INFO] [stdout] | --------------------------------- rustdoc does not generate documentation for match arms [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:194:32 [INFO] [stdout] | [INFO] [stdout] 194 | 0xFF22 => todo!(), /// NR43 Sound channel 4 frequency & randomness R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 195 | / 0xFF23 => todo!(), /// NR44 Sound channel 4 control Mixed All [INFO] [stdout] 196 | | 0xFF24 => todo!(), /// NR50 Master volume & VIN panning R/W All [INFO] [stdout] 197 | | 0xFF25 => todo!(), /// NR51 Sound panning R/W All [INFO] [stdout] 198 | | 0xFF26 => todo!(), /// NR52 Sound on/off Mixed All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:213:48 [INFO] [stdout] | [INFO] [stdout] 213 | 0xFF4F => self.video.set(addr, v), /// VBK VRAM bank R/W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 214 | / 0xFF51 => todo!(), /// HDMA1 VRAM DMA source high W CGB [INFO] [stdout] 215 | | 0xFF52 => todo!(), /// HDMA2 VRAM DMA source low W CGB [INFO] [stdout] 216 | | 0xFF53 => todo!(), /// HDMA3 VRAM DMA destination high W CGB [INFO] [stdout] 217 | | 0xFF54 => todo!(), /// HDMA4 VRAM DMA destination low W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:195:32 [INFO] [stdout] | [INFO] [stdout] 195 | 0xFF23 => todo!(), /// NR44 Sound channel 4 control Mixed All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 196 | / 0xFF24 => todo!(), /// NR50 Master volume & VIN panning R/W All [INFO] [stdout] 197 | | 0xFF25 => todo!(), /// NR51 Sound panning R/W All [INFO] [stdout] 198 | | 0xFF26 => todo!(), /// NR52 Sound on/off Mixed All [INFO] [stdout] 199 | | 0xFF30..=0xFF3F => todo!(), /// Wave RAM Storage for one of the sound channels’ waveform R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:214:32 [INFO] [stdout] | [INFO] [stdout] 214 | 0xFF51 => todo!(), /// HDMA1 VRAM DMA source high W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 215 | / 0xFF52 => todo!(), /// HDMA2 VRAM DMA source low W CGB [INFO] [stdout] 216 | | 0xFF53 => todo!(), /// HDMA3 VRAM DMA destination high W CGB [INFO] [stdout] 217 | | 0xFF54 => todo!(), /// HDMA4 VRAM DMA destination low W CGB [INFO] [stdout] 218 | | 0xFF55 => todo!(), /// HDMA5 VRAM DMA length/mode/start R/W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:196:32 [INFO] [stdout] | [INFO] [stdout] 196 | 0xFF24 => todo!(), /// NR50 Master volume & VIN panning R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 197 | / 0xFF25 => todo!(), /// NR51 Sound panning R/W All [INFO] [stdout] 198 | | 0xFF26 => todo!(), /// NR52 Sound on/off Mixed All [INFO] [stdout] 199 | | 0xFF30..=0xFF3F => todo!(), /// Wave RAM Storage for one of the sound channels’ waveform R/W All [INFO] [stdout] 200 | | 0xFF40 => todo!(), /// LCDC LCD control R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:215:32 [INFO] [stdout] | [INFO] [stdout] 215 | 0xFF52 => todo!(), /// HDMA2 VRAM DMA source low W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 216 | / 0xFF53 => todo!(), /// HDMA3 VRAM DMA destination high W CGB [INFO] [stdout] 217 | | 0xFF54 => todo!(), /// HDMA4 VRAM DMA destination low W CGB [INFO] [stdout] 218 | | 0xFF55 => todo!(), /// HDMA5 VRAM DMA length/mode/start R/W CGB [INFO] [stdout] 219 | | 0xFF56 => todo!(), /// RP Infrared communications port Mixed CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:197:32 [INFO] [stdout] | [INFO] [stdout] 197 | 0xFF25 => todo!(), /// NR51 Sound panning R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 198 | / 0xFF26 => todo!(), /// NR52 Sound on/off Mixed All [INFO] [stdout] 199 | | 0xFF30..=0xFF3F => todo!(), /// Wave RAM Storage for one of the sound channels’ waveform R/W All [INFO] [stdout] 200 | | 0xFF40 => todo!(), /// LCDC LCD control R/W All [INFO] [stdout] 201 | | 0xFF41 => todo!(), /// STAT LCD status Mixed All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:216:32 [INFO] [stdout] | [INFO] [stdout] 216 | 0xFF53 => todo!(), /// HDMA3 VRAM DMA destination high W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 217 | / 0xFF54 => todo!(), /// HDMA4 VRAM DMA destination low W CGB [INFO] [stdout] 218 | | 0xFF55 => todo!(), /// HDMA5 VRAM DMA length/mode/start R/W CGB [INFO] [stdout] 219 | | 0xFF56 => todo!(), /// RP Infrared communications port Mixed CGB [INFO] [stdout] 220 | | 0xFF68 => todo!(), /// BCPS/BGPI Background color palette specification / Background palette index R/W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:198:32 [INFO] [stdout] | [INFO] [stdout] 198 | 0xFF26 => todo!(), /// NR52 Sound on/off Mixed All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 199 | / 0xFF30..=0xFF3F => todo!(), /// Wave RAM Storage for one of the sound channels’ waveform R/W All [INFO] [stdout] 200 | | 0xFF40 => todo!(), /// LCDC LCD control R/W All [INFO] [stdout] 201 | | 0xFF41 => todo!(), /// STAT LCD status Mixed All [INFO] [stdout] 202 | | 0xFF42 => todo!(), /// SCY Viewport Y position R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:217:32 [INFO] [stdout] | [INFO] [stdout] 217 | 0xFF54 => todo!(), /// HDMA4 VRAM DMA destination low W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 218 | / 0xFF55 => todo!(), /// HDMA5 VRAM DMA length/mode/start R/W CGB [INFO] [stdout] 219 | | 0xFF56 => todo!(), /// RP Infrared communications port Mixed CGB [INFO] [stdout] 220 | | 0xFF68 => todo!(), /// BCPS/BGPI Background color palette specification / Background palette index R/W CGB [INFO] [stdout] 221 | | 0xFF69 => todo!(), /// BCPD/BGPD Background color palette data / Background palette data R/W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:199:41 [INFO] [stdout] | [INFO] [stdout] 199 | 0xFF30..=0xFF3F => todo!(), /// Wave RAM Storage for one of the sound channels’ waveform R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 200 | / 0xFF40 => todo!(), /// LCDC LCD control R/W All [INFO] [stdout] 201 | | 0xFF41 => todo!(), /// STAT LCD status Mixed All [INFO] [stdout] 202 | | 0xFF42 => todo!(), /// SCY Viewport Y position R/W All [INFO] [stdout] 203 | | 0xFF43 => todo!(), /// SCX Viewport X position R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:218:32 [INFO] [stdout] | [INFO] [stdout] 218 | 0xFF55 => todo!(), /// HDMA5 VRAM DMA length/mode/start R/W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 219 | / 0xFF56 => todo!(), /// RP Infrared communications port Mixed CGB [INFO] [stdout] 220 | | 0xFF68 => todo!(), /// BCPS/BGPI Background color palette specification / Background palette index R/W CGB [INFO] [stdout] 221 | | 0xFF69 => todo!(), /// BCPD/BGPD Background color palette data / Background palette data R/W CGB [INFO] [stdout] 222 | | 0xFF6A => todo!(), /// OCPS/OBPI OBJ color palette specification / OBJ palette index R/W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:200:32 [INFO] [stdout] | [INFO] [stdout] 200 | 0xFF40 => todo!(), /// LCDC LCD control R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 201 | / 0xFF41 => todo!(), /// STAT LCD status Mixed All [INFO] [stdout] 202 | | 0xFF42 => todo!(), /// SCY Viewport Y position R/W All [INFO] [stdout] 203 | | 0xFF43 => todo!(), /// SCX Viewport X position R/W All [INFO] [stdout] 204 | | 0xFF44 => todo!(), /// LY LCD Y coordinate R All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:219:32 [INFO] [stdout] | [INFO] [stdout] 219 | 0xFF56 => todo!(), /// RP Infrared communications port Mixed CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 220 | / 0xFF68 => todo!(), /// BCPS/BGPI Background color palette specification / Background palette index R/W CGB [INFO] [stdout] 221 | | 0xFF69 => todo!(), /// BCPD/BGPD Background color palette data / Background palette data R/W CGB [INFO] [stdout] 222 | | 0xFF6A => todo!(), /// OCPS/OBPI OBJ color palette specification / OBJ palette index R/W CGB [INFO] [stdout] 223 | | 0xFF6B => todo!(), /// OCPD/OBPD OBJ color palette data / OBJ palette data R/W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:201:32 [INFO] [stdout] | [INFO] [stdout] 201 | 0xFF41 => todo!(), /// STAT LCD status Mixed All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 202 | / 0xFF42 => todo!(), /// SCY Viewport Y position R/W All [INFO] [stdout] 203 | | 0xFF43 => todo!(), /// SCX Viewport X position R/W All [INFO] [stdout] 204 | | 0xFF44 => todo!(), /// LY LCD Y coordinate R All [INFO] [stdout] 205 | | 0xFF45 => todo!(), /// LYC LY compare R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:202:32 [INFO] [stdout] | [INFO] [stdout] 202 | 0xFF42 => todo!(), /// SCY Viewport Y position R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 203 | / 0xFF43 => todo!(), /// SCX Viewport X position R/W All [INFO] [stdout] 204 | | 0xFF44 => todo!(), /// LY LCD Y coordinate R All [INFO] [stdout] 205 | | 0xFF45 => todo!(), /// LYC LY compare R/W All [INFO] [stdout] 206 | | 0xFF46 => todo!(), /// DMA OAM DMA source address & start R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:220:32 [INFO] [stdout] | [INFO] [stdout] 220 | 0xFF68 => todo!(), /// BCPS/BGPI Background color palette specification / Background palette index R/W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 221 | / 0xFF69 => todo!(), /// BCPD/BGPD Background color palette data / Background palette data R/W CGB [INFO] [stdout] 222 | | 0xFF6A => todo!(), /// OCPS/OBPI OBJ color palette specification / OBJ palette index R/W CGB [INFO] [stdout] 223 | | 0xFF6B => todo!(), /// OCPD/OBPD OBJ color palette data / OBJ palette data R/W CGB [INFO] [stdout] 224 | | 0xFF6C => todo!(), /// OPRI Object priority mode R/W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:221:32 [INFO] [stdout] | [INFO] [stdout] 221 | 0xFF69 => todo!(), /// BCPD/BGPD Background color palette data / Background palette data R/W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 222 | / 0xFF6A => todo!(), /// OCPS/OBPI OBJ color palette specification / OBJ palette index R/W CGB [INFO] [stdout] 223 | | 0xFF6B => todo!(), /// OCPD/OBPD OBJ color palette data / OBJ palette data R/W CGB [INFO] [stdout] 224 | | 0xFF6C => todo!(), /// OPRI Object priority mode R/W CGB [INFO] [stdout] 225 | | 0xFF70 => self.work_ram.set(addr, v), /// SVBK WRAM bank R/W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:203:32 [INFO] [stdout] | [INFO] [stdout] 203 | 0xFF43 => todo!(), /// SCX Viewport X position R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 204 | / 0xFF44 => todo!(), /// LY LCD Y coordinate R All [INFO] [stdout] 205 | | 0xFF45 => todo!(), /// LYC LY compare R/W All [INFO] [stdout] 206 | | 0xFF46 => todo!(), /// DMA OAM DMA source address & start R/W All [INFO] [stdout] 207 | | 0xFF47 => todo!(), /// BGP BG palette data R/W DMG [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:222:32 [INFO] [stdout] | [INFO] [stdout] 222 | 0xFF6A => todo!(), /// OCPS/OBPI OBJ color palette specification / OBJ palette index R/W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 223 | / 0xFF6B => todo!(), /// OCPD/OBPD OBJ color palette data / OBJ palette data R/W CGB [INFO] [stdout] 224 | | 0xFF6C => todo!(), /// OPRI Object priority mode R/W CGB [INFO] [stdout] 225 | | 0xFF70 => self.work_ram.set(addr, v), /// SVBK WRAM bank R/W CGB [INFO] [stdout] 226 | | 0xFF76 => todo!(), /// PCM12 Audio digital outputs 1 & 2 R CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:204:32 [INFO] [stdout] | [INFO] [stdout] 204 | 0xFF44 => todo!(), /// LY LCD Y coordinate R All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 205 | / 0xFF45 => todo!(), /// LYC LY compare R/W All [INFO] [stdout] 206 | | 0xFF46 => todo!(), /// DMA OAM DMA source address & start R/W All [INFO] [stdout] 207 | | 0xFF47 => todo!(), /// BGP BG palette data R/W DMG [INFO] [stdout] 208 | | 0xFF48 => todo!(), /// OBP0 OBJ palette 0 data R/W DMG [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:223:32 [INFO] [stdout] | [INFO] [stdout] 223 | 0xFF6B => todo!(), /// OCPD/OBPD OBJ color palette data / OBJ palette data R/W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 224 | / 0xFF6C => todo!(), /// OPRI Object priority mode R/W CGB [INFO] [stdout] 225 | | 0xFF70 => self.work_ram.set(addr, v), /// SVBK WRAM bank R/W CGB [INFO] [stdout] 226 | | 0xFF76 => todo!(), /// PCM12 Audio digital outputs 1 & 2 R CGB [INFO] [stdout] 227 | | 0xFF77 => todo!(), /// PCM34 Audio digital outputs 3 & 4 R CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:205:32 [INFO] [stdout] | [INFO] [stdout] 205 | 0xFF45 => todo!(), /// LYC LY compare R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 206 | / 0xFF46 => todo!(), /// DMA OAM DMA source address & start R/W All [INFO] [stdout] 207 | | 0xFF47 => todo!(), /// BGP BG palette data R/W DMG [INFO] [stdout] 208 | | 0xFF48 => todo!(), /// OBP0 OBJ palette 0 data R/W DMG [INFO] [stdout] 209 | | 0xFF49 => todo!(), /// OBP1 OBJ palette 1 data R/W DMG [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:224:32 [INFO] [stdout] | [INFO] [stdout] 224 | 0xFF6C => todo!(), /// OPRI Object priority mode R/W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 225 | 0xFF70 => self.work_ram.set(addr, v), /// SVBK WRAM bank R/W CGB [INFO] [stdout] | ------------------------------------ rustdoc does not generate documentation for match arms [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:206:32 [INFO] [stdout] | [INFO] [stdout] 206 | 0xFF46 => todo!(), /// DMA OAM DMA source address & start R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 207 | / 0xFF47 => todo!(), /// BGP BG palette data R/W DMG [INFO] [stdout] 208 | | 0xFF48 => todo!(), /// OBP0 OBJ palette 0 data R/W DMG [INFO] [stdout] 209 | | 0xFF49 => todo!(), /// OBP1 OBJ palette 1 data R/W DMG [INFO] [stdout] 210 | | 0xFF4A => todo!(), /// WY Window Y position R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:225:51 [INFO] [stdout] | [INFO] [stdout] 225 | 0xFF70 => self.work_ram.set(addr, v), /// SVBK WRAM bank R/W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 226 | / 0xFF76 => todo!(), /// PCM12 Audio digital outputs 1 & 2 R CGB [INFO] [stdout] 227 | | 0xFF77 => todo!(), /// PCM34 Audio digital outputs 3 & 4 R CGB [INFO] [stdout] 228 | | 0xFF80..=0xFFFE => self.work_ram.set(addr, v), [INFO] [stdout] 229 | | 0xFFFF => self.interrupt.borrow_mut().set(addr, v), [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:207:32 [INFO] [stdout] | [INFO] [stdout] 207 | 0xFF47 => todo!(), /// BGP BG palette data R/W DMG [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 208 | / 0xFF48 => todo!(), /// OBP0 OBJ palette 0 data R/W DMG [INFO] [stdout] 209 | | 0xFF49 => todo!(), /// OBP1 OBJ palette 1 data R/W DMG [INFO] [stdout] 210 | | 0xFF4A => todo!(), /// WY Window Y position R/W All [INFO] [stdout] 211 | | 0xFF4B => todo!(), /// WX Window X position plus 7 R/W All [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:208:32 [INFO] [stdout] | [INFO] [stdout] 208 | 0xFF48 => todo!(), /// OBP0 OBJ palette 0 data R/W DMG [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 209 | / 0xFF49 => todo!(), /// OBP1 OBJ palette 1 data R/W DMG [INFO] [stdout] 210 | | 0xFF4A => todo!(), /// WY Window Y position R/W All [INFO] [stdout] 211 | | 0xFF4B => todo!(), /// WX Window X position plus 7 R/W All [INFO] [stdout] 212 | | 0xFF4D => todo!(), /// KEY1 Prepare speed switch Mixed CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:226:32 [INFO] [stdout] | [INFO] [stdout] 226 | 0xFF76 => todo!(), /// PCM12 Audio digital outputs 1 & 2 R CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 227 | / 0xFF77 => todo!(), /// PCM34 Audio digital outputs 3 & 4 R CGB [INFO] [stdout] 228 | | 0xFF80..=0xFFFE => self.work_ram.set(addr, v), [INFO] [stdout] 229 | | 0xFFFF => self.interrupt.borrow_mut().set(addr, v), [INFO] [stdout] 230 | | addr => panic!("MMU access denied, addr: 0x{:04X}", addr), [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:209:32 [INFO] [stdout] | [INFO] [stdout] 209 | 0xFF49 => todo!(), /// OBP1 OBJ palette 1 data R/W DMG [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 210 | / 0xFF4A => todo!(), /// WY Window Y position R/W All [INFO] [stdout] 211 | | 0xFF4B => todo!(), /// WX Window X position plus 7 R/W All [INFO] [stdout] 212 | | 0xFF4D => todo!(), /// KEY1 Prepare speed switch Mixed CGB [INFO] [stdout] 213 | | 0xFF4F => self.video.set(addr, v), /// VBK VRAM bank R/W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:227:32 [INFO] [stdout] | [INFO] [stdout] 227 | 0xFF77 => todo!(), /// PCM34 Audio digital outputs 3 & 4 R CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 228 | 0xFF80..=0xFFFE => self.work_ram.set(addr, v), [INFO] [stdout] | --------------------------------------------- rustdoc does not generate documentation for match arms [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::mmu::Memory` [INFO] [stdout] --> src/io_device/mod.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::mmu::Memory; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:210:32 [INFO] [stdout] | [INFO] [stdout] 210 | 0xFF4A => todo!(), /// WY Window Y position R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 211 | / 0xFF4B => todo!(), /// WX Window X position plus 7 R/W All [INFO] [stdout] 212 | | 0xFF4D => todo!(), /// KEY1 Prepare speed switch Mixed CGB [INFO] [stdout] 213 | | 0xFF4F => self.video.set(addr, v), /// VBK VRAM bank R/W CGB [INFO] [stdout] 214 | | 0xFF51 => todo!(), /// HDMA1 VRAM DMA source high W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:211:32 [INFO] [stdout] | [INFO] [stdout] 211 | 0xFF4B => todo!(), /// WX Window X position plus 7 R/W All [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 212 | / 0xFF4D => todo!(), /// KEY1 Prepare speed switch Mixed CGB [INFO] [stdout] 213 | | 0xFF4F => self.video.set(addr, v), /// VBK VRAM bank R/W CGB [INFO] [stdout] 214 | | 0xFF51 => todo!(), /// HDMA1 VRAM DMA source high W CGB [INFO] [stdout] 215 | | 0xFF52 => todo!(), /// HDMA2 VRAM DMA source low W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/io_device/joypad.rs:59:28 [INFO] [stdout] | [INFO] [stdout] 59 | self.matrix |= (*key as u8); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 59 - self.matrix |= (*key as u8); [INFO] [stdout] 59 + self.matrix |= *key as u8; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:212:32 [INFO] [stdout] | [INFO] [stdout] 212 | 0xFF4D => todo!(), /// KEY1 Prepare speed switch Mixed CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 213 | 0xFF4F => self.video.set(addr, v), /// VBK VRAM bank R/W CGB [INFO] [stdout] | --------------------------------- rustdoc does not generate documentation for match arms [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::cpu::CPU` [INFO] [stdout] --> src/io_device/interrupt.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::cpu::CPU; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:213:48 [INFO] [stdout] | [INFO] [stdout] 213 | 0xFF4F => self.video.set(addr, v), /// VBK VRAM bank R/W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 214 | / 0xFF51 => todo!(), /// HDMA1 VRAM DMA source high W CGB [INFO] [stdout] 215 | | 0xFF52 => todo!(), /// HDMA2 VRAM DMA source low W CGB [INFO] [stdout] 216 | | 0xFF53 => todo!(), /// HDMA3 VRAM DMA destination high W CGB [INFO] [stdout] 217 | | 0xFF54 => todo!(), /// HDMA4 VRAM DMA destination low W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/io_device/interrupt.rs:81:23 [INFO] [stdout] | [INFO] [stdout] 81 | self.int_f |= (0x01 << (flag as u8)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 81 - self.int_f |= (0x01 << (flag as u8)); [INFO] [stdout] 81 + self.int_f |= 0x01 << (flag as u8); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:214:32 [INFO] [stdout] | [INFO] [stdout] 214 | 0xFF51 => todo!(), /// HDMA1 VRAM DMA source high W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 215 | / 0xFF52 => todo!(), /// HDMA2 VRAM DMA source low W CGB [INFO] [stdout] 216 | | 0xFF53 => todo!(), /// HDMA3 VRAM DMA destination high W CGB [INFO] [stdout] 217 | | 0xFF54 => todo!(), /// HDMA4 VRAM DMA destination low W CGB [INFO] [stdout] 218 | | 0xFF55 => todo!(), /// HDMA5 VRAM DMA length/mode/start R/W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:215:32 [INFO] [stdout] | [INFO] [stdout] 215 | 0xFF52 => todo!(), /// HDMA2 VRAM DMA source low W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 216 | / 0xFF53 => todo!(), /// HDMA3 VRAM DMA destination high W CGB [INFO] [stdout] 217 | | 0xFF54 => todo!(), /// HDMA4 VRAM DMA destination low W CGB [INFO] [stdout] 218 | | 0xFF55 => todo!(), /// HDMA5 VRAM DMA length/mode/start R/W CGB [INFO] [stdout] 219 | | 0xFF56 => todo!(), /// RP Infrared communications port Mixed CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:216:32 [INFO] [stdout] | [INFO] [stdout] 216 | 0xFF53 => todo!(), /// HDMA3 VRAM DMA destination high W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 217 | / 0xFF54 => todo!(), /// HDMA4 VRAM DMA destination low W CGB [INFO] [stdout] 218 | | 0xFF55 => todo!(), /// HDMA5 VRAM DMA length/mode/start R/W CGB [INFO] [stdout] 219 | | 0xFF56 => todo!(), /// RP Infrared communications port Mixed CGB [INFO] [stdout] 220 | | 0xFF68 => todo!(), /// BCPS/BGPI Background color palette specification / Background palette index R/W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:217:32 [INFO] [stdout] | [INFO] [stdout] 217 | 0xFF54 => todo!(), /// HDMA4 VRAM DMA destination low W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 218 | / 0xFF55 => todo!(), /// HDMA5 VRAM DMA length/mode/start R/W CGB [INFO] [stdout] 219 | | 0xFF56 => todo!(), /// RP Infrared communications port Mixed CGB [INFO] [stdout] 220 | | 0xFF68 => todo!(), /// BCPS/BGPI Background color palette specification / Background palette index R/W CGB [INFO] [stdout] 221 | | 0xFF69 => todo!(), /// BCPD/BGPD Background color palette data / Background palette data R/W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:218:32 [INFO] [stdout] | [INFO] [stdout] 218 | 0xFF55 => todo!(), /// HDMA5 VRAM DMA length/mode/start R/W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 219 | / 0xFF56 => todo!(), /// RP Infrared communications port Mixed CGB [INFO] [stdout] 220 | | 0xFF68 => todo!(), /// BCPS/BGPI Background color palette specification / Background palette index R/W CGB [INFO] [stdout] 221 | | 0xFF69 => todo!(), /// BCPD/BGPD Background color palette data / Background palette data R/W CGB [INFO] [stdout] 222 | | 0xFF6A => todo!(), /// OCPS/OBPI OBJ color palette specification / OBJ palette index R/W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:219:32 [INFO] [stdout] | [INFO] [stdout] 219 | 0xFF56 => todo!(), /// RP Infrared communications port Mixed CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 220 | / 0xFF68 => todo!(), /// BCPS/BGPI Background color palette specification / Background palette index R/W CGB [INFO] [stdout] 221 | | 0xFF69 => todo!(), /// BCPD/BGPD Background color palette data / Background palette data R/W CGB [INFO] [stdout] 222 | | 0xFF6A => todo!(), /// OCPS/OBPI OBJ color palette specification / OBJ palette index R/W CGB [INFO] [stdout] 223 | | 0xFF6B => todo!(), /// OCPD/OBPD OBJ color palette data / OBJ palette data R/W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:220:32 [INFO] [stdout] | [INFO] [stdout] 220 | 0xFF68 => todo!(), /// BCPS/BGPI Background color palette specification / Background palette index R/W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 221 | / 0xFF69 => todo!(), /// BCPD/BGPD Background color palette data / Background palette data R/W CGB [INFO] [stdout] 222 | | 0xFF6A => todo!(), /// OCPS/OBPI OBJ color palette specification / OBJ palette index R/W CGB [INFO] [stdout] 223 | | 0xFF6B => todo!(), /// OCPD/OBPD OBJ color palette data / OBJ palette data R/W CGB [INFO] [stdout] 224 | | 0xFF6C => todo!(), /// OPRI Object priority mode R/W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:221:32 [INFO] [stdout] | [INFO] [stdout] 221 | 0xFF69 => todo!(), /// BCPD/BGPD Background color palette data / Background palette data R/W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 222 | / 0xFF6A => todo!(), /// OCPS/OBPI OBJ color palette specification / OBJ palette index R/W CGB [INFO] [stdout] 223 | | 0xFF6B => todo!(), /// OCPD/OBPD OBJ color palette data / OBJ palette data R/W CGB [INFO] [stdout] 224 | | 0xFF6C => todo!(), /// OPRI Object priority mode R/W CGB [INFO] [stdout] 225 | | 0xFF70 => self.work_ram.set(addr, v), /// SVBK WRAM bank R/W CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:222:32 [INFO] [stdout] | [INFO] [stdout] 222 | 0xFF6A => todo!(), /// OCPS/OBPI OBJ color palette specification / OBJ palette index R/W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 223 | / 0xFF6B => todo!(), /// OCPD/OBPD OBJ color palette data / OBJ palette data R/W CGB [INFO] [stdout] 224 | | 0xFF6C => todo!(), /// OPRI Object priority mode R/W CGB [INFO] [stdout] 225 | | 0xFF70 => self.work_ram.set(addr, v), /// SVBK WRAM bank R/W CGB [INFO] [stdout] 226 | | 0xFF76 => todo!(), /// PCM12 Audio digital outputs 1 & 2 R CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:223:32 [INFO] [stdout] | [INFO] [stdout] 223 | 0xFF6B => todo!(), /// OCPD/OBPD OBJ color palette data / OBJ palette data R/W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 224 | / 0xFF6C => todo!(), /// OPRI Object priority mode R/W CGB [INFO] [stdout] 225 | | 0xFF70 => self.work_ram.set(addr, v), /// SVBK WRAM bank R/W CGB [INFO] [stdout] 226 | | 0xFF76 => todo!(), /// PCM12 Audio digital outputs 1 & 2 R CGB [INFO] [stdout] 227 | | 0xFF77 => todo!(), /// PCM34 Audio digital outputs 3 & 4 R CGB [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:224:32 [INFO] [stdout] | [INFO] [stdout] 224 | 0xFF6C => todo!(), /// OPRI Object priority mode R/W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 225 | 0xFF70 => self.work_ram.set(addr, v), /// SVBK WRAM bank R/W CGB [INFO] [stdout] | ------------------------------------ rustdoc does not generate documentation for match arms [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:225:51 [INFO] [stdout] | [INFO] [stdout] 225 | 0xFF70 => self.work_ram.set(addr, v), /// SVBK WRAM bank R/W CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 226 | / 0xFF76 => todo!(), /// PCM12 Audio digital outputs 1 & 2 R CGB [INFO] [stdout] 227 | | 0xFF77 => todo!(), /// PCM34 Audio digital outputs 3 & 4 R CGB [INFO] [stdout] 228 | | 0xFF80..=0xFFFE => self.work_ram.set(addr, v), [INFO] [stdout] 229 | | 0xFFFF => self.interrupt.borrow_mut().set(addr, v), [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:226:32 [INFO] [stdout] | [INFO] [stdout] 226 | 0xFF76 => todo!(), /// PCM12 Audio digital outputs 1 & 2 R CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 227 | / 0xFF77 => todo!(), /// PCM34 Audio digital outputs 3 & 4 R CGB [INFO] [stdout] 228 | | 0xFF80..=0xFFFE => self.work_ram.set(addr, v), [INFO] [stdout] 229 | | 0xFFFF => self.interrupt.borrow_mut().set(addr, v), [INFO] [stdout] 230 | | addr => panic!("MMU access denied, addr: 0x{:04X}", addr), [INFO] [stdout] ... | [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/mmu.rs:227:32 [INFO] [stdout] | [INFO] [stdout] 227 | 0xFF77 => todo!(), /// PCM34 Audio digital outputs 3 & 4 R CGB [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 228 | 0xFF80..=0xFFFE => self.work_ram.set(addr, v), [INFO] [stdout] | --------------------------------------------- rustdoc does not generate documentation for match arms [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::mmu::Memory` [INFO] [stdout] --> src/io_device/mod.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::mmu::Memory; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/io_device/joypad.rs:59:28 [INFO] [stdout] | [INFO] [stdout] 59 | self.matrix |= (*key as u8); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 59 - self.matrix |= (*key as u8); [INFO] [stdout] 59 + self.matrix |= *key as u8; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::cpu::CPU` [INFO] [stdout] --> src/io_device/interrupt.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::cpu::CPU; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/io_device/interrupt.rs:81:23 [INFO] [stdout] | [INFO] [stdout] 81 | self.int_f |= (0x01 << (flag as u8)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 81 - self.int_f |= (0x01 << (flag as u8)); [INFO] [stdout] 81 + self.int_f |= 0x01 << (flag as u8); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable call [INFO] [stdout] --> src/tests/cpu_instrs.rs:11:25 [INFO] [stdout] | [INFO] [stdout] 10 | #[test] [INFO] [stdout] | ------- in this procedural macro expansion [INFO] [stdout] 11 | fn test_cpu_instrs() -> ! { [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | unreachable call [INFO] [stdout] | any code following this expression is unreachable [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] = note: this warning originates in the attribute macro `test` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::mmu::Memory` [INFO] [stdout] --> src/cpu/lr35902/mod.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::mmu::Memory; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::mmu::Memory` [INFO] [stdout] --> src/cpu/lr35902/mod.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::mmu::Memory; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/cpu/lr35902/opcode/cbprefixed_opcode.rs:233:13 [INFO] [stdout] | [INFO] [stdout] 233 | other => panic!("Unsupported opcode: 0x{:04X}", other), [INFO] [stdout] | ^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/cpu/lr35902/opcode/cbprefixed_opcode.rs:233:13 [INFO] [stdout] | [INFO] [stdout] 27 | 0x00..=0x07 => { [INFO] [stdout] | ----------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 43 | 0x08..=0x0F => { [INFO] [stdout] | ----------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 59 | 0x10..=0x17 => { [INFO] [stdout] | ----------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 75 | 0x18..=0x1F => { [INFO] [stdout] | ----------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 233 | other => panic!("Unsupported opcode: 0x{:04X}", other), [INFO] [stdout] | ^^^^^ ...and 7 other patterns collectively make this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/cpu/lr35902/opcode/cbprefixed_opcode.rs:233:13 [INFO] [stdout] | [INFO] [stdout] 233 | other => panic!("Unsupported opcode: 0x{:04X}", other), [INFO] [stdout] | ^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/cpu/lr35902/opcode/cbprefixed_opcode.rs:233:13 [INFO] [stdout] | [INFO] [stdout] 27 | 0x00..=0x07 => { [INFO] [stdout] | ----------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 43 | 0x08..=0x0F => { [INFO] [stdout] | ----------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 59 | 0x10..=0x17 => { [INFO] [stdout] | ----------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 75 | 0x18..=0x1F => { [INFO] [stdout] | ----------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 233 | other => panic!("Unsupported opcode: 0x{:04X}", other), [INFO] [stdout] | ^^^^^ ...and 7 other patterns collectively make this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tests/cpu_instrs.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 15 | let mut mb = MotherBoard::new(rom_path, ram_path, rtc_path).unwrap(); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `RefCPU` is never used [INFO] [stdout] --> src/cpu/mod.rs:9:10 [INFO] [stdout] | [INFO] [stdout] 9 | pub type RefCPU = Rc>>; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `memory`, `run`, and `info` are never used [INFO] [stdout] --> src/cpu/mod.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 11 | pub trait CPU { [INFO] [stdout] | --- methods in this trait [INFO] [stdout] 12 | fn memory(&self) -> RefMemory; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 13 | [INFO] [stdout] 14 | fn run(&mut self); [INFO] [stdout] | ^^^ [INFO] [stdout] 15 | [INFO] [stdout] 16 | fn info(&self) -> &CPUInfo; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `start_at` and `freq` are never read [INFO] [stdout] --> src/cpu/mod.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 19 | pub struct CPUInfo { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 20 | start_at: SystemTime, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 21 | freq: u64, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/cpu/mod.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 24 | impl CPUInfo { [INFO] [stdout] | ------------ associated function in this implementation [INFO] [stdout] 25 | pub fn new(freq: u64) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_hi` is never used [INFO] [stdout] --> src/cpu/mod.rs:35:8 [INFO] [stdout] | [INFO] [stdout] 35 | pub fn get_hi(src: &u16) -> u8 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `set_hi` is never used [INFO] [stdout] --> src/cpu/mod.rs:40:8 [INFO] [stdout] | [INFO] [stdout] 40 | pub fn set_hi(src: &mut u16, val: u8) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_lo` is never used [INFO] [stdout] --> src/cpu/mod.rs:45:8 [INFO] [stdout] | [INFO] [stdout] 45 | pub fn get_lo(src: &u16) -> u8 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `set_lo` is never used [INFO] [stdout] --> src/cpu/mod.rs:50:8 [INFO] [stdout] | [INFO] [stdout] 50 | pub fn set_lo(src: &mut u16, val: u8) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_bit` is never used [INFO] [stdout] --> src/cpu/mod.rs:54:8 [INFO] [stdout] | [INFO] [stdout] 54 | pub fn get_bit(src: &u16, i: u8) -> u8 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `set_bit` is never used [INFO] [stdout] --> src/cpu/mod.rs:59:8 [INFO] [stdout] | [INFO] [stdout] 59 | pub fn set_bit(src: &mut u16, i: u8, val: u8) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/cpu/lr35902/mod.rs:34:12 [INFO] [stdout] | [INFO] [stdout] 33 | impl LR35902 { [INFO] [stdout] | ------------ associated function in this implementation [INFO] [stdout] 34 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `F` is never constructed [INFO] [stdout] --> src/cpu/lr35902/registers.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 32 | pub enum Register { [INFO] [stdout] | -------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 35 | F, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `Register` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/cpu/lr35902/registers.rs:50:12 [INFO] [stdout] | [INFO] [stdout] 49 | impl Registers { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 50 | pub fn new(gb_term: GBTerm) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ClockStep` is never constructed [INFO] [stdout] --> src/cpu/lr35902/clock.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct ClockStep {} [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `now` are never used [INFO] [stdout] --> src/cpu/lr35902/clock.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 20 | impl Clock { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 21 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn now(&self) -> SystemTime { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/gpu.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl GPU { [INFO] [stdout] | -------- associated function in this implementation [INFO] [stdout] 14 | pub fn new() -> GPU { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MotherBoard` is never constructed [INFO] [stdout] --> src/mother_board.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct MotherBoard { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `cpu`, and `start` are never used [INFO] [stdout] --> src/mother_board.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 16 | impl MotherBoard { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] 17 | pub fn new(rom_path: String, ram_path: String, rtc_path: String) -> crate::Result { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn cpu(&self) -> Ref> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn start(&self) -> ! { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `new_ram` is never used [INFO] [stdout] --> src/mmu.rs:57:8 [INFO] [stdout] | [INFO] [stdout] 57 | pub fn new_ram() -> RAM where { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/mmu.rs:71:12 [INFO] [stdout] | [INFO] [stdout] 70 | impl MMU { [INFO] [stdout] | -------- associated function in this implementation [INFO] [stdout] 71 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/mmu.rs:241:12 [INFO] [stdout] | [INFO] [stdout] 240 | impl BlockRam { [INFO] [stdout] | -------------------------------------- associated function in this implementation [INFO] [stdout] 241 | pub fn new() -> BlockRam { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/mmu.rs:264:12 [INFO] [stdout] | [INFO] [stdout] 263 | impl Prohibited { [INFO] [stdout] | --------------- associated function in this implementation [INFO] [stdout] 264 | pub fn new() -> Prohibited { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/io_device/joypad.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 12 | pub enum JoypadKey { [INFO] [stdout] | --------- variants in this enum [INFO] [stdout] 13 | Right = 0b0001_0001, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 14 | Left = 0b0001_0010, [INFO] [stdout] | ^^^^ [INFO] [stdout] 15 | Up = 0b0001_0100, [INFO] [stdout] | ^^ [INFO] [stdout] 16 | Down = 0b0001_1000, [INFO] [stdout] | ^^^^ [INFO] [stdout] 17 | A = 0b0010_0001, [INFO] [stdout] | ^ [INFO] [stdout] 18 | B = 0b0010_0010, [INFO] [stdout] | ^ [INFO] [stdout] 19 | Select = 0b0010_0100, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 20 | Start = 0b0010_1000, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `JoypadKey` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/io_device/joypad.rs:33:12 [INFO] [stdout] | [INFO] [stdout] 32 | impl Joypad { [INFO] [stdout] | ----------- associated function in this implementation [INFO] [stdout] 33 | pub fn new(interrupt: RefInterrupt) -> RefJoypad { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `set_handler_fn` are never used [INFO] [stdout] --> src/io_device/interrupt.rs:61:12 [INFO] [stdout] | [INFO] [stdout] 60 | impl Interrupt { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 61 | pub fn new() -> RefInterrupt { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 69 | pub fn set_handler_fn(&mut self, flag: Flag, handler: IntHandlerFunc) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BANK_SIZE` is never used [INFO] [stdout] --> src/io_device/video.rs:6:7 [INFO] [stdout] | [INFO] [stdout] 6 | const BANK_SIZE: usize = 0x02; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/io_device/video.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl Video { [INFO] [stdout] | ---------- associated function in this implementation [INFO] [stdout] 23 | pub fn new() -> Video { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/io_device/wram.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 17 | impl WorkRam { [INFO] [stdout] | ------------ associated function in this implementation [INFO] [stdout] 18 | pub fn new() -> WorkRam { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_BASE` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:17:7 [INFO] [stdout] | [INFO] [stdout] 17 | const HEADER_BASE: u16 = 0x0100; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_END` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:19:7 [INFO] [stdout] | [INFO] [stdout] 19 | const HEADER_END: u16 = 0x014F; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_LEN` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:22:7 [INFO] [stdout] | [INFO] [stdout] 22 | const HEADER_LEN: u16 = HEADER_END - HEADER_BASE + 1; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_ENTRY_BASE` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:25:7 [INFO] [stdout] | [INFO] [stdout] 25 | const HEADER_ENTRY_BASE: u16 = 0x0100; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_ENTRY_END` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:27:7 [INFO] [stdout] | [INFO] [stdout] 27 | const HEADER_ENTRY_END: u16 = 0x0103; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_NINTENDO_LOGO_BASE` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:30:7 [INFO] [stdout] | [INFO] [stdout] 30 | const HEADER_NINTENDO_LOGO_BASE: u16 = 0x0104; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_NINTENDO_LOGO_END` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:32:7 [INFO] [stdout] | [INFO] [stdout] 32 | const HEADER_NINTENDO_LOGO_END: u16 = 0x0133; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_NINTENDO_LOGO_LEN` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:35:7 [INFO] [stdout] | [INFO] [stdout] 35 | const HEADER_NINTENDO_LOGO_LEN: u16 = HEADER_NINTENDO_LOGO_END - HEADER_NINTENDO_LOGO_BASE + 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `NINTENDO_LOGO` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:39:7 [INFO] [stdout] | [INFO] [stdout] 39 | const NINTENDO_LOGO: [u8; HEADER_NINTENDO_LOGO_LEN as usize] = [ [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_TITLE_BASE` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:46:7 [INFO] [stdout] | [INFO] [stdout] 46 | const HEADER_TITLE_BASE: u16 = 0x0134; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_TITLE_END_GB` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:49:7 [INFO] [stdout] | [INFO] [stdout] 49 | const HEADER_TITLE_END_GB: u16 = 0x0142; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_TITLE_GB_LEN` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:50:7 [INFO] [stdout] | [INFO] [stdout] 50 | const HEADER_TITLE_GB_LEN: u16 = HEADER_TITLE_END_GB - HEADER_TITLE_BASE + 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_CGB_FLAG` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:52:7 [INFO] [stdout] | [INFO] [stdout] 52 | const HEADER_CGB_FLAG: u16 = 0x0143; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CGB_FLAG_COMPATIBLE` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:53:7 [INFO] [stdout] | [INFO] [stdout] 53 | const CGB_FLAG_COMPATIBLE: u8 = 0x80; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CGB_FLAG_ONLY` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:54:7 [INFO] [stdout] | [INFO] [stdout] 54 | const CGB_FLAG_ONLY: u8 = 0xC0; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `None`, `Compatible`, and `CGBOnly` are never constructed [INFO] [stdout] --> src/io_device/cartridge/mod.rs:58:5 [INFO] [stdout] | [INFO] [stdout] 57 | pub enum CGBFlag { [INFO] [stdout] | ------- variants in this enum [INFO] [stdout] 58 | None, [INFO] [stdout] | ^^^^ [INFO] [stdout] 59 | Compatible, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 60 | CGBOnly, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_MANUFACTURER_CODE_BASE` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:65:7 [INFO] [stdout] | [INFO] [stdout] 65 | const HEADER_MANUFACTURER_CODE_BASE: u16 = 0x013F; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_MANUFACTURER_CODE_END` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:68:7 [INFO] [stdout] | [INFO] [stdout] 68 | const HEADER_MANUFACTURER_CODE_END: u16 = 0x0142; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_MANUFACTURER_CODE_LEN` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:69:7 [INFO] [stdout] | [INFO] [stdout] 69 | const HEADER_MANUFACTURER_CODE_LEN: u16 = HEADER_MANUFACTURER_CODE_END - HEADER_MANUFACTURER_CODE_BASE + 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_TITLE_END_CGB` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:72:7 [INFO] [stdout] | [INFO] [stdout] 72 | const HEADER_TITLE_END_CGB: u16 = 0x013E; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_TITLE_CGB_LEN` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:73:7 [INFO] [stdout] | [INFO] [stdout] 73 | const HEADER_TITLE_CGB_LEN: u16 = HEADER_TITLE_END_CGB - HEADER_TITLE_BASE + 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_NEW_LICENSEE_CODE_BASE` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:76:7 [INFO] [stdout] | [INFO] [stdout] 76 | const HEADER_NEW_LICENSEE_CODE_BASE: u16 = 0x0144; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_NEW_LICENSEE_CODE_END` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:78:7 [INFO] [stdout] | [INFO] [stdout] 78 | const HEADER_NEW_LICENSEE_CODE_END: u16 = 0x0145; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_NEW_LICENSEE_CODE_LEN` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:79:7 [INFO] [stdout] | [INFO] [stdout] 79 | const HEADER_NEW_LICENSEE_CODE_LEN: u16 = HEADER_NEW_LICENSEE_CODE_END - HEADER_NEW_LICENSEE_CODE_BASE + 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_SGB_FLAG` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:82:7 [INFO] [stdout] | [INFO] [stdout] 82 | const HEADER_SGB_FLAG: u16 = 0x0146; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `None` and `Ok` are never constructed [INFO] [stdout] --> src/io_device/cartridge/mod.rs:86:5 [INFO] [stdout] | [INFO] [stdout] 85 | pub enum SGBFlag { [INFO] [stdout] | ------- variants in this enum [INFO] [stdout] 86 | None, [INFO] [stdout] | ^^^^ [INFO] [stdout] 87 | Ok, [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_CART_TYPE` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:91:7 [INFO] [stdout] | [INFO] [stdout] 91 | const HEADER_CART_TYPE: u16 = 0x0147; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_ROM_SIZE` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:94:7 [INFO] [stdout] | [INFO] [stdout] 94 | const HEADER_ROM_SIZE: u16 = 0x0148; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_RAM_SIZE` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:97:7 [INFO] [stdout] | [INFO] [stdout] 97 | const HEADER_RAM_SIZE: u16 = 0x0149; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_DESTINATION_CODE` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:100:7 [INFO] [stdout] | [INFO] [stdout] 100 | const HEADER_DESTINATION_CODE: u16 = 0x014A; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_OLD_LICENSEE_CODE` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:103:7 [INFO] [stdout] | [INFO] [stdout] 103 | const HEADER_OLD_LICENSEE_CODE: u16 = 0x014B; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_MASK_ROM_VERSION_NUM` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:106:7 [INFO] [stdout] | [INFO] [stdout] 106 | const HEADER_MASK_ROM_VERSION_NUM: u16 = 0x14C; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_CHECK_BASE` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:109:7 [INFO] [stdout] | [INFO] [stdout] 109 | const HEADER_CHECK_BASE: u16 = 0x0134; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_CHECK_END` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:111:7 [INFO] [stdout] | [INFO] [stdout] 111 | const HEADER_CHECK_END: u16 = 0x14C; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_CHECK_LEN` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:112:7 [INFO] [stdout] | [INFO] [stdout] 112 | const HEADER_CHECK_LEN: u16 = HEADER_CHECK_END - HEADER_CHECK_BASE + 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_CHECKSUM` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:115:7 [INFO] [stdout] | [INFO] [stdout] 115 | const HEADER_CHECKSUM: u16 = 0x014D; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_GLOBAL_CHECKSUM_BASE` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:118:7 [INFO] [stdout] | [INFO] [stdout] 118 | const HEADER_GLOBAL_CHECKSUM_BASE: u16 = 0x014E; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_GLOBAL_CHECKSUM_END` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:120:7 [INFO] [stdout] | [INFO] [stdout] 120 | const HEADER_GLOBAL_CHECKSUM_END: u16 = 0x014F; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_GLOBAL_CHECKSUM_LEN` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:121:7 [INFO] [stdout] | [INFO] [stdout] 121 | const HEADER_GLOBAL_CHECKSUM_LEN: u16 = HEADER_GLOBAL_CHECKSUM_END - HEADER_GLOBAL_CHECKSUM_BASE + 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:129:12 [INFO] [stdout] | [INFO] [stdout] 128 | impl Rom { [INFO] [stdout] | -------- associated function in this implementation [INFO] [stdout] 129 | pub fn new(path: String) -> Result { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `from`, and `mem` are never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:153:12 [INFO] [stdout] | [INFO] [stdout] 152 | impl Ram { [INFO] [stdout] | -------- associated items in this implementation [INFO] [stdout] 153 | pub fn new(path: String, size: usize, content_supplier: F) -> Result [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 170 | pub fn from(mem: Vec, path: String) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 180 | pub fn mem(&self) -> &Vec { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CART_TYPE_ROM_ONLY` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:195:7 [INFO] [stdout] | [INFO] [stdout] 195 | const CART_TYPE_ROM_ONLY: u8 = 0x00; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RomOnly` is never constructed [INFO] [stdout] --> src/io_device/cartridge/mod.rs:197:8 [INFO] [stdout] | [INFO] [stdout] 197 | struct RomOnly { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `power_up` and `new` are never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:202:12 [INFO] [stdout] | [INFO] [stdout] 201 | impl RomOnly { [INFO] [stdout] | ------------ associated functions in this implementation [INFO] [stdout] 202 | pub fn power_up(rom: Rom) -> Result> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 206 | fn new(rom: Rom) -> Result { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:232:8 [INFO] [stdout] | [INFO] [stdout] 231 | pub trait Cartridge: Memory { [INFO] [stdout] | --------- methods in this trait [INFO] [stdout] 232 | fn rom(&self) -> &Rom; [INFO] [stdout] | ^^^ [INFO] [stdout] 233 | fn ram(&self) -> Option<&Ram>; [INFO] [stdout] | ^^^ [INFO] [stdout] 234 | #[inline] [INFO] [stdout] 235 | fn header(&self) -> Vec { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 239 | fn logo(&self) -> Vec { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 244 | fn manufacturer_code(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 247 | fn manufacturer_code_text(&self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 253 | fn cgb_flag(&self) -> CGBFlag { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 263 | fn title_len(&self) -> u16 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 272 | fn title(&self) -> Vec { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 278 | fn title_text(&self) -> Result { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 290 | fn licensee_code(&self) -> u16 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 305 | fn sgb_flag(&self) -> SGBFlag { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 314 | fn cart_type(&self) -> u8 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 318 | fn cart_type_text(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 354 | fn rom_size(&self) -> usize { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 373 | fn ram_size(&self) -> usize { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 387 | fn destination_code(&self) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 392 | fn destination_code_text(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 400 | fn mask_rom_version_number(&self) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 405 | fn header_checksum(&self) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 409 | fn global_checksum(&self) -> u16 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 416 | fn info(&self) -> CartridgeInfo { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 432 | fn check_logo(&self) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 444 | fn check_header(&self) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `power_up` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:506:8 [INFO] [stdout] | [INFO] [stdout] 506 | pub fn power_up(rom_path: String, ram_path: String, rtc_path: String) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `MBC` is never used [INFO] [stdout] --> src/io_device/cartridge/mbc/mod.rs:28:11 [INFO] [stdout] | [INFO] [stdout] 28 | pub trait MBC: Memory {} [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CART_TYPE_MBC1` is never used [INFO] [stdout] --> src/io_device/cartridge/mbc/mbc1.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub const CART_TYPE_MBC1: u8 = 0x01; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CART_TYPE_MBC1_RAM` is never used [INFO] [stdout] --> src/io_device/cartridge/mbc/mbc1.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub const CART_TYPE_MBC1_RAM: u8 = 0x02; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CART_TYPE_MBC1_RAM_BATTERY` is never used [INFO] [stdout] --> src/io_device/cartridge/mbc/mbc1.rs:8:11 [INFO] [stdout] | [INFO] [stdout] 8 | pub const CART_TYPE_MBC1_RAM_BATTERY: u8 = 0x03; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RAM_BANK_COUNT` is never used [INFO] [stdout] --> src/io_device/cartridge/mbc/mbc1.rs:11:7 [INFO] [stdout] | [INFO] [stdout] 11 | const RAM_BANK_COUNT: u8 = 0b0_11_00000 >> 5 - 0x00 + 1; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `power_up` and `new` are never used [INFO] [stdout] --> src/io_device/cartridge/mbc/mbc1.rs:31:12 [INFO] [stdout] | [INFO] [stdout] 30 | impl MBC1 { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] 31 | pub fn power_up(rom: Rom, ram_path: String) -> Result> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 35 | fn new(rom: Rom, ram_path: String) -> Result { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CART_TYPE_MBC2` is never used [INFO] [stdout] --> src/io_device/cartridge/mbc/mbc2.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub const CART_TYPE_MBC2: u8 = 0x05; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CART_TYPE_MBC2_BATTERY` is never used [INFO] [stdout] --> src/io_device/cartridge/mbc/mbc2.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub const CART_TYPE_MBC2_BATTERY: u8 = 0x06; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `power_up` and `new` are never used [INFO] [stdout] --> src/io_device/cartridge/mbc/mbc2.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 17 | impl MBC2 { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] 18 | pub fn power_up(rom: Rom, ram_path: String) -> Result> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | fn new(rom: Rom, ram_path: String) -> Result { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CART_TYPE_MBC3_TIMER_BATTERY` is never used [INFO] [stdout] --> src/io_device/cartridge/mbc/mbc3.rs:8:11 [INFO] [stdout] | [INFO] [stdout] 8 | pub const CART_TYPE_MBC3_TIMER_BATTERY: u8 = 0x0F; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CART_TYPE_MBC3_TIMER_RAM_BATTERY_2` is never used [INFO] [stdout] --> src/io_device/cartridge/mbc/mbc3.rs:9:11 [INFO] [stdout] | [INFO] [stdout] 9 | pub const CART_TYPE_MBC3_TIMER_RAM_BATTERY_2: u8 = 0x10; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CART_TYPE_MBC3` is never used [INFO] [stdout] --> src/io_device/cartridge/mbc/mbc3.rs:10:11 [INFO] [stdout] | [INFO] [stdout] 10 | pub const CART_TYPE_MBC3: u8 = 0x11; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CART_TYPE_MBC3_RAM_2` is never used [INFO] [stdout] --> src/io_device/cartridge/mbc/mbc3.rs:11:11 [INFO] [stdout] | [INFO] [stdout] 11 | pub const CART_TYPE_MBC3_RAM_2: u8 = 0x12; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CART_TYPE_MBC3_RAM_BATTERY_2` is never used [INFO] [stdout] --> src/io_device/cartridge/mbc/mbc3.rs:12:11 [INFO] [stdout] | [INFO] [stdout] 12 | pub const CART_TYPE_MBC3_RAM_BATTERY_2: u8 = 0x13; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/io_device/cartridge/mbc/mbc3.rs:32:8 [INFO] [stdout] | [INFO] [stdout] 31 | impl RTC { [INFO] [stdout] | -------- associated function in this implementation [INFO] [stdout] 32 | fn new(path: String) -> Result { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RAM_BANK_COUNT` is never used [INFO] [stdout] --> src/io_device/cartridge/mbc/mbc3.rs:78:7 [INFO] [stdout] | [INFO] [stdout] 78 | const RAM_BANK_COUNT: u8 = 0x03 - 0x00 + 1; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `power_up` and `new` are never used [INFO] [stdout] --> src/io_device/cartridge/mbc/mbc3.rs:92:12 [INFO] [stdout] | [INFO] [stdout] 91 | impl MBC3 { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] 92 | pub fn power_up(rom: Rom, ram_path: String, rtc_path: String) -> Result> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 96 | fn new(rom: Rom, ram_path: String, rtc_path: String) -> Result { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CART_TYPE_MBC5` is never used [INFO] [stdout] --> src/io_device/cartridge/mbc/mbc5.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub const CART_TYPE_MBC5: u8 = 0x19; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CART_TYPE_MBC5_RAM` is never used [INFO] [stdout] --> src/io_device/cartridge/mbc/mbc5.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub const CART_TYPE_MBC5_RAM: u8 = 0x1A; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CART_TYPE_MBC5_RAM_BATTERY` is never used [INFO] [stdout] --> src/io_device/cartridge/mbc/mbc5.rs:8:11 [INFO] [stdout] | [INFO] [stdout] 8 | pub const CART_TYPE_MBC5_RAM_BATTERY: u8 = 0x1B; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CART_TYPE_MBC5_RUMBLE` is never used [INFO] [stdout] --> src/io_device/cartridge/mbc/mbc5.rs:9:11 [INFO] [stdout] | [INFO] [stdout] 9 | pub const CART_TYPE_MBC5_RUMBLE: u8 = 0x1C; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CART_TYPE_MBC5_RUMBLE_RAM` is never used [INFO] [stdout] --> src/io_device/cartridge/mbc/mbc5.rs:10:11 [INFO] [stdout] | [INFO] [stdout] 10 | pub const CART_TYPE_MBC5_RUMBLE_RAM: u8 = 0x1D; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CART_TYPE_MBC5_RUMBLE_RAM_BATTERY` is never used [INFO] [stdout] --> src/io_device/cartridge/mbc/mbc5.rs:11:11 [INFO] [stdout] | [INFO] [stdout] 11 | pub const CART_TYPE_MBC5_RUMBLE_RAM_BATTERY: u8 = 0x1E; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RAM_BANK_COUNT` is never used [INFO] [stdout] --> src/io_device/cartridge/mbc/mbc5.rs:14:7 [INFO] [stdout] | [INFO] [stdout] 14 | const RAM_BANK_COUNT: u8 = 0x0F - 0x00 + 1; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `power_up` and `new` are never used [INFO] [stdout] --> src/io_device/cartridge/mbc/mbc5.rs:27:12 [INFO] [stdout] | [INFO] [stdout] 26 | impl MBC5 { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] 27 | pub fn power_up(rom: Rom, ram_path: String) -> Result> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 31 | pub fn new(rom: Rom, ram_path: String) -> Result { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 226 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `memory` and `info` are never used [INFO] [stdout] --> src/cpu/mod.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 11 | pub trait CPU { [INFO] [stdout] | --- methods in this trait [INFO] [stdout] 12 | fn memory(&self) -> RefMemory; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 16 | fn info(&self) -> &CPUInfo; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `start_at` and `freq` are never read [INFO] [stdout] --> src/cpu/mod.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 19 | pub struct CPUInfo { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 20 | start_at: SystemTime, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 21 | freq: u64, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_hi` is never used [INFO] [stdout] --> src/cpu/mod.rs:35:8 [INFO] [stdout] | [INFO] [stdout] 35 | pub fn get_hi(src: &u16) -> u8 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `set_hi` is never used [INFO] [stdout] --> src/cpu/mod.rs:40:8 [INFO] [stdout] | [INFO] [stdout] 40 | pub fn set_hi(src: &mut u16, val: u8) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_lo` is never used [INFO] [stdout] --> src/cpu/mod.rs:45:8 [INFO] [stdout] | [INFO] [stdout] 45 | pub fn get_lo(src: &u16) -> u8 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `set_lo` is never used [INFO] [stdout] --> src/cpu/mod.rs:50:8 [INFO] [stdout] | [INFO] [stdout] 50 | pub fn set_lo(src: &mut u16, val: u8) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_bit` is never used [INFO] [stdout] --> src/cpu/mod.rs:54:8 [INFO] [stdout] | [INFO] [stdout] 54 | pub fn get_bit(src: &u16, i: u8) -> u8 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `set_bit` is never used [INFO] [stdout] --> src/cpu/mod.rs:59:8 [INFO] [stdout] | [INFO] [stdout] 59 | pub fn set_bit(src: &mut u16, i: u8, val: u8) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ClockStep` is never constructed [INFO] [stdout] --> src/cpu/lr35902/clock.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct ClockStep {} [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `now` is never used [INFO] [stdout] --> src/cpu/lr35902/clock.rs:42:12 [INFO] [stdout] | [INFO] [stdout] 20 | impl Clock { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn now(&self) -> SystemTime { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/gpu.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl GPU { [INFO] [stdout] | -------- associated function in this implementation [INFO] [stdout] 14 | pub fn new() -> GPU { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `mmu` is never read [INFO] [stdout] --> src/mother_board.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct MotherBoard { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 12 | cpu: RefCPU, [INFO] [stdout] 13 | mmu: RefMemory, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `cpu` is never used [INFO] [stdout] --> src/mother_board.rs:37:12 [INFO] [stdout] | [INFO] [stdout] 16 | impl MotherBoard { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn cpu(&self) -> Ref> { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/mmu.rs:241:12 [INFO] [stdout] | [INFO] [stdout] 240 | impl BlockRam { [INFO] [stdout] | -------------------------------------- associated function in this implementation [INFO] [stdout] 241 | pub fn new() -> BlockRam { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/mmu.rs:288:16 [INFO] [stdout] | [INFO] [stdout] 287 | impl TestMemory { [INFO] [stdout] | --------------- associated function in this implementation [INFO] [stdout] 288 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `set_handler_fn` is never used [INFO] [stdout] --> src/io_device/interrupt.rs:69:12 [INFO] [stdout] | [INFO] [stdout] 60 | impl Interrupt { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 69 | pub fn set_handler_fn(&mut self, flag: Flag, handler: IntHandlerFunc) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_BASE` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:17:7 [INFO] [stdout] | [INFO] [stdout] 17 | const HEADER_BASE: u16 = 0x0100; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_END` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:19:7 [INFO] [stdout] | [INFO] [stdout] 19 | const HEADER_END: u16 = 0x014F; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_LEN` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:22:7 [INFO] [stdout] | [INFO] [stdout] 22 | const HEADER_LEN: u16 = HEADER_END - HEADER_BASE + 1; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_ENTRY_BASE` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:25:7 [INFO] [stdout] | [INFO] [stdout] 25 | const HEADER_ENTRY_BASE: u16 = 0x0100; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEADER_ENTRY_END` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:27:7 [INFO] [stdout] | [INFO] [stdout] 27 | const HEADER_ENTRY_END: u16 = 0x0103; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from` is never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:170:12 [INFO] [stdout] | [INFO] [stdout] 152 | impl Ram { [INFO] [stdout] | -------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 170 | pub fn from(mem: Vec, path: String) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `ram`, `header`, and `manufacturer_code_text` are never used [INFO] [stdout] --> src/io_device/cartridge/mod.rs:233:8 [INFO] [stdout] | [INFO] [stdout] 231 | pub trait Cartridge: Memory { [INFO] [stdout] | --------- methods in this trait [INFO] [stdout] 232 | fn rom(&self) -> &Rom; [INFO] [stdout] 233 | fn ram(&self) -> Option<&Ram>; [INFO] [stdout] | ^^^ [INFO] [stdout] 234 | #[inline] [INFO] [stdout] 235 | fn header(&self) -> Vec { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 247 | fn manufacturer_code_text(&self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `MBC` is never used [INFO] [stdout] --> src/io_device/cartridge/mbc/mod.rs:28:11 [INFO] [stdout] | [INFO] [stdout] 28 | pub trait MBC: Memory {} [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 159 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 9.14s [INFO] running `Command { std: "docker" "inspect" "bd255ba2c807117ebd0a6ebedc413ee58266f021cb86108254301c6b77dc3002", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "bd255ba2c807117ebd0a6ebedc413ee58266f021cb86108254301c6b77dc3002", kill_on_drop: false }` [INFO] [stdout] bd255ba2c807117ebd0a6ebedc413ee58266f021cb86108254301c6b77dc3002