home *** CD-ROM | disk | FTP | other *** search
/ Amiga Elysian Archive / AmigaElysianArchive.iso / prog / c / gcc233.lha / os-include / inline / intuition.h < prev    next >
C/C++ Source or Header  |  1992-12-29  |  57KB  |  1,695 lines

  1. #ifndef _INLINE_INTUITION_H
  2. #define _INLINE_INTUITION_H
  3.  
  4. #include <sys/cdefs.h>
  5. #include <inline/stubs.h>
  6.  
  7. __BEGIN_DECLS
  8.  
  9. #ifndef BASE_EXT_DECL
  10. #define BASE_EXT_DECL extern struct IntuitionBase*  IntuitionBase;
  11. #endif
  12. #ifndef BASE_PAR_DECL
  13. #define BASE_PAR_DECL
  14. #define BASE_PAR_DECL0 void
  15. #endif
  16. #ifndef BASE_NAME
  17. #define BASE_NAME IntuitionBase
  18. #endif
  19.  
  20. static __inline BOOL 
  21. ActivateGadget (BASE_PAR_DECL struct Gadget *gadgets,struct Window *window,struct Requester *requester)
  22. {
  23.   BASE_EXT_DECL
  24.   register BOOL  _res  __asm("d0");
  25.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  26.   register struct Gadget *a0 __asm("a0") = gadgets;
  27.   register struct Window *a1 __asm("a1") = window;
  28.   register struct Requester *a2 __asm("a2") = requester;
  29.   __asm __volatile ("jsr a6@(-0x1ce)"
  30.   : "=r" (_res)
  31.   : "r" (a6), "r" (a0), "r" (a1), "r" (a2)
  32.   : "a0","a1","a2","d0","d1", "memory");
  33.   return _res;
  34. }
  35. static __inline void 
  36. ActivateWindow (BASE_PAR_DECL struct Window *window)
  37. {
  38.   BASE_EXT_DECL
  39.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  40.   register struct Window *a0 __asm("a0") = window;
  41.   __asm __volatile ("jsr a6@(-0x1c2)"
  42.   : /* no output */
  43.   : "r" (a6), "r" (a0)
  44.   : "a0","a1","d0","d1", "memory");
  45. }
  46. static __inline void 
  47. AddClass (BASE_PAR_DECL struct IClass *classPtr)
  48. {
  49.   BASE_EXT_DECL
  50.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  51.   register struct IClass *a0 __asm("a0") = classPtr;
  52.   __asm __volatile ("jsr a6@(-0x2ac)"
  53.   : /* no output */
  54.   : "r" (a6), "r" (a0)
  55.   : "a0","a1","d0","d1", "memory");
  56. }
  57. static __inline UWORD 
  58. AddGList (BASE_PAR_DECL struct Window *window,struct Gadget *gadget,unsigned long position,long numGad,struct Requester *requester)
  59. {
  60.   BASE_EXT_DECL
  61.   register UWORD  _res  __asm("d0");
  62.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  63.   register struct Window *a0 __asm("a0") = window;
  64.   register struct Gadget *a1 __asm("a1") = gadget;
  65.   register unsigned long d0 __asm("d0") = position;
  66.   register long d1 __asm("d1") = numGad;
  67.   register struct Requester *a2 __asm("a2") = requester;
  68.   __asm __volatile ("jsr a6@(-0x1b6)"
  69.   : "=r" (_res)
  70.   : "r" (a6), "r" (a0), "r" (a1), "r" (d0), "r" (d1), "r" (a2)
  71.   : "a0","a1","a2","d0","d1", "memory");
  72.   return _res;
  73. }
  74. static __inline UWORD 
  75. AddGadget (BASE_PAR_DECL struct Window *window,struct Gadget *gadget,unsigned long position)
  76. {
  77.   BASE_EXT_DECL
  78.   register UWORD  _res  __asm("d0");
  79.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  80.   register struct Window *a0 __asm("a0") = window;
  81.   register struct Gadget *a1 __asm("a1") = gadget;
  82.   register unsigned long d0 __asm("d0") = position;
  83.   __asm __volatile ("jsr a6@(-0x2a)"
  84.   : "=r" (_res)
  85.   : "r" (a6), "r" (a0), "r" (a1), "r" (d0)
  86.   : "a0","a1","d0","d1", "memory");
  87.   return _res;
  88. }
  89. static __inline APTR 
  90. AllocRemember (BASE_PAR_DECL struct Remember **rememberKey,unsigned long size,unsigned long flags)
  91. {
  92.   BASE_EXT_DECL
  93.   register APTR  _res  __asm("d0");
  94.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  95.   register struct Remember **a0 __asm("a0") = rememberKey;
  96.   register unsigned long d0 __asm("d0") = size;
  97.   register unsigned long d1 __asm("d1") = flags;
  98.   __asm __volatile ("jsr a6@(-0x18c)"
  99.   : "=r" (_res)
  100.   : "r" (a6), "r" (a0), "r" (d0), "r" (d1)
  101.   : "a0","a1","d0","d1", "memory");
  102.   return _res;
  103. }
  104. static __inline struct ScreenBuffer *
  105. AllocScreenBuffer (BASE_PAR_DECL struct Screen *sc,struct BitMap *bm,unsigned long flags)
  106. {
  107.   BASE_EXT_DECL
  108.   register struct ScreenBuffer * _res  __asm("d0");
  109.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  110.   register struct Screen *a0 __asm("a0") = sc;
  111.   register struct BitMap *a1 __asm("a1") = bm;
  112.   register unsigned long d0 __asm("d0") = flags;
  113.   __asm __volatile ("jsr a6@(-0x300)"
  114.   : "=r" (_res)
  115.   : "r" (a6), "r" (a0), "r" (a1), "r" (d0)
  116.   : "a0","a1","d0","d1", "memory");
  117.   return _res;
  118. }
  119. static __inline void 
  120. AlohaWorkbench (BASE_PAR_DECL long wbport)
  121. {
  122.   BASE_EXT_DECL
  123.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  124.   register long a0 __asm("a0") = wbport;
  125.   __asm __volatile ("jsr a6@(-0x192)"
  126.   : /* no output */
  127.   : "r" (a6), "r" (a0)
  128.   : "a0","a1","d0","d1", "memory");
  129. }
  130. static __inline BOOL 
  131. AutoRequest (BASE_PAR_DECL struct Window *window,struct IntuiText *body,struct IntuiText *posText,struct IntuiText *negText,unsigned long pFlag,unsigned long nFlag,unsigned long width,unsigned long height)
  132. {
  133.   BASE_EXT_DECL
  134.   register BOOL  _res  __asm("d0");
  135.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  136.   register struct Window *a0 __asm("a0") = window;
  137.   register struct IntuiText *a1 __asm("a1") = body;
  138.   register struct IntuiText *a2 __asm("a2") = posText;
  139.   register struct IntuiText *a3 __asm("a3") = negText;
  140.   register unsigned long d0 __asm("d0") = pFlag;
  141.   register unsigned long d1 __asm("d1") = nFlag;
  142.   register unsigned long d2 __asm("d2") = width;
  143.   register unsigned long d3 __asm("d3") = height;
  144.   __asm __volatile ("jsr a6@(-0x15c)"
  145.   : "=r" (_res)
  146.   : "r" (a6), "r" (a0), "r" (a1), "r" (a2), "r" (a3), "r" (d0), "r" (d1), "r" (d2), "r" (d3)
  147.   : "a0","a1","a2","a3","d0","d1","d2","d3", "memory");
  148.   return _res;
  149. }
  150. static __inline void 
  151. BeginRefresh (BASE_PAR_DECL struct Window *window)
  152. {
  153.   BASE_EXT_DECL
  154.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  155.   register struct Window *a0 __asm("a0") = window;
  156.   __asm __volatile ("jsr a6@(-0x162)"
  157.   : /* no output */
  158.   : "r" (a6), "r" (a0)
  159.   : "a0","a1","d0","d1", "memory");
  160. }
  161. static __inline struct Window *
  162. BuildEasyRequestArgs (BASE_PAR_DECL struct Window *window,struct EasyStruct *easyStruct,unsigned long idcmp,APTR args)
  163. {
  164.   BASE_EXT_DECL
  165.   register struct Window * _res  __asm("d0");
  166.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  167.   register struct Window *a0 __asm("a0") = window;
  168.   register struct EasyStruct *a1 __asm("a1") = easyStruct;
  169.   register unsigned long d0 __asm("d0") = idcmp;
  170.   register APTR a3 __asm("a3") = args;
  171.   __asm __volatile ("jsr a6@(-0x252)"
  172.   : "=r" (_res)
  173.   : "r" (a6), "r" (a0), "r" (a1), "r" (d0), "r" (a3)
  174.   : "a0","a1","a3","d0","d1", "memory");
  175.   return _res;
  176. }
  177. static __inline struct Window *
  178. BuildSysRequest (BASE_PAR_DECL struct Window *window,struct IntuiText *body,struct IntuiText *posText,struct IntuiText *negText,unsigned long flags,unsigned long width,unsigned long height)
  179. {
  180.   BASE_EXT_DECL
  181.   register struct Window * _res  __asm("d0");
  182.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  183.   register struct Window *a0 __asm("a0") = window;
  184.   register struct IntuiText *a1 __asm("a1") = body;
  185.   register struct IntuiText *a2 __asm("a2") = posText;
  186.   register struct IntuiText *a3 __asm("a3") = negText;
  187.   register unsigned long d0 __asm("d0") = flags;
  188.   register unsigned long d1 __asm("d1") = width;
  189.   register unsigned long d2 __asm("d2") = height;
  190.   __asm __volatile ("jsr a6@(-0x168)"
  191.   : "=r" (_res)
  192.   : "r" (a6), "r" (a0), "r" (a1), "r" (a2), "r" (a3), "r" (d0), "r" (d1), "r" (d2)
  193.   : "a0","a1","a2","a3","d0","d1","d2", "memory");
  194.   return _res;
  195. }
  196. static __inline ULONG 
  197. ChangeScreenBuffer (BASE_PAR_DECL struct Screen *sc,struct ScreenBuffer *sb)
  198. {
  199.   BASE_EXT_DECL
  200.   register ULONG  _res  __asm("d0");
  201.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  202.   register struct Screen *a0 __asm("a0") = sc;
  203.   register struct ScreenBuffer *a1 __asm("a1") = sb;
  204.   __asm __volatile ("jsr a6@(-0x30c)"
  205.   : "=r" (_res)
  206.   : "r" (a6), "r" (a0), "r" (a1)
  207.   : "a0","a1","d0","d1", "memory");
  208.   return _res;
  209. }
  210. static __inline void 
  211. ChangeWindowBox (BASE_PAR_DECL struct Window *window,long left,long top,long width,long height)
  212. {
  213.   BASE_EXT_DECL
  214.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  215.   register struct Window *a0 __asm("a0") = window;
  216.   register long d0 __asm("d0") = left;
  217.   register long d1 __asm("d1") = top;
  218.   register long d2 __asm("d2") = width;
  219.   register long d3 __asm("d3") = height;
  220.   __asm __volatile ("jsr a6@(-0x1e6)"
  221.   : /* no output */
  222.   : "r" (a6), "r" (a0), "r" (d0), "r" (d1), "r" (d2), "r" (d3)
  223.   : "a0","a1","d0","d1","d2","d3", "memory");
  224. }
  225. static __inline BOOL 
  226. ClearDMRequest (BASE_PAR_DECL struct Window *window)
  227. {
  228.   BASE_EXT_DECL
  229.   register BOOL  _res  __asm("d0");
  230.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  231.   register struct Window *a0 __asm("a0") = window;
  232.   __asm __volatile ("jsr a6@(-0x30)"
  233.   : "=r" (_res)
  234.   : "r" (a6), "r" (a0)
  235.   : "a0","a1","d0","d1", "memory");
  236.   return _res;
  237. }
  238. static __inline void 
  239. ClearMenuStrip (BASE_PAR_DECL struct Window *window)
  240. {
  241.   BASE_EXT_DECL
  242.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  243.   register struct Window *a0 __asm("a0") = window;
  244.   __asm __volatile ("jsr a6@(-0x36)"
  245.   : /* no output */
  246.   : "r" (a6), "r" (a0)
  247.   : "a0","a1","d0","d1", "memory");
  248. }
  249. static __inline void 
  250. ClearPointer (BASE_PAR_DECL struct Window *window)
  251. {
  252.   BASE_EXT_DECL
  253.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  254.   register struct Window *a0 __asm("a0") = window;
  255.   __asm __volatile ("jsr a6@(-0x3c)"
  256.   : /* no output */
  257.   : "r" (a6), "r" (a0)
  258.   : "a0","a1","d0","d1", "memory");
  259. }
  260. static __inline BOOL 
  261. CloseScreen (BASE_PAR_DECL struct Screen *screen)
  262. {
  263.   BASE_EXT_DECL
  264.   register BOOL  _res  __asm("d0");
  265.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  266.   register struct Screen *a0 __asm("a0") = screen;
  267.   __asm __volatile ("jsr a6@(-0x42)"
  268.   : "=r" (_res)
  269.   : "r" (a6), "r" (a0)
  270.   : "a0","a1","d0","d1", "memory");
  271.   return _res;
  272. }
  273. static __inline void 
  274. CloseWindow (BASE_PAR_DECL struct Window *window)
  275. {
  276.   BASE_EXT_DECL
  277.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  278.   register struct Window *a0 __asm("a0") = window;
  279.   __asm __volatile ("jsr a6@(-0x48)"
  280.   : /* no output */
  281.   : "r" (a6), "r" (a0)
  282.   : "a0","a1","d0","d1", "memory");
  283. }
  284. static __inline LONG 
  285. CloseWorkBench (BASE_PAR_DECL0)
  286. {
  287.   BASE_EXT_DECL
  288.   register LONG  _res  __asm("d0");
  289.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  290.   __asm __volatile ("jsr a6@(-0x4e)"
  291.   : "=r" (_res)
  292.   : "r" (a6)
  293.   : "a0","a1","d0","d1", "memory");
  294.   return _res;
  295. }
  296. static __inline void 
  297. CurrentTime (BASE_PAR_DECL ULONG *seconds,ULONG *micros)
  298. {
  299.   BASE_EXT_DECL
  300.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  301.   register ULONG *a0 __asm("a0") = seconds;
  302.   register ULONG *a1 __asm("a1") = micros;
  303.   __asm __volatile ("jsr a6@(-0x54)"
  304.   : /* no output */
  305.   : "r" (a6), "r" (a0), "r" (a1)
  306.   : "a0","a1","d0","d1", "memory");
  307. }
  308. static __inline BOOL 
  309. DisplayAlert (BASE_PAR_DECL unsigned long alertNumber,UBYTE *string,unsigned long height)
  310. {
  311.   BASE_EXT_DECL
  312.   register BOOL  _res  __asm("d0");
  313.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  314.   register unsigned long d0 __asm("d0") = alertNumber;
  315.   register UBYTE *a0 __asm("a0") = string;
  316.   register unsigned long d1 __asm("d1") = height;
  317.   __asm __volatile ("jsr a6@(-0x5a)"
  318.   : "=r" (_res)
  319.   : "r" (a6), "r" (d0), "r" (a0), "r" (d1)
  320.   : "a0","a1","d0","d1", "memory");
  321.   return _res;
  322. }
  323. static __inline void 
  324. DisplayBeep (BASE_PAR_DECL struct Screen *screen)
  325. {
  326.   BASE_EXT_DECL
  327.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  328.   register struct Screen *a0 __asm("a0") = screen;
  329.   __asm __volatile ("jsr a6@(-0x60)"
  330.   : /* no output */
  331.   : "r" (a6), "r" (a0)
  332.   : "a0","a1","d0","d1", "memory");
  333. }
  334. static __inline void 
  335. DisposeObject (BASE_PAR_DECL APTR object)
  336. {
  337.   BASE_EXT_DECL
  338.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  339.   register APTR a0 __asm("a0") = object;
  340.   __asm __volatile ("jsr a6@(-0x282)"
  341.   : /* no output */
  342.   : "r" (a6), "r" (a0)
  343.   : "a0","a1","d0","d1", "memory");
  344. }
  345. static __inline ULONG 
  346. DoGadgetMethodA (BASE_PAR_DECL struct Gadget *gad,struct Window *win,struct Requester *req,Msg message)
  347. {
  348.   BASE_EXT_DECL
  349.   register ULONG  _res  __asm("d0");
  350.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  351.   register struct Gadget *a0 __asm("a0") = gad;
  352.   register struct Window *a1 __asm("a1") = win;
  353.   register struct Requester *a2 __asm("a2") = req;
  354.   register Msg a3 __asm("a3") = message;
  355.   __asm __volatile ("jsr a6@(-0x32a)"
  356.   : "=r" (_res)
  357.   : "r" (a6), "r" (a0), "r" (a1), "r" (a2), "r" (a3)
  358.   : "a0","a1","a2","a3","d0","d1", "memory");
  359.   return _res;
  360. }
  361. static __inline BOOL 
  362. DoubleClick (BASE_PAR_DECL unsigned long sSeconds,unsigned long sMicros,unsigned long cSeconds,unsigned long cMicros)
  363. {
  364.   BASE_EXT_DECL
  365.   register BOOL  _res  __asm("d0");
  366.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  367.   register unsigned long d0 __asm("d0") = sSeconds;
  368.   register unsigned long d1 __asm("d1") = sMicros;
  369.   register unsigned long d2 __asm("d2") = cSeconds;
  370.   register unsigned long d3 __asm("d3") = cMicros;
  371.   __asm __volatile ("jsr a6@(-0x66)"
  372.   : "=r" (_res)
  373.   : "r" (a6), "r" (d0), "r" (d1), "r" (d2), "r" (d3)
  374.   : "a0","a1","d0","d1","d2","d3", "memory");
  375.   return _res;
  376. }
  377. static __inline void 
  378. DrawBorder (BASE_PAR_DECL struct RastPort *rp,struct Border *border,long leftOffset,long topOffset)
  379. {
  380.   BASE_EXT_DECL
  381.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  382.   register struct RastPort *a0 __asm("a0") = rp;
  383.   register struct Border *a1 __asm("a1") = border;
  384.   register long d0 __asm("d0") = leftOffset;
  385.   register long d1 __asm("d1") = topOffset;
  386.   __asm __volatile ("jsr a6@(-0x6c)"
  387.   : /* no output */
  388.   : "r" (a6), "r" (a0), "r" (a1), "r" (d0), "r" (d1)
  389.   : "a0","a1","d0","d1", "memory");
  390. }
  391. static __inline void 
  392. DrawImage (BASE_PAR_DECL struct RastPort *rp,struct Image *image,long leftOffset,long topOffset)
  393. {
  394.   BASE_EXT_DECL
  395.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  396.   register struct RastPort *a0 __asm("a0") = rp;
  397.   register struct Image *a1 __asm("a1") = image;
  398.   register long d0 __asm("d0") = leftOffset;
  399.   register long d1 __asm("d1") = topOffset;
  400.   __asm __volatile ("jsr a6@(-0x72)"
  401.   : /* no output */
  402.   : "r" (a6), "r" (a0), "r" (a1), "r" (d0), "r" (d1)
  403.   : "a0","a1","d0","d1", "memory");
  404. }
  405. static __inline void 
  406. DrawImageState (BASE_PAR_DECL struct RastPort *rp,struct Image *image,long leftOffset,long topOffset,unsigned long state,struct DrawInfo *drawInfo)
  407. {
  408.   BASE_EXT_DECL
  409.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  410.   register struct RastPort *a0 __asm("a0") = rp;
  411.   register struct Image *a1 __asm("a1") = image;
  412.   register long d0 __asm("d0") = leftOffset;
  413.   register long d1 __asm("d1") = topOffset;
  414.   register unsigned long d2 __asm("d2") = state;
  415.   register struct DrawInfo *a2 __asm("a2") = drawInfo;
  416.   __asm __volatile ("jsr a6@(-0x26a)"
  417.   : /* no output */
  418.   : "r" (a6), "r" (a0), "r" (a1), "r" (d0), "r" (d1), "r" (d2), "r" (a2)
  419.   : "a0","a1","a2","d0","d1","d2", "memory");
  420. }
  421. static __inline LONG 
  422. EasyRequestArgs (BASE_PAR_DECL struct Window *window,struct EasyStruct *easyStruct,ULONG *idcmpPtr,APTR args)
  423. {
  424.   BASE_EXT_DECL
  425.   register LONG  _res  __asm("d0");
  426.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  427.   register struct Window *a0 __asm("a0") = window;
  428.   register struct EasyStruct *a1 __asm("a1") = easyStruct;
  429.   register ULONG *a2 __asm("a2") = idcmpPtr;
  430.   register APTR a3 __asm("a3") = args;
  431.   __asm __volatile ("jsr a6@(-0x24c)"
  432.   : "=r" (_res)
  433.   : "r" (a6), "r" (a0), "r" (a1), "r" (a2), "r" (a3)
  434.   : "a0","a1","a2","a3","d0","d1", "memory");
  435.   return _res;
  436. }
  437. static __inline void 
  438. EndRefresh (BASE_PAR_DECL struct Window *window,long complete)
  439. {
  440.   BASE_EXT_DECL
  441.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  442.   register struct Window *a0 __asm("a0") = window;
  443.   register long d0 __asm("d0") = complete;
  444.   __asm __volatile ("jsr a6@(-0x16e)"
  445.   : /* no output */
  446.   : "r" (a6), "r" (a0), "r" (d0)
  447.   : "a0","a1","d0","d1", "memory");
  448. }
  449. static __inline void 
  450. EndRequest (BASE_PAR_DECL struct Requester *requester,struct Window *window)
  451. {
  452.   BASE_EXT_DECL
  453.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  454.   register struct Requester *a0 __asm("a0") = requester;
  455.   register struct Window *a1 __asm("a1") = window;
  456.   __asm __volatile ("jsr a6@(-0x78)"
  457.   : /* no output */
  458.   : "r" (a6), "r" (a0), "r" (a1)
  459.   : "a0","a1","d0","d1", "memory");
  460. }
  461. static __inline void 
  462. EraseImage (BASE_PAR_DECL struct RastPort *rp,struct Image *image,long leftOffset,long topOffset)
  463. {
  464.   BASE_EXT_DECL
  465.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  466.   register struct RastPort *a0 __asm("a0") = rp;
  467.   register struct Image *a1 __asm("a1") = image;
  468.   register long d0 __asm("d0") = leftOffset;
  469.   register long d1 __asm("d1") = topOffset;
  470.   __asm __volatile ("jsr a6@(-0x276)"
  471.   : /* no output */
  472.   : "r" (a6), "r" (a0), "r" (a1), "r" (d0), "r" (d1)
  473.   : "a0","a1","d0","d1", "memory");
  474. }
  475. static __inline BOOL 
  476. FreeClass (BASE_PAR_DECL struct IClass *classPtr)
  477. {
  478.   BASE_EXT_DECL
  479.   register BOOL  _res  __asm("d0");
  480.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  481.   register struct IClass *a0 __asm("a0") = classPtr;
  482.   __asm __volatile ("jsr a6@(-0x2ca)"
  483.   : "=r" (_res)
  484.   : "r" (a6), "r" (a0)
  485.   : "a0","a1","d0","d1", "memory");
  486.   return _res;
  487. }
  488. static __inline void 
  489. FreeRemember (BASE_PAR_DECL struct Remember **rememberKey,long reallyForget)
  490. {
  491.   BASE_EXT_DECL
  492.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  493.   register struct Remember **a0 __asm("a0") = rememberKey;
  494.   register long d0 __asm("d0") = reallyForget;
  495.   __asm __volatile ("jsr a6@(-0x198)"
  496.   : /* no output */
  497.   : "r" (a6), "r" (a0), "r" (d0)
  498.   : "a0","a1","d0","d1", "memory");
  499. }
  500. static __inline void 
  501. FreeScreenBuffer (BASE_PAR_DECL struct Screen *sc,struct ScreenBuffer *sb)
  502. {
  503.   BASE_EXT_DECL
  504.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  505.   register struct Screen *a0 __asm("a0") = sc;
  506.   register struct ScreenBuffer *a1 __asm("a1") = sb;
  507.   __asm __volatile ("jsr a6@(-0x306)"
  508.   : /* no output */
  509.   : "r" (a6), "r" (a0), "r" (a1)
  510.   : "a0","a1","d0","d1", "memory");
  511. }
  512. static __inline void 
  513. FreeScreenDrawInfo (BASE_PAR_DECL struct Screen *screen,struct DrawInfo *drawInfo)
  514. {
  515.   BASE_EXT_DECL
  516.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  517.   register struct Screen *a0 __asm("a0") = screen;
  518.   register struct DrawInfo *a1 __asm("a1") = drawInfo;
  519.   __asm __volatile ("jsr a6@(-0x2b8)"
  520.   : /* no output */
  521.   : "r" (a6), "r" (a0), "r" (a1)
  522.   : "a0","a1","d0","d1", "memory");
  523. }
  524. static __inline void 
  525. FreeSysRequest (BASE_PAR_DECL struct Window *window)
  526. {
  527.   BASE_EXT_DECL
  528.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  529.   register struct Window *a0 __asm("a0") = window;
  530.   __asm __volatile ("jsr a6@(-0x174)"
  531.   : /* no output */
  532.   : "r" (a6), "r" (a0)
  533.   : "a0","a1","d0","d1", "memory");
  534. }
  535. static __inline void 
  536. GadgetMouse (BASE_PAR_DECL struct Gadget *gadget,struct GadgetInfo *gInfo,WORD *mousePoint)
  537. {
  538.   BASE_EXT_DECL
  539.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  540.   register struct Gadget *a0 __asm("a0") = gadget;
  541.   register struct GadgetInfo *a1 __asm("a1") = gInfo;
  542.   register WORD *a2 __asm("a2") = mousePoint;
  543.   __asm __volatile ("jsr a6@(-0x23a)"
  544.   : /* no output */
  545.   : "r" (a6), "r" (a0), "r" (a1), "r" (a2)
  546.   : "a0","a1","a2","d0","d1", "memory");
  547. }
  548. static __inline ULONG 
  549. GetAttr (BASE_PAR_DECL unsigned long attrID,APTR object,ULONG *storagePtr)
  550. {
  551.   BASE_EXT_DECL
  552.   register ULONG  _res  __asm("d0");
  553.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  554.   register unsigned long d0 __asm("d0") = attrID;
  555.   register APTR a0 __asm("a0") = object;
  556.   register ULONG *a1 __asm("a1") = storagePtr;
  557.   __asm __volatile ("jsr a6@(-0x28e)"
  558.   : "=r" (_res)
  559.   : "r" (a6), "r" (d0), "r" (a0), "r" (a1)
  560.   : "a0","a1","d0","d1", "memory");
  561.   return _res;
  562. }
  563. static __inline struct Preferences *
  564. GetDefPrefs (BASE_PAR_DECL struct Preferences *preferences,long size)
  565. {
  566.   BASE_EXT_DECL
  567.   register struct Preferences * _res  __asm("d0");
  568.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  569.   register struct Preferences *a0 __asm("a0") = preferences;
  570.   register long d0 __asm("d0") = size;
  571.   __asm __volatile ("jsr a6@(-0x7e)"
  572.   : "=r" (_res)
  573.   : "r" (a6), "r" (a0), "r" (d0)
  574.   : "a0","a1","d0","d1", "memory");
  575.   return _res;
  576. }
  577. static __inline void 
  578. GetDefaultPubScreen (BASE_PAR_DECL UBYTE *nameBuffer)
  579. {
  580.   BASE_EXT_DECL
  581.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  582.   register UBYTE *a0 __asm("a0") = nameBuffer;
  583.   __asm __volatile ("jsr a6@(-0x246)"
  584.   : /* no output */
  585.   : "r" (a6), "r" (a0)
  586.   : "a0","a1","d0","d1", "memory");
  587. }
  588. static __inline struct Preferences *
  589. GetPrefs (BASE_PAR_DECL struct Preferences *preferences,long size)
  590. {
  591.   BASE_EXT_DECL
  592.   register struct Preferences * _res  __asm("d0");
  593.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  594.   register struct Preferences *a0 __asm("a0") = preferences;
  595.   register long d0 __asm("d0") = size;
  596.   __asm __volatile ("jsr a6@(-0x84)"
  597.   : "=r" (_res)
  598.   : "r" (a6), "r" (a0), "r" (d0)
  599.   : "a0","a1","d0","d1", "memory");
  600.   return _res;
  601. }
  602. static __inline LONG 
  603. GetScreenData (BASE_PAR_DECL APTR buffer,unsigned long size,unsigned long type,struct Screen *screen)
  604. {
  605.   BASE_EXT_DECL
  606.   register LONG  _res  __asm("d0");
  607.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  608.   register APTR a0 __asm("a0") = buffer;
  609.   register unsigned long d0 __asm("d0") = size;
  610.   register unsigned long d1 __asm("d1") = type;
  611.   register struct Screen *a1 __asm("a1") = screen;
  612.   __asm __volatile ("jsr a6@(-0x1aa)"
  613.   : "=r" (_res)
  614.   : "r" (a6), "r" (a0), "r" (d0), "r" (d1), "r" (a1)
  615.   : "a0","a1","d0","d1", "memory");
  616.   return _res;
  617. }
  618. static __inline struct DrawInfo *
  619. GetScreenDrawInfo (BASE_PAR_DECL struct Screen *screen)
  620. {
  621.   BASE_EXT_DECL
  622.   register struct DrawInfo * _res  __asm("d0");
  623.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  624.   register struct Screen *a0 __asm("a0") = screen;
  625.   __asm __volatile ("jsr a6@(-0x2b2)"
  626.   : "=r" (_res)
  627.   : "r" (a6), "r" (a0)
  628.   : "a0","a1","d0","d1", "memory");
  629.   return _res;
  630. }
  631. static __inline void 
  632. HelpControl (BASE_PAR_DECL struct Window *win,unsigned long flags)
  633. {
  634.   BASE_EXT_DECL
  635.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  636.   register struct Window *a0 __asm("a0") = win;
  637.   register unsigned long d0 __asm("d0") = flags;
  638.   __asm __volatile ("jsr a6@(-0x33c)"
  639.   : /* no output */
  640.   : "r" (a6), "r" (a0), "r" (d0)
  641.   : "a0","a1","d0","d1", "memory");
  642. }
  643. static __inline void 
  644. InitRequester (BASE_PAR_DECL struct Requester *requester)
  645. {
  646.   BASE_EXT_DECL
  647.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  648.   register struct Requester *a0 __asm("a0") = requester;
  649.   __asm __volatile ("jsr a6@(-0x8a)"
  650.   : /* no output */
  651.   : "r" (a6), "r" (a0)
  652.   : "a0","a1","d0","d1", "memory");
  653. }
  654. static __inline LONG 
  655. IntuiTextLength (BASE_PAR_DECL struct IntuiText *iText)
  656. {
  657.   BASE_EXT_DECL
  658.   register LONG  _res  __asm("d0");
  659.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  660.   register struct IntuiText *a0 __asm("a0") = iText;
  661.   __asm __volatile ("jsr a6@(-0x14a)"
  662.   : "=r" (_res)
  663.   : "r" (a6), "r" (a0)
  664.   : "a0","a1","d0","d1", "memory");
  665.   return _res;
  666. }
  667. static __inline void 
  668. Intuition (BASE_PAR_DECL struct InputEvent *iEvent)
  669. {
  670.   BASE_EXT_DECL
  671.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  672.   register struct InputEvent *a0 __asm("a0") = iEvent;
  673.   __asm __volatile ("jsr a6@(-0x24)"
  674.   : /* no output */
  675.   : "r" (a6), "r" (a0)
  676.   : "a0","a1","d0","d1", "memory");
  677. }
  678. static __inline struct MenuItem *
  679. ItemAddress (BASE_PAR_DECL struct Menu *menuStrip,unsigned long menuNumber)
  680. {
  681.   BASE_EXT_DECL
  682.   register struct MenuItem * _res  __asm("d0");
  683.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  684.   register struct Menu *a0 __asm("a0") = menuStrip;
  685.   register unsigned long d0 __asm("d0") = menuNumber;
  686.   __asm __volatile ("jsr a6@(-0x90)"
  687.   : "=r" (_res)
  688.   : "r" (a6), "r" (a0), "r" (d0)
  689.   : "a0","a1","d0","d1", "memory");
  690.   return _res;
  691. }
  692. static __inline void 
  693. LendMenus (BASE_PAR_DECL struct Window *fromwindow,struct Window *towindow)
  694. {
  695.   BASE_EXT_DECL
  696.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  697.   register struct Window *a0 __asm("a0") = fromwindow;
  698.   register struct Window *a1 __asm("a1") = towindow;
  699.   __asm __volatile ("jsr a6@(-0x324)"
  700.   : /* no output */
  701.   : "r" (a6), "r" (a0), "r" (a1)
  702.   : "a0","a1","d0","d1", "memory");
  703. }
  704. static __inline ULONG 
  705. LockIBase (BASE_PAR_DECL unsigned long dontknow)
  706. {
  707.   BASE_EXT_DECL
  708.   register ULONG  _res  __asm("d0");
  709.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  710.   register unsigned long d0 __asm("d0") = dontknow;
  711.   __asm __volatile ("jsr a6@(-0x19e)"
  712.   : "=r" (_res)
  713.   : "r" (a6), "r" (d0)
  714.   : "a0","a1","d0","d1", "memory");
  715.   return _res;
  716. }
  717. static __inline struct Screen *
  718. LockPubScreen (BASE_PAR_DECL UBYTE *name)
  719. {
  720.   BASE_EXT_DECL
  721.   register struct Screen * _res  __asm("d0");
  722.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  723.   register UBYTE *a0 __asm("a0") = name;
  724.   __asm __volatile ("jsr a6@(-0x1fe)"
  725.   : "=r" (_res)
  726.   : "r" (a6), "r" (a0)
  727.   : "a0","a1","d0","d1", "memory");
  728.   return _res;
  729. }
  730. static __inline struct List *
  731. LockPubScreenList (BASE_PAR_DECL0)
  732. {
  733.   BASE_EXT_DECL
  734.   register struct List * _res  __asm("d0");
  735.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  736.   __asm __volatile ("jsr a6@(-0x20a)"
  737.   : "=r" (_res)
  738.   : "r" (a6)
  739.   : "a0","a1","d0","d1", "memory");
  740.   return _res;
  741. }
  742. static __inline struct IClass *
  743. MakeClass (BASE_PAR_DECL UBYTE *classID,UBYTE *superClassID,struct IClass *superClassPtr,unsigned long instanceSize,unsigned long flags)
  744. {
  745.   BASE_EXT_DECL
  746.   register struct IClass * _res  __asm("d0");
  747.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  748.   register UBYTE *a0 __asm("a0") = classID;
  749.   register UBYTE *a1 __asm("a1") = superClassID;
  750.   register struct IClass *a2 __asm("a2") = superClassPtr;
  751.   register unsigned long d0 __asm("d0") = instanceSize;
  752.   register unsigned long d1 __asm("d1") = flags;
  753.   __asm __volatile ("jsr a6@(-0x2a6)"
  754.   : "=r" (_res)
  755.   : "r" (a6), "r" (a0), "r" (a1), "r" (a2), "r" (d0), "r" (d1)
  756.   : "a0","a1","a2","d0","d1", "memory");
  757.   return _res;
  758. }
  759. static __inline void 
  760. MakeScreen (BASE_PAR_DECL struct Screen *screen)
  761. {
  762.   BASE_EXT_DECL
  763.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  764.   register struct Screen *a0 __asm("a0") = screen;
  765.   __asm __volatile ("jsr a6@(-0x17a)"
  766.   : /* no output */
  767.   : "r" (a6), "r" (a0)
  768.   : "a0","a1","d0","d1", "memory");
  769. }
  770. static __inline BOOL 
  771. ModifyIDCMP (BASE_PAR_DECL struct Window *window,unsigned long flags)
  772. {
  773.   BASE_EXT_DECL
  774.   register BOOL  _res  __asm("d0");
  775.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  776.   register struct Window *a0 __asm("a0") = window;
  777.   register unsigned long d0 __asm("d0") = flags;
  778.   __asm __volatile ("jsr a6@(-0x96)"
  779.   : "=r" (_res)
  780.   : "r" (a6), "r" (a0), "r" (d0)
  781.   : "a0","a1","d0","d1", "memory");
  782.   return _res;
  783. }
  784. static __inline void 
  785. ModifyProp (BASE_PAR_DECL struct Gadget *gadget,struct Window *window,struct Requester *requester,unsigned long flags,unsigned long horizPot,unsigned long vertPot,unsigned long horizBody,unsigned long vertBody)
  786. {
  787.   BASE_EXT_DECL
  788.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  789.   register struct Gadget *a0 __asm("a0") = gadget;
  790.   register struct Window *a1 __asm("a1") = window;
  791.   register struct Requester *a2 __asm("a2") = requester;
  792.   register unsigned long d0 __asm("d0") = flags;
  793.   register unsigned long d1 __asm("d1") = horizPot;
  794.   register unsigned long d2 __asm("d2") = vertPot;
  795.   register unsigned long d3 __asm("d3") = horizBody;
  796.   register unsigned long d4 __asm("d4") = vertBody;
  797.   __asm __volatile ("jsr a6@(-0x9c)"
  798.   : /* no output */
  799.   : "r" (a6), "r" (a0), "r" (a1), "r" (a2), "r" (d0), "r" (d1), "r" (d2), "r" (d3), "r" (d4)
  800.   : "a0","a1","a2","d0","d1","d2","d3","d4", "memory");
  801. }
  802. static __inline void 
  803. MoveScreen (BASE_PAR_DECL struct Screen *screen,long dx,long dy)
  804. {
  805.   BASE_EXT_DECL
  806.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  807.   register struct Screen *a0 __asm("a0") = screen;
  808.   register long d0 __asm("d0") = dx;
  809.   register long d1 __asm("d1") = dy;
  810.   __asm __volatile ("jsr a6@(-0xa2)"
  811.   : /* no output */
  812.   : "r" (a6), "r" (a0), "r" (d0), "r" (d1)
  813.   : "a0","a1","d0","d1", "memory");
  814. }
  815. static __inline void 
  816. MoveWindow (BASE_PAR_DECL struct Window *window,long dx,long dy)
  817. {
  818.   BASE_EXT_DECL
  819.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  820.   register struct Window *a0 __asm("a0") = window;
  821.   register long d0 __asm("d0") = dx;
  822.   register long d1 __asm("d1") = dy;
  823.   __asm __volatile ("jsr a6@(-0xa8)"
  824.   : /* no output */
  825.   : "r" (a6), "r" (a0), "r" (d0), "r" (d1)
  826.   : "a0","a1","d0","d1", "memory");
  827. }
  828. static __inline void 
  829. MoveWindowInFrontOf (BASE_PAR_DECL struct Window *window,struct Window *behindWindow)
  830. {
  831.   BASE_EXT_DECL
  832.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  833.   register struct Window *a0 __asm("a0") = window;
  834.   register struct Window *a1 __asm("a1") = behindWindow;
  835.   __asm __volatile ("jsr a6@(-0x1e0)"
  836.   : /* no output */
  837.   : "r" (a6), "r" (a0), "r" (a1)
  838.   : "a0","a1","d0","d1", "memory");
  839. }
  840. static __inline void 
  841. NewModifyProp (BASE_PAR_DECL struct Gadget *gadget,struct Window *window,struct Requester *requester,unsigned long flags,unsigned long horizPot,unsigned long vertPot,unsigned long horizBody,unsigned long vertBody,long numGad)
  842. {
  843.   BASE_EXT_DECL
  844.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  845.   register struct Gadget *a0 __asm("a0") = gadget;
  846.   register struct Window *a1 __asm("a1") = window;
  847.   register struct Requester *a2 __asm("a2") = requester;
  848.   register unsigned long d0 __asm("d0") = flags;
  849.   register unsigned long d1 __asm("d1") = horizPot;
  850.   register unsigned long d2 __asm("d2") = vertPot;
  851.   register unsigned long d3 __asm("d3") = horizBody;
  852.   register unsigned long d4 __asm("d4") = vertBody;
  853.   register long d5 __asm("d5") = numGad;
  854.   __asm __volatile ("jsr a6@(-0x1d4)"
  855.   : /* no output */
  856.   : "r" (a6), "r" (a0), "r" (a1), "r" (a2), "r" (d0), "r" (d1), "r" (d2), "r" (d3), "r" (d4), "r" (d5)
  857.   : "a0","a1","a2","d0","d1","d2","d3","d4","d5", "memory");
  858. }
  859. static __inline APTR 
  860. NewObjectA (BASE_PAR_DECL struct IClass *classPtr,UBYTE *classID,struct TagItem *tagList)
  861. {
  862.   BASE_EXT_DECL
  863.   register APTR  _res  __asm("d0");
  864.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  865.   register struct IClass *a0 __asm("a0") = classPtr;
  866.   register UBYTE *a1 __asm("a1") = classID;
  867.   register struct TagItem *a2 __asm("a2") = tagList;
  868.   __asm __volatile ("jsr a6@(-0x27c)"
  869.   : "=r" (_res)
  870.   : "r" (a6), "r" (a0), "r" (a1), "r" (a2)
  871.   : "a0","a1","a2","d0","d1", "memory");
  872.   return _res;
  873. }
  874. #ifndef NO_INLINE_STDARG
  875. #define NewObject(a0, a1, tags...) \
  876.   ({ struct TagItem _tags[] = { tags }; NewObjectA ((a0), (a1), _tags); })
  877. #endif /* not NO_INLINE_STDARG */
  878. static __inline APTR 
  879. NextObject (BASE_PAR_DECL APTR objectPtrPtr)
  880. {
  881.   BASE_EXT_DECL
  882.   register APTR  _res  __asm("d0");
  883.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  884.   register APTR a0 __asm("a0") = objectPtrPtr;
  885.   __asm __volatile ("jsr a6@(-0x29a)"
  886.   : "=r" (_res)
  887.   : "r" (a6), "r" (a0)
  888.   : "a0","a1","d0","d1", "memory");
  889.   return _res;
  890. }
  891. static __inline UBYTE *
  892. NextPubScreen (BASE_PAR_DECL struct Screen *screen,UBYTE *namebuf)
  893. {
  894.   BASE_EXT_DECL
  895.   register UBYTE * _res  __asm("d0");
  896.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  897.   register struct Screen *a0 __asm("a0") = screen;
  898.   register UBYTE *a1 __asm("a1") = namebuf;
  899.   __asm __volatile ("jsr a6@(-0x216)"
  900.   : "=r" (_res)
  901.   : "r" (a6), "r" (a0), "r" (a1)
  902.   : "a0","a1","d0","d1", "memory");
  903.   return _res;
  904. }
  905. static __inline struct RastPort *
  906. ObtainGIRPort (BASE_PAR_DECL struct GadgetInfo *gInfo)
  907. {
  908.   BASE_EXT_DECL
  909.   register struct RastPort * _res  __asm("d0");
  910.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  911.   register struct GadgetInfo *a0 __asm("a0") = gInfo;
  912.   __asm __volatile ("jsr a6@(-0x22e)"
  913.   : "=r" (_res)
  914.   : "r" (a6), "r" (a0)
  915.   : "a0","a1","d0","d1", "memory");
  916.   return _res;
  917. }
  918. static __inline void 
  919. OffGadget (BASE_PAR_DECL struct Gadget *gadget,struct Window *window,struct Requester *requester)
  920. {
  921.   BASE_EXT_DECL
  922.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  923.   register struct Gadget *a0 __asm("a0") = gadget;
  924.   register struct Window *a1 __asm("a1") = window;
  925.   register struct Requester *a2 __asm("a2") = requester;
  926.   __asm __volatile ("jsr a6@(-0xae)"
  927.   : /* no output */
  928.   : "r" (a6), "r" (a0), "r" (a1), "r" (a2)
  929.   : "a0","a1","a2","d0","d1", "memory");
  930. }
  931. static __inline void 
  932. OffMenu (BASE_PAR_DECL struct Window *window,unsigned long menuNumber)
  933. {
  934.   BASE_EXT_DECL
  935.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  936.   register struct Window *a0 __asm("a0") = window;
  937.   register unsigned long d0 __asm("d0") = menuNumber;
  938.   __asm __volatile ("jsr a6@(-0xb4)"
  939.   : /* no output */
  940.   : "r" (a6), "r" (a0), "r" (d0)
  941.   : "a0","a1","d0","d1", "memory");
  942. }
  943. static __inline void 
  944. OnGadget (BASE_PAR_DECL struct Gadget *gadget,struct Window *window,struct Requester *requester)
  945. {
  946.   BASE_EXT_DECL
  947.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  948.   register struct Gadget *a0 __asm("a0") = gadget;
  949.   register struct Window *a1 __asm("a1") = window;
  950.   register struct Requester *a2 __asm("a2") = requester;
  951.   __asm __volatile ("jsr a6@(-0xba)"
  952.   : /* no output */
  953.   : "r" (a6), "r" (a0), "r" (a1), "r" (a2)
  954.   : "a0","a1","a2","d0","d1", "memory");
  955. }
  956. static __inline void 
  957. OnMenu (BASE_PAR_DECL struct Window *window,unsigned long menuNumber)
  958. {
  959.   BASE_EXT_DECL
  960.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  961.   register struct Window *a0 __asm("a0") = window;
  962.   register unsigned long d0 __asm("d0") = menuNumber;
  963.   __asm __volatile ("jsr a6@(-0xc0)"
  964.   : /* no output */
  965.   : "r" (a6), "r" (a0), "r" (d0)
  966.   : "a0","a1","d0","d1", "memory");
  967. }
  968. static __inline void 
  969. OpenIntuition (BASE_PAR_DECL0)
  970. {
  971.   BASE_EXT_DECL
  972.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  973.   __asm __volatile ("jsr a6@(-0x1e)"
  974.   : /* no output */
  975.   : "r" (a6)
  976.   : "a0","a1","d0","d1", "memory");
  977. }
  978. static __inline struct Screen *
  979. OpenScreen (BASE_PAR_DECL struct NewScreen *newScreen)
  980. {
  981.   BASE_EXT_DECL
  982.   register struct Screen * _res  __asm("d0");
  983.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  984.   register struct NewScreen *a0 __asm("a0") = newScreen;
  985.   __asm __volatile ("jsr a6@(-0xc6)"
  986.   : "=r" (_res)
  987.   : "r" (a6), "r" (a0)
  988.   : "a0","a1","d0","d1", "memory");
  989.   return _res;
  990. }
  991. static __inline struct Screen *
  992. OpenScreenTagList (BASE_PAR_DECL struct NewScreen *newScreen,struct TagItem *tagList)
  993. {
  994.   BASE_EXT_DECL
  995.   register struct Screen * _res  __asm("d0");
  996.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  997.   register struct NewScreen *a0 __asm("a0") = newScreen;
  998.   register struct TagItem *a1 __asm("a1") = tagList;
  999.   __asm __volatile ("jsr a6@(-0x264)"
  1000.   : "=r" (_res)
  1001.   : "r" (a6), "r" (a0), "r" (a1)
  1002.   : "a0","a1","d0","d1", "memory");
  1003.   return _res;
  1004. }
  1005. #ifndef NO_INLINE_STDARG
  1006. #define OpenScreenTags(a0, tags...) \
  1007.   ({ struct TagItem _tags[] = { tags }; OpenScreenTagList ((a0), _tags); })
  1008. #endif /* not NO_INLINE_STDARG */
  1009. static __inline struct Window *
  1010. OpenWindow (BASE_PAR_DECL struct NewWindow *newWindow)
  1011. {
  1012.   BASE_EXT_DECL
  1013.   register struct Window * _res  __asm("d0");
  1014.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1015.   register struct NewWindow *a0 __asm("a0") = newWindow;
  1016.   __asm __volatile ("jsr a6@(-0xcc)"
  1017.   : "=r" (_res)
  1018.   : "r" (a6), "r" (a0)
  1019.   : "a0","a1","d0","d1", "memory");
  1020.   return _res;
  1021. }
  1022. static __inline struct Window *
  1023. OpenWindowTagList (BASE_PAR_DECL struct NewWindow *newWindow,struct TagItem *tagList)
  1024. {
  1025.   BASE_EXT_DECL
  1026.   register struct Window * _res  __asm("d0");
  1027.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1028.   register struct NewWindow *a0 __asm("a0") = newWindow;
  1029.   register struct TagItem *a1 __asm("a1") = tagList;
  1030.   __asm __volatile ("jsr a6@(-0x25e)"
  1031.   : "=r" (_res)
  1032.   : "r" (a6), "r" (a0), "r" (a1)
  1033.   : "a0","a1","d0","d1", "memory");
  1034.   return _res;
  1035. }
  1036. #ifndef NO_INLINE_STDARG
  1037. #define OpenWindowTags(a0, tags...) \
  1038.   ({ struct TagItem _tags[] = { tags }; OpenWindowTagList ((a0), _tags); })
  1039. #endif /* not NO_INLINE_STDARG */
  1040. static __inline ULONG 
  1041. OpenWorkBench (BASE_PAR_DECL0)
  1042. {
  1043.   BASE_EXT_DECL
  1044.   register ULONG  _res  __asm("d0");
  1045.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1046.   __asm __volatile ("jsr a6@(-0xd2)"
  1047.   : "=r" (_res)
  1048.   : "r" (a6)
  1049.   : "a0","a1","d0","d1", "memory");
  1050.   return _res;
  1051. }
  1052. static __inline BOOL 
  1053. PointInImage (BASE_PAR_DECL unsigned long point,struct Image *image)
  1054. {
  1055.   BASE_EXT_DECL
  1056.   register BOOL  _res  __asm("d0");
  1057.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1058.   register unsigned long d0 __asm("d0") = point;
  1059.   register struct Image *a0 __asm("a0") = image;
  1060.   __asm __volatile ("jsr a6@(-0x270)"
  1061.   : "=r" (_res)
  1062.   : "r" (a6), "r" (d0), "r" (a0)
  1063.   : "a0","a1","d0","d1", "memory");
  1064.   return _res;
  1065. }
  1066. static __inline void 
  1067. PrintIText (BASE_PAR_DECL struct RastPort *rp,struct IntuiText *iText,long left,long top)
  1068. {
  1069.   BASE_EXT_DECL
  1070.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1071.   register struct RastPort *a0 __asm("a0") = rp;
  1072.   register struct IntuiText *a1 __asm("a1") = iText;
  1073.   register long d0 __asm("d0") = left;
  1074.   register long d1 __asm("d1") = top;
  1075.   __asm __volatile ("jsr a6@(-0xd8)"
  1076.   : /* no output */
  1077.   : "r" (a6), "r" (a0), "r" (a1), "r" (d0), "r" (d1)
  1078.   : "a0","a1","d0","d1", "memory");
  1079. }
  1080. static __inline UWORD 
  1081. PubScreenStatus (BASE_PAR_DECL struct Screen *screen,unsigned long statusFlags)
  1082. {
  1083.   BASE_EXT_DECL
  1084.   register UWORD  _res  __asm("d0");
  1085.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1086.   register struct Screen *a0 __asm("a0") = screen;
  1087.   register unsigned long d0 __asm("d0") = statusFlags;
  1088.   __asm __volatile ("jsr a6@(-0x228)"
  1089.   : "=r" (_res)
  1090.   : "r" (a6), "r" (a0), "r" (d0)
  1091.   : "a0","a1","d0","d1", "memory");
  1092.   return _res;
  1093. }
  1094. static __inline LONG 
  1095. QueryOverscan (BASE_PAR_DECL unsigned long displayID,struct Rectangle *rect,long oScanType)
  1096. {
  1097.   BASE_EXT_DECL
  1098.   register LONG  _res  __asm("d0");
  1099.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1100.   register unsigned long a0 __asm("a0") = displayID;
  1101.   register struct Rectangle *a1 __asm("a1") = rect;
  1102.   register long d0 __asm("d0") = oScanType;
  1103.   __asm __volatile ("jsr a6@(-0x1da)"
  1104.   : "=r" (_res)
  1105.   : "r" (a6), "r" (a0), "r" (a1), "r" (d0)
  1106.   : "a0","a1","d0","d1", "memory");
  1107.   return _res;
  1108. }
  1109. static __inline void 
  1110. RefreshGList (BASE_PAR_DECL struct Gadget *gadgets,struct Window *window,struct Requester *requester,long numGad)
  1111. {
  1112.   BASE_EXT_DECL
  1113.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1114.   register struct Gadget *a0 __asm("a0") = gadgets;
  1115.   register struct Window *a1 __asm("a1") = window;
  1116.   register struct Requester *a2 __asm("a2") = requester;
  1117.   register long d0 __asm("d0") = numGad;
  1118.   __asm __volatile ("jsr a6@(-0x1b0)"
  1119.   : /* no output */
  1120.   : "r" (a6), "r" (a0), "r" (a1), "r" (a2), "r" (d0)
  1121.   : "a0","a1","a2","d0","d1", "memory");
  1122. }
  1123. static __inline void 
  1124. RefreshGadgets (BASE_PAR_DECL struct Gadget *gadgets,struct Window *window,struct Requester *requester)
  1125. {
  1126.   BASE_EXT_DECL
  1127.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1128.   register struct Gadget *a0 __asm("a0") = gadgets;
  1129.   register struct Window *a1 __asm("a1") = window;
  1130.   register struct Requester *a2 __asm("a2") = requester;
  1131.   __asm __volatile ("jsr a6@(-0xde)"
  1132.   : /* no output */
  1133.   : "r" (a6), "r" (a0), "r" (a1), "r" (a2)
  1134.   : "a0","a1","a2","d0","d1", "memory");
  1135. }
  1136. static __inline void 
  1137. RefreshWindowFrame (BASE_PAR_DECL struct Window *window)
  1138. {
  1139.   BASE_EXT_DECL
  1140.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1141.   register struct Window *a0 __asm("a0") = window;
  1142.   __asm __volatile ("jsr a6@(-0x1c8)"
  1143.   : /* no output */
  1144.   : "r" (a6), "r" (a0)
  1145.   : "a0","a1","d0","d1", "memory");
  1146. }
  1147. static __inline void 
  1148. ReleaseGIRPort (BASE_PAR_DECL struct RastPort *rp)
  1149. {
  1150.   BASE_EXT_DECL
  1151.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1152.   register struct RastPort *a0 __asm("a0") = rp;
  1153.   __asm __volatile ("jsr a6@(-0x234)"
  1154.   : /* no output */
  1155.   : "r" (a6), "r" (a0)
  1156.   : "a0","a1","d0","d1", "memory");
  1157. }
  1158. static __inline void 
  1159. RemakeDisplay (BASE_PAR_DECL0)
  1160. {
  1161.   BASE_EXT_DECL
  1162.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1163.   __asm __volatile ("jsr a6@(-0x180)"
  1164.   : /* no output */
  1165.   : "r" (a6)
  1166.   : "a0","a1","d0","d1", "memory");
  1167. }
  1168. static __inline void 
  1169. RemoveClass (BASE_PAR_DECL struct IClass *classPtr)
  1170. {
  1171.   BASE_EXT_DECL
  1172.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1173.   register struct IClass *a0 __asm("a0") = classPtr;
  1174.   __asm __volatile ("jsr a6@(-0x2c4)"
  1175.   : /* no output */
  1176.   : "r" (a6), "r" (a0)
  1177.   : "a0","a1","d0","d1", "memory");
  1178. }
  1179. static __inline UWORD 
  1180. RemoveGList (BASE_PAR_DECL struct Window *remPtr,struct Gadget *gadget,long numGad)
  1181. {
  1182.   BASE_EXT_DECL
  1183.   register UWORD  _res  __asm("d0");
  1184.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1185.   register struct Window *a0 __asm("a0") = remPtr;
  1186.   register struct Gadget *a1 __asm("a1") = gadget;
  1187.   register long d0 __asm("d0") = numGad;
  1188.   __asm __volatile ("jsr a6@(-0x1bc)"
  1189.   : "=r" (_res)
  1190.   : "r" (a6), "r" (a0), "r" (a1), "r" (d0)
  1191.   : "a0","a1","d0","d1", "memory");
  1192.   return _res;
  1193. }
  1194. static __inline UWORD 
  1195. RemoveGadget (BASE_PAR_DECL struct Window *window,struct Gadget *gadget)
  1196. {
  1197.   BASE_EXT_DECL
  1198.   register UWORD  _res  __asm("d0");
  1199.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1200.   register struct Window *a0 __asm("a0") = window;
  1201.   register struct Gadget *a1 __asm("a1") = gadget;
  1202.   __asm __volatile ("jsr a6@(-0xe4)"
  1203.   : "=r" (_res)
  1204.   : "r" (a6), "r" (a0), "r" (a1)
  1205.   : "a0","a1","d0","d1", "memory");
  1206.   return _res;
  1207. }
  1208. static __inline void 
  1209. ReportMouse (BASE_PAR_DECL long flag,struct Window *window)
  1210. {
  1211.   BASE_EXT_DECL
  1212.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1213.   register long d0 __asm("d0") = flag;
  1214.   register struct Window *a0 __asm("a0") = window;
  1215.   __asm __volatile ("jsr a6@(-0xea)"
  1216.   : /* no output */
  1217.   : "r" (a6), "r" (d0), "r" (a0)
  1218.   : "a0","a1","d0","d1", "memory");
  1219. }
  1220. static __inline BOOL 
  1221. Request (BASE_PAR_DECL struct Requester *requester,struct Window *window)
  1222. {
  1223.   BASE_EXT_DECL
  1224.   register BOOL  _res  __asm("d0");
  1225.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1226.   register struct Requester *a0 __asm("a0") = requester;
  1227.   register struct Window *a1 __asm("a1") = window;
  1228.   __asm __volatile ("jsr a6@(-0xf0)"
  1229.   : "=r" (_res)
  1230.   : "r" (a6), "r" (a0), "r" (a1)
  1231.   : "a0","a1","d0","d1", "memory");
  1232.   return _res;
  1233. }
  1234. static __inline BOOL 
  1235. ResetMenuStrip (BASE_PAR_DECL struct Window *window,struct Menu *menu)
  1236. {
  1237.   BASE_EXT_DECL
  1238.   register BOOL  _res  __asm("d0");
  1239.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1240.   register struct Window *a0 __asm("a0") = window;
  1241.   register struct Menu *a1 __asm("a1") = menu;
  1242.   __asm __volatile ("jsr a6@(-0x2be)"
  1243.   : "=r" (_res)
  1244.   : "r" (a6), "r" (a0), "r" (a1)
  1245.   : "a0","a1","d0","d1", "memory");
  1246.   return _res;
  1247. }
  1248. static __inline void 
  1249. RethinkDisplay (BASE_PAR_DECL0)
  1250. {
  1251.   BASE_EXT_DECL
  1252.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1253.   __asm __volatile ("jsr a6@(-0x186)"
  1254.   : /* no output */
  1255.   : "r" (a6)
  1256.   : "a0","a1","d0","d1", "memory");
  1257. }
  1258. static __inline void 
  1259. ScreenDepth (BASE_PAR_DECL struct Screen *screen,unsigned long flags,APTR reserved)
  1260. {
  1261.   BASE_EXT_DECL
  1262.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1263.   register struct Screen *a0 __asm("a0") = screen;
  1264.   register unsigned long d0 __asm("d0") = flags;
  1265.   register APTR a1 __asm("a1") = reserved;
  1266.   __asm __volatile ("jsr a6@(-0x312)"
  1267.   : /* no output */
  1268.   : "r" (a6), "r" (a0), "r" (d0), "r" (a1)
  1269.   : "a0","a1","d0","d1", "memory");
  1270. }
  1271. static __inline void 
  1272. ScreenPosition (BASE_PAR_DECL struct Screen *screen,unsigned long flags,long x1,long y1,long x2,long y2)
  1273. {
  1274.   BASE_EXT_DECL
  1275.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1276.   register struct Screen *a0 __asm("a0") = screen;
  1277.   register unsigned long d0 __asm("d0") = flags;
  1278.   register long d1 __asm("d1") = x1;
  1279.   register long d2 __asm("d2") = y1;
  1280.   register long d3 __asm("d3") = x2;
  1281.   register long d4 __asm("d4") = y2;
  1282.   __asm __volatile ("jsr a6@(-0x318)"
  1283.   : /* no output */
  1284.   : "r" (a6), "r" (a0), "r" (d0), "r" (d1), "r" (d2), "r" (d3), "r" (d4)
  1285.   : "a0","a1","d0","d1","d2","d3","d4", "memory");
  1286. }
  1287. static __inline void 
  1288. ScreenToBack (BASE_PAR_DECL struct Screen *screen)
  1289. {
  1290.   BASE_EXT_DECL
  1291.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1292.   register struct Screen *a0 __asm("a0") = screen;
  1293.   __asm __volatile ("jsr a6@(-0xf6)"
  1294.   : /* no output */
  1295.   : "r" (a6), "r" (a0)
  1296.   : "a0","a1","d0","d1", "memory");
  1297. }
  1298. static __inline void 
  1299. ScreenToFront (BASE_PAR_DECL struct Screen *screen)
  1300. {
  1301.   BASE_EXT_DECL
  1302.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1303.   register struct Screen *a0 __asm("a0") = screen;
  1304.   __asm __volatile ("jsr a6@(-0xfc)"
  1305.   : /* no output */
  1306.   : "r" (a6), "r" (a0)
  1307.   : "a0","a1","d0","d1", "memory");
  1308. }
  1309. static __inline void 
  1310. ScrollWindowRaster (BASE_PAR_DECL struct Window *win,long dx,long dy,long xMin,long yMin,long xMax,long yMax)
  1311. {
  1312.   BASE_EXT_DECL
  1313.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1314.   register struct Window *a1 __asm("a1") = win;
  1315.   register long d0 __asm("d0") = dx;
  1316.   register long d1 __asm("d1") = dy;
  1317.   register long d2 __asm("d2") = xMin;
  1318.   register long d3 __asm("d3") = yMin;
  1319.   register long d4 __asm("d4") = xMax;
  1320.   register long d5 __asm("d5") = yMax;
  1321.   __asm __volatile ("jsr a6@(-0x31e)"
  1322.   : /* no output */
  1323.   : "r" (a6), "r" (a1), "r" (d0), "r" (d1), "r" (d2), "r" (d3), "r" (d4), "r" (d5)
  1324.   : "a0","a1","d0","d1","d2","d3","d4","d5", "memory");
  1325. }
  1326. static __inline ULONG 
  1327. SetAttrsA (BASE_PAR_DECL APTR object,struct TagItem *tagList)
  1328. {
  1329.   BASE_EXT_DECL
  1330.   register ULONG  _res  __asm("d0");
  1331.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1332.   register APTR a0 __asm("a0") = object;
  1333.   register struct TagItem *a1 __asm("a1") = tagList;
  1334.   __asm __volatile ("jsr a6@(-0x288)"
  1335.   : "=r" (_res)
  1336.   : "r" (a6), "r" (a0), "r" (a1)
  1337.   : "a0","a1","d0","d1", "memory");
  1338.   return _res;
  1339. }
  1340. #ifndef NO_INLINE_STDARG
  1341. #define SetAttrs(a0, tags...) \
  1342.   ({ struct TagItem _tags[] = { tags }; SetAttrsA ((a0), _tags); })
  1343. #endif /* not NO_INLINE_STDARG */
  1344. static __inline BOOL 
  1345. SetDMRequest (BASE_PAR_DECL struct Window *window,struct Requester *requester)
  1346. {
  1347.   BASE_EXT_DECL
  1348.   register BOOL  _res  __asm("d0");
  1349.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1350.   register struct Window *a0 __asm("a0") = window;
  1351.   register struct Requester *a1 __asm("a1") = requester;
  1352.   __asm __volatile ("jsr a6@(-0x102)"
  1353.   : "=r" (_res)
  1354.   : "r" (a6), "r" (a0), "r" (a1)
  1355.   : "a0","a1","d0","d1", "memory");
  1356.   return _res;
  1357. }
  1358. static __inline void 
  1359. SetDefaultPubScreen (BASE_PAR_DECL UBYTE *name)
  1360. {
  1361.   BASE_EXT_DECL
  1362.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1363.   register UBYTE *a0 __asm("a0") = name;
  1364.   __asm __volatile ("jsr a6@(-0x21c)"
  1365.   : /* no output */
  1366.   : "r" (a6), "r" (a0)
  1367.   : "a0","a1","d0","d1", "memory");
  1368. }
  1369. static __inline struct Hook *
  1370. SetEditHook (BASE_PAR_DECL struct Hook *hook)
  1371. {
  1372.   BASE_EXT_DECL
  1373.   register struct Hook * _res  __asm("d0");
  1374.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1375.   register struct Hook *a0 __asm("a0") = hook;
  1376.   __asm __volatile ("jsr a6@(-0x1ec)"
  1377.   : "=r" (_res)
  1378.   : "r" (a6), "r" (a0)
  1379.   : "a0","a1","d0","d1", "memory");
  1380.   return _res;
  1381. }
  1382. static __inline ULONG 
  1383. SetGadgetAttrsA (BASE_PAR_DECL struct Gadget *gadget,struct Window *window,struct Requester *requester,struct TagItem *tagList)
  1384. {
  1385.   BASE_EXT_DECL
  1386.   register ULONG  _res  __asm("d0");
  1387.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1388.   register struct Gadget *a0 __asm("a0") = gadget;
  1389.   register struct Window *a1 __asm("a1") = window;
  1390.   register struct Requester *a2 __asm("a2") = requester;
  1391.   register struct TagItem *a3 __asm("a3") = tagList;
  1392.   __asm __volatile ("jsr a6@(-0x294)"
  1393.   : "=r" (_res)
  1394.   : "r" (a6), "r" (a0), "r" (a1), "r" (a2), "r" (a3)
  1395.   : "a0","a1","a2","a3","d0","d1", "memory");
  1396.   return _res;
  1397. }
  1398. #ifndef NO_INLINE_STDARG
  1399. #define SetGadgetAttrs(a0, a1, a2, tags...) \
  1400.   ({ struct TagItem _tags[] = { tags }; SetGadgetAttrsA ((a0), (a1), (a2), _tags); })
  1401. #endif /* not NO_INLINE_STDARG */
  1402. static __inline BOOL 
  1403. SetMenuStrip (BASE_PAR_DECL struct Window *window,struct Menu *menu)
  1404. {
  1405.   BASE_EXT_DECL
  1406.   register BOOL  _res  __asm("d0");
  1407.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1408.   register struct Window *a0 __asm("a0") = window;
  1409.   register struct Menu *a1 __asm("a1") = menu;
  1410.   __asm __volatile ("jsr a6@(-0x108)"
  1411.   : "=r" (_res)
  1412.   : "r" (a6), "r" (a0), "r" (a1)
  1413.   : "a0","a1","d0","d1", "memory");
  1414.   return _res;
  1415. }
  1416. static __inline LONG 
  1417. SetMouseQueue (BASE_PAR_DECL struct Window *window,unsigned long queueLength)
  1418. {
  1419.   BASE_EXT_DECL
  1420.   register LONG  _res  __asm("d0");
  1421.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1422.   register struct Window *a0 __asm("a0") = window;
  1423.   register unsigned long d0 __asm("d0") = queueLength;
  1424.   __asm __volatile ("jsr a6@(-0x1f2)"
  1425.   : "=r" (_res)
  1426.   : "r" (a6), "r" (a0), "r" (d0)
  1427.   : "a0","a1","d0","d1", "memory");
  1428.   return _res;
  1429. }
  1430. static __inline void 
  1431. SetPointer (BASE_PAR_DECL struct Window *window,UWORD *pointer,long height,long width,long xOffset,long yOffset)
  1432. {
  1433.   BASE_EXT_DECL
  1434.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1435.   register struct Window *a0 __asm("a0") = window;
  1436.   register UWORD *a1 __asm("a1") = pointer;
  1437.   register long d0 __asm("d0") = height;
  1438.   register long d1 __asm("d1") = width;
  1439.   register long d2 __asm("d2") = xOffset;
  1440.   register long d3 __asm("d3") = yOffset;
  1441.   __asm __volatile ("jsr a6@(-0x10e)"
  1442.   : /* no output */
  1443.   : "r" (a6), "r" (a0), "r" (a1), "r" (d0), "r" (d1), "r" (d2), "r" (d3)
  1444.   : "a0","a1","d0","d1","d2","d3", "memory");
  1445. }
  1446. static __inline struct Preferences *
  1447. SetPrefs (BASE_PAR_DECL struct Preferences *preferences,long size,long inform)
  1448. {
  1449.   BASE_EXT_DECL
  1450.   register struct Preferences * _res  __asm("d0");
  1451.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1452.   register struct Preferences *a0 __asm("a0") = preferences;
  1453.   register long d0 __asm("d0") = size;
  1454.   register long d1 __asm("d1") = inform;
  1455.   __asm __volatile ("jsr a6@(-0x144)"
  1456.   : "=r" (_res)
  1457.   : "r" (a6), "r" (a0), "r" (d0), "r" (d1)
  1458.   : "a0","a1","d0","d1", "memory");
  1459.   return _res;
  1460. }
  1461. static __inline UWORD 
  1462. SetPubScreenModes (BASE_PAR_DECL unsigned long modes)
  1463. {
  1464.   BASE_EXT_DECL
  1465.   register UWORD  _res  __asm("d0");
  1466.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1467.   register unsigned long d0 __asm("d0") = modes;
  1468.   __asm __volatile ("jsr a6@(-0x222)"
  1469.   : "=r" (_res)
  1470.   : "r" (a6), "r" (d0)
  1471.   : "a0","a1","d0","d1", "memory");
  1472.   return _res;
  1473. }
  1474. static __inline void 
  1475. SetWindowPointerA (BASE_PAR_DECL struct Window *win,struct TagItem *taglist)
  1476. {
  1477.   BASE_EXT_DECL
  1478.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1479.   register struct Window *a0 __asm("a0") = win;
  1480.   register struct TagItem *a1 __asm("a1") = taglist;
  1481.   __asm __volatile ("jsr a6@(-0x330)"
  1482.   : /* no output */
  1483.   : "r" (a6), "r" (a0), "r" (a1)
  1484.   : "a0","a1","d0","d1", "memory");
  1485. }
  1486. static __inline void 
  1487. SetWindowTitles (BASE_PAR_DECL struct Window *window,UBYTE *windowTitle,UBYTE *screenTitle)
  1488. {
  1489.   BASE_EXT_DECL
  1490.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1491.   register struct Window *a0 __asm("a0") = window;
  1492.   register UBYTE *a1 __asm("a1") = windowTitle;
  1493.   register UBYTE *a2 __asm("a2") = screenTitle;
  1494.   __asm __volatile ("jsr a6@(-0x114)"
  1495.   : /* no output */
  1496.   : "r" (a6), "r" (a0), "r" (a1), "r" (a2)
  1497.   : "a0","a1","a2","d0","d1", "memory");
  1498. }
  1499. static __inline void 
  1500. ShowTitle (BASE_PAR_DECL struct Screen *screen,long showIt)
  1501. {
  1502.   BASE_EXT_DECL
  1503.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1504.   register struct Screen *a0 __asm("a0") = screen;
  1505.   register long d0 __asm("d0") = showIt;
  1506.   __asm __volatile ("jsr a6@(-0x11a)"
  1507.   : /* no output */
  1508.   : "r" (a6), "r" (a0), "r" (d0)
  1509.   : "a0","a1","d0","d1", "memory");
  1510. }
  1511. static __inline void 
  1512. SizeWindow (BASE_PAR_DECL struct Window *window,long dx,long dy)
  1513. {
  1514.   BASE_EXT_DECL
  1515.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1516.   register struct Window *a0 __asm("a0") = window;
  1517.   register long d0 __asm("d0") = dx;
  1518.   register long d1 __asm("d1") = dy;
  1519.   __asm __volatile ("jsr a6@(-0x120)"
  1520.   : /* no output */
  1521.   : "r" (a6), "r" (a0), "r" (d0), "r" (d1)
  1522.   : "a0","a1","d0","d1", "memory");
  1523. }
  1524. static __inline LONG 
  1525. SysReqHandler (BASE_PAR_DECL struct Window *window,ULONG *idcmpPtr,long waitInput)
  1526. {
  1527.   BASE_EXT_DECL
  1528.   register LONG  _res  __asm("d0");
  1529.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1530.   register struct Window *a0 __asm("a0") = window;
  1531.   register ULONG *a1 __asm("a1") = idcmpPtr;
  1532.   register long d0 __asm("d0") = waitInput;
  1533.   __asm __volatile ("jsr a6@(-0x258)"
  1534.   : "=r" (_res)
  1535.   : "r" (a6), "r" (a0), "r" (a1), "r" (d0)
  1536.   : "a0","a1","d0","d1", "memory");
  1537.   return _res;
  1538. }
  1539. static __inline BOOL 
  1540. TimedDisplayAlert (BASE_PAR_DECL unsigned long alertNumber,UBYTE *string,unsigned long height,unsigned long time)
  1541. {
  1542.   BASE_EXT_DECL
  1543.   register BOOL  _res  __asm("d0");
  1544.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1545.   register unsigned long d0 __asm("d0") = alertNumber;
  1546.   register UBYTE *a0 __asm("a0") = string;
  1547.   register unsigned long d1 __asm("d1") = height;
  1548.   register unsigned long a1 __asm("a1") = time;
  1549.   __asm __volatile ("jsr a6@(-0x336)"
  1550.   : "=r" (_res)
  1551.   : "r" (a6), "r" (d0), "r" (a0), "r" (d1), "r" (a1)
  1552.   : "a0","a1","d0","d1", "memory");
  1553.   return _res;
  1554. }
  1555. static __inline void 
  1556. UnlockIBase (BASE_PAR_DECL unsigned long ibLock)
  1557. {
  1558.   BASE_EXT_DECL
  1559.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1560.   register unsigned long a0 __asm("a0") = ibLock;
  1561.   __asm __volatile ("jsr a6@(-0x1a4)"
  1562.   : /* no output */
  1563.   : "r" (a6), "r" (a0)
  1564.   : "a0","a1","d0","d1", "memory");
  1565. }
  1566. static __inline void 
  1567. UnlockPubScreen (BASE_PAR_DECL UBYTE *name,struct Screen *screen)
  1568. {
  1569.   BASE_EXT_DECL
  1570.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1571.   register UBYTE *a0 __asm("a0") = name;
  1572.   register struct Screen *a1 __asm("a1") = screen;
  1573.   __asm __volatile ("jsr a6@(-0x204)"
  1574.   : /* no output */
  1575.   : "r" (a6), "r" (a0), "r" (a1)
  1576.   : "a0","a1","d0","d1", "memory");
  1577. }
  1578. static __inline void 
  1579. UnlockPubScreenList (BASE_PAR_DECL0)
  1580. {
  1581.   BASE_EXT_DECL
  1582.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1583.   __asm __volatile ("jsr a6@(-0x210)"
  1584.   : /* no output */
  1585.   : "r" (a6)
  1586.   : "a0","a1","d0","d1", "memory");
  1587. }
  1588. static __inline struct View *
  1589. ViewAddress (BASE_PAR_DECL0)
  1590. {
  1591.   BASE_EXT_DECL
  1592.   register struct View * _res  __asm("d0");
  1593.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1594.   __asm __volatile ("jsr a6@(-0x126)"
  1595.   : "=r" (_res)
  1596.   : "r" (a6)
  1597.   : "a0","a1","d0","d1", "memory");
  1598.   return _res;
  1599. }
  1600. static __inline struct ViewPort *
  1601. ViewPortAddress (BASE_PAR_DECL struct Window *window)
  1602. {
  1603.   BASE_EXT_DECL
  1604.   register struct ViewPort * _res  __asm("d0");
  1605.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1606.   register struct Window *a0 __asm("a0") = window;
  1607.   __asm __volatile ("jsr a6@(-0x12c)"
  1608.   : "=r" (_res)
  1609.   : "r" (a6), "r" (a0)
  1610.   : "a0","a1","d0","d1", "memory");
  1611.   return _res;
  1612. }
  1613. static __inline BOOL 
  1614. WBenchToBack (BASE_PAR_DECL0)
  1615. {
  1616.   BASE_EXT_DECL
  1617.   register BOOL  _res  __asm("d0");
  1618.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1619.   __asm __volatile ("jsr a6@(-0x150)"
  1620.   : "=r" (_res)
  1621.   : "r" (a6)
  1622.   : "a0","a1","d0","d1", "memory");
  1623.   return _res;
  1624. }
  1625. static __inline BOOL 
  1626. WBenchToFront (BASE_PAR_DECL0)
  1627. {
  1628.   BASE_EXT_DECL
  1629.   register BOOL  _res  __asm("d0");
  1630.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1631.   __asm __volatile ("jsr a6@(-0x156)"
  1632.   : "=r" (_res)
  1633.   : "r" (a6)
  1634.   : "a0","a1","d0","d1", "memory");
  1635.   return _res;
  1636. }
  1637. static __inline BOOL 
  1638. WindowLimits (BASE_PAR_DECL struct Window *window,long widthMin,long heightMin,unsigned long widthMax,unsigned long heightMax)
  1639. {
  1640.   BASE_EXT_DECL
  1641.   register BOOL  _res  __asm("d0");
  1642.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1643.   register struct Window *a0 __asm("a0") = window;
  1644.   register long d0 __asm("d0") = widthMin;
  1645.   register long d1 __asm("d1") = heightMin;
  1646.   register unsigned long d2 __asm("d2") = widthMax;
  1647.   register unsigned long d3 __asm("d3") = heightMax;
  1648.   __asm __volatile ("jsr a6@(-0x13e)"
  1649.   : "=r" (_res)
  1650.   : "r" (a6), "r" (a0), "r" (d0), "r" (d1), "r" (d2), "r" (d3)
  1651.   : "a0","a1","d0","d1","d2","d3", "memory");
  1652.   return _res;
  1653. }
  1654. static __inline void 
  1655. WindowToBack (BASE_PAR_DECL struct Window *window)
  1656. {
  1657.   BASE_EXT_DECL
  1658.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1659.   register struct Window *a0 __asm("a0") = window;
  1660.   __asm __volatile ("jsr a6@(-0x132)"
  1661.   : /* no output */
  1662.   : "r" (a6), "r" (a0)
  1663.   : "a0","a1","d0","d1", "memory");
  1664. }
  1665. static __inline void 
  1666. WindowToFront (BASE_PAR_DECL struct Window *window)
  1667. {
  1668.   BASE_EXT_DECL
  1669.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1670.   register struct Window *a0 __asm("a0") = window;
  1671.   __asm __volatile ("jsr a6@(-0x138)"
  1672.   : /* no output */
  1673.   : "r" (a6), "r" (a0)
  1674.   : "a0","a1","d0","d1", "memory");
  1675. }
  1676. static __inline void 
  1677. ZipWindow (BASE_PAR_DECL struct Window *window)
  1678. {
  1679.   BASE_EXT_DECL
  1680.   register struct IntuitionBase* a6 __asm("a6") = BASE_NAME;
  1681.   register struct Window *a0 __asm("a0") = window;
  1682.   __asm __volatile ("jsr a6@(-0x1f8)"
  1683.   : /* no output */
  1684.   : "r" (a6), "r" (a0)
  1685.   : "a0","a1","d0","d1", "memory");
  1686. }
  1687. #undef BASE_EXT_DECL
  1688. #undef BASE_PAR_DECL
  1689. #undef BASE_PAR_DECL0
  1690. #undef BASE_NAME
  1691.  
  1692. __END_DECLS
  1693.  
  1694. #endif /* _INLINE_INTUITION_H */
  1695.