Jump to content
Sign in to follow this  
Cyprian_K

TOS 1.x memory pool management

Recommended Posts

looking for any info how TOS 1.x manages the memory pool.

I guess there is a table of used memory blocks with their application ID.

Share this post


Link to post
Share on other sites

Did not see any detailed description how it exactly works. There is table for sure, and probably instead app. ID   basepage address is what identifies app.  I did some hack with it, to make lowering RAMtop without reset, what consists mostly from seeking values in area at $800 which match criteria: memtop-basepageadr = free RAM (what is all free RAM at APP start by TOS) .

In Atari ProfiBuch stays that TOS can handle limited count of memory blocks, and that's normal. Table space is limited.

What I know is that whole system works good enough reliable in normal usage. But there are some flaws - like every new APP start will be placed 14 bytes higher than previous. The reason is probably that whole thing is complex, and PRG starts not on same adr. as TOS, because PRG needs AES, so more RAM is allocated for system in that case. But when start TOS after PRG it will be placed on same high adr. (+14) as PRG started.

I recommend using Steem Debugger and tracing it 😀

Share this post


Link to post
Share on other sites

thanks for explanation,

I have a memory dump and I have to track every memory block used by an application

I'll try to debug Malloc

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...