Dbg Heap
Dbg Heap
Macintosh · PDF
| Filename | dbg-heap.pdf |
|---|---|
| Size | 0.57 MB |
| Subsection | prototypes / 1985_YACC / firmware / yaccsbug |
| Downloads | 1 |
Contents
Filename:
Heap.TEXT
Modification History
type>
])
Abor·· t =:: f he Gp pr i n t... UJ /bc~c:kspc:tc:e
HT works w/heap mask
24-Sep-84
11-Cc:t-H4
8-Dec-84
Cf-u::u-;ged heclp d i sp i CU;J i i ne f orm(l t_
t·k~de B i oc~:J10 1•.Je NOT t4se sG=..Jed r·c;!J t i r1e GGtJress
. it
Tu ! E::~ ! zeCI
.-
: :
.-.. .
:
•MBadHeap-MText DO
1
t·iE i !;;ht
A2,DO
Pr8
t·JOt.JE. L
R1.:DO
B8H
BSR
Prff::;HX
the tuJo b ! oc:k Gd.dresses
H then spGces
#-i-' DO
Chec:kHeGp
point to current heap
!
SUB
He:::ip[h:;rtc~ ( R4 ) .: A 1
BufPtr.:RO
R2.iA2
t·10t.JE. L
AND.L
t·ict::kBC ·" DO
!""'!-.:
l...c.n
t·iOUE .L
ptr to first block
point to top of usGble memon::i
previous block ptr
ContHec~p
BLT
LSH
t..l~=;iBC (A i ) .: 00
DO~: AO
tnJdHeGp
#1_,00
see
b:.JdHeap
toi;tBC ( R 1) DO
#T n~;it·iask .: DO
;
4
RND.L
BEQ.S
Btu1 I . ::~
FreeBiock
BHA.S
Ne::{tChk
free b~oc:k
FreeBioe:k
BBA.S
r·!Ot.JE. L
LSB
H;:::1nd i e(A 1) .~DO
#i_.DO
BCS
b::~dHeGp
tnn
--r-
H1::1nd i e (A 1 >; DO
MOUE.L
0 <A'4.: DO . L >.: DO
m::.13 t~r poi n ·ter
CMP.L
BLT
DO .. RO
see i f pcis t mem1)rt:J
make sure handle iS right
t c•p
bc~~jHeap
SUBO~L
~8.,DO
Ct·1P .L
DO.iH1
BNE
badHe::.:p
NextChk
ViOUE.L
r·iOi...iE. L
t- .""'!.-:!'.:'!-. ::..• w 1 ~
AMD.L
ADD.L
r·11:-iskBC .-: D1
~-1...p::!£...h_. ~•• ii
n i
! .! ••~ ..:. !....: !
block size in DO
ca!c ptr to next b!ock
Cr-!P'.L
Dl.:RO
BLT
badHei:.:;p
bkL i m( A4 ) .: R 1
BNE
9et s i ze/tc~q
see if Gt end
ContHel~P
f'!Oi..JEQ
FlTS
·===========================================================================
·===========================================================================
po ~ n t to he*:4P
A4,D7
C:LH.L
A~ I oc:Ptr·(A4)
LEA
D1, D:::;
get size
t·1GskBC .: D 1
9et.. p1_r to second bi os::k
calc ptr to second block
ADD.L
BEQ
D7.=A4
bkL i m( R4 ) .= A i
Ad i osc:r-·c~m
AND.L
D2.=D4
t·ic:lskBC .= LC::
AMD.L
BEQ
#T c1:r~t·ic=isk .= D:3
Lef tFree
see if ;:At end
get size 2 isolated
iso!c:1t.ed
BPL
AMD.L
BEQ
BPL
#T1:J1;,Jt·1ct::k} D4
F: i gh ff ree
Ne).;:tOne
H:::rnd I e(AD) .: A:3
TCT
i
\ ._i ! . i...
0(A:3;D7 . L)
Bt·i I
Ne>~:tOne
~~~
if 1st is locked
~-=.:~~~-
fuh]r~d j e(A 1 :::.~ A.:3
O<A:3 ~t D?. L >
Me::-::tOne
see if 2nd is locked
see if master is negative
ADD.L
D2~~ D5
add right length to left lenqth
"T'·r·=
1
decrement bi:J 1 toor·d
as word count( left length)
pre dee:remer? t for DBF
SUBQ.L
Set
for rotc1te r i ';iht Gs if
A1
RDDQ.L
t·10l)E. L
~·10t}E. L
#2_.R1
RO_:A2
:-.u-i
A2 poi nt..s
:-:. ..-:
f.JO
t ef t
or~e
A:::; po~ nts to r- i i~ht one
n:J .in...::
RDD.L
Ct·1P . L
= AO + 2
po ~ tit to ne;-:: t !.O i as t toord
BLE . S
D1 .=D2
fiotLoop
see tuh i ch ctsst.HT!p t ~ on i s tr·ue
r· i i;fh t ~ s b i ;;Iger
EXG
AO.:A1
f:.}... L:
A2.~ .83
SuJ i tc:h c~ I ~ the pcd riters for. Ctf..her
d i rec t.. i Ot'"i
ri . ;;-1i.......iC'
1
!-.. .. :_
D1_:D4
Gc1c • rotates(right length)
ASR.L
# 1.: D4
..·.-.
:---
…
Showing first 3,000 characters of 12,079 total. Open the full document →