Hacking How do I merge my DS ROMs ?

goodmerger

Member
Newcomer
Joined
Dec 21, 2008
Messages
5
Trophies
0
XP
11
Country
Goodmerge has proven to be simple and decent on the surface, but when you get to the point where it has to start merging, it becomes the dumbest app I've ever used. I found this goodmerge thread after I kept getting this error when I kept trying to merge no-intro DS roms using the dat-o-matic xml & xmdb files.

GoodMerge 3.1.2199.25374 - 21/12/2008 20:35:06
Nintendo_-_DS 3169+x119 - Using a maximum of 1934MB RAM.

Transformers - Autobots
Decompressing… Done.


Error: No ROMs found matching "Transformers - Autobots (Europe).*"

It's really puzzling me why this error keeps coming up. All my settings look correct under the file locations, compression, advanced and other locations tabs. The have.txt I created with clrmame using the dat-o-matic xml file for nds seems correct - all list names correspond to the roms properly. I use the xmdb file from datomatic used with goodmerge, point goodmerge to the have.txt, etc. Source compression is zip, output 7z. I've left max amount of RAM on default.

I've pointed it to the 7z.exe file (there is no 7za used in the latest 7z program). Pointed to the Rar.exe file too for the WinRAR program.

I'll pull my hair out if I try to figure this out alone for much longer.
hate2.gif
I'm hoping someone may know the solution to this annoying problem because I'm all out of ideas.

Merry Xmas.
 

kazumi213

Well-Known Member
Member
Joined
Oct 16, 2006
Messages
293
Trophies
0
XP
75
Country
Please try to adjust your "7-Zip Options" (under Compression tab in GM) according to your installed physical RAM, as described in previous posts.

7za.exe is the command line version (standalone executable) and is distributed as a separate package (download, "7-Zip Command Line Version")

If it still isn't working after these tweaks, please post the names of your "Transformers" ROMs *exactly* as they appear in your source folder and on the "have.txt" file.
 

goodmerger

Member
Newcomer
Joined
Dec 21, 2008
Messages
5
Trophies
0
XP
11
Country
I've tried what you said by using the command line version (didn't know about that, thanks for telling me), but now I keep getting the error below...

Decompressing… Done.
Arguments: a -bd -t7z -ms -mmt -m0fb=128 -mx=7 -m0d=202m
26/12/2008 17:26:27 - 402,653,184 bytes in 6 files compressed to…


Error: External (Command line -- C:\Program Files\GoodMerge\7za462\7za.exe a -bd -t7z -ms -mmt -m0fb=128 -mx=7 -m0d=202m -w"C:\Program Files\GoodMerge" "C:\test\Transformers - Autobots.7z" @"C:\Program Files\GoodMerge\~gmlst~")


7-Zip (A) 4.62 Copyright © 1999-2008 Igor Pavlov 2008-12-02
Scanning

Creating archive C:\test\Transformers - Autobots.7z



System error:
The parameter is incorrect.


I've tried lowering the ram (it's all within available RAM limits, too) and that doesn't make a difference - still get the above error. It was within available limits on the default setting anyway.

Names in explorer file list:
Transformers - Autobots (Europe).zip
Transformers - Autobots (France).zip
Transformers - Autobots (Germany).zip
Transformers - Autobots (Italy).zip
Transformers - Autobots (Spain).zip
Transformers - Autobots (USA).zip

Names in have.txt:
Transformers - Autobots (Europe)
Transformers - Autobots (France)
Transformers - Autobots (Germany)
Transformers - Autobots (Italy)
Transformers - Autobots (Spain)
Transformers - Autobots (USA)

I'm trying to use a No-Intro XMDB file with Goodmerge, it's on the datomatic.no-intro.org website.

This is weird.
 

kazumi213

Well-Known Member
Member
Joined
Oct 16, 2006
Messages
293
Trophies
0
XP
75
Country
I get that error when using too high dictionary size for the installed physical RAM.

You are using 202 MByte dictionary size which means that you must have 3+ GByte installed RAM. How much physical RAM do you *actually* have?
 

goodmerger

Member
Newcomer
Joined
Dec 21, 2008
Messages
5
Trophies
0
XP
11
Country
kazumi213 said:
I get that error when using too high dictionary size for the installed physical RAM.

You are using 202 MByte dictionary size which means that you must have 3+ GByte installed RAM. How much physical RAM do you *actually* have?

3GB exactly.. but I use vista and in use always says anything between 33% and 66%

Edit: tried lowering it to less than 1GB and it starts to compress fine.. must be cause there's a lot of memory in use then :\. even if I terminate a lot of programs I don't think I could get ramuse down to lower than 33% though

would t here be much difference in finished output size of goodmerge archives using 1GB vs the full 3GB anyway?

thanks for the big help
 

kazumi213

Well-Known Member
Member
Joined
Oct 16, 2006
Messages
293
Trophies
0
XP
75
Country
I told you to read the previous posts
lecture.gif
. Anyway:

