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>
whitequark: https://twitter.com/whitequark/status/1205302834117386240 I want to extract the shitty OPN2 to OPL emulation from the old Genecyst emulator... but not badly enough that I'm willing to go through a DPMI binary lmao
futarisIRCcloud has quit [Quit: Connection closed for inactivity]
nukeykt has joined ##yamahasynths
l_oliveira has quit [Quit: ChatZilla 0.9.92-rdmsoft [XULRunner 35.0.1/20150122214805]]
<Lord_Nightmare>
Xyz_39808: you're missing OPP (same as OPM except the timer resolution is different?) and OPZ (basically OPM but with much higher sine table resolution and 8 waveforms like opl3)
<Lord_Nightmare>
Xyz_39808: also, are you 'x68303' on github? or did i already ask that?
<Xyz_39808>
no I'm not kayama
<Lord_Nightmare>
ah
<Lord_Nightmare>
x68303's equites patch is no good, but I'm not sure the best way to say that. I wrote my own patch which uses the sine prom instead of hardcoding it like he did but its still not great and i don't think it can be applied as is
<Xyz_39808>
I couldn't find much source information on the OPP when I last linked this. So I didn't feel comfortable updating.
<Lord_Nightmare>
OPP is weird. its main purpose is on the MSX SFG-05 cart
<Lord_Nightmare>
it has a different resolution timer so it is more useful for midi tempo
<Lord_Nightmare>
i think the timer runs at half the rate as the OPM?
<Lord_Nightmare>
it also has some "DRM" changes to the way the test register is mapped
<Lord_Nightmare>
so you can write a value to the location of the OPM test register which would silence the chip and the OPP will ignore that
<Lord_Nightmare>
yamaha's code does exactly that
<Lord_Nightmare>
if you look at the different firmware revisions for the sfg-01 and sfg-05 you can see on the non-upgrade-rom for sfg-05 with ym2164, the timer value written to the chip is shifted first
<Lord_Nightmare>
but on the sfg-01 original firmware (which had a ym2151) and sfg-01 official upgrade board (which is basically the sfg-05 firmware with some minor changes) it is not shifted
<Lord_Nightmare>
since an upgraded sfg-01 would still use a ym2151
<Lord_Nightmare>
OPZ is from the tx81-z, its reverse enginnering is very very preliminary and is private afaik
<Lord_Nightmare>
i need to get myself a tx81z at some point ...
<Lord_Nightmare>
OPZ is ym2414
<Lord_Nightmare>
also VRC7 is used on one more thing: its used on a konami ?horse racing? large gambling machine
<Lord_Nightmare>
its not clear which one
<Lord_Nightmare>
but its a very rare machine, unclear if any survive
<Lord_Nightmare>
also OPL4's PCM is yamaha AWM synthesis
<Lord_Nightmare>
same as used on the GEW8/Multipcm chip
<Lord_Nightmare>
and GEW6 presumably
<Lord_Nightmare>
opl4 is basically an opl3 and a GEW8 taped together
<Lord_Nightmare>
with the more complicated dsp bus of the gew8 replaced with a much simpler raw send/receive effects bus
<Sarayan>
LN: did you spend some time tracking schematics of non-yamaha synths btw?
<Lord_Nightmare>
not really. i think balrog did
<Lord_Nightmare>
iirc there is a korg synth which uses the ym2164 as well, i think?
<Lord_Nightmare>
so its used in 4 places: the sfg-05, the mystery korg synth, the fb-01, and the ibm music feature card which is pretty much an fb-01 on an isa card
<Lord_Nightmare>
and iirc all 4 devices do the DRM thing with the test register
<Lord_Nightmare>
the korg synth i believe has a mask mcu which does it so patching it out (as on the fb01, ibm mfc and sfg-05) is not really feasable
<Lord_Nightmare>
the problem with all of this info: I'm basing it entirely on something i remember reading somewhere a long time ago
<Lord_Nightmare>
so i could be dead wrong about the korg thing
<Sarayan>
heh
<Lord_Nightmare>
and wohali had some synth schems iirc
<Sarayan>
wohali?
<Lord_Nightmare>
she was in here earlier this year but left after the logging bot was put in place, i think she doesn't like her irc chat 'on the record'
<Lord_Nightmare>
I think she's still on freenode irc too, just not in this channel
balrog has quit [Quit: Bye]
balrog has joined ##yamahasynths
balrog has quit [Ping timeout: 268 seconds]
balrog has joined ##yamahasynths
balrog has quit [Ping timeout: 250 seconds]
balrog has joined ##yamahasynths
<ej5>
hey cr1901_modern you take a crack at writing SB firmware yet?
<cr1901_modern>
ej5: Not yet. Probably in the next month. My plan is to use a recent sdcc assembler.
<ej5>
cool
<cr1901_modern>
I'll put the tl866 back into the crappy proprietary firmware mode since I just don't have it in me right now to add an 8051 programmer to opentl866
<cr1901_modern>
ej5: Would you have any idea on how to program the 8051 without needing to physically insert/remove the chip each time?
<cr1901_modern>
If not, I may purchase a ZIF to put on Snark Barker just for this
<ej5>
hmmm, you could write a little bootloader and go over the serial port
<ej5>
i bet someone's already done that anyway
<cr1901_modern>
... that's an excellent idea even if someone hasn't done it yet
<ej5>
you could even do it over the joystick port since the RX and TX lines go directly to it.
<cr1901_modern>
meaning that's prob how they uploaded programs during debugging back then
<ej5>
to reset the 8051 just write to the DSP reset IO address, it yanks the reset line :)
<cr1901_modern>
and then removed the bootloader when it was ready for production
<cr1901_modern>
Unlike the PC BIOS, a reimplementation of this firmware need not be concerned with .text segment layout compatibility
<cr1901_modern>
So I could just _keep_ the bootloader possibly
<ej5>
yup
<ej5>
probably more useful than SB-MIDI mode
<cr1901_modern>
and time out if a program isn't seen in, say 1 second or so (nobody's going to access a Sound Blaster within 1 second of power-on)
<cr1901_modern>
and ppl who want to modify the firmware opt-into anything disastrous like accessing firmware before its loaded :)
<ej5>
bbl, going afk
nukeykt has quit [Remote host closed the connection]