sbrk.s 415 B

12345678910111213141516171819202122232425262728293031323334353637
  1. .sect .text; .sect .rom; .sect .data; .sect .bss
  2. .sect .text
  3. break = 17
  4. .define _sbrk
  5. .define _brk
  6. _sbrk:
  7. .data2 0x0000
  8. movl .limhp,r0
  9. tstl 4(ap)
  10. jeql 3f
  11. addl3 r0,4(ap),-(sp)
  12. bcs 1f
  13. pushl $1
  14. movl ap,r3
  15. movl sp,ap
  16. chmk $break
  17. bcc 2f
  18. 1:
  19. jmp cerror
  20. 2:
  21. movl .limhp,r0
  22. addl2 4(r3),.limhp
  23. 3:
  24. ret
  25. .define _brk
  26. _brk:
  27. .data2 0x0000
  28. chmk $break
  29. bcc 1f
  30. jmp cerror
  31. 1:
  32. movl 4(ap),.limhp
  33. clrl r0
  34. ret