Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Small notes list #94

Open
1 of 5 tasks
Wohlstand opened this issue Nov 2, 2019 · 6 comments
Open
1 of 5 tasks

Small notes list #94

Wohlstand opened this issue Nov 2, 2019 · 6 comments
Assignees

Comments

@Wohlstand
Copy link
Owner

After giving a comment to this video, AshKirby have replied me:

@Wohlstand You mean to tell me that the PC-98 soundtrack of Doom was made using a poor sounding OPN2 based sound program trying to imitate the even crappier sounding OPL sound chips used in sucky DOS games instead of a proper OPN or OPNA based sound program, and you're the one responsible for creating that same sappy sound program(fellow chiptune artist Ozaleto told me that you were the creator of that program)? In that case, the PC-98 soundtrack could use some serious improvement, as well as that sound program libOPNMIDI you made. For starters, the program could seriously use support for the OPN2's PCM Dac that's on channel 6. Next, if you're gonna make a sound program with the name OPN in it and use that said program to compose a PC-98 soundtrack, then at least give the sound program support for the actual OPN sound chips used with the PC-98(the original OPN aka the YM2203 and it's successor the OPNA aka the YM2608), as well as support for all of the sound channels on each of the OPN sound chips, and NOT JUST THE FM ONES. Next, I would suggest that you add support for FM Channel 3's CSM and multi op/channel modes for each of the OPN sound chips. Next, I would recommend support for SSG-EG envelope(which comes from the built-in YM2149 that each of the OPN sound chips sans the OPN2 have) that each of the OPN sound chips have built in(thought the OPN2 has the envelope built in without having the YM2149 built-in within it as well). Next I would suggest implementing features from PMD, since that's the music tool that mainly used to compose PC-98. That way, it can sound more like an actual PC-98 soundtrack! http://battleofthebits.org/lyceum/View/Professional%20Music%20Driver%20Effects%20Commands , https://pigu-a.github.io/pmddocs/pmdmml.htm , Next, if libOPNMID dosen't have support for the sine wave LFO that each of the OPN sound chips have, I suggest adding that to it as well. And finally, I suggest ditching trying to have the program imitate or copy the sound and style of the OPL DOS sound chips, unless it's the OPL3'S 4 op mode.

I have replied next:
@ashkirby , yeah, I see, and yeah: on the side of libOPNMIDI I have added support of some OPNA emulators are can be chosen between others are OPN2. The first chip I targeted is OPN2, but not YM2203 yet. However, it's technically possible to support it as it's compatible, however, with 3 only FM voices, but with some PSG, yeah.

  • The SSG-EG is supported and can be used in instruments already.
  • Ch3-CSM isn't supported yet, however, I saw mentions of it in the OPN2 documentation, however, I have no idea for what it can be used (I heard that for drums).
  • PCM Dac support is already planned to support Implement PCM voices support through YM2612's DAC #5 however, there are some challenges I have I must to solve until I'll support this on libOPNMIDI side.
  • PSG with SN (for OPN2) or OPNA-SSG I going to also support since I also have OPNA chips support.
  • OPNA's rhythm thing also going to be used.
    Thanks for the notes, they are useful!
    Speaking about OPL3, while I worked on my GM bank, ported some instruments from OPL3 banks I had around. It's not easy to tune that, however, a good idea to make the conversion of instruments between OPL<->OPN operator formats. For OPL3 especially I have another library here: https://github.com/Wohlstand/libADLMIDI (the name is the result of "ADLMIDI" player that I used as the initial base for libADLMIDI I made and together with my friend grown it with huge progress).
@freq-mod
Copy link
Contributor

freq-mod commented Nov 17, 2019

I would also like, if possible, to have instrument arpeggio pitch slide up/down, in similiar fashion to Bamboo Tracker/PMD. That way, drums and SFX instruments could be drastically improved.

Ch3-CSM isn't supported yet, however, I saw mentions of it in the OPN2 documentation, however, I have no idea for what it can be used (I heard that for drums).

Implementation of CSM will be very hard due to scarce documentation, and uses will certainly be very limited. It's not used for drums, but rather, veeeeery crude and rudimentary speech synthesis:
https://www.youtube.com/watch?v=fI5f35tXF1Q

@Wohlstand
Copy link
Owner Author

Wohlstand commented Nov 17, 2019

pitch slide up/down

That I have also planned and I have specified that in WOPLv3 draft you can see.

@jpcima
Copy link
Collaborator

jpcima commented Nov 17, 2019

I agree with all being said, it's good idea to improve and also align with Bamboo tracker abilities.

@freq-mod
Copy link
Contributor

freq-mod commented Nov 17, 2019

That I have also planned and I have specified that in WOPLv3 draft you can see.

You're right, I forgot about that.
Bamboo Tracker has also ability to change FM parameters (FB level, freq. multiple, attack rate, etc.) on fly, mid-note via macro. That also would make a nice enhancement in further future.

@Wohlstand
Copy link
Owner Author

change FM parameters (FB level, freq. multiple, attack rate, etc.) on fly

By MIDI this looks like introducing of certain controllers, custom NRPN things, or own SysEx messages.

@jpcima
Copy link
Collaborator

jpcima commented Nov 17, 2019

@Wohlstand for such particular things, I advise to allow setting midi-learn mappings

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Super task
Development

No branches or pull requests

3 participants