	SECTION	rxcode,CODE
	XREF	_RexxBase

_LVOSetRexxPort		equ	-30
_LVOReceiveRexx		equ	-36
_LVOFreeRexxPort	equ	-42
_LVOSendRexxCmd		equ	-48
_LVOASyncRexxCmd	equ	-54
_LVOSyncRexxCmd		equ	-60
_LVOSetupResults	equ	-66

	XDEF	_SetRexxPort
_SetRexxPort:
	movea.l	_RexxBase,a6
	move.l	a5,-(sp)
	movem.l	8(sp),a1/a5
	jsr	_LVOSetRexxPort(a6)
	movea.l	(sp)+,a5
	rts

	XDEF	_FreeRexxPort
_FreeRexxPort:
	movea.l	_RexxBase,a6
	move.l	a5,-(sp)
	movea.l	8(sp),a5
	jsr	_LVOFreeRexxPort(a6)
	movea.l	(sp)+,a5
	rts

	XDEF	_SetupResults
_SetupResults:
	movea.l	_RexxBase,a6
	move.l	a5,-(sp)
	movem.l	8(sp),d0/d1/a0/a1/a5
	jsr	_LVOSetupResults(a6)
	movea.l	(sp)+,a5
	rts

	XDEF	_SendRexxCmd
_SendRexxCmd:
	movea.l	_RexxBase,a6
	movem.l	a2/a5,-(sp)
	movem.l	12(sp),d0/d1/a0/a1/a2/a5
	jsr	_LVOSendRexxCmd(a6)
dcmd	movem.l	(sp)+,a2/a5
DCM	move.l	a0,_RexxErrMsg	;store the returned msg (in case of error)
	rts

	XDEF	_ASyncRexxCmd
_ASyncRexxCmd:
	movea.l	_RexxBase,a6
	move.l	a5,-(sp)
	movem.l	8(sp),a0/a5
	jsr	_LVOASyncRexxCmd(a6)
	movea.l	(sp)+,a5
	bra.s	DCM

	XDEF	_SyncRexxCmd
_SyncRexxCmd:
	movea.l	_RexxBase,a6
	movem.l	a2/a5,-(sp)
	movem.l	12(sp),a0/a2/a5
	jsr	_LVOSyncRexxCmd(a6)
	bra.s	dcmd

	XDEF	_ReceiveRexx
_ReceiveRexx:
	movea.l	_RexxBase,a6
	move.l	a5,-(sp)
	movea.l	8(sp),a5
	jsr	_LVOReceiveRexx(a6)
	movea.l	(sp)+,a5
	rts

	SECTION	rxerr,DATA

	XDEF	_RexxErrMsg
_RexxErrMsg	dc.l	0
