main9p.s 586 B

12345678910111213141516171819202122232425262728293031
  1. #define NPRIVATES 16
  2. TEXT _mainp(SB), 1, $(16 + NPRIVATES*4)
  3. MOVL $a6base(SB), A6
  4. MOVL R0, _tos(SB) /* return value of sys exec!! */
  5. LEA p-64(SP),A0
  6. MOVL A0,_privates+0(SB)
  7. MOVL $16,R0
  8. MOVL R0,_nprivates+0(SB)
  9. BSR _profmain(SB)
  10. MOVL __prof+4(SB), __prof+0(SB)
  11. PEA inargv+0(FP)
  12. MOVL inargc-4(FP), TOS
  13. BSR main(SB)
  14. loop:
  15. PEA _exits<>+0(SB)
  16. BSR exits(SB)
  17. LEA _profin(SB), A0 /* force loading of profile */
  18. BRA loop
  19. TEXT _savearg(SB), 1, $0
  20. RTS
  21. TEXT _callpc(SB), 1, $0
  22. MOVL argp+0(FP), A0
  23. MOVL 4(A0), R0
  24. RTS
  25. DATA _exits<>+0(SB)/4, $"main"
  26. GLOBL _exits<>+0(SB), $5