home *** CD-ROM | disk | FTP | other *** search
- ;**************************************************************************
- ; This routine is stock standard from RKM
- ; B.R.M 1/2/88
- ;
- ;**************************************************************************
- section printer
-
- ; included files
-
- include "exec/types.i"
- include "exec/nodes.i"
- include "exec/lists.i"
- include "exec/memory.i"
- include "exec/ports.i"
- include "exec/libraries.i"
-
- include "macros.i"
-
- ; imported functions
-
- XREF_EXE CloseLibrary
- XREF_EXE OpenLibrary
- XREF _AbsExecBase
-
- XREF _PEDData
-
- ; exported globals
-
- XDEF _Init
- XDEF _Expunge
- XDEF _Open
- XDEF _Close
- XDEF _PD
- XDEF _PED
- XDEF _SysBase
- XDEF _DOSBase
- XDEF _GfxBase
- XDEF _IntuitionBase
-
- ;***********************************************
- section printer,data
- _PD DC.L 0
- _PED DC.L 0
- _SysBase DC.L 0
- _DOSBase DC.L 0
- _GfxBase DC.L 0
- _IntuitionBase DC.L 0
- ;***********************************************
- section printer,code
- _Init:
- move.l 4(a7),_PD
- lea _PEDData(pc),a0
- move.l a0,_PED
- move.l a6,-(a7)
- move.l _AbsExecBase,a6
- move.l a6,_SysBase
-
- ; open the dos library
- lea DLName(pc),a1
- moveq #0,d0
- CALLEXE OpenLibrary
- move.l d0,_DOSBase
- beq.l initDLErr
-
- ; open the graphics library
- lea GLName(pc),a1
- moveq #0,d0
- CALLEXE OpenLibrary
- move.l d0,_GfxBase
- beq.l initGLErr
-
- ; open the intuition library
- lea ILName(pc),a1
- moveq #0,d0
- CALLEXE OpenLibrary
- move.l d0,_IntuitionBase
- beq.l initILErr
-
- moveq #0,d0
-
- pdiRTS:
- move.l (a7)+,a6
- rts
-
- initPAErr:
- move.l _IntuitionBase,a1
- LINKEXE CloseLibrary
-
- initILErr:
- move.l _GfxBase,a1
- LINKEXE CloseLibrary
-
- initGLErr:
- move.l _DOSBase,a1
- LINKEXE CloseLibrary
-
- initDLErr:
- moveq #-1,d0
- bra.s pdiRTS
-
- ILName:
- dc.b 'intuition.library'
- dc.b 0
- DLName:
- dc.b 'dos.library'
- dc.b 0
- GLName:
- dc.b 'graphics.library'
- dc.b 0
- ds.w 0
-
-
- _Expunge:
- move.l _IntuitionBase,a1
- LINKEXE CloseLibrary
-
- move.l _GfxBase,a1
- LINKEXE CloseLibrary
-
- move.l _DOSBase,a1
- LINKEXE CloseLibrary
-
- _Open:
- moveq #0,d0
- rts
-
- _Close:
- moveq #0,d0
- rts
-
- end
-