[fpc-devel] Patch, font rendering on Arm-Linux devices.

Luiz Americo Pereira Camara pascalive at bol.com.br
Sat Mar 1 01:53:04 CET 2008


Vinzent Hoefler wrote:
> Are enumeration types 1 or 4 bytes in Delphi? If they are one byte, it 
> looks quite different (and I'm not sure about all the types used here, 
> some seem to be sets, some enumerations). But at the first glance it 
> seems, they used both packed records to either ensure minimum size or 
> known record layout (maybe they even used the structure in some 
> assembly module?), and also aligned them manually to avoid unaligned 
> access issues.
>
>   

Yes. VirtualTreeView/Delphi uses asm instructions

The size of sets are different from delphi to fpc making the record 
structure different.

This is the record structure (size and offsets) in both compilers:

fpc:

Index Size: 4 Offset: 0
ChildCount Size: 4 Offset: 4
NodeHeight Size: 2 Offset: 8
States Size: 4 Offset: 10
Align Size: 1 Offset: 14
CheckState Size: 1 Offset: 15
CheckType Size: 1 Offset: 16
Dummy Size: 1 Offset: 17

Delphi:

Index Size: 4 Offset: 0
ChildCount Size: 4 Offset: 4
NodeHeight Size: 2 Offset: 8
States Size: 2 Offset: 10
Align Size: 1 Offset: 12
CheckState Size: 1 Offset: 13
CheckType Size: 1 Offset: 14
Dummy Size: 1 Offset: 15

Luiz



More information about the fpc-devel mailing list