]> git.lizzy.rs Git - plan9front.git/blob - sys/src/9/alphapc/initcode
merge
[plan9front.git] / sys / src / 9 / alphapc / initcode
1 #include "/sys/src/libc/9syscall/sys.h"
2
3 /*
4  *  we pass in the argument of the exec parameters as 0(FP)
5  */
6
7 TEXT    main(SB),$16
8
9         MOVQ    $setSB(SB), R29
10         MOVQ    $boot(SB), R0
11         ADDQ    $24, R30, R1    /* get a pointer to 0(FP) */
12         MOVL    R0, 8(R30)
13         MOVL    R1, 12(R30)
14         JSR     exec(SB)
15
16         MOVQ    $(1<<4), R0
17         MOVL    R0, 8(R30)
18         MOVQ    $RFORK, R0
19         CALL_PAL $0x83
20         MOVQ    $RFORK, R0
21         CALL_PAL $0x83
22         MOVQ    $RFORK, R0
23         CALL_PAL $0x83
24 again:
25         ADDL    $1, R1
26         MOVQ    $0, R0  /* print r1 */
27         CALL_PAL $0x83
28         MOVQ    $100000000, R2
29 foo:
30         SUBQ    $1, R2
31         BNE     R2, foo
32         MOVQ    $1000, R0
33         MOVL    R0, 8(R30)
34         MOVQ    $SLEEP, R0
35         CALL_PAL $0x83
36         JMP     again
37
38 TEXT    exec(SB), $0
39         MOVQ    $EXEC, R0
40         CALL_PAL $0x83
41         RET
42
43 DATA    boot+0(SB)/5,$"/boot"
44 DATA    boot+5(SB)/5,$"/boot"
45 DATA    bootv+0(SB)/4,$boot+6(SB)
46 GLOBL   boot+0(SB),$11
47 GLOBL   bootv+0(SB),$8