chips icon indicating copy to clipboard operation
chips copied to clipboard

Allow invalid regs

Open leiradel opened this issue 7 months ago • 2 comments

This thread at World of Spectrum says that it's valid to write to invalid AY registers, and that you can read back the value, which decays over time.

This PR doesn't implement the decay, but makes it possible to set the register address to an invalid one, and makes reading back from it return 0, as if it instantly decays.

I made this change because there's this SZX snapshot that has the last AY register address set to 16, and it was causing an assert. Instead of making it a special case in my code, I thought it would be nice if it was at least partially implemented in ay38910.h.

leiradel avatar Jun 05 '25 15:06 leiradel

Thanks, I'll try to look in detail into the PR 'soon-ish'...

In the meantime, don't mind the CI errors, looks like those are unrelated to your PR (I guess trying to use designated initialization in the C++ code was a mistake lol - not sure why those problems haven't shown up earlier though).

floooh avatar Jun 06 '25 09:06 floooh

Yeah I saw that some passed and thought the errors shouldn't be related to my changes.

leiradel avatar Jun 06 '25 10:06 leiradel

Ok, finally got around to merge this one. Thanks!

floooh avatar Aug 25 '25 09:08 floooh