You are correct, m1 doesn't check a lot of things.
Funny you should mention that though, I was just thinking about the correct thing to do, warn, fail, wrap to 0? I don't like wrap to 0, you can easily overwrite things like interrupt vectors.
I'm actually thinking about adding a more general error check, run past 4k or overwrite code you already have placed, got bit by that once, a flexo string was longer than I considered and overwrote a bit of code.
Suggestions?
Bill
PS - right now it intentionally does what m1 does, wrap around to 0, but that's going to change one way or another.
Also, love the fireworks! And all without GL, SDL, or any of those other way too complex modern solutions.