<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">Le mer. 4 sept. 2019 à 18:57, tim Rowledge <<a href="mailto:tim@rowledge.org">tim@rowledge.org</a>> a écrit :<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"> <br>
<br>
<br>
> On 2019-09-04, at 12:48 AM, Nicolas Cellier <<a href="mailto:nicolas.cellier.aka.nice@gmail.com" target="_blank">nicolas.cellier.aka.nice@gmail.com</a>> wrote:<br>
> <br>
> <br>
> It seems to me that it's got something to do with 64bits shifter...<br>
> No time to simulate the VM now, if someone want to take it, it's a good exercize...<br>
> <br>
<br>
It's highly likely to be a side-effect of the prefetch stuff; we've had 'fun' with this for decades. IIRC there was some real fun on Mac OS years ago if the bitmap memory happened to end just on a page boundary  - or something of that sort.<br>
<br></blockquote><div>yes, that happens very rarely, but that might happen and SEGV</div><div> <br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
Basically if the mode involves reading the destination bitmap then we end up with the last pixel trying to read a word *after* the end of the bitmap. Obviously the clipping etc values are supposed to result in those bits (generally a header for the next object in memory of course) getting ignored. It can be amusing if the code is subtly wrong and dodgy bits get into your Forms.<br>
<br>
tim<br></blockquote><div>Do we ever use the extra word that we read? I don't think so, we don't generate funny artefacts.</div><div>But we could try and test that now that we know how to trigger it (statistically).<br></div><div><br></div><div>I think that Eliot spent some time to debug and eliminate most overrun cases in 2018 (every BitBltSimulation is stamped eem 2018).</div><div>But it's a hell of a low level code mixing a bunch of states with a bunch of branches with a very imperative programming style...</div><div>I don't know if the code is provable by a machine, but for a human brain, it's far more above the average capabilities ;)</div><div>Maybe it's write only kind, even for Dan himself!<br></div><div><br></div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
--<br>
tim Rowledge; <a href="mailto:tim@rowledge.org" target="_blank">tim@rowledge.org</a>; <a href="http://www.rowledge.org/tim" rel="noreferrer" target="_blank">http://www.rowledge.org/tim</a><br>
Computer possessed? Try DEVICE=C:\EXOR.SYS<br>
<br>
<br>
</blockquote></div></div>