#[non_exhaustive]pub enum ExtendedConsoleType {
Show 14 variants
Regular,
VsSystem,
Playchoice10,
DecimalModeFamiclone,
Epsm,
Vt01,
Vt02,
Vt03,
Vt09,
Vt32,
Vt369,
Um6578,
FamicomNetworkSystem,
Reserved(u8),
}Expand description
Extended console type: NES 2.0 header byte 13, low nibble, when the console type (byte 7 bits 0-1) is 3.
Values per the Nesdev wiki’s “NES 2.0” page, §“Extended Console Type”. $0-$2
duplicate what byte 7 can already say and exist so a console-type variable
can fold both fields together; they are kept distinct here so a header that
uses them round-trips. $D-$F are reserved and kept in
ExtendedConsoleType::Reserved.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Regular
$0: regular NES / Famicom / Dendy.
VsSystem
$1: Nintendo Vs. System.
Playchoice10
$2: PlayChoice-10.
DecimalModeFamiclone
$3: regular Famiclone with a CPU that supports decimal mode.
Epsm
$4: regular NES / Famicom with an EPSM module or plug-through cartridge.
Vt01
$5: V.R. Technology VT01 with red/cyan STN palette.
Vt02
$6: V.R. Technology VT02.
Vt03
$7: V.R. Technology VT03.
Vt09
$8: V.R. Technology VT09.
Vt32
$9: V.R. Technology VT32.
Vt369
$A: V.R. Technology VT369.
Um6578
$B: UMC UM6578.
FamicomNetworkSystem
$C: Famicom Network System.
Reserved(u8)
$D-$F: reserved. The value is the nibble itself (13..=15).
Implementations§
Trait Implementations§
Source§impl Clone for ExtendedConsoleType
impl Clone for ExtendedConsoleType
Source§fn clone(&self) -> ExtendedConsoleType
fn clone(&self) -> ExtendedConsoleType
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more