; stub routines for the fastdir routines XDEF _xLock XDEF _xOpen XDEF _xLoadSeg XDEF _dosLock XDEF _dosOpen XDEF _dosLoadSeg XREF _NewLock XREF _oldLock XREF _oldLockd0 XREF _NewOpen XREF _oldOpen XREF _oldOpend0 XREF _NewLoadSeg XREF _oldLoadSeg XREF _oldLoadSegd0 XREF _DosBase XREF _geta4 ; vectoroffset->stub->NewRoutines->stub->routines ; Lock->jmp _xLock->jmp _NewLock->rts(Lock) ; NewLock->_dosLock->jmp (a5)->rts(NewLock) ; arp believes that the return from a dos function is not only in d0, ; but also in d1 _xLock: movem.l d2-d7/a0-a6,-(sp) move.l a7,a5 jsr _geta4 jsr _NewLock move.l d0,d1 movem.l (sp)+,d2-d7/a0-a6 rts _dosLock: move.l 4(sp),d1 move.l 8(sp),d2 movem.l d1-d7/a0-a6,-(sp) move.l _oldLock,a5 move.l _oldLockd0,d0 move.l _DosBase,a6 jsr (a5) movem.l (sp)+,d1-d7/a0-a6 rts ;****************************; _xOpen: movem.l d2-d7/a0-a6,-(sp) move.l a7,a5 jsr _geta4 jsr _NewOpen move.l d0,d1 movem.l (sp)+,d2-d7/a0-a6 rts _dosOpen: move.l 4(sp),d1 move.l 8(sp),d2 movem.l d1-d7/a0-a6,-(sp) move.l _oldOpen,a5 move.l _oldOpend0,d0 move.l _DosBase,a6 jsr (a5) movem.l (sp)+,d1-d7/a0-a6 rts ;****************************; _xLoadSeg: movem.l d2-d7/a0-a6,-(sp) move.l a7,a5 jsr _geta4 jsr _NewLoadSeg move.l d0,d1 movem.l (sp)+,d2-d7/a0-a6 rts _dosLoadSeg: move.l 4(sp),d1 movem.l d1-d7/a0-a6,-(sp) move.l _oldLoadSeg,a5 move.l _oldLoadSegd0,d0 move.l _DosBase,a6 jsr (a5) movem.l (sp)+,d1-d7/a0-a6 rts