static __inline void
rtUnlockWindow (BASE_PAR_DECL struct Window * win, APTR winlock)
{
  BASE_EXT_DECL
  register struct ReqToolsBase * a6 __asm("a6") = BASE_NAME;
  register struct Window * a0 __asm("a0") = win;
  register APTR a1 __asm("a1") = winlock;
  __asm __volatile ("jsr a6@(-162)"
  : /* no output */
  : "r" (a6), "r" (a0), "r" (a1)
  : "a0", "a1",  "memory");
}
static __inline APTR
rtLockWindow (BASE_PAR_DECL struct Window * win)
{
  BASE_EXT_DECL
  register APTR _res  __asm("d0");
  register struct ReqToolsBase * a6 __asm("a6") = BASE_NAME;
  register struct Window * a0 __asm("a0") = win;
  __asm __volatile ("jsr a6@(-156)"
  : "=r" (_res)
  : "r" (a6), "r" (a0)
  : "a0",  "memory");
  return _res;
}
static __inline void
rtCloseWindowSafely (BASE_PAR_DECL struct Window * win)
{
  BASE_EXT_DECL
  register struct ReqToolsBase * a6 __asm("a6") = BASE_NAME;
  register struct Window * a0 __asm("a0") = win;
  __asm __volatile ("jsr a6@(-150)"
  : /* no output */
  : "r" (a6), "r" (a0)
  : "a0",  "memory");
}
static __inline ULONG
rtScreenModeRequestA (BASE_PAR_DECL struct rtScreenModeRequester * screenmodereq, char * title, struct TagItem * taglist)
{
  BASE_EXT_DECL
  register ULONG _res  __asm("d0");
  register struct ReqToolsBase * a6 __asm("a6") = BASE_NAME;
  register struct rtScreenModeRequester * a1 __asm("a1") = screenmodereq;
  register char * a3 __asm("a3") = title;
  register struct TagItem * a0 __asm("a0") = taglist;
  __asm __volatile ("jsr a6@(-144)"
  : "=r" (_res)
  : "r" (a6), "r" (a1), "r" (a3), "r" (a0)
  : "a0", "a1", "a3",  "memory");
  return _res;
}
static __inline void
rtScreenToFrontSafely (BASE_PAR_DECL struct Screen * screen)
{
  BASE_EXT_DECL
  register struct ReqToolsBase * a6 __asm("a6") = BASE_NAME;
  register struct Screen * a0 __asm("a0") = screen;
  __asm __volatile ("jsr a6@(-138)"
  : /* no output */
  : "r" (a6), "r" (a0)
  : "a0",  "memory");
}
static __inline void
rtSpread (BASE_PAR_DECL ULONG * posarray, ULONG * sizearray, ULONG length, ULONG min, ULONG max, ULONG num)
{
  BASE_EXT_DECL
  register struct ReqToolsBase * a6 __asm("a6") = BASE_NAME;
  register ULONG * a0 __asm("a0") = posarray;
  register ULONG * a1 __asm("a1") = sizearray;
  register ULONG d0 __asm("d0") = length;
  register ULONG d1 __asm("d1") = min;
  register ULONG d2 __asm("d2") = max;
  register ULONG d3 __asm("d3") = num;
  __asm __volatile ("jsr a6@(-132)"
  : /* no output */
  : "r" (a6), "r" (a0), "r" (a1), "r" (d0), "r" (d1), "r" (d2), "r" (d3)
  : "a0", "a1", "d0", "d1", "d2", "d3",  "memory");
}
static __inline void
rtSetReqPosition (BASE_PAR_DECL ULONG reqpos, struct NewWindow * newwindow, struct Screen * screen, struct Window * window)
{
  BASE_EXT_DECL
  register struct ReqToolsBase * a6 __asm("a6") = BASE_NAME;
  register ULONG d0 __asm("d0") = reqpos;
  register struct NewWindow * a0 __asm("a0") = newwindow;
  register struct Screen * a1 __asm("a1") = screen;
  register struct Window * a2 __asm("a2") = window;
  __asm __volatile ("jsr a6@(-126)"
  : /* no output */
  : "r" (a6), "r" (d0), "r" (a0), "r" (a1), "r" (a2)
  : "a0", "a1", "a2", "d0",  "memory");
}
static __inline ULONG
rtGetVScreenSize (BASE_PAR_DECL struct Screen * screen, ULONG * widthptr, ULONG * heightptr)
{
  BASE_EXT_DECL
  register ULONG _res  __asm("d0");
  register struct ReqToolsBase * a6 __asm("a6") = BASE_NAME;
  register struct Screen * a0 __asm("a0") = screen;
  register ULONG * a1 __asm("a1") = widthptr;
  register ULONG * a2 __asm("a2") = heightptr;
  __asm __volatile ("jsr a6@(-120)"
  : "=r" (_res)
  : "r" (a6), "r" (a0), "r" (a1), "r" (a2)
  : "a0", "a1", "a2",  "memory");
  return _res;
}
static __inline void
rtSetWaitPointer (BASE_PAR_DECL struct Window * window)
{
  BASE_EXT_DECL
  register struct ReqToolsBase * a6 __asm("a6") = BASE_NAME;
  register struct Window * a0 __asm("a0") = window;
  __asm __volatile ("jsr a6@(-114)"
  : /* no output */
  : "r" (a6), "r" (a0)
  : "a0",  "memory");
}
static __inline ULONG
rtReqHandlerA (BASE_PAR_DECL struct rtHandlerInfo * handlerinfo, ULONG sigs, struct TagItem * taglist)
{
  BASE_EXT_DECL
  register ULONG _res  __asm("d0");
  register struct ReqToolsBase * a6 __asm("a6") = BASE_NAME;
  register struct rtHandlerInfo * a1 __asm("a1") = handlerinfo;
  register ULONG d0 __asm("d0") = sigs;
  register struct TagItem * a0 __asm("a0") = taglist;
  __asm __volatile ("jsr a6@(-108)"
  : "=r" (_res)
  : "r" (a6), "r" (a1), "r" (d0), "r" (a0)
  : "a0", "a1", "d0",  "memory");
  return _res;
}
static __inline LONG
rtPaletteRequestA (BASE_PAR_DECL char * title, struct rtReqInfo * reqinfo, struct TagItem * taglist)
{
  BASE_EXT_DECL
  register LONG _res  __asm("d0");
  register struct ReqToolsBase * a6 __asm("a6") = BASE_NAME;
  register char * a2 __asm("a2") = title;
  register struct rtReqInfo * a3 __asm("a3") = reqinfo;
  register struct TagItem * a0 __asm("a0") = taglist;
  __asm __volatile ("jsr a6@(-102)"
  : "=r" (_res)
  : "r" (a6), "r" (a2), "r" (a3), "r" (a0)
  : "a0", "a2", "a3",  "memory");
  return _res;
}
static __inline ULONG
rtFontRequestA (BASE_PAR_DECL struct rtFontRequester * fontreq, char * title, struct TagItem * taglist)
{
  BASE_EXT_DECL
  register ULONG _res  __asm("d0");
  register struct ReqToolsBase * a6 __asm("a6") = BASE_NAME;
  register struct rtFontRequester * a1 __asm("a1") = fontreq;
  register char * a3 __asm("a3") = title;
  register struct TagItem * a0 __asm("a0") = taglist;
  __asm __volatile ("jsr a6@(-96)"
  : "=r" (_res)
  : "r" (a6), "r" (a1), "r" (a3), "r" (a0)
  : "a0", "a1", "a3",  "memory");
  return _res;
}
static __inline ULONG
rtGetLongA (BASE_PAR_DECL ULONG * longptr, char * title, struct rtReqInfo * reqinfo, struct TagItem * taglist)
{
  BASE_EXT_DECL
  register ULONG _res  __asm("d0");
  register struct ReqToolsBase * a6 __asm("a6") = BASE_NAME;
  register ULONG * a1 __asm("a1") = longptr;
  register char * a2 __asm("a2") = title;
  register struct rtReqInfo * a3 __asm("a3") = reqinfo;
  register struct TagItem * a0 __asm("a0") = taglist;
  __asm __volatile ("jsr a6@(-78)"
  : "=r" (_res)
  : "r" (a6), "r" (a1), "r" (a2), "r" (a3), "r" (a0)
  : "a0", "a1", "a2", "a3",  "memory");
  return _res;
}
static __inline ULONG
rtGetStringA (BASE_PAR_DECL UBYTE * buffer, ULONG maxchars, char * title, struct rtReqInfo * reqinfo, struct TagItem * taglist)
{
  BASE_EXT_DECL
  register ULONG _res  __asm("d0");
  register struct ReqToolsBase * a6 __asm("a6") = BASE_NAME;
  register UBYTE * a1 __asm("a1") = buffer;
  register ULONG d0 __asm("d0") = maxchars;
  register char * a2 __asm("a2") = title;
  register struct rtReqInfo * a3 __asm("a3") = reqinfo;
  register struct TagItem * a0 __asm("a0") = taglist;
  __asm __volatile ("jsr a6@(-72)"
  : "=r" (_res)
  : "r" (a6), "r" (a1), "r" (d0), "r" (a2), "r" (a3), "r" (a0)
  : "a0", "a1", "a2", "a3", "d0",  "memory");
  return _res;
}
static __inline ULONG
rtEZRequestA (BASE_PAR_DECL char * bodyfmt, char * gadfmt, struct rtReqInfo * reqinfo, APTR argarray, struct TagItem * taglist)
{
  BASE_EXT_DECL
  register ULONG _res  __asm("d0");
  register struct ReqToolsBase * a6 __asm("a6") = BASE_NAME;
  register char * a1 __asm("a1") = bodyfmt;
  register char * a2 __asm("a2") = gadfmt;
  register struct rtReqInfo * a3 __asm("a3") = reqinfo;
  register APTR a4 __asm("a4") = argarray;
  register struct TagItem * a0 __asm("a0") = taglist;
  __asm __volatile ("jsr a6@(-66)"
  : "=r" (_res)
  : "r" (a6), "r" (a1), "r" (a2), "r" (a3), "r" (a4), "r" (a0)
  : "a0", "a1", "a2", "a3", "a4",  "memory");
  return _res;
}
static __inline void
rtFreeFileList (BASE_PAR_DECL struct rtFileList * filelist)
{
  BASE_EXT_DECL
  register struct ReqToolsBase * a6 __asm("a6") = BASE_NAME;
  register struct rtFileList * a0 __asm("a0") = filelist;
  __asm __volatile ("jsr a6@(-60)"
  : /* no output */
  : "r" (a6), "r" (a0)
  : "a0",  "memory");
}
static __inline APTR
rtFileRequestA (BASE_PAR_DECL struct rtFileRequester * filereq, char * file, char * title, struct TagItem * taglist)
{
  BASE_EXT_DECL
  register APTR _res  __asm("d0");
  register struct ReqToolsBase * a6 __asm("a6") = BASE_NAME;
  register struct rtFileRequester * a1 __asm("a1") = filereq;
  register char * a2 __asm("a2") = file;
  register char * a3 __asm("a3") = title;
  register struct TagItem * a0 __asm("a0") = taglist;
  __asm __volatile ("jsr a6@(-54)"
  : "=r" (_res)
  : "r" (a6), "r" (a1), "r" (a2), "r" (a3), "r" (a0)
  : "a0", "a1", "a2", "a3",  "memory");
  return _res;
}
static __inline LONG
rtChangeReqAttrA (BASE_PAR_DECL APTR req, struct TagItem * taglist)
{
  BASE_EXT_DECL
  register LONG _res  __asm("d0");
  register struct ReqToolsBase * a6 __asm("a6") = BASE_NAME;
  register APTR a1 __asm("a1") = req;
  register struct TagItem * a0 __asm("a0") = taglist;
  __asm __volatile ("jsr a6@(-48)"
  : "=r" (_res)
  : "r" (a6), "r" (a1), "r" (a0)
  : "a0", "a1",  "memory");
  return _res;
}
static __inline void
rtFreeReqBuffer (BASE_PAR_DECL APTR req)
{
  BASE_EXT_DECL
  register struct ReqToolsBase * a6 __asm("a6") = BASE_NAME;
  register APTR a1 __asm("a1") = req;
  __asm __volatile ("jsr a6@(-42)"
  : /* no output */
  : "r" (a6), "r" (a1)
  : "a1",  "memory");
}
static __inline void
rtFreeRequest (BASE_PAR_DECL APTR req)
{
  BASE_EXT_DECL
  register struct ReqToolsBase * a6 __asm("a6") = BASE_NAME;
  register APTR a1 __asm("a1") = req;
  __asm __volatile ("jsr a6@(-36)"
  : /* no output */
  : "r" (a6), "r" (a1)
  : "a1",  "memory");
}
static __inline APTR
rtAllocRequestA (BASE_PAR_DECL ULONG type, struct TagItem * taglist)
{
  BASE_EXT_DECL
  register APTR _res  __asm("d0");
  register struct ReqToolsBase * a6 __asm("a6") = BASE_NAME;
  register ULONG d0 __asm("d0") = type;
  register struct TagItem * a0 __asm("a0") = taglist;
  __asm __volatile ("jsr a6@(-30)"
  : "=r" (_res)
  : "r" (a6), "r" (d0), "r" (a0)
  : "a0", "d0",  "memory");
  return _res;
}
