You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.
On most(?) consoles types, the TIA registers seem to have initial values != 0. Without initialization, the console then produces a picture which is not all black.
The text was updated successfully, but these errors were encountered:
For the record, I think I just head a nice idea for a cheap and reliable way to do this. We can just spin the TIA for a fixed number of cycles in which we do random writes to its registers. The result will be an initial state that is both legal and random. The same approach could be adapted for the RIOT.
The I/O registers (SWCHA/SWACNT/SWCHB/SWBCNT) are guaranteed to be zeroed at power on, so initialization isn't needed and I don't think an option to randomize them would be useful.
The only reason for a rom to initialize those registers is if it can be run without power-cycling the console, like happens for the PlusCart menu when using the "emulation-exit" function, but that's a really special case.
The 6532 datasheet also states that the hardware interrupts are disabled (no effect on a 2600), and the "PA7" is set to "negative" (high to low) transition edge detection.
It seems that INTIM is already random at startup in Stella, so only the initial divide ratio and TIMINT flags might be left to consider.
I guess it doesn't really makes much difference, anyway: a game that uses the timer will initialize it to some value and with the appropriate divider.
On most(?) consoles types, the TIA registers seem to have initial values != 0. Without initialization, the console then produces a picture which is not all black.
The text was updated successfully, but these errors were encountered: