Difference between revisions of "Trinity in Trouble"

From Freepascal Amiga wiki
Jump to navigation Jump to search
(→‎List of issues: Added some additional notes + some rewrites + New entries.for unit Workbench and unit systemvartags)
(→‎List of issues: entry for AllocMem Added)
Line 38: Line 38:
 
* unit: systemvartags
 
* unit: systemvartags
 
: This utility unit is Amiga specific and implements most if not all vartags versions of library-calls rendering it incompatible with AROS and MorphOS
 
: This utility unit is Amiga specific and implements most if not all vartags versions of library-calls rendering it incompatible with AROS and MorphOS
 +
* function: AllocMem() '''(high priority)'''
 +
: MorphOS implemented it as ExecAllocMem
 +
: Amiga + AROS version have this function declared as AllocMem(), which is ambiguous with Free Pascal's AllocMem function.

Revision as of 07:49, 5 August 2015

Note

Based on Free Pascal branch "fixes 3.0"

Feel free to add delete or change status.

Our trinity consist of Amiga, AROS and MorphOS.

Unfortunately, there are (still) some incompatibilities and/or some lack of consistency here and there. The idea is to have a list here that mentions them all. Layout may change, i simply had to start somewhere.

NOTE: I thought there is no use to mention the Tag, Tags, Taglist, etc. inconsistency and additional incompatibilities that this causes. We are all aware of those and will hopefully get some unity in the future


List of issues

  • function: DoMethod()
Amiga version seems missing completely.
Implemented versions for AROS and MorphOS don't follow autodocs 100% and are inconsistent.
  • function: ASLRequestTags()
AROS implementation seems missing.
Amiga implements it in utility unit systemvartags (see also unit: systemvartags)
MorphOS implements it in unit ASL
  • structure: Hook
AROS version, entries are not IPTR rather APTR.
  • function: GetAttr()
Amiga + MorphOS uses a var for ReturnValue while AROS uses a pointer. Autodocs states it to be a pointer.
  • function: SetAttrs()
Amiga + MorphOS implementations seems missing
  • unit: Workbench
MorphOS version seems missing
  • unit: systemvartags
This utility unit is Amiga specific and implements most if not all vartags versions of library-calls rendering it incompatible with AROS and MorphOS
  • function: AllocMem() (high priority)
MorphOS implemented it as ExecAllocMem
Amiga + AROS version have this function declared as AllocMem(), which is ambiguous with Free Pascal's AllocMem function.