Skip to content

Conversation

@Gregaras
Copy link
Contributor

@Gregaras Gregaras commented Aug 21, 2025

Pull request was done in response to #8043.

Video after the changes (only the tooltips were changed and not how the instrument works):

video.webm

Video before the changes:

video.webm

What I did was:

  • Removed double tooltips
  • Edited the existing tooltips according to rules:
    • Called each oscillator an oscillator, not a channel. For example: square oscillator instead of square channel
    • Each pair of switches (channel) mutes/unmutes each oscillator. For example: 1st pair of switches or channel is for SO1 (square oscillator 1), not for the left channel of SO2 and right channel of SO1 or whatever.
    • Named the tooltips of switches in a way that suggests that oscillators connect to them (to channels), not the other way. For example: SO1 to Channel 1 (Left) instead of Channel 1 to SO1 (Left)
    • LVol and RVol are instrument volume knobs, so the tooltips say Main volume

I assume the code needs even more changes, like renaming the variables/settings, changing LVol and RVol (Main volume) knob functionality so they actually control the volume of left and right channels, perhaps swaping ch3 and ch4 switch pairs so they are in the same order as the oscillators (bottom oscillator connected to the bottom (fourth) switch pair), maybe even labelling the switch pairs as oscillators instead of channels (SO1, SO2, NO, WPO instead of ch1, ch2, ch3, ch4).

Copy link
Contributor Author

@Gregaras Gregaras left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Forgot to change channel names (left/right) in the tooltips to match the knobs aaf50cd

@bratpeki
Copy link
Member

I would love to test this, but I never use Freeboy, so I don't know what those labels are saying, why that's wrong, and why this is the fix. Could you help me with that?

@Gregaras
Copy link
Contributor Author

Gregaras commented Aug 24, 2025

I would love to test this, but I never use Freeboy, so I don't know what those labels are saying, why that's wrong, and why this is the fix. Could you help me with that?

Maybe this image could give some explanation:

freeboy

It is how I see the instrument and I think it's correct. SO1 is connected to the first row (ch1) of buttons (eight buttons at the top right corner), SO2 to the second one (ch2), WPO to the third (ch3) and NO to the fourth one (ch4). They do mute/unmute left/right channels of each oscillator. Main controls do control the volume/bass/treble levels of the entire instrument.
Previous tooltips/labels didn't make any sense to me.
In the videos you can see that I hover the mouse over the left/right channel buttons and then over the volume control knob of each oscillator to show the labels. I switch on and off the left/right channel buttons and twist the volume knobs in the first video (after the changes) to show how the instrument works and give some clue why I had to edit the labels.

@messmerd
Copy link
Member

messmerd commented Sep 5, 2025

I think calling each oscillator by two different names (i.e. "Wave pattern oscillator (WPO)" and "Channel 4") only creates confusion. Referring to them by channel numbers isn't as helpful, so I'd prefer if we ditched those names.

Correct me if I'm wrong, but the switches just enable/disable the oscillators, right? But the current wording makes it sound like they are routing one thing to something else.

And the names/acronyms used for the oscillators is uncommon compared to other Game Boy audio software:

  • Furnace uses "Pulse 1", "Pulse 2", "Wavetable" and "Noise".
  • Deflemask uses "SQ1", "SQ2", "WAVE", and "NOISE".
  • LSDJ uses "PU1", "PU2", "WAV", and "NOI".

@Gregaras
Copy link
Contributor Author

Gregaras commented Sep 5, 2025

I think calling each oscillator by two different names (i.e. "Wave pattern oscillator (WPO)" and "Channel 4") only creates confusion. Referring to them by channel numbers isn't as helpful, so I'd prefer if we ditched those names.

Yeah, that's what I meant when I told:

maybe even labelling the switch pairs as oscillators instead of channels (SO1, SO2, NO, WPO instead of ch1, ch2, ch3, ch4).

Correct me if I'm wrong, but the switches just enable/disable the oscillators, right?

It seems that they do, yeah.

But the current wording makes it sound like they are routing one thing to something else.

Yes, the wording suggests that oscillators are routed to channels (the original wording actually was that channels are routed to oscillators) which are just pairs of buttons to disable left/right channels of oscillators.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants