	SECTION	LibCode,CODE

	XDEF	_SysBase,_DOSBase,_IntuitionBase,_GfxBase,_LibBase

numOfFuncs	equ	  30
negsize		equ	numOfFuncs*6

	XREF	_LVOAddLibrary,_LVOOldOpenLibrary,_LVOCloseLibrary
	XREF	_LVOAllocMem,_LVOFreeMem,_LVORemove

VERSION		equ	1
REVISION	equ	0

return0:
	moveq	#0,d0
	rts

RomTag:
	dc.w	$4AFC
	dc.l	RomTag,endRom
	dc.b	0,VERSION,9,0
	dc.l	Lib_Name,Lib_Id,libstartup
endRom

libstartup:
	move.l	a3,-(sp)
	lea	SegList,a3
	move.l	a0,(a3)+
	move.l	a6,(a3)+
	lea	12(a3),a1
	jsr	_LVOOldOpenLibrary(a6)
	move.l	d0,(a3)+
	lea	20(a3),a1
	jsr	_LVOOldOpenLibrary(a6)
	move.l	d0,(a3)+
	lea	34(a3),a1
	jsr	_LVOOldOpenLibrary(a6)
	move.l	d0,(a3)
	lea	-50(a3),a1
	movea.l	a1,a3
	jsr	_LVOAddLibrary(a6)
tru	move.l	a3,d0
	movea.l	(sp)+,a3
	rts

myOpen:
	addq.w	#1,32(a6)
	Bclr.b	#3,14(a6)
	move.l	a6,d0
	rts

abe	lea	_SysBase,a3
	movea.l	(a3)+,a6
	movea.l	(a3)+,a1
	jsr	_LVOCloseLibrary(a6)
	movea.l	(a3)+,a1
	jsr	_LVOCloseLibrary(a6)
	movea.l	(a3),a1
	jsr	_LVOCloseLibrary(a6)

	suba.w	#50,a3
	movea.l	a3,a1
	jmp	_LVORemove(a6)
myClose:
	subq.w	#1,32(a6)
	bne.s	zro
	Bset.b	#3,14(a6)
	bne.s	exp
zro	moveq	#0,d0
	rts

myExpunge:
	Bset.b	#3,14(a6)
	move.w	32(a6),d1
	bne.s	zro
exp	move.l	a3,-(sp)
	bsr.s	abe
	move.l	34(a3),d0
	movea.l	a3,a6
	movea.l	(sp)+,a3
	rts

LibFuncTable:
	XREF	@GetPointDataList
	dc.w	$4EF9
	dc.l	@GetPointDataList
	XREF	@LoadUser
	dc.w	$4EF9
	dc.l	@LoadUser
	XREF	@CheckUser
	dc.w	$4EF9
	dc.l	@CheckUser
	XREF	@RefreshUser
	dc.w	$4EF9
	dc.l	@RefreshUser
	XREF	@RefreshStatus
	dc.w	$4EF9
	dc.l	@RefreshStatus
	XREF	@GetProtocolList
	dc.w	$4EF9
	dc.l	@GetProtocolList
	XREF	@GetConfig
	dc.w	$4EF9
	dc.l	@GetConfig
	XREF	@SendError
	dc.w	$4EF9
	dc.l	@SendError
	XREF	@GetBrettDataList
	dc.w	$4EF9
	dc.l	@GetBrettDataList
	XREF	@RemBrettDataList
	dc.w	$4EF9
	dc.l	@RemBrettDataList
	XREF	@EscapeString
	dc.w	$4EF9
	dc.l	@EscapeString
	XREF	@Compare
	dc.w	$4EF9
	dc.l	@Compare
	XREF	@PatternList
	dc.w	$4EF9
	dc.l	@PatternList
	XREF	@GetLineList
	dc.w	$4EF9
	dc.l	@GetLineList
	XREF	@RemList
	dc.w	$4EF9
	dc.l	@RemList
	XREF	@GetLine
	dc.w	$4EF9
	dc.l	@GetLine
	XREF	@StartPrg
	dc.w	$4EF9
	dc.l	@StartPrg
	XREF	@ShowPrgFH
	dc.w	$4EF9
	dc.l	@ShowPrgFH
	XREF	@DeleteAllFiles
	dc.w	$4EF9
	dc.l	@DeleteAllFiles
	XREF	@Append
	dc.w	$4EF9
	dc.l	@Append
	XREF	@MakePath
	dc.w	$4EF9
	dc.l	@MakePath
	XREF	@FindFreeFile
	dc.w	$4EF9
	dc.l	@FindFreeFile
	XREF	@GetFile
	dc.w	$4EF9
	dc.l	@GetFile
	XREF	@GetFileSize
	dc.w	$4EF9
	dc.l	@GetFileSize
	XREF	@COpen
	dc.w	$4EF9
	dc.l	@COpen
	XREF	@Exists
	dc.w	$4EF9
	dc.l	@Exists
	dc.w	$4EF9
	dc.l	return0
	dc.w	$4EF9
	dc.l	myExpunge
	dc.w	$4EF9
	dc.l	myClose
	dc.w	$4EF9
	dc.l	myOpen
_LibBase:
	dc.l	0,0
	dc.b	9,0
	dc.l	Lib_Name
	dc.b	6,0
	dc.w	negsize,54,VERSION,REVISION
	dc.l	Lib_Id,0
	dc.w	0
SegList	dc.l	0
_SysBase	dc.l	0
_DOSBase	dc.l	0
_IntuitionBase	dc.l	0
_GfxBase	dc.l	0

DOSName		dc.b	'dos.library',0
IntuitionName	dc.b	'intuition.library',0
GfxName		dc.b	'graphics.library',0

Lib_Name	dc.b	'zbbs.library',0
Lib_Id		dc.b	'Z-BBS V1.0 (07.10.1992)',13,10,0

	END
