Browse Source

Amiga, MorphOS: Fixed various inconsistencies of the three Amiga-style platforms

git-svn-id: trunk@33225 -
marcus 9 years ago
parent
commit
ebc5a637fa

+ 4 - 4
packages/amunits/src/coreunits/agraphics.pas

@@ -2259,7 +2259,7 @@ FUNCTION BestModeIDA(const tags : pTagItem location 'a0') : ULONG; syscall GfxBa
 PROCEDURE BitMapScale(bitScaleArgs : pBitScaleArgs location 'a0'); syscall GfxBase 678;
 PROCEDURE BitMapScale(bitScaleArgs : pBitScaleArgs location 'a0'); syscall GfxBase 678;
 FUNCTION BltBitMap(const srcBitMap : pBitMap location 'a0'; xSrc : LONGINT location 'd0'; ySrc : LONGINT location 'd1'; destBitMap : pBitMap location 'a1'; xDest : LONGINT location 'd2'; yDest : LONGINT location 'd3'; xSize : LONGINT location 'd4'; ySize : LONGINT location 'd5'; minterm : ULONG location 'd6'; mask : ULONG location 'd7'; tempA : pCHAR location 'a2') : LONGINT; syscall GfxBase 030;
 FUNCTION BltBitMap(const srcBitMap : pBitMap location 'a0'; xSrc : LONGINT location 'd0'; ySrc : LONGINT location 'd1'; destBitMap : pBitMap location 'a1'; xDest : LONGINT location 'd2'; yDest : LONGINT location 'd3'; xSize : LONGINT location 'd4'; ySize : LONGINT location 'd5'; minterm : ULONG location 'd6'; mask : ULONG location 'd7'; tempA : pCHAR location 'a2') : LONGINT; syscall GfxBase 030;
 PROCEDURE BltBitMapRastPort(const srcBitMap : pBitMap location 'a0'; xSrc : LONGINT location 'd0'; ySrc : LONGINT location 'd1'; destRP : pRastPort location 'a1'; xDest : LONGINT location 'd2'; yDest : LONGINT location 'd3'; xSize : LONGINT location 'd4'; ySize : LONGINT location 'd5'; minterm : ULONG location 'd6'); syscall GfxBase 606;
 PROCEDURE BltBitMapRastPort(const srcBitMap : pBitMap location 'a0'; xSrc : LONGINT location 'd0'; ySrc : LONGINT location 'd1'; destRP : pRastPort location 'a1'; xDest : LONGINT location 'd2'; yDest : LONGINT location 'd3'; xSize : LONGINT location 'd4'; ySize : LONGINT location 'd5'; minterm : ULONG location 'd6'); syscall GfxBase 606;
-PROCEDURE BltClear(memBlock : pCHAR location 'a1'; byteCount : ULONG location 'd0'; flags : ULONG location 'd1'); syscall GfxBase 300;
+PROCEDURE BltClear(memBlock : pointer location 'a1'; byteCount : ULONG location 'd0'; flags : ULONG location 'd1'); syscall GfxBase 300;
 PROCEDURE BltMaskBitMapRastPort(const srcBitMap : pBitMap location 'a0'; xSrc : LONGINT location 'd0'; ySrc : LONGINT location 'd1'; destRP : pRastPort location 'a1'; xDest : LONGINT location 'd2'; yDest : LONGINT location 'd3'; xSize : LONGINT location 'd4'; ySize : LONGINT location 'd5'; minterm : ULONG location 'd6';const bltMask : pCHAR location 'a2'); syscall GfxBase 636;
 PROCEDURE BltMaskBitMapRastPort(const srcBitMap : pBitMap location 'a0'; xSrc : LONGINT location 'd0'; ySrc : LONGINT location 'd1'; destRP : pRastPort location 'a1'; xDest : LONGINT location 'd2'; yDest : LONGINT location 'd3'; xSize : LONGINT location 'd4'; ySize : LONGINT location 'd5'; minterm : ULONG location 'd6';const bltMask : pCHAR location 'a2'); syscall GfxBase 636;
 PROCEDURE BltPattern(rp : pRastPort location 'a1';const mask : pCHAR location 'a0'; xMin : LONGINT location 'd0'; yMin : LONGINT location 'd1'; xMax : LONGINT location 'd2'; yMax : LONGINT location 'd3'; maskBPR : ULONG location 'd4'); syscall GfxBase 312;
 PROCEDURE BltPattern(rp : pRastPort location 'a1';const mask : pCHAR location 'a0'; xMin : LONGINT location 'd0'; yMin : LONGINT location 'd1'; xMax : LONGINT location 'd2'; yMax : LONGINT location 'd3'; maskBPR : ULONG location 'd4'); syscall GfxBase 312;
 PROCEDURE BltTemplate(const source : pWORD location 'a0'; xSrc : LONGINT location 'd0'; srcMod : LONGINT location 'd1'; destRP : pRastPort location 'a1'; xDest : LONGINT location 'd2'; yDest : LONGINT location 'd3'; xSize : LONGINT location 'd4'; ySize : LONGINT location 'd5'); syscall GfxBase 036;
 PROCEDURE BltTemplate(const source : pWORD location 'a0'; xSrc : LONGINT location 'd0'; srcMod : LONGINT location 'd1'; destRP : pRastPort location 'a1'; xDest : LONGINT location 'd2'; yDest : LONGINT location 'd3'; xSize : LONGINT location 'd4'; ySize : LONGINT location 'd5'); syscall GfxBase 036;
