;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