;par.asm - parsnag parallel support routines (c) 1987 John Hodgson

;compile using the Aztec AS assembler with -C and -D options

	public	_ParDispatch
	public  _ParExpunge

;entry : a1=IOExtPar, a6=device vector table

_ParDispatch:
	move.w	$1c(a1),d0		;fetch io_Command
	cmp.w	#3,d0			;CMD_WRITE?
	bne	.1			;skip if not
	movem.l	d1-d7/a2-a6,-(sp)	;save regs
	move.l	a1,-(sp)		;push ioblock ptr for C
	jsr	_NewBeginSub		;call it!
	move.l	(sp)+,a1		;restore regs
	movem.l	(sp)+,d1-d7/a2-a6
	rts				;back w/result in D0
.1
	move.l	_OldBeginIO,a0		;fetch original BeginIO vector
	jmp	(a0)			;routine will rts for us


;credit to Caroline Scheppner for this one :

_ParExpunge:
	moveq.l	#0,d0			;"no error"
	rts				;back w/o expunge

	public	_OldBeginIO
	public	_NewBeginSub
