| |
chatGPZ
Registered: Dec 2001 Posts: 11386 |
(Ab)use of dummy accesses
For the next release of my "No more Secrets" doc i am preparing a chapter related to the dummy access which happen when the CPU performs an internal operation. Once again i am looking for some examples on how to (ab)use it :) I guess everyone knows "inc $d019" - but i am sure there is more than this. And not only with RMW instructions. So if you have anything in your mind - just drop it here!
here are some related notes which i pasted together. feel free to proofread and point out mistakes :) |
|
... 55 posts hidden. Click here to view all posts.... |
| |
Zyron
Registered: Jan 2002 Posts: 2381 |
:o |
| |
MagerValp
Registered: Dec 2001 Posts: 1078 |
Neat! |
| |
chatGPZ
Registered: Dec 2001 Posts: 11386 |
that calls for a test program that breaks emulation :) |
| |
oziphantom
Registered: Oct 2014 Posts: 490 |
Quoting lftThe engineers must have assumed (wrongly) that the CPU will always trigger a transfer on the last cycle of an instruction, so that the next cycle is guaranteed to be a read (to fetch the next instruction).
Or explicitly put in the programming guide/datasheet.
'Thou shall not write to thing with anything else other than ABS.' |
| |
Oswald
Registered: Apr 2002 Posts: 5094 |
I dont get it, if REU starts to use bus as soon as VIC signals on BA to processor to stop, then it will lead to a bus conflict ? |
| |
JackAsser
Registered: Jun 2002 Posts: 2014 |
Quote: I dont get it, if REU starts to use bus as soon as VIC signals on BA to processor to stop, then it will lead to a bus conflict ?
Nobody said that... :) It monitors BA... I don't know, but I would assume the REU will not transfer when BA is low, even though technically could use cycles 0..2 there. It might do, I dunno. |
| |
chatGPZ
Registered: Dec 2001 Posts: 11386 |
but where is the test program? :) |
| |
Walt
Registered: May 2004 Posts: 47 |
I am working on a REU demo and I had to do some test code because I experienced different behavior when using REU to magic byte on top of 8 sprites in a row.
Timing was different on VICE 2.4, VICE 3.x, real REU (Thanks Hedning :)), 64 Ultimate and 1541 Ultimate 2+...
The C64 Ultimate and VICE 2.4 behaved the same and real REU and VICE 3.x behaved the same (Nice work on VICE :))
So yeah, a test program for BA and REU would be nice... |
| |
chatGPZ
Registered: Dec 2001 Posts: 11386 |
there are related test programs, but not for the ff00 trigger with inc as lft described :) see https://sourceforge.net/p/vice-emu/code/HEAD/tree/testprogs/REU/ |
| |
chatGPZ
Registered: Dec 2001 Posts: 11386 |
.... so i wrote one -> https://sourceforge.net/p/vice-emu/code/HEAD/tree/testprogs/REU..
works as LFT described on real hardware. fails in VICE :) |
Previous - 1 | 2 | 3 | 4 | 5 | 6 | 7 - Next |