[Cuis-dev] Bitmap size mismatch

Vanessa Freudenberg vanessa at codefrau.net
Tue Oct 24 18:34:49 PDT 2023


Hi all,

I was trying to run Cuis on SqueakJS for fun. The spur images need some
prims that SqueakJS doesn't have yet, but the v3 image worked. Or almost
worked. The Transcript was showing tons of errors which made the system
unusable:

HybridCanvas(MorphicCanvas)>>drawWorld:repair:

BitBIt >> copyBits failed. Will retry with parameters rounded. Requested
parameters are:

#('dest, source, halftone, rule:' Form(1512x807×32) nil a Bitmap:1 of
length 1 0)

#('dest, extent, source, clipOrigin, clipExtent' 523 at 46 158 at 280 0 at 0 0 at 0
681 at 326)

#('colorMap' a Bitmap:4096 of length 4096)

#copyBitsAgain failed. Requested BitBIt operation not performed. Call stack
follows:

BitBitCanvasEngine(BitBIt)>>copyBitsAgain


Turned out the BitBlt failed because some bitmaps were 1 word longer than
width*height would require, and my (10 year old) version of BitBlt
complained about that, it expected an exact size match.

I implemented a workaround in my VM which warns about the mismatch but
doesn't fail the BitBlt primitive. It works now, try it here 🎉

    https://tinyurl.com/cuis6053

Cuis on a phone 😍 although not exactly usable there (you could set
highdpi to false in the URL but then the UI gets huge).

But my question is: Was the image wrong or the VM? I've never seen this
problem in Squeak images, old or new.

Vanessa

[image: IMG_0FC5A40A0908-1.jpeg]
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cuis.st/mailman/archives/cuis-dev/attachments/20231024/8ca8aa67/attachment-0001.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: IMG_0FC5A40A0908-1.jpeg
Type: image/jpeg
Size: 88802 bytes
Desc: not available
URL: <http://lists.cuis.st/mailman/archives/cuis-dev/attachments/20231024/8ca8aa67/attachment-0001.jpeg>


More information about the Cuis-dev mailing list