Closed jpcima closed 10 months ago
I posted a fix and I just merged it, to make quick testing possible. It's needed to ignore the upper register bank on OPL2, which wasn't done before. I think the instruments are way better now.
@jpcima Yay, that helped, thank you! Another issue is that some instruments have no sound. Here is the zip dro+imf to compare. Setup tune from Flight of The Amazon Queen. ins 3, channel 6 ins 4, channel 7 ins 1, channel 8 As you see some ADSR values are not filled. 2.zip
i guess it's needed to increase the total level of the carriers. I saw an implementation of this in IMF import (and in OPN2). In IMF, only 2-op algorithms are supported. In this case, I should add support of all 6 possible algorithms, because dro can also encode 4-op instruments.
@gnidorah this is fixed in the latest, the file attached is now working.
About the music tag format, I link the information about it. It's not required to implement it, because the format has it at the end of file, and the OPL register payload has a size field in the header.
https://github.com/adplug/adplug/blob/master/src/dro2.cpp#L91-L126 https://github.com/adplug/adplug/blob/master/src/dro.cpp#L99-L135
@jpcima That works good, thank you much! Will try more things with it later.
That works good, thank you much! Will try more things with it later.
@gnidorah Did it work? let us know, so we can close the issue.
@jpcima Still works fine! Thank you much for the hard work!
Question: does this understands rhythm-mode percussions? I guess, there are rhythm-mode percussions may exist, and there are has different way of use, I even can explain how, but, after when I'll come to my home, but in short words: in 0xBD register is the rhythm-mode bit and 5 bits are key on/off per each slot:
@Wohlstand In 2.zip/queen_000.dro "Ins 0, channel 1" is percussion (and all notes sound the same).
Captures of SBTimbre instruments using rhythm-mode channels. They use register BD, and they are not currently recognized by the importer.
BassDrm1.dro.gz Cymbal1.dro.gz HiHat1.dro.gz Snare1.dro.gz TomTom6.dro.gz
The off topic note: make rhythm mode drums for CMF importer, it's easy but I'll need to scan music tracks to identify which instruments are rhythm mode
What's a good reference documentation on rhythm channel operation? I still try to figure out how this stuff works precisely.
Closed because of no response for a long time.
There remain some elements to fix in the DRO file importer.
[ ] Support of rhythm-mode instruments
[x] Feedback/Algorithm register
SBTimbre has a reset command on the Fb/Alg register
C0
. Despite this, the note sounds as if these have not been reset by the command. It's validated by DOSBox and also by replaying the dro file inadplay
.It seems not a misinterpretation of DRO format; I logged register writes from
libadplug
linked toadplay
, and it also showed the sequence.sbtimbre-sample.tar.gz
Quoted from @gnidorah:
Apparently libadplug shows there is a header extension of DOSBox files which permits tagging. It may be needed to handle this case.