_sbrk.s 279 B

123456789101112131415161718192021222324
  1. .sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
  2. .define __sbrk
  3. __sbrk:
  4. push bp
  5. mov bp,sp
  6. mov ax,4(bp)
  7. mov bx,(.limhp)
  8. add ax,bx
  9. mov cx,sp
  10. sub cx,128
  11. sub cx,ax
  12. jbe 1f
  13. mov (.limhp),ax
  14. sub ax,bx
  15. jbe 2f
  16. call xbrk
  17. 2:
  18. mov ax,bx
  19. pop bp
  20. ret
  21. 1:
  22. mov ax,0xc
  23. pop bp
  24. jmp cerror