Title: | AMIGA NOTES |
Notice: | Join us in the *NEW* conference - HYDRA::AMIGA_V2 |
Moderator: | HYDRA::MOORE |
Created: | Sat Apr 26 1986 |
Last Modified: | Wed Feb 05 1992 |
Last Successful Update: | Fri Jun 06 1997 |
Number of topics: | 5378 |
Total number of notes: | 38326 |
<printing free chain> I'm trying to write a callable C function to print the current free chain. I think I could do it, from the available documentation, if I could figure out how to address ExecBase. Am I missing something obvious? Is this covered in another note? Is there a Fish disk with a function or program like this? Thanks for your replies. Ken
T.R | Title | User | Personal Name | Date | Lines |
---|---|---|---|---|---|
1833.1 | WJG::GUINEAU | Fri Oct 28 1988 17:52 | 12 | ||
It's an extern. Something like extern struct ExecBase *Execbase then Execbase->MemList (sp?) points to the free memory list Look in the C compiler manual. John | |||||
1833.2 | AbsExecBase is location 4 | TLE::RMEYERS | Randy Meyers | Sat Oct 29 1988 00:37 | 19 |
Re: .0, .1 The name of the symbol is AbsExecBase as in: #include <exec/execbase.h> extern struct ExecBase *AbsExecBase; AbsExecBase is the only absolute address in the machine. It is at absolute location 4. Please note: If you plan on walking the memory map, you should disable task switching using Forbid() and re-enable it after walking the list using Permit(). This prevents another task from performing memory allocation as you walk the list and causing you to follow a pointer to nowhere. You should use Forbid() and Permit() whenever you walk any dynamically updated system data structures like the memory, device nodes, etc. | |||||
1833.3 | thanks | AKOV03::IFSDEV | Mon Oct 31 1988 11:57 | 3 | |
Thanks very much for your prompt help! I'll give it a shot! Ken |