kazumi213 said:
Check that you aren't using too overkill "7-Zip Options" (under Compression tab) for your system. There are 3 values:

MB 'Max' RAM
MB 'Max' Dict
MB 'Ultra' Dict

For a standard 2 GB RAM system, reduce the first value so the second reads "128".

With 3 GB physical RAM you should be able to use "MB 'Max' Dict" values between 128 and 192, so you can adjust "MB 'Max' RAM" accordingly until you find a problem.

A dictionary size of 128 MB, while not the absolute best for NDS, will give you quite good results and is a safe value.
 

goodmerger

Member
Newcomer
Joined
Dec 21, 2008
Messages
5
Trophies
0
XP
11
Country
kazumi213 said:
I told you to read the previous posts
lecture.gif
. Anyway:

kazumi213 said:
Check that you aren't using too overkill "7-Zip Options" (under Compression tab) for your system. There are 3 values:

MB 'Max' RAM
MB 'Max' Dict
MB 'Ultra' Dict

For a standard 2 GB RAM system, reduce the first value so the second reads "128".

With 3 GB physical RAM you should be able to use "MB 'Max' Dict" values between 128 and 192, so you can adjust "MB 'Max' RAM" accordingly until you find a problem.

A dictionary size of 128 MB, while not the absolute best for NDS, will give you quite good results and is a safe value.

It only let me use dead on 128 (and no higher) which i found out before I came back to read your reply. Strange that on a 3GB system it only lets me use 1.2GB - would have expected it to let me use 1.5, but no. I don't care about having the best compression as long as it at least near enough halves it in size and nails the clones.
 

doyama

Well-Known Member
Member
Joined
Nov 30, 2006
Messages
1,288
Trophies
0
XP
171
Country
United States
Why not use NDSCRC? I find that the 100 rom per sub directory listing makes it much more manageable to find stuff.
 

Citrus

Member
Newcomer
Joined
Mar 5, 2006
Messages
18
Trophies
1
XP
554
Country
France
goodmerger said:
It only let me use dead on 128 (and no higher) which i found out before I came back to read your reply.
I have the same problem, and I have 4 GB of ram.
It seems the command line version doesn't support the option -m0d= with more than 128m. So, I used the 64 bit gui version, renamed the file 7z.exe to 7za.exe, and it is working, so far.
 

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
36,798
Trophies
3
XP
28,321
Country
United Kingdom
Bit of a bump but OK.
Long story short if you 7zip large numbers of DS roms together you can seriously reduce file sizes.

Compression works by taking similar parts of files and giving them a number (how it does this depends on the method used but they are are based around that) that can later be decoded into the original data.
Most traditional compression does this on a file by file basis but 7zip which this is all based on treats files as one continuous file if you will and pulls data from all files you compress.
DS roms are fairly similar in nature and as compression is fairly costly in terms of resources (something the DS lacks a great deal of) so they are rarely compressed, 7zip is also a damn good compression method for individual files so it is even better.
For how to do it see the above posts.
 

Isaiah

The Conductor
Member
Joined
Aug 24, 2008
Messages
522
Trophies
0
Location
Brisbane
XP
219
Country
Wow klokwerk how did you download ALL of them! Australian internet isn't the shit, it is shit! What does Australia have unlimited bandwidth now?
 

kazumi213

Well-Known Member
Member
Joined
Oct 16, 2006
Messages
293
Trophies
0
XP
75
Country
Citrus said:
goodmerger said:
It only let me use dead on 128 (and no higher) which i found out before I came back to read your reply.
I have the same problem, and I have 4 GB of ram.
It seems the command line version doesn't support the option -m0d= with more than 128m. So, I used the 64 bit gui version, renamed the file 7z.exe to 7za.exe, and it is working, so far.

Just to clarify the max dictionary size limitation under Win 32-bit OS, from the 7-Zip FAQ page:

Why can't 7-Zip use big dictionary in 32-bit Windows?

32-bit Windows allocates only 2 GB of virtual space per one application. Also that block of 2 GB can be fragmented (for example, by some DLL file), so 7-Zip can't allocate one big contiguous block of virtual space. There are no such limitations in 64-bit Windows. So you can use any dictionary in Windows x64, if you have required amount of physical RAM.


This means that when using a 32-bit OS, the max dictionary size you can use is 128 MBytes, no matter if you have more than 2 GBytes physical RAM. Note that "7za.exe" is intended for 32-bit OS. You need a 64-bit OS in order to use up to 256 MBytes dictionary size (and the 64-bit version of 7-Zip, as Citrus said).

I suggest editing the batch file to point to the correct executable instead of renaming the executable itself.
 

Citrus

Member
Newcomer
Joined
Mar 5, 2006
Messages
18
Trophies
1
XP
554
Country
France
I'm using Vista 64. 64 bits softwares don't work on 32 bits OS.
I wasn't using the batch file, but goodmerge itself.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    SylverReZ @ SylverReZ: @OctoAori20, Thank you. Hope you're in good spirits today like I am. :)