BitBltSimulation broken ?

Karl karl.ramberg at chello.se
Thu Dec 14 16:29:42 UTC 2006


This workspace example does not work as the simulator chokes.

s _ Form fromFileNamed:'image.png'.
half _ Form extent: 1 at 1 depth: 32 bits: 0 .
(BitBlt
        destForm: Display
        sourceForm: s
        halftoneForm:  half
        combinationRule: Form paint
        destOrigin: 0 @ 0
        sourceOrigin: 0 @ 0
        extent: s extent
        clipRect: Display computeBoundingBox)copyBitsSimulated

Karl

Here is the stack:



BitBltSimulator(Object)>>doesNotUnderstand: #oopForPointer:
    Receiver: a BitBltSimulator
    Arguments and temporary variables:
        aMessage:     oopForPointer: a CArrayAccessor on: a Bitmap of 
length 610644
    Receiver's instance variables:
        interpreterProxy:     an InterpreterProxy
        moduleName:     nil
        destForm:     DisplayScreen(1347x906x16)
        sourceForm:     Form(50x50x32)
        halftoneForm:     Form(1x1x32)
        combinationRule:     25
        destX:     nil
        destY:     nil
        width:     nil
        height:     nil
        sourceX:     nil
        sourceY:     nil
        clipX:     nil
        clipY:     nil
        clipWidth:     nil
        clipHeight:     nil
        sourceWidth:     nil
        sourceHeight:     nil
        sourceDepth:     nil
        sourcePitch:     nil
        sourceBits:     nil
        sourcePPW:     nil
        sourceMSB:     nil
        destWidth:     1347
        destHeight:     906
        destDepth:     16
        destPitch:     2696
        destBits:     a Bitmap of length 610644
        destPPW:     2
        destMSB:     true
        bitCount:     nil
        skew:     nil
        mask1:     nil
        mask2:     nil
        preload:     nil
        nWords:     nil
        destMask:     nil
        hDir:     nil
        vDir:     nil
        sourceIndex:     nil
        sourceDelta:     nil
        destIndex:     nil
        destDelta:     nil
        sx:     nil
        sy:     nil
        dx:     nil
        dy:     nil
        bbW:     nil
        bbH:     nil
        halftoneHeight:     nil
        noSource:     false
        noHalftone:     false
        halftoneBase:     nil
        sourceAlpha:     nil
        srcBitShift:     nil
        dstBitShift:     nil
        bitBltOop:     a BitBlt
        affectedL:     nil
        affectedR:     nil
        affectedT:     nil
        affectedB:     nil
        opTable:     #(#clearWord:with: #bitAnd:with: 
#bitAndInvert:with: #sourceWord:with:...etc...
        maskTable:     #(1 3 nil 15 31 nil nil 255 nil nil nil nil nil 
nil nil 65535 nil ni...etc...
        ditherMatrix4x4:     a CArrayAccessor on: #(0 8 2 10 12 4 14 6 3 
11 1 9 15 7 13 5)
        ditherThresholds16:     a CArrayAccessor on: #(0 2 4 6 8 10 12 
14 16)
        ditherValues16:     a CArrayAccessor on: #(0 0 1 2 3 4 5 6 7 8 9 
10 11 12 13 14 15 ...etc...
        hasSurfaceLock:     nil
        warpSrcShift:     nil
        warpSrcMask:     nil
        warpAlignShift:     nil
        warpAlignMask:     nil
        warpBitShiftTable:     a CArrayAccessor on: #(nil nil nil nil 
nil nil nil nil nil n...etc...
        querySurfaceFn:     nil
        lockSurfaceFn:     nil
        unlockSurfaceFn:     nil
        isWarping:     false
        cmFlags:     nil
        cmMask:     nil
        cmShiftTable:     nil
        cmMaskTable:     nil
        cmLookupTable:     nil
        cmBitsPerColor:     nil
        dither8Lookup:     a CArrayAccessor on: #(0 1 1 1 1 1 1 1 0 1 1 
1 1 1 1 1 1 2 2 2 2...etc...

