I'm a software engineering professional who sometimes blogs, often hacks on projects, and is always listening to music.
See the "now" page on my website for the most up-to-date information about me!
๐น A video game ROM collection manager to help filter, sort, patch, archive, and report on collections on any OS.
Home Page: https://igir.io/
License: GNU General Public License v3.0
I'm a software engineering professional who sometimes blogs, often hacks on projects, and is always listening to music.
See the "now" page on my website for the most up-to-date information about me!
npx igir@latest move zip report --dat _ROMs_dat/ --input _ROMs/roms --output _ROMs-Sorted/ --dir-dat-name --single --prefer-pal --no-bios --no-device --no-demo
This is a screenshot of the error.
I do not expect an error
I do not have the logs. The second time I run the command with -vvv the error disappeared.
No response
1.9.0 (igir@latest)
18.17
MacOS Ventura
This is not a problem for me, but I hope it can be useful as a report.
Maybe this feature is already built-in, please consider this to be a question instead.
Based on your igir_pocket_sync.sh
script, I just created my first collection, if thatโs the correct term weโd like to use here.
#!/bin/bash
set -euo pipefail
trap "printf \"\n-- %s -- \n\n\" \"rsync: interrupted\" >&2; exit 2;" INT TERM
dir="/Volumes/MISTERFPGA"
src="/Volumes/ARCHIVE"
if command -v igir >/dev/null; then
igir copy extract test clean \
--dat "${src}/No-Intro*.zip" \
--input "${src}/No-Intro/" \
--output "${dir}/games/{mister}/" \
--dir-letter \
--clean-exclude "${dir}/games/*/*.*" \
--clean-exclude "${dir}/games/*/Palettes" \
--no-bios \
--no-unlicensed \
--no-demo \
--no-beta \
--no-sample \
--no-prototype \
--no-test-roms \
--no-aftermarket \
--no-homebrew \
--no-unverified \
--no-bad \
--single \
--prefer-language EN \
--prefer-region USA,WORLD,EUR,JPN \
--prefer-revision-newer \
--prefer-retail
fi
Would I be able to basically re-run that script, updating the created collection without again copying/extracting all files which are already present? Iโm having something like rsync
in mind, which basically compares the source and destination and only makes changes if something is either missing or different in the destination.
Note: Iโm also very new to MiSTer FPGA, so maybe the arguments/parameters in my script could be improved.
--
Edit: It seems Iโm having problems with the following exludes; using the first or second result in an error, using the last keeps some files and folders, but deletes other below games/*/Palettes/*
; maybe my globbing is wrong in each and every one of those three lines?
--clean-exclude "${dir}/games/*/Palettes" \
--clean-exclude "${dir}/games/*/Palettes/" \
--clean-exclude "${dir}/games/*/Palettes/*" \
When running igir
as in your documented igir_pocket_sync.sh
script, with some path or glob to be excluded like for example --clean-exclude "./Assets/*/common/*.*"
, the command/script currently throws an error and stops if the path or glob to be excluded does not exist, i.e. nothing matches the exclude path or glob.
Thinking about this behavior, Iโd say it would make more sense to be able to define whatever exludes as one wishes, and if something matches, it getโs excluded as defined, and if nothing matches, i.e. nothing exists that matches, the command/script should gracefully continue and finish.
Iโm not sure if this only is the case for --clean-exclude
or also some of the other --*-exclude
flags.
npx igir@latest copy zip --dat roms/dats/MAME\ Dats\ 0.78/MAME\ 078.dat --input MAME_2003-Plus_Reference_Set_2018/roms/3countb.zip --output roms/roms-sorted --dir-dat-name
Working from 0.78 MAME romset and for test purposes, running against 1 specific rom I get the following error (below is full output),
โ Scanning for DATs ยทยทยทยทยทยทยทยทยทยทยทยท | 1 unique DAT found
โ Scanning for ROMs ยทยทยทยทยทยทยทยทยทยทยทยท | 27 files found
ERROR: MAME: roms/roms-sorted/MAME/neogeo.zip: failed to create zip: Type_a.getHeader is not a function
ERROR: MAME: roms/roms-sorted/MAME/3countb.zip: failed to create zip: Type_a.getHeader is not a function
โ MAME ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท | 2/4,610 games, 1/15 BIOSes, 2/4,610 retail releases written
โ Processing DATs ยทยทยทยทยทยทยทยทยทยทยทยทยทยท | 1 DAT processed
If I try do a copy and do not include a zip then I get the following error,
โ Scanning for DATs ยทยทยทยทยทยทยทยทยทยทยทยท | 1 unique DAT found
โ Scanning for ROMs ยทยทยทยทยทยทยทยทยทยทยทยท | 27 files found
โ Processing DATs ยทยทยทยทยทยทยทยทยทยทยทยทยทยท | โโโโโโโโโโโโโโโโโโโโโโโโโ | 0/1
โ MAME ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท | โโโโโโโโโโโโโโโโโโโโโโโโโ | 0/1file:///Users/kristan/.npm/_npx/0d8028b15d717946/node_modules/igir/build/src/types/logiqx/dat.js:154
if ((_a = this.getHeader().getClrMamePro()) === null || _a === void 0 ? void 0 : _a.getHeader()) {
^
TypeError: _a.getHeader is not a function
at DAT.isHeadered (file:///Users/kristan/.npm/_npx/0d8028b15d717946/node_modules/igir/build/src/types/logiqx/dat.js:154:93)
at Options.canRemoveHeader (file:///Users/kristan/.npm/_npx/0d8028b15d717946/node_modules/igir/build/src/types/options.js:610:17)
at CandidateWriter.<anonymous> (file:///Users/kristan/.npm/_npx/0d8028b15d717946/node_modules/igir/build/src/modules/candidateWriter.js:279:47)
at Generator.next (<anonymous>)
at file:///Users/kristan/.npm/_npx/0d8028b15d717946/node_modules/igir/build/src/modules/candidateWriter.js:7:71
at new Promise (<anonymous>)
at __awaiter (file:///Users/kristan/.npm/_npx/0d8028b15d717946/node_modules/igir/build/src/modules/candidateWriter.js:3:12)
at CandidateWriter.writeRawFile (file:///Users/kristan/.npm/_npx/0d8028b15d717946/node_modules/igir/build/src/modules/candidateWriter.js:278:16)
at CandidateWriter.<anonymous> (file:///Users/kristan/.npm/_npx/0d8028b15d717946/node_modules/igir/build/src/modules/candidateWriter.js:264:30)
at Generator.next (<anonymous>)
at fulfilled (file:///Users/kristan/.npm/_npx/0d8028b15d717946/node_modules/igir/build/src/modules/candidateWriter.js:4:58)
Node.js v18.5.0
Expect rom to be identified and copied to the output dir.
[13:16:07.601] INFO: CandidatePreferer: MAME: done filtering candidates
[13:16:07.601] INFO: CandidatePostProcessor: MAME: processing candidates
[13:16:07.681] INFO: CandidatePostProcessor: MAME: done processing candidates
[13:16:07.682] INFO: CandidateWriter: MAME: writing 2 candidates
[13:16:07.683] TRACE: CandidateWriter: MAME: neogeo: writing 2 candidates
[13:16:07.684] TRACE: CandidateWriter: MAME: roms/roms-sorted/MAME/neogeo.zip: writing 10 archive entries ...
[13:16:07.701] ERROR: CandidateWriter: MAME: roms/roms-sorted/MAME/neogeo.zip: failed to create zip: Type_a.getHeader is not a function
[13:16:07.701] TRACE: CandidateWriter: MAME: neogeo: no raw files to write
[13:16:07.701] TRACE: CandidateWriter: MAME: roms/roms-sorted/MAME/3countb.zip: writing 20 archive entries ...
[13:16:07.708] ERROR: CandidateWriter: MAME: roms/roms-sorted/MAME/3countb.zip: failed to create zip: Type_a.getHeader is not a function
[13:16:07.708] TRACE: CandidateWriter: MAME: 3countb: no raw files to write
[13:16:07.708] TRACE: CandidateWriter: MAME: neogeo: done writing 2 candidates
[13:16:07.708] INFO: CandidateWriter: MAME: done writing 2 candidates
[13:16:07.709] INFO: StatusGenerator: MAME: generating ROM statuses
[13:16:07.720] INFO: StatusGenerator: MAME: done generating ROM statuses
MAME ... 2/4,610 games, 1/15 BIOSes, 2/4,610 retail releases written
[13:16:07.721] INFO: done processing 1 DAT
https://www.progettosnaps.net/download/?tipo=dat_mame&file=/dats/MAME/MAME_Dats_078.rar
v1.9.0
v18.5.0
macOS Sonoma 14.0
No response
No response
First off thanks for such a wonderful tool, I've been looking for something like this for years.
I was wondering if it's possible to add filtering to the report, like list only missing games, or list all unknown files? Looked through and didn't see anything like that already implemented.
Thanks again.
No response
No response
Right now it appears Xbox (incl. Xbox 360) is one of the major systems not accounted for in the GameConsole handler. Should be simple to add akin to PlayStation etc and dats are available on Redump.
No response
No response
Be able to support Hardware Target Game Database .txt
SMDBs as if they were DATs, including their opinionated ROM sorting schemes.
SMDBs don't all include filesize, so as long as igir
is exclusively using CRC32 for hashing we won't be able to support SMDBs without filesize.
./node_modules/.bin/ts-node ./index.ts -vvv report --dat /Volumes/home/games/DATs/Redump/SNK\ -\ Neo\ Geo\ CD\ -\ Datfile\ \(111\)\ \(2022-09-23\ 17-55-26\)\(1\).zip --input /Volumes/home/games/Redump/SNK\ -\ Neo\ Geo\ CD/ --fixdat
When using the --fixdat
flag, I was unable to find any outputted fixdat files. I ended up adding a log locally to find what the path actually is, and it seems to write it to a weird temporary or test directory.
src/igir.ts line 99
// Write a fixdat
var fixpath = await new FixdatCreator(this.options, progressBar).write(dat, parentsToCombinedCandidates);
await progressBar.logError(`${fixpath}: fixdat path`);
/var/folders/3s/1_v_qynj73sg7jfymxd9dny00000gn/T/igir/eyj2mb/SNK - Neo Geo CD fixdat (20230507-085738).dat
I would expect the fixdats to be output in the directories specified by the --output
flag (and to honor --dir-dat-name
), or if omitted the --input
. At the very list the same location as the DAT specified by --dat
.
https://igir.io/dats/?h=fixdat#fixdats seems to imply the fixdats will go to the output directory.
[08:59:21.270] DEBUG: DATScanner: found 1 DAT file
[08:59:21.271] DEBUG: DATScanner: enumerating DAT archives
[08:59:21.323] DEBUG: DATScanner: downloading DATs from URLs
[08:59:21.324] DEBUG: DATScanner: parsing 1 DAT file
[08:59:21.404] TRACE: DATScanner: /Volumes/home/games/DATs/Redump/SNK - Neo Geo CD - Datfile (111) (2022-09-23 17-55-26)(1).zip|SNK - Neo Geo CD - Datfile (111) (2022-09-23
17-55-26).dat: attempting to parse 684.1KiB of XML
[08:59:21.532] TRACE: DATScanner: /Volumes/home/games/DATs/Redump/SNK - Neo Geo CD - Datfile (111) (2022-09-23 17-55-26)(1).zip|SNK - Neo Geo CD - Datfile (111) (2022-09-23
17-55-26).dat: parsed XML, deserializing to DAT
[08:59:21.761] TRACE: DATScanner: /Volumes/home/games/DATs/Redump/SNK - Neo Geo CD - Datfile (111) (2022-09-23 17-55-26)(1).zip|SNK - Neo Geo CD - Datfile (111) (2022-09-23
17-55-26).dat: 60GiB of 111 games, 111 parents parsed
[08:59:21.762] INFO: DATScanner: done scanning DAT files
โ Scanning for DATs ยทยทยทยทยทยทยทยทยทยทยทยท | 1 unique DAT found
[08:59:21.765] INFO: ROMScanner: scanning ROM files
[08:59:22.193] DEBUG: ROMScanner: found 107 ROM files
[08:59:28.161] INFO: ROMScanner: done scanning ROM files
โ Scanning for ROMs ยทยทยทยทยทยทยทยทยทยทยทยท | 2,944 unique ROMs found
[08:59:28.163] INFO: HeaderProcessor: processing file headers
[08:59:28.217] DEBUG: HeaderProcessor: found headers in 0 ROMs
[08:59:28.217] INFO: HeaderProcessor: done processing file headers
โ Detecting ROM headers ยทยทยทยทยทยทยทยท | 2,944 ROMs processed
[08:59:28.218] INFO: processing 1 DAT
[08:59:28.220] INFO: CandidateFilter: SNK - Neo Geo CD: generating candidates
[08:59:28.223] DEBUG: CandidateFilter: SNK - Neo Geo CD: 2,944 unique ROMs found
[08:59:28.225] TRACE: CandidateFilter: SNK - Neo Geo CD: Top Hunter - Roddy & Cathy (Japan) (En,Ja): found 1 candidate
[08:59:28.225] TRACE: CandidateFilter: SNK - Neo Geo CD: Raguy ~ Blue's Journey (Japan) (En,Ja): found 1 candidate
[08:59:28.227] TRACE: CandidateFilter: SNK - Neo Geo CD: Magician Lord (Japan) (En,Ja): found 1 candidate
[08:59:28.227] TRACE: CandidateFilter: SNK - Neo Geo CD: Ninja Commando (Japan) (En,Ja): found 1 candidate
[08:59:28.228] TRACE: CandidateFilter: SNK - Neo Geo CD: Mutation Nation (Japan) (En,Ja): found 1 candidate
[08:59:28.228] TRACE: CandidateFilter: SNK - Neo Geo CD: Rally Chase (Japan) (En,Ja): found 1 candidate
[08:59:28.229] TRACE: CandidateFilter: SNK - Neo Geo CD: Viewpoint (Japan): found 1 candidate
[08:59:28.229] TRACE: CandidateFilter: SNK - Neo Geo CD: ASO II - The Last Guardian ~ Alpha Mission II (Japan) (En,Ja): found 1 candidate
[08:59:28.229] TRACE: CandidateFilter: SNK - Neo Geo CD: Ghost Pilots (World): found 1 candidate
[08:59:28.230] TRACE: CandidateFilter: SNK - Neo Geo CD: Sonic Wings 2 ~ Aero Fighters 2 (World) (En,Ja): found 1 candidate
[08:59:28.230] TRACE: CandidateFilter: SNK - Neo Geo CD: Shougi no Tatsujin - Master of Syougi (Japan): found 1 candidate
[08:59:28.230] TRACE: CandidateFilter: SNK - Neo Geo CD: Top Player's Golf (Japan) (En,Ja): found 1 candidate
[08:59:28.231] TRACE: CandidateFilter: SNK - Neo Geo CD: 2020 Super Baseball (Japan) (En,Ja): found 1 candidate
[08:59:28.231] TRACE: CandidateFilter: SNK - Neo Geo CD: Soccer Brawl (World): found 1 candidate
[08:59:28.232] TRACE: CandidateFilter: SNK - Neo Geo CD: King of Fighters '94, The (World) (En,Ja) (Rev 1): found 1 candidate
[08:59:28.232] TRACE: CandidateFilter: SNK - Neo Geo CD: King of Fighters '95, The (World) (En,Ja): found 1 candidate
[08:59:28.233] TRACE: CandidateFilter: SNK - Neo Geo CD: King of Fighters '96, The (World) (En,Ja): found 1 candidate
[08:59:28.233] TRACE: CandidateFilter: SNK - Neo Geo CD: Galaxy Fight - Universal Warriors (Japan) (En,Ja,Es): found 1 candidate
[08:59:28.234] TRACE: CandidateFilter: SNK - Neo Geo CD: Fire Suplex ~ 3 Count Bout (World) (En,Ja): found 1 candidate
[08:59:28.234] TRACE: CandidateFilter: SNK - Neo Geo CD: Dunk Dream ~ Street Slam ~ Street Hoop (World): found 1 candidate
[08:59:28.234] TRACE: CandidateFilter: SNK - Neo Geo CD: Double Dragon (Japan) (En,Ja) (Rev 1): found 1 candidate
[08:59:28.235] TRACE: CandidateFilter: SNK - Neo Geo CD: Shinsetsu Samurai Spirits - Bushidou Retsuden (Japan): found 1 candidate
[08:59:28.236] TRACE: CandidateFilter: SNK - Neo Geo CD: Samurai Spirits ~ Samurai Shodown (Japan) (En,Ja): found 1 candidate
[08:59:28.236] TRACE: CandidateFilter: SNK - Neo Geo CD: Shin Samurai Spirits - Haoumaru Jigokuhen ~ Samurai Shodown II (World) (En,Ja): found 1 candidate
[08:59:28.238] TRACE: CandidateFilter: SNK - Neo Geo CD: King of Fighters '94, The (World) (En,Ja): found 1 candidate
[08:59:28.239] TRACE: CandidateFilter: SNK - Neo Geo CD: King of Fighters '97, The (Japan) (En,Ja): found 1 candidate
[08:59:28.239] TRACE: CandidateFilter: SNK - Neo Geo CD: Quiz King of Fighters (Japan): found 1 candidate
[08:59:28.240] TRACE: CandidateFilter: SNK - Neo Geo CD: Metal Slug (Japan) (En,Ja): found 1 candidate
[08:59:28.240] TRACE: CandidateFilter: SNK - Neo Geo CD: Metal Slug 2 (World) (En,Ja): found 1 candidate
[08:59:28.240] TRACE: CandidateFilter: SNK - Neo Geo CD: Last Resort (Japan) (En,Ja): found 1 candidate
[08:59:28.241] TRACE: CandidateFilter: SNK - Neo Geo CD: King of Fighters '98, The - Dream Match Never Ends ~ The King of Fighters '98 - The Slugfest (Japan) (En,Ja): found 1
candidate
[08:59:28.241] TRACE: CandidateFilter: SNK - Neo Geo CD: World Heroes Perfect (World) (En,Ja): found 1 candidate
[08:59:28.242] TRACE: CandidateFilter: SNK - Neo Geo CD: Tsuukai Gangan Koushinkyoku ~ Aggressors of Dark Kombat (World) (En,Ja): found 1 candidate
[08:59:28.242] TRACE: CandidateFilter: SNK - Neo Geo CD: Power Spikes II (Japan) (En,Ja): found 1 candidate
[08:59:28.243] TRACE: CandidateFilter: SNK - Neo Geo CD: Double Dragon (Export) (En,Ja): found 1 candidate
[08:59:28.243] WARN: CandidateFilter: SNK - Neo Geo CD: missing 2 files for: Garou Densetsu 3 - Road to the Final Victory ~ Fatal Fury 3 - Road to the Final Victory (Japan)
(En,Ja,Es,Pt)
[08:59:28.243] WARN: CandidateFilter: Garou Densetsu 3 - Road to the Final Victory ~ Fatal Fury 3 - Road to the Final Victory (Japan) (En,Ja,Es,Pt).cue
[08:59:28.243] WARN: CandidateFilter: Garou Densetsu 3 - Road to the Final Victory ~ Fatal Fury 3 - Road to the Final Victory (Japan) (En,Ja,Es,Pt) (Track 01).bin
[08:59:28.244] TRACE: CandidateFilter: SNK - Neo Geo CD: Garou Densetsu 3 - Road to the Final Victory ~ Fatal Fury 3 - Road to the Final Victory (Japan) (En,Ja,Es,Pt): found
0 candidates
[08:59:28.245] TRACE: CandidateFilter: SNK - Neo Geo CD: Garou Densetsu 3 - Road to the Final Victory ~ Fatal Fury 3 - Road to the Final Victory (Export) (En,Ja,Es,Pt) (Rev
3): found 1 candidate
[08:59:28.246] TRACE: CandidateFilter: SNK - Neo Geo CD: Real Bout Garou Densetsu ~ Real Bout Fatal Fury (World) (En,Ja,Es,Pt): found 1 candidate
[08:59:28.246] TRACE: CandidateFilter: SNK - Neo Geo CD: Samurai Spirits - Amakusa Kourin ~ Samurai Shodown IV - Amakusa's Revenge (World) (En,Ja,Es,Pt): found 1 candidate
[08:59:28.247] TRACE: CandidateFilter: SNK - Neo Geo CD: Neo-Geo CD Special (Japan): found 1 candidate
[08:59:28.247] TRACE: CandidateFilter: SNK - Neo Geo CD: Ryuuko no Ken 2 ~ Art of Fighting 2 (World) (En,Ja,Es): found 1 candidate
[08:59:28.248] TRACE: CandidateFilter: SNK - Neo Geo CD: Art of Fighting - Ryuuko no Ken Gaiden ~ The Path of the Warrior - Art of Fighting 3 (World) (En,Ja,Es,Pt): found 1
candidate
[08:59:28.248] TRACE: CandidateFilter: SNK - Neo Geo CD: Real Bout Garou Densetsu Special ~ Real Bout Fatal Fury Special (World) (En,Ja,Es,Pt): found 1 candidate
[08:59:28.250] TRACE: CandidateFilter: SNK - Neo Geo CD: World Heroes 2 Jet (Japan) (En,Ja): found 1 candidate
[08:59:28.251] TRACE: CandidateFilter: SNK - Neo Geo CD: Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja): found 1 candidate
[08:59:28.251] TRACE: CandidateFilter: SNK - Neo Geo CD: Choujin Gakuen - Gowcaizer (Japan) (En,Ja): found 1 candidate
[08:59:28.251] TRACE: CandidateFilter: SNK - Neo Geo CD: Next Thing, The - King of the Monsters 2 (World) (En,Ja): found 1 candidate
[08:59:28.252] TRACE: CandidateFilter: SNK - Neo Geo CD: King of Fighters '99, The ~ The King of Fighters '99 - Millennium Battle (World) (En,Ja,Es,Pt): found 1 candidate
[08:59:28.252] TRACE: CandidateFilter: SNK - Neo Geo CD: Tokuten-ou 3 - Eikou e no Chousen ~ Super Sidekicks 3 - The Next Glory (World) (En,Ja,Fr,Es,It,Pt): found 1 candidate
[08:59:28.253] WARN: CandidateFilter: SNK - Neo Geo CD: missing 2 files for: Garou Densetsu 3 - Road to the Final Victory ~ Fatal Fury 3 - Road to the Final Victory (World)
(En,Ja,Es,Pt) (Rev 1)
[08:59:28.253] WARN: CandidateFilter: Garou Densetsu 3 - Road to the Final Victory ~ Fatal Fury 3 - Road to the Final Victory (World) (En,Ja,Es,Pt) (Rev 1).cue
[08:59:28.253] WARN: CandidateFilter: Garou Densetsu 3 - Road to the Final Victory ~ Fatal Fury 3 - Road to the Final Victory (World) (En,Ja,Es,Pt) (Rev 1) (Track 01).bin
[08:59:28.254] TRACE: CandidateFilter: SNK - Neo Geo CD: Garou Densetsu 3 - Road to the Final Victory ~ Fatal Fury 3 - Road to the Final Victory (World) (En,Ja,Es,Pt) (Rev
1): found 0 candidates
[08:59:28.255] TRACE: CandidateFilter: SNK - Neo Geo CD: Ryuuko no Ken ~ Art of Fighting (World) (En,Ja,Es): found 1 candidate
[08:59:28.255] TRACE: CandidateFilter: SNK - Neo Geo CD: Garou Densetsu 2 ~ Fatal Fury 2 (Japan) (En,Ja): found 1 candidate
[08:59:28.256] TRACE: CandidateFilter: SNK - Neo Geo CD: Garou Densetsu 3 - Road to the Final Victory ~ Fatal Fury 3 - Road to the Final Victory (Export) (En,Ja,Es,Pt) (Rev
2): found 1 candidate
[08:59:28.256] WARN: CandidateFilter: SNK - Neo Geo CD: missing 4 files for: Garou Densetsu Special ~ Fatal Fury Special (World) (En,Ja) (Rev 1)
[08:59:28.256] WARN: CandidateFilter: Garou Densetsu Special ~ Fatal Fury Special (World) (En,Ja) (Rev 1).cue
[08:59:28.256] WARN: CandidateFilter: Garou Densetsu Special ~ Fatal Fury Special (World) (En,Ja) (Rev 1) (Track 01).bin
[08:59:28.256] WARN: CandidateFilter: Garou Densetsu Special ~ Fatal Fury Special (World) (En,Ja) (Rev 1) (Track 26).bin
[08:59:28.256] WARN: CandidateFilter: Garou Densetsu Special ~ Fatal Fury Special (World) (En,Ja) (Rev 1) (Track 27).bin
[08:59:28.258] TRACE: CandidateFilter: SNK - Neo Geo CD: Garou Densetsu Special ~ Fatal Fury Special (World) (En,Ja) (Rev 1): found 0 candidates
[08:59:28.258] TRACE: CandidateFilter: SNK - Neo Geo CD: Samurai Spirits - Zankurou Musouken ~ Samurai Shodown III (World) (En,Ja,Es,Pt): found 1 candidate
[08:59:28.259] TRACE: CandidateFilter: SNK - Neo Geo CD: Fighter's History Dynamite ~ Karnov's Revenge (Japan) (En,Ja): found 1 candidate
[08:59:28.259] TRACE: CandidateFilter: SNK - Neo Geo CD: Crossed Swords (Japan): found 1 candidate
[08:59:28.260] TRACE: CandidateFilter: SNK - Neo Geo CD: King of Fighters '95, The (Japan) (En,Ja) (Rev 1): found 1 candidate
[08:59:28.260] TRACE: CandidateFilter: SNK - Neo Geo CD: Puzzle Bobble ~ Bust-A-Move (Japan) (En,Ja): found 1 candidate
[08:59:28.260] TRACE: CandidateFilter: SNK - Neo Geo CD: League Bowling (Japan) (En,Ja): found 1 candidate
[08:59:28.261] TRACE: CandidateFilter: SNK - Neo Geo CD: Ninja Master's - Haou Ninpou Chou (Japan) (En,Ja): found 1 candidate
[08:59:28.263] TRACE: CandidateFilter: SNK - Neo Geo CD: Far East of Eden - Tengai Makyou Shinden ~ Far East of Eden - Kabuki Klash (Japan) (En,Ja): found 1 candidate
[08:59:28.264] TRACE: CandidateFilter: SNK - Neo Geo CD: World Heroes (Japan) (En,Ja): found 1 candidate
[08:59:28.264] TRACE: CandidateFilter: SNK - Neo Geo CD: World Heroes 2 (Japan) (En,Ja): found 1 candidate
[08:59:28.265] TRACE: CandidateFilter: SNK - Neo Geo CD: Garou Densetsu - Shukumei no Tatakai ~ Fatal Fury - King of Fighters (Japan) (En,Ja): found 1 candidate
[08:59:28.265] TRACE: CandidateFilter: SNK - Neo Geo CD: RB2 - The Newcomers - Real Bout Garou Densetsu 2 ~ RB2 - The Newcomers - Real Bout Fatal Fury 2 (Japan) (En,Ja):
found 1 candidate
[08:59:28.266] TRACE: CandidateFilter: SNK - Neo Geo CD: Flying Power Disc ~ Windjammers (Japan) (En,Ja): found 1 candidate
[08:59:28.267] TRACE: CandidateFilter: SNK - Neo Geo CD: Bakumatsu Roman - Gekka no Kenshi ~ The Last Blade (Japan) (En,Ja,Es,Pt): found 1 candidate
[08:59:28.267] TRACE: CandidateFilter: SNK - Neo Geo CD: Bakumatsu Roman Daini Maku - Gekka no Kenshi - Tsuki ni Saku Hana, Chiri Yuku Hana ~ The Last Blade 2 (Japan)
(En,Ja,Es,Pt): found 1 candidate
[08:59:28.268] TRACE: CandidateFilter: SNK - Neo Geo CD: Football Frenzy (Japan) (En,Ja): found 1 candidate
[08:59:28.268] TRACE: CandidateFilter: SNK - Neo Geo CD: Tokuten-ou 2 ~ Super Sidekicks 2 - The World Championship (Japan) (En,Ja,Es): found 1 candidate
[08:59:28.269] TRACE: CandidateFilter: SNK - Neo Geo CD: Sonic Wings 3 ~ Aero Fighters 3 (Japan) (En,Ja): found 1 candidate
[08:59:28.270] TRACE: CandidateFilter: SNK - Neo Geo CD: Idol Mahjong - Final Romance 2 (Japan): found 1 candidate
[08:59:28.270] TRACE: CandidateFilter: SNK - Neo Geo CD: Fuuun Mokushiroku - Kakutou Sousei ~ Savage Reign (World) (En,Ja,Es,Pt): found 1 candidate
[08:59:28.271] TRACE: CandidateFilter: SNK - Neo Geo CD: Stakes Winner - GI Kanzen Seiha e no Michi (Japan): found 1 candidate
[08:59:28.271] TRACE: CandidateFilter: SNK - Neo Geo CD: Pulstar (Japan) (En,Ja): found 1 candidate
[08:59:28.271] TRACE: CandidateFilter: SNK - Neo Geo CD: Magical Drop 2 (Japan) (En,Ja): found 1 candidate
[08:59:28.272] TRACE: CandidateFilter: SNK - Neo Geo CD: ADK World (Japan): found 1 candidate
[08:59:28.272] TRACE: CandidateFilter: SNK - Neo Geo CD: Burning Fight (Japan) (En,Ja): found 1 candidate
[08:59:28.273] TRACE: CandidateFilter: SNK - Neo Geo CD: Joy Joy Kid ~ Puzzled (World) (En,Ja): found 1 candidate
[08:59:28.273] TRACE: CandidateFilter: SNK - Neo Geo CD: King of Fighters '96 NeoGeo Collection, The (Japan): found 1 candidate
[08:59:28.274] TRACE: CandidateFilter: SNK - Neo Geo CD: Janshin Densetsu - Quest of Jongmaster (Japan): found 1 candidate
[08:59:28.274] TRACE: CandidateFilter: SNK - Neo Geo CD: Mahjong-kyou Retsuden - Nishi Nihon-hen (Japan): found 1 candidate
[08:59:28.276] TRACE: CandidateFilter: SNK - Neo Geo CD: Nam-1975 (Japan) (En,Ja): found 1 candidate
[08:59:28.276] TRACE: CandidateFilter: SNK - Neo Geo CD: Ninja Combat (Japan) (En,Ja): found 1 candidate
[08:59:28.277] TRACE: CandidateFilter: SNK - Neo Geo CD: Riding Hero (Japan) (En,Ja): found 1 candidate
[08:59:28.277] TRACE: CandidateFilter: SNK - Neo Geo CD: Robo Army (Japan) (En,Ja): found 1 candidate
[08:59:28.277] TRACE: CandidateFilter: SNK - Neo Geo CD: Baseball Stars 2 (Japan) (En,Ja): found 1 candidate
[08:59:28.278] TRACE: CandidateFilter: SNK - Neo Geo CD: Fuuun Mokushiroku - Kakutou Sousei ~ Savage Reign (Export) (En,Ja,Es,Pt) (Rev 1): found 1 candidate
[08:59:28.278] TRACE: CandidateFilter: SNK - Neo Geo CD: Crossed Swords II (Japan) (En,Ja): found 1 candidate
[08:59:28.279] TRACE: CandidateFilter: SNK - Neo Geo CD: Treasure of the Caribbean (France) (En,Ja) (Unl): found 0 candidates
[08:59:28.279] TRACE: CandidateFilter: SNK - Neo Geo CD: Baseball Stars Professional (Japan) (En,Ja): found 1 candidate
[08:59:28.279] TRACE: CandidateFilter: SNK - Neo Geo CD: Breakers (Japan) (En,Ja): found 1 candidate
[08:59:28.280] TRACE: CandidateFilter: SNK - Neo Geo CD: Big Tournament Golf ~ Neo Turf Masters (Japan) (En,Ja): found 1 candidate
[08:59:28.280] TRACE: CandidateFilter: SNK - Neo Geo CD: Cyber-Lip (Japan) (En,Ja): found 1 candidate
[08:59:28.280] TRACE: CandidateFilter: SNK - Neo Geo CD: Futsal - 5 on 5 Mini Soccer ~ PleasureGoal - 5 on 5 Mini Soccer (Japan) (En,Ja): found 1 candidate
[08:59:28.281] TRACE: CandidateFilter: SNK - Neo Geo CD: Shinouken ~ Ragnagard (Japan) (En,Ja,Es): found 1 candidate
[08:59:28.281] TRACE: CandidateFilter: SNK - Neo Geo CD: Super Sidekicks - Tokuten-ou (Japan) (En,Ja): found 1 candidate
[08:59:28.282] TRACE: CandidateFilter: SNK - Neo Geo CD: Super Spy, The (Japan) (En,Ja): found 1 candidate
[08:59:28.282] TRACE: CandidateFilter: SNK - Neo Geo CD: Andro Dunos (France) (Unl): found 1 candidate
[08:59:28.283] TRACE: CandidateFilter: SNK - Neo Geo CD: Sengoku Denshou 2 ~ Sengoku 2 (Japan) (En,Ja): found 1 candidate
[08:59:28.283] TRACE: CandidateFilter: SNK - Neo Geo CD: Neo Drift Out - New Technology (Japan): found 1 candidate
[08:59:28.283] TRACE: CandidateFilter: SNK - Neo Geo CD: OverTop (Japan) (En,Ja): found 1 candidate
[08:59:28.284] TRACE: CandidateFilter: SNK - Neo Geo CD: Choutetsu Brikin'ger ~ Ironclad - Tesshou Rusha (Japan) (En,Ja): found 1 candidate
[08:59:28.284] TRACE: CandidateFilter: SNK - Neo Geo CD: Sengoku Denshou ~ Sengoku (Japan) (En,Ja): found 1 candidate
[08:59:28.285] TRACE: CandidateFilter: SNK - Neo Geo CD: Oshidashi Zintrick ~ ZinTricK (Japan) (En,Ja): found 1 candidate
[08:59:28.285] TRACE: CandidateFilter: SNK - Neo Geo CD: Twinkle Star Sprites (Japan) (En,Ja): found 1 candidate
[08:59:28.285] TRACE: CandidateFilter: SNK - Neo Geo CD: Bang^2 Busters (France) (En,Ja) (Unl): found 1 candidate
[08:59:28.286] TRACE: CandidateFilter: SNK - Neo Geo CD: Last Hope (Germany) (Unl): found 1 candidate
[08:59:28.286] TRACE: CandidateFilter: SNK - Neo Geo CD: World Heroes Perfect (Export) (En,Ja) (Rev 1): found 1 candidate
[08:59:28.287] TRACE: CandidateFilter: SNK - Neo Geo CD: Xeno Crisis (World) (Unl): found 1 candidate
[08:59:28.289] DEBUG: CandidateFilter: SNK - Neo Geo CD: generated 57.3GiB of 107 candidates for 111 parents
[08:59:28.289] INFO: CandidateFilter: SNK - Neo Geo CD: done generating candidates
[08:59:28.289] INFO: PatchCandidateGenerator: SNK - Neo Geo CD: generating patched candidates
[08:59:28.291] DEBUG: PatchCandidateGenerator: SNK - Neo Geo CD: 0 unique patches found
[08:59:28.295] INFO: PatchCandidateGenerator: SNK - Neo Geo CD: done generating patched candidates
[08:59:28.347] INFO: CandidateFilter: SNK - Neo Geo CD: filtering candidates
[08:59:28.348] TRACE: CandidateFilter: SNK - Neo Geo CD: Top Hunter - Roddy & Cathy (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.350] TRACE: CandidateFilter: SNK - Neo Geo CD: Top Hunter - Roddy & Cathy (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.351] TRACE: CandidateFilter: SNK - Neo Geo CD: Raguy ~ Blue's Journey (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.352] TRACE: CandidateFilter: SNK - Neo Geo CD: Raguy ~ Blue's Journey (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.353] TRACE: CandidateFilter: SNK - Neo Geo CD: Magician Lord (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.353] TRACE: CandidateFilter: SNK - Neo Geo CD: Magician Lord (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.353] TRACE: CandidateFilter: SNK - Neo Geo CD: Ninja Commando (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.354] TRACE: CandidateFilter: SNK - Neo Geo CD: Ninja Commando (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.354] TRACE: CandidateFilter: SNK - Neo Geo CD: Mutation Nation (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.354] TRACE: CandidateFilter: SNK - Neo Geo CD: Mutation Nation (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.355] TRACE: CandidateFilter: SNK - Neo Geo CD: Rally Chase (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.355] TRACE: CandidateFilter: SNK - Neo Geo CD: Rally Chase (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.355] TRACE: CandidateFilter: SNK - Neo Geo CD: Viewpoint (Japan): 1 candidate before filtering
[08:59:28.355] TRACE: CandidateFilter: SNK - Neo Geo CD: Viewpoint (Japan): 1 candidate after filtering
[08:59:28.356] TRACE: CandidateFilter: SNK - Neo Geo CD: ASO II - The Last Guardian ~ Alpha Mission II (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.356] TRACE: CandidateFilter: SNK - Neo Geo CD: ASO II - The Last Guardian ~ Alpha Mission II (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.357] TRACE: CandidateFilter: SNK - Neo Geo CD: Ghost Pilots (World): 1 candidate before filtering
[08:59:28.358] TRACE: CandidateFilter: SNK - Neo Geo CD: Ghost Pilots (World): 1 candidate after filtering
[08:59:28.358] TRACE: CandidateFilter: SNK - Neo Geo CD: Sonic Wings 2 ~ Aero Fighters 2 (World) (En,Ja): 1 candidate before filtering
[08:59:28.360] TRACE: CandidateFilter: SNK - Neo Geo CD: Sonic Wings 2 ~ Aero Fighters 2 (World) (En,Ja): 1 candidate after filtering
[08:59:28.360] TRACE: CandidateFilter: SNK - Neo Geo CD: Shougi no Tatsujin - Master of Syougi (Japan): 1 candidate before filtering
[08:59:28.361] TRACE: CandidateFilter: SNK - Neo Geo CD: Shougi no Tatsujin - Master of Syougi (Japan): 1 candidate after filtering
[08:59:28.361] TRACE: CandidateFilter: SNK - Neo Geo CD: Top Player's Golf (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.361] TRACE: CandidateFilter: SNK - Neo Geo CD: Top Player's Golf (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.362] TRACE: CandidateFilter: SNK - Neo Geo CD: 2020 Super Baseball (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.362] TRACE: CandidateFilter: SNK - Neo Geo CD: 2020 Super Baseball (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.362] TRACE: CandidateFilter: SNK - Neo Geo CD: Soccer Brawl (World): 1 candidate before filtering
[08:59:28.363] TRACE: CandidateFilter: SNK - Neo Geo CD: Soccer Brawl (World): 1 candidate after filtering
[08:59:28.364] TRACE: CandidateFilter: SNK - Neo Geo CD: King of Fighters '94, The (World) (En,Ja) (Rev 1): 1 candidate before filtering
[08:59:28.365] TRACE: CandidateFilter: SNK - Neo Geo CD: King of Fighters '94, The (World) (En,Ja) (Rev 1): 1 candidate after filtering
[08:59:28.365] TRACE: CandidateFilter: SNK - Neo Geo CD: King of Fighters '95, The (World) (En,Ja): 1 candidate before filtering
[08:59:28.365] TRACE: CandidateFilter: SNK - Neo Geo CD: King of Fighters '95, The (World) (En,Ja): 1 candidate after filtering
[08:59:28.366] TRACE: CandidateFilter: SNK - Neo Geo CD: King of Fighters '96, The (World) (En,Ja): 1 candidate before filtering
[08:59:28.366] TRACE: CandidateFilter: SNK - Neo Geo CD: King of Fighters '96, The (World) (En,Ja): 1 candidate after filtering
[08:59:28.366] TRACE: CandidateFilter: SNK - Neo Geo CD: Galaxy Fight - Universal Warriors (Japan) (En,Ja,Es): 1 candidate before filtering
[08:59:28.367] TRACE: CandidateFilter: SNK - Neo Geo CD: Galaxy Fight - Universal Warriors (Japan) (En,Ja,Es): 1 candidate after filtering
[08:59:28.367] TRACE: CandidateFilter: SNK - Neo Geo CD: Fire Suplex ~ 3 Count Bout (World) (En,Ja): 1 candidate before filtering
[08:59:28.367] TRACE: CandidateFilter: SNK - Neo Geo CD: Fire Suplex ~ 3 Count Bout (World) (En,Ja): 1 candidate after filtering
[08:59:28.367] TRACE: CandidateFilter: SNK - Neo Geo CD: Dunk Dream ~ Street Slam ~ Street Hoop (World): 1 candidate before filtering
[08:59:28.368] TRACE: CandidateFilter: SNK - Neo Geo CD: Dunk Dream ~ Street Slam ~ Street Hoop (World): 1 candidate after filtering
[08:59:28.368] TRACE: CandidateFilter: SNK - Neo Geo CD: Double Dragon (Japan) (En,Ja) (Rev 1): 1 candidate before filtering
[08:59:28.369] TRACE: CandidateFilter: SNK - Neo Geo CD: Double Dragon (Japan) (En,Ja) (Rev 1): 1 candidate after filtering
[08:59:28.369] TRACE: CandidateFilter: SNK - Neo Geo CD: Shinsetsu Samurai Spirits - Bushidou Retsuden (Japan): 1 candidate before filtering
[08:59:28.369] TRACE: CandidateFilter: SNK - Neo Geo CD: Shinsetsu Samurai Spirits - Bushidou Retsuden (Japan): 1 candidate after filtering
[08:59:28.369] TRACE: CandidateFilter: SNK - Neo Geo CD: Samurai Spirits ~ Samurai Shodown (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.370] TRACE: CandidateFilter: SNK - Neo Geo CD: Samurai Spirits ~ Samurai Shodown (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.370] TRACE: CandidateFilter: SNK - Neo Geo CD: Shin Samurai Spirits - Haoumaru Jigokuhen ~ Samurai Shodown II (World) (En,Ja): 1 candidate before filtering
[08:59:28.370] TRACE: CandidateFilter: SNK - Neo Geo CD: Shin Samurai Spirits - Haoumaru Jigokuhen ~ Samurai Shodown II (World) (En,Ja): 1 candidate after filtering
[08:59:28.371] TRACE: CandidateFilter: SNK - Neo Geo CD: King of Fighters '94, The (World) (En,Ja): 1 candidate before filtering
[08:59:28.371] TRACE: CandidateFilter: SNK - Neo Geo CD: King of Fighters '94, The (World) (En,Ja): 1 candidate after filtering
[08:59:28.371] TRACE: CandidateFilter: SNK - Neo Geo CD: King of Fighters '97, The (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.371] TRACE: CandidateFilter: SNK - Neo Geo CD: King of Fighters '97, The (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.372] TRACE: CandidateFilter: SNK - Neo Geo CD: Quiz King of Fighters (Japan): 1 candidate before filtering
[08:59:28.372] TRACE: CandidateFilter: SNK - Neo Geo CD: Quiz King of Fighters (Japan): 1 candidate after filtering
[08:59:28.372] TRACE: CandidateFilter: SNK - Neo Geo CD: Metal Slug (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.372] TRACE: CandidateFilter: SNK - Neo Geo CD: Metal Slug (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.373] TRACE: CandidateFilter: SNK - Neo Geo CD: Metal Slug 2 (World) (En,Ja): 1 candidate before filtering
[08:59:28.373] TRACE: CandidateFilter: SNK - Neo Geo CD: Metal Slug 2 (World) (En,Ja): 1 candidate after filtering
[08:59:28.373] TRACE: CandidateFilter: SNK - Neo Geo CD: Last Resort (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.373] TRACE: CandidateFilter: SNK - Neo Geo CD: Last Resort (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.374] TRACE: CandidateFilter: SNK - Neo Geo CD: King of Fighters '98, The - Dream Match Never Ends ~ The King of Fighters '98 - The Slugfest (Japan) (En,Ja): 1
candidate before filtering
[08:59:28.374] TRACE: CandidateFilter: SNK - Neo Geo CD: King of Fighters '98, The - Dream Match Never Ends ~ The King of Fighters '98 - The Slugfest (Japan) (En,Ja): 1
candidate after filtering
[08:59:28.374] TRACE: CandidateFilter: SNK - Neo Geo CD: World Heroes Perfect (World) (En,Ja): 1 candidate before filtering
[08:59:28.375] TRACE: CandidateFilter: SNK - Neo Geo CD: World Heroes Perfect (World) (En,Ja): 1 candidate after filtering
[08:59:28.375] TRACE: CandidateFilter: SNK - Neo Geo CD: Tsuukai Gangan Koushinkyoku ~ Aggressors of Dark Kombat (World) (En,Ja): 1 candidate before filtering
[08:59:28.375] TRACE: CandidateFilter: SNK - Neo Geo CD: Tsuukai Gangan Koushinkyoku ~ Aggressors of Dark Kombat (World) (En,Ja): 1 candidate after filtering
[08:59:28.376] TRACE: CandidateFilter: SNK - Neo Geo CD: Power Spikes II (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.376] TRACE: CandidateFilter: SNK - Neo Geo CD: Power Spikes II (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.376] TRACE: CandidateFilter: SNK - Neo Geo CD: Double Dragon (Export) (En,Ja): 1 candidate before filtering
[08:59:28.376] TRACE: CandidateFilter: SNK - Neo Geo CD: Double Dragon (Export) (En,Ja): 1 candidate after filtering
[08:59:28.377] TRACE: CandidateFilter: SNK - Neo Geo CD: Garou Densetsu 3 - Road to the Final Victory ~ Fatal Fury 3 - Road to the Final Victory (Japan) (En,Ja,Es,Pt): 0
candidates before filtering
[08:59:28.377] TRACE: CandidateFilter: SNK - Neo Geo CD: Garou Densetsu 3 - Road to the Final Victory ~ Fatal Fury 3 - Road to the Final Victory (Japan) (En,Ja,Es,Pt): 0
candidates after filtering
[08:59:28.377] TRACE: CandidateFilter: SNK - Neo Geo CD: Garou Densetsu 3 - Road to the Final Victory ~ Fatal Fury 3 - Road to the Final Victory (Export) (En,Ja,Es,Pt) (Rev
3): 1 candidate before filtering
[08:59:28.378] TRACE: CandidateFilter: SNK - Neo Geo CD: Garou Densetsu 3 - Road to the Final Victory ~ Fatal Fury 3 - Road to the Final Victory (Export) (En,Ja,Es,Pt) (Rev
3): 1 candidate after filtering
[08:59:28.378] TRACE: CandidateFilter: SNK - Neo Geo CD: Real Bout Garou Densetsu ~ Real Bout Fatal Fury (World) (En,Ja,Es,Pt): 1 candidate before filtering
[08:59:28.379] TRACE: CandidateFilter: SNK - Neo Geo CD: Real Bout Garou Densetsu ~ Real Bout Fatal Fury (World) (En,Ja,Es,Pt): 1 candidate after filtering
[08:59:28.379] TRACE: CandidateFilter: SNK - Neo Geo CD: Samurai Spirits - Amakusa Kourin ~ Samurai Shodown IV - Amakusa's Revenge (World) (En,Ja,Es,Pt): 1 candidate before
filtering
[08:59:28.380] TRACE: CandidateFilter: SNK - Neo Geo CD: Samurai Spirits - Amakusa Kourin ~ Samurai Shodown IV - Amakusa's Revenge (World) (En,Ja,Es,Pt): 1 candidate after
filtering
[08:59:28.380] TRACE: CandidateFilter: SNK - Neo Geo CD: Neo-Geo CD Special (Japan): 1 candidate before filtering
[08:59:28.380] TRACE: CandidateFilter: SNK - Neo Geo CD: Neo-Geo CD Special (Japan): 1 candidate after filtering
[08:59:28.381] TRACE: CandidateFilter: SNK - Neo Geo CD: Ryuuko no Ken 2 ~ Art of Fighting 2 (World) (En,Ja,Es): 1 candidate before filtering
[08:59:28.381] TRACE: CandidateFilter: SNK - Neo Geo CD: Ryuuko no Ken 2 ~ Art of Fighting 2 (World) (En,Ja,Es): 1 candidate after filtering
[08:59:28.381] TRACE: CandidateFilter: SNK - Neo Geo CD: Art of Fighting - Ryuuko no Ken Gaiden ~ The Path of the Warrior - Art of Fighting 3 (World) (En,Ja,Es,Pt): 1
candidate before filtering
[08:59:28.382] TRACE: CandidateFilter: SNK - Neo Geo CD: Art of Fighting - Ryuuko no Ken Gaiden ~ The Path of the Warrior - Art of Fighting 3 (World) (En,Ja,Es,Pt): 1
candidate after filtering
[08:59:28.382] TRACE: CandidateFilter: SNK - Neo Geo CD: Real Bout Garou Densetsu Special ~ Real Bout Fatal Fury Special (World) (En,Ja,Es,Pt): 1 candidate before filtering
[08:59:28.383] TRACE: CandidateFilter: SNK - Neo Geo CD: Real Bout Garou Densetsu Special ~ Real Bout Fatal Fury Special (World) (En,Ja,Es,Pt): 1 candidate after filtering
[08:59:28.384] TRACE: CandidateFilter: SNK - Neo Geo CD: World Heroes 2 Jet (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.384] TRACE: CandidateFilter: SNK - Neo Geo CD: World Heroes 2 Jet (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.384] TRACE: CandidateFilter: SNK - Neo Geo CD: Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.385] TRACE: CandidateFilter: SNK - Neo Geo CD: Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.385] TRACE: CandidateFilter: SNK - Neo Geo CD: Choujin Gakuen - Gowcaizer (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.386] TRACE: CandidateFilter: SNK - Neo Geo CD: Choujin Gakuen - Gowcaizer (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.386] TRACE: CandidateFilter: SNK - Neo Geo CD: Next Thing, The - King of the Monsters 2 (World) (En,Ja): 1 candidate before filtering
[08:59:28.387] TRACE: CandidateFilter: SNK - Neo Geo CD: Next Thing, The - King of the Monsters 2 (World) (En,Ja): 1 candidate after filtering
[08:59:28.387] TRACE: CandidateFilter: SNK - Neo Geo CD: King of Fighters '99, The ~ The King of Fighters '99 - Millennium Battle (World) (En,Ja,Es,Pt): 1 candidate before
filtering
[08:59:28.387] TRACE: CandidateFilter: SNK - Neo Geo CD: King of Fighters '99, The ~ The King of Fighters '99 - Millennium Battle (World) (En,Ja,Es,Pt): 1 candidate after
filtering
[08:59:28.388] TRACE: CandidateFilter: SNK - Neo Geo CD: Tokuten-ou 3 - Eikou e no Chousen ~ Super Sidekicks 3 - The Next Glory (World) (En,Ja,Fr,Es,It,Pt): 1 candidate
before filtering
[08:59:28.389] TRACE: CandidateFilter: SNK - Neo Geo CD: Tokuten-ou 3 - Eikou e no Chousen ~ Super Sidekicks 3 - The Next Glory (World) (En,Ja,Fr,Es,It,Pt): 1 candidate after
filtering
[08:59:28.389] TRACE: CandidateFilter: SNK - Neo Geo CD: Garou Densetsu 3 - Road to the Final Victory ~ Fatal Fury 3 - Road to the Final Victory (World) (En,Ja,Es,Pt) (Rev
1): 0 candidates before filtering
[08:59:28.390] TRACE: CandidateFilter: SNK - Neo Geo CD: Garou Densetsu 3 - Road to the Final Victory ~ Fatal Fury 3 - Road to the Final Victory (World) (En,Ja,Es,Pt) (Rev
1): 0 candidates after filtering
[08:59:28.393] TRACE: CandidateFilter: SNK - Neo Geo CD: Ryuuko no Ken ~ Art of Fighting (World) (En,Ja,Es): 1 candidate before filtering
[08:59:28.393] TRACE: CandidateFilter: SNK - Neo Geo CD: Ryuuko no Ken ~ Art of Fighting (World) (En,Ja,Es): 1 candidate after filtering
[08:59:28.393] TRACE: CandidateFilter: SNK - Neo Geo CD: Garou Densetsu 2 ~ Fatal Fury 2 (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.394] TRACE: CandidateFilter: SNK - Neo Geo CD: Garou Densetsu 2 ~ Fatal Fury 2 (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.395] TRACE: CandidateFilter: SNK - Neo Geo CD: Garou Densetsu 3 - Road to the Final Victory ~ Fatal Fury 3 - Road to the Final Victory (Export) (En,Ja,Es,Pt) (Rev
2): 1 candidate before filtering
[08:59:28.395] TRACE: CandidateFilter: SNK - Neo Geo CD: Garou Densetsu 3 - Road to the Final Victory ~ Fatal Fury 3 - Road to the Final Victory (Export) (En,Ja,Es,Pt) (Rev
2): 1 candidate after filtering
[08:59:28.396] TRACE: CandidateFilter: SNK - Neo Geo CD: Garou Densetsu Special ~ Fatal Fury Special (World) (En,Ja) (Rev 1): 0 candidates before filtering
[08:59:28.397] TRACE: CandidateFilter: SNK - Neo Geo CD: Garou Densetsu Special ~ Fatal Fury Special (World) (En,Ja) (Rev 1): 0 candidates after filtering
[08:59:28.397] TRACE: CandidateFilter: SNK - Neo Geo CD: Samurai Spirits - Zankurou Musouken ~ Samurai Shodown III (World) (En,Ja,Es,Pt): 1 candidate before filtering
[08:59:28.397] TRACE: CandidateFilter: SNK - Neo Geo CD: Samurai Spirits - Zankurou Musouken ~ Samurai Shodown III (World) (En,Ja,Es,Pt): 1 candidate after filtering
[08:59:28.398] TRACE: CandidateFilter: SNK - Neo Geo CD: Fighter's History Dynamite ~ Karnov's Revenge (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.398] TRACE: CandidateFilter: SNK - Neo Geo CD: Fighter's History Dynamite ~ Karnov's Revenge (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.399] TRACE: CandidateFilter: SNK - Neo Geo CD: Crossed Swords (Japan): 1 candidate before filtering
[08:59:28.399] TRACE: CandidateFilter: SNK - Neo Geo CD: Crossed Swords (Japan): 1 candidate after filtering
[08:59:28.400] TRACE: CandidateFilter: SNK - Neo Geo CD: King of Fighters '95, The (Japan) (En,Ja) (Rev 1): 1 candidate before filtering
[08:59:28.400] TRACE: CandidateFilter: SNK - Neo Geo CD: King of Fighters '95, The (Japan) (En,Ja) (Rev 1): 1 candidate after filtering
[08:59:28.401] TRACE: CandidateFilter: SNK - Neo Geo CD: Puzzle Bobble ~ Bust-A-Move (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.401] TRACE: CandidateFilter: SNK - Neo Geo CD: Puzzle Bobble ~ Bust-A-Move (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.401] TRACE: CandidateFilter: SNK - Neo Geo CD: League Bowling (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.402] TRACE: CandidateFilter: SNK - Neo Geo CD: League Bowling (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.402] TRACE: CandidateFilter: SNK - Neo Geo CD: Ninja Master's - Haou Ninpou Chou (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.403] TRACE: CandidateFilter: SNK - Neo Geo CD: Ninja Master's - Haou Ninpou Chou (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.403] TRACE: CandidateFilter: SNK - Neo Geo CD: Far East of Eden - Tengai Makyou Shinden ~ Far East of Eden - Kabuki Klash (Japan) (En,Ja): 1 candidate before
filtering
[08:59:28.404] TRACE: CandidateFilter: SNK - Neo Geo CD: Far East of Eden - Tengai Makyou Shinden ~ Far East of Eden - Kabuki Klash (Japan) (En,Ja): 1 candidate after
filtering
[08:59:28.405] TRACE: CandidateFilter: SNK - Neo Geo CD: World Heroes (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.405] TRACE: CandidateFilter: SNK - Neo Geo CD: World Heroes (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.406] TRACE: CandidateFilter: SNK - Neo Geo CD: World Heroes 2 (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.406] TRACE: CandidateFilter: SNK - Neo Geo CD: World Heroes 2 (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.406] TRACE: CandidateFilter: SNK - Neo Geo CD: Garou Densetsu - Shukumei no Tatakai ~ Fatal Fury - King of Fighters (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.407] TRACE: CandidateFilter: SNK - Neo Geo CD: Garou Densetsu - Shukumei no Tatakai ~ Fatal Fury - King of Fighters (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.407] TRACE: CandidateFilter: SNK - Neo Geo CD: RB2 - The Newcomers - Real Bout Garou Densetsu 2 ~ RB2 - The Newcomers - Real Bout Fatal Fury 2 (Japan) (En,Ja): 1
candidate before filtering
[08:59:28.408] TRACE: CandidateFilter: SNK - Neo Geo CD: RB2 - The Newcomers - Real Bout Garou Densetsu 2 ~ RB2 - The Newcomers - Real Bout Fatal Fury 2 (Japan) (En,Ja): 1
candidate after filtering
[08:59:28.409] TRACE: CandidateFilter: SNK - Neo Geo CD: Flying Power Disc ~ Windjammers (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.409] TRACE: CandidateFilter: SNK - Neo Geo CD: Flying Power Disc ~ Windjammers (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.410] TRACE: CandidateFilter: SNK - Neo Geo CD: Bakumatsu Roman - Gekka no Kenshi ~ The Last Blade (Japan) (En,Ja,Es,Pt): 1 candidate before filtering
[08:59:28.410] TRACE: CandidateFilter: SNK - Neo Geo CD: Bakumatsu Roman - Gekka no Kenshi ~ The Last Blade (Japan) (En,Ja,Es,Pt): 1 candidate after filtering
[08:59:28.411] TRACE: CandidateFilter: SNK - Neo Geo CD: Bakumatsu Roman Daini Maku - Gekka no Kenshi - Tsuki ni Saku Hana, Chiri Yuku Hana ~ The Last Blade 2 (Japan)
(En,Ja,Es,Pt): 1 candidate before filtering
[08:59:28.411] TRACE: CandidateFilter: SNK - Neo Geo CD: Bakumatsu Roman Daini Maku - Gekka no Kenshi - Tsuki ni Saku Hana, Chiri Yuku Hana ~ The Last Blade 2 (Japan)
(En,Ja,Es,Pt): 1 candidate after filtering
[08:59:28.412] TRACE: CandidateFilter: SNK - Neo Geo CD: Football Frenzy (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.412] TRACE: CandidateFilter: SNK - Neo Geo CD: Football Frenzy (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.413] TRACE: CandidateFilter: SNK - Neo Geo CD: Tokuten-ou 2 ~ Super Sidekicks 2 - The World Championship (Japan) (En,Ja,Es): 1 candidate before filtering
[08:59:28.413] TRACE: CandidateFilter: SNK - Neo Geo CD: Tokuten-ou 2 ~ Super Sidekicks 2 - The World Championship (Japan) (En,Ja,Es): 1 candidate after filtering
[08:59:28.413] TRACE: CandidateFilter: SNK - Neo Geo CD: Sonic Wings 3 ~ Aero Fighters 3 (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.414] TRACE: CandidateFilter: SNK - Neo Geo CD: Sonic Wings 3 ~ Aero Fighters 3 (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.414] TRACE: CandidateFilter: SNK - Neo Geo CD: Idol Mahjong - Final Romance 2 (Japan): 1 candidate before filtering
[08:59:28.415] TRACE: CandidateFilter: SNK - Neo Geo CD: Idol Mahjong - Final Romance 2 (Japan): 1 candidate after filtering
[08:59:28.415] TRACE: CandidateFilter: SNK - Neo Geo CD: Fuuun Mokushiroku - Kakutou Sousei ~ Savage Reign (World) (En,Ja,Es,Pt): 1 candidate before filtering
[08:59:28.416] TRACE: CandidateFilter: SNK - Neo Geo CD: Fuuun Mokushiroku - Kakutou Sousei ~ Savage Reign (World) (En,Ja,Es,Pt): 1 candidate after filtering
[08:59:28.416] TRACE: CandidateFilter: SNK - Neo Geo CD: Stakes Winner - GI Kanzen Seiha e no Michi (Japan): 1 candidate before filtering
[08:59:28.416] TRACE: CandidateFilter: SNK - Neo Geo CD: Stakes Winner - GI Kanzen Seiha e no Michi (Japan): 1 candidate after filtering
[08:59:28.417] TRACE: CandidateFilter: SNK - Neo Geo CD: Pulstar (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.417] TRACE: CandidateFilter: SNK - Neo Geo CD: Pulstar (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.418] TRACE: CandidateFilter: SNK - Neo Geo CD: Magical Drop 2 (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.418] TRACE: CandidateFilter: SNK - Neo Geo CD: Magical Drop 2 (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.418] TRACE: CandidateFilter: SNK - Neo Geo CD: ADK World (Japan): 1 candidate before filtering
[08:59:28.419] TRACE: CandidateFilter: SNK - Neo Geo CD: ADK World (Japan): 1 candidate after filtering
[08:59:28.419] TRACE: CandidateFilter: SNK - Neo Geo CD: Burning Fight (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.419] TRACE: CandidateFilter: SNK - Neo Geo CD: Burning Fight (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.420] TRACE: CandidateFilter: SNK - Neo Geo CD: Joy Joy Kid ~ Puzzled (World) (En,Ja): 1 candidate before filtering
[08:59:28.420] TRACE: CandidateFilter: SNK - Neo Geo CD: Joy Joy Kid ~ Puzzled (World) (En,Ja): 1 candidate after filtering
[08:59:28.421] TRACE: CandidateFilter: SNK - Neo Geo CD: King of Fighters '96 NeoGeo Collection, The (Japan): 1 candidate before filtering
[08:59:28.421] TRACE: CandidateFilter: SNK - Neo Geo CD: King of Fighters '96 NeoGeo Collection, The (Japan): 1 candidate after filtering
[08:59:28.421] TRACE: CandidateFilter: SNK - Neo Geo CD: Janshin Densetsu - Quest of Jongmaster (Japan): 1 candidate before filtering
[08:59:28.422] TRACE: CandidateFilter: SNK - Neo Geo CD: Janshin Densetsu - Quest of Jongmaster (Japan): 1 candidate after filtering
[08:59:28.422] TRACE: CandidateFilter: SNK - Neo Geo CD: Mahjong-kyou Retsuden - Nishi Nihon-hen (Japan): 1 candidate before filtering
[08:59:28.423] TRACE: CandidateFilter: SNK - Neo Geo CD: Mahjong-kyou Retsuden - Nishi Nihon-hen (Japan): 1 candidate after filtering
[08:59:28.423] TRACE: CandidateFilter: SNK - Neo Geo CD: Nam-1975 (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.423] TRACE: CandidateFilter: SNK - Neo Geo CD: Nam-1975 (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.424] TRACE: CandidateFilter: SNK - Neo Geo CD: Ninja Combat (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.424] TRACE: CandidateFilter: SNK - Neo Geo CD: Ninja Combat (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.424] TRACE: CandidateFilter: SNK - Neo Geo CD: Riding Hero (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.425] TRACE: CandidateFilter: SNK - Neo Geo CD: Riding Hero (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.428] TRACE: CandidateFilter: SNK - Neo Geo CD: Robo Army (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.428] TRACE: CandidateFilter: SNK - Neo Geo CD: Robo Army (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.429] TRACE: CandidateFilter: SNK - Neo Geo CD: Baseball Stars 2 (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.429] TRACE: CandidateFilter: SNK - Neo Geo CD: Baseball Stars 2 (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.429] TRACE: CandidateFilter: SNK - Neo Geo CD: Fuuun Mokushiroku - Kakutou Sousei ~ Savage Reign (Export) (En,Ja,Es,Pt) (Rev 1): 1 candidate before filtering
[08:59:28.430] TRACE: CandidateFilter: SNK - Neo Geo CD: Fuuun Mokushiroku - Kakutou Sousei ~ Savage Reign (Export) (En,Ja,Es,Pt) (Rev 1): 1 candidate after filtering
[08:59:28.430] TRACE: CandidateFilter: SNK - Neo Geo CD: Crossed Swords II (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.431] TRACE: CandidateFilter: SNK - Neo Geo CD: Crossed Swords II (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.431] TRACE: CandidateFilter: SNK - Neo Geo CD: Treasure of the Caribbean (France) (En,Ja) (Unl): 0 candidates before filtering
[08:59:28.431] TRACE: CandidateFilter: SNK - Neo Geo CD: Treasure of the Caribbean (France) (En,Ja) (Unl): 0 candidates after filtering
[08:59:28.432] TRACE: CandidateFilter: SNK - Neo Geo CD: Baseball Stars Professional (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.432] TRACE: CandidateFilter: SNK - Neo Geo CD: Baseball Stars Professional (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.432] TRACE: CandidateFilter: SNK - Neo Geo CD: Breakers (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.432] TRACE: CandidateFilter: SNK - Neo Geo CD: Breakers (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.433] TRACE: CandidateFilter: SNK - Neo Geo CD: Big Tournament Golf ~ Neo Turf Masters (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.433] TRACE: CandidateFilter: SNK - Neo Geo CD: Big Tournament Golf ~ Neo Turf Masters (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.434] TRACE: CandidateFilter: SNK - Neo Geo CD: Cyber-Lip (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.434] TRACE: CandidateFilter: SNK - Neo Geo CD: Cyber-Lip (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.434] TRACE: CandidateFilter: SNK - Neo Geo CD: Futsal - 5 on 5 Mini Soccer ~ PleasureGoal - 5 on 5 Mini Soccer (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.435] TRACE: CandidateFilter: SNK - Neo Geo CD: Futsal - 5 on 5 Mini Soccer ~ PleasureGoal - 5 on 5 Mini Soccer (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.436] TRACE: CandidateFilter: SNK - Neo Geo CD: Shinouken ~ Ragnagard (Japan) (En,Ja,Es): 1 candidate before filtering
[08:59:28.436] TRACE: CandidateFilter: SNK - Neo Geo CD: Shinouken ~ Ragnagard (Japan) (En,Ja,Es): 1 candidate after filtering
[08:59:28.436] TRACE: CandidateFilter: SNK - Neo Geo CD: Super Sidekicks - Tokuten-ou (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.437] TRACE: CandidateFilter: SNK - Neo Geo CD: Super Sidekicks - Tokuten-ou (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.437] TRACE: CandidateFilter: SNK - Neo Geo CD: Super Spy, The (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.437] TRACE: CandidateFilter: SNK - Neo Geo CD: Super Spy, The (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.438] TRACE: CandidateFilter: SNK - Neo Geo CD: Andro Dunos (France) (Unl): 1 candidate before filtering
[08:59:28.438] TRACE: CandidateFilter: SNK - Neo Geo CD: Andro Dunos (France) (Unl): 1 candidate after filtering
[08:59:28.438] TRACE: CandidateFilter: SNK - Neo Geo CD: Sengoku Denshou 2 ~ Sengoku 2 (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.438] TRACE: CandidateFilter: SNK - Neo Geo CD: Sengoku Denshou 2 ~ Sengoku 2 (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.439] TRACE: CandidateFilter: SNK - Neo Geo CD: Neo Drift Out - New Technology (Japan): 1 candidate before filtering
[08:59:28.439] TRACE: CandidateFilter: SNK - Neo Geo CD: Neo Drift Out - New Technology (Japan): 1 candidate after filtering
[08:59:28.439] TRACE: CandidateFilter: SNK - Neo Geo CD: OverTop (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.440] TRACE: CandidateFilter: SNK - Neo Geo CD: OverTop (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.440] TRACE: CandidateFilter: SNK - Neo Geo CD: Choutetsu Brikin'ger ~ Ironclad - Tesshou Rusha (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.441] TRACE: CandidateFilter: SNK - Neo Geo CD: Choutetsu Brikin'ger ~ Ironclad - Tesshou Rusha (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.441] TRACE: CandidateFilter: SNK - Neo Geo CD: Sengoku Denshou ~ Sengoku (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.441] TRACE: CandidateFilter: SNK - Neo Geo CD: Sengoku Denshou ~ Sengoku (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.441] TRACE: CandidateFilter: SNK - Neo Geo CD: Oshidashi Zintrick ~ ZinTricK (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.442] TRACE: CandidateFilter: SNK - Neo Geo CD: Oshidashi Zintrick ~ ZinTricK (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.442] TRACE: CandidateFilter: SNK - Neo Geo CD: Twinkle Star Sprites (Japan) (En,Ja): 1 candidate before filtering
[08:59:28.442] TRACE: CandidateFilter: SNK - Neo Geo CD: Twinkle Star Sprites (Japan) (En,Ja): 1 candidate after filtering
[08:59:28.442] TRACE: CandidateFilter: SNK - Neo Geo CD: Bang^2 Busters (France) (En,Ja) (Unl): 1 candidate before filtering
[08:59:28.443] TRACE: CandidateFilter: SNK - Neo Geo CD: Bang^2 Busters (France) (En,Ja) (Unl): 1 candidate after filtering
[08:59:28.443] TRACE: CandidateFilter: SNK - Neo Geo CD: Last Hope (Germany) (Unl): 1 candidate before filtering
[08:59:28.443] TRACE: CandidateFilter: SNK - Neo Geo CD: Last Hope (Germany) (Unl): 1 candidate after filtering
[08:59:28.443] TRACE: CandidateFilter: SNK - Neo Geo CD: World Heroes Perfect (Export) (En,Ja) (Rev 1): 1 candidate before filtering
[08:59:28.444] TRACE: CandidateFilter: SNK - Neo Geo CD: World Heroes Perfect (Export) (En,Ja) (Rev 1): 1 candidate after filtering
[08:59:28.444] TRACE: CandidateFilter: SNK - Neo Geo CD: Xeno Crisis (World) (Unl): 1 candidate before filtering
[08:59:28.444] TRACE: CandidateFilter: SNK - Neo Geo CD: Xeno Crisis (World) (Unl): 1 candidate after filtering
[08:59:28.446] DEBUG: CandidateFilter: SNK - Neo Geo CD: filtered to 57.3GiB of 107 candidates for 111 parents
[08:59:28.446] INFO: CandidateFilter: SNK - Neo Geo CD: done filtering candidates
[08:59:28.448] INFO: FixdatCreator: SNK - Neo Geo CD: generating a fixdat
[08:59:28.476] INFO: FixdatCreator: SNK - Neo Geo CD: done generating a fixdat
[08:59:28.476] ERROR: /var/folders/3s/1_v_qynj73sg7jfymxd9dny00000gn/T/igir/eJJ0Ow/SNK - Neo Geo CD fixdat (20230507-085928).dat: fixdat path
[08:59:28.476] INFO: StatusGenerator: SNK - Neo Geo CD: generating ROM statuses
[08:59:28.494] INFO: StatusGenerator: SNK - Neo Geo CD: done generating ROM statuses
โ SNK - Neo Geo CD ยทยทยทยทยทยทยทยทยทยทยทยทยท | 107/111 games, 107/111 retail releases found
[08:59:28.495] INFO: done processing 1 DAT
[08:59:28.498] INFO: ReportGenerator: generating report
[08:59:28.562] DEBUG: ReportGenerator: /Users/jeff/Documents/repositories/igir/igir_2023-05-07T08;59;28.csv: wrote 1 CSV row
[08:59:28.564] INFO: ReportGenerator: done generating report
โ Generating report ยทยทยทยทยทยทยทยทยทยทยทยท | /Users/jeff/Documents/repositories/igir/igir_2023-05-07T08;59;28.csv
[08:59:28.567] INFO: done
1.6.2
18.12.0 / 19.6.0
Linux / MacOS
No response
Ah and also one thing will be neat!
You made this options: --no-demo, --no-beta, --no-sample, etc.
Can you thinking adding: --demo, --beta, --prototype, --aftermarket and --homebrew?
If we make a script we can do what we have in mind. But this kind of options are more quickly to organise some stuff how we want. For exemple, I like to have a folder named aftermarket and put all those games inside.(maybe automatic create folders and put ROMs into it when you write aftermarket, for exemple - it's can be a copy if it's more simple, I mean you can found this game in a folder b - still an exemple - and into aftermarket also)
Thank you :)
Originally posted by @21millStreets in #484 (comment)
No response
For:
parent/clone information is missing for a significant number of games.
Develop a parent/clone inference module that runs before the candidate generator & filter.
Converted from #423.
npx igir@latest move zip test clean report \ --dat "./No-Intro*.zip" \ --input "./No-Intro/" \ --output "./No-Intro/" \ --no-bios \ --no-bad \ --single \ --no-beta \ --no-demo \ --no-prototype \ --no-test-roms \ --prefer-language FR \ --prefer-region USA,WORLD,EUR,JPN \ --prefer-revision-newer \ --prefer-retail \ --language-filter FR,EN \ --filter-regex-exclude "/(InfoGenius)/i" \ --dir-dat-name
The script moved all the versions of the rom
Warp Coin Catastrophe, The (World) (v1.0) (Aftermarket) (Unl).zip
Warp Coin Catastrophe, The (World) (v1.1) (Aftermarket) (Unl).zip
Warp Coin Catastrophe, The (World) (v1.1.2) (Aftermarket) (Unl).zip
With --prefer-revision-newer argument I expected that the script will keep only the last revision of the file, i-e:
Warp Coin Catastrophe, The (World) (v1.1.2) (Aftermarket) (Unl).zip
N/A
v20.1.0
Apple M1 - 13.4
No response
Popular SBC devices like Miyoo Mini and Anbernic RG35XX often run the CFW Onion/GarlicOS, which has it's own expected directory structure. It would be great to have the ability to output following this convention, similar to the Analogue Pocket and MiSTer FPGA options.
{onion}
option that behaves identically to {pocket}
and {mister}
, but uses the directory names Onion expects.
See each emulator's magically named folder documented here:
https://github.com/OnionUI/Onion/wiki/Emulators
sudo ./igir move zip report --input ./RomsUnsorted/Atari800 --output ./TOSEC --dat ./TOSEC.zip --dir-dat-name --dat-threads 4 --dir-dat-name
I get an error with .zip archives containing the same title in two versions of the emulator file, e.g.
Bruce_Lee.zip
Sometime archive is parsed only with Error and continues processing:
INFO: PatchCandidateGenerator: Atari 8bit - Sources - [CAS]: Generating patched candidates
DEBUG: PatchCandidateGenerator: Atari 8bit - Sources - [CAS]: 0 unique patches found
INFO: PatchCandidateGenerator: Atari 8bit - Sources - [CAS]: Done generating patched candidates
INFO: CandidateFilter: Atari 8bit - Sources - [CAS]: Filtering candidates
DEBUG: CandidateFilter: Atari 8bit - Sources - [CAS]: No parent has candidates
INFO: StatusGenerator: Atari 8bit - Sources - [CAS]: Generating ROM statuses
INFO: StatusGenerator: Atari 8bit - Sources - [CAS]: Done generating ROM statuses
INFO: ROMWriter: Atari 8bit - - [ATX]: Done writing candidates
INFO: StatusGenerator: Atari 8bit - - [ATX]: Generating ROM statuses
INFO: StatusGenerator: Atari 8bit - - [ATX]: Done generating ROM statuses
โ Atari 8bit - - [ATX] ยทยทยทยทยทยทยทยทยท | 1/98 games, 1/98 retail releases written
ERROR: ROMWriter: Atari 8bit - - [XEX]: RomsUnsorted/Atari800-2/Bang!_Bank!.zip: failed to delete
INFO: ROMWriter: Atari 8bit - - [XEX]: Done writing candidates372/372
INFO: StatusGenerator: Atari 8bit - - [XEX]: Generating ROM statuses3,007
INFO: StatusGenerator: Atari 8bit - - [XEX]: Done generating ROM statuses
โ Atari 8bit - - [XEX] ยทยทยทยทยทยทยทยทยท | 1/3,007 games, 0/2,829 retail releases written
ERROR: ROMWriter: Atari 8bit - - [CAS]: RomsUnsorted/Atari800-2/Bruce_Lee.zip: failed to delete
INFO: ROMWriter: Atari 8bit - - [CAS]: Done writing candidates372/372
INFO: StatusGenerator: Atari 8bit - - [CAS]: Generating ROM statuses
INFO: StatusGenerator: Atari 8bit - - [CAS]: Done generating ROM statuses
โ Atari 8bit - - [CAS] ยทยทยทยทยทยทยทยทยท | 1/372 games, 1/362 retail releases written
INFO: Done processing 42 DATs
INFO: ReportGenerator: Generating report
DEBUG: ReportGenerator: TOSEC-Atari/igir_2023-03-21T12;37;47+01;00.csv: wrote 42 statuses
INFO: ReportGenerator: Done generating report
โ Generating report ยทยทยทยทยทยทยทยทยทยทยทยท | TOSEC-Atari/igir_2023-03-21T12;37;47+01;00.csv
tomek@Legion:/mnt/u/Retro$ sudo ./igir move zip report --input ./RomsUnsorted/Atari800-2 --output ./TOSEC-Atari --dat ./TOSEC-Atari.ZIP --dir-dat-name --dat-threads 4 --dir-dat-name -vv
______ ______ ______ _______
| \ / \ | \| \
\$$$$$$| $$$$$$\ \$$$$$$| $$$$$$$\
| $$ | $$ __\$$ | $$ | $$__| $$
| $$ | $$| \ | $$ | $$ $$ ROM collection manager
| $$ | $$ \$$$$ | $$ | $$$$$$$\
_| $$_ | $$__| $$ _| $$_ | $$ | $$ v1.4.0
| $$ \ \$$ $$| $$ \| $$ | $$
\$$$$$$ \$$$$$$ \$$$$$$ \$$ \$$
INFO: DATScanner: Scanning DAT files
DEBUG: DATScanner: Found 1 DAT file
DEBUG: DATScanner: Enumerating DAT archives
DEBUG: DATScanner: Deserializing DAT XML to objects
DEBUG: DATScanner: Parsing DAT files
INFO: DATScanner: Done scanning DAT files
โ Scanning for DATs ยทยทยทยทยทยทยทยทยทยทยทยท | 42 unique DATs found
INFO: ROMScanner: Scanning ROM files
DEBUG: ROMScanner: Found 5,494 ROM files
INFO: ROMScanner: Done scanning ROM files
โ Scanning for ROMs ยทยทยทยทยทยทยทยทยทยทยทยท | 6,028 unique ROMs found
INFO: HeaderProcessor: Processing file headers
INFO: HeaderProcessor: Done processing file headers
โ Detecting ROM headers ยทยทยทยทยทยทยทยท | 6,028 ROMs processed
INFO: Processing 42 DATs
INFO: CandidateFilter: Atari 8bit - - [ATX]: Generating candidates
INFO: CandidateFilter: Atari 8bit - - [BAS]: Generating candidates744
INFO: CandidateFilter: Atari 8bit - - [BIN]: Generating candidates
INFO: CandidateFilter: Atari 8bit - - [ATR]: Generating candidates8
DEBUG: CandidateFilter: Atari 8bit - - [BAS]: 6,028 unique ROMs found
DEBUG: CandidateFilter: Atari 8bit - - [BIN]: 6,028 unique ROMs found8
DEBUG: CandidateFilter: Atari 8bit - - [ATR]: 6,028 unique ROMs found8
DEBUG: CandidateFilter: Atari 8bit - - [ATX]: 6,028 unique ROMs found8
DEBUG: CandidateFilter: Atari 8bit - - [ATX]: generated 756.6KiB of 8 candidates for 98 parents
INFO: CandidateFilter: Atari 8bit - - [ATX]: Done generating candidates
INFO: PatchCandidateGenerator: Atari 8bit - - [ATX]: Generating patched candidates
DEBUG: PatchCandidateGenerator: Atari 8bit - - [ATX]: 0 unique patches found
INFO: PatchCandidateGenerator: Atari 8bit - - [ATX]: Done generating patched candidates
INFO: CandidateFilter: Atari 8bit - - [ATX]: Filtering candidates8
DEBUG: CandidateFilter: Atari 8bit - - [ATX]: filtered to 756.6KiB of 8 candidates for 98 parents
INFO: CandidateFilter: Atari 8bit - - [ATX]: Done filtering candidates
INFO: ROMWriter: Atari 8bit - - [ATX]: Writing candidatesโโ | 0/98
DEBUG: ROMWriter: Atari 8bit - - [ATX]: Deleting moved files
INFO: ROMWriter: Atari 8bit - - [ATX]: Done writing candidates36/5,744 | ETA: 41m
INFO: StatusGenerator: Atari 8bit - - [ATX]: Generating ROM statuses
INFO: StatusGenerator: Atari 8bit - - [ATX]: Done generating ROM statuses
โ Atari 8bit - - [ATX] ยทยทยทยทยทยทยทยทยท | 8/98 games, 8/98 retail releases written
INFO: CandidateFilter: Atari 8bit - - [CAS]: Generating candidates
DEBUG: CandidateFilter: Atari 8bit - - [CAS]: 6,028 unique ROMs found
DEBUG: CandidateFilter: Atari 8bit - - [BIN]: generated 2.7MiB of 116 candidates for 299 parents
INFO: CandidateFilter: Atari 8bit - - [BIN]: Done generating candidates| ETA: 41m
INFO: PatchCandidateGenerator: Atari 8bit - - [BIN]: Generating patched candidates
cut to fit 65536 characters....
โ Atari 8bit - Educational - [XE | 3/25 games, 3/25 retail releases written
INFO: ROMWriter: Atari 8bit - Magazines - [ATR]: Done writing candidates
INFO: StatusGenerator: Atari 8bit - Magazines - [ATR]: Generating ROM statusesA: 25s
INFO: StatusGenerator: Atari 8bit - Magazines - [ATR]: Done generating ROM statuses
โ Atari 8bit - Magazines - [ATR] | 2/873 games, 2/854 retail releases written
DEBUG: CandidateFilter: Atari 8bit - - [ATR]: generated 157.2MiB of 2,604 candidates for 5,744 parents
INFO: CandidateFilter: Atari 8bit - - [ATR]: Done generating candidates44 | ETA: 1s
INFO: PatchCandidateGenerator: Atari 8bit - - [ATR]: Generating patched candidates
DEBUG: PatchCandidateGenerator: Atari 8bit - - [ATR]: 0 unique patches found
INFO: PatchCandidateGenerator: Atari 8bit - - [ATR]: Done generating patched candidates
INFO: CandidateFilter: Atari 8bit - - [ATR]: Filtering candidates
DEBUG: CandidateFilter: Atari 8bit - - [ATR]: filtered to 157.2MiB of 2,604 candidates for 5,744 parents
INFO: CandidateFilter: Atari 8bit - - [ATR]: Done filtering candidates744
INFO: ROMWriter: Atari 8bit - - [ATR]: Writing candidates
โ Processing DATs ยทยทยทยทยทยทยทยทยทยทยทยทยทยท | โโโโโโโโโโโโโโโโโโโโโโโโโ | 41/42
โ Atari 8bit - - [ATR] ยทยทยทยทยทยทยทยทยท | โโโโโโโโโโโโโโโโโโโโโโโโโ | 301/5,744node:internal/process/promises:288
triggerUncaughtException(err, true /* fromPromise */);
^
[Error: ENOENT: no such file or directory, stat 'RomsUnsorted/Atari800-2/The_Arcade_Machine.zip'] {
errno: -2,
code: 'ENOENT',
syscall: 'stat',
path: 'RomsUnsorted/Atari800-2/The_Arcade_Machine.zip'
}
Node.js v18.15.0
1.4.0
18.15.0
WSL Ubuntu
No response
No
Create a new Homebrew formula such that macOS users can run:
brew install igir
brew upgrade igir
This may require a personal Homebrew tap in order to automate formula updates upon GitHub releases.
Some quick links:
There is an error with this repository's Renovate configuration that needs to be fixed. As a precaution, Renovate will stop PRs until it is resolved.
Location: renovate.json5
Error type: The renovate configuration file contains some invalid settings
Message: npm.packageRules[0]: Each packageRule must contain at least one match* or exclude* selector. Rule: {"groupName":"Dependencies","rangeStrategy":"bump"}
npx igir@latest -vv copy report \
--dat ./Nintendo\ -\ Nintendo\ Entertainment\ System\ \(Headered\)\ \(Parent-Clone\)\ \(20230202-191513\).dat \
--dat ./Nintendo\ -\ Nintendo\ Entertainment\ System\ \(Headerless\)\ \(Parent-Clone\)\ \(20230202-191513\).dat \
--input ./ROMs/nes/Nintendo\ -\ Nintendo\ Entertainment\ System\ \(20220418-114958\)\ \[headered_NES2.0\]/Contra\ \(USA\).zip* \
--output ./No-Intro/ \
--dir-dat-name
Running igir on most of my headered NES ROMs seems to match the DAT files for both the NES headered and headerless versions. The various sizes, CRC, MD5, SHA1 attributes are all different in the DAT files, but yet the result of the command is as if the ROMs are identical between headerless and headered versions.
The outcome of the command results in the same ROM file being copied to No-Intro/Nintendo - Nintendo Entertainment System (Headered)
as well as No-Intro/Nintendo - Nintendo Entertainment System (Headerless)
.
The resulting CSV report has FOUND
for both DAT entries.
When running igir with both headered and headerless DATs, a headered ROM would only match the headered DAT entry, and a headerless ROM would only match the headerless DAT entry.
INFO: DATScanner: Scanning DAT files
DEBUG: DATScanner: Found 2 DAT files
DEBUG: DATScanner: Enumerating DAT archives
DEBUG: DATScanner: Deserializing DAT XML to objects
DEBUG: DATScanner: Parsing DAT files
INFO: DATScanner: Done scanning DAT files
โ Scanning for DATs ยทยทยทยทยทยทยทยทยทยทยทยท | 2 unique DATs found
INFO: ROMScanner: Scanning ROM files
DEBUG: ROMScanner: Found 1 ROM file
INFO: ROMScanner: Done scanning ROM files
โ Scanning for ROMs ยทยทยทยทยทยทยทยทยทยทยทยท | 1 unique ROM found
INFO: HeaderProcessor: Processing file headers
INFO: HeaderProcessor: Done processing file headers
โ Detecting ROM headers ยทยทยทยทยทยทยทยท | 1 ROM processed
INFO: Processing 2 DATs
INFO: CandidateFilter: Nintendo - Nintendo Entertainment System (Headerless) (Parent-Clone): Generating candidates
INFO: CandidateFilter: Nintendo - Nintendo Entertainment System (Headered) (Parent-Clone): Generating candidates
DEBUG: CandidateFilter: Nintendo - Nintendo Entertainment System (Headered) (Parent-Clone): 2 unique ROMs found
DEBUG: CandidateFilter: Nintendo - Nintendo Entertainment System (Headerless) (Parent-Clone): 2 unique ROMs found
DEBUG: CandidateFilter: Nintendo - Nintendo Entertainment System (Headered) (Parent-Clone): generated 128KiB of 1 candidate for 2,501 parents
INFO: CandidateFilter: Nintendo - Nintendo Entertainment System (Headered) (Parent-Clone): Done generating candidates
INFO: PatchCandidateGenerator: Nintendo - Nintendo Entertainment System (Headered) (Parent-Clone): Generating patched candidates
DEBUG: PatchCandidateGenerator: Nintendo - Nintendo Entertainment System (Headered) (Parent-Clone): 0 unique patches found
INFO: PatchCandidateGenerator: Nintendo - Nintendo Entertainment System (Headered) (Parent-Clone): Done generating patched candidates
INFO: CandidateFilter: Nintendo - Nintendo Entertainment System (Headered) (Parent-Clone): Filtering candidates
DEBUG: CandidateFilter: Nintendo - Nintendo Entertainment System (Headered) (Parent-Clone): filtered to 128KiB of 1 candidate for 2,501 parents
INFO: CandidateFilter: Nintendo - Nintendo Entertainment System (Headered) (Parent-Clone): Done filtering candidates
INFO: ROMWriter: Nintendo - Nintendo Entertainment System (Headered) (Parent-Clone): Writing candidates
DEBUG: CandidateFilter: Nintendo - Nintendo Entertainment System (Headerless) (Parent-Clone): generated 128KiB of 1 candidate for 2,501 parents
INFO: CandidateFilter: Nintendo - Nintendo Entertainment System (Headerless) (Parent-Clone): Done generating candidates
INFO: PatchCandidateGenerator: Nintendo - Nintendo Entertainment System (Headerless) (Parent-Clone): Generating patched candidates
DEBUG: PatchCandidateGenerator: Nintendo - Nintendo Entertainment System (Headerless) (Parent-Clone): 0 unique patches found
INFO: PatchCandidateGenerator: Nintendo - Nintendo Entertainment System (Headerless) (Parent-Clone): Done generating patched candidates
INFO: CandidateFilter: Nintendo - Nintendo Entertainment System (Headerless) (Parent-Clone): Filtering candidates
DEBUG: CandidateFilter: Nintendo - Nintendo Entertainment System (Headerless) (Parent-Clone): filtered to 128KiB of 1 candidate for 2,501 parents
INFO: CandidateFilter: Nintendo - Nintendo Entertainment System (Headerless) (Parent-Clone): Done filtering candidates
INFO: ROMWriter: Nintendo - Nintendo Entertainment System (Headerless) (Parent-Clone): Writing candidates
INFO: ROMWriter: Nintendo - Nintendo Entertainment System (Headered) (Parent-Clone): Done writing candidates
INFO: StatusGenerator: Nintendo - Nintendo Entertainment System (Headered) (Parent-Clone): Generating ROM statuses
INFO: StatusGenerator: Nintendo - Nintendo Entertainment System (Headered) (Parent-Clone): Done generating ROM statuses
โ Nintendo - Nintendo Entertainm | 1/4,602 games, 0/5 BIOSes, 1/2,905 retail releases written
INFO: ROMWriter: Nintendo - Nintendo Entertainment System (Headerless) (Parent-Clone): Done writing candidates
INFO: StatusGenerator: Nintendo - Nintendo Entertainment System (Headerless) (Parent-Clone): Generating ROM statuses
INFO: StatusGenerator: Nintendo - Nintendo Entertainment System (Headerless) (Parent-Clone): Done generating ROM statuses
โ Nintendo - Nintendo Entertainm | 1/4,602 games, 0/5 BIOSes, 1/2,905 retail releases written
INFO: Done processing 2 DATs
INFO: ReportGenerator: Generating report
DEBUG: ReportGenerator: No-Intro/igir_2023-02-07T23;46;48-05;00.csv: wrote 2 statuses
INFO: ReportGenerator: Done generating report
โ Generating report ยทยทยทยทยทยทยทยทยทยทยทยท | No-Intro/igir_2023-02-07T23;46;48-05;00.csv
1.2.0
12.22.12
Linux
No response
Great project. Maybe adding thumbnail/artwork support would be a nice addition? (Loaded from https://github.com/libretro-thumbnails/libretro-thumbnails)
.
No response
Hi,
I just try this command:
npx igir copy extract test --dat DAT/Nintendo/Super\ Nintendo\ Entertainment\ System --input ROM --output Assets/{pocket}/common/ --dir-letter
It's work perfectly fine, but I have one issue.
The S folder have 923 files. Pocket works with 500 files into the folders (according the JB, it's between 300 and 500).
I would like to know if we can add an option to limit the number of files for each folder and in this case get a S1 folder, S2 folder, etc.
Thanks :)
Originally posted by @21millStreets in #484
No response
I have a folder like ROMS\ARCADE\Imgs
, ROMS\ATARI\Imgs
I want to include ARCADE and ATARI (first level) but nothing below that. I can specify all possible ROM extensions (zip, 7z, etc. ) with multiple --input but that's a bit awkward
No response
igir move zip test report --input atari-test --output No-Intro-Atari --overwrite --dir-dat-name --single --dat Atari.zip
I don't know if it's a bug or how it's supposed to work, but to clear the source directory of files, I have to repeat the igir move
command three times (in this case, on this set of files).
For example:
Test conditions:
Input directory files: 602
Output directory files: 0
No txt, images, etc
First run:
โ Scanning for DATs ยทยทยทยทยทยทยทยทยทยทยทยท | 3 unique DATs found
โ Scanning for ROMs ยทยทยทยทยทยทยทยทยทยทยทยท | 506 unique ROMs found
โ Detecting ROM headers ยทยทยทยทยทยทยทยท | 506 ROMs processed
โ Atari - 7800 ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท | 0/2 BIOSes, 58/112 retail releases written
โ Atari - ST ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท | 314/314 retail releases written
โ Deleting moved files ยทยทยทยทยทยทยทยทยท | 485 moved files deleted
โ Generating report ยทยทยทยทยทยทยทยทยทยทยทยท | .\igir_2023-04-15T12;21;55.csv
Input directory files: 117 - OK
Output directory files: 379
Second run:
โ Scanning for DATs ยทยทยทยทยทยทยทยทยทยทยทยท | 3 unique DATs found
โ Scanning for ROMs ยทยทยทยทยทยทยทยทยทยทยทยท | 60 unique ROMs found
โ Detecting ROM headers ยทยทยทยทยทยทยทยท | 60 ROMs processed
โ Atari - 7800 ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท | 0/2 BIOSes, 58/112 retail releases written
โ Deleting moved files ยทยทยทยทยทยทยทยทยท | 60 moved files deleted
โ Generating report ยทยทยทยทยทยทยทยทยทยทยทยท | .\igir_2023-04-15T12;30;11.csv
Input directory files: 57 - OK
Output directory files: 381
Third run:
โ Scanning for DATs ยทยทยทยทยทยทยทยทยทยทยทยท | 3 unique DATs found
โ Scanning for ROMs ยทยทยทยทยทยทยทยทยทยทยทยท | 57 unique ROMs found
โ Detecting ROM headers ยทยทยทยทยทยทยทยท | 57 ROMs processed
โ Atari - 7800 ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท | 0/2 BIOSes, 57/112 retail releases written
โ Deleting moved files ยทยทยทยทยทยทยทยทยท | 57 moved files deleted
โ Generating report ยทยทยทยทยทยทยทยทยทยทยทยท | .\igir_2023-04-15T12;41;16.csv
Input directory files: 0 - OK
Output directory files: 381
Why files aren't processed in one run?
1.6.0
igir.exe
Windows 10
No response
igir copy --dat "E:\ROMVault_V3.4.5\DatRoot\7 Retool 1G1R [Redump Console]\Sega - Saturn [EN] (2023-01-27 03-45-33) (Retool 2023-01-30 10-07-00) (324) (-bBdPrv).dat" --input "Z:\3 Redump [Console]\Sega - Saturn" --output "Z:\7 Retool 1G1R [Redump Console]\Sega - Saturn [EN] (Retool)"
Attempting to process a 1G1R dat for Sega Saturn and I receive the attached error. This particular game isn't in the DAT file, just the directory.
No error based on file name.
1.0.2
18.13.0
Windows 10
No response
No
Rather than:
npm run bump:*
npm run release
it would be great to have a GitHub Action that would do all the above, and then create a draft release to be filled out by hand after.
Links:
igir move zip test --input atari-test --output No-Intro --overwrite --dir-dat-name --single --dat "No-Intro Love Pack (PC XML) (2023-03-19).zip" -vv
Interesting error only when processing dozens of files and a complete No-Intro file. When I put about 700+ files in the atari7800 and atarist directories I get the following error, but when using the same files and --dat
contains only atari files then everything finishes without errors
igir move zip test --input atari-test --output No-Intro --overwrite --dir-dat-name --single --dat AtariDAT.zip
______ ______ ______ _______
| \ / \ | \| \
\$$$$$$| $$$$$$\ \$$$$$$| $$$$$$$\
| $$ | $$ __\$$ | $$ | $$__| $$
| $$ | $$| \ | $$ | $$ $$ ROM collection manager
| $$ | $$ \$$$$ | $$ | $$$$$$$\
_| $$_ | $$__| $$ _| $$_ | $$ | $$ v1.5.0
| $$ \ \$$ $$| $$ \| $$ | $$
\$$$$$$ \$$$$$$ \$$$$$$ \$$ \$$
โ Scanning for DATs ยทยทยทยทยทยทยทยทยทยทยทยท | 13 unique DATs found
โ Scanning for ROMs ยทยทยทยทยทยทยทยทยทยทยทยท | 696 unique ROMs found
โ Detecting ROM headers ยทยทยทยทยทยทยทยท | 696 ROMs processed
ERROR: Atari - 7800: No-Intro\Atari - 7800\Asteroids (USA).zip: written zip has the file Asteroids (USA).a78 with the CRC dfb93f40, expected eac69cf0
ERROR: Atari - 7800: No-Intro\Atari - 7800\Choplifter! (USA).zip: written zip has the file Choplifter! (USA).a78 with the CRC 419bff61, expected d3ba607f
ERROR: Atari - 7800: No-Intro\Atari - 7800\Ballblazer (USA).zip: written zip has the file Ballblazer (USA).a78 with the CRC a4c4808b, expected 44615260
ERROR: Atari - 7800: No-Intro\Atari - 7800\Donkey Kong (USA).zip: written zip has the file Donkey Kong (USA).a78 with the CRC 065e063f, expected d7a55f95
ERROR: Atari - 7800: No-Intro\Atari - 7800\Donkey Kong Junior (USA).zip: written zip has the file Donkey Kong Junior (USA).a78 with the CRC 1c5a1082, expected 6e989686
ERROR: Atari - 7800: No-Intro\Atari - 7800\Centipede (USA).zip: written zip has the file Centipede (USA).a78 with the CRC 020efe25, expected 5f94939e
ERROR: Atari - 7800: No-Intro\Atari - 7800\Baseball (Europe).zip: written zip has the file Baseball (Europe).a78 with the CRC 68d48fdc, expected a8189e81
ERROR: Atari - 7800: No-Intro\Atari - 7800\Dig Dug (USA).zip: written zip has the file Dig Dug (USA).a78 with the CRC 50cb13f3, expected 8ead573d
ERROR: Atari - 7800: No-Intro\Atari - 7800\F-18 Hornet (USA).zip: written zip has the file F-18 Hornet (USA).a78 with the CRC 63d1c7c1, expected fa3e8cbb
ERROR: Atari - 7800: No-Intro\Atari - 7800\Desert Falcon (USA).zip: written zip has the file Desert Falcon (USA).a78 with the CRC a1dc0899, expected a6a62e78
ERROR: Atari - 7800: No-Intro\Atari - 7800\Ace of Aces (USA).zip: written zip has the file Ace of Aces (USA).a78 with the CRC 05a2b94c, expected e682c28f
ERROR: Atari - 7800: No-Intro\Atari - 7800\Crack'ed (USA).zip: written zip has the file Crack'ed (USA).a78 with the CRC e645fd1f, expected 61dcc763
ERROR: Atari - 7800: No-Intro\Atari - 7800\Barnyard Blaster (USA).zip: written zip has the file Barnyard Blaster (USA).a78 with the CRC ed0a587d, expected c086ed30
ERROR: Atari - 7800: No-Intro\Atari - 7800\Basketbrawl (USA).zip: written zip has the file Basketbrawl (USA).a78 with the CRC c8b9d7b5, expected fd3aec38
ERROR: Atari - 7800: No-Intro\Atari - 7800\Dark Chambers (USA).zip: written zip has the file Dark Chambers (USA).a78 with the CRC 366777f1, expected b5a87d19
ERROR: Atari - 7800: No-Intro\Atari - 7800\Double Dragon (USA).zip: written zip has the file Double Dragon (USA).a78 with the CRC aa265865, expected 16e2fc12
ERROR: Atari - 7800: No-Intro\Atari - 7800\Crossbow (USA).zip: written zip has the file Crossbow (USA).a78 with the CRC d2ea5686, expected a2678e2d
ERROR: Atari - 7800: No-Intro\Atari - 7800\Alien Brigade (USA).zip: written zip has the file Alien Brigade (USA).a78 with the CRC c8849d36, expected 3cef22ca
ERROR: Atari - 7800: No-Intro\Atari - 7800\Commando (USA).zip: written zip has the file Commando (USA).a78 with the CRC cd1a98c5, expected 81c6c079
ERROR: Atari - 7800: No-Intro\Atari - 7800\Fatal Run (USA).zip: written zip has the file Fatal Run (USA).a78 with the CRC a44df354, expected 718232bb
ERROR: Atari - 7800: No-Intro\Atari - 7800\Food Fight (USA).zip: written zip has the file Food Fight (USA).a78 with the CRC e64a5cde, expected 03ec1894
ERROR: Atari - 7800: No-Intro\Atari - 7800\Galaga (USA).zip: written zip has the file Galaga (USA).a78 with the CRC 1a0a3eb3, expected cffaa1b7
ERROR: Atari - 7800: No-Intro\Atari - 7800\Hat Trick (USA).zip: written zip has the file Hat Trick (USA).a78 with the CRC cf6f4a6c, expected 6247efa8
ERROR: Atari - 7800: No-Intro\Atari - 7800\Joust (USA).zip: written zip has the file Joust (USA).a78 with the CRC 2c430bce, expected fda13f77
ERROR: Atari - 7800: No-Intro\Atari - 7800\Karateka (USA).zip: written zip has the file Karateka (USA).a78 with the CRC fec21472, expected 7089a354
ERROR: Atari - 7800: No-Intro\Atari - 7800\Kung-Fu Master (USA).zip: written zip has the file Kung-Fu Master (USA).a78 with the CRC 297899bb, expected 37816887
ERROR: Atari - 7800: No-Intro\Atari - 7800\Mario Bros. (USA).zip: written zip has the file Mario Bros. (USA).a78 with the CRC 8021a13b, expected 4d072a3e
ERROR: Atari - 7800: No-Intro\Atari - 7800\Ikari Warriors (USA).zip: written zip has the file Ikari Warriors (USA).a78 with the CRC 8a6c1f15, expected aa0cfb30
ERROR: Atari - 7800: No-Intro\Atari - 7800\Klax (USA) (Proto).zip: written zip has the file Klax (USA) (Proto).a78 with the CRC f26621e3, expected 0ae5c4d3
ERROR: Atari - 7800: No-Intro\Atari - 7800\Jinks (USA).zip: written zip has the file Jinks (USA).a78 with the CRC 0818d8cd, expected 9571c998
ERROR: Atari - 7800: No-Intro\Atari - 7800\Impossible Mission (USA).zip: written zip has the file Impossible Mission (USA).a78 with the CRC 3b1f2f47, expected fa0a683e
ERROR: Atari - 7800: No-Intro\Atari - 7800\Ms. Pac-Man (USA).zip: written zip has the file Ms. Pac-Man (USA).a78 with the CRC e42fc700, expected 5ec9c910
ERROR: Atari - 7800: No-Intro\Atari - 7800\Fight Night (USA).zip: written zip has the file Fight Night (USA).a78 with the CRC 720ebc74, expected 28e38bd7
ERROR: Atari - 7800: No-Intro\Atari - 7800\Meltdown (USA).zip: written zip has the file Meltdown (USA).a78 with the CRC 4a8f2171, expected 14502302
ERROR: Atari - 7800: No-Intro\Atari - 7800\Missing in Action (USA) (Proto).zip: written zip has the file Missing in Action (USA) (Proto).a78 with the CRC ff7a4c60, expected c29973d4
ERROR: Atari - 7800: No-Intro\Atari - 7800\Mean 18 Ultimate Golf (USA).zip: written zip has the file Mean 18 Ultimate Golf (USA).a78 with the CRC cf21d9ac, expected d22f4b02
ERROR: Atari - 7800: No-Intro\Atari - 7800\Motor Psycho (USA).zip: written zip has the file Motor Psycho (USA).a78 with the CRC 1e219482, expected fc414689
ERROR: Atari - 7800: No-Intro\Atari - 7800\Mat Mania Challenge (USA).zip: written zip has the file Mat Mania Challenge (USA).a78 with the CRC aba91829, expected 33bb15ac
ERROR: Atari - 7800: No-Intro\Atari - 7800\Midnight Mutants (USA).zip: written zip has the file Midnight Mutants (USA).a78 with the CRC 187ec84e, expected e7157222
ERROR: Atari - 7800: No-Intro\Atari - 7800\Ninja Golf (USA).zip: written zip has the file Ninja Golf (USA).a78 with the CRC cb48e8dc, expected 9e5d3625
ERROR: Atari - 7800: No-Intro\Atari - 7800\One-on-One Basketball (USA).zip: written zip has the file One-on-One Basketball (USA).a78 with the CRC 7d9370fb, expected 34646e22
ERROR: Atari - 7800: No-Intro\Atari - 7800\Robotron - 2084 (USA).zip: written zip has the file Robotron - 2084 (USA).a78 with the CRC cb22305d, expected ab7bc9ce
ERROR: Atari - 7800: No-Intro\Atari - 7800\Pit Fighter (USA) (Proto).zip: written zip has the file Pit Fighter (USA) (Proto).a78 with the CRC a5e75537, expected f29e8142
ERROR: Atari - 7800: No-Intro\Atari - 7800\Pole Position II (USA).zip: written zip has the file Pole Position II (USA).a78 with the CRC a85fb962, expected 4bf501cb
ERROR: Atari - 7800: No-Intro\Atari - 7800\RealSports Baseball (USA).zip: written zip has the file RealSports Baseball (USA).a78 with the CRC b1508030, expected f33bd4fd
ERROR: Atari - 7800: No-Intro\Atari - 7800\Rampage (USA).zip: written zip has the file Rampage (USA).a78 with the CRC 39a316aa, expected 859d9352
ERROR: Atari - 7800: No-Intro\Atari - 7800\Plutos (USA) (Proto).zip: written zip has the file Plutos (USA) (Proto).a78 with the CRC 2f211f7f, expected 9857c02b
ERROR: Atari - 7800: No-Intro\Atari - 7800\Rampart (USA) (Proto).zip: written zip has the file Rampart (USA) (Proto).a78 with the CRC e8c2a662, expected 9113dc54
ERROR: Atari - 7800: No-Intro\Atari - 7800\Super Skateboardin' (USA).zip: written zip has the file Super Skateboardin' (USA).a78 with the CRC 13b68650, expected faa12091
ERROR: Atari - 7800: No-Intro\Atari - 7800\Planet Smashers (Europe).zip: written zip has the file Planet Smashers (Europe).a78 with the CRC 95dc7e96, expected e8929246
ERROR: Atari - 7800: No-Intro\Atari - 7800\Super Huey UH-IX (USA).zip: written zip has the file Super Huey UH-IX (USA).a78 with the CRC 71846500, expected 629d1032
ERROR: Atari - 7800: No-Intro\Atari - 7800\Sentinel (Europe).zip: written zip has the file Sentinel (Europe).a78 with the CRC 47340df9, expected ba588ff0
ERROR: Atari - 7800: No-Intro\Atari - 7800\Scrapyard Dog (USA).zip: written zip has the file Scrapyard Dog (USA).a78 with the CRC 5cc8c34f, expected db61ae81
ERROR: Atari - 7800: No-Intro\Atari - 7800\Sirius (USA) (Proto).zip: written zip has the file Sirius (USA) (Proto).a78 with the CRC 65ae616e, expected 9d3cd869
ERROR: Atari - 7800: No-Intro\Atari - 7800\Tank Command (USA).zip: written zip has the file Tank Command (USA).a78 with the CRC db91b181, expected 9ffc9515
ERROR: Atari - 7800: No-Intro\Atari - 7800\Title Match Pro Wrestling (USA).zip: written zip has the file Title Match Pro Wrestling (USA).a78 with the CRC bc23c57b, expected a5742a96
ERROR: Atari - 7800: No-Intro\Atari - 7800\Summer Games (USA).zip: written zip has the file Summer Games (USA).a78 with the CRC 65c6df3f, expected 8e4cf69c
ERROR: Atari - 7800: No-Intro\Atari - 7800\Tomcat - The F-14 Fighter Simulator (USA).zip: written zip has the file Tomcat - The F-14 Fighter Simulator (USA).a78 with the CRC 513cb9ee, expected ab48f361
ERROR: Atari - 7800: No-Intro\Atari - 7800\Tower Toppler (USA).zip: written zip has the file Tower Toppler (USA).a78 with the CRC 4407ba04, expected f701bd43
ERROR: Atari - 7800: No-Intro\Atari - 7800\Water Ski (USA).zip: written zip has the file Water Ski (USA).a78 with the CRC 930b30df, expected 09a27634
ERROR: Atari - 7800: No-Intro\Atari - 7800\Xevious (USA).zip: written zip has the file Xevious (USA).a78 with the CRC 75fc124f, expected 44584fa2
ERROR: Atari - 7800: No-Intro\Atari - 7800\Touchdown Football (USA).zip: written zip has the file Touchdown Football (USA).a78 with the CRC aae12695, expected 4162e98f
ERROR: Atari - 7800: No-Intro\Atari - 7800\Xenophobe (USA).zip: written zip has the file Xenophobe (USA).a78 with the CRC 5fd9a141, expected 96ee8584
ERROR: Atari - 7800: No-Intro\Atari - 7800\Winter Games (USA).zip: written zip has the file Winter Games (USA).a78 with the CRC 8981b531, expected 12454060
โ Atari - 7800 ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท | 0/2 BIOSes, 58/112 retail releases written
โ Atari - ST ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท | 314/314 retail releases written
โ Processing DATs ยทยทยทยทยทยทยทยทยทยทยทยทยทยท | 13 DATs processed
and vice versa, if I put only the files Lethal Xcess - Wings of Death II (Europe) (Amiga + ST) (Disk A).ipf and B in the atarist directory and use the full No-Intro it is also finishes without errors
Pass with no errors.
igir move zip test --input atari-test --output No-Intro --overwrite --dir-dat-name --single --dat "No-Intro Love Pack (PC XML) (2023-03-19).zip" -vv
______ ______ ______ _______
| \ / \ | \| \
\$$$$$$| $$$$$$\ \$$$$$$| $$$$$$$\
| $$ | $$ __\$$ | $$ | $$__| $$
| $$ | $$| \ | $$ | $$ $$ ROM collection manager
| $$ | $$ \$$$$ | $$ | $$$$$$$\
_| $$_ | $$__| $$ _| $$_ | $$ | $$ v1.5.0
| $$ \ \$$ $$| $$ \| $$ | $$
\$$$$$$ \$$$$$$ \$$$$$$ \$$ \$$
INFO: DATScanner: Scanning DAT files
DEBUG: DATScanner: Found 1 DAT file
DEBUG: DATScanner: Enumerating DAT archives
DEBUG: DATScanner: Deserializing DAT XML to objects
DEBUG: DATScanner: Parsing DAT files
DEBUG: DATScanner: No-Intro Love Pack (PC XML) (2023-03-19).zip|index.txt: failed to parse XML : Non-whitespace before first tag., Line: 0, Column: 1, Char: A
DEBUG: DATScanner: No-Intro Love Pack (PC XML) (2023-03-19).zip|index.txt: SMDB file has no rows
DEBUG: DATScanner: No-Intro Love Pack (PC XML) (2023-03-19).zip|index.txt: failed to parse DAT file
INFO: DATScanner: Done scanning DAT files
โ Scanning for DATs ยทยทยทยทยทยทยทยทยทยทยทยท | 273 unique DATs found
INFO: ROMScanner: Scanning ROM files
DEBUG: ROMScanner: Found 792 ROM files
INFO: ROMScanner: Done scanning ROM files
โ Scanning for ROMs ยทยทยทยทยทยทยทยทยทยทยทยท | 696 unique ROMs found
INFO: HeaderProcessor: Processing file headers
INFO: HeaderProcessor: Done processing file headers
โ Detecting ROM headers ยทยทยทยทยทยทยทยท | 696 ROMs processed
INFO: Processing 273 DATs
...
ERROR: ROMWriter: Atari - 7800: No-Intro\Atari - 7800\Xenophobe (USA).zip: written zip has the file Xenophobe (USA).a78 with the CRC 5fd9a141, expected 96ee8584
DEBUG: ROMWriter: Atari - 7800: deleting 1 moved file
INFO: ROMWriter: Atari - 7800: done writing 65 candidates
INFO: StatusGenerator: Atari - 7800: Generating ROM statuses
INFO: StatusGenerator: Atari - 7800: Done generating ROM statuses
โ Atari - 7800 ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท | 0/2 BIOSes, 58/112 retail releases written
DEBUG: CandidateFilter: Atari - ST: generated 252.4MiB of 314 candidates for 404 parents
INFO: CandidateFilter: Atari - ST: Done generating candidates 231/404 | ETA: 2s
INFO: PatchCandidateGenerator: Atari - ST: Generating patched candidates
DEBUG: PatchCandidateGenerator: Atari - ST: 0 unique patches found
INFO: PatchCandidateGenerator: Atari - ST: Done generating patched candidates
INFO: CandidateFilter: Atari - ST: Filtering candidates
DEBUG: CandidateFilter: Atari - ST: filtered to 252.4MiB of 314 candidates for 404 parents
INFO: CandidateFilter: Atari - ST: Done filtering candidates| 0/404
INFO: ROMWriter: Atari - ST: writing 314 candidates
ERROR: ROMWriter: Atari - ST: No-Intro\Atari - ST\Foundation's Waste (Europe) (Coverdisk - The One - Issue 22) (Amiga + ST).zip: failed to create zip : ENOENT: no such file or directory, open 'P:\Retro\igir-tests\atari-test\atarist\Foundation's Waste (Europe) (Coverdisk - '
ยค Processing DATs ยทยทยทยทยทยทยทยทยทยทยทยทยทยท | โโโโโโโโโโโโโโโโโโโโโโโโโ | 272/273
ยป Atari - ST ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท | โโโโโโโโโโโโโโโโโโโโโโโโโ | 169/404node:events:491
throw er; // Unhandled 'error' event
^
Error: ENOENT: no such file or directory, open 'P:\Retro\igir-tests\atari-test\atarist\Lethal Xcess - Wings of Death II (Europe) (Amiga + ST) (Disk B).ipf'
Emitted 'error' event on ReadStream instance at:
at emitErrorNT (node:internal/streams/destroy:151:8)
at emitErrorCloseNT (node:internal/streams/destroy:116:3)
at process.processTicksAndRejections (node:internal/process/task_queues:82:21) {
errno: -4058,
code: 'ENOENT',
syscall: 'open',
path: 'P:\\Retro\\igir-tests\\atari-test\\atarist\\Lethal Xcess - Wings of Death II (Europe) (Amiga + ST) (Disk B).ipf'
}
1.5.0
18.15.0
Windows 10
No response
No response
Checksums are used for matching files to ROMs in DATs, and for testing files after they have been written. There can be substantial time savings by not calculating checksums for large files if they aren't being used.
The GameCube script is particularly slow:
Lines 114 to 120 in 0f9978d
No response
Files in the output directory that would be overwritten with --overwrite
are currently tested for accuracy in order to produce a warning message if they're bad. Add a new flag such as --overwrite-invalid
which will overwrite these files, but leave other good files in the output directory alone.
No response
npx igir@latest report --dat /Users/michael/Downloads/MAME_Dats_256/DATs/MAME\ 0.256.dat --input /Users/michael/Documents/Emulator\ Data/MAME/roms
I just tried to run a report for my MAME ROMs, and while it seems to scan for DATs and ROMs okay, when generating the report, I get the error in the title.
โ Scanning for DATs ยทยทยทยทยทยทยทยทยทยทยทยท | 1 unique DAT found
โ Scanning for ROMs ยทยทยทยทยทยทยทยทยทยทยทยท | 12,032 unique ROMs found
โ Detecting ROM headers ยทยทยทยทยทยทยทยท | 12,032 ROMs processed
โ MAME ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท | 6,355/43,920 games, 7/75 BIOSes, 6,355/43,920 retail releases fod
โ Generating report ยทยทยทยทยทยทยทยทยทยทยทยท | โโโโโโโโโโโโโโโโโโโโโโโโโ
ERROR: TypeCannot read properties of undefined (reading 'getRomsWithFiles')
I'm pretty sure this is something I'm doing wrong, vs. an actual bug, but not sure what to do to get the report.
The command executes without an error and I can access the report.
1.6.6
20.4.0
macOS 13.4.1 (22F82)
No response
sudo ./igir move zip test report --input "RomsTestGB" --output "./No-IntroGB" --dat ./Nintendo\ -\ Game\ Boy\ \(Parent-Clone\)\ \(20230318-005235\).zip --single --prefer-language EN --prefer-region USA,EUR,WORLD,JPN --dir-dat-name --overwrite -vv
First: start with empty No-IntroGB' folder and 5 files in
RomsTestGB\gb`. Result: pass, I mean 5 files transferred and renamed
INFO: DATScanner: Scanning DAT files
DEBUG: DATScanner: Found 1 DAT file
DEBUG: DATScanner: Enumerating DAT archives
DEBUG: DATScanner: Deserializing DAT XML to objects
DEBUG: DATScanner: Parsing DAT files
INFO: DATScanner: Done scanning DAT files
โ Scanning for DATs ยทยทยทยทยทยทยทยทยทยทยทยท | 1 unique DAT found
INFO: ROMScanner: Scanning ROM files
DEBUG: ROMScanner: Found 5 ROM files
INFO: ROMScanner: Done scanning ROM files
โ Scanning for ROMs ยทยทยทยทยทยทยทยทยทยทยทยท | 5 unique ROMs found
INFO: HeaderProcessor: Processing file headers
INFO: HeaderProcessor: Done processing file headers
โ Detecting ROM headers ยทยทยทยทยทยทยทยท | 5 ROMs processed
INFO: Processing 1 DAT
INFO: CandidateFilter: Nintendo - Game Boy: Generating candidates
DEBUG: CandidateFilter: Nintendo - Game Boy: 5 unique ROMs found
DEBUG: CandidateFilter: Nintendo - Game Boy: generated 1.1MiB of 9 candidates for 1,338 parents
INFO: CandidateFilter: Nintendo - Game Boy: Done generating candidates
INFO: PatchCandidateGenerator: Nintendo - Game Boy: Generating patched candidates
DEBUG: PatchCandidateGenerator: Nintendo - Game Boy: 0 unique patches found
INFO: PatchCandidateGenerator: Nintendo - Game Boy: Done generating patched candidates
INFO: CandidateFilter: Nintendo - Game Boy: Filtering candidates
DEBUG: CandidateFilter: Nintendo - Game Boy: filtered to 640KiB of 5 candidates for 1,338 parents
INFO: CandidateFilter: Nintendo - Game Boy: Done filtering candidates
INFO: ROMWriter: Nintendo - Game Boy: Writing candidates
DEBUG: ROMWriter: Nintendo - Game Boy: Deleting moved files
INFO: ROMWriter: Nintendo - Game Boy: Done writing candidates 0/1,338
INFO: StatusGenerator: Nintendo - Game Boy: Generating ROM statuses
INFO: StatusGenerator: Nintendo - Game Boy: Done generating ROM statuses
โ Nintendo - Game Boy ยทยทยทยทยทยทยทยทยทยท | 0/3 BIOSes, 5/1,672 retail releases written
INFO: Done processing 1 DAT
INFO: ReportGenerator: Generating report
DEBUG: ReportGenerator: No-IntroGB/igir_2023-03-22T13;26;54+01;00.csv: wrote 1 status
INFO: ReportGenerator: Done generating report
โ Generating report ยทยทยทยทยทยทยทยทยทยทยทยท | No-IntroGB/igir_2023-03-22T13;26;54+01;00.csv
Second: fill RomsTestGB\gb again with the same original files (cartridges dumps) and rerun the same command, also No-IntroGB
now has Nintendo - Game Boy
in it and 5 files, result: some errors:
INFO: DATScanner: Scanning DAT files
DEBUG: DATScanner: Found 1 DAT file
DEBUG: DATScanner: Enumerating DAT archives
DEBUG: DATScanner: Deserializing DAT XML to objects
DEBUG: DATScanner: Parsing DAT files
INFO: DATScanner: Done scanning DAT files
โ Scanning for DATs ยทยทยทยทยทยทยทยทยทยทยทยท | 1 unique DAT found
INFO: ROMScanner: Scanning ROM files
DEBUG: ROMScanner: Found 5 ROM files
INFO: ROMScanner: Done scanning ROM files
โ Scanning for ROMs ยทยทยทยทยทยทยทยทยทยทยทยท | 5 unique ROMs found
INFO: HeaderProcessor: Processing file headers
INFO: HeaderProcessor: Done processing file headers
โ Detecting ROM headers ยทยทยทยทยทยทยทยท | 5 ROMs processed
INFO: Processing 1 DAT
INFO: CandidateFilter: Nintendo - Game Boy: Generating candidates
DEBUG: CandidateFilter: Nintendo - Game Boy: 5 unique ROMs found
DEBUG: CandidateFilter: Nintendo - Game Boy: generated 1.1MiB of 9 candidates for 1,338 parents
INFO: CandidateFilter: Nintendo - Game Boy: Done generating candidates
INFO: PatchCandidateGenerator: Nintendo - Game Boy: Generating patched candidates
DEBUG: PatchCandidateGenerator: Nintendo - Game Boy: 0 unique patches found
INFO: PatchCandidateGenerator: Nintendo - Game Boy: Done generating patched candidates
INFO: CandidateFilter: Nintendo - Game Boy: Filtering candidates
DEBUG: CandidateFilter: Nintendo - Game Boy: filtered to 640KiB of 5 candidates for 1,338 parents
INFO: CandidateFilter: Nintendo - Game Boy: Done filtering candidates
INFO: ROMWriter: Nintendo - Game Boy: Writing candidates
ERROR: ROMWriter: Nintendo - Game Boy: No-IntroGB/Nintendo - Game Boy/Addams Family, The (USA).zip: written zip failed to get archive contents: Error: ENOENT: no such file or directory, stat 'No-IntroGB/Nintendo - Game Boy/Addams Family, The (USA).zip'
DEBUG: ROMWriter: Nintendo - Game Boy: Deleting moved files
INFO: ROMWriter: Nintendo - Game Boy: Done writing candidates 1,333/1,338
INFO: StatusGenerator: Nintendo - Game Boy: Generating ROM statuses
INFO: StatusGenerator: Nintendo - Game Boy: Done generating ROM statuses
โ Nintendo - Game Boy ยทยทยทยทยทยทยทยทยทยท | 0/3 BIOSes, 5/1,672 retail releases written
INFO: Done processing 1 DAT
INFO: ReportGenerator: Generating report
DEBUG: ReportGenerator: No-IntroGB/igir_2023-03-22T13;29;04+01;00.csv: wrote 1 status
INFO: ReportGenerator: Done generating report
โ Generating report ยทยทยทยทยทยทยทยทยทยทยทยท | No-IntroGB/igir_2023-03-22T13;29;04+01;00.csv
So, the same file Addams Family, The (USA)
first was moved and processed properly and second time not.
When specifying move and overwrite I expect igir
to move all supported files.
Report content from first and second run:
Nintendo - Game Boy,"Addams Family, The (USA)",FOUND,"No-IntroGB/Nintendo - Game Boy/Addams Family, The (USA).zip",false,false,true,false,false,false,false,false,false,false,false,false
1.4.1
12.22.9
WSL Ubuntu
No response
No response
Many ROMs have addendum patches that have patch dependencies; they assume the core ROM has already been patched. It seems that igir
will produce a unique ROM for each patch file it finds, and does not combine them. Also for some patches, order of being applied matters.
Kaeru no Tame ni Kane wa Naru: (order matters)
Translation: https://www.romhacking.net/translations/1623/
Addendum (fix title screen): https://www.romhacking.net/translations/6517/
Final Fantasy II: (order doesn't matter)
Ultima (contains multiple optional patches): https://www.romhacking.net/hacks/4134/
For ips
patches I've tried adding the CRC32 checksum of the dependency ROM for each successive patch, but it didn't make a difference. It only lead to the later patches failing to be applied because igir
seems to be unaware of the matching checksum of a new ROM it generated after applying a patch.
> ls $INPUT
Kaeru no Tame ni Kane wa Naru (Japan).gb
> ls $PATCHES
"Frog_v1.0.ips"
"The Frog for Whom the Bell Tolls.ips"
> crc32 $INPUT/"Kaeru no Tame ni Kane wa Naru (Japan).gb"
c18cd57a
> mv $PATCHES/"Frog_v1.0.ips" $PATCHES/"Frog_v1.0 c18cd57a.ips"
> crc32 Frog_v1.0.gb (obtained after manually patching)
630193e8
> mv $PATCHES/"The Frog for Whom the Bell Tolls.ips" $PATCHES/"The Frog for Whom the Bell Tolls 630193e8.ips"
> ls $PATCHES
"Frog_v1.0 c18cd57a.ips"
"The Frog for Whom the Bell Tolls 630193e8.ips"
> npx igir@latest copy --input $INPUT --output $OUTPUT --patch $PATCHES
...
> ls $OUTPUT/Kaeru no Tame ni Kane wa Naru (Japan)/
"Frog_v1.0.gb"
"Kaeru no Tame ni Kane wa Naru (Japan).gb"
(no "The Frog for Whom the Bell Tolls.gb")
No-Intro's DAT-o-Matic site provides a way of downloading a full zipped archive of all DATs via the daily
filter. It would be convenient to run igir using this archive, but to have the option to "exclude DAT" to avoid unneeded scans or erroneous matching, for example in situations where games appear in both Nintendo - Nintendo 64 (BigEndian)
and Nintendo - Nintendo 64 (ByteSwapped)
DAT files, but you're only interested in maintaining a BigEndian collection.
Similar to --input-exclude
, a flag like --dat-exclude
that would ignore any matching DAT files.
No response
--fixdat
a command--filter
prefixnpx -yes igir@latest -vvv move test report --dat ../DATs/Redump/NEC\ -\ PC\ Engine\ CD\ \&\ TurboGrafx\ CD\ -\ Datfile\ \(541\)\ \(2023-04-09\ 22-11-42\).dat --input ./input --output ./output
> ls -l ./input/
total 514436
-rwxrwxrwx 1 jeff users 368156053 May 20 13:28 'Fighting Street (USA).zip'
-rwxrwxrwx+ 1 jeff users 158625630 May 20 13:23 'Jack Nicklaus Turbo Golf (USA).zip'
> ls -l ./output/
total 0
Certain optical media files seem to behave unexpectedly when processed against certain other optical media files. I haven't been able to figure out why this happens, but I've isolated many examples of it. It results in a failure to copy
or move
one or both files.
In the below example igir
fails to identify Jack Nicklaus Turbo Golf (USA).zip
as a candidate when it should, and it spits out the following warning:
[13:28:17.360] WARN: CandidateFilter: Cannot move different files to: output/Jack Nicklaus Turbo Golf (USA).zip:
[13:28:17.360] WARN: CandidateFilter: input/Jack Nicklaus Turbo Golf (USA).zip
[13:28:17.360] WARN: CandidateFilter: input/Fighting Street (USA).zip
[13:28:17.366] TRACE: CandidateFilter: NEC - PC Engine CD & TurboGrafx CD: Jack Nicklaus Turbo Golf (USA): found 0 candidates
Note the conflict with Fighting Street (USA).zip
. This file is later successfully and properly identified as a candidate and is moved or copied as such. If I remove Fighting Street (USA).zip
from ./input/
, Jack Nicklaus Turbo Golf (USA).zip
is properly identified as a candidate and the tool behaves as expected. I cannot reproduce this behavior with any other combination of files against Jack Nicklaus Turbo Golf (USA).zip
.
Here are is a very short, incomplete list of other conflicts I've encountered (just TurboGrafx, but I see this for many other optical-based system DATs as well):
Zero Wing (Japan).zip + Dungeon Master - Theron's Quest (Japan).zip
Gain Ground SX (Japan).zip + Alnam no Kiba - Juuzoku Juuni Shinto Densetsu (Japan) (FAAT).zip
Hihou Densetsu - Chris no Bouken (Japan).zip + A.III. - A Ressha de Ikou III (Japan).zip
Super Air Zonk - Rockabilly-Paradise (USA).zip + Bonk III - Bonk's Big Adventure (USA).zip + CD Denjin - Rockabilly Tengoku (Japan).zip
Shadow of the Beast (USA).zip + Bonk III - Bonk's Big Adventure (USA).zip + Shadow of the Beast - Mashou no Okite (Japan).zip
Loom (USA).zip + Loom (Japan).zip
....hundreds more combinations
More details:
Excerpt from NEC - PC Engine CD & TurboGrafx CD - Datfile (541) (2023-04-09 22-11-42).dat
:
<game name="Jack Nicklaus Turbo Golf (USA)">
<category>Games</category>
<description>Jack Nicklaus Turbo Golf (USA)</description>
<rom name="Jack Nicklaus Turbo Golf (USA).cue" size="1224" crc="93f9b06c" md5="591f2f3dd07461dc990b089e0963a719" sha1="b2a200c9a87cb22080192dcc899f56a4f624db86"/>
<rom name="Jack Nicklaus Turbo Golf (USA) (Track 01).bin" size="7914480" crc="17623548" md5="77232c745e40cc155ad72c1b79780986" sha1="e1baaf01eee215def8bd6f6aa080e3a41ffc74f4"/>
<rom name="Jack Nicklaus Turbo Golf (USA) (Track 02).bin" size="22946112" crc="c9cdcb10" md5="b30c100096e78328c3ef80c06d794b53" sha1="5f59a0080a26f35c25ac8de25ebf22c83dc75406"/>
<rom name="Jack Nicklaus Turbo Golf (USA) (Track 03).bin" size="11005008" crc="7df2dc3e" md5="0a08889b2cff35740f982bfca0abd34c" sha1="dc58e79d38cb85bb54e3c15a9e03e3744cf24428"/>
<rom name="Jack Nicklaus Turbo Golf (USA) (Track 04).bin" size="27723024" crc="b4580daf" md5="1ce418ce541cdd10854ffd78b02fd7d5" sha1="c1d0ff11a7c0b63c031083a1e1b306676e96cfba"/>
<rom name="Jack Nicklaus Turbo Golf (USA) (Track 05).bin" size="5407248" crc="cdcf16e9" md5="5587af5d843eaf719e80fdae2f1264c7" sha1="c90a80e4be09ed5aac6c76c5b1e31434358649ef"/>
<rom name="Jack Nicklaus Turbo Golf (USA) (Track 06).bin" size="24576048" crc="cd070c6f" md5="36d015776a4ac44d9daf250b336d0dfb" sha1="ecaefc831654200e78775985244af5b004f3c762"/>
<rom name="Jack Nicklaus Turbo Golf (USA) (Track 07).bin" size="26789280" crc="af06ac59" md5="f90dfebef960f5358c295e8e929d2d99" sha1="54207863f1e5fb82815537fac682c15c38c76227"/>
<rom name="Jack Nicklaus Turbo Golf (USA) (Track 08).bin" size="26624640" crc="19309a5a" md5="c1d7b1ec9a78fbb177fadd1f6ec10b02" sha1="2675e4d635a94e77df277db183dce57d6ed75bfb"/>
<rom name="Jack Nicklaus Turbo Golf (USA) (Track 09).bin" size="18449088" crc="615709b5" md5="9e3dd07f45d13238e79efbadd2a1f4f3" sha1="3b3cfbe0dc1d797117713b7881991d72995f112d"/>
<rom name="Jack Nicklaus Turbo Golf (USA) (Track 10).bin" size="13945008" crc="07842367" md5="e1e698803b01feaad7e9f82857621a0d" sha1="b45baea264810cd80e439784fb010626a47ad7a7"/>
<rom name="Jack Nicklaus Turbo Golf (USA) (Track 11).bin" size="22595664" crc="025adc5c" md5="bf5ea8a875a5e8a2547bf856c0de0721" sha1="789012ea63cbbfedac32cf013da4c2f8845cd574"/>
</game>
Hashes on disk (they match the dat file):
> sha1sum Jack\ Nicklaus\ Turbo\ Golf\ \(USA\)*
e1baaf01eee215def8bd6f6aa080e3a41ffc74f4 Jack Nicklaus Turbo Golf (USA) (Track 01).bin
5f59a0080a26f35c25ac8de25ebf22c83dc75406 Jack Nicklaus Turbo Golf (USA) (Track 02).bin
dc58e79d38cb85bb54e3c15a9e03e3744cf24428 Jack Nicklaus Turbo Golf (USA) (Track 03).bin
c1d0ff11a7c0b63c031083a1e1b306676e96cfba Jack Nicklaus Turbo Golf (USA) (Track 04).bin
c90a80e4be09ed5aac6c76c5b1e31434358649ef Jack Nicklaus Turbo Golf (USA) (Track 05).bin
ecaefc831654200e78775985244af5b004f3c762 Jack Nicklaus Turbo Golf (USA) (Track 06).bin
54207863f1e5fb82815537fac682c15c38c76227 Jack Nicklaus Turbo Golf (USA) (Track 07).bin
2675e4d635a94e77df277db183dce57d6ed75bfb Jack Nicklaus Turbo Golf (USA) (Track 08).bin
3b3cfbe0dc1d797117713b7881991d72995f112d Jack Nicklaus Turbo Golf (USA) (Track 09).bin
b45baea264810cd80e439784fb010626a47ad7a7 Jack Nicklaus Turbo Golf (USA) (Track 10).bin
789012ea63cbbfedac32cf013da4c2f8845cd574 Jack Nicklaus Turbo Golf (USA) (Track 11).bin
b2a200c9a87cb22080192dcc899f56a4f624db86 Jack Nicklaus Turbo Golf (USA).cue
I expect otherwise positive matching candidates to be treated as such, and not conflict with anything else going on.
The log message let message = `Cannot ${this.options.writeString()} different files to: ${duplicateOutput}:`;
is unintuitive and I honestly don't understand what it means when this issue is encountered. Maybe clearer messaging would help?
Unrelated to this behavior specifically, but the console is flooded with missing XX files for: <unrelated ROM name>
. In my example of using only two ROMs in ./input/
, I see dozens of warnings of what look like attempts to match one of the ROMs to the wrong candidate, and the tool being overly helpful in explaining why. For example:
[13:46:44.561] WARN: CandidateFilter: NEC - PC Engine CD & TurboGrafx CD: missing 43 files for: Ys Book I & II (USA)
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA).cue
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 02).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 03).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 04).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 05).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 06).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 07).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 08).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 09).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 10).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 11).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 12).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 13).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 14).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 15).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 16).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 17).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 18).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 19).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 20).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 21).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 22).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 23).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 24).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 25).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 26).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 27).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 28).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 29).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 30).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 31).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 32).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 33).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 34).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 35).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 36).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 37).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 38).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 39).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 40).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 41).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 42).bin
[13:46:44.561] WARN: CandidateFilter: Ys Book I & II (USA) (Track 43).bin
[13:46:44.576] TRACE: CandidateFilter: NEC - PC Engine CD & TurboGrafx CD: Ys Book I & II (USA): found 0 candidates
This is true, but Ys Book I & II (USA)
is not among the ROMs in ./input/
. This doesn't feel like it rises to the occasion of needing a WARN
, especially because it's not doing this for every ROM in the DAT, just a subset. See the attached output for a better overview.
1.6.4
18.12.0
Linux
No response
Discussed in #347
No response
Because igir
is not MAME centric, the only merge type supported right now is "non-merged".
No response
./bin/igir symlink clean \
--dat "./MiSTer.DATs/*.dat" \
--input "./roms/**/*.zip" \
--output "./MiSTer/{mister}" \
--dir-letter \
--no-bios \
--single \
--only-retail \
--prefer-language DE,EN \
--prefer-region USA,WORLD,EUR,JPN
When executing the command above, I get the following error at the end and the cleanup operation stops:
[11:47:30.966] INFO: DirectoryCleaner: cleaning files in output
[11:47:31.992] ERROR: MiSTer/Atari5200/A/Atari PAM Diagnostics (USA) (v2.0).zip: no files found
First of all, the file quoted above does not exist. There is no indication that it got created during the symlink part. There is the following in the log though:
[11:46:18.416] TRACE: CandidateGenerator: Atari - 5200: Atari PAM Diagnostics (USA) (v2.3): found 2 candidates
(Please not the version difference though)
Cleanup operation finishes successfully.
n/a
Atari - 5200 (Parent-Clone) (20220405-183755).dat
1.9.1
n/a
Linux
No response
Quickly generate a miss list of missing roms
It would be comfortable to have an option to generate just a list of which roms are missing in the set. Something like "--miss-only" flag specific for the report command.
Thank your for this great app!
Originally posted by mattieb June 14, 2023
I have figured out how to use igir with No-Intro DATs and it's perfect. ๐คฉ
It's unclear to me if I can use it with e.g. pleasuredome MAME DATs, or other MAME DATs. Since they list "machine" elements instead of "game", I'm guessing that may be unimplemented?
Although igir appears to find all the ROMs inside the MAME ZIPs, all ZIPs end up listed as "UNMATCHED" in the report.
MAME DATs use <machine>
instead of <game>
for no explainable reason.
https://web.archive.org/web/20230619034434/http://www.logiqx.com/DatFAQs/
They might also use <mame>
instead of <datafile>
in the official DATs.
npx -yes igir@latest -vvv move --dat ./DATs/Redump/SNK\ -\ Neo\ Geo\ CD\ -\ Datfile\ \(111\)\ \(2022-09-23\ 17-55-26\).zip --input ../downloads/Garou\ Densetsu\ Special\ ~\ Fatal\ Fury\ Special\ \(Japan\)\ \(En\,Ja\).zip --output ./Redump_downloadtest/ --dir-dat-name
I'm running into cases where the original files are not being deleted after a successful move to the output directory. It aborts the operation with the warning message not deleting moved file, XX archive entries were unmatched
. It seems to occur with ROMs of the cue/bin format.
In the example I provide, I manually hashed each file to confirm it matched the DAT entries. It's a perfect match, so I'm unsure what the problem could be.
[20:28:22.553] INFO: ROMWriter: SNK - Neo Geo CD: done writing 1 candidate
[20:28:22.556] INFO: StatusGenerator: SNK - Neo Geo CD: generating ROM statuses
[20:28:22.579] INFO: StatusGenerator: SNK - Neo Geo CD: done generating ROM statuses
โ SNK - Neo Geo CD ยทยทยทยทยทยทยทยทยทยทยทยทยท | 1/111 games, 1/111 retail releases written
[20:28:22.584] INFO: done processing 1 DAT
[20:28:22.591] INFO: MovedROMDeleter: deleting moved ROMs
[20:28:22.594] WARN: MovedROMDeleter: ../downloads/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja).zip: not deleting moved file, 28 archive entries were
unmatched:
[20:28:22.594] WARN: MovedROMDeleter: Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 01).bin,
[20:28:22.594] WARN: MovedROMDeleter: Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 02).bin,
[20:28:22.594] WARN: MovedROMDeleter: Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 03).bin,
[20:28:22.594] WARN: MovedROMDeleter: Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 04).bin,
[20:28:22.594] WARN: MovedROMDeleter: Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 05).bin,
[20:28:22.594] WARN: MovedROMDeleter: Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 06).bin,
[20:28:22.594] WARN: MovedROMDeleter: Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 07).bin,
[20:28:22.594] WARN: MovedROMDeleter: Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 08).bin,
[20:28:22.594] WARN: MovedROMDeleter: Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 09).bin,
[20:28:22.594] WARN: MovedROMDeleter: Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 10).bin,
[20:28:22.594] WARN: MovedROMDeleter: Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 11).bin,
[20:28:22.594] WARN: MovedROMDeleter: Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 12).bin,
[20:28:22.594] WARN: MovedROMDeleter: Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 13).bin,
[20:28:22.594] WARN: MovedROMDeleter: Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 14).bin,
[20:28:22.594] WARN: MovedROMDeleter: Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 15).bin,
[20:28:22.594] WARN: MovedROMDeleter: Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 16).bin,
[20:28:22.594] WARN: MovedROMDeleter: Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 17).bin,
[20:28:22.594] WARN: MovedROMDeleter: Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 18).bin,
[20:28:22.594] WARN: MovedROMDeleter: Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 19).bin,
[20:28:22.594] WARN: MovedROMDeleter: Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 20).bin,
[20:28:22.594] WARN: MovedROMDeleter: Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 21).bin,
[20:28:22.594] WARN: MovedROMDeleter: Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 22).bin,
[20:28:22.594] WARN: MovedROMDeleter: Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 23).bin,
[20:28:22.594] WARN: MovedROMDeleter: Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 24).bin,
[20:28:22.594] WARN: MovedROMDeleter: Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 25).bin,
[20:28:22.594] WARN: MovedROMDeleter: Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 26).bin,
[20:28:22.594] WARN: MovedROMDeleter: Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 27).bin,
[20:28:22.594] WARN: MovedROMDeleter: Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja).cue
[20:28:22.606] DEBUG: MovedROMDeleter: deleting 0 moved files
[20:28:22.608] INFO: MovedROMDeleter: done deleting moved ROMs
When using the move
command, ROMs that match a DAT entry should be copied to the output directory and then removed from the input directory.
Excerpt from SNK - Neo Geo CD - Datfile (111) (2022-09-23 17-55-26).dat
:
<game name="Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja)">
<category>Games</category>
<description>Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja)</description>
<rom name="Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja).cue" size="3970" crc="e95e098f" md5="86e2bea7e948ff55564e646b2373aae4" sha1="ae6c9618aab99527135015bc4cb65f8edaaf7f5a"/>
<rom name="Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 01).bin" size="25634448" crc="ef787662" md5="5796897e1d8ae5b87413cf592d4d8141" sha1="5df92d1c9be9d7b313753fac1c6b4a9efa275b4a"/>
<rom name="Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 02).bin" size="4475856" crc="78699f8e" md5="6c4f316d952e9b3594d71508af50f93a" sha1="2fe5562e1373a496f700cfc22465f545f9b15e00"/>
<rom name="Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 03).bin" size="4116000" crc="3ac9721f" md5="865d6e0b179b74bf33da645b3fd8ef81" sha1="047f97d551f3297f8d29f22fa9e78feef6347d70"/>
<rom name="Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 04).bin" size="23268336" crc="439020bc" md5="98b1cfed664ce3442c6595a37d5841ae" sha1="921ab8f9eb0922f53e6ae06fe779ba933d503d4f"/>
<rom name="Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 05).bin" size="7197120" crc="8041c8ff" md5="75de46ed078cf25032b1c67f04d60409" sha1="9c814bb938ef1aaa2c09564ae11c0c5a87b7ec67"/>
<rom name="Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 06).bin" size="21396144" crc="48a79f55" md5="26f38eb1081df38ac9b8d5169428da12" sha1="bd614984e83aa5efa65f78f4e994cdf3925564c9"/>
<rom name="Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 07).bin" size="4320624" crc="786c1186" md5="c9e09bf560521c1ac31ed507f53e8135" sha1="2366ea8a657f807799b4c88b4daf97246438f7dd"/>
<rom name="Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 08).bin" size="3024672" crc="6f13eafd" md5="82dfe8f58f2e95d8b3d2b803816f90ba" sha1="41375a9ada4d53308eec6cad38a5b9c2866751da"/>
<rom name="Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 09).bin" size="22560384" crc="0f960a71" md5="1eda0348826177c1d1d9f06e25bf4131" sha1="44ed12d24c3bca4c3122916c0f6601cfb171146b"/>
<rom name="Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 10).bin" size="33965232" crc="f9d0fa44" md5="322ace3238bc175c8fc81dd0b4b4d50a" sha1="d095a3b176a0b2e11b94fb8d0828f481863959b6"/>
<rom name="Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 11).bin" size="34066368" crc="db92e075" md5="41e3aedef6df59ccc277098a6fb03c60" sha1="ad90f194d1821c68926fbe39e69e2a30c3c6a6b8"/>
<rom name="Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 12).bin" size="34487376" crc="3ca8ac07" md5="fd504423137eb3d16a3820eda6c101df" sha1="5c54a07148b8a3f69b7c9a9a022a3096114a7615"/>
<rom name="Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 13).bin" size="34419168" crc="0980b41c" md5="99cade798b52bc951da171ed568549bb" sha1="542b9d06a7c47eb66977f5761fecdea94a6a72d0"/>
<rom name="Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 14).bin" size="34496784" crc="d39752a2" md5="bd8a26fefed601fd96e55ba51ff7375a" sha1="4ee915b232c0eeeefecafe3d71cc69ed22ac4979"/>
<rom name="Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 15).bin" size="34795488" crc="921b5654" md5="d4e67172cca7d8e84ffafcc36ad07ef9" sha1="d3d55b431e8445167dba5dca876fe6a177d38e96"/>
<rom name="Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 16).bin" size="34318032" crc="dc369db5" md5="90f19751738f5ab8f2f1d4b19e57d911" sha1="9e43f950f3bdf786491f3a68cac2899620f408c8"/>
<rom name="Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 17).bin" size="34195728" crc="44e50ef2" md5="5ac3819c15d23819e65319614bbeda81" sha1="203856a8352fd3ae6111e4fb099e9830cb3bd15e"/>
<rom name="Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 18).bin" size="34223952" crc="5dcaef3f" md5="fb641fe9a5436ab52b169a648fbee75f" sha1="ab46cf81a1061aa3256b95aaabbffbcf36ece9eb"/>
<rom name="Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 19).bin" size="33969936" crc="f83dc97b" md5="94abfed3b73ab474c42ded5b2e75e3ab" sha1="8818535bb62e11711bf7335a66cd284b8f5475eb"/>
<rom name="Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 20).bin" size="34263936" crc="dce52e16" md5="564b06bd2e57964571de94ce8ec7f0fe" sha1="26a8f8ae4d6651f97663e7bbfe2067d3b7b87fec"/>
<rom name="Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 21).bin" size="34322736" crc="fe60b2f9" md5="fe47ba8deffe97315ab3349b366f5eef" sha1="a23cf7bf44aedc53cd03ec1dcaa9d2b29f46be38"/>
<rom name="Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 22).bin" size="22553328" crc="74bee513" md5="fb6eb6998a1055751ecdf061962e3cdc" sha1="1faa6f3e91efd59c967729e0fe02df5b34fef3b8"/>
<rom name="Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 23).bin" size="34684944" crc="c534a8ec" md5="6d10882c400b1b556f9f7a68ec93f3ef" sha1="71f8ff3e196a8abb8e670e558fd955b46be59d18"/>
<rom name="Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 24).bin" size="34569696" crc="3b094e2c" md5="1f2ce15e8fc6f246f1cd9b894770a8bf" sha1="81ce7de8815119cf5cd42b60636f8852dae0b355"/>
<rom name="Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 25).bin" size="34454448" crc="8989ae66" md5="1d3a1878f0a5de791141749a320d88ff" sha1="43798f7e0a76e88c4171eba052275323e13ed865"/>
<rom name="Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 26).bin" size="33826464" crc="37a9380a" md5="167eb654d9d24b83ae6ec4d6b3081133" sha1="3b6338e2309d8ebd59268ee099ae86419aa17385"/>
<rom name="Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 27).bin" size="30959376" crc="64b5378e" md5="14cdabbef8edb139507a211ea457efee" sha1="414b1d4e46b8ba1d36cdcbc907b3951df79c112c"/>
</game>
SHA1 hashes on file:
$ sha1sum ../downloads/Garou\ Densetsu\ Special\ ~\ Fatal\ Fury\ Special\ \(Japan\)\ \(En\,Ja\)/Garou\ Densetsu\ Special\ ~\ Fatal\ Fury\ Special\ \(Japan\)\ \(En\,Ja\)*
5df92d1c9be9d7b313753fac1c6b4a9efa275b4a ../downloads/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja)/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 01).bin
2fe5562e1373a496f700cfc22465f545f9b15e00 ../downloads/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja)/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 02).bin
047f97d551f3297f8d29f22fa9e78feef6347d70 ../downloads/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja)/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 03).bin
921ab8f9eb0922f53e6ae06fe779ba933d503d4f ../downloads/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja)/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 04).bin
9c814bb938ef1aaa2c09564ae11c0c5a87b7ec67 ../downloads/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja)/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 05).bin
bd614984e83aa5efa65f78f4e994cdf3925564c9 ../downloads/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja)/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 06).bin
2366ea8a657f807799b4c88b4daf97246438f7dd ../downloads/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja)/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 07).bin
41375a9ada4d53308eec6cad38a5b9c2866751da ../downloads/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja)/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 08).bin
44ed12d24c3bca4c3122916c0f6601cfb171146b ../downloads/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja)/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 09).bin
d095a3b176a0b2e11b94fb8d0828f481863959b6 ../downloads/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja)/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 10).bin
ad90f194d1821c68926fbe39e69e2a30c3c6a6b8 ../downloads/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja)/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 11).bin
5c54a07148b8a3f69b7c9a9a022a3096114a7615 ../downloads/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja)/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 12).bin
542b9d06a7c47eb66977f5761fecdea94a6a72d0 ../downloads/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja)/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 13).bin
4ee915b232c0eeeefecafe3d71cc69ed22ac4979 ../downloads/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja)/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 14).bin
d3d55b431e8445167dba5dca876fe6a177d38e96 ../downloads/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja)/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 15).bin
9e43f950f3bdf786491f3a68cac2899620f408c8 ../downloads/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja)/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 16).bin
203856a8352fd3ae6111e4fb099e9830cb3bd15e ../downloads/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja)/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 17).bin
ab46cf81a1061aa3256b95aaabbffbcf36ece9eb ../downloads/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja)/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 18).bin
8818535bb62e11711bf7335a66cd284b8f5475eb ../downloads/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja)/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 19).bin
26a8f8ae4d6651f97663e7bbfe2067d3b7b87fec ../downloads/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja)/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 20).bin
a23cf7bf44aedc53cd03ec1dcaa9d2b29f46be38 ../downloads/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja)/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 21).bin
1faa6f3e91efd59c967729e0fe02df5b34fef3b8 ../downloads/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja)/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 22).bin
71f8ff3e196a8abb8e670e558fd955b46be59d18 ../downloads/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja)/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 23).bin
81ce7de8815119cf5cd42b60636f8852dae0b355 ../downloads/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja)/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 24).bin
43798f7e0a76e88c4171eba052275323e13ed865 ../downloads/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja)/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 25).bin
3b6338e2309d8ebd59268ee099ae86419aa17385 ../downloads/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja)/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 26).bin
414b1d4e46b8ba1d36cdcbc907b3951df79c112c ../downloads/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja)/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja) (Track 27).bin
ae6c9618aab99527135015bc4cb65f8edaaf7f5a ../downloads/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja)/Garou Densetsu Special ~ Fatal Fury Special (Japan) (En,Ja).cue
Logs too long to include, so see attached.
igir_log.txt
1.6.2
18.12.0
Linux
No response
This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.
These updates are awaiting their schedule. Click on a checkbox to get an update now.
@node-rs/crc32
, @types/micromatch
, @types/tar
, reflect-metadata
, unzipper
)@typescript-eslint/eslint-plugin
, @typescript-eslint/parser
, eslint-plugin-jsdoc
, eslint-plugin-simple-import-sort
)mkdocs
, mkdocs-htmlproofer-plugin
, mkdocs-material
)These updates have been manually edited so Renovate will no longer make changes. To discard all commits and start over, click on a checkbox.
.github/workflows/codecov.yml
actions/checkout v4
formsort/action-check-codecov-config v1
actions/checkout v4
volta-cli/action v4
codecov/codecov-action v3
.github/workflows/gh-automerge-disabler.yml
actions/checkout v4
thollander/actions-comment-pull-request v2
thollander/actions-comment-pull-request v2
.github/workflows/gh-automerge-rebase.yml
adRise/update-pr-branch v0.7.2
.github/workflows/gh-dependabot-automerge.yml
actions/checkout v4
.github/workflows/gh-first-interaction.yml
.github/workflows/gh-label-sync.yml
actions/checkout v4
EndBug/label-sync v2
actions/checkout v4
EndBug/label-sync v2
.github/workflows/gh-lock-issues.yml
dessant/lock-threads v5
.github/workflows/gh-pages.yml
actions/checkout v4
actions/checkout v4
actions/checkout v4
actions/setup-python v5
actions/cache v4
actions/checkout v4
actions/setup-python v5
actions/cache v4
.github/workflows/gh-release-drafter.yml
actions/checkout v4
EndBug/version-check v2
volta-cli/action v4
release-drafter/release-drafter v6
thollander/actions-comment-pull-request v2
.github/workflows/gh-repo-update.yml
actions/checkout v4
.github/workflows/gh-stale-issues.yml
actions/stale v9
.github/workflows/lint.yml
actions/checkout v4
rinchsan/renovate-config-validator v0.2.0
actions/checkout v4
actions/checkout v4
actions/setup-go v5
.github/workflows/node-compile.yml
actions/checkout v4
actions/checkout v4
docker/setup-qemu-action v3
volta-cli/action v4
actions/upload-artifact v4
actions/checkout v4
volta-cli/action v4
actions/download-artifact v4
softprops/action-gh-release v2
.github/workflows/node-publish.yml
actions/checkout v4
volta-cli/action v4
thollander/actions-comment-pull-request v2
.github/workflows/node-test.yml
actions/checkout v4
actions/checkout v4
volta-cli/action v4
actions/checkout v4
volta-cli/action v4
actions/checkout v4
volta-cli/action v4
actions/checkout v4
volta-cli/action v4
actions/checkout v4
volta-cli/action v4
.github/workflows/node-version-bump.yml
actions/checkout v4
volta-cli/action v4
peter-evans/create-pull-request v6
.github/workflows/pr-commenter.yml
volta-cli/action v4
thollander/actions-comment-pull-request v2
.github/workflows/pr-renamer.yml
actions/checkout v4
thollander/actions-comment-pull-request v2
package.json
@fast-csv/format 5.0.0
@fast-csv/parse 5.0.0
@node-rs/crc32 1.10.0
7zip-min 1.4.4
archiver 7.0.1
async 3.2.5
async-mutex 0.5.0
chalk 5.3.0
class-transformer 0.5.1
cli-progress 3.12.0
fast-glob 3.3.2
fast-xml-parser 4.3.6
figlet 1.7.0
graceful-fs 4.2.11
is-admin 4.0.0
junk 4.0.1
micromatch 4.0.5
moment 2.30.1
node-disk-info 1.3.0
node-unrar-js 2.0.2
reflect-metadata 0.2.1
semver 7.6.0
simple-statistics 7.8.3
strip-ansi 7.1.0
tar 6.2.1
term-size 4.0.0
trash 8.1.1
typescript-memoize 1.1.1
unzipper 0.10.14
wrap-ansi 8.1.0
xml2js 0.6.2
yargs 17.7.2
@jest/globals 29.7.0
@types/7zip-min 1.3.3
@types/archiver 6.0.2
@types/async 3.2.24
@types/cli-progress 3.11.5
@types/figlet 1.5.8
@types/jest 29.5.12
@types/micromatch 4.0.6
@types/node 20.11.30
@types/semver 7.5.8
@types/tar 6.1.11
@types/unzipper 0.10.9
@types/which 3.0.3
@types/xml2js 0.4.14
@types/yargs 17.0.32
@typescript-eslint/eslint-plugin 7.5.0
@typescript-eslint/parser 7.5.0
auto-changelog 2.4.0
caxa 3.0.1
eslint 8.57.0
eslint-config-airbnb-typescript 18.0.0
eslint-plugin-import 2.29.1
eslint-plugin-jest 27.9.0
eslint-plugin-jsdoc 48.2.1
eslint-plugin-simple-import-sort 12.0.0
eslint-plugin-unicorn 51.0.1
husky 9.0.11
jest 29.7.0
jest-extended 4.0.2
ts-jest 29.1.2
ts-node 10.9.2
typescript 5.4.3
which 4.0.0
node 20.12.2
docs/requirements.txt
mkdocs ==1.5.3
mkdocs-material ==9.5.17
mkdocs-exclude-search ==0.6.6
mkdocs-git-revision-date-localized-plugin ==1.2.4
mkdocs-htmlproofer-plugin ==1.2.0
mkdocs-redirects ==1.2.1
mkdocs-unused-files ==0.2.0
mdx-truly-sane-lists ==1.3
Pillow ==10.3.0
CairoSVG ==2.7.1
I saw you make a new update of igir with the
--only-*
option, it's great ๐I would like to know what about the
{type}
token you spoke before? Just curious, if you have still in mind?And just because my English it's not good enough, I would like describe a use case with
--only-*
option and my first idea.Let say I got a few ROMs:
- 7th Saga, The (USA)
- 16 BIT XMAS 2012 - Snowball Fight (World) (Aftermarket) (Homebrew)
- ActRaiser (Europe)
- Bomberman B-Daman (Japan)
So if I want to copy this to my SD card I will get a
#
folder,a
folder and ab
folder.If I use the
--only-aftermarket
option, I will get only a#
folder with one game.On my point of view, something is missing.
Get the first option, copy all files in a SD card and get
#
folder,a
folder and ab
folder. All games in there.
The difference will be a new folderaftermarket
with one game inside.The name of this option can be something like
--dir-*
(for--dir-demo
,--dir-aftermarket
, etc.)What do you think about?
Originally posted by @21millStreets in #484 (comment)
I'm attempting to run igir
with several DAT files, but I suspect Redump's IBM PC compatible
DAT file of ~40,000 entries is causing the tool some major problems. I've been running the tool for 7 days, and it has been stuck on the parsing DAT files
phase since day 1.
I'm not using the most robust of machines, so I acknowledge it would be reasonable for things to be slow, but this is so slow it seems there must be a practical upper limit on DAT sizes.
http://redump.org/downloads/
http://redump.org/datfile/pc/
I suspect I could unblock myself by manually breaking up the large DAT file into multiple smaller ones, but I have not tried this.
More robust logging to indicate the tool is not hanging. Different memory management strategy for compatibility with larger DAT files.
No response
Maybe I'm missing it, but when using "report" I can't figure out how to tell igir where to place the output report. Currently it's always in the root path sent to igir. Would also be nice to specify a filename so I can programatically parse it afterwards.
No response
No response
Building on top of #326, add the functionality to report on files that were cleaned from the output directory with the igir clean
command.
No response
./bin/igir move zip test
--dat "./fixdat/*"
"${INPUTS[@]}"
--output "./Fixes/"
--dir-dat-name
--overwrite-invalid
When importing a rom that contains of multiple files and more than one share the same checksum, an warning like this will be produced:
WARN: <filename>: not deleting moved file, 3 archive entries were unmatched:
...
As a result, a copy of archive file will remain in the original location.
No warning and the file gets moved properly
No response
1.9.0
n/a
Linux
No response
igir move zip test report --input snes-test --output No-Intro --overwrite --dir-dat-name --single --dat "Nintendo - Super Nintendo Entertainment System (Parent-Clone) (20230318-120602).dat" -vvv
When the ROM archive contains characters in the file name, eg รฃรงรต igir throws out of memory error at the stage of parsing the file headers.
UTF-8 filenames support.
______ ______ ______ _______
| \ / \ | \| \
\$$$$$$| $$$$$$\ \$$$$$$| $$$$$$$\
| $$ | $$ __\$$ | $$ | $$__| $$
| $$ | $$| \ | $$ | $$ $$ ROM collection manager
| $$ | $$ \$$$$ | $$ | $$$$$$$\
_| $$_ | $$__| $$ _| $$_ | $$ | $$ v1.6.2
| $$ \ \$$ $$| $$ \| $$ | $$
\$$$$$$ \$$$$$$ \$$$$$$ \$$ \$$
[10:33:30.270] INFO: DATScanner: scanning DAT files
[10:33:30.340] DEBUG: DATScanner: found 1 DAT file
[10:33:30.343] DEBUG: DATScanner: enumerating DAT archives
[10:33:30.363] DEBUG: DATScanner: downloading DATs from URLs
[10:33:30.365] DEBUG: DATScanner: parsing 1 DAT file
[10:33:30.377] TRACE: DATScanner: Nintendo - Super Nintendo Entertainment System (Parent-Clone) (20230318-120602).dat: attempting to parse 1.5MiB of XML
[10:33:31.111] TRACE: DATScanner: Nintendo - Super Nintendo Entertainment System (Parent-Clone) (20230318-120602).dat: parsed XML, deserializing to DAT
[10:33:31.674] TRACE: DATScanner: Nintendo - Super Nintendo Entertainment System (Parent-Clone) (20230318-120602).dat: 5.7GiB of 4009 games, 1914 parents parsed
[10:33:31.680] INFO: DATScanner: done scanning DAT files
โ Scanning for DATs ยทยทยทยทยทยทยทยทยทยทยทยท | 1 unique DAT found
[10:33:31.689] INFO: ROMScanner: scanning ROM files
[10:33:31.718] DEBUG: ROMScanner: found 1 ROM file
[10:33:31.819] INFO: ROMScanner: done scanning ROM files
โ Scanning for ROMs ยทยทยทยทยทยทยทยทยทยทยทยท | 1 unique ROM found
[10:33:31.826] INFO: HeaderProcessor: processing file headers
# Detecting ROM headers ยทยทยทยทยทยทยทยท | โโโโโโโโโโโโโโโโโโโโโโโโโ | 1/1
<--- Last few GCs --->
[19860:000001F4E086D590] 1705227 ms: Mark-sweep 3974.6 (4132.7) -> 3962.9 (4133.9) MB, 12515.7 / 0.0 ms (average mu = 0.140, current mu = 0.049) task; scavenge might not succeed
[19860:000001F4E086D590] 1720003 ms: Mark-sweep 3976.6 (4134.2) -> 3964.4 (4135.4) MB, 13993.5 / 0.0 ms (average mu = 0.098, current mu = 0.053) task; scavenge might not succeed
<--- JS stacktrace --->
FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
1: 00007FF66314D51F node_api_throw_syntax_error+175743
2: 00007FF6630D2E66 v8::internal::wasm::WasmCode::safepoint_table_offset+59654
3: 00007FF6630D4B72 v8::internal::wasm::WasmCode::safepoint_table_offset+67090
4: 00007FF663B7AAB4 v8::Isolate::ReportExternalAllocationLimitReached+116
5: 00007FF663B65E12 v8::Isolate::Exit+674
6: 00007FF6639E7C6C v8::internal::EmbedderStackStateScope::ExplicitScopeForTesting+124
7: 00007FF6639F4F4D v8::internal::Heap::PublishPendingAllocations+1117
8: 00007FF6639F1FD7 v8::internal::Heap::PageFlagsAreConsistent+3367
9: 00007FF6639E4707 v8::internal::Heap::CollectGarbage+2039
10: 00007FF66398BAA5 v8::internal::IndexGenerator::~IndexGenerator+22565
11: 00007FF663067153 EVP_CIPHER_CTX_get_cipher_data+4835
12: 00007FF663065AF6 v8::CTypeInfoBuilder<void>::Build+21718
13: 00007FF6631A922B uv_update_time+491
14: 00007FF6631A8D72 uv_run+1266
15: 00007FF66317B465 node::SpinEventLoop+325
16: 00007FF66308A588 EVP_CIPHER_CTX_get_cipher_data+149272
17: 00007FF66310F372 node::InitializeOncePerProcess+2898
18: 00007FF663110BA3 node::Start+835
19: 00007FF662F17ECC AES_cbc_encrypt+124156
20: 00007FF66417E248 inflateValidate+18712
21: 00007FFAA8CC7604 BaseThreadInitThunk+20
22: 00007FFAAA9426A1 RtlUserThreadStart+33
1.6.2
Embeded
Windows 10
No response
I profit to ask this:
I like the report in the Terminal, I use also the CSV, but I would like both.
If I use this:
npx igir report --dat DAT --input ROM --report-output report.csv >> test.txt
I get this in a file:
Sega - Master System - Mark III ... Sega - 32X ... 213/213 games, 3/3 BIOSes, 61/61 retail releases found Sega - Mega Drive - Genesis ... Sega - Game Gear ... 808/808 games, 1/1 BIOSes, 490/490 retail releases found Sega - PICO ... Sega - Master System - Mark III ... 715/722 games, 13/13 BIOSes, 540/547 retail releases found Sega - SG-1000 ... Sega - Mega Drive - Genesis ... 2โฏ799/2โฏ801 games, 31/31 BIOSes, 1โฏ766/1โฏ766 retail releases found SNK - NeoGeo Pocket ... Sega - PICO ... 445/445 games, 343/343 retail releases found
I get one line empty and one line with data.
I would like the same result into the Terminal, see the first message (alphabetic order, result, etc. - and here it's good because the name of platform are complete).
Am I doing something wrong?
Originally posted by @21millStreets in #517 (comment)
This feature allows the creation of a fixdat with all the entries which are missing from the main dat, so it will be easy to search and rebuild the missing roms
a flag to the command "report" for example something like "--fix-dat" which creates the dat with only the missing entries of the main dat.
example of a fixdat content created with RomVault:
<?xml version="1.0"?>
<datafile>
<header>
<name>FixDat_datname</name>
<description>FixDat_datname</description>
<version>20230412-000000</version>
<date>2023-04-12</date>
<author>RomVault</author>
<homepage>N/A</homepage>
<url>N/A</url>
<romvault/>
</header>
<game name="gamename">
<description>gamename</description>
<rom name="romname" size="1048576" crc="crc32" md5="md5"/>
</game>
</datafile>
npx -yes igir@latest -vvv copy --input input --output output
npx -yes igir@latest -vvv move --input input --output output
Using an input folder with certain combinations of ROMs, the tool hangs (reliably) before completing the copy
or move
operation. If the tool is run on each ROM individually, it completes successfully.
I have witnessed this behavior with multiple different ROMs, but managed to catch this one recently and whittled it down to the smallest footprint to reproduce as I could. I have only witnessed this behavior with cue/bin ROMs. Maybe because they're larger on disk? Maybe because the zip archives can have many more files in them?
$ ls -l input/
total 1114376
-rwxrwxrwx+ 1 jeff users 401968677 May 13 20:16 'Eye of the Beholder (USA).zip'
-rwxrwxrwx+ 1 jeff users 310171331 May 13 20:16 'Lunar - Eternal Blue (USA) (RE).zip'
-rwxrwxrwx+ 1 jeff users 428977255 May 13 20:16 'Lunar - The Silver Star (USA) (RE).zip'
All ROMs in the input folder that should be copied/moved are copied/move and the tool does not hang.
______ ______ ______ _______
| \ / \ | \| \
\$$$$$$| $$$$$$\ \$$$$$$| $$$$$$$\
| $$ | $$ __\$$ | $$ | $$__| $$
| $$ | $$| \ | $$ | $$ $$ ROM collection manager
| $$ | $$ \$$$$ | $$ | $$$$$$$\
_| $$_ | $$__| $$ _| $$_ | $$ | $$ v1.6.3
| $$ \ \$$ $$| $$ \| $$ | $$
\$$$$$$ \$$$$$$ \$$$$$$ \$$ \$$
[20:18:46.321] INFO: running
[20:18:46.326] WARN: No DAT files provided, consider using some for the best results!
[20:18:46.339] INFO: ROMScanner: scanning ROM files
[20:18:46.393] DEBUG: ROMScanner: found 3 ROM files
[20:18:50.806] INFO: ROMScanner: done scanning ROM files
โ Scanning for ROMs ยทยทยทยทยทยทยทยทยทยทยทยท | 114 unique ROMs found
[20:18:50.815] INFO: HeaderProcessor: processing file headers
[20:18:50.833] DEBUG: HeaderProcessor: found headers in 0 ROMs
[20:18:50.834] INFO: HeaderProcessor: done processing file headers
โ Detecting ROM headers ยทยทยทยทยทยทยทยท | 114 ROMs processed
[20:18:50.842] INFO: DATInferrer: inferring DATs for 114 ROMs
[20:18:50.844] DEBUG: DATInferrer: inferred 1 DAT
[20:18:50.850] INFO: DATInferrer: done inferring DATs
[20:18:50.851] INFO: processing 1 DAT
[20:18:50.857] INFO: CandidateFilter: input: generating candidates
[20:18:50.867] DEBUG: CandidateFilter: input: 114 unique ROMs found
[20:18:52.026] TRACE: CandidateFilter: input: Eye of the Beholder (USA): found 1 candidate
[20:18:52.786] TRACE: CandidateFilter: input: Lunar - Eternal Blue (USA) (RE): found 1 candidate
[20:18:53.793] TRACE: CandidateFilter: input: Lunar - The Silver Star (USA) (RE): found 1 candidate
[20:18:53.797] DEBUG: CandidateFilter: input: generated 1.5GiB of 3 candidates for 3 parents
[20:18:53.798] INFO: CandidateFilter: input: done generating candidates: 2s
[20:18:53.800] INFO: PatchCandidateGenerator: input: generating patched candidates
[20:18:53.804] DEBUG: PatchCandidateGenerator: input: 0 unique patches found
[20:18:53.806] INFO: PatchCandidateGenerator: input: done generating patched candidates
[20:18:53.821] INFO: CandidateFilter: input: filtering candidates
[20:18:53.827] TRACE: CandidateFilter: input: Eye of the Beholder (USA): 1 candidate before filtering
[20:18:53.834] TRACE: CandidateFilter: input: Eye of the Beholder (USA): 1 candidate after filtering
[20:18:53.836] TRACE: CandidateFilter: input: Lunar - Eternal Blue (USA) (RE): 1 candidate before filtering
[20:18:53.842] TRACE: CandidateFilter: input: Lunar - Eternal Blue (USA) (RE): 1 candidate after filtering
[20:18:53.844] TRACE: CandidateFilter: input: Lunar - The Silver Star (USA) (RE): 1 candidate before filtering
[20:18:53.847] TRACE: CandidateFilter: input: Lunar - The Silver Star (USA) (RE): 1 candidate after filtering
[20:18:53.851] DEBUG: CandidateFilter: input: filtered to 1.5GiB of 3 candidates for 3 parents
[20:18:53.859] INFO: CandidateFilter: input: done filtering candidates
[20:18:53.861] INFO: ROMWriter: input: writing 3 candidates
[20:18:53.871] TRACE: ROMWriter: input: Eye of the Beholder (USA): writing 1 candidate
[20:18:53.877] TRACE: ROMWriter: input: Lunar - Eternal Blue (USA) (RE): writing 1 candidate
[20:18:53.879] TRACE: ROMWriter: input: Lunar - The Silver Star (USA) (RE): writing 1 candidate
[20:18:56.942] TRACE: ROMWriter: input: Lunar - Eternal Blue (USA) (RE): no zip archives to write
[20:19:04.432] TRACE: ROMWriter: input: input/Lunar - Eternal Blue (USA) (RE).zip writing to output/Lunar - Eternal Blue (USA) (RE).zip
[20:19:04.521] TRACE: ROMWriter: input: Lunar - The Silver Star (USA) (RE): no zip archives to write
[20:19:04.525] TRACE: ROMWriter: input: input/Lunar - The Silver Star (USA) (RE).zip writing to output/Lunar - The Silver Star (USA) (RE).zip
โ Processing DATs ยทยทยทยทยทยทยทยทยทยทยทยทยทยท | โโโโโโโโโโโโโโโโโโโโโโโโโ
โ input ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท | โโโโโโโโโโโโโโโโโโโโโโโโโ | 2/3
Process is hung at this point. Worth noting that Lunar - The Silver Star (USA) (RE),zip
and Lunar - Eternal Blue (USA) (RE).zip
are successfully copied at this point, where Eye of the Beholder (USA).zip
is not.
1.6.3
18.12.0
Linux
No response
No response
To reduce spam, drop the log level for output token replacement failure messages (e.g. {pocket}
and {mister}
) from WARN to INFO.
This will require docs/
updating that warns about the current spam, as well.
No
Upon startup of igir
, asynchronously check for new versions (via npm, via GitHub releases, etc.) and log if a new one exists.
No response
https://wiki.batocera.org/cd_image_formats#multi-disc_games
Some disc-based emulators won't support zip files, so would be nice to generate these kinds of solutions. The problem you see as a user is you end up with multiple copies of a game in the UI (unclear if it launches each disc, havent tried).
May be out of scope for this project, and there may be other formats or other solutions. Super adjacent though and somehow could be nice as part of the copy-to-sorted story.
An improved addition woudl be to allow folder creation per game:
https://wiki.batocera.org/cd_image_formats#a_subfolder_for_each_multi-disc_game
Feels a little gross to do this for every single emulator though just to support disc-based ones in a single command.
Either way it looks like the .m3u is still needed. Maybe could just be an option to generate m3us when there are multi disc games, and an additional option to generate a folder per rom (which maybe you can pull off today w/ the output tokens, didnt eval).
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.