
 *
 * Maxon C++ Library:
 *
 * Modul "startup"
 *
 * Jens Gelhar 24.11.93
 *

	; Export:
	xdef	__StartUp,_EXIT_0__Reply_StartuP_MessAge,_INIT_0_Get_StartuP_MessAge,StartupMessage

	; Import:
	xref	main_,_wbmain,__Writeflag

sysbase		=	4

Forbid		= -132
GetMsg		= -372
ReplyMsg	= -378
WaitPort	= -384

_INIT_0_Get_StartuP_MessAge:
	move.l	sysbase.w,a6
	move.l	$114(a6),a5      ; ThisTask
	tst.l	$AC(a5)
	bne.b	ret
	move.l	#__Writeflag,d0
	bne.b	ret
	lea	$5C(a5),a0
	move.l	a0,-(a7)
	jsr	WaitPort(a6)
	move.l	(a7)+,a0
	jsr	GetMsg(a6)
	move.l	d0,StartupMessage
ret	rts

__StartUp:
	move.l	StartupMessage,d0
	beq.b	.cli
	move.l	d0,-(a7)
	jsr	_wbmain
	addq.l	#4,a7
	moveq	#0,d0
	rts
.cli	jmp main_

_EXIT_0__Reply_StartuP_MessAge:
	move.l	StartupMessage,d2
	beq.b	ret
	move.l	sysbase.w,a6
	jsr	Forbid(a6)
	move.l	d2,a1
	jmp	ReplyMsg(a6)

	SECTION D,DATA

StartupMessage:	dc.l	0

	end

