Subject: Re: [stella] lsr HMCLR From: "B. Watson" <atari@xxxxxxxxxxxxxx> Date: Tue, 9 Aug 2005 12:02:48 -0400 |
On Tue, 9 Aug 2005, Bob Montgomery wrote: > In Stella and z26, will > lsr HMCLR > *always* strobe HMCLR ($2B) and set the carry? > > Based on some testing, it seems to. Well, sort-of. The LSR will read from $2B, which is a mirror of $0B, aka INPT3 (connected to paddle 4). Only bit 7 of INPT3 is wired to anything; the other bits "float". In both emulators, the disconnected bits will read as the address being read from, so bits 0-6 will be $2B, which has bit 0 set. The LSR will shift bit 0 into the Carry, setting it, and write either $15 or $55 (depending on the state of bit 7 read from INPT3) back to address $2B (aka HMCLR, when being written to). This is an oversimplification of how a real 6507 behaves when reading floating/disconnected bits, which happens to be accurate enough to run the few games that depend on this behaviour... > A little discussion over at AA (http://www.atariage.com/forums/index.php?showtopic=74034) > seems to indicate that this may not be reliable on real hardware, > especially with things like the FB2, multi-cart selectors, etc. Different stuff on the bus can affect the states of the disconnected bits. I'm not a hardware guy, so I dunno what the exact effects should be... The emulators assume nothing else is on the bus. > But in the emulators, will it be consistent? In the current versions of the emulators, it should be, yes. But we're always trying to make the emulators more accurate, so it might change in future versions... Hope this helps (and I hope I got it right...) -- B. Archives (includes files) at http://www.biglist.com/lists/stella/archives/ Unsub & more at http://stella.biglist.com
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[stella] lsr HMCLR, Bob Montgomery | Thread | [stella] Reflex Update (source and , Lee Fastenau |
[stella] lsr HMCLR, Bob Montgomery | Date | [stella] Reflex Update (source and , Lee Fastenau |
Month |