I need a way to run NES games FASTER

or maybe just more in parallel.

it's taking 15 seconds to run this TAS, with unthrottled/no-display bizhawk. I have half a million runs to do

I switched to a computer that's less in my lap, but that's still ~7s a run.

40 days?

maybe I should just set up some kind of orchestration so I can run it on all my spare computing power. just a lot of simultaneous NES TASes running everywhere
or I could get smarter. I don't want to do that. but it's an option
it turns out being smarter also involves waiting for several hundred NES TASes to finish
man either this game is very resilient to corruption or my script isn't working and I'm corrupting nothing.
or both

the files are identical.

MOTHERFUCKER

yeah I left in one line from an earlier version which broke it. it was carefully calculating the corrupted ROM and then it overwrote the in-memory copy with the original ROM, then wrote that out as the corrupted version

so my plan is that I'm taking an NES ROM and corrupting a kilobyte of it at a time. I'm then running it to a set point, and taking a screenshot.

Every 1k chunk that results in the same screenshot? is uninteresting to my corruption. Everything that breaks or changes? interesting.

Then I'll go through and randomly corrupt those 1k chunks that were found in the interesting pass

@foone Maybe a bisection approach would be faster? Probably still start with the 1K chunks, but then progressively subdivide the corruption region to zero in on the interesting bits faster. But I dunno exactly what you’re looking for.

@bytex64 possibly, but I'd have to write it, and I'm disinclined to do that when my stupider approach is already running.

as for what I'm looking for: the bytes that determine which portrait gets picked in the dialogue screen of Clash at Demon Head