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
<cr1901_modern> Wohali: Let me check something
<cr1901_modern> two ppl applied for boards twice
<cr1901_modern> so you can remove two boards from that total
<cr1901_modern> _I think_
<Wohali> ok, well, i guess we could cap it at 50 if there's no more coming in
<Foone_> want me to retweet it again so we can try to get up to 75?
<Wohali> up to you
<Wohali> makes no diff to me
<cr1901_modern> Foone_: Please do then. 75 will be the cap :): https://twitter.com/cr1901/status/1106294734136446984
<cr1901_modern> Wohali: Thanks
<cr1901_modern> I'll freeze the form anywhere between 70-73.
<cr1901_modern> TD-Linux: A 3d printed Volume knob would be excellent :D, I could use one of those lol
<Foone_> I'll go ahead and request one too. I have one already but I could make another for soldering practice and then mail one off to LGR or somesuch
<cr1901_modern> Didn't you also have luck w/ a 3d printed ISA bracket?
<cr1901_modern> Foone_: Thanks!
<cr1901_modern> Wohali: What's the answer to this, btw? https://twitter.com/sarahemm/status/1106373863460560898 I'm guessing hard gold?
<Wohali> immersion gold
<TD-Linux> I'm doing 3d printed brackets for my other cards (not ISA, weeb computers only)
<Wohali> aka ENIG
<TD-Linux> cr1901_modern, is there a model?
<Wohali> TD-Linux: there is, sec
<TD-Linux> hard gold is super expensive and pointless
<TD-Linux> unless you are going to plug this 1000 times
<Wohali> i'm going to spring for 2oz copper
<Wohali> since who knows the skillset of people building these
<Wohali> standard 1.6mm pcb thickness, 2.0 will be too thick for the slots
<TD-Linux> I'll post pics of what is achievable with fff
<Wohali> shapeways or wahtever can do it for you
<Wohali> or that other one where you submit designs and ppl print them
<cr1901_modern> TD-Linux: Idk if there's a bracket model. I was under the impression you were doing them already :P
<TD-Linux> maybe you have me mixed up with someone else
<TD-Linux> Wohali, are you in bay area
<cr1901_modern> Maybe I'll just get a blank and a tool to cut out openings
<cr1901_modern> or go without a bracket- I do that too sometimes :P
<TD-Linux> 3d printed brackets aren't very nice imo but better than nothing
<Wohali> no, canada
<Wohali> a good source for cheap brackets is - just buy any old PoS ISA card :)
<Wohali> "
<Wohali> The bracket specified in the BOM is a blank Keystone 9200 bracket. You will need to punch or drill holes for the connectors. The KiCad board file has detailed dimensions showing where to make the holes in the bracket.
<Wohali> I use a chassis nibbler tool to make the square slot for the volume knob as well as the hole for the DA-15 joystick/MIDI connector. If you are rich, Greenlee makes a punch for the DA-15 outline.
<Wohali> keystone 9200 i think both digikey and mouser have in stock
<cr1901_modern> oh, so ej5 _does_ specify what he uses as a substitute to the Greenlee
<Wohali> it's just your bog standard isa/eisa/pci bracket
<cr1901_modern> Missing the screws it seems
<cr1901_modern> https://www.digikey.com/product-detail/en/keystone-electronics/9202/36-9202-ND/608463 This one has screws, but Idk if they are in the right place
<Wohali> well there's a drawing there
<cr1901_modern> Mini rant: NO I DON'T WANT TO DOWNLOAD A PDF! LET ME VIEW IT IN MY BROWSER!
<ej5> yeah i couldn't find a bracket with the screw in the right place so i just went without
<ej5> the DA-15 holds it in place.
<cr1901_modern> how does it hold it in place :o?
<ej5> with the hex standoffs
<ej5> oh that reminds me, the volume knob needs a small screw to hold it onto the potentiometer
<cr1901_modern> you mention a mcmaster carr part for that if memory serves
Stilett0-away is now known as Stilett0
<ej5> ahh good
<cr1901_modern> So you cut out a space for the DA15, and then you cut out two holes for the standoffs?
<ej5> yep
<cr1901_modern> Relinking for posterity
<ej5> it's cheap and crappy but did the job for me.
<ej5> looks like people are putting theirs together also
<Wohali> i might not bother with a bracket for now. or i might scavenge one off of a piece of gear i don'
<Wohali> t use.
<Wohali> it's gonna go in my ppro200!
<cr1901_modern> I'm probably going to put mine in my 286 for now
<Wohali> ppro200 is my oldest box rn
<Wohali> wish i still had the dually ppro200.
<cr1901_modern> The most ancient APIC machine :P?
<cr1901_modern> ej5: Btw, where'd you get that DIP Chip Clip?
<ej5> HSC electronics
<cr1901_modern> Ahhh cool
<Wohali> RIP
<Wohali> cr1901_modern:
<cr1901_modern> thanks :).
<cr1901_modern> The one ej5 has is like a 40 pin clip lol
<Foone_> I really want one for reading flash chips without desoldering them
<cr1901_modern> That is certainly much better than what digikey is charging https://www.digikey.com/product-detail/en/3m/927739-40/927739-40-ND/1129850
<Foone_> but tsop48 clips are like... 500$
<cr1901_modern> $90 more XD
<TD-Linux> Foone_, wait for real? I just made a carrier for tsop48 whoops
<Foone_> the clip ones are, yeah. the adapter kind where you have to desolder the chip are reasonably priced
<TD-Linux> ohhhh ok
<TD-Linux> in case anyone needs to replace some 42 pin ROMs https://github.com/tdaede/toshiba-64mbit-adapter
<Wohali> tsop48 socket to dip48 is like $5
<cr1901_modern> Wohali: We're at 60 :o
<cr1901_modern> well 60-2
andlabs has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<cr1901_modern> Lord_Nightmare: https://siliconpr0n.org/archive/doku.php?id=vendor:yamaha:opl2 FYI
<cr1901_modern> I updated the Wiki
<cr1901_modern> whitequark: https://siliconpr0n.org/archive/doku.php?id=vendor:yamaha:opl2#ym2413_instruments Prob should've asked first, but this paragraph I wrote is accurate?
<Lord_Nightmare> I'm trying to figure out how nukeykt dumped the instruments using that debug mode. a/b testing? or is there a way to see the direct digital output of the chip via debug mode?
<cr1901_modern> Don't think it would be A/B testing
<cr1901_modern> according to sarayan, there is a point when tuning parameters where you can't appreciably tell the difference between the actual ROM and a custom instrument is "really darn close"
<cr1901_modern> (or at the very least, it becomes too difficult to tell)
futarisIRCcloud has joined ##yamahasynths
<Lord_Nightmare> i hope nukeykt comes back tonight, i have more questions
<cr1901_modern> I very much think you won't have to worry
andlabs has joined ##yamahasynths
andlabs has quit [Ping timeout: 272 seconds]
andlabs has joined ##yamahasynths
l_oliveira has quit [Quit: ChatZilla 0.9.92-rdmsoft [XULRunner 35.0.1/20150122214805]]
andlabs has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
ej5 has quit [Quit: Leaving]
<TD-Linux> the ridges turn out fine but the big hollow overhang isn't great
andlabs has joined ##yamahasynths
<fseidel> I'm pleasantly surprised the ridges came out that well
<TD-Linux> yeah, I'm using a 0.25mm nozzle which helps
futarisIRCcloud has quit [Quit: Connection closed for inactivity]
futarisIRCcloud has joined ##yamahasynths
<cr1901_modern> I can live with the overhang as long as it fits on the Snorkle Borkle
* Sarayan waves
<ValleyBell> cr1901_modern: "This translates into a patchset of: [...]" Please use instrument numbers 1..F for the instruments.
<ValleyBell> The custom instrument has ID 0.
<ValleyBell> For reference, this is the Git commit NukeYKT made to VGMPlay: https://github.com/vgmrips/vgmplay/blob/538c10/VGMPlay/chips/vrc7tone.h
futarisIRCcloud has quit [Quit: Connection closed for inactivity]
nukeykt has joined ##yamahasynths
Xyz_39808 has quit [Quit: Leaving]
Xyz_39808 has joined ##yamahasynths
Nicole_Express is now known as Nerionaya
<balrog> TD-Linux: you have the model?
<balrog> I wonder how it would come out on a form2
andlabs has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
andlabs has joined ##yamahasynths
<Lord_Nightmare> nukeykt: more questions: how does one determine the vrc7 internal roms using the vrc7 debug mode?
<Lord_Nightmare> is it an A/B test? is there a way to dump the state of the output, digitally, at any given time-slot?
<Lord_Nightmare> or of one of the operators?
<Lord_Nightmare> or is there a test bit you can set that literally makes it dump the instrument ROM to output or to the data bus?
<nukeykt> VRC7 D0-D7 are bidirectional. Internally data bus connected to 8-bit multiplexer and with right compbination of chip's pins it's possible to configure it. Internal instrument bus connected to this multiplexer, so it's possible to dump it
<balrog> Lord_Nightmare: does this mean we don't have to screw with decap?
<Sarayan> nukeykt: think you can get the missing ones too?
<nukeykt> Rhythm ones?
<Sarayan> yeah
<nukeykt> Gonna try today
<Sarayan> cool
<Sarayan> I wonder if there's a test register in the yamaha one that can be used to trigger the rom dump or if the port is just write only
<Lord_Nightmare> i've heard that at least D0 and D1 are bidirectional on the 2413
<Sarayan> it's actually easy to check now that I think about it
<Lord_Nightmare> nukeykt: so the 'pin config' is which pins to tie low and high while debug mode is on, and then that data gets pushed out the data bus constantly?
andlabs has quit [Ping timeout: 250 seconds]
<Sarayan> mwahahahah bastards
<Lord_Nightmare> so for 0 you tie a13 low, m2 low, p15 low, fmcs high, wr high, and /a0 low ?
<Lord_Nightmare> er
<Sarayan> they used standard pin layouts, where every pin can be bidirectional
<Lord_Nightmare> so for 0 you tie a13 low, m2 low, p15 low, fmcs high, wr high, and a0 low ?
<Sarayan> *including the power pins*
<Sarayan> e.g. zero information from the die shot
<Lord_Nightmare> sarayan: are you looking at the vrc7 decap, or the fhb013?
<Sarayan> fhb013
<Lord_Nightmare> since that's a much later chip, we should wait for whitequark's decap of the ym2413 i guess
<Sarayan> yeah
<Sarayan> been fighting with leaflet, getting somewhere: https://og.kervella.org/ym2203/ym2203/
<Wohali> what is leaflet?
<Sarayan> an open source maps viewer
andlabs has joined ##yamahasynths
<nukeykt> For all configs A13(pin 2)=1, M2(pin 47)=0, P15=0, for config 0: /CS=1, /WR=1, A0=0, for config 1: /CS=1, /WR=1, A0=1, etc.
<Lord_Nightmare> gotcha
<Lord_Nightmare> is it spying on the patch for a specific channel, or is it looking at the patch feeding whatever the current operator in the time-slot rotation is selected?
andlabs has quit [Ping timeout: 255 seconds]
<Lord_Nightmare> i.e. so you'd need to set the same patch on all 9 channels to make it stay 'stable'?
<Wohali> ahh that leaflet
<Wohali> thought maybe i twas a mask RE tool
<Wohali> heh
<nukeykt> It outputs current operators data
<Lord_Nightmare> nukeykt I also wonder if this tells us anything about what the mystery bit at patch byte 3 bit 5 does, i.e. which slot in the debug listing does that correspond to, if any
<Lord_Nightmare> afaik every other bit in the 8 byte patch is used except that one
<Lord_Nightmare> byte 3:
<Lord_Nightmare> |||\----- WF select (sine vs halfsine, Car)
<Lord_Nightmare> ||||\---- WF select (sine vs halfsine, Mod)
<Lord_Nightmare> 76543210
<Lord_Nightmare> |||||\\\- Feedback level (Mod)
<Lord_Nightmare> ||\------ Unused
<Lord_Nightmare> \\------- Key Scale Level (Car)
<nukeykt> Register for this bit does not exist in VRC7 at least
<Lord_Nightmare> this can be tested by setting all the channels to user inst and setting that bit?
<Lord_Nightmare> ah so it really does nothing?
<nukeykt> yeah
<nukeykt> Correction: for config 0: /CS=1, /WR=1, A0=1, for config 1: /CS=1, /WR=1, A0=0, etc.
andlabs has joined ##yamahasynths
<fseidel> how did you manage to dump that, optically?
<nukeykt> Using VRC7's debug mode
<fseidel> ah
<fseidel> neat
<TD-Linux> balrog, it's in snark barker github
<TD-Linux> balrog, a form 2 would do a better job. I'm seeing how good I can get it on fff
<cr1901_modern> Wohali: I locked the form... I think it's at exactly 75 :/
<cr1901_modern> not counting the 2 people who filled it out twice
<cr1901_modern> Should I unlock it so we can fill it out?
<cr1901_modern> Wohali: Wait, actually we both have admin access, so fill it out/re lock it when you're ready :P
<cr1901_modern> And I shall do the same
* cr1901_modern submitted to the form
<Wohali> I'm going to take my one board as "payment" for doing this for everyone. I hope you don't mind. I think $7 is a fair overhead for all the mailing I'm going to have to do :)
<whitequark> Sarayan: very nice!
<whitequark> Sarayan: why did you not reuse my code?
<whitequark> cr1901_modern: yeah, accurate
<Sarayan> wq: because you told me to use leaflet to eventually be able to have vector layers?
* Sarayan mumblesbut I see your stuff is a leaflet derivative
<Sarayan> geee
<Sarayan> but I see your stuff is a leaflet derivative
<whitequark> yeah it's not so much a derivative as an extension
<whitequark> for silicon microphotography specifically
<whitequark> like it makes setting things up less painful
<Sarayan> hmmm
<Sarayan> can it do multi-layer, with groups and some transparent?
<whitequark> it can do multi-layer but i'd have to look into how that works
<Sarayan> e.g. to have a die shot layer, a vectorization result group of layers with active/poly/metal on different images with transparency, then a schematics layer, all aligned?
<whitequark> to tell you which exact options will happen
<whitequark> that's the idea
<whitequark> behind groupxiv
<whitequark> i never ended up implementing it bc i haven't had any multilayer pictures
<Sarayan> that's what I was targetting with leaflet
<Sarayan> I can generate all that with my current 2203 state
<whitequark> that's neat
<Sarayan> og.kervella.org/ym2203/ym2203.zip gives you the schematic
<Sarayan> http://siliconpr0n.org/map/yamaha/ym2203c/single/yamaha_ym2203c_mz_mit20x.jpg is the die shot, I'm sure you can tile it yourself :-)
<Sarayan> I haven't done the code for the vectorization layers, but soon
<whitequark> ok, give me some time, i'm having a pretty awful evening
<whitequark> just ping me if i forget
<Sarayan> awful?
nukeykt has quit [Ping timeout: 256 seconds]
<Sarayan> I'm sorry for you
<whitequark> that happens more often than a normal evening tbh
<Sarayan> btw, the size of the schematic is exactly 10/2 * the size of the die shot
<Sarayan> it's always 10/some integer with my tools
<whitequark> oh, useful
<Sarayan> wand.exceptions.WandError: wand contains no images `MagickWand-4' @ error/magick-image.c/MagickGetImageWidth/6339
<whitequark> hm
<whitequark> that's bizarre
<Sarayan> I'm not sure what it means
<Sarayan> python -m tile_cutter yamaha_ym2203c_top_metal_mit20x.jpg
<whitequark> i don't know either
<whitequark> hm
<Sarayan> galibert@titi:~/mame/maps/groupXIV #13 >python --version
<Sarayan> Python 3.7.2
<Sarayan> I have code written for tile splitting, it's just not adapted to what leaflet wants and I'm feeling lazy :-)
<whitequark> where is that exception traced back to?
<Sarayan> ohhh
<Sarayan> [pid 30840] pwrite64(4, "\0\0\0\0\0\0\0\0\0\0\0\0\0\377\177G\0\0\0\0\0\0\0\0\0\0\0\0\0\377\177G"..., 495616, 4117262336) = -1 ENOSPC (No space left on device)
<Sarayan> it fucking uses /tmp way too much
<cr1901_modern> Wohali: Understood! You are doing a great public service :D
<Sarayan> damn, the tile splitter centers the image, while I put it top left
ej5 has joined ##yamahasynths
<cr1901_modern> ej5: I've closed submissions for the PCB run. Just about 75 boards are going to be made
<cr1901_modern> :D
<ej5> wow
<MicroHex> That's a lot of snark to bark
<whitequark> got my YMU759B
<cr1901_modern> Probably the next pain point is programming the Atmel parts, but for those who can't do it at home, I know a few ppl who offer PALs/GALs programming services for cheap
<cr1901_modern> I'm sure 8051 is also easily doable by them
<MicroHex> Given the universal programmers everyone seems to have from china support it all
<cr1901_modern> whitequark: what an... interesting little chip
<ej5> TL866 can do it
<cr1901_modern> ej5: Sure, but most ppl don't have a tl866 :P
<MicroHex> Pretty common programmers though
<cr1901_modern> (or an 8051 programmer for that matter)
<ej5> also, thinking about doing another volume knob design
<MicroHex> Pretty sure the TL866 can handle 8051 no problem
<ej5> for the extruder printers
<TD-Linux> ej5, yeah I could too
<TD-Linux> can't easily edit your STEP
<whitequark> cr1901_modern: someone from here asked me to get them
<TD-Linux> also I managed to make it ok-ish with support
<ej5> the original is solidworks
<TD-Linux> will post another pic
<ej5> so you want a flat bottom, solid body pretty much?
<TD-Linux> yeah if you either drop the hollow bit, or drop the nub on the top, it becomes easier
<cr1901_modern> whitequark: I kinda lost count of how many Yamaha synths there are, since the ones most ppl care about are in OP{N,M,L}
<TD-Linux> dropping the nub on top is technically a bit better even because of the way the shaft cutout its
<TD-Linux> but either way is ok
<cr1901_modern> But an FM synth for your telephone is pretty fascinating
<TD-Linux> or rather, will post another pic when I'm not sitting at work
<whitequark> why the FUCK is YMU759B comes in a non-square QFN32?!
<TD-Linux> because japan
<cr1901_modern> That doesn't sound standards compliant
<MicroHex> did they... did they just cut the legs off a PLCC?
<whitequark> lol
<MicroHex> I have a small stash of assorted audio type chips, although many are of dubious origin
<MicroHex> even including a handful of XR-2207 VCOs, as much of a synth as those can be considered
<MicroHex> Happy to say nothing in quite so odd a package
<cr1901_modern> XR-2207 Advanced Sine/Square Wave Generator
<MicroHex> just waiting on a batch of 20 turn 200k potentiometers to show up for those to find their use
<Sarayan> wtf, you can't have a non-integer zoomOffset? that's stupid
<MicroHex> and also speaking about non-square packages.. I really need to get around to designing a breakout board for the MC68030FE33C processors I have on hand, with their weird center-pin-one not-standard-pin-count packaging
<ej5> TD-Linux, OK i've added an FDM version of the volume knob
<whitequark> Sarayan: correction: some new anxiety drug i'm trying makes it impossible to think, ask me again in uhhh, one to two days
<Sarayan> wq: why don't you just stop being anxious ? </s>
<ej5> BTW non-square QFN packages are quite common, linear tech uses them a lot.
<Sarayan> I'll generate more images and put them under leaflet meanwhile
<whitequark> sure
<cr1901_modern> "the number you have dialed unavailable"
<cr1901_modern> is*
<Sarayan> leaflet not accepting non-integer zoom offset is extremely annoying though
rainwarrior_ has joined ##yamahasynths
<cr1901_modern> hello rainwarrior_
<whitequark> Sarayan: there might be a workaround for that
<rainwarrior_> ahoy hoy
<whitequark> ask me when i don't feel extremely drunk without ever wanting that
<cr1901_modern> And I thought my back pain was pain (had a "charley horse in the back" yesterday and still feel it)
<cr1901_modern> pain was bad* blaaargh
<ej5> whitequark, you making a breakout for the YMU759B?
<whitequark> ej5: have not intended to
<whitequark> should i?
<whitequark> not exactly hard
<ej5> maybe
<whitequark> does anyone even know how to control it
<cr1901_modern> making an answering machine?
<ej5> control it with a phone?
<whitequark> huh?
<ej5> oooh it has adpcm playback
<whitequark> does anyone even know which phones had support for ymu759b?
<cr1901_modern> ^paging Lord_Nightmare
<ej5> because if we can find out, we can probe the bus and hopefully figure out the registers
<ej5> i would just fire random crap into it and see what happens
<Lord_Nightmare> ?
<cr1901_modern> Lord_Nightmare: >does anyone even know which phones had support for ymu759b?
<cr1901_modern> Thought you might know
<ej5> Lord_Nightmare knows all
<Lord_Nightmare> "The exact codec was also used by Yamaha SMAF MA-2 and onward):
<Lord_Nightmare> MA-2 (YMU759)
<Lord_Nightmare> MA-3 (YMU762)
<Lord_Nightmare> MA-5 (YMU765)
<Lord_Nightmare> MA-7 (YMU786)"
<cr1901_modern> Oh so Yamaha made phones too?
<Lord_Nightmare> to be honest, the person who knows the most about those is not me.
<Lord_Nightmare> no, they're ADPCM/FM chips
<Lord_Nightmare> and PCM
<Lord_Nightmare> and... maybe other stuff
<Lord_Nightmare> i don't know if there's datasheets application notes for them
<cr1901_modern> The datasheet suggests you're supposed to use them w/ a phone
<whitequark> Lord_Nightmare: were you the one who asked me to decap them?
<Lord_Nightmare> they were used mostly in japanese flip phones in the 2000s
<Lord_Nightmare> the YMF825 chip is a serial FM chip which is derivef from the MA-x series
<Lord_Nightmare> i don't think the ymf825 can do adpcm or pcm, i think its fm only
<Lord_Nightmare> but the ymf825 seems like it was meant for use with an arduino or similar
<Lord_Nightmare> it accepts commands via SPI i think
<cr1901_modern> Yes, ymf825 is the SPI chip
<cr1901_modern> the most modern FM synth chip
<ej5> also the most 2000's GUI ever
<Lord_Nightmare> while at least some of the MA-x series use a parallel interface
<cr1901_modern> Lord_Nightmare: So from what I can gather, the ymu759b is the ancestor of the the the YMF825?
<whitequark> YMU759 also has SPI
<whitequark> and parallel as well
<Lord_Nightmare> the MA-x series i THINK all (or at least the later ones) support 4-op FM with 32 (well, 29) waveforms
<Lord_Nightmare> the ymf825 certainly does
<Lord_Nightmare> as for whether the ma-x have had any reverse engineering, i know of one private effort but that's it.
<cr1901_modern> So it's like "OPL5", if there were such a thing?
<Lord_Nightmare> pretty much except its more like OPNBL5
<Lord_Nightmare> OPL4 has GEW8 built in, aka "AWM" pcm playback
<Lord_Nightmare> while MA-x does not, i don't think. MA-x has "yamaha adpcm" like the OPNA, OPNB and Y8950 have
<Lord_Nightmare> AWM is way more powerful music-wise
<cr1901_modern> I know nothing about AWM
<Lord_Nightmare> it just means that ridiculous looking yamaha product tree is even more complex
<ej5> someone should make a diagram
* cr1901_modern shudders at the thought
<Lord_Nightmare> i did, a while ago. let me see if i still have it
<Lord_Nightmare> iirc someone made a fancier one too but i don't know if its public
<cr1901_modern> And since ymf825 is meant to be used w/ Arduinos, there's probably a library already existing for it
<cr1901_modern> even if the official docs are nonexistent
<Lord_Nightmare> ymf825 has official docs
<Lord_Nightmare> in english
<cr1901_modern> I've found the datasheet in English
<Lord_Nightmare> they're not that great but they exist
<cr1901_modern> it doesn't give register descriptions
<cr1901_modern> if there's an application manual, I haven't seen it
<whitequark> Yamaha's FM synthesizer produce high fidelity clean vivid sound, in no way
<whitequark> comparable to the traditional beeps and chimes used in such products, yet all the
<whitequark> control required is just a few tens of bytes of setup parameters.
<whitequark> shots fired
<Lord_Nightmare> yamaha did not like the MML-based beep stuff that was on the motorola and similar phones of the late 90s/early 2000s
<cr1901_modern> Ironic, since MML is/was a popular way to talk to FM chips
<cr1901_modern> (I don't quite care for it, but I can see the appeal)
<Lord_Nightmare> the SMAF format however, which the MA-x series can 'handle', can contain MML bleeps, FM, PCM, and MP3
<Lord_Nightmare> the SMAF format is a giant clusterfuck
<Lord_Nightmare> its like "hey, lets shove bleeps, FM, MIDI, PCM, MP3, crude low res video and pictures, album info, karaoke, and shitty DRM all into one file format!"
<Lord_Nightmare> the smaf format ironically is fairly well documented, though even that is incomplete!
<ej5> so SMAF is the TIFF of audio?
<cr1901_modern> SMAF is the USB PD of audip
<cr1901_modern> USBC*
<ej5> (TIFF supports like 9875947687 different compression and image formats internally)
<Lord_Nightmare> ej5 kinda
<Lord_Nightmare> SMAF is the TIFF of 2000s phone audio/ringtones/etc
<cr1901_modern> Lord_Nightmare: ymf825 uses SMAF? Or can you get away with just programming registers over SPI?
<Lord_Nightmare> no
<Lord_Nightmare> none of the MA-x actually implement SMAF themselves, but they contain the hardware to play back pcm audio, and FM midi
<Lord_Nightmare> the actual SMAF decoding was done by the phone main cpu afaik
<Lord_Nightmare> and they play back adpcm in hardware
<Lord_Nightmare> i think the later MA-x can do mp3, but not the older ones?
<Lord_Nightmare> i may be wrong
<Lord_Nightmare> i don't think ymf825 can do pcm or adpcm or mp3 at all
<Lord_Nightmare> i think its just fm
<Lord_Nightmare> so its effectively the "opll" of the ma-2
<Lord_Nightmare> i think
<cr1901_modern> Ahhh
<cr1901_modern> well that's good enough for me
<cr1901_modern> Gonna prob buy an arduino board soon, hook it up to my STM32F4 discovery board and implement a MIDI device
<Lord_Nightmare> I ordered a ymf825 board and it arrived today. shipping from japan is expensive as ****
<Lord_Nightmare> I need to solder a header to it
<cr1901_modern> It's $30.00 for that board I want to get
<Lord_Nightmare> its $30 plus $20 shipping
<cr1901_modern> ... damn
<Lord_Nightmare> but i don't see any other easy way to get a ymf825
<cr1901_modern> From what I can gather, ymf825 is a novelty, low-run chip meant for hobbyists w/ Arduinos
<Lord_Nightmare> the MA-x chips can be found in certain japanese cell phones, which may be findable on ebay
<cr1901_modern> (nothing wrong w/ that)
<Lord_Nightmare> but 90's cell phones from japan are surprisingly hard to find
<Lord_Nightmare> millions of them were thrown away
<cr1901_modern> i.e. you're not supposed to make products w/ it
<Lord_Nightmare> er
<Lord_Nightmare> not 90's cell phones
<Lord_Nightmare> 2000s cell phones
<Lord_Nightmare> 90s cell phones didn't have FM
<cr1901_modern> Apropos of nothing: I was today years old when I learned Yamaha developed Vocaloid
<Lord_Nightmare> YMU759 (or YMU762?) appears at least in the samsung SGH-T100, and SGH-P400, SGH-E700, SGH-A800, SGH-C520
<cr1901_modern> I have an old Samsung phone
<Lord_Nightmare> so if someone you know has some old samsung gsm flip phones rotting in a drawer...
<Lord_Nightmare> huh! ok, heres better info
<Lord_Nightmare> MA-1 (YMU757) 4 FM voices
<Lord_Nightmare> MA-2 (YMU759) 16 FM voices, ADPCM playback
<Lord_Nightmare> MA-3 (YMU762) 32 FM voices, 8 wavetable voices, PCM/ADPCM playback
<Lord_Nightmare> MA-5 (YMU765) 64 voices (FM + wavetable + Analog Lite synthesizer), PCM/ADPCM playback
<Lord_Nightmare> MA-7 (YMU786) 128 voices (FM + wavetable + Analog Lite synthesizer), PCM/ADPCM playback
<cr1901_modern> I have an SGH-A687 Strive
<Lord_Nightmare> let me see if i can find the service manual to that
<Lord_Nightmare> I don't think that has SMAF support
<Lord_Nightmare> pretty muc anything on that list will PROBABLY have one of the MA-x chips in it
<Lord_Nightmare> actually
<Lord_Nightmare> the samsung SGH-C520 is NOT on that list
<Lord_Nightmare> but it DOES have an MA-2 in it
<Lord_Nightmare> so i need to find the service manual to be sure
<Lord_Nightmare> it seems like the sgh-a687 service manual was service center only and never leaked
<Lord_Nightmare> so the only way to know for sure is to dismantle the phone
<cr1901_modern> I mean I'm happy to do that
<cr1901_modern> it's not the phone I use
<cr1901_modern> I just kept it around w/ the intention of dismantling it one day
<cr1901_modern> and never did lol
<Lord_Nightmare> if you do dismantle the phone make sure you save all the bits so you can put it back together
<cr1901_modern> The phone's broken already
<Lord_Nightmare> cell phones sometimes use screws that are 1/8mm different lengths and if you mix them up you bore a hole through the pcb and ruin the phone (looking at you, apple with the iphone5)
<cr1901_modern> I upgraded to an actual smart phone in May 2017
<Lord_Nightmare> that damage on the iphone5 was so common people did whole services doing microscopic soldering to try to fix it
<Lord_Nightmare> when a repair center botched a replacement battery or screen and fucked the pcb
<cr1901_modern> The phone needs a new screen and battery to work again
<cr1901_modern> I'd like to note- I _already_ replaced the screen on this phone once
<Lord_Nightmare> at that point... just take it apart, carefully.
<Lord_Nightmare> i'm hoping if it has an MA-x chip that its not BGA
<cr1901_modern> Oh it's BGA chips
<Lord_Nightmare> since removing a BGA chip and remounting it is a pain in the ass
<cr1901_modern> there's a nice flaw where the ribbon cable attaching both parts of the phone wears out and tears
<Lord_Nightmare> some of the ma-x chips are not bga but some are
<Lord_Nightmare> i think
<Lord_Nightmare> they may have been offered in both package types
<cr1901_modern> and by the time the cable wore out the second time, I got feed up and got a new phone
<Lord_Nightmare> the 'ribbon cable tears' issue is gonna end up with an attempted class action (becoming binding arbitration) lawsuit against apple with the 2016 macbook pro
<Lord_Nightmare> because of the 'stage lights' thing which is caused by a failing flex cable
<Lord_Nightmare> and because the other end of the flex cable is bonded DIRECTLY TO THE SCREEN PANEL it can't be replaced easily if at all
<Lord_Nightmare> the design was stupid. they should have stuck to wires
<Lord_Nightmare> like what happened with the legs/feet of the sony aibo for the ps2
<Lord_Nightmare> they used flex cables and they failed so often and consistently that by the end of support even sony's own repair lab was just bodging ribbon wire cables in place instead
<whitequark> fucking flex
<Lord_Nightmare> theres my svg diagram for yamaha origin etc
<Lord_Nightmare> of the fm chips
<Lord_Nightmare> its WAY incomplete
<Lord_Nightmare> blue is stuff yamaha only used internally
<Lord_Nightmare> red is stuff that exists but doesn't have manuals that i know of
<whitequark> what hte fuck is "opl3-opn3"
<Lord_Nightmare> an unholy combination of both chips on one die
<whitequark> why
<Lord_Nightmare> ymf297-F
<Lord_Nightmare> i think is the part number for that monstrosity
<Lord_Nightmare> iirc you can only use one 'type' of fm at once
<Lord_Nightmare> so it runs in opl3 or opn3 mode
<Lord_Nightmare> as for how opn3 differs from opn2... i actually don't know.
<Lord_Nightmare> and the question of "why would you ever want this" to an opl3+opn3 on one chip but switchable modes, i assume it was meant for a very late pc98 expansion card
<Lord_Nightmare> for nec pc98 series
<Lord_Nightmare> presumably so it could use opl3 for msdos games and opn3 for pc98 games
<Lord_Nightmare> this means opn3 is probably more similar to opnb than it is to opn2
<Lord_Nightmare> (if that's the case)