@@ -2388,7 +2388,7 @@ FUNCTION TextLength(rp : pRastPort location 'a1';const string_ : pCHAR location
 FUNCTION UCopperListInit(uCopList : pUCopList location 'a0'; n : LONGINT location 'd0') : pCopList; syscall GfxBase 594;
 FUNCTION UCopperListInit(uCopList : pUCopList location 'a0'; n : LONGINT location 'd0') : pCopList; syscall GfxBase 594;
 PROCEDURE UnlockLayerRom(layer : pLayer location 'a5'); syscall GfxBase 438;
 PROCEDURE UnlockLayerRom(layer : pLayer location 'a5'); syscall GfxBase 438;
 FUNCTION VBeamPos : LONGINT; syscall GfxBase 384;
 FUNCTION VBeamPos : LONGINT; syscall GfxBase 384;
-FUNCTION VideoControl(colorMap : pColorMap location 'a0'; tagarray : pTagItem location 'a1') : LongBool; syscall GfxBase 708;
+FUNCTION VideoControl(colorMap : pColorMap location 'a0'; tagarray : pTagItem location 'a1') : LongWord; syscall GfxBase 708;
 PROCEDURE WaitBlit; syscall GfxBase 228;
 PROCEDURE WaitBlit; syscall GfxBase 228;
 PROCEDURE WaitBOVP(vp : pViewPort location 'a0'); syscall GfxBase 402;
 PROCEDURE WaitBOVP(vp : pViewPort location 'a0'); syscall GfxBase 402;
 PROCEDURE WaitTOF; syscall GfxBase 270;
 PROCEDURE WaitTOF; syscall GfxBase 270;
@@ -2408,7 +2408,7 @@ function GetExtSprite(ss : pExtSprite; Const argv : array of PtrUInt) : LONGINT;
 procedure GetRPAttrs(rp : pRastPort; Const argv : array of PtrUInt);
 procedure GetRPAttrs(rp : pRastPort; Const argv : array of PtrUInt);
 function ObtainBestPen(cm : pColorMap; r : ULONG; g : ULONG; b : ULONG; Const argv : array of PtrUInt) : LONGINT;
 function ObtainBestPen(cm : pColorMap; r : ULONG; g : ULONG; b : ULONG; Const argv : array of PtrUInt) : LONGINT;
 procedure SetRPAttrs(rp : pRastPort; Const argv : array of PtrUInt);
 procedure SetRPAttrs(rp : pRastPort; Const argv : array of PtrUInt);
-function VideoControlTags(colorMap : pColorMap; Const argv : array of PtrUInt) : BOOLEAN;
+function VideoControlTags(colorMap : pColorMap; Const argv : array of PtrUInt) : LongWord;
 function WeighTAMatchTags(reqTextAttr : pTextAttr; targetTextAttr : pTextAttr; Const argv : array of PtrUInt) : smallint;
 function WeighTAMatchTags(reqTextAttr : pTextAttr; targetTextAttr : pTextAttr; Const argv : array of PtrUInt) : smallint;
 
 
 { gfxmacros }
 { gfxmacros }
@@ -2477,7 +2477,7 @@ begin
     SetRPAttrsA(rp,@argv);
     SetRPAttrsA(rp,@argv);
 end;
 end;
 
 
-function VideoControlTags(colorMap : pColorMap; Const argv : array of PtrUInt) : BOOLEAN;
+function VideoControlTags(colorMap : pColorMap; Const argv : array of PtrUInt) : LongWord;
 begin
 begin
     VideoControlTags := VideoControl(colorMap,@argv);
     VideoControlTags := VideoControl(colorMap,@argv);
 end;
 end;

+ 3 - 3
packages/amunits/src/coreunits/asl.pas

@@ -551,10 +551,10 @@ VAR AslBase : pLibrary = nil;
 
 
 FUNCTION AllocAslRequest(reqType : ULONG location 'd0'; tagList : pTagItem location 'a0') : POINTER; syscall AslBase 048;
 FUNCTION AllocAslRequest(reqType : ULONG location 'd0'; tagList : pTagItem location 'a0') : POINTER; syscall AslBase 048;
 FUNCTION AllocFileRequest : pFileRequester; syscall AslBase 030;
 FUNCTION AllocFileRequest : pFileRequester; syscall AslBase 030;
-FUNCTION AslRequest(requester : POINTER location 'a0'; tagList : pTagItem location 'a1') : LongInt; syscall AslBase 060;
+FUNCTION AslRequest(requester : POINTER location 'a0'; tagList : pTagItem location 'a1') : LongBool; syscall AslBase 060;
 PROCEDURE FreeAslRequest(requester : POINTER location 'a0'); syscall AslBase 054;
 PROCEDURE FreeAslRequest(requester : POINTER location 'a0'); syscall AslBase 054;
 PROCEDURE FreeFileRequest(fileReq : pFileRequester location 'a0'); syscall AslBase 036;
 PROCEDURE FreeFileRequest(fileReq : pFileRequester location 'a0'); syscall AslBase 036;
-FUNCTION RequestFile(fileReq : pFileRequester location 'a0') : LongInt; syscall AslBase 042;
+FUNCTION RequestFile(fileReq : pFileRequester location 'a0') : LongBool; syscall AslBase 042;
 
 
 PROCEDURE AbortAslRequest(requester : POINTER location 'a0'); syscall AslBase 078;
 PROCEDURE AbortAslRequest(requester : POINTER location 'a0'); syscall AslBase 078;
 PROCEDURE ActivateAslRequest(requester : POINTER location 'a0'); syscall AslBase 084;
 PROCEDURE ActivateAslRequest(requester : POINTER location 'a0'); syscall AslBase 084;
@@ -571,7 +571,7 @@ end;
 
 
 function AslRequestTags(requester : POINTER; Const argv : array of PtrUInt) : BOOLEAN;
 function AslRequestTags(requester : POINTER; Const argv : array of PtrUInt) : BOOLEAN;
 begin
 begin
-    AslRequestTags := AslRequest(requester,@argv) <> 0;
+    AslRequestTags := AslRequest(requester,@argv);
 end;
 end;
 
 
 
 

+ 1 - 1
packages/amunits/src/coreunits/configregs.pas

@@ -75,7 +75,7 @@ Type
     pExpansionControl = ^tExpansionControl;
     pExpansionControl = ^tExpansionControl;
     tExpansionControl = record
     tExpansionControl = record
         ec_Interrupt    : Byte;         { interrupt control register }
         ec_Interrupt    : Byte;         { interrupt control register }
-        ec_Reserved11   : Byte;
+        ec_Z3_HighBase  : Byte;
         ec_BaseAddress  : Byte;         { set new config address }
         ec_BaseAddress  : Byte;         { set new config address }
         ec_Shutup       : Byte;         { don't respond, pass config out }
         ec_Shutup       : Byte;         { don't respond, pass config out }
         ec_Reserved14   : Byte;
         ec_Reserved14   : Byte;

+ 1 - 1
packages/amunits/src/coreunits/rexx.pas

@@ -486,7 +486,7 @@ const
 PROCEDURE ClearRexxMsg(msgptr : pRexxMsg location 'a0'; count : ULONG location 'd0'); syscall RexxSysBase 156;
 PROCEDURE ClearRexxMsg(msgptr : pRexxMsg location 'a0'; count : ULONG location 'd0'); syscall RexxSysBase 156;
 FUNCTION CreateArgstring(const argstring : pCHAR location 'a0'; length : ULONG location 'd0') : pCHAR; syscall RexxSysBase 126;
 FUNCTION CreateArgstring(const argstring : pCHAR location 'a0'; length : ULONG location 'd0') : pCHAR; syscall RexxSysBase 126;
 FUNCTION CreateRexxMsg(const port : pMsgPort location 'a0'; const extension : pCHAR location 'a1'; host : pCHAR location 'd0') : pRexxMsg; syscall RexxSysBase 144;
 FUNCTION CreateRexxMsg(const port : pMsgPort location 'a0'; const extension : pCHAR location 'a1'; host : pCHAR location 'd0') : pRexxMsg; syscall RexxSysBase 144;
-PROCEDURE DeleteArgstring(argstring : pCHAR location 'd0'); syscall RexxSysBase 132;
+PROCEDURE DeleteArgstring(argstring : pCHAR location 'a0'); syscall RexxSysBase 132;
 PROCEDURE DeleteRexxMsg(packet : pRexxMsg location 'a0'); syscall RexxSysBase 150;
 PROCEDURE DeleteRexxMsg(packet : pRexxMsg location 'a0'); syscall RexxSysBase 150;
 FUNCTION FillRexxMsg(msgptr : pRexxMsg location 'a0'; count : ULONG location 'd0'; mask : ULONG location 'd1') : LongBool; syscall RexxSysBase 162;
 FUNCTION FillRexxMsg(msgptr : pRexxMsg location 'a0'; count : ULONG location 'd0'; mask : ULONG location 'd1') : LongBool; syscall RexxSysBase 162;
 FUNCTION IsRexxMsg(const msgptr : pRexxMsg location 'a0') : LongBool; syscall RexxSysBase 168;
 FUNCTION IsRexxMsg(const msgptr : pRexxMsg location 'a0') : LongBool; syscall RexxSysBase 168;

+ 2 - 2
packages/amunits/src/coreunits/utility.pas

@@ -286,13 +286,13 @@ const
  * In practice, an array (or chain of arrays) of TagItems is used.
  * In practice, an array (or chain of arrays) of TagItems is used.
  }
  }
 Type
 Type
-    Tag = LongInt;
+    Tag = LongWord;
     pTag = ^Tag;
     pTag = ^Tag;
 
 
     pTagItem = ^tTagItem;
     pTagItem = ^tTagItem;
     tTagItem = record
     tTagItem = record
      ti_Tag  : Tag;
      ti_Tag  : Tag;
-     ti_Data : LongInt;
+     ti_Data : LongWord;
     END;
     END;
 
 
     ppTagItem = ^pTagItem;
     ppTagItem = ^pTagItem;

+ 10 - 4
packages/amunits/src/coreunits/workbench.pas

@@ -71,7 +71,7 @@ Type
 
 
     pWBArg = ^tWBArg;
     pWBArg = ^tWBArg;
     tWBArg = record
     tWBArg = record
-        wa_Lock         : longint;      { a lock descriptor }
+        wa_Lock         : BPTR;      { a lock descriptor }
         wa_Name         : STRPTR;       { a string relative to that lock }
         wa_Name         : STRPTR;       { a string relative to that lock }
     end;
     end;
 
 
@@ -850,7 +850,7 @@ type
 VAR
 VAR
     WorkbenchBase : pLibrary = nil;
     WorkbenchBase : pLibrary = nil;
 
 
-FUNCTION AddAppIconA(id : ULONG location 'd0'; userdata : ULONG location 'd1'; text_ : pCHAR location 'a0'; msgport : pMsgPort location 'a1'; lock : pFileLock location 'a2'; diskobj : pDiskObject location 'a3'; const taglist : pTagItem location 'a4') : pAppIcon; syscall WorkbenchBase 060;
+FUNCTION AddAppIconA(id : ULONG location 'd0'; userdata : ULONG location 'd1'; text_ : pCHAR location 'a0'; msgport : pMsgPort location 'a1'; lock : BPTR location 'a2'; diskobj : pDiskObject location 'a3'; const taglist : pTagItem location 'a4') : pAppIcon; syscall WorkbenchBase 060;
 FUNCTION AddAppMenuItemA(id : ULONG location 'd0'; userdata : ULONG location 'd1'; text_ : pCHAR location 'a0'; msgport : pMsgPort location 'a1'; const taglist : pTagItem location 'a2') : pAppMenuItem; syscall WorkbenchBase 072;
 FUNCTION AddAppMenuItemA(id : ULONG location 'd0'; userdata : ULONG location 'd1'; text_ : pCHAR location 'a0'; msgport : pMsgPort location 'a1'; const taglist : pTagItem location 'a2') : pAppMenuItem; syscall WorkbenchBase 072;
 FUNCTION AddAppWindowA(id : ULONG location 'd0'; userdata : ULONG location 'd1'; window : pWindow location 'a0'; msgport : pMsgPort location 'a1'; const taglist : pTagItem location 'a2') : pAppWindow; syscall WorkbenchBase 042;
 FUNCTION AddAppWindowA(id : ULONG location 'd0'; userdata : ULONG location 'd1'; window : pWindow location 'a0'; msgport : pMsgPort location 'a1'; const taglist : pTagItem location 'a2') : pAppWindow; syscall WorkbenchBase 042;
 FUNCTION RemoveAppIcon(appIcon : pAppIcon location 'a0') : longbool; syscall WorkbenchBase 066;
 FUNCTION RemoveAppIcon(appIcon : pAppIcon location 'a0') : longbool; syscall WorkbenchBase 066;
@@ -866,11 +866,12 @@ FUNCTION OpenWorkbenchObjectA(name : pCHAR location 'a0'; const tags : pTagItem
 FUNCTION RemoveAppWindowDropZone(aw : pAppWindow location 'a0'; dropZone : pAppWindowDropZone location 'a1') : longbool; syscall WorkbenchBase 120;
 FUNCTION RemoveAppWindowDropZone(aw : pAppWindow location 'a0'; dropZone : pAppWindowDropZone location 'a1') : longbool; syscall WorkbenchBase 120;
 FUNCTION WorkbenchControlA(name : pCHAR location 'a0'; const tags : pTagItem location 'a1') : longbool; syscall WorkbenchBase 108;
 FUNCTION WorkbenchControlA(name : pCHAR location 'a0'; const tags : pTagItem location 'a1') : longbool; syscall WorkbenchBase 108;
 
 
+function AddAppIcon(id : ULONG; userdata : ULONG; text_ : pCHAR; msgport : pMsgPort; lock: BPTR; diskobj : pDiskObject; const taglist : array of PtrUInt) : pAppIcon;
 function AddAppMenuItem(id : ULONG; userdata : ULONG; text_ : pCHAR; msgport : pMsgPort; Const argv : array of PtrUInt) : pAppMenuItem;
 function AddAppMenuItem(id : ULONG; userdata : ULONG; text_ : pCHAR; msgport : pMsgPort; Const argv : array of PtrUInt) : pAppMenuItem;
 function AddAppWindow(id : ULONG; userdata : ULONG; window : pWindow; msgport : pMsgPort; Const argv : array of PtrUInt) : pAppWindow;
 function AddAppWindow(id : ULONG; userdata : ULONG; window : pWindow; msgport : pMsgPort; Const argv : array of PtrUInt) : pAppWindow;
 
 
 { overlays }
 { overlays }
-FUNCTION AddAppIconA(id : ULONG; userdata : ULONG; const text_ : RawByteString; msgport : pMsgPort; lock : pFileLock; diskobj : pDiskObject;const taglist : pTagItem) : pAppIcon;
+FUNCTION AddAppIconA(id : ULONG; userdata : ULONG; const text_ : RawByteString; msgport : pMsgPort; lock : BPTR; diskobj : pDiskObject;const taglist : pTagItem) : pAppIcon;
 FUNCTION AddAppMenuItemA(id : ULONG; userdata : ULONG; const text_ : RawByteString; msgport : pMsgPort;const taglist : pTagItem) : pAppMenuItem;
 FUNCTION AddAppMenuItemA(id : ULONG; userdata : ULONG; const text_ : RawByteString; msgport : pMsgPort;const taglist : pTagItem) : pAppMenuItem;
 PROCEDURE WBInfo(lock : BPTR; const name : RawByteString; screen : pScreen);
 PROCEDURE WBInfo(lock : BPTR; const name : RawByteString; screen : pScreen);
 
 
@@ -882,6 +883,11 @@ FUNCTION WorkbenchControlA(const name : RawByteString;const tags : pTagItem) : B
 
 
 IMPLEMENTATION
 IMPLEMENTATION
 
 
+function AddAppIcon(id : ULONG; userdata : ULONG; text_ : pCHAR; msgport : pMsgPort; lock: BPTR; diskobj : pDiskObject; const taglist : array of PtrUInt) : pAppIcon;
+begin
+  AddAppIcon := AddAppIconA(id, userdata, text_, msgport, lock, diskobj, @taglist);
+end;
+
 function AddAppMenuItem(id : ULONG; userdata : ULONG; text_ : pCHAR; msgport : pMsgPort; Const argv : array of PtrUInt) : pAppMenuItem;
 function AddAppMenuItem(id : ULONG; userdata : ULONG; text_ : pCHAR; msgport : pMsgPort; Const argv : array of PtrUInt) : pAppMenuItem;
 begin
 begin
     AddAppMenuItem := AddAppMenuItemA(id,userdata,text_,msgport,@argv);
     AddAppMenuItem := AddAppMenuItemA(id,userdata,text_,msgport,@argv);
@@ -892,7 +898,7 @@ begin
     AddAppWindow := AddAppWindowA(id,userdata,window,msgport,@argv);
     AddAppWindow := AddAppWindowA(id,userdata,window,msgport,@argv);
 end;
 end;
 
 
-FUNCTION AddAppIconA(id : ULONG; userdata : ULONG; const text_ : RawByteString; msgport : pMsgPort; lock : pFileLock; diskobj : pDiskObject;const taglist : pTagItem) : pAppIcon;
+FUNCTION AddAppIconA(id : ULONG; userdata : ULONG; const text_ : RawByteString; msgport : pMsgPort; lock : BPTR; diskobj : pDiskObject;const taglist : pTagItem) : pAppIcon;
 begin
 begin
        AddAppIconA := AddAppIconA(id,userdata,PChar(text_),msgport,lock,diskobj,taglist);
        AddAppIconA := AddAppIconA(id,userdata,PChar(text_),msgport,lock,diskobj,taglist);
 end;
 end;

+ 5 - 5
packages/amunits/src/utilunits/easyasl.pas

@@ -142,7 +142,7 @@ BEGIN
 
 
     fr := AllocAslRequest(ASL_FileRequest,@mytags);
     fr := AllocAslRequest(ASL_FileRequest,@mytags);
     IF fr <> NIL THEN BEGIN
     IF fr <> NIL THEN BEGIN
-       IF AslRequest(fr,NIL) <> 0 THEN BEGIN
+       IF AslRequest(fr,NIL) THEN BEGIN
           IF (strlen(fr^.rf_Dir) >0) and (strlen(fr^.rf_File) > 0) THEN begin
           IF (strlen(fr^.rf_Dir) >0) and (strlen(fr^.rf_File) > 0) THEN begin
              strcopy(path,fr^.rf_Dir);
              strcopy(path,fr^.rf_Dir);
              strcopy(fname,fr^.rf_File);
              strcopy(fname,fr^.rf_File);
@@ -248,7 +248,7 @@ BEGIN
 
 
     fr := AllocAslRequest(ASL_FontRequest,@mytags);
     fr := AllocAslRequest(ASL_FontRequest,@mytags);
     IF fr <> NIL THEN BEGIN
     IF fr <> NIL THEN BEGIN
-         IF AslRequest(fr,NIL) <> 0 THEN BEGIN
+         IF AslRequest(fr,NIL) THEN BEGIN
               WITH finfo DO BEGIN
               WITH finfo DO BEGIN
                   nfi_Name := strpas(fr^.fo_Attr.ta_Name);
                   nfi_Name := strpas(fr^.fo_Attr.ta_Name);
                   nfi_Size       := fr^.fo_Attr.ta_YSize;
                   nfi_Size       := fr^.fo_Attr.ta_YSize;
@@ -322,7 +322,7 @@ BEGIN
 
 
         fr := AllocAslRequest(ASL_FileRequest,@mytags);
         fr := AllocAslRequest(ASL_FileRequest,@mytags);
         IF fr <> NIL THEN BEGIN
         IF fr <> NIL THEN BEGIN
-             IF AslRequest(fr,NIL) <> 0 THEN BEGIN
+             IF AslRequest(fr,NIL) THEN BEGIN
                  IF (strlen(fr^.rf_Dir) >0) THEN begin
                  IF (strlen(fr^.rf_Dir) >0) THEN begin
                     strcopy(path,fr^.rf_Dir);
                     strcopy(path,fr^.rf_Dir);
                     result := true;
                     result := true;
@@ -382,7 +382,7 @@ BEGIN
 
 
     fr := AllocAslRequest(ASL_FileRequest,@mytags);
     fr := AllocAslRequest(ASL_FileRequest,@mytags);
     IF fr <> NIL THEN BEGIN
     IF fr <> NIL THEN BEGIN
-         IF AslRequest(fr,NIL) <> 0 THEN BEGIN
+         IF AslRequest(fr,NIL) THEN BEGIN
              IF (strlen(fr^.rf_Dir) >0) THEN begin
              IF (strlen(fr^.rf_Dir) >0) THEN begin
                 strcopy(path,fr^.rf_Dir);
                 strcopy(path,fr^.rf_Dir);
                 result := true;
                 result := true;
@@ -445,7 +445,7 @@ BEGIN
 
 
     fr := AllocAslRequest(ASL_FileRequest,@mytags);
     fr := AllocAslRequest(ASL_FileRequest,@mytags);
     IF fr <> NIL THEN BEGIN
     IF fr <> NIL THEN BEGIN
-         IF AslRequest(fr,NIL) <> 0 THEN BEGIN
+         IF AslRequest(fr,NIL) THEN BEGIN
              IF (strlen(fr^.rf_Dir) >0) and (strlen(fr^.rf_File) > 0) THEN begin
              IF (strlen(fr^.rf_Dir) >0) and (strlen(fr^.rf_File) > 0) THEN begin
                 strcopy(path,fr^.rf_Dir);
                 strcopy(path,fr^.rf_Dir);
                 strcopy(fname,fr^.rf_File);
                 strcopy(fname,fr^.rf_File);

+ 3 - 3
packages/morphunits/src/agraphics.pas

@@ -2274,7 +2274,7 @@ SysCall GfxBase 180;
 function AreaEllipse(rp : pRastPort location 'a1'; xCenter : LongInt location 'd0'; yCenter : LongInt location 'd1'; a : LongInt location 'd2'; b : LongInt location 'd3') : LongInt;
 function AreaEllipse(rp : pRastPort location 'a1'; xCenter : LongInt location 'd0'; yCenter : LongInt location 'd1'; a : LongInt location 'd2'; b : LongInt location 'd3') : LongInt;
 SysCall GfxBase 186;
 SysCall GfxBase 186;
 
 
-procedure LoadRGB4(vp : pViewPort location 'a0'; VAR colors : Integer location 'a1'; count : LongInt location 'd0');
+procedure LoadRGB4(vp : pViewPort location 'a0'; Colors : PWord location 'a1'; count : LongInt location 'd0');
 SysCall GfxBase 192;
 SysCall GfxBase 192;
 
 
 procedure InitRastPort(rp : pRastPort location 'a1');
 procedure InitRastPort(rp : pRastPort location 'a1');
@@ -2328,7 +2328,7 @@ SysCall GfxBase 288;
 procedure QBSBlit(blit : pbltnode location 'a1');
 procedure QBSBlit(blit : pbltnode location 'a1');
 SysCall GfxBase 294;
 SysCall GfxBase 294;
 
 
-procedure BltClear(memBlock : pCHAR location 'a1'; byteCount : CARDINAL location 'd0'; flags : CARDINAL location 'd1');
+procedure BltClear(memBlock : Pointer location 'a1'; byteCount : CARDINAL location 'd0'; flags : CARDINAL location 'd1');
 SysCall GfxBase 300;
 SysCall GfxBase 300;
 
 
 procedure RectFill(rp : pRastPort location 'a1'; xMin : LongInt location 'd0'; yMin : LongInt location 'd1'; xMax : LongInt location 'd2'; yMax : LongInt location 'd3');
 procedure RectFill(rp : pRastPort location 'a1'; xMin : LongInt location 'd0'; yMin : LongInt location 'd1'; xMax : LongInt location 'd2'; yMax : LongInt location 'd3');
@@ -2526,7 +2526,7 @@ SysCall GfxBase 696;
 function GfxLookUp(associateNode : POINTER location 'a0') : POINTER;
 function GfxLookUp(associateNode : POINTER location 'a0') : POINTER;
 SysCall GfxBase 702;
 SysCall GfxBase 702;
 
 
-function VideoControl(colorMap : pColorMap location 'a0'; tagarray : pTagItem location 'a1') : LongBool;
+function VideoControl(colorMap : pColorMap location 'a0'; tagarray : pTagItem location 'a1') : LongWord;
 SysCall GfxBase 708;
 SysCall GfxBase 708;
 
 
 function OpenMonitor(monitorName : pSHORTINT location 'a1'; displayID : CARDINAL location 'd0') : pMonitorSpec;
 function OpenMonitor(monitorName : pSHORTINT location 'a1'; displayID : CARDINAL location 'd0') : pMonitorSpec;

+ 1 - 1
packages/morphunits/src/intuition.pas

@@ -4165,7 +4165,7 @@ SysCall IntuitionBase 258;
 function SetMenuStrip(window : pWindow location 'a0'; menu : pMenu location 'a1') : LongBool;
 function SetMenuStrip(window : pWindow location 'a0'; menu : pMenu location 'a1') : LongBool;
 SysCall IntuitionBase 264;
 SysCall IntuitionBase 264;
 
 
-procedure SetPointer(window : pWindow location 'a0'; VAR pointer : Word location 'a1'; height : LongInt location 'd0'; width : LongInt location 'd1'; xOffset : LongInt location 'd2'; yOffset : LongInt location 'd3');
+procedure SetPointer(window : pWindow location 'a0'; pointer : PWord location 'a1'; height : LongInt location 'd0'; width : LongInt location 'd1'; xOffset : LongInt location 'd2'; yOffset : LongInt location 'd3');
 SysCall IntuitionBase 270;
 SysCall IntuitionBase 270;
 
 
 procedure SetWindowTitles(window : pWindow location 'a0'; windowTitle : PChar location 'a1'; screenTitle : PChar location 'a2');
 procedure SetWindowTitles(window : pWindow location 'a0'; windowTitle : PChar location 'a1'; screenTitle : PChar location 'a2');

+ 2 - 2
packages/morphunits/src/keymap.pas

@@ -97,10 +97,10 @@ SysCall KeymapBase 030;
 function AskKeyMapDefault : pKeyMap;
 function AskKeyMapDefault : pKeyMap;
 SysCall KeymapBase 036;
 SysCall KeymapBase 036;
 
 
-function MapRawKey(CONST event : pInputEvent location 'a0'; buffer : pSHORTINT location 'a1'; length : longint location 'd1'; CONST keyMap : pKeyMap location 'a2') : INTEGER;
+function MapRawKey(CONST event : pInputEvent location 'a0'; buffer : PChar location 'a1'; length : longint location 'd1'; CONST keyMap : pKeyMap location 'a2') : INTEGER;
 SysCall KeymapBase 042;
 SysCall KeymapBase 042;
 
 
-function MapANSI(CONST strg : pSHORTINT location 'a0'; count : longint location 'd0'; buffer : pSHORTINT location 'a1'; length : longint location 'd1'; CONST keyMap : pKeyMap location 'a2') : longint;
+function MapANSI(CONST strg : PChar location 'a0'; count : longint location 'd0'; buffer : PChar location 'a1'; length : longint location 'd1'; CONST keyMap : pKeyMap location 'a2') : longint;
 SysCall KeymapBase 048;
 SysCall KeymapBase 048;
 
 
 { Helper calls }
 { Helper calls }

+ 10 - 4
packages/morphunits/src/workbench.pas

@@ -71,7 +71,7 @@ Type
 
 
     pWBArg = ^tWBArg;
     pWBArg = ^tWBArg;
     tWBArg = record
     tWBArg = record
-        wa_Lock         : longint;      { a lock descriptor }
+        wa_Lock         : BPTR;      { a lock descriptor }
         wa_Name         : STRPTR;       { a string relative to that lock }
         wa_Name         : STRPTR;       { a string relative to that lock }
     end;
     end;
 
 
@@ -850,7 +850,7 @@ type
 VAR
 VAR
     WorkbenchBase : pLibrary = nil;
     WorkbenchBase : pLibrary = nil;
 
 
-FUNCTION AddAppIconA(id : ULONG location 'd0'; userdata : ULONG location 'd1'; text_ : pCHAR location 'a0'; msgport : pMsgPort location 'a1'; lock : pFileLock location 'a2'; diskobj : pDiskObject location 'a3'; const taglist : pTagItem location 'a4') : pAppIcon; syscall WorkbenchBase 060;
+FUNCTION AddAppIconA(id : ULONG location 'd0'; userdata : ULONG location 'd1'; text_ : pCHAR location 'a0'; msgport : pMsgPort location 'a1'; lock : BPTR location 'a2'; diskobj : pDiskObject location 'a3'; const taglist : pTagItem location 'a4') : pAppIcon; syscall WorkbenchBase 060;
 FUNCTION AddAppMenuItemA(id : ULONG location 'd0'; userdata : ULONG location 'd1'; text_ : pCHAR location 'a0'; msgport : pMsgPort location 'a1'; const taglist : pTagItem location 'a2') : pAppMenuItem; syscall WorkbenchBase 072;
 FUNCTION AddAppMenuItemA(id : ULONG location 'd0'; userdata : ULONG location 'd1'; text_ : pCHAR location 'a0'; msgport : pMsgPort location 'a1'; const taglist : pTagItem location 'a2') : pAppMenuItem; syscall WorkbenchBase 072;
 FUNCTION AddAppWindowA(id : ULONG location 'd0'; userdata : ULONG location 'd1'; window : pWindow location 'a0'; msgport : pMsgPort location 'a1'; const taglist : pTagItem location 'a2') : pAppWindow; syscall WorkbenchBase 042;
 FUNCTION AddAppWindowA(id : ULONG location 'd0'; userdata : ULONG location 'd1'; window : pWindow location 'a0'; msgport : pMsgPort location 'a1'; const taglist : pTagItem location 'a2') : pAppWindow; syscall WorkbenchBase 042;
 FUNCTION RemoveAppIcon(appIcon : pAppIcon location 'a0') : longbool; syscall WorkbenchBase 066;
 FUNCTION RemoveAppIcon(appIcon : pAppIcon location 'a0') : longbool; syscall WorkbenchBase 066;
@@ -866,11 +866,12 @@ FUNCTION OpenWorkbenchObjectA(name : pCHAR location 'a0'; const tags : pTagItem
 FUNCTION RemoveAppWindowDropZone(aw : pAppWindow location 'a0'; dropZone : pAppWindowDropZone location 'a1') : longbool; syscall WorkbenchBase 120;
 FUNCTION RemoveAppWindowDropZone(aw : pAppWindow location 'a0'; dropZone : pAppWindowDropZone location 'a1') : longbool; syscall WorkbenchBase 120;
 FUNCTION WorkbenchControlA(name : pCHAR location 'a0'; const tags : pTagItem location 'a1') : longbool; syscall WorkbenchBase 108;
 FUNCTION WorkbenchControlA(name : pCHAR location 'a0'; const tags : pTagItem location 'a1') : longbool; syscall WorkbenchBase 108;
 
 
+FUNCTION AddAppIcon(id : ULONG; userdata : ULONG; text_ : pCHAR; msgport : pMsgPort; lock: BPTR; diskobj : pDiskObject; const taglist : array of PtrUInt) : pAppIcon;
 function AddAppMenuItem(id : ULONG; userdata : ULONG; text_ : pCHAR; msgport : pMsgPort; Const argv : array of PtrUInt) : pAppMenuItem;
 function AddAppMenuItem(id : ULONG; userdata : ULONG; text_ : pCHAR; msgport : pMsgPort; Const argv : array of PtrUInt) : pAppMenuItem;
 function AddAppWindow(id : ULONG; userdata : ULONG; window : pWindow; msgport : pMsgPort; Const argv : array of PtrUInt) : pAppWindow;
 function AddAppWindow(id : ULONG; userdata : ULONG; window : pWindow; msgport : pMsgPort; Const argv : array of PtrUInt) : pAppWindow;
 
 
 { overlays }
 { overlays }
-FUNCTION AddAppIconA(id : ULONG; userdata : ULONG; const text_ : RawByteString; msgport : pMsgPort; lock : pFileLock; diskobj : pDiskObject;const taglist : pTagItem) : pAppIcon;
+FUNCTION AddAppIconA(id : ULONG; userdata : ULONG; const text_ : RawByteString; msgport : pMsgPort; lock : BPTR; diskobj : pDiskObject;const taglist : pTagItem) : pAppIcon;
 FUNCTION AddAppMenuItemA(id : ULONG; userdata : ULONG; const text_ : RawByteString; msgport : pMsgPort;const taglist : pTagItem) : pAppMenuItem;
 FUNCTION AddAppMenuItemA(id : ULONG; userdata : ULONG; const text_ : RawByteString; msgport : pMsgPort;const taglist : pTagItem) : pAppMenuItem;
 PROCEDURE WBInfo(lock : BPTR; const name : RawByteString; screen : pScreen);
 PROCEDURE WBInfo(lock : BPTR; const name : RawByteString; screen : pScreen);
 
 
@@ -882,6 +883,11 @@ FUNCTION WorkbenchControlA(const name : RawByteString;const tags : pTagItem) : B
 
 
 IMPLEMENTATION
 IMPLEMENTATION
 
 
+FUNCTION AddAppIcon(id : ULONG; userdata : ULONG; text_ : pCHAR; msgport : pMsgPort; lock: BPTR; diskobj : pDiskObject; const taglist : array of PtrUInt) : pAppIcon;
+begin
+  AddAppIcon := AddAppIconA(id, userdata, text_, msgport, lock, diskobj, @taglist);
+end;
+
 function AddAppMenuItem(id : ULONG; userdata : ULONG; text_ : pCHAR; msgport : pMsgPort; Const argv : array of PtrUInt) : pAppMenuItem;
 function AddAppMenuItem(id : ULONG; userdata : ULONG; text_ : pCHAR; msgport : pMsgPort; Const argv : array of PtrUInt) : pAppMenuItem;
 begin
 begin
     AddAppMenuItem := AddAppMenuItemA(id,userdata,text_,msgport,@argv);
     AddAppMenuItem := AddAppMenuItemA(id,userdata,text_,msgport,@argv);
@@ -892,7 +898,7 @@ begin
     AddAppWindow := AddAppWindowA(id,userdata,window,msgport,@argv);
     AddAppWindow := AddAppWindowA(id,userdata,window,msgport,@argv);
 end;
 end;
 
 
-FUNCTION AddAppIconA(id : ULONG; userdata : ULONG; const text_ : RawByteString; msgport : pMsgPort; lock : pFileLock; diskobj : pDiskObject;const taglist : pTagItem) : pAppIcon;
+FUNCTION AddAppIconA(id : ULONG; userdata : ULONG; const text_ : RawByteString; msgport : pMsgPort; lock : BPTR; diskobj : pDiskObject;const taglist : pTagItem) : pAppIcon;
 begin
 begin
        AddAppIconA := AddAppIconA(id,userdata,PChar(text_),msgport,lock,diskobj,taglist);
        AddAppIconA := AddAppIconA(id,userdata,PChar(text_),msgport,lock,diskobj,taglist);
 end;
 end;