BitBltSimulator(BitBltSimulation)>>loadBitBltDestForm
    Receiver: a BitBltSimulator
    Arguments and temporary variables:
        destBitsSize:     2442576
    Receiver's instance variables:
        interpreterProxy:     an InterpreterProxy
        moduleName:     nil
        destForm:     DisplayScreen(1347x906x16)
        sourceForm:     Form(50x50x32)
        halftoneForm:     Form(1x1x32)
        combinationRule:     25
        destX:     nil
        destY:     nil
        width:     nil
        height:     nil
        sourceX:     nil
        sourceY:     nil
        clipX:     nil
        clipY:     nil
        clipWidth:     nil
        clipHeight:     nil
        sourceWidth:     nil
        sourceHeight:     nil
        sourceDepth:     nil
        sourcePitch:     nil
        sourceBits:     nil
        sourcePPW:     nil
        sourceMSB:     nil
        destWidth:     1347
        destHeight:     906
        destDepth:     16
        destPitch:     2696
        destBits:     a Bitmap of length 610644
        destPPW:     2
        destMSB:     true
        bitCount:     nil
        skew:     nil
        mask1:     nil
        mask2:     nil
        preload:     nil
        nWords:     nil
        destMask:     nil
        hDir:     nil
        vDir:     nil
        sourceIndex:     nil
        sourceDelta:     nil
        destIndex:     nil
        destDelta:     nil
        sx:     nil
        sy:     nil
        dx:     nil
        dy:     nil
        bbW:     nil
        bbH:     nil
        halftoneHeight:     nil
        noSource:     false
        noHalftone:     false
        halftoneBase:     nil
        sourceAlpha:     nil
        srcBitShift:     nil
        dstBitShift:     nil
        bitBltOop:     a BitBlt
        affectedL:     nil
        affectedR:     nil
        affectedT:     nil
        affectedB:     nil
        opTable:     #(#clearWord:with: #bitAnd:with: 
#bitAndInvert:with: #sourceWord:with:...etc...
        maskTable:     #(1 3 nil 15 31 nil nil 255 nil nil nil nil nil 
nil nil 65535 nil ni...etc...
        ditherMatrix4x4:     a CArrayAccessor on: #(0 8 2 10 12 4 14 6 3 
11 1 9 15 7 13 5)
        ditherThresholds16:     a CArrayAccessor on: #(0 2 4 6 8 10 12 
14 16)
        ditherValues16:     a CArrayAccessor on: #(0 0 1 2 3 4 5 6 7 8 9 
10 11 12 13 14 15 ...etc...
        hasSurfaceLock:     nil
        warpSrcShift:     nil
        warpSrcMask:     nil
        warpAlignShift:     nil
        warpAlignMask:     nil
        warpBitShiftTable:     a CArrayAccessor on: #(nil nil nil nil 
nil nil nil nil nil n...etc...
        querySurfaceFn:     nil
        lockSurfaceFn:     nil
        unlockSurfaceFn:     nil
        isWarping:     false
        cmFlags:     nil
        cmMask:     nil
        cmShiftTable:     nil
        cmMaskTable:     nil
        cmLookupTable:     nil
        cmBitsPerColor:     nil
        dither8Lookup:     a CArrayAccessor on: #(0 1 1 1 1 1 1 1 0 1 1 
1 1 1 1 1 1 2 2 2 2...etc...

BitBltSimulator(BitBltSimulation)>>loadBitBltFrom:warping:
    Receiver: a BitBltSimulator
    Arguments and temporary variables:
        bbObj:     a BitBlt
        aBool:     false
        ok:     nil
    Receiver's instance variables:
        interpreterProxy:     an InterpreterProxy
        moduleName:     nil
        destForm:     DisplayScreen(1347x906x16)
        sourceForm:     Form(50x50x32)
        halftoneForm:     Form(1x1x32)
        combinationRule:     25
        destX:     nil
        destY:     nil
        width:     nil
        height:     nil
        sourceX:     nil
        sourceY:     nil
        clipX:     nil
        clipY:     nil
        clipWidth:     nil
        clipHeight:     nil
        sourceWidth:     nil
        sourceHeight:     nil
        sourceDepth:     nil
        sourcePitch:     nil
        sourceBits:     nil
        sourcePPW:     nil
        sourceMSB:     nil
        destWidth:     1347
        destHeight:     906
        destDepth:     16
        destPitch:     2696
        destBits:     a Bitmap of length 610644
        destPPW:     2
        destMSB:     true
        bitCount:     nil
        skew:     nil
        mask1:     nil
        mask2:     nil
        preload:     nil
        nWords:     nil
        destMask:     nil
        hDir:     nil
        vDir:     nil
        sourceIndex:     nil
        sourceDelta:     nil
        destIndex:     nil
        destDelta:     nil
        sx:     nil
        sy:     nil
        dx:     nil
        dy:     nil
        bbW:     nil
        bbH:     nil
        halftoneHeight:     nil
        noSource:     false
        noHalftone:     false
        halftoneBase:     nil
        sourceAlpha:     nil
        srcBitShift:     nil
        dstBitShift:     nil
        bitBltOop:     a BitBlt
        affectedL:     nil
        affectedR:     nil
        affectedT:     nil
        affectedB:     nil
        opTable:     #(#clearWord:with: #bitAnd:with: 
#bitAndInvert:with: #sourceWord:with:...etc...
        maskTable:     #(1 3 nil 15 31 nil nil 255 nil nil nil nil nil 
