AROS: 64bit fixes, synchronized to official ABIv11 includes

This commit is contained in:
Marcus Sackrow 2022-03-19 13:16:50 +01:00
parent 6421f2c36b
commit f1cf83bd8a
9 changed files with 151 additions and 34 deletions

View File

@ -764,7 +764,7 @@ type
xln_Name: PChar;
xln_Subsystem: Byte; // see below
xln_Subtype: Byte; // SS_GRAPHICS
xln_Library : Longint;
xln_Library : APTR;
xln_Init : Pointer;
end;

View File

@ -624,17 +624,21 @@ type
PFileHandle = ^TFileHandle;
TFileHandle = record
fh_Flags: ULONG; { EXEC message }
{$ifdef CPU64}
fh_Port: ULONG; { Reply port for the packet }
{$else}
fh_Port: PMsgPort; { Reply port for the packet }
{$endif}
fh_Type: PMsgPort; { Port to do PutMsg() to Address is negative if a plain file }
fh_Buf: BPTR;
fh_Pos: LongInt;
fh_End: LongInt;
fh_Func1: LongInt;
fh_Func2: LongInt;
fh_Func3: LongInt;
fh_Arg1: LongInt;
fh_Func1: PtrInt;
fh_Func2: PtrInt;
fh_Func3: PtrInt;
fh_Arg1: PtrInt;
fh_Arg2: APTR;
fh_Size: ULONG; // Size of buffered io buffer
fh_Buf2: BPTR; // Always the same as fh_Buf
@ -649,27 +653,27 @@ type
case SmallInt of
0 : (
dp_Action : LongInt;
dp_Status : LongInt;
dp_Status2 : LongInt;
dp_BufAddr : LongInt;
dp_Status : PtrInt;
dp_Status2 : PtrInt;
dp_BufAddr : PtrInt;
);
1 : (
dp_Type : LongInt; { See ACTION_... below and
* 'R' means Read, 'W' means Write to the
* file system }
dp_Res1 : LongInt; { For file system calls this is the result
dp_Res1 : PtrInt; { For file system calls this is the result
* that would have been returned by the
* function, e.g. Write ('W') returns actual
* length written }
dp_Res2 : LongInt; { For file system calls this is what would
dp_Res2 : PtrInt; { For file system calls this is what would
* have been returned by IoErr() }
dp_Arg1 : LongInt;
dp_Arg2 : LongInt;
dp_Arg3 : LongInt;
dp_Arg4 : LongInt;
dp_Arg5 : LongInt;
dp_Arg6 : LongInt;
dp_Arg7 : LongInt;
dp_Arg1 : PtrInt;
dp_Arg2 : PtrInt;
dp_Arg3 : PtrInt;
dp_Arg4 : PtrInt;
dp_Arg5 : PtrInt;
dp_Arg6 : PtrInt;
dp_Arg7 : PtrInt;
);
end;
@ -1071,7 +1075,7 @@ type
de_BufMemType: IPTR; // type of mem to allocate for buffers
de_MaxTransfer: IPTR; // Max number of bytes to transfer at a time
de_Mask: IPTR; // Address Mask to block out certain memory
de_BootPri: LongInt; // Boot priority for autoboot
de_BootPri: PtrInt; // Boot priority for autoboot
de_DosType: IPTR; // ASCII (HEX) string showing filesystem type
de_Baud: IPTR; // Baud rate for serial handler
de_Control: IPTR; // Control SmallInt for handler/filesystem
@ -1175,7 +1179,7 @@ type
nr_pad: array[0..2] of Byte; // PRIVATE
end );
end;
nr_Reserved: array[0..3] of LongWord; // PRIVATE! Set to 0 for now.
nr_Reserved: array[0..3] of PtrUInt; // PRIVATE! Set to 0 for now.
nr_MsgCount: LongWord; // Number of unreplied messages.
nr_Handler: PMsgPort; // Filesystem task/device. Used by EndNotify()
end;
@ -1187,7 +1191,7 @@ type
nm_Code: Word; // Code: NOTIFY_CODE
nm_NReq: PNotifyRequest; // The notify structure that was passed to StartNotify(). Read-Only
nm_DoNotTouch, // like it says! For use by handlers
nm_DoNotTouch2 : LongWord; // dito
nm_DoNotTouch2 : PtrUInt; // dito
end;
@ -1499,9 +1503,9 @@ type
dl_Root: PRootNode; // Pointer to RootNode, described below }
dl_GV: APTR; // Pointer to BCPL global vector }
dl_A2: LongInt; // Private register dump of DOS }
dl_A5: LongInt;
dl_A6: LongInt;
dl_A2: PtrInt; // Private register dump of DOS }
dl_A5: PtrInt;
dl_A6: PtrInt;
dl_Errors: PErrorString; // pointer to array of error msgs
dl_TimeReq: PTimeRequest; // private pointer to timer request

View File

@ -373,6 +373,9 @@ type
dtf_ContentsInfo: PFrameInfo;
dtf_FrameInfo: PFrameInfo; // Input
dtf_SizeFrameInfo: LongWord; // Output
{$ifdef CPU64}
pad: LongWord;
{$endif}
dtf_FrameFlags: LongWord;
end;
@ -440,11 +443,29 @@ type
MethodID: PtrUInt;
dtd_RPort: PRastPort;
dtd_Left: LongInt;
{$ifdef CPU64}
pad1: LongWord;
{$endif}
dtd_Top: LongInt;
{$ifdef CPU64}
pad2: LongWord;
{$endif}
dtd_Width: LongInt;
{$ifdef CPU64}
pad3: LongWord;
{$endif}
dtd_Height: LongInt;
{$ifdef CPU64}
pad4: LongWord;
{$endif}
dtd_TopHoriz: LongInt;
{$ifdef CPU64}
pad5: LongWord;
{$endif}
dtd_TopVert: LongInt;
{$ifdef CPU64}
pad6: LongWord;
{$endif}
dtd_AttrList: PTagItem; // Additional attributes
end;
@ -777,12 +798,13 @@ const
ID_DLTA = Ord('D') shl 24 + Ord('L') shl 16 + Ord('T') shl 8 + Ord('A'); // DLTA
type
{$ALIGN 2}
PAnimHeader = ^TAnimHeader;
TAnimHeader = record
ah_Operation: Byte;
ah_Mask: Byte;
ah_Width: Word;
ah_Height: Word;
ah_Height: Word;
ah_Left: SmallInt;
ah_Top: SmallInt;
ah_AbsTime: LongWord;
@ -811,13 +833,28 @@ type
TadtFrame = record
MethodID: PtrUInt;
alf_TimeStamp: LongWord;
{$ifdef CPU64}
pad1: LongWord;
{$endif}
alf_Frame: LongWord;
{$ifdef CPU64}
pad2: LongWord;
{$endif}
alf_Duration: LongWord;
{$ifdef CPU64}
pad3: LongWord;
{$endif}
alf_BitMap: PBitMap;
alf_CMap: PColorMap;
alf_Sample: PShortInt;
alf_SampleLength: LongWord;
{$ifdef CPU64}
pad4: LongWord;
{$endif}
alf_Period: LongWord;
{$ifdef CPU64}
pad5: LongWord;
{$endif}
alf_UserData: APTR;
end;
@ -843,6 +880,9 @@ type
TadtStart = record
MethodID: PtrUInt;
asa_Frame: LongWord;
{$ifdef CPU64}
pad1: LongWord;
{$endif}
end;
function SDTM_ISSTEREO(SampleType: LongWord): Boolean; inline;

View File

@ -62,7 +62,7 @@ type
dfh_DF: TNode;
dfh_FileID: Word;
dfh_Revision: Word;
dfh_Segment: Longint;
dfh_Segment: BPTR;
dfh_Name: array [0..MAXFONTNAME-1] of Char;
dfh_TF: TTextFont;
end;

View File

@ -1084,16 +1084,19 @@ type
ex_EClockFrequency, // (readable)
ex_CacheControl, // Private to CacheControl calls
ex_TaskID: ULONG; // Next available task ID
ex_Reserved1: array[0..4] of ULONG;
ex_Reserved1: array[0..4] of IPTR;
ex_MMULock: Pointer; // private
ex_Reserved2: array[0..1] of ULONG;
ex_Reserved2: array[0..1] of IPTR;
ex_DebugFlags: ULONG;
{ The following list and data element are used
exec's low memory handler...}
ex_MemHandlers : tMinList; // The handler list
ex_MemHandlers : TMinList; // The handler list
ex_MemHandler : Pointer; // Private! handler pointer
//***** Additional AROS fields **********************************
DebugArosBase : PArosSupportBase;
{$ifdef CPU64}
lb_TaskResBase: PLibrary;
{$endif}
end;
{ ***** Bit defines for AttnFlags (see above) ***************************** }

View File

@ -31,7 +31,7 @@ const
Type
PIFFHandle = ^TIFFHandle;
TIFFHandle = record
iff_Stream,
iff_Stream : PtrUInt;
iff_Flags : LongWord;
iff_Depth : LongInt; { Depth of context stack. }
{ There are private fields hiding here. }

View File

@ -1159,7 +1159,14 @@ type
dri_CheckMark: PImage; // pointer to scaled checkmark image Will be nil if DRI_VERSION < 2
dri_AmigaKey: PImage; // pointer to scaled Amiga-key image Will be NULL if DRI_VERSION < 2
dri_Reserved: array[0..4] of LongWord; // avoid recompilation ;^)
{$ifdef AROS_ABIv1}
dri_Screen: PScreen;
dri_Prefs: APTR;
dri_Reserved: array[0..2] of IPTR; // avoid recompilation ;^)
{$else}
dri_Reserved: array[0..4] of IPTR; // avoid recompilation ;^)
{$endif}
end;
const

View File

@ -151,7 +151,7 @@ const
// Black box specification structures for images, pens, frames
type
TMUI_PenSpec = record
ps_buf: array[0..31] of char;
buf: array[0..31] of char;
end;
PMUI_PenSpec = ^TMUI_PenSpec;
@ -1697,7 +1697,55 @@ type
mad_Flags: LongWord; // see definitions below
mad_Flags2: LongWord;
// 40 bytes up to here
// The following data is private
// offset 40
mad_HorizWeight: Word; // weight values for layout. default 100
mad_VertWeight: Word;
// offset 44
// ?
// offset 48
mad_IDCMP: LongWord; // IDCMP flags this listens to (for HandleInput)
// offset 52
mad_BackgroundSpec: STRPTR;
// offset 56
mad_FontPreset: IPTR; // MUIV_Font_xxx or pointer to struct TextFont
// offset 76
mad_FrameTitle: STRPTR; // for groups. Req. mad_Frame > 0
// Inner values at offset 88 in MUI:
mad_InnerLeft: ShortInt; //* frame or hardcoded
mad_InnerTop: ShortInt;
mad_InnerRight: ShortInt;
mad_InnerBottom: ShortInt;
// offset 94
mad_FrameOBSOLETE: ShortInt; //* frame setting -- private
// offset 95
mad_InputMode: ShortInt; // how to react to events
// offset 96
mad_ControlChar: Char; // key shortcut
mad_TitleHeightAdd: ShortInt; // frame title height = mad_TitleBelow + mad_TitleBaseline
mad_TitleHeightBelow: ShortInt; // height below frame
mad_TitleHeightAbove: ShortInt; // height above frame
// 100
// ?
mad_Frame: IPTR;
mad_HardHeight: SmallInt; // if harcoded dim (see flags)
mad_HardWidth: SmallInt; // if harcoded dim (see flags)
mad_HardWidthTxt: STRPTR;
mad_HardHeightTxt: STRPTR;
// TODO: move SelBack in RenderInfo as it's common for all objects
mad_SelBack: APTR; //* selected state background
mad_ShortHelp: STRPTR; // bubble help
// there's an event handler at 114
mad_ehn: TMUI_EventHandlerNode;
mad_Timer: TMUI_InputHandlerNode; // MUIA_Timer
mad_Timeval: LongWord; // just to trigger notifications
mad_ccn: TMUI_EventHandlerNode; // gross hack for control char
mad_ContextMenu: APTR; // menu strip
mad_ClickX: LongInt; // x position of the initial SELECTDOWN click
mad_ClickY: LongInt; // y position of the intiial SELECTDOWN click
mad_ContextZMenu: APTR;
mad_hiehn: TMUI_EventHandlerNode; // Eventhandler to simulate MUIM_HandleInput
mad_DisableCount: LongInt; // counts number of disables
end;
PMUI_AreaData = ^TMUI_AreaData;
@ -1822,11 +1870,26 @@ type
lm_Type: PtrUInt; // type of message (see defines below)
lm_Children: PMinList; // list of this groups children, traverse with NextObject()
lm_MinMax: TMUI_MinMax; // results for MUILM_MINMAX
{$ifdef CPU64}
pad1: LongWord;
{$endif}
lm_Layout: record // size (and result) for MUILM_LAYOUT
Width: PtrInt;
Width: LongInt;
{$ifdef CPU64}
pad2: LongWord;
{$endif}
Height: LongInt;
{$ifdef CPU64}
pad3: LongWord;
{$endif}
priv5: LongWord;
{$ifdef CPU64}
pad4: LongWord;
{$endif}
priv6: LongWord;
{$ifdef CPU64}
pad5: LongWord;
{$endif}
end;
end;
PMUI_LayoutMsg = ^TMUI_LayoutMsg;

View File

@ -219,7 +219,7 @@ type
TAppWindowDropZoneMsg = record
adzm_RastPort: PRastPort; // RastPort to render into.
adzm_DropZoneBox: TIBox; // Limit your rendering to this area.
adzm_ID: LongWord; // \ These come from straight
adzm_ID: IPTR; // \ These come from straight
adzm_UserData: IPTR; // / from AddAppWindowDropZoneA().
adzm_Action: LongInt; // See below for a list of actions.
end;