home *** CD-ROM | disk | FTP | other *** search
- ;;; libface.c
- ;
- ; DESCRIPTION:
- ; ===========
- ;
- ; This is the skeleton for an Amiga Exec library.
- ; This version is written for Aztec C. It is based on the example
- ; library by Jim Mackraz who got some stuff from Neil Katin.
- ; This library implements a protocol transfer library.
- ; All changes and additions by me.
- ;
- ; AUTHOR/DATE: W.G.J. Langeveld, February 1989.
- ; ============
- ;
- ;;;
-
- include 'exec/types.i'
-
- setup macro
- movem.l d2/d3/d4-d7/a2-a6,-(sp)
- jsr _geta4 ;set up a4 for small model
- endm
-
- push macro
- move.l \1,-(sp)
- endm
-
- fix macro
- ifc '\1',''
- mexit
- endc
- ifle \1-8
- addq.l #\1,sp
- endc
- ifgt \1-8
- lea \1(sp),sp
- endc
- endm
-
- restore macro
- fix \1
- movem.l (sp)+,d2/d3/d4-d7/a2-a6
- rts
- endm
-
- dseg
-
- public _libfunctab
- _libfunctab:
- dc.l XPRopen
- dc.l XPRclose
- dc.l XPRexpunge
- dc.l $0000
- dc.l XPRXProtocolCleanup
- dc.l XPRXProtocolSetup
- dc.l XPRXProtocolSend
- dc.l XPRXProtocolReceive
- ; dc.l XPRXProtocolHostMon
- ; dc.l XPRXProtocolUserMon
- dc.l $ffffffff
-
- cseg
-
- ;--- library functions
- public _XPROpen
- public _XPRClose
- public _XPRExpunge
- public _XProtocolCleanup
- public _XProtocolSetup
- public _XProtocolSend
- public _XProtocolReceive
- ; public _XProtocolHostMon
- ; public _XProtocolUserMon
-
- public _geta4
-
- XPRopen:
- setup
- push a6
- jsr _XPROpen
- restore 4
-
- XPRclose:
- setup
- push a6
- jsr _XPRClose
- restore 4
-
- XPRexpunge:
- setup
- push a6
- jsr _XPRExpunge
- restore 4
-
- XPRXProtocolCleanup:
- setup
- push a0
- jsr _XProtocolCleanup
- restore 4
-
- XPRXProtocolSetup:
- setup
- push a0
- jsr _XProtocolSetup
- restore 4
-
- XPRXProtocolSend:
- setup
- push a0
- jsr _XProtocolSend
- restore 4
-
- XPRXProtocolReceive:
- setup
- push a0
- jsr _XProtocolReceive
- restore 4
-
- ;XPRXProtocolHostMon:
- ; setup
- ; push d1
- ; push d0
- ; push a1
- ; push a0
- ; jsr _XProtocolHostMon
- ; restore 16
-
- ;XPRXProtocolUserMon:
- ; setup
- ; push d1
- ; push d0
- ; push a1
- ; push a0
- ; jsr _XProtocolUserMon
- ; restore 16
-
-
- end
-