nil nil 65535 nil ni...etc...
        ditherMatrix4x4:     a CArrayAccessor on: #(0 8 2 10 12 4 14 6 3 
11 1 9 15 7 13 5)
        ditherThresholds16:     a CArrayAccessor on: #(0 2 4 6 8 10 12 
14 16)
        ditherValues16:     a CArrayAccessor on: #(0 0 1 2 3 4 5 6 7 8 9 
10 11 12 13 14 15 ...etc...
        hasSurfaceLock:     nil
        warpSrcShift:     nil
        warpSrcMask:     nil
        warpAlignShift:     nil
        warpAlignMask:     nil
        warpBitShiftTable:     a CArrayAccessor on: #(nil nil nil nil 
nil nil nil nil nil n...etc...
        querySurfaceFn:     nil
        lockSurfaceFn:     nil
        unlockSurfaceFn:     nil
        isWarping:     false
        cmFlags:     nil
        cmMask:     nil
        cmShiftTable:     nil
        cmMaskTable:     nil
        cmLookupTable:     nil
        cmBitsPerColor:     nil
        dither8Lookup:     a CArrayAccessor on: #(0 1 1 1 1 1 1 1 0 1 1 
1 1 1 1 1 1 2 2 2 2...etc...

BitBltSimulator(BitBltSimulation)>>loadBitBltFrom:
    Receiver: a BitBltSimulator
    Arguments and temporary variables:
        bbObj:     a BitBlt
    Receiver's instance variables:
        interpreterProxy:     an InterpreterProxy
        moduleName:     nil
        destForm:     DisplayScreen(1347x906x16)
        sourceForm:     Form(50x50x32)
        halftoneForm:     Form(1x1x32)
        combinationRule:     25
        destX:     nil
        destY:     nil
        width:     nil
        height:     nil
        sourceX:     nil
        sourceY:     nil
        clipX:     nil
        clipY:     nil
        clipWidth:     nil
        clipHeight:     nil
        sourceWidth:     nil
        sourceHeight:     nil
        sourceDepth:     nil
        sourcePitch:     nil
        sourceBits:     nil
        sourcePPW:     nil
        sourceMSB:     nil
        destWidth:     1347
        destHeight:     906
        destDepth:     16
        destPitch:     2696
        destBits:     a Bitmap of length 610644
        destPPW:     2
        destMSB:     true
        bitCount:     nil
        skew:     nil
        mask1:     nil
        mask2:     nil
        preload:     nil
        nWords:     nil
        destMask:     nil
        hDir:     nil
        vDir:     nil
        sourceIndex:     nil
        sourceDelta:     nil
        destIndex:     nil
        destDelta:     nil
        sx:     nil
        sy:     nil
        dx:     nil
        dy:     nil
        bbW:     nil
        bbH:     nil
        halftoneHeight:     nil
        noSource:     false
        noHalftone:     false
        halftoneBase:     nil
        sourceAlpha:     nil
        srcBitShift:     nil
        dstBitShift:     nil
        bitBltOop:     a BitBlt
        affectedL:     nil
        affectedR:     nil
        affectedT:     nil
        affectedB:     nil
        opTable:     #(#clearWord:with: #bitAnd:with: 
#bitAndInvert:with: #sourceWord:with:...etc...
        maskTable:     #(1 3 nil 15 31 nil nil 255 nil nil nil nil nil 
nil nil 65535 nil ni...etc...
        ditherMatrix4x4:     a CArrayAccessor on: #(0 8 2 10 12 4 14 6 3 
11 1 9 15 7 13 5)
        ditherThresholds16:     a CArrayAccessor on: #(0 2 4 6 8 10 12 
14 16)
        ditherValues16:     a CArrayAccessor on: #(0 0 1 2 3 4 5 6 7 8 9 
10 11 12 13 14 15 ...etc...
        hasSurfaceLock:     nil
        warpSrcShift:     nil
        warpSrcMask:     nil
        warpAlignShift:     nil
        warpAlignMask:     nil
        warpBitShiftTable:     a CArrayAccessor on: #(nil nil nil nil 
nil nil nil nil nil n...etc...
        querySurfaceFn:     nil
        lockSurfaceFn:     nil
        unlockSurfaceFn:     nil
        isWarping:     false
        cmFlags:     nil
        cmMask:     nil
        cmShiftTable:     nil
        cmMaskTable:     nil
        cmLookupTable:     nil
        cmBitsPerColor:     nil
        dither8Lookup:     a CArrayAccessor on: #(0 1 1 1 1 1 1 1 0 1 1 
1 1 1 1 1 1 2 2 2 2...etc...


--- The full stack ---
BitBltSimulator(Object)>>doesNotUnderstand: #oopForPointer:
...etc...





More information about the Squeak-dev mailing list