44 lines · 675 B · Text
RawDownload
#include "/sys/src/libc/9syscall/sys.h" /* *  we pass in the argument of the exec parameters as 0(FP) */ TEXT	main(SB),$8 	MOVW	$setR30(SB), R30 	MOVW	$boot(SB), R1	ADD	$12, R29, R2	/* get a pointer to 0(FP) */	MOVW	R1, 4(R29)	MOVW	R2, 8(R29)	JAL	exec(SB) 	MOVW	$(1<<4), R1	MOVW	R1, 4(R29)	MOVW	$RFORK, R1	SYSCALL	MOVW	$RFORK, R1	SYSCALL	MOVW	$RFORK, R1	SYSCALLagain:	ADDU	$1, R2	MOVW	$0, R1	/* print r1 */	SYSCALL	MOVW	$5000000, R3foo:	SUBU	$1, R3	BNE	R3, foo	JMP	again TEXT	exec(SB), $0	MOVW	$EXEC, R1	SYSCALL	RET DATA	boot+0(SB)/5,$"/boot"DATA	boot+5(SB)/5,$"/boot"DATA	bootv+0(SB)/4,$boot+6(SB)GLOBL	boot+0(SB),$11GLOBL	bootv+0(SB),$8