I was looking at Akumajou Densetsu earlier and I noticed that after every write to the sound registers at 8000-8002 / 9000-9002 / A000-A002, it follows up with an immediate jsr to a NOP routine that ends up burning 32 cycles.
I didn't see anything equivalent in Madara or Esper Dream 2, but they both seem to have more than that delay between writes just by some actual functional code in between.
I've seen homebrew NSFs play fine on hardware (e.g. TNS devices) that have shorter periods between writes (Famitracker seems to go about 14 cycles between?) and haven't spotted a problem with them.
I'm just curious if there's really supposed to be a "speed limit" on VRC6 writes like there is on VRC7. At least with the VRC7 I know why, but seeing intentional delays like this in AD makes me wonder if it has any real write speed problems, or maybe at some early point in the design such a problem was presumed? Anyhow, just kind of strange, really, I might try and do some write speed tests later on when I get back to working on NSFPlay.
I didn't see anything equivalent in Madara or Esper Dream 2, but they both seem to have more than that delay between writes just by some actual functional code in between.
I've seen homebrew NSFs play fine on hardware (e.g. TNS devices) that have shorter periods between writes (Famitracker seems to go about 14 cycles between?) and haven't spotted a problem with them.
I'm just curious if there's really supposed to be a "speed limit" on VRC6 writes like there is on VRC7. At least with the VRC7 I know why, but seeing intentional delays like this in AD makes me wonder if it has any real write speed problems, or maybe at some early point in the design such a problem was presumed? Anyhow, just kind of strange, really, I might try and do some write speed tests later on when I get back to working on NSFPlay.