Advertisement
Eeems

Untitled

Jul 2nd, 2011
191
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. ; Clears all memory accociated with a thread
  2. ; inputs    a  = Thread ID
  3. FreeThreadMem:
  4.     push af
  5.     push bc
  6.     push de
  7.     push hl
  8.     ld hl,UserRAM
  9.     ld d,a
  10. FTMLoop     ld a,(hl)
  11.         push hl
  12.         pop ix
  13.         cp d
  14.             call z,FreeMem
  15.         inc hl
  16.         ld b,(hl)
  17.         inc hl
  18.         ld c,(hl)
  19.         add hl,bc   ; jump to next section
  20.         inc hl
  21.         inc hl      ; skip the footer
  22.         ex de,hl    ; put the location in de
  23.         ld hl,-UserRAMEnd   ; get the end of UserRAM
  24.         add hl,de   ; compare
  25.         ex de,hl    ; put it back in hl
  26.             jr z,FTMLoop    ; loop again if
  27.             jr c,FTMLoop    ; hl < UserRAMEnd
  28.     pop hl
  29.     pop de
  30.     pop bc
  31.     pop af
  32.     ret
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement