<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://learn.cemetech.net/index.php?action=history&amp;feed=atom&amp;title=Z80%3AFree_RAM</id>
	<title>Z80:Free RAM - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://learn.cemetech.net/index.php?action=history&amp;feed=atom&amp;title=Z80%3AFree_RAM"/>
	<link rel="alternate" type="text/html" href="http://learn.cemetech.net/index.php?title=Z80:Free_RAM&amp;action=history"/>
	<updated>2026-05-19T07:33:54Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.3</generator>
	<entry>
		<id>http://learn.cemetech.net/index.php?title=Z80:Free_RAM&amp;diff=343&amp;oldid=prev</id>
		<title>Maintenance script: Initial automated import</title>
		<link rel="alternate" type="text/html" href="http://learn.cemetech.net/index.php?title=Z80:Free_RAM&amp;diff=343&amp;oldid=prev"/>
		<updated>2016-02-06T06:12:57Z</updated>

		<summary type="html">&lt;p&gt;Initial automated import&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;=== RAM Locations ===&lt;br /&gt;
&lt;br /&gt;
    persst collat addr   name             size      what destroys it                how you should fix it        what it breaks&lt;br /&gt;
                                                                                 &lt;br /&gt;
    *****  *****  8000   appData          256   v   APD (OFFSCRPT)                  -----&lt;br /&gt;
    ***    *****  8100   ramCode          119   |   flash activities                -----&lt;br /&gt;
    *****  *****  8177   smallEditCol     185   |   ----                            -----&lt;br /&gt;
    *****  ****   8230   baseAppBrTab      33   |   ----                            bcall(_fillBasePageTable)    multipage apps on 83+&lt;br /&gt;
    *****  *****  8251   bootTemp           8   |   receiving OS                    -----&lt;br /&gt;
    *****  *****  8259   MD5Stuff          74   |   MD5 calculations                -----&lt;br /&gt;
    ****   *****  82A3   appSearchPage      2   |   OS general app routines         -----&lt;br /&gt;
    ****   *****  82A5   tempSwapArea L4  232   |   archive stuff                   -----&lt;br /&gt;
    ****   *****  838D   appID              5   |   OS general app routines         -----&lt;br /&gt;
    ****   *****  8392   arcPageStuff       3   |   most archive operations         -----&lt;br /&gt;
    ****   *****  8395                     16   |   ???                             -----&lt;br /&gt;
    *      *****  83A5   MD5Buffer         12   |   Axe-subroutine arguments        -----&lt;br /&gt;
    **     *****  83B1   MD5Buffer         30   |   Axe-Archived variable pointers  -----  &lt;br /&gt;
    **     ***    83CF   MD5Buffer          2   |   Axe-random seed                 -----&lt;br /&gt;
    ***    *****  83D1   MD5Buffer          8   |   Axe-sprite rotation/flipping and hex printing -----&lt;br /&gt;
    ****   *****  83D9   MD5Buffer         12   |   Axe-axiom variables             ----- &lt;br /&gt;
    *****  *****  83E5                      6   |   ???                             -----&lt;br /&gt;
    ***    *****  83EB   Abackup            1   |   flash operations and other?     -----&lt;br /&gt;
    ****   *****  83EC                      2   |   ???                             -----&lt;br /&gt;
    ****   *****  83EE   arcInfo           68   |   link routines and other?        -----&lt;br /&gt;
    ****   *****  8432   appInfo           13   ^   OS general app routines         -----&lt;br /&gt;
                  843F                         1087&lt;br /&gt;
    &lt;br /&gt;
    ****   *****  8452   prevDData          8   V   ???                             zero&lt;br /&gt;
    *      *****  845A   lFont_record       8   |   large font                      -----&lt;br /&gt;
    *      *****  8462   sFont_record       8   |   small font                      -----&lt;br /&gt;
    ****   ****   846A   tokVarPtr          4   |   ???                             zero&lt;br /&gt;
    ****   *****  846E   indicMem          10   |   run indicator                   -----&lt;br /&gt;
    *      *****  8478   OP1               11   |   Axe-AppVars, float{}, Ans, Text &amp;gt;Dec -----&lt;br /&gt;
    **     *****  8483   OP2               11   |   Axe-float{}, Ans, Text &amp;gt;Dec     -----&lt;br /&gt;
    ***    *****  848E   OP3               11   |   Text &amp;gt; Tok                      -----&lt;br /&gt;
    ***    *****  8499   OP4-OP6           38   |   random OS routines              -----&lt;br /&gt;
    ****   *****  84BF   progToEdit         8   |   running apps, editing progs     -----&lt;br /&gt;
    ****   *****  84C7   nameBuff          11   |   typing a name                   -----&lt;br /&gt;
    ****   *****  84D2   equ_edit_save      1   |   ??? opening an editor?          -----&lt;br /&gt;
    ****   *****  84D3   iMathPtrs         10   |   editing anything                -----&lt;br /&gt;
    ****   *****  84DD   stuff             14   |   ??? probably editing?           zero&lt;br /&gt;
    **     *****  84EB   asm_pointers       8   |   moving user memory              -----&lt;br /&gt;
    *****  *****  84F3   asm_ram           21   |   -----                           -----&lt;br /&gt;
    ****   ****   8508   textShadow L5    128   |   -----                           bcall(_clrTxtShd)&lt;br /&gt;
    ****   ****   8588   textShadPtrs       5   |   -----                           bcall(_clrTxtShd)&lt;br /&gt;
    ****   **     858D   cxVectors         25   |   -----                           manual restore                 changing apps (quitting)&lt;br /&gt;
    ****   *****  85A6                      4   |   -----                           -----            &lt;br /&gt;
    ****   *****  85AA   monQueue          18   |   ???                             -----&lt;br /&gt;
    ***    ***    85BC   onSP               2   |   -----                           manual restore                 homescreen errors&lt;br /&gt;
    ****   *****  85BE   promptStuff       18   |   ???                             -----&lt;br /&gt;
    ****   *****  85D0   varType           12   |   -----                           -----&lt;br /&gt;
    ****   ***    85DC   menuStuff          7   |   -----                           zero&lt;br /&gt;
    ****   ***    85E3   menuFlagBackups    4   |   -----                           zero&lt;br /&gt;
    ****   *****  85E7   progCurrent      120   |   -----                           -----&lt;br /&gt;
    *****  *****  865F   linkStuff        120   |   linking                         -----&lt;br /&gt;
    *      ****   86D7   penCol             2   |   small font, OS drawing          zero works&lt;br /&gt;
    ****   ****   86D9   rclQueuePtrs       4   |   -----                           ----- &lt;br /&gt;
    ***    ***    86DD   errNo              1   |   OS errors (like appvar stuff)   zero&lt;br /&gt;
    ***    ***    86DE   errSP              2   |   OS errors                       manual restore&lt;br /&gt;
    ***    ***    86E0   errOffset          2   |   OS errors                       zero&lt;br /&gt;
    *****  *****  86E2                     10   |                                   -----&lt;br /&gt;
    *****  *****  86EC   saveSScreen L1   714   |   APD                             -----&lt;br /&gt;
    **     *****  89B6   saveSScreen L1    54   ^   Axe-A-Theta                     -----&lt;br /&gt;
                  89EC                         1434&lt;br /&gt;
                                                                                                         &lt;br /&gt;
    *****  *****  8A36                      4   V   -----                           -----&lt;br /&gt;
    *****  *****  8A3A   statVars L2      531   |   -----                           bcall(_delRes)&lt;br /&gt;
    *****  *****  8C4D   infVars          202   |   -----                           zero&lt;br /&gt;
    *****  ***    8D17   curGStyle          1   |   -----                           zero&lt;br /&gt;
    *****  ****   8D18   curGY            137   |   -----                           zero&lt;br /&gt;
    *****  **     8DA1   graphStuff         6   |   -----                           manual backup                  graphing&lt;br /&gt;
    *****  ****   8DA7   entryStackStuff  133   |   -----                           manual backup                  entry stack (2nd entry)&lt;br /&gt;
    *****  *****  8E2C                     59   |   ???                             -----&lt;br /&gt;
    *****  ****   8E67   graphVariables   494   |   -----                           bcall(_grReset)                graphing variables&lt;br /&gt;
    *****  ****   9055   financeVariables 126   |   -----                           bcall(_zeroFinanceVars)        finance variables&lt;br /&gt;
    *****  *****  90D3   smallEditRam     108   |   -----                           -----&lt;br /&gt;
    *****  ****   913F   moreGraphVars    157   |   -----                           bcall(_grReset)                graphing variables&lt;br /&gt;
    *****  ****   91DC   tableStuff       294   |   -----                           zero&lt;br /&gt;
    *****  ****   9302   entryStackStuff    5   |   -----                           manual restore                 entry stack (2nd entry)&lt;br /&gt;
    *****  *****  9307                     57   |   BASIC menus                     -----&lt;br /&gt;
    **     *****  9340   plotSScreen L6   768   |   most screen activities          -----&lt;br /&gt;
    *****  ****   9640   randomSeeds       18   |   -----                           bcall(_randInit)&lt;br /&gt;
    *****  ****   9652   parsingPtrs       28   |   -----                           manual restore                  quittting&lt;br /&gt;
    *****  ***    966E   cmdShadow        128   |   -----                           bcall(_clrTxtShd) then bcall(_saveCmdShadow)&lt;br /&gt;
                                                                                    LnReg and manual restore for MirageOS&lt;br /&gt;
    *****  ****   96EE   cmdShadowPtrs      6   |   -----                           bcall(_clrTxtShd) then bcall(_saveSmdShadow)&lt;br /&gt;
    ****   *****  96F4   editPtrs           8   |   opening edit buffer             -----                                                               &lt;br /&gt;
    *****  ****   96FC   listEditPtrs     121   |   -----                           zero  &lt;br /&gt;
    *****  ****   9775   graphTypes        48   |   -----                           zero&lt;br /&gt;
    *****  *      97A5   windowStuff       11   |   -----                           manual restore                 small and large text&lt;br /&gt;
    ****   *****  97B0   formatStuff       92   |   displaying OS formatted strings -----&lt;br /&gt;
    *****  *****  980C   equationStuff      9   |   ??? evaluating an equation?     zero&lt;br /&gt;
    ****   ****   9815                     11   |   ??? deleting stuff?             zero&lt;br /&gt;
    **     *      9820   stackPointers     20   |   user mem operations             manual restore                 appvars&lt;br /&gt;
    ****   *****  9834   pagedStuff         8   |   archive reading                 -----&lt;br /&gt;
    ****   *****  983C                     43   |   menus                           zero&lt;br /&gt;
    ****   *****  9867   flashTemp          9   |   reading flash                   -----&lt;br /&gt;
    ****   *****  9870   appRawKeyHandle    2   |   ???                             -----&lt;br /&gt;
    *****  *****  9872   appBakUpScrn L3  768   ^   -----                           -----&lt;br /&gt;
                  9B72                         4412                                                                        &lt;br /&gt;
                                                                                                               &lt;br /&gt;
    *****  ****   9C06   baseAppBrTab2    106   V   usb stuff                       bcall(_fillBasePageTable)      multi page apps on 83+SE&lt;br /&gt;
    *****  ****   9C70   usbStuff          62   |   usb stuff                       -----                                          &lt;br /&gt;
    ***    *****  9CAE   SESpeed            1   |   this might get randomly written to -----&lt;br /&gt;
    *****  *****  9CAF                    182   |   ???                             -----&lt;br /&gt;
    ****   *****  9D65   localTokStr       17   |   used by localization apps       -----&lt;br /&gt;
    ****   *****  9D76   keyToStr          18   |   ???                             -----&lt;br /&gt;
    *****  *****  9D88   sEdMonSp           2   |   small edit SP                   -----&lt;br /&gt;
    *****  *****  9D8A   bpSave            11   ^   usb stuff                       -----&lt;br /&gt;
                  9D95                         399&lt;br /&gt;
    &lt;br /&gt;
    Persistence:&lt;br /&gt;
    *****  barring obscure situations, this memory won&amp;#039;t be touched by outside forces&lt;br /&gt;
    ****   some avoidable practices will overwrite this memory&lt;br /&gt;
    ***    normal operation may occasionally overwrite this memory &lt;br /&gt;
    **     this memory location is not stable by any means, though, it&amp;#039;s still memory&lt;br /&gt;
    *      this is hardly memory, it&amp;#039;s only listed because it was in the way&lt;br /&gt;
    &lt;br /&gt;
    Collateral damage:&lt;br /&gt;
    *****  changing this memory has absolutely no effect on anything&lt;br /&gt;
    ****   there are some situations where changing this has an effect, though, you probably won&amp;#039;t run into them&lt;br /&gt;
    ***    this makes some rather rare events fail, but it could happen&lt;br /&gt;
    **     this makes some common tasks fail&lt;br /&gt;
    *      honestly, the calculator basically crashed&lt;br /&gt;
    &lt;br /&gt;
    bcalls:&lt;br /&gt;
    bcall(_clrTxtShd)          Asm(EF4C45)         &lt;br /&gt;
    bcall(_delRes)             Asm(EF204A)&lt;br /&gt;
    bcall(_fillBasePageTable)  Asm(EF1150)&lt;br /&gt;
    bcall(_grReset)            Asm(EF3148)&lt;br /&gt;
    bcall(_randInit)           Asm(EF7F4B)&lt;br /&gt;
    bcall(_saveCmdShadow)      Asm(EF7345)&lt;br /&gt;
    bcall(_zeroFinanceVars)    Asm(EF2B51)&lt;br /&gt;
&lt;br /&gt;
The collateral damage number is only correct if you follow my recommendations for cleanup. If you don&amp;#039;t, then things might go very bad. What it breaks is what won&amp;#039;t work when you are using that memory, it will work after you are done.&lt;br /&gt;
&lt;br /&gt;
And when you clean up, I recommend you first zero all the memory you used, copy back the manual backup locations, and then run all the necessary bcalls.&lt;br /&gt;
&lt;br /&gt;
Source: http://www.omnimaga.org/asm-language/8384-free-ram-areas/&lt;br /&gt;
&lt;br /&gt;
{{lowercase}}&lt;br /&gt;
[[Category:Z80 Assembly]]&lt;br /&gt;
[[Category:Z80 Heaven]]&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
</feed>