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
andlabs has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
andlabs has joined ##yamahasynths
sixtysix_ has quit [Ping timeout: 250 seconds]
balrog has quit [Quit: Bye]
balrog has joined ##yamahasynths
ej5 has quit [Read error: Connection reset by peer]
andlabs has quit [Read error: Connection reset by peer]
<cr1901_modern>
although I don't think it would be able to duplicate many effects in this video. Like channels being completely out of phase
sixtysix has quit [Ping timeout: 245 seconds]
<ValleyBell>
Especially the screwups pitch effects and broken DAC sounds might be difficult to replicate at YM2612 command level.
<ValleyBell>
But of course you can always try :P
<cr1901_modern>
Wonder how difficult it would be to massage a VGM stream into something that looks like a basic music driver- probably ridiculous and not worth it
<superctr>
like XGM?
<cr1901_modern>
Maybe? I meant something like MDX
<superctr>
XGM uses modified VGM stream to facilitate easy playback using the Z80 on the megadrive (while mixing 4 PCM channels with support for sound effects)
<cr1901_modern>
is there a command to "spam the chip with a frequency transition as fast as possible", or something else?
<superctr>
the original psg soundtrack also has that
<cr1901_modern>
... oh
<superctr>
afaik the original sequence data is used
<fseidel>
does sonic 1 SMS use a custom driver from ancient?
<superctr>
with minor changes perhaps
<superctr>
probably
<cr1901_modern>
I know the first project I should do w/ ghidrah... extract the horrible OPN to OPL conversion code from Genecyst 0.20 and create a VGM tool to convert it (for maximum hilarity)
<cr1901_modern>
I have linked that video many many times
<cr1901_modern>
it's beautiful :D
<Lord_Nightmare>
cr1901_modern: i assume the genecyst source in kronksrc doesn't have the opm->opl code in it?
<Lord_Nightmare>
kronksrc was not just nesticle code, it was a bunch of stuff
<Lord_Nightmare>
also DEAR GOD that sounds awful
<Lord_Nightmare>
i wonder how ghidra would deal with the bugged spiny horizontal velocity when thrown by a lakitu in the original super mario bros for nes/famicom
<Lord_Nightmare>
basically whoever coded that (miyamoto?) screwed up and smashed the A register in the bounding box check function, so it ends up zeroed after it had already had the angle written to it
<Lord_Nightmare>
so the horizontal velocity of a thrown spiny is always zero, so it falls straight down
<Lord_Nightmare>
if you fix the bug (by moving the call to the bounding box check function after the angle value already got used) lakitu becomes a LOT more annoying
<Lord_Nightmare>
it actually looks really weird if you're used to the way super mario bros normally plays
ej5 has joined ##yamahasynths
Stilett0-away is now known as Stilett0
<cr1901_modern>
Lord_Nightmare: Well, I didn't know there _was_ genecyst source
<cr1901_modern>
if the source is to version 0.20, then the opn->opl code should be in there
<Lord_Nightmare>
lets see
<cr1901_modern>
I've never even heard of kronksrc until today
<cr1901_modern>
Anyways I probably legally can't use that source (not that anyone will give a shit), so I would do a reimpl
<Lord_Nightmare>
i'm checking if its in there at all.
<Lord_Nightmare>
most of what's in there is nesticle
<cr1901_modern>
the opn->opl code was done by someone else
<cr1901_modern>
Ishmair I think- I have no idea who that is
<cr1901_modern>
>Collectives of folks who grew up with these games used their budding technical skills to reverse engineer the devices, sharing knowledge with their peers in text files, on slapdash websites, or within FTP servers.
<cr1901_modern>
They conveniently omitted "hoarding the developer's manuals for themselves" :)
<whitequark>
haha
<cr1901_modern>
I didn't know Marat made iNES... I actually knew of him from his 6502 emulator lol (which, at the time I was planning on using for a project b/c I didn't feel like writing my own).
<cr1901_modern>
(Of course, nowadays there's a perfectly good 6502 emulator in Rust that's easy to use, so I just use that instead)
<cr1901_modern>
Lord_Nightmare: ghidra is downloaded, I'm gonna pop in the Genecyst binary and look for the OPN emulation code for a test run