-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
out (c),0 [ED 71] can actually write a value different than 0 #9
Comments
Thanks @sverx, I'll make a note of that. What's a good reference for the behavior on the SEGA Game Gear? |
I wouldn't know what I could suggest. AFAIK the only difference in the processor's behavior is this one. |
Anyway, note that this difference is not specific to the SEGA Game Gear, it's about CMOS/NMOS Z80 processors. |
On my 84+ (TA1 ASIC),
outputs $01. I've tried a few arrangements and all of them seem to do the same thing. Notably, I once tried an LCD clearing routine:
...which filled the entire screen with the B counter. The Z80 design TI uses is allegedly the standard CMOS one, but clearly not. (another difference is that bits 3 & 5 are always set to 0) |
This is interesting! 😃 |
I actually typed it in as hex codes, and yes, I did manually use
(port 41 is a free-use port that latches all 8 bits on this platform, and port 10 in my last post is the LCD control port) (also, I was using a different assembler back when I wrote that clrlcd routine) EDIT: but that's actually a good theory. The code for B is |
Thanks for the confirmation. |
The undocumented [ED 71], albeit commonly called
out (c),0
, can actually output a value different than zero depending on the implementation - for instance on the SEGA Game Gear (CMOS) it outputs0xFF
instead. I think there's should be a note in the description.The text was updated successfully, but these errors were encountered: