0248:fixme:ntdll:NtQueryInformationToken QueryInformationToken( ..., TokenAppContainerSid, ...) semi-stub
wine: Call from 00006FFFFF3FCF77 to unimplemented function ucrtbase.dll.crealf, aborting
wine: Unimplemented function ucrtbase.dll.crealf called at address 00006FFFFF3FCF77 (thread 0250), starting debugger...
0294:fixme:dbghelp:elf_search_auxv can't find symbol in module
0294:fixme:dbghelp:elf_search_auxv can't find symbol in module
wine: Call from 00006FFFFF3FCF77 to unimplemented function ucrtbase.dll.crealf, aborting
0248:fixme:kernelbase:AppPolicyGetProcessTerminationMethod FFFFFFFFFFFFFFFA, 00007FFFFE2EFEE0

/grid open self lock
JOIN RACE Y Y N
REMOVE SELF Y Y N
REMOVE OTHERS Y N N
MOVE PLAYERS Y N N
struct Cars {
UCID u8;
PLID u8;
Info u8; // Is Player; Is IA;
Sp0 u8; // Padding. Always 0;
Lap u16; // Current Lap; Used to index into Laps array.
Node u16; // Current Node; Used to index into Best and Laps array.
Last u32; // Current Timestamp; Used to show last update from car.
// Array of Nodes
Best[Node] = CarInfo;
Laps[Lap][Node] = CarInfo;
}
struct CarInfo {
Lap = u16; // 24 Hour Races could have more than 255 laps.
Node = u16; // Node ID
Time = u32; // Timestamp (Milliseconds, So / 1000 for seconds.)
// Location in map in LFS Meter Units.
LocX = u32;
LocY = u32;
LocZ = u32;
// Vector of their velocity in LFS Meters Units.
// 9.80665 m/s² = 952_863 = 1G; Z should equal this when sitting still on level ground.
// -49.03325 m/s² = -4_764_315 = -5G; X Formula Car Hard Breaking.
VelX = i32;
VelY = i32;
VelZ = i32;
// Heading Degrees from Center +90.00 = 9000; -180.00 = -18000
HeadX = i16; // -Left / +Right
HeadY = i16; // +Up / -Down
// Rotating Degrees from Center +90.00 = 9000; -180.00 = -18000
RotX = i16; // Roll: between -180 and 180 deg;
RotY = i16; // Pitch: between -90 and 90 deg;
RotZ = i16; // Yaw: between -180 and 180 deg;
}
IS_GPS {
Size = 12; // Bytes * 4;
Type = ISP_GPS;
SubT = u8;
ReqI = u8;
UCID = u8;
PLID = u8;
Info = u8; // Is AI, is Player;
Sp0 = u8; // Padding
Lap = u16; // 24 Hour Races could have more than 255 laps.
Node = u16; // Node ID
Time = u32; // Timestamp (Milliseconds, So / 1000 for seconds.)
Speed = u32; // Speed in m/s using LFS Meter Units.
// Location in map in LFS Meter Units.
LocX = u32;
LocY = u32;
LocZ = u32;
// Vector of their velocity in LFS Meters Units.
// 9.80665 m/s² = 952_863 = 1G; Z should equal this when sitting still on level ground.
// -49.03325 m/s² = -4_764_315 = -5G; X Formula Car Hard Breaking.
VelX = i32;
VelY = i32;
VelZ = i32;
// Heading Degrees from Center +90.00 = 9000; -180.00 = -18000
HeadX = i16; // -Left / +Right
HeadY = i16; // +Up / -Down
// Rotating Degrees from Center +90.00 = 9000; -180.00 = -18000
RotX = i16; // Roll: between -180 and 180 deg;
RotY = i16; // Pitch: between -90 and 90 deg;
RotZ = i16; // Yaw: between -180 and 180 deg;
}
CarInfo->Best[CarInfo->Node]->Time - CarInfo->Best[0]->TimeCarInfo->Best[CarInfo->Node]->Speed - CarInfo->Speed
if (OpenClipboard(NULL))
{
HANDLE data = GetClipboardData(CF_UNICODETEXT);
if (data)
{
wchar_t *ch = (wchar_t *) GlobalLock(data);
if (ch)
{
[ ... some code in here to read the characters into a buffer ... ]
GlobalUnlock(data);
[ ... some code in here to add the characters as if typed ... ]
}
}
CloseClipboard();
}