ChanServ changed the topic of ##yamahasynths to: Channel dedicated to questions and discussion of Yamaha FM Synthesizer internals and corresponding REing. Discussion of synthesis methods similar to the Yamaha line of chips, Sound Blasters + clones, PCM chips like RF5C68, and CD theory of operation are also on-topic. Channel logs: https://freenode.irclog.whitequark.org/~h~yamahasynths
l_oliveira has quit [Quit: ChatZilla 0.9.92-rdmsoft [XULRunner 35.0.1/20150122214805]]
ej5 has joined ##yamahasynths
<cr1901_modern> Oh cool, we reached 30 consecutive users (+ 1 bot :P)
* cr1901_modern did some advertising today lol. Limit to once every few months
<cr1901_modern> So command format proposal: One channel only, and for now you can play a single tone (set FNUM manually). The format will be [REG]: [Hex number without leading "$" or "0x"], >>
<cr1901_modern> s/REG/FIELD/
<cr1901_modern> All fields must be filled in, but order doesn't matter
<fseidel> maybe I missed soething earlier, but why not make it a binary format and save some space?
<cr1901_modern> needs to be xferred directly to an IRC bot
<cr1901_modern> Idk how to make IRC bots accept binary data
<fseidel> oh right, I'm an idiot
<cr1901_modern> I've never actually downloaded using CTCP
* cr1901_modern is checking something
andlabs has quit [Ping timeout: 250 seconds]
<cr1901_modern> whitequark: That application manual is a lifesaver, if hard to read
<cr1901_modern> I would say "I hope you get angry more often" but that would be mean :P
<cr1901_modern> Fields are: MUL{C,M}- 4 bits, KSR{C, M}- 1 bit, KSL{C,M}- 2 bits, TL{C, M}- 6 bits, AR{C,M}/DR{C,M}/SL{C,M}/RR{C,M}- 4 bits, FNUM- 10 bits, FB- 3 bits, and "AM" or "FM" mode
<cr1901_modern> (which connects the Carrier (C) and Modulator (M) either in series (FM) or parallel (AM))
<whitequark> cr1901_modern: hah
<cr1901_modern> Oh, and perhaps WS{C, M} for "Wave select" to change the shape of the sine wave input to the Carrier/Modulator
<cr1901_modern> I'm thinking of omitting AM mode because you can get the same effect w/ FM (except one tone instead of two) by completely attenuating the output of the Carrier operator
<cr1901_modern> ... wait, no. AM is still useful for constructing waveforms w/ feedback
<whitequark> cr1901_modern: okay sure
<whitequark> can you give me an example string that should produce eg A440
<cr1901_modern> FNUM:241, FB:0, "AM", MULC:1, MULM:1, KSRC:0, KSRM:0, KSLC:0, KSLM:0, TLC:0x18, TLM:0x3F >> (brb)
<cr1901_modern> back, doing the rest now
* cr1901_modern always forgets whether ADSR, higher numbers means faster attack, or vice versa
<cr1901_modern> ARC:F, ARM:F, DRC:4, DRM:4, SLC:12, SLM:12, RRC:4, RRM:4
<cr1901_modern> let's try these
<cr1901_modern> if I get it wrong, oops
<cr1901_modern> Carrier and Modulator separated by 1 I/O address each for each set of registers if memory serves
rue_mohr has joined ##yamahasynths
<rue_mohr> twitter said to find you here
<cr1901_modern> Yay, advertising worked :P
<rue_mohr> tho, I'm just some guy :)
<rue_mohr> I live over in #robotics
<cr1901_modern> https://imgur.com/QzIJLZ2 Page 16 of the user manual. I have no idea what it's talking about, considering that the Rate registers are only 4 bits wide. So what's the point of splitting them into two like that?
<cr1901_modern> rue_mohr: Cool :D!
<cr1901_modern> whitequark: I'm about to call it quits for tonight. If you get around to trying my parameters and they don't work, just yell at me. I didn't test them in emulation or on an old system (didn't feel like setting one up)
<rue_mohr> yea I gotta go do real things
<cr1901_modern> TLC:8 instead of TLC:18 (typo above with "0x") might be better. Total Level of 0 is a good way to piss off headphone users :)
<cr1901_modern> Oh, and WS:0 (the default for the chip)
<whitequark> cr1901_modern: ok
<cr1901_modern> I'll have to test this myself, but my advice would be "don't allow a user to set TL to 0 in the Modulator in FM (composition mode) or Carrier/Modulator in AM mode (sum mode)". TL is essentially a volume control in those instances.
<cr1901_modern> And it is L.O.U.D.
<Wohali> Lemurs Of Unusual Depth? I don't believe they exist.
* Wohali gets ravaged by a very angry lemur
<cr1901_modern> It is pitch black. You are very likely to be eaten by a lemur.
<cr1901_modern> >walk north
<cr1901_modern> You see two large eyes starting at you.
<cr1901_modern> > use torch
<cr1901_modern> The large-eyed entity swipes the torch away and you are ripped to shreds
<cr1901_modern> Game over
<cr1901_modern> This reminds me of the Shadowgate ending w/ self-immolation
ej5 has quit [Read error: Connection reset by peer]
andlabs has joined ##yamahasynths
andlabs has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
_whitelogger has joined ##yamahasynths
andlabs has joined ##yamahasynths
Stilett0 is now known as Stilett0-away
sixtysix has joined ##yamahasynths
l_oliveira has joined ##yamahasynths
andlabs has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
andlabs has joined ##yamahasynths
andlabs has quit [Ping timeout: 245 seconds]
andlabs has joined ##yamahasynths
sixtysix has quit [Remote host closed the connection]
andlabs has quit [Ping timeout: 240 seconds]
Stilett0-away is now known as Stilett0
andlabs has joined ##yamahasynths
<ValleyBell> cr1901_modern: TL 0 isn't really that loud if you play it on one channel only.
<cr1901_modern> In VGMMM it's enough to make me unhappy :P
<ValleyBell> TL 0 is fine especially for drums.
<ValleyBell> For melodic voices, yeah, it's usually too loud, at least on the YM2612.
<ValleyBell> In mid2smps I have the maximum volume set to TL 8, because that's approximately the highest volume you can get with a PSG channel.
<ValleyBell> OPL chips feel more quiet though. Maybe it's that, due to them having more channels, the overall volume of the OPL emulators is lower.
<cr1901_modern> hmmm
<cr1901_modern> logical
<l_oliveira> the subject of TL is a bit complicated because depending on the design of the analog output circuitry the waveform may clip
<l_oliveira> on a X68000 for example you can have no attenuation, have the chip "sing" at it's loudest and it won't clip no matter what
<l_oliveira> some designs using opamps on single rail power supply will clip the audio at the same volume values
<l_oliveira> YM2612 is a different case due to the different DAC, too
<Lord_Nightmare> the ym2612 analog multiplexer (all slots seem to tap a 'common' dac for the fm stuff EXCEPT the pcm dac which is an entirely separate dac?)
<Lord_Nightmare> while the ym3438 analog multiplexer slots all connect to the same dac, which is shared betwene FM and PCM
<Lord_Nightmare> ym3438 is a better design
linkmauve has left ##yamahasynths ["Error from remote client"]
<Lord_Nightmare> but in terms of yamaha chips which do multiplexing instead of actual mixing, theres the ym2612 and ym3438, then the entire OPLL series including the VRC7, and that might be it, although i have a suspicion the 'SSG++' from the PSS-80 and PSS-100, and maybe a few other oddball chips like the OPK and OPQ)
<Sarayan> the digital output ones can't do temporal mising, only the analog output ones
<Sarayan> mixing
<Lord_Nightmare> SSG++ i have a suspicion is basically two SSGs attached back to back, plus PWM control, so basically an ay-8930 clone but with one analog output pin
<Lord_Nightmare> and no i/o pins
<Lord_Nightmare> I am willing to desolder the mcu from my pss-80 if kevtris or someone is willing to dump it. it is an hd6301V0 which i believe has no protection at all
<Lord_Nightmare> that keyboard should be pretty easy to get going if we can figure out the register order on the ssg++, which hopefully matches the real SSG or is close enough to figure out
linkmauve has joined ##yamahasynths
<cr1901_modern> https://github.com/galibert/dietools/commit/fec2afbb0b90abef602b9218655cf73bc3b9c264 I really wish this PR actually worked LOL
* cr1901_modern sighs
<cr1901_modern> https://github.com/galibert/dietools/commit/7be156b4517222149866f10752ca311589acbfca Oh it was this one. All to save a single keystroke lmao
linkmauve has left ##yamahasynths ["Updating~"]
linkmauve has joined ##yamahasynths