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
futarisIRCcloud has joined ##yamahasynths
<mofh> Lord_Nightmare: even monophase KBD-windowed sinc() is pretty decent
<cr1901_modern> Wonder where nukeykt has been
andlabs has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
andlabs has joined ##yamahasynths
andlabs has quit [Ping timeout: 250 seconds]
andlabs has joined ##yamahasynths
ahihi has quit [Read error: Connection reset by peer]
ahihi has joined ##yamahasynths
andlabs has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
andlabs has joined ##yamahasynths
ej5 has quit [Read error: Connection reset by peer]
<whitequark> is it me or does opl2/opl3 output need an equalizer to sound well through a modern system?
<whitequark> i feel like what i get isn't quite what the composer intended, but i may be wrong
<cr1901_modern> different LPF cutoff?
<cr1901_modern> compared to sound cards of the era
<superctr> the OPL3-SA2 in my old laptop has a very bright sound, i don't mind it
<ValleyBell> The OPL3 on my YMF744 sounds a lot like the (unfiltered) emulation. The SB16 in my old PC is pretty bass-heavy though and cuts off a fair amount of heights.
<whitequark> so i notice two things
<whitequark> first, percussion seems always waaay underpowered
<whitequark> second, of the non-percussion tones, mid-frequency often (but not always) tends to drown out higher frequencies
<whitequark> and that feels unintende
<Sarayan> oh, whitequark
<Sarayan> if I send you a votrax sc01a, would you put it on the internet?
<whitequark> how is it driven, and what is on the output?
<Sarayan> caveats: it's an hybrid digital/analog chip, with analog output, so you'd have toplonk an adc in there
<whitequark> >Votrax International, Inc. (originally the Vocal division of Federal Screw Works)
<whitequark> i'm sorry, federal WHAT works?
<Sarayan> the voltages may be annoying, but it may only be 0/=(V, lemme check
<Sarayan> +9V
<whitequark> uhh, that's mildly irritating
<Sarayan> og.kervella.org/VotraxSC01.pdf
<Sarayan> also, it's a chip that's not made anymore, and rather static-sensitive
<cr1901_modern> what a strange voltage
<Sarayan> metal-gate cmos
<Sarayan> so it's not rare, but it's not common either
<cr1901_modern> >SSI told us then that due to the types of processes used in this analog chip, it was unlikely to be made again--too complicated to transfer the technology
<Sarayan> we already have die shots, vectorization and schematics though
<cr1901_modern> >(However, we never had really good communication with SSI, so take this with a grain of salt.)
<whitequark> oh cool
<Sarayan> so no need to go inside
<Sarayan> need to switch it to leaflet or groupxiv
<whitequark> that's tiny
<cr1901_modern> >All transitions between phonemes are handled automatically. 
<cr1901_modern> The hell does that mean?
<whitequark> Sarayan: so ideally, could you put it on a PCB with all the support circuitry and whatever SPI ADC you have in the junk pile?
<Sarayan> wq: that would be the idea
<whitequark> it always takes me a long time to obtain components because of the whole "too much anxiety to go outside" thing
<whitequark> if i got something that i just need to write a glasgow applet for, it's trivial
<whitequark> ideally make 9V on board from 5V
<Sarayan> cr1901: all the characteristics of the analog part are controlled by a dozen 3-5bits values which activate or not a number of capacitors. The digital circuitry does interpolation of these values when transiting from one phone to another
<Sarayan> wq: it uses some current even when idle because it makes the internal 5V from a resistor ladder on the 9V
<whitequark> why does it even need 9V
<Sarayan> for the analog
<whitequark> ah
<whitequark> somehow i see a christmas tree of glasgows connected to a huge usb hub in my life
<whitequark> but that's okay, it was designed to do that
<Sarayan> wait, I'm not sure it's 9V
<cr1901_modern> 12V would be more common I'd think
<cr1901_modern> based on a sample size of 1: the SID
<whitequark> the SID is 12V?!
<cr1901_modern> it's dual 12V and 5V
<Sarayan> ok, it can be anything you want from 9V to 14V
<Sarayan> see page 8
<whitequark> Sarayan: so you know the Glasgow IDC connector?
<cr1901_modern> I'm guessing that b/c SID is NMOS, the "resistor ladder trick" doesn't give enough power, so 12V is used for the analog frontend
<Sarayan> wq: not really, no?
<Sarayan> not sure what IDC even means
<whitequark> insulation displacement
<whitequark> like on IDE HDDs
<Sarayan> oh ok
<Sarayan> cute
<whitequark> Sarayan: so I'm thinking you'd bring out MCX, STB, AR from this device, then DSCK, DSI, DL for the shift register, and ASCK, ASO for the ADC
<whitequark> the idea being that the chip inputs are connected to a 74xx shift register that latches on DL
<whitequark> chip parallel inputs*
<whitequark> and chip audio output is connected to a serial ADC.
<whitequark> or wait
<Sarayan> beware that the I inputs are realtime
<whitequark> aha
<whitequark> yep, I was about to say that DL is not needed
<whitequark> but it is
<whitequark> because having explicit input latch avoids glitches on I input.
<Sarayan> the 6 phone numbers input are taken on stb, but I has an immediate effect
<whitequark> yeah, but it's easier to just wire them all together to a 8-bit shift register
<Sarayan> agreed
<Sarayan> you need to 720KHz clock somewhere
<whitequark> because then we fit into 8 pins and it becomes a nice one-port daughterboard for glasgow
<whitequark> sure, glasgow generates all kinds of clocks
<Sarayan> oh, that's MCX
<whitequark> yep
<Sarayan> you've taken it into account, cool
<Sarayan> so, the amusing question, is it possible to send something to you form france so that it doesn't get lost on the way?
<whitequark> yes, use either registered mail or EMS
<whitequark> EMS is faster but a bit more expensive
<whitequark> anything with a tracking number is not generally going to get lost
<whitequark> EMS is going to get extra not lost
<whitequark> so for a rare chip EMS is worth it
<Sarayan> ok
<whitequark> they also tend to not smash EMS packages with something heavy on top
<whitequark> or at least do it less
<Sarayan> oh, it's chronopost in france, so it's going to be easy
<whitequark> yep
<whitequark> the cool thing about having an IDC socket there is it prevents me accidentally miswiring it
<whitequark> if this chip had any outputs I'd also ask you to add 200 ohm or whatever series resistors
<whitequark> I do this if I'm worried the FPGA might misbehave and drive an output
<whitequark> (they've actually saved my GameBoy Color once when I loaded a bitstream for a completely wrong Glasgow revision manually. doh...)
<Sarayan> it has one output
<whitequark> oh yeah
<whitequark> AR
<Sarayan> yup
<whitequark> put a series resistor there :)
<whitequark> oh, it has a 0.5 mA driver
<whitequark> so a 10k resistor then? to make it always within a safe margin.
<Sarayan> I have no idea, I suck at electronics :-)
<whitequark> 10k works
<whitequark> not really a question
<whitequark> ... how does one reverse engineer multiple ICs while "sucking at electronics" I would like to know.
<whitequark> a level of suck i can only aspire to
<Sarayan> because analyzing and designing is different
<Sarayan> for instance I know decoupling caps exist, in the theory I kinda know what they're useful for, but I wouldn't have a clue where to put them of with which value
<Sarayan> I also have no clue about EMI, I just know it exists
<whitequark> usually, i read the datasheet, which is quite explicit on where to put with what value ;D
<whitequark> or some kind of application note
<whitequark> semiconductor vendors (other than yamaha) tend to write profusely on the topic of running their circuits just right
<Sarayan> IOW, I can understand what something works, but I couldn't create it
<whitequark> yeah, i get it
<Sarayan> s/what/how/
<Sarayan> while in software I can create anything, but that's another story :-)
<whitequark> i'm guessing you will want suggestions on what ADC to use then
<whitequark> i assume you'll figure out how to wire a shift register
<Sarayan> actually I'm thinking sending you the chip and letting you do your magic :-)
<whitequark> eh, i guess that works
<whitequark> i guess i'll order parts online for this particular project to make it faster
<Sarayan> oh, there is no hurry
<whitequark> well for one I want to hear it
<Sarayan> :-)
<Sarayan> that I get
<whitequark> mmyeah, should be easy enough
<whitequark> not entirely sure how to couple it to the ADC, but it'd doable
<whitequark> i think i need to bias the ADC input so the voltage always stays nonnegative
<Sarayan> the votrax output is always nonnegative
<Sarayan> it is dc-biased already
<whitequark> why is there an LPF on the output?
<whitequark> figure 8
<whitequark> there's a dc blocking cap and an LPF
<whitequark> to be clear, i could just connect the ADC to Ao
<Sarayan> figure 8 is not a lpf, it's a rc osicllator for the clock?
<whitequark> 4.7k/0.05uf
<whitequark> to the right of rc oscillator
<Sarayan> figure 8 single message system?
<whitequark> er
<whitequark> there are two figure 8 s in this datasheet
<whitequark> figure 8 on page 10.
<whitequark> who the fuck writes these things.
<Sarayan> the second figure 8 seems to be a note added by someone
<whitequark> there are also two figure 6 s, both printed...
<Sarayan> huhuhu
<Sarayan> american quality
<Sarayan> hey, both figure 6 are identical
<whitequark> oh I see
<Sarayan> same for 7
<whitequark> anyway there is an LPF
<whitequark> i'm not sure if it's necessary for correct operation or not
<Sarayan> no, it's not
<whitequark> so, i would just sample the output?
<Sarayan> and I'd rather not have it if possible
<Sarayan> yes
<whitequark> oh
<whitequark> how fast?
<whitequark> sample rate
<Sarayan> boh, the usual 44100?
<Sarayan> it's not actually producing anything over 4K or so deliberately
<Sarayan> but it's analog, so it can
<whitequark> 16 bit 48000?
<whitequark> yikes, my local electronics retailer is fucking greedy
<Sarayan> ouch, I'd have thought a normal audio range adc wouldn't be expensive
<whitequark> they are just greedy period
<Sarayan> heh
<whitequark> a few years ago an acquaintance caught them scraping the entire farnell catalog (this is very prohibited) and reselling it all
<whitequark> with precisely a 3x markup
<Sarayan> ouch
<whitequark> unfortunately they are also the least stressful option in many ways
<whitequark> and the only ones who maintain any sort of physical presence anymore that isn't a booth at a flea market
<Sarayan> ah yeah
<whitequark> Sarayan: so there are cheap ADCs
<whitequark> but they are all 8 or 10 bit
<Sarayan> otoh, finding a physical electronics shop in *Paris* is almost impossible. I know of *one*
<whitequark> there are cheap 16 bit ADCs... but they have a 16 Hz sample
<whitequark> rate (not a typo)
<Sarayan> that's ridiculous
<whitequark> it's a low noise instrumentation ADC
<whitequark> no idea why is it so cheap
<whitequark> 500 Hz...
<whitequark> this is silly
<whitequark> aha
<whitequark> ADS8320EB
<Sarayan> TI has some nice ADCs iirc
<whitequark> yes but I went to the retailer and sorted by price
nukeykt has joined ##yamahasynths
<cr1901_modern> Well sleeping was a complete disaster right now. Guess I'll... get ready for the day only to fall asleep in 2 hours
nukeykt has quit [Ping timeout: 256 seconds]
<whitequark> seems like a similar datecode
<whitequark> though SSOP is less counterfeited
nukeykt has joined ##yamahasynths
<cr1901_modern> true, and I think I have breadboard adapters for those too.
<cr1901_modern> Lord_Nightmare: Is the "B" marking in whitequark's link for SSOP or "Revision B" or something else? It's not on the wiki
<cr1901_modern> I anticipate a client will want me to make a MIDI application. Dunno if I can shoehorn a Yamaha chip in, but if I can, I figure I'd try out a chip that makes it easier to create instruments :)
<cr1901_modern> (and by that I mean, "I don't have to create instruments at all" :D)
<nukeykt> I think YM2413B is a CMOS variant of OPLL
<cr1901_modern> oh right, I think that brought up
<whitequark> hm
<whitequark> still a builtin DA converter :S
<cr1901_modern> time-division multiplexed at that
<whitequark> wait, does it need some filter on the output?
<cr1901_modern> IIRC yes, because time-division multiplexing has lovely high frequency content that needs to be suppressed
<whitequark> ugh
<whitequark> wait
<whitequark> why does it have TWO outputs?
<whitequark> is this so you can easily bass boost the rhytm instruments?
<cr1901_modern> can you link me the datasheet?
<whitequark> it's in my library
<cr1901_modern> ahh, right I have it then
<whitequark> wait, it uses an XTAL?
<whitequark> i guess it's just an inverter between those pins, like usual
<whitequark> and you can feed something to XI
<cr1901_modern> opl3 (sic) has 2 outputs as well, for up to 4 channels of music
<whitequark> opl3 has digital output
<whitequark> and you can assign operators to channels somewhat arbitrarily
<whitequark> opll just has rhytm and melody.
<cr1901_modern> what do you mean by "inverter between those two pins"?
<whitequark> the usual way an XTAL interface is implemented is as an inverter from XI to XO, with clock taken from XI
<whitequark> it works like an inverter connected with feedback to itself, but crystal-stabilized
<whitequark> so you can just ignore XO if you don't need it
<whitequark> and feed a clock directly into XI
<whitequark> like if you look up "xtal driver" or something on mouser it's literally just an inverter that has been specced for driving an xtal
<cr1901_modern> cool
<cr1901_modern> I was never good w/ crystals/oscillators
<cr1901_modern> I love figure IV-2 in the application manual. It seems that Mouser doesn't carry passive components corresponding "plus sign".
<cr1901_modern> I think it's supposed to represent a direct connection, but IME "summation" means "stick a summing op amp there".
<whitequark> i'll just do it in digital domain.
<whitequark> absolutely can't bother to figure out what they meant
<cr1901_modern> the passive components attached directly to Ro and Mo are also filters; I don't feel like calculating the cutoff. It's probably meant to deal with TDM artifacts.
<cr1901_modern> ValleyBell: Do you know anyone who has done pictures of the Master System FM addon and/or posted a schematic?
<cr1901_modern> Found a reimplemenation schematic: https://etim.net.au/smsfm/SMSFM22.pdf
<cr1901_modern> They just tie Ro and Mo together
<cr1901_modern> (Also, that schematic is hard to read)
<whitequark> cr1901_modern: lol what
<cr1901_modern> whitequark: It took me a good two minutes to realize that network attached to Ro/Mo in the schematic is the same as presented in the application manual (except w/ the capacitor shared between both Ro/Mo)
<cr1901_modern> I like my circuits running from left to right, thanks
<whitequark> ETIMEDOUT for me
<whitequark> seems like they blocked ru via ip range
<cr1901_modern> Ahhh well, it would like if some drew this schematic: https://i.stack.imgur.com/wkhaq.gif
<cr1901_modern> but like this instead: https://i.stack.imgur.com/t9ppN.gif
<whitequark> that's kind of common
<whitequark> i mean i don't really find it hard to read
<whitequark> in fact i like it slightly more than the figure IV-2
<whitequark> though, no
<whitequark> they're both bad
<cr1901_modern> heh
<cr1901_modern> My immediate reaction to staring at the Ro/Mo network in the smsfm schematic was "why are voltage dividers there?" :P
nonlinear has joined ##yamahasynths
<whitequark> it's not a voltage divider
<cr1901_modern> Right, but didn't stop me from parsing it was one
<whitequark> the first resistor is a part of this amplifier: https://en.wikipedia.org/wiki/File:N-channel_JFET_source_follower.svg
<whitequark> the transistor is on chip but the matching resistor isn't
<whitequark> then it's an LPF
<cr1901_modern> >then it's an LPF
<cr1901_modern> knew this part >>
<cr1901_modern> >the transistor is on chip but the matching resistor isn't
<cr1901_modern> I did not know this part
<cr1901_modern> Cool!
<whitequark> neither did I
<whitequark> i don't do analog
<whitequark> it just says "source follower" in the datasheet
<cr1901_modern> Oh... good catch
<whitequark> oh lmao it actually says "the output may be directly connected to audio amplifier"
<whitequark> but you can add an LPF for better quality
<cr1901_modern> Indeed. This is why I think the LPF directly on the Ro/Mo line is for TDM artifacts (and thus not optional)
<whitequark> it's def for TDM artifacts
andlabs has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
andlabs has joined ##yamahasynths
<ValleyBell> cr1901_modern: For anything related to SMS stuff, looking on SMSPower should be a good idea: http://www.smspower.org/forums/
<ValleyBell> especially the "Development" forum and wiki sections
futarisIRCcloud has quit [Quit: Connection closed for inactivity]
andlabs has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<Sarayan> yay, finished the pads
<Sarayan> I need to do something about the die image scaling though
andlabs has joined ##yamahasynths
nukeykt has quit [Quit: Page closed]
mz` has quit [Ping timeout: 245 seconds]
mz` has joined ##yamahasynths
<Lord_Nightmare> cr1901_modern: no
<Lord_Nightmare> there are two different products: the ym2413 and ym2413B
<Lord_Nightmare> afaik both have the same patch set
<Lord_Nightmare> but ym2413B is CMOS, not nmos, and may be the 2-metal layer version we know as FHB013
<Lord_Nightmare> the output impedance is different because it is cmos instead of nmos, i believe
<Lord_Nightmare> yamaha calls ym2413B OPLL, they should have called it OPLLC
<Lord_Nightmare> and should have given it a ym3xxx number
<Lord_Nightmare> but someone didn't get the memo about consistency, so...
<Lord_Nightmare> re: above
<Lord_Nightmare> I'm NOT SURE i'm correct that ym2413B is cmos
<Lord_Nightmare> but given the fact that it draws so much less current than ym2413, i'm inclined to say it is
<whitequark> OPLLC or OPLL-C
<Lord_Nightmare> so whitequark if you get a ym2413B off ebay or alibaba etc, it probably has the same die as FHB013 on siliconpr0n but may have a different instrument set masked
<Lord_Nightmare> iirc the FHB013 that digshadow decapped like 6 years ago was dead, so we don't know which inst set that one has
<Lord_Nightmare> it was also re-marked with a bogus label
<whitequark> Lord_Nightmare: we'll see soon enough
<cr1901_modern> https://segaretro.org/Copera Interesting, a mystery console that's not emulated. Is the FM chip also a mystery?
<Nerionaya> huh, I'd never heard of that before; interesting
<Nerionaya> https://vgmrips.net/wiki/Copera this site claims it's a YMF262
<cr1901_modern> oh mystery solved then, thanks!
ej5 has joined ##yamahasynths
andlabs has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
futarisIRCcloud has joined ##yamahasynths