[futurebasic] Re: [FB] strange results from CGBitmapContextCreate [was malloc size question]

Message: < previous - next > : Reply : Subscribe : Cleanse
Home   : December 2007 : Group Archive : Group : All Groups

From: Joe Lertola <joefb@...>
Date: Thu, 20 Dec 2007 11:41:03 -0500
On Dec 20, 2007, at 11:07 AM, Brian Stevens wrote:

>
> On Dec 19, 2007, at 9:07 PM, Joe Lertola wrote:
>
>> adr.4! = value
>> 'blockmove @value, adr, 4   <==========moves from offset zero of  
>> value to offset zero of adr
>
>
> RP wrote:
> adr.4! = value // faster than: BlockMoveData( @value, adr + 4, 4 )    
> <===== moves from offset zero of value to offset 4 of adr -----very  
> different
>
>
> Joe,
>
> Your blockmove moves 4 bytes of data starting at offset zero of  
> value and targets offset zero of adr
>
> RP's BlockMoveData example moves 4 bytes into offset 4 of adr. Both  
> the BlockMoveData and pointer dereference (adr.4!) do the same  
> thing, but the key here is to move the data to the correct location.  
> I haven't looked at any of the examples in depth that you and RP  
> have posted, but I noticed this difference. Try to use the  
> dereference, it is MUCH quicker in this case. If you want offset  
> zero then adr.0! = value is the code.
>
> BTW: when you get a full working demo, please post. thanks....
>
> Brian S.


Oh. I was mistakenly thinking that the ".4" had the meaning of move 4  
bytes to location adr. Now I get that it means move  
sizeof(singleSizeVariable) to location adr + 4.
Thanks,
-Joe