diff options
| author | Miquel Sabaté Solà <mssola@mssola.com> | 2026-07-08 21:10:46 +0200 |
|---|---|---|
| committer | Miquel Sabaté Solà <mssola@mssola.com> | 2026-07-08 21:10:46 +0200 |
| commit | 34243afa568ffeb6433200062f0d3c9bc7c2c0ca (patch) | |
| tree | 57eb452453eb33f30d6a019a4ad28b5f9b1e93e9 /lib/xixanta/src/cfg.rs | |
| parent | dcc6264d71e9a1ce58e56eebe5489e1ba16e2d4a (diff) | |
| download | tools.nes-34243afa568ffeb6433200062f0d3c9bc7c2c0ca.tar.gz tools.nes-34243afa568ffeb6433200062f0d3c9bc7c2c0ca.zip | |
Add the SectionType::Vector enum value
It's actually valuable to distinguish that part of PRG-ROM that is part
of the vectors segment.
Signed-off-by: Miquel Sabaté Solà <mssola@mssola.com>
Diffstat (limited to 'lib/xixanta/src/cfg.rs')
| -rw-r--r-- | lib/xixanta/src/cfg.rs | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/xixanta/src/cfg.rs b/lib/xixanta/src/cfg.rs index 52e075e..eacc5a4 100644 --- a/lib/xixanta/src/cfg.rs +++ b/lib/xixanta/src/cfg.rs @@ -269,6 +269,8 @@ pub fn parse_cfg_file(text: &str) -> Result<Vec<Mapping>, String> { // realized it's CHR ROM. if header { header = false; + } else if start == 0xFFFA && size == 6 { + section_type = SectionType::Vector; } else if start == 0x0000 { section_type = SectionType::ChrRom; } else if section_type != SectionType::ChrRom { @@ -355,6 +357,8 @@ pub fn parse_nasm_cfg_file(text: &str) -> Result<Vec<Mapping>, String> { // realized it's CHR ROM. if header { header = false; + } else if start == 0xFFFA && size == 6 { + section_type = SectionType::Vector; } else if start == 0x0000 { section_type = SectionType::ChrRom; } else if section_type != SectionType::ChrRom { @@ -485,7 +489,7 @@ FEATURES { assert_eq!(romv.start, 0xFFFA); assert_eq!(romv.size, 0x06); assert_eq!(romv.fill, Some(0x00)); - assert_eq!(romv.section_type, SectionType::PrgRom); + assert_eq!(romv.section_type, SectionType::Vector); assert_eq!( romv.segments .iter() |
