	Section	Main,Code

	;demo for using req-tools
	;by sharatt/LSD

	opt	c+
	
	IncDir	"dh0:Include/"
	include	Intuition/intuition.I
	Include	Intuition/Intuition_Lib.I
	Include	Libraries/dos_LIb.i
	Include	Libraries/Dos.i
	Include	Utility/Reqtools.i
	Include	Utility/Reqtools_lib.i
	Include	Exec/Exec_Lib.I
	Include	Exec/Exec.I

	;Include	Misc/EasyStart.i	

CALLREQ	Macro
	Move.l	_ReqBase,A6
	Jsr	_LVOrt\1(a6)
	Endm

	*-----------------------------------------------------------*
	
go:	Lea	DosName,A1		; Open Dos Library
	Moveq	#0,D0
	CALLEXEC	OpenLibrary
	Move.l 	D0,_DOSBase
	Beq	Error

	Lea	IntName,A1
	Moveq	#0,D0
	CALLEXEC	OpenLibrary
	Move.l	D0,_IntuitionBase
	Beq	CloseDos

	Lea	ReqName,A1		; Open reqtools library
	Moveq	#0,d0
	CALLEXEC	OpenLibrary
	Move.l	D0,_ReqBase
	Beq	CloseInt
	
	Move.l	#RT_REQINFO,D0	; Prepare requester for use
	Move.l 	#0,A0
	CALLREQ	AllocRequestA
	Move.l	D0,ReqInfoStructPtr

	Move.l	#RT_FILEREQ,D0
	Move.l	#0,A0
	CALLREQ	AllocRequestA
	Move.l	D0,ReqFileStructPtr

	*-----------------------------------------------------------*

	move.l	ReqFileStructPtr,a1	; filereq structure
	Lea	FR_Filename,a2	; filename
	Lea	FR_Title,a3		; title
	lea	FReqTagList,A0	; tag list
	CALLREQ	FileRequestA	; display file requester

	*-----------------------------------------------------------*

	Lea	AboutText,A1	; Text for body
	Lea	GadgetText,A2	; ok gadgets
	Lea	AboutValues,A4	; value list for %ld
	Move.l	ReqInfoStructPtr,A3
	Lea	AboutTagList,A0	; tag list
	CALLREQ	EZRequestA		; display requester
	
	*-----------------------------------------------------------*

Quit	Move.l	ReqInfoStructPtr,A1
	CALLREQ	FreeRequest		; Dealocate Requester 

	Move.l	ReqFileStructPtr,a1
	CALLREQ	FreeRequest		; Dealocate Requester 

CloseReq	Move.l	_ReqBase,A1
	CALLEXEC	CloseLibrary	; Close req library

CloseInt	Move.l	_IntuitionBase,A1
	CALLEXEC	CloseLibrary

	

CloseDos	Move.l	_DOSBase,A1
	CALLEXEC	CloseLibrary

	Moveq	#0,d0		; no return code
	Rts

Error	Moveq	#1,D0
	Rts

	*-----------------------------------------------------------*

AboutText	dc.b	"Grapevine HardDisk Install",10,10
	dc.b	"Version 1.0a",0
GadgetText	dc.b	"  OK  ",0

AboutTitle	Dc.b	"",0
	even
	
FR_Title	dc.b	"Save Data",0
FR_Filename	dc.b	"GVfile01.txt",0
	ds.b	108
	even

	*-----------------------------------------------------------*

AboutValues	dc.l	0

	*-----------------------------------------------------------*

AboutTagList
	Dc.l	RT_ReqPos
	Dc.l	REQPOS_CENTERSCR	

	Dc.l	RTEZ_ReqTitle
	Dc.l	AboutTitle

	Dc.l	RTEZ_Flags
	DC.l	EZREQF_CENTERTEXT

	DC.l	TAG_END

	*-----------------------------------------------------------*

FReqTagList

	Dc.l	RT_ReqPos
	Dc.l	REQPOS_CENTERSCR	

	dc.l	RTFI_Dir
	dc.l	reqdir
	
	dc.l	RTFI_MatchPat
	dc.l	reqpat
	

	dc.l	RTFI_Flags
	dc.l	FREQF_PATGAD+FREQF_SAVE

	dc.l	TAG_END

	*-----------------------------------------------------------*

ReqFileStructPtr	Dc.l	0
ReqInfoStructPtr	Dc.l	0

	*-----------------------------------------------------------*

_DOSBase		Dc.l	0
_ReqBase		Dc.l	0
_IntuitionBase	Dc.l	0

DosName	DOSNAME
IntName	INTNAME
ReqName	Dc.b	"reqtools.library",0
	Even

reqdir:	dc.b	"Dh0:",0
reqpat:	dc.b	"*",0
	
	*-----------------------------------------------------------*
	
	end

