[Vm-dev] simulation in BitBltSimulation

tim Rowledge tim at rowledge.org
Sat Mar 15 01:44:59 UTC 2014


On 14-03-2014, at 6:16 PM, Eliot Miranda <eliot.miranda at gmail.com> wrote:

> Hi Tim,
> 
>     I'm simulating bitblt code and have a situation where
> 
> (cmShiftTable at: 0) = 4294967280
> (cmShiftTable at: 0) hex '16rFFFFFFF0'
> 
> Clearly this should be -4.
> 
> This breaks simulation because
>         (sourcePixel bitAnd: (cmMaskTable at: 0)) bitShift: (cmShiftTable at: 0)
> is trying to make a 4Gb LargePositiveInteger ;-).
> 
> How can we make it so?

Hmm, well if you need to make a 4Gb LPI I guess you’d best have plenty of memory?

Dunno; looks like cmShiftTable is supposed to use int32_t thingies in the C code.
BitBltSimulation>loadColorMapShiftOrMaskFrom: looks like the culprit to me though -  (simulated)firstIndexableField: might be not doing the right thing? 

tim
--
tim Rowledge; tim at rowledge.org; http://www.rowledge.org/tim
Useful random insult:- Always loses battles of wits because he's unarmed.




More information about the Vm-dev mailing list