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
andlabs has quit [Ping timeout: 268 seconds]
kode54 has joined ##yamahasynths
andlabs has joined ##yamahasynths
Xyz_39808 has quit [Ping timeout: 250 seconds]
ej5 has joined ##yamahasynths
Xyz_39808 has joined ##yamahasynths
andlabs has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
andlabs has joined ##yamahasynths
<andlabs> hey ValleyBell
<andlabs> if I give you an arbitrary Genesis Z80 dump will you be able to identify the driver and also the location of the sound data
ej5 has quit [Read error: Connection reset by peer]
Xyz_39808 has quit [Ping timeout: 250 seconds]
Xyz_39808 has joined ##yamahasynths
Xyz_39808 has quit [Read error: Connection reset by peer]
Xyz_39808 has joined ##yamahasynths
<cr1901_modern> Foone: cr1901cc -pedantic, but why do you distinguish between a High Level Format and laying down a file system? https://twitter.com/Foone/status/1194763118909382656
<ValleyBell> andlabs: depends on the sound driver
<ValleyBell> I only know a few.
<ValleyBell> Getting the location of sound data should be possible though.
emily has quit [*.net *.split]
vup has quit [*.net *.split]
Sarayan has quit [*.net *.split]
emily has joined ##yamahasynths
Sarayan has joined ##yamahasynths
vup has joined ##yamahasynths
<andlabs> ValleyBell: and how long do you think it would take? would you be able to run one of your driver identification tools and it would work? or would you have to disassemble the code?
<cr1901_modern> andlabs: (Sorry I'm not VB :P) I rediscovered this last night... if I have <stdint.h> or provide it myself, how difficult is it to use your utf-8 library with a C89 compiler?
andlabs has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
andlabs has joined ##yamahasynths
<andlabs> cr1901_modern: no idea, you can try it and see
<andlabs> I should probably go back and figure out all the C99-isms that aren't stdint.h
<andlabs> ValleyBell: fwiw I'm pretty sure this is SMPS and it's not likely that there's any sound in the ROM I'm looking at, but I might as well try
<andlabs> let me knwo when you downloaded this .bin
fseidel has quit [Ping timeout: 240 seconds]
fseidel has joined ##yamahasynths
andlabs has quit [Ping timeout: 250 seconds]
<ValleyBell> There's a surprising amount of service manuals there.
<ValleyBell> (no CM-32/CM64, but it covers most other models)
<balrog> ValleyBell: the CM-64 service notes are out there
andlabs has joined ##yamahasynths
<ValleyBell> Yes, I know about the YouTube video.
<ValleyBell> andlabs: It's SMPS Z80 Type 1
<ValleyBell> music data is at 018000
<ValleyBell> SFX data is at 0x1000 in the Z80 dump.
<ValleyBell> Yes, in case of SMPS driver I just have to run "SMPSExtract -info -Z80 -Z80Dump driver.bin rom.bin" on it.
<ValleyBell> (In that case, the actual ROM wasn't required, so I just put "driver.bin" there again.)
<andlabs> is SMPSExtract on your github?
<Lord_Nightmare> argh, ghidra has a bug when decompiling z80 where (I think it has to do with certain opcodes being used) it will spit out an xml error
<Foone> cr1901_modern: specifically that's because doing a quick format will only do the filesystem part, not the erasing-of-all-sectors part
<Sarayan> On floppies I've never seen an erasing-all-sectors option that didn't low-level reformat
<whitequark> Foone: so what's the "high-level format" in your thread? I never figured it out
<whitequark> or do you only count erasing the FAT / etc under "quick format", without actually ensuring integrity of the filesystem?
<Sarayan> I guess that's dd if=/dev/zero of=/dev/fd0 bs=512 but nobody ever does that
<Sarayan> (+rebuild the fs and the boot sector)
<KitsuWhooa> Sarayan: only reason I've done that is to check if a disk is broken :p
<KitsuWhooa> (to reuse later)
<ValleyBell> andlabs: https://forums.sonicretro.org/index.php?threads/valley-bells-smps-research.32473/page-5#post-929100
<ValleyBell> It's in "Part 1 (rips and tools)"
<ValleyBell> There is no Git repo for it. (even though it's one of the "larger" tools)
<Foone> whitequark: high level formatting is the erasing all data step. it doesn't really apply on a floppy since you don't do that without reformatting it, usually (though like Sarayan pointed out, you can)
<KitsuWhooa> ValleyBell: You should probably put it on your github account I think
<Foone> but that's what a format does on a hard drive, since the sectors are already there
<KitsuWhooa> would make it easier to find
<Lord_Nightmare> there's also the ultimate low level "format", running a floppy disk through a degausser
<Foone> yep. Don't do that to anything but 8/5.25/3.5" floppies, though.
<Lord_Nightmare> I had some flaky disks which started to behave better after being degaussed
<Foone> you'll coaster zip disks and hard drives
<Lord_Nightmare> indeed
<Lord_Nightmare> also dec 1mb and 2mb disk packs
<Lord_Nightmare> from the 70s
<Lord_Nightmare> they have servo tracks, which while technically possible to rewrite with a hacked up drive, are such a pain in the ass that nobody has yet invested the time to do so
<Lord_Nightmare> an fpga hacked to a micropositioner on the original drive head could almost certainly do it though
<Lord_Nightmare> the drive heads are inside the drive, not the disk packs
<Foone> yeah. same with modern hard drives, where modern = "ide and on". you could in theory hook up a super-accurate sensor and create servo tracks, but in reality no one but seagate or whoever can do that
<Lord_Nightmare> iirc the same or similar disk packs are used on the xerox alto, and ken shirriff was working with someone using an fpga to run the drive to read them, and in theory that same hack could probably be used to rewrite the servo tracks
<Lord_Nightmare> i should poke ken again about the notetaker disk packs...
<andlabs> ValleyBell: thanks
<whitequark> Foone: i'm wondering if one could hack a consumer hard drive to do that by positioning the drive head using an interferometer in the control loop
<whitequark> that should be accurate enough...
<whitequark> seems kind of pointless though
<Foone> probably.
<Foone> I've got one designed for floppy drives, of some sort. I'm not sure how it works or why it is, but I got it when a junk shop was closing
<Sarayan> I wonder if any modern HD went magneto-optical
<Sarayan> in addition to the MO cartridges that existed
<andlabs> ValleyBell: how do you choose a device in Windows 7? none of them produce any sound witht he default device, and XAudio2 outright fails to initialize
<cr1901_modern> Foone: Between the time I asked that q, and now, I remembered that floppies aren't Flash memory/EPROMs and don't require an erase before putting down new data. But ditto w/ Sarayan that I've never seen a controller that only erased-all-sectors w/o low level format (unless you mean "write filler bytes to a sector")
<cr1901_modern> On the 765, I think the only way to write filler bytes to erase a sector is just, well, do a write sector/track command
<cr1901_modern> with a buffer of garbage
<andlabs> oh I need to explicitly press play
<andlabs> lol
<andlabs> I crashed SMPSPlay
<andlabs> lovely
<andlabs> I'll just let you handle it when I release the source of this mystery driver 👻
ej5 has joined ##yamahasynths
andlabs has quit [Ping timeout: 276 seconds]