4 ; Dynamite workspace layout
12 ; --- Information about the Dynamite area ---
14 dyn_machine # 4 ;Machine version number
15 dyn_areaHandle # 0 ;Handle of dynamic area or...
16 dyn_oldChnArea # 4 ;Old ChangeDynArea address
17 dyn_areaBase # 0 ;Base addr of area or...
18 dyn_oldReadArea # 4 ;Old ReadDynArea address
19 dyn_oldValidate # 4 ;Old ValidateAddress vector
21 ; --- Variables for ReadDynamicArea hackery ---
23 dyn_switchBase # 4 ;Base of TaskManager module
24 dyn_switchSize # 4 ;Size of TaskManager module
25 dyn_wimpBase # 4 ;Base of WindowManager module
26 dyn_wimpSize # 4 ;Size of WindowManager module
28 ; --- Low-level heap details ---
30 dyn_areaSize # 4 ;Current size of area
31 dyn_sprSize # 4 ;Address of size of spr area
32 dyn_pageSize # 4 ;The page size of the machine
33 dyn_log2PageSize # 4 ;Make a good guess
34 dyn_pageCount # 4 ;Number of pages
36 ; --- Heap variables ---
38 dyn_heapSize # 4 ;Space actually used in heap
39 dyn_lockCount # 4 ;How often we've been locked
40 dyn_hpFlags # 4 ;Some interesting heap flags
42 hpFlag_tidy EQU (1<<0) ;The heap is nice and tidy
43 hpFlag_mSent EQU (1<<1) ;A message has been sent
45 ; --- Anchor allocation ---
47 dyn_ancTable # 4 ;Pointer to the free handles
48 dyn_ancList # 4 ;List of big anchor blocks
50 ; --- Background compactor variables ---
52 dyn_taskHandle # 4 ;The compactor's task handle
53 dyn_launch # 4 ;Whether we're launching
55 ; --- Relocation stack ---
57 dyn_stackPtr # 4 ;The stack pointer
59 ; --- Big buffers and stuff ---
61 dyn_pollBlk # 256 ;The poll block thing
62 dyn_stack # 4*256 ;The stack area
64 dyn_wSize EQU {VAR}-dyn__wStart