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
futarisIRCcloud has quit [Quit: Connection closed for inactivity]
Xyz_39808 has joined ##yamahasynths
m4t has quit [*.net *.split]
ValleyBell has quit [*.net *.split]
whitequark has quit [*.net *.split]
Stilett0 has quit [*.net *.split]
whitequark has joined ##yamahasynths
Stilett0 has joined ##yamahasynths
m4t has joined ##yamahasynths
ValleyBell has joined ##yamahasynths
_whitelogger has joined ##yamahasynths
futarisIRCcloud has joined ##yamahasynths
_whitelogger has joined ##yamahasynths
futarisIRCcloud has quit [Quit: Connection closed for inactivity]
futarisIRCcloud has joined ##yamahasynths
ahrkl has joined ##yamahasynths
ahrkl is now known as joes
Xyz39808 has joined ##yamahasynths
Xyz_39808 has quit [Ping timeout: 245 seconds]
joes has quit [Ping timeout: 245 seconds]
ahrkl has joined ##yamahasynths
ahrkl has quit [Ping timeout: 245 seconds]
futarisIRCcloud has quit [Quit: Connection closed for inactivity]
Xyz39808 has quit [Read error: Connection reset by peer]
Xyz_39808 has joined ##yamahasynths
ahrkl has joined ##yamahasynths
ahrkl has quit [Ping timeout: 265 seconds]
ahrkl has joined ##yamahasynths
andlabs has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<Lord_Nightmare> Foone: https://twitter.com/Foone/status/1172968707523432448 its weird, but if it had the actual integer basic roms on it it'd be worth a few hundred bucks
<Lord_Nightmare> integer basic apple2 roms and those ROM cards are very rare
<Lord_Nightmare> honestly that unpopulated card is still probably worth a few hundred bucks
<Lord_Nightmare> might not be a bad idea to do hi-res scans of both sides of it
<Lord_Nightmare> and make an ej5-style clone
ahrkl has quit [Ping timeout: 240 seconds]
ahrkl has joined ##yamahasynths
<Lord_Nightmare> that card was intended for 1978 appleII machines to allow 'upgrading' them to use the appleIIplus applesoft (microsoft) basic roms which did floating point. the vast majority of basic apple2 stuff requires applesoft
<Lord_Nightmare> it could also be used on the appleIIplus (1979) machines to run integer basic
<Lord_Nightmare> for those programs written between 1977 and 19xx which required integer basic
<Lord_Nightmare> woz wrote integer basic
<Lord_Nightmare> i forget exactly who wrote applesoft basic, but its one of the 6502-ports of microsoft basic, probably described on pagetable.com somewhere
<Lord_Nightmare> once apple introduced the 'language card' for slot 0 which allowed a good sized chunk of banked ram to be accessed by the apple2, you could, if you had the applesoft basic roms on the mainboard, load the integer basic roms into the language card
<Lord_Nightmare> the appleIIe in 1983 integrated the language card into the mainboard and did away with slot 0 entirely
<Lord_Nightmare> it also (I think?) added a secondary type of banked ram, so the system could hold even more ram
<Lord_Nightmare> and the appleIIgs in 1986 added even more ram, up to I think 16MB, and 3rd party people figured out how to cram even MORE ram into it
andlabs has joined ##yamahasynths
<Lord_Nightmare> andlabs: foone found an unpopulated integer basic/applesoft basic mode swap apple2 card
<Lord_Nightmare> i think ej5 should clone it :P
<Lord_Nightmare> though its really only useful for apple2 and apple2plus systems, i don't know if it will work in a IIe
<Lord_Nightmare> then again ej5 seems to primarily clone sound cards, so maybe not... an apple2 mockingboard would make more sense to clone, and reactivemicro has already cloned that...
<andlabs> the early non-SN76489 version of the ALF Music Card MC16?
<Lord_Nightmare> is there a better pic of it?
<Lord_Nightmare> i see better pics of the later presumably sn76489 based one
ahrkl has quit [Ping timeout: 268 seconds]
<Lord_Nightmare> i'm guessing the older one is based on the mc6840 ptm
<Lord_Nightmare> you can do some very cool things with a 6840ptm that you can't do with an sn76489, like having one of the 3 counters clock another one and having the max of the first countr decrement by 1 each loop, to create a hardware sweep
<Lord_Nightmare> berzerk and the other stern (and exidy, who cloned it) arcade games and pinballs use a 6840ptm this way for sound effects
<Lord_Nightmare> they also optionally clock one of the ptm channels using a very very long LFSR i think
<Lord_Nightmare> nope, i'm wrong.
<Lord_Nightmare> its dac based, maybe with counters
<Lord_Nightmare> ah, its 8253 based according to the schematics
<Lord_Nightmare> 8253 being the incompatible intel equivalent to the mc6840
<Lord_Nightmare> oh, fuck. fuck fuck fukc
<Lord_Nightmare> that card uses an unobtanium part
<Lord_Nightmare> Fairchild F4725B 16x4 register file with tri-state outputs
cr1901_modern1 has joined ##yamahasynths
cr1901_modern has quit [Ping timeout: 265 seconds]
<Lord_Nightmare> its equivalent to a 74189 16x4 register file with tri-state outputs but the pinout is different
ahrkl has joined ##yamahasynths
<Lord_Nightmare> also note the 7489 (which has constant output outputs, not tristate), the 74189 (tri-state outputs) and the F4725B (tri state outputs) all have inverted outputs compared to the data written; the 74F219 (tri state outputs) and MC10H145 (constant outputs) have non-inverted outputs
<Lord_Nightmare> i believe the pinouts for all those parts are the same except for f4725, and all of them match the intel 3101 sram
<Lord_Nightmare> so the schematic/pcb layout for the alf mc16 would have to be changed to use a 74f189 pinout instead, assuming you can FIND 74F189 parts
<Lord_Nightmare> otherwise it would have to be adapted to use a larger sram; the fact that 7489/3101 sram is dual ported (but with a common address input) may be a bit annoying to deal with
<andlabs> https://imgur.com/a/47aMaSs thanks, ubik, how friendly of you?????
<cr1901_modern1> ej5: Feel free to link me to an article if you don't feel like explaining it again, but on the Sound Blaster, the game port is capable of providing MIDI IN _and_ MIDI OUT at the same time using an adapter to the actual MIDI connectors?
<Lord_Nightmare> i know on the sb16 the midi connector via unused joystick pins is fully compatible with the UART but not intelligent mode
<Lord_Nightmare> i was under the impression that on the pre-sb16 cards this may not have been the case
<Lord_Nightmare> er
<Lord_Nightmare> i missed a word
<Lord_Nightmare> i know on the sb16 the midi connector via unused joystick pins is fully compatible with the MPU401 UART but not intelligent mode
<andlabs> https://imgur.com/a/1WZGU7s look at this proto-robocop right here
ahrkl has quit [Quit: Leaving]
cr1901_modern1 has quit [Quit: Leaving.]
cr1901_modern has joined ##yamahasynths
<andlabs> sadly this is the most rad part of the software, which appears to be the world's slowest, clunkiest notation software, and cannot actually play your composition
<cr1901_modern> >its equivalent to a 74189 16x4 register file with tri-state outputs but the pinout is different
<cr1901_modern> Make a convert-o-board, like the 23xx to JEDEC EPROM adapters?
<cr1901_modern> Lord_Nightmare: ^^
<Lord_Nightmare> eew, for 3 chips? it would be gigantic compared to the rest of the pcb
<Lord_Nightmare> better to just reroute the traces for those chips so they match the 74189 pinout
<Lord_Nightmare> afaik the function of the chips is the same, just the pinout is different
<cr1901_modern> 23xx to JEDEC adapters barely takes up more horizontal space than the original chip
<cr1901_modern> vertical space of course is a different story
<Lord_Nightmare> oh, here's another thing that might be a big issue
<Lord_Nightmare> the F4725B is *CMOS*
<Lord_Nightmare> and has cmos voltage inputs and outputs
<Lord_Nightmare> afaik NO OTHER VARIANT of the 16x4 register file is CMOS; they're all TTL, LS, or similar
<cr1901_modern> https://twitter.com/cr1901/status/1173286037646454784 Funny, was just talking about this today
<Lord_Nightmare> the votrax sc-01 and sc-02 prototypes both used f4725B chips, and because of that it is technically impossible to make reproduction boards
<Lord_Nightmare> because the chips are unobtainable
<Lord_Nightmare> just those
<Lord_Nightmare> every other chip can still be obtained, but not those damn ram/register files
<cr1901_modern> I'm sure ppl can combine their heads together and think of an alternative... I'm not very interested in "Ship of Thesus" philosophical discussions wrt reproductions
<Lord_Nightmare> the F4725B is a true 'C' cmos family part, and can be powered by anywhere between 4.5V and 12.5V
<Lord_Nightmare> the 74F189 is an 'F' family (Bipolar, basically the same as 74AS) and only tolerates 4.5v to 5.5v power, and uses much more power when idle
<Lord_Nightmare> i believe F family uses TTL voltage thresholds
<Lord_Nightmare> while C uses CMOS thresholds
<Lord_Nightmare> so you can't mix the two without level converters
<Lord_Nightmare> hence what i said before is actually wrong
<Lord_Nightmare> you can't just fix the pinout
<Lord_Nightmare> you need to use ttl-input DACS or whatever connects to the output bus of the RAM chips also
<Lord_Nightmare> so making a modern repro of the MC16 card has now officially become a big pain in the ass because of those f***ing ram chips
<whitequark> hot take: any digital circuit that is logically equivalent to the original digital circuit under datasheet-specified timings is a "faithful reproduction of original"
<whitequark> (points at ym3812 inside an FPGA) faithful reproduction of original
<Lord_Nightmare> so, i suppose if we upgrade the 3 dacs to something that uses ttl input and switch everything on the card to use pure ttl logic levels, that would be ok?
<ZirconiumX> whitequark: So if the data sheet is crap and doesn't give timings then anything counts as a faithful reproduction?
<ZirconiumX> :P
<ZirconiumX> Lord_Nightmare: My general experience is that CMOS is tolerant of TTL input, but TTL is not tolerant of CMOS inputs
<superctr> well, you're not going to match the original timings on an FPGA anyway
<ZirconiumX> Because of logic levels etc
<whitequark> ZirconiumX: even yamaha datasheets have timings
<whitequark> granted, some of them are physically impossible to meet, you'd have to time-travel
<superctr> at best you can make it run at the original clock, but matching exactly the setup/hold requirements of the original chips is not possible on FPGA i think, though it will still be enough to make it "drop-in" compatible in most cases
<whitequark> superctr: no, i mean, be at least as permissive as the original chip
<superctr> also, logic levels will not match the original chip on most FPGAs, as yamaha chips run at +5V
<ej5> whoah lots of activity
<whitequark> FPGAs are much faster than 80s CMOS logic, i don't really see a problem
<ej5> pre sb-16 cards use SB-MIDI and are not MPU-401 compatible. the same dongle works fine. it has optocouplers inside it to convert the TTL-level signals on the DB-15 to the MIDI levels (and also provides isolation to prevent ground loops)
<Lord_Nightmare> the cheapo ebay dongle i got years ago i would be highly surprised if it ever saw an optoisolator
<ej5> also i happen to have a full set of the Apple ][ integer ROMs that i found at the electronics flea market a few years ago
<Lord_Nightmare> heh, so you should ask foone to borrow that card and make a repro ROM card with it
<Lord_Nightmare> well, clone it first
<Lord_Nightmare> leave the bare card alone
<superctr> i think that one of the benefits with FPGA cores is that they could be used to replace hard to find chips on an original PCB, however since most old stuff is 5V and DIP or SMD packages, you would need breakout boards with logic converters and small enough FPGA footprint
<Lord_Nightmare> i think its just 2-layer thru-hole
<ej5> not sure how useful it would be though
<Lord_Nightmare> well if you have an apple2plus with applesoft roms its sort of useful, assuming you want to run integer basic stuff
<Lord_Nightmare> balrog has a 2plus like that but it has a faulty keyboard which needs some of those nasty keyswitches/easily fractured keystems replaced
<Lord_Nightmare> apple used really shitty keystems and switches on the original II and IIplus
<Lord_Nightmare> the keys easily snap the stems
<Lord_Nightmare> and the switches below them i don't know how they fail but they just stop working randomly
<whitequark> superctr: i kinda want to make an UP board that would be a drop in replacement for some DIP40 CPUs or something
<whitequark> hard to make it generic though
<superctr> yeah, the pinout is specific in most cases
<superctr> side note: one nice thing about your idea is that you could have a built in ICE debugger
<whitequark> yes.
<whitequark> that's what i want.
<whitequark> just plop a JTAG TAP there.
_whitelogger has joined ##yamahasynths
<cr1901_modern> whitequark: >hot take: any digital circuit that is logically equivalent to the original digital circuit under datasheet-specified timings is a "faithful reproduction of original"
<cr1901_modern> I personally agree w/ this take. Lots of ppl don't, and if the last argum- err discussion I got into re: this still existed online I would link it here lol :P.
<cr1901_modern> Short version is that ppl want analog effects emulated- e.g. there's a bug in the original YM2612 DAC that musicians took advantage of, presumably that was beyond the intent of the silicon designers.
<cr1901_modern> And while I get wanting to emulate that behvaior, I don't think emulating analog effects should be coupled to the "faithful reproduction of the digital components" of a digital circuit.
<cr1901_modern> And well, others d
<cr1901_modern> o*
<cr1901_modern> (it also doesn't help that even if you ran two separate YM2612s in lockstep as part of a miter circuit with a high-quality ADC on their outputs as the success/fail condition, it's going to almost certainly fail)
Xyz_39808 has quit [Read error: Connection reset by peer]
Xyz_39808 has joined ##yamahasynths
futarisIRCcloud has joined ##yamahasynths
<m4t> hrm, trying to decide which method to desolder this ym2612 from a genesis va2 mobo
<m4t> i have hot air, and a decent desolder sucker
<whitequark> do you need the motherboard later
<m4t> yes i want to socket it
<m4t> its got a conformal coating on both sides and an electrolytic next to it as well ;/
<whitequark> aw crap
<whitequark> no chipquik?
<m4t> yeah i have chipquik
<whitequark> i'd use chipquik on it and then gentle hot air
<m4t> from the top or bottom?
<whitequark> bottom
<m4t> k
<m4t> i did just get a bunch of very fine enameled wire for trace repair
<m4t> :(
<m4t> there's no way they were using lead-free in like, 1990, right?
<whitequark> it's 100% leaded
<whitequark> predates RoHS by decade and half
<whitequark> oh yeah
<whitequark> laminate that old is super sensitive to overheating
<whitequark> be careful
<m4t> warping?
<m4t> or just having layers come apart?
<whitequark> latter
kode54 has quit [Quit: The Lounge - https://thelounge.chat]
kode54 has joined ##yamahasynths
<cr1901_modern> I've seen ppl desolder chips (incl the 64 pin 68k) on Genesis successfully but be careful nonetheless
<m4t> i should get a desoldering pump
<m4t> :( i have too much equipment as it is
<m4t> desoldering iron w/pump rather
<m4t> they're fantastic
<m4t> well. the older ones anyhow. the newer ones are plastic from what i've read. can be found NOS on ebay