Jump to content
IGNORED

Dynamic Memory Management Library for Assembly Language Programs


Recommended Posts

3 or 4 people managed to find and "star" this repo on Github, even though I've never posted information about it in any public thread. With version 1.4, I think that it is stable enough that I may as well let a larger audience know about it here.

 

https://github.com/bkrug/TI-string-buffer

https://github.com/bkrug/TI-string-buffer/releases

 

TI-string-buffer is an assembly language library that I wrote to manage dynamically allocated memory. It let's you reserve one buffer of memory in RAM for dynamic purposes, and it keeps track of which portions of the buffer are currently reserved or free. There is a routine to specify how many bytes you wish to reserve, and it will return the address where it choose to place that reservation. Previously reserved blocks can be de-allocated, shrunk, or grown. When you grow a previously allocated block, it might need to move the block, but it returns the new address to you. Routines that allocate more memory will set the EQU status bit when they can't find enough free space for the requested allocation.

 

There are also routines for creating and editing arrays. Arrays will always be made of of elements that are of equal length. You can initialize arrays such that their elements have a length that is some power of 2. 2 bytes is the minimum.

For more information, see the README file in the git repo.

 

Currently TI-string-buffer is used by the EmuWriter program I've been writing. (https://forums.atariage.com/topic/356969-emuwriter-a-homebrew-word-processor/).

  • Like 9
  • Thanks 1
Link to comment
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.
Note: Your post will require moderator approval before it will be visible.

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...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...