LMMS / lmms

Cross-platform music production software
https://lmms.io
GNU General Public License v2.0
8.16k stars 1.01k forks source link

request: docs for nescaline, freeboy and SID #6532

Open ghost opened 2 years ago

ghost commented 2 years ago

Hi

As you can read here I try to make a NES chiptune. (and later freeboy and SID).

https://lmms.io/forum/viewtopic.php?t=35767

It's difficult for 2 reasons:

  1. There seems to be no documentation for nescaline, freeboy and SID which makes it very difficult for beginners. What are the buttons doing, what channel represents a specific channel on the NES, ... (See https://lmms.io/forum/viewtopic.php?t=35767 )

https://docs.lmms.io/user-manual/5-built-in-instruments/5.9-nescaline

https://docs.lmms.io/user-manual/5-built-in-instruments/5.15-sid

https://docs.lmms.io/user-manual/5-built-in-instruments/5.3-freeboy

  1. What number of channels did the original hardware have and how are they mapped to the instrument channels? Without documentation, I can't figure it out.

Is there somebody interested in writing documentation (on the LMMS documentation website) for nescaline, freeboy and SID with specific focus on the different channels and a summary of what each button of the instrument is doing exactly? Maybe with example (small) songs for LMMS that we can download.

Thanks Lisa

allejok96 commented 2 years ago
  1. There seems to be no documentation for nescaline, freeboy and SID

This would be nice to have.

  1. What number of channels did the original hardware have and how are they mapped to the instrument channels?

How the original NES worked has nothing to do with LMMS. Nescaline is just a NES-like instrument, it's not an exact copy of the NES sound chip. For example this article states that the NES only had 3 different pulse widths on their pulse wave tracks and it could not control volume of it's triangle wave, but in Nescaline there's 4 widths for CH1 and CH2 which are the pulse waves and a volume control on CH3 which is the triangle wave.

ghost commented 2 years ago

How the original NES worked has nothing to do with LMMS. Nescaline is just a NES-like instrument, it's not an exact copy of the NES sound chip.

Why were controls added that didn't exist on the original sound chip?

Is the same true for freeboy and SID? So are they instruments not exactly behaving as their original hardware and may have controls that were not on the original gameboy/C64 sound chip? So the goal of nescaline/freeboy/SID is to "sound" like the original sound hardware but not to clone it all the way up to the latest control available on the original chip?

Thanks

allejok96 commented 2 years ago

So the goal of nescaline/freeboy/SID is to "sound" like the original sound hardware but not to clone it all the way

Yes. It's called fakebit. Nowdays we don't have the same technical limitations as they had in the 80s, so why enforce it on people creating music?

There is more to it than just the plugin... If you want to make an authentic NES melody, you can't play more than 4 notes at the same time ever. To create authentic chip tune you must learn how the actual chip works.

ghost commented 2 years ago

Can I maybe request a small option in nescaline that, when turned on, enforces nescaline to only allow hardware accurate controls? So you can turn this option on/off. I don't know if this fits into LMMS' goals :)

Monospace-V commented 2 years ago

Can I maybe request a small option in nescaline that, when turned on, enforces nescaline to only allow hardware accurate controls? So you can turn this option on/off. I don't know if this fits into LMMS' goals :)

I mean, it could be done, but usually any user interested in doing this would want to know the limitations themselves, and would by extension be capable of limiting themselves. It sounds good, though, and I'd use it if it were there more often than I'd challenge myself to limitations without a check, all right. But four-note forced polyphony, beyond which you can't place notes? Is it feasible? Does this extend to release time, halfway through note, etc? I don't know enough about what exactly is meant by limited polyphony on old devices to answer that. Is it possible to put these into LMMS? The LB302 plays a random note if two notes start at the same time. Do we want something like this or a hard limit on what you can place?

ghost commented 2 years ago

I think maybe it's too much work just for this feature :) As a non-developer I maybe think time could be used much better for other features. I didn't realize this when I wrote my idea here.

allejok96 commented 2 years ago

Well, a "limited" mode is maybe not that important, but documentation is. As a non-dev that's perhaps one area you can help with? If you want to and feel comfortable that is. Good bug reports are also a way of helping :)