;  s30  dual core
;     show two cores run different program
;     synchronise with waitx/sigx

.symbol
	stop		0
	print		1
	printc		2	
	cnt1		200
	cnt2		201
	
.code 0
	cid r3
	eq r2 r3 #0
	jt r2 count1
	jmp count2

:count1			; count 1..5
	mov r1 #0
	st r1 cnt1	
:loop1  waitx	
	ld r5 cnt1
	add r5 r5 #1
	st r5 cnt1
	trap r5 #print
	eq r6 r5 #5
	jf r6 loop1
	trap r0 #stop

:count2			; count 11..20
        nop
        nop
        nop
        nop		; delay
	mov r1 #10
	st r1 cnt2
:loop2	sigx #0
	ld r5 cnt2
	add r5 r5 #1
	st r5 cnt2
	mov r2 #43	; +
	trap r2 #printc
	trap r5 #print
	eq r6 r5 #20
	jf r6 loop2
	trap r0 #stop
.end


