home *** CD-ROM | disk | FTP | other *** search
- extrn .salloc
- ;
- ; Allocate space for (bc) bytes on stack, rounding up to next 16
- ; at exit (sp)+2 points to allocated space. See salloc.
- ; Exit with carry set if space requested too large (over 4k).
- ; Note that this does not check for stack overflow.
- ; a,f (sp)
- .sbcalloc::
- xra a
- sub c
- mvi a,010h; i.e. 4k
- sbb b
- rc; too large a request
- push h
- lxi h,15
- dad b; round up
- dad h
- dad h
- dad h
- dad h; shift into h
- mov a,h
- pop h
- jmp .salloc
- ≈