One of the tricks you can do on the C64 involves manipulating the video chip into reading the graphics data at an offset from where it’s usually located. This allows you to scroll the display horizontally, and the trick is called VSP for Variable Screen Position. However, some machines crash when you attempt this, and the reason for that has always been a mystery. Not anymore.
Fascinating.
Always under-clock, this particular one 90/100 from specification. Metalized RF-shield|Heat-dissipator.[Also CPU and GPU].
V same, squarer waves, preciser timings
I think the title is wrong, this is not a bug that has just been discovered.
This is a bug that has been known for decades, it was the cause of the bug that has been discovered. And while work-arounds had already been known, now a programmer knows what is needed to avoid the bug since there is more than one way to handle it.
Edited 2016-06-07 03:49 UTC
Yeah, it should say “diagnosed” rather than “discovered”.
This, Thom, is why layers in software will always be necessary. Hardware problems are not gone. The concept of software itself is just a layer which users can assume hardware problems don’t exist, and you need extra layers to make sure those problems don’t bubble up to the top all the time.
Like the concept, kwan_e. There are inherent fallacies on Systems Theory. Weakness on hardware that not all the software layers will be able to isolate.
Thom has just presented us with C64 example. The patch doesn’t cover the bug, only impedes to walk over it.
Remembering an article about First Russian CPU’s: Redundancy was deliberately drawn into the screen design, for the more error prone modules [AU if not failing memory]. Software was ALWAYS written with plan B, C…
Could you imagine coding with + , just in case * doesn’t work? And all the necessary validation?
“Weak-ness on Hard-ware”. Like invisible fail lines on a diamond lattice. No matter how hard diamond [the concept] is. A REAL, individual diamond will break when hit at that line, at that angle.
The more for upper the stack.
Contemporaneous Coders hugely lacking on Science and Engineering… [Math will never be enough].
But, come on. ‘Cloud’ wants to retribute Coders at Sweepers’ salaries. ‘Rumbas’ will come for the replacement, later.
Congratulations to everybody about our new digitally ‘assisted’ environment. We can breath peacefully now.</Diatribe>
Well, while interesting, I’m pretty sure that this has been known for quite some time, and Individual Computers has even been producing replacement C64 motherboards with a fix for this problem for a while:
http://wiki.icomp.de/wiki/VSP-Fix
I’d also hesitate to call this a “bug.” It only happens when trying to use VSP, which like most C64 tricks, is an unintended effect from using the CPU to change the state of the machine at exactly the right time to confuse the graphics chip into doing something the designers never intended. Calling it a bug is a bit like complaining that the undocumented private API calls you’ve been using don’t work across all versions of the software.
” is an unintended effect from using the CPU to change the state of the machine at exactly the right time to confuse the graphics chip into doing something the designers never intended. ”
Agree, so awfully many things “the designers never intended” [But end happening].
I guess that when a bug has existed for so long, taking 3 yrs to notice that the cause has been found is no big deal