IMPLEMENTATION MODULE WorkbenchSupport; FROM SYSTEM IMPORT ADDRESS,ASSEMBLE; FROM ExecD IMPORT MsgPortPtr; FROM DosD IMPORT FileLockPtr; FROM UtilityD IMPORT TagItemPtr; IMPORT R, d:WorkbenchD, WorkbenchL; (* Nur für Library-Version>=36! *) (* Diese Prozedur stammt aus WorkbenchL. Sie muß eine Implementation erhalten, weil das Register A4 als Parameter benutzt wird, was in M2Amiga nicht möglich ist. *) PROCEDURE AddAppIconA( id{R.D0}:LONGCARD; userdata{R.D1}:LONGINT; text{R.A0}:ADDRESS; msgport{R.A1}:MsgPortPtr; lock{R.A2}:FileLockPtr; diskobj{R.A3}:d.DiskObjectPtr; taglist{R.D2}:TagItemPtr (* D2 statt A4! *) ):d.AppIconPtr; (*$ EntryExitCode:=FALSE *) BEGIN ASSEMBLE( MOVE.L A6,-(A7) MOVE.L WorkbenchL(A4),A6 EXG D2,A4 JSR -60(A6) EXG D2,A4 MOVE.L (A7)+,A6 RTS END); END AddAppIconA; END WorkbenchSupport.mod