I think I found the problem. I wasn't compiling in the debug build, and I was writing outside the bounds of the array because I accidentally started Y and X at 1 instead of 0.
But why Blitzmax did not throw an error message up saying that I was trying to access memory I wasn't suppposed to or something, I have no idea. It only does it when I run it in debug mode.
I don't expect it to do bounds checking when not in debug mode, but when other programs I run crash cause they try to access memory they're not supposed to, I get an error, that at the very least, tells me the program crashed.
Max just exits, so I don't know that it is exiting because I have screwed up, and not because it's not polling for keyboard input.
But why Blitzmax did not throw an error message up saying that I was trying to access memory I wasn't suppposed to or something, I have no idea. It only does it when I run it in debug mode.
I don't expect it to do bounds checking when not in debug mode, but when other programs I run crash cause they try to access memory they're not supposed to, I get an error, that at the very least, tells me the program crashed.
Max just exits, so I don't know that it is exiting because I have screwed up, and not because it's not polling for keyboard input.