emuld.inc 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. {
  2. This file is part of the Free Pascal run time library.
  3. emulinterface definitions for MorphOS/PowerPC
  4. Copyright (c) 2002 The MorphOS Development Team, All Rights Reserved.
  5. Free Pascal conversion
  6. Copyright (c) 2004 Karoly Balogh for Genesi S.a.r.l. <www.genesi.lu>
  7. See the file COPYING.FPC, included in this distribution,
  8. for details about the copyright.
  9. This program is distributed in the hope that it will be useful,
  10. but WITHOUT ANY WARRANTY; without even the implied warranty of
  11. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  12. **********************************************************************}
  13. { * emulinterface consts from MorphOS SDK * }
  14. const
  15. TRAP_MASK = $00ff;
  16. TRAP_AREA_START = $ff00; { * $ff00 .. $ffff area * }
  17. TRAP_LIB = $ff00;
  18. TRAP_LIB_QUICK = $ff01;
  19. TRAP_LIBNR = $ff05;
  20. TRAP_LIBNR_QUICK = $ff06;
  21. TRAP_ISYNC = $ff0f;
  22. TRAP_SYNC = $ff10;
  23. TRAP_EIEIO = $ff11;
  24. TRAP_LIBSR = $ff12;
  25. TRAP_LIBSRNR = $ff13;
  26. TRAP_LIBD0_D1 = $ff14;
  27. TRAP_LIBRESTORE = $ff15;
  28. TRAP_LIBD0D1SR = $ff17;
  29. TRAP_LIBD0D1A0A1SR = $ff18;
  30. const
  31. EMULTAG_NAME = $0; { * Gives back a Name Ptr * }
  32. EMULTAG_VERSION = $1; { * Gives back a Version * }
  33. EMULTAG_REVISION = $2; { * Gives back a Revision * }
  34. EMULTAG_OPCODETABLE = $3; { * Gives back the 16 Bit Opcodetable Ptr or NULL * }
  35. EMULTAG_TYPE = $4; { * Gives back the emulation type * }
  36. EMULTAG_EMULHANDLE = $5; { * Gives back the EmulHandle Ptr * }
  37. EMULTAG_EMULHANDLESIZE = $6; { * Gives back the EmulHandle Size * }
  38. EMULTAG_SUPERHANDLE = $7; { * Gives back the SuperHandle Ptr * }
  39. EMULTAG_SUPERHANDLESIZE = $8; { * Gives back the SuperHandle Size * }
  40. { * emulinterface structures from MorphOS SDK * }
  41. type
  42. PEmulLibEntry = ^TEmulLibEntry;
  43. TEmulLibEntry = packed record
  44. Trap : Word;
  45. Extension: Word; { * MUST be set to 0 if you create it by hand * }
  46. Func : Pointer;
  47. end;