Pre-compiled binaries and Node.js wrapper for MAME's chdman tool.
OS | Architectures | Additional Instructions |
---|---|---|
Windows |
|
|
macOS |
|
SDL2 is required to be installed separately:brew install sdl2 |
Linux |
|
SDL2 is required to be installed separately:
|
You can easily run the chdman
binary for your OS from the command line like this:
npx chdman [command] [options..]
Examples:
npx chdman help
npx chdman info --input Image.chd
npx chdman createcd --input Disc.cue --output Disc.chd
npm install --save chdman
import chdman from 'chdman';
/**
* Create and extract hard disks
*/
await chdman.createHd({
inputFilename: 'original-image',
outputFilename: 'image.chd',
});
console.log(await chdman.info('image.chd'));
// { inputFile: 'image.chd', fileVersion: 5, ... }
await chdman.extractHd({
inputFilename: 'image.chd',
outputFilename: 'extracted-image',
});
/**
* Create and extract CD-ROMs
*/
await chdman.createCd({
inputFilename: 'Original.cue',
outputFilename: 'CD.chd',
});
console.log(await chdman.info('CD.chd'));
// { inputFile: 'CD.chd', fileVersion: 5, ... }
await chdman.extractCd({
inputFilename: 'CD.chd',
outputFilename: 'Extracted.cue',
outputBinFilename: 'Extracted.bin',
});
/**
* Create and extract DVD-ROMs
*/
await chdman.createDvd({
inputFilename: 'Original.iso',
outputFilename: 'DVD.chd',
});
console.log(await chdman.info('DVD.chd'));
// { inputFile: 'DVD.chd', fileVersion: 5, ... }
await chdman.extractDvd({
inputFilename: 'DVD.chd',
outputFilename: 'Extracted.iso',
});
MAME and its tools are licensed under the GPLv2 license.