[Vm-dev] VM Maker: VMMaker.oscog-tpr.996.mcz

commits at source.squeak.org commits at source.squeak.org
Sat Dec 20 01:39:47 UTC 2014


tim Rowledge uploaded a new version of VMMaker to project VM Maker:
http://source.squeak.org/VMMaker/VMMaker.oscog-tpr.996.mcz

==================== Summary ====================

Name: VMMaker.oscog-tpr.996
Author: tpr
Time: 19 December 2014, 5:37:21.507 pm
UUID: 7fe1e44f-8163-41e0-a7f7-4e4264c8790b
Ancestors: VMMaker.oscog-cb.995

Change the pixel-touch-pixel prim to allow LPI arguments for the color values

=============== Diff against VMMaker.oscog-cb.995 ===============

Item was changed:
  ----- Method: BitBltSimulation>>primitiveCompareColorA:to:test: (in category 'primitives') -----
  primitiveCompareColorA: colorA to: colorB test: testID 
  	"Invoke the pixel color comparing primitive.Only applicable if compiling
  	with ENABLE_FAST_BLT"
  	| rcvr val |
  	<export: true>
  	rcvr := self
  				primitive: 'primitiveCompareColors'
+ 				parameters: #(#Unsigned #Unsigned #SmallInteger )
- 				parameters: #(#SmallInteger #SmallInteger #SmallInteger )
  				receiver: #Oop.
  	self
  		cppIf: #'ENABLE_FAST_BLT'
  		ifTrue: [(self loadBitBltFrom: rcvr)
  					ifFalse: [^ interpreterProxy primitiveFail].
  			self clipRange.
  			(bbW <= 0 or: [bbH <= 0])
  				ifTrue: ["zero width or height; noop"
  					^ interpreterProxy primitiveFail].
  			self cCode: '
  	compare_operation_t op;
  	op.matchRule = testID & 3;
  	op.tally = testID & (1u<<3);
  	op.srcA.bits = (void *) sourceBits;
  	op.srcA.pitch = sourcePitch;
  	op.srcA.depth = sourceDepth;
  	op.srcA.msb = sourceMSB;
  	op.srcA.x = sx;
  	op.srcA.y = sy;
  	op.srcB.bits = (void *) destBits;
  	op.srcB.pitch = destPitch;
  	op.srcB.depth = destDepth;
  	op.srcB.msb = destMSB;
  	op.srcB.x = dx;
  	op.srcB.y = dy;
  	op.width = bbW;
  	op.height = bbH;
  	op.colorA = colorA;
  	op.colorB = colorB;
  
  	val = compareColorsDispatch(&op);'.
  	^val asPositiveIntegerObj]
  		ifFalse: [interpreterProxy primitiveFail]!



More information about the Vm-dev mailing list