wbahnassi wrote on 2024-07-24, 12:45:Hi. Thanks for the nice tool. I was trying VGMSlap the other day to capture instruments from actual game music and replicate the […]
Show full quote
Hi. Thanks for the nice tool. I was trying VGMSlap the other day to capture instruments from actual game music and replicate them inside of Adlib Tracker 2.
However, several parameters are shown "interpreted" in VGMSlap rather than actual register values. AdTrack2 takes the register numbers without much fumbling AFAICT.
Is it possible to have a mode where you show actual register values instead of converting them to more "human understandable" display?
Things like wave form shape, feedback, volume (I think this is reversed) and so on.
Another nice to have feature is if you can consume .DRO files directly. Not very important, but more of a convenience feature, since DRO->VGM conversion tools exist.
Otherwise, very cool! Thanks, and keep it up!
I can't guarantee it, but I could look into having it as an alternate display mode in the future alongside some others I'm thinking of (need some code shuffling to untie some of the interpretation/drawing code first). The register values are stored as-is and the only change is what's being put on screen as a result of those numbers, so the capability is there. That said the goal of the program is mostly to look nice and make it more human understandable.
If you're looking to do instrument rips, have you tried importing VGMs using OPL3BankEditor? I've used that in the past and additionally worked with it to help verify results for what VGMSlap is putting on screen. It may not be 100% ideal for importing into AT2 if you're doing 4-op, though - I don't think it exports any 4-op capable formats that AT2 understands. (It does for Furnace, though)
Regarding chip values, VGMSlap stays pretty close to what's actually being put into the chip. Even the "interpreted" values are tied directly to the values in the register. You can cross reference with this mirror of the well-known OPL3 Programmer's Guide. For example, if VGMSlap shows the feedback value "/4" it aligns to the same "/4" value as written in the guide, which is register value 3. Heck, I've been doing this so much now that I've started to memorize the mapping between them. 😀
In comparing to tracker programs, the most common differences seem to be in how the volume is interpreted. The OPL internally uses "volume attenuation" so 0 really is the loudest value and 3F really is the quietest (or highest attenuation). I believe AT2 inverts this intentionally because that is more like what a musician would expect, that the highest value equals the highest volume. Just doing a cursory look at AT2, which I haven't used in a few years, I think everything else lines up as expected. (I think OPL3BankEditor mentioned above also inverts volume, and Sustain as well)
Lastly, DRO support, while simple, not a priority. It used to be more popular, but is poorly suited to casual listening, and seems to mostly be used now as an intermediary format on the way to VGM anyway. Heck, all the VGM work that I do bypasses DRO completely with a patched DOSBox. I have done some preparatory work to decouple the VGM reading from the rest of the program, though, so who knows what the future will hold?
The OPL Archive - Preserving MS-DOS music in a unified format!