- Read and parse gbs-file headers in the browser.
- Mimics output of the
gbsinfo
tool found in gbsplay.
“Any application that can be written in JavaScript, will eventually be written in JavaScript.”
- Atwood's law
- Vanilla JavaScript. No dependencies.
- UTF-8 support.
- Open gbsinfo-js.
- Select a
.gbs
-file using the GUI.
Output results as JSON:
$ node gbsinfo.js [FILE]...
For pretty printed JSON:
$ node gbsinfo.js blastermaster.gbs | jq
{
"identifier": "GBS",
"version": 1,
"songs": 14,
"firstSong": 1,
"loadAddress": 16368,
"initAddress": 16368,
"playAddress": 16387,
"stackPointer": 57344,
"title": "Blaster Master: Enemy Below",
"author": "Akira Suda",
"copyright": "2000 Sunsoft",
"timing": "128.00Hz timer",
"file": {
"size": 112,
"romSize": 16384,
"banks": 1
}
}
- Only supports ASCII-format.
- Number fields are displayed as zero-padded hex-values in the web version.
- Browser with ES6-support.
- Node v12.x or later.
Run $ node tests/decode.test.js
.
They are written using jspunytest which is bundled inside tests/punytest.js
.
GPL-3.0-only. See COPYING.
- Uses
jspunytest
(MIT licence) for testing.