57 lines
1004 B
HolyC
57 lines
1004 B
HolyC
|
class Person
|
||
|
{
|
||
|
U8 first [32];
|
||
|
U8 last [32];
|
||
|
U8 address1 [64];
|
||
|
U8 address2 [64];
|
||
|
U8 city [32];
|
||
|
U8 state_zip[32];
|
||
|
};
|
||
|
|
||
|
U0 OffsetDemo1()
|
||
|
{
|
||
|
Person *p=MAlloc(sizeof(Person));
|
||
|
StrCpy(p->first, "Terry");
|
||
|
StrCpy(p->last, "Davis");
|
||
|
StrCpy(p->address1, "8144 Sickle Lane");
|
||
|
StrCpy(p->address2, "");
|
||
|
StrCpy(p->city, "Las Vegas");
|
||
|
StrCpy(p->state_zip,"NV 89128");
|
||
|
}
|
||
|
|
||
|
U(&OffsetDemo1,34);
|
||
|
PressAKey;
|
||
|
|
||
|
/*
|
||
|
|
||
|
x86 has signed 8-bit displacements
|
||
|
and signed 32-bit displacements.
|
||
|
|
||
|
This example uses 8-bit negative displacements.
|
||
|
|
||
|
*/
|
||
|
|
||
|
class Person
|
||
|
{ $$=-128;
|
||
|
U8 first [32];
|
||
|
U8 last [32];
|
||
|
U8 address1 [64];
|
||
|
U8 address2 [64];
|
||
|
U8 city [32];
|
||
|
U8 state_zip[32];
|
||
|
};
|
||
|
|
||
|
U0 OffsetDemo2()
|
||
|
{
|
||
|
Person *p=MAlloc(sizeof(Person))(I64)+128;
|
||
|
StrCpy(p->first, "Terry");
|
||
|
StrCpy(p->last, "Davis");
|
||
|
StrCpy(p->address1, "8144 Sickle Lane");
|
||
|
StrCpy(p->address2, "");
|
||
|
StrCpy(p->city, "Las Vegas");
|
||
|
StrCpy(p->state_zip,"NV 89128");
|
||
|
}
|
||
|
|
||
|
U(&OffsetDemo2,34);
|
||
|
PressAKey;
|