home *** CD-ROM | disk | FTP | other *** search
/ The Fred Fish Collection 1.5 / ffcollection-1-5-1992-11.iso / ff_disks / 300-399 / ff348.lzh / FileIO / FileInterface.asm < prev    next >
Assembly Source File  |  1990-04-15  |  6KB  |  278 lines

  1.   SECTION FileIOCode,CODE
  2.   XREF    _RequesterBase  ;base variable as opened by the C application
  3.  
  4.   far code ;for Manx asm only
  5.   far data
  6.  
  7.   INCLUDE "FileIO.i"
  8.  
  9.       XDEF  _SetFileIOHandlers
  10. _SetFileIOHandlers:
  11.       movea.l   4(sp),a0     ;HandlerBlock
  12.       move.l    a2,-(sp)
  13.       lea       StartUpCode,a2
  14.       move.l    (a0)+,(a2)+
  15.       beq.s     n1
  16.       lea       StartHandler,a1
  17.       move.l    a1,-4(a0)
  18. n1    move.l    (a0)+,(a2)+
  19.       beq.s     n2
  20.       lea       DIHandler,a1
  21.       move.l    a1,-4(a0)
  22. n2    move.l    (a0)+,(a2)+
  23.       beq.s     n3
  24.       lea       GadgetHandler,a1
  25.       move.l    a1,-4(a0)
  26. n3    move.l    (a0)+,(a2)+
  27.       beq.s     n4
  28.       lea       KeyHandler,a1
  29.       move.l    a1,-4(a0)
  30. n4    move.l    (a0),(a2)
  31.       beq.s     n5
  32.       lea       MMHandler,a1
  33.       move.l    a1,(a0)
  34. n5    movea.l   (sp)+,a2
  35.       rts
  36.  
  37. DIHandler:
  38.      movea.l    DICode,a0
  39.      bra.s      handle
  40. MMHandler:
  41.      movea.l    MMCode,a0
  42.      bra.s      handle
  43. GadgetHandler:
  44.      movea.l    GadgetCode,a0
  45. handle:
  46.      movem.l    d0/d2/d5/d6/d7/a2/a3/a4,-(sp)
  47.      jsr        (a0)
  48.      movem.l    (sp)+,d1/d2/d5/d6/d7/a2/a3/a4
  49.      rts
  50. StartHandler:
  51.      movea.l    StartUpCode,a0
  52.      bra.s      handle
  53. KeyHandler:
  54.      movea.l    KeyCode,a0
  55.      bra.s      handle
  56.  
  57.       XDEF  _SetWaitPointer,__SetWaitPointer
  58. _SetWaitPointer:
  59.   movea.l _RequesterBase,a6
  60. __SetWaitPointer:
  61.   movea.l 4(sp),a0
  62.   jmp     _LVOSetWaitPointer(a6)
  63.  
  64.       XDEF   _AutoMessage,__AutoMessage
  65. _AutoMessage:
  66.   movea.l _RequesterBase,a6
  67. __AutoMessage:
  68.   move.l  4(sp),d0
  69.   movea.l 8(sp),a0
  70.   jmp     _LVOAutoMessage(a6)
  71.  
  72.       XDEF   _AutoMessageLen,__AutoMessageLen
  73. _AutoMessageLen:
  74.   movea.l _RequesterBase,a6
  75. __AutoMessageLen:
  76.   move.l  4(sp),d0
  77.   movea.l 8(sp),a0
  78.   move.l  12(sp),d1
  79.   jmp     _LVOAutoMessageLen(a6)
  80.  
  81.       XDEF _AutoFileMessage,__AutoFileMessage
  82. _AutoFileMessage:
  83.    movea.l _RequesterBase,a6
  84. __AutoFileMessage:
  85.    move.w  6(sp),d1
  86.    movea.l 8(sp),a0
  87.    jmp     _LVOAutoFileMessage(a6)
  88.  
  89.      XDEF _ResetBuffer,__ResetBuffer
  90. _ResetBuffer:
  91.    movea.l _RequesterBase,a6
  92. __ResetBuffer:
  93.    movea.l 4(sp),a0
  94.    move.b  11(sp),d0
  95.    jmp     _LVOResetBuffer(a6)
  96.  
  97.      XDEF _GetFileIO,__GetFileIO
  98. _GetFileIO:
  99.       movea.l _RequesterBase,a6
  100. __GetFileIO:
  101.       jmp     _LVOGetFileIO(a6)
  102.  
  103.    XDEF   _DoFileIO,__DoFileIO
  104. _DoFileIO:
  105.    movea.l _RequesterBase,a6
  106. __DoFileIO:
  107.    movea.l 4(sp),a0
  108.    movea.l 8(sp),a1
  109.    jmp     _LVODoFileIO(a6)
  110.  
  111.    XDEF   _DoFileIOWindow,__DoFileIOWindow
  112. _DoFileIOWindow:
  113.   movea.l _RequesterBase,a6
  114. __DoFileIOWindow:
  115.   movea.l 4(sp),a0
  116.   movea.l 8(sp),a1
  117.   jmp     _LVODoFileIOWindow(a6)
  118.  
  119.    XDEF   _GetFullPathname,__GetFullPathname
  120. _GetFullPathname:
  121.        movea.l _RequesterBase,a6
  122. __GetFullPathname:
  123.        movea.l 4(sp),a0
  124.        movea.l 8(sp),a1
  125.        jmp     _LVOGetFullPathname(a6)
  126.  
  127.      XDEF   _ReleaseFileIO,__ReleaseFileIO
  128. _ReleaseFileIO:
  129.        movea.l _RequesterBase,a6
  130. __ReleaseFileIO:
  131.        movea.l 4(sp),a1
  132.        jmp     _LVOReleaseFileIO(a6)
  133.  
  134.      XDEF _AutoPrompt3,__AutoPrompt3
  135. _AutoPrompt3:
  136.   movea.l _RequesterBase,a6
  137. __AutoPrompt3:
  138.   movem.l a2/a3,-(sp)
  139.   movea.l 12(sp),a1
  140.   movea.l 16(sp),a2
  141.   movea.l 20(sp),a3
  142.   movea.l 24(sp),a0
  143.   jsr     _LVOAutoPrompt3(a6)
  144.   movem.l (sp)+,a2/a3
  145.   rts
  146.  
  147.   XDEF _PromptUserEntry,__PromptUserEntry
  148. _PromptUserEntry:
  149.   movea.l  _RequesterBase,a6
  150. __PromptUserEntry:
  151.   move.l   a2,-(sp)
  152.   move.l   a3,-(sp)
  153.   movem.l  12(sp),d0/a0/a1/a2/a3
  154.   jsr      _LVOPromptUserEntry(a6)
  155.   movea.l  (sp)+,a3
  156.   movea.l  (sp)+,a2
  157.   rts
  158.  
  159.   XDEF _SetTitle,__SetTitle
  160. _SetTitle:
  161.   movea.l  _RequesterBase,a6
  162. __SetTitle:
  163.   move.l   a2,-(sp)
  164.   move.l   a3,-(sp)
  165.   movem.l  12(sp),a0/a1/a2/a3
  166.   jsr      _LVOSetTitle(a6)
  167.   movea.l  (sp)+,a3
  168.   movea.l  (sp)+,a2
  169.   rts
  170.  
  171.   XDEF _ResetTitle,__ResetTitle
  172. _ResetTitle:
  173.   movea.l  _RequesterBase,a6
  174. __ResetTitle:
  175.   move.l   a2,-(sp)
  176.   move.l   a3,-(sp)
  177.   movem.l  12(sp),a2/a3
  178.   jsr      _LVOResetTitle(a6)
  179.   movea.l  (sp)+,a3
  180.   movea.l  (sp)+,a2
  181.   rts
  182.  
  183.   XDEF _UserEntry,__UserEntry
  184. _UserEntry:
  185.   movea.l  _RequesterBase,a6
  186. __UserEntry:
  187.   move.l   a2,-(sp)
  188.   move.l   a3,-(sp)
  189.   movem.l  12(sp),d0/a0/a2/a3
  190.   jsr      _LVOUserEntry(a6)
  191.   movea.l  (sp)+,a3
  192.   movea.l  (sp)+,a2
  193.   rts
  194.  
  195.   XDEF _GetRawkey,__GetRawkey
  196. _GetRawkey:
  197.    movea.l  _RequesterBase,a6
  198. __GetRawkey:
  199.    move.l   a3,-(sp)
  200.    movea.l  4(sp),a3
  201.    jsr      _LVOGetRawkey(a6)
  202.    movea.l  (sp)+,a3
  203.    rts
  204.  
  205.   XDEF _DecodeRawkey,__DecodeRawkey
  206. _DecodeRawkey:
  207.    movea.l  _RequesterBase,a6
  208. __DecodeRawkey:
  209.    movea.l  4(sp),a1
  210.    move.l   8(sp),d0
  211.    jmp      _LVODecodeRawkey(a6)
  212.  
  213.   XDEF _TypeFilename,__TypeFilename
  214. _TypeFilename:
  215.    movea.l  _RequesterBase,a6
  216. __TypeFilename:
  217.    movea.l  4(sp),a0
  218.    movea.l  8(sp),a1
  219.    jmp      _LVOTypeFilename(a6)
  220.  
  221.   XDEF _ParseString,__ParseString
  222. _ParseString:
  223.    movea.l  _RequesterBase,a6
  224. __ParseString:
  225.    movea.l  4(sp),a0
  226.    movea.l  8(sp),a1
  227.    jmp      _LVOParseString(a6)
  228.  
  229.    XDEF __NewEntryList,_NewEntryList
  230. _NewEntryList:
  231.    movea.l  _RequesterBase,a6
  232. __NewEntryList:
  233.    movea.l  4(sp),a1
  234.    jmp      _LVONewEntryList(a6)
  235.  
  236.    XDEF __IsEntryThere,_IsEntryThere
  237. _IsEntryThere:
  238.    movea.l  _RequesterBase,a6
  239. __IsEntryThere:
  240.     movea.l    4(sp),a0
  241.    movea.l  8(sp),a1
  242.    jmp      _LVOIsEntryThere(a6)
  243.  
  244.    XDEF __AddEntry,_AddEntry
  245. _AddEntry:
  246.    movea.l  _RequesterBase,a6
  247. __AddEntry:
  248.    movem.l  4(sp),d1/a0/a1
  249.    jmp      _LVOAddEntry(a6)
  250.  
  251.    XDEF __RetrieveEntry,_RetrieveEntry
  252. _RetrieveEntry:
  253.    movea.l  _RequesterBase,a6
  254. __RetrieveEntry:
  255.    movem.l  4(sp),a0/a1
  256.    jmp      _LVORetrieveEntry(a6)
  257.  
  258.    XDEF __ClearEntries,_ClearEntries
  259. _ClearEntries:
  260.    movea.l  _RequesterBase,a6
  261. __ClearEntries:
  262.    jmp      _LVOClearEntries(a6)
  263.  
  264.     XDEF    __PutProjIcon,_PutProjIcon
  265. _PutProjIcon:
  266.     movea.l    _RequesterBase,a6
  267. __PutProjIcon:
  268.     movem.l    4(sp),a0/a1
  269.     jmp        _LVOPutProjIcon(a6)
  270.  
  271.   SECTION fin,DATA
  272.  
  273. StartUpCode dc.l 0
  274. DICode      dc.l 0
  275. GadgetCode  dc.l 0
  276. KeyCode     dc.l 0
  277. MMCode      dc.l 0
  278.