;****************************************************************
;*	Module name  :	AUTOB.ZSM				*
;*	Purpose      :	To Autoboot from a B Drive		*
;*	Created      :	12-08-89				* 
;*	Last edit    : 	12-08-89		Version 1.0	*
;* 	Copyright    :	G R Buckeridge				*
;****************************************************************

	ORG 100H	;Important (start of TPA)

	PUSH HL
	LD C,45		;SET BDOS ERROR MODE
	LD E,255	;return error mode
	CALL 5		;call BDOS
	
	LD C,13		;RESET DISK SYSTEM
	CALL 5
	
	LD C,14		;SELECT DISK
	LD E,1		;drive B
	CALL 5

	LD C,24		;RETURN LOGIN VECTOR
	CALL 5
	PUSH HL		;save it
	
	LD C,17		;SEARCH FOR FIRST
	LD DE,FCB	;occurance if file in FCB
	CALL 5
	PUSH AF		;save result

	LD C,45		;RESET ERROR MODE
	LD E,0		;to default mode
	CALL 5
	
	POP AF		;profile.sub found (result)
	POP HL		;login vector
	BIT 1,L		;drive B found?
	JR NZ,B.DRV	;YES?
	POP HL
	RET		;NO?

B.DRV	CP 4
	JR NC,NO.PRO	;if >3 profile.sub not found

	LD HL,FOUND-1	;copy FOUND to DMA
	CALL DMACPY
	POP HL
	LD C,47		;CHAIN TO PROGRAM
	LD E,255	;submit b:profile.sub
	CALL 5
	
NO.PRO	LD HL,NOT.FND-1	;copy NOT.FND to DMA
	CALL DMACPY
	POP HL
	LD C,47		;CHAIN TO PROGRAM
	LD E,255	;b:dir
	CALL 5
		
DMACPY	LD BC,7FH	;copy command line to DMA
LOOP	INC HL
	INC BC
	
	LD A,(HL)	;from source
	LD (BC),A	;to destination
	CP 0		;zero terminates line
	JP NZ,LOOP
	
	RET
	
FCB	DEFB 2			
	DEFB 'PROFILE SUB'
	DEFB 0

FOUND	DEFB 'B:!A:SUBMIT PROFILE'
	DEFB 0
	
NOT.FND	DEFB 'B:!A:DIR'
	DEFB 0

	END	
2			
	DEFB 'PROFILE SUB'
	DEFB 0

FOUND	DEFB 'B:!A:SUBMIT PROFILE'
	DEFB 0
	
NOT.FND	DEFB '