AMOS Basic (for the Amiga) keeps all temporary text in one area, between LoChaine and
HiChaine. When I was learning 68K ASM last year (July - Sept) I wrote a few commands for
AMOS which crashed it - I was setting the HiChaine internal AMOS variable incorrectly
(needed to be even!).
To help with bugfixing my commands I wrote a "Set Hichaine ADDRESS" command (you
could use it in Direct Mode where commands are run instantly, kind of like a CLI). The
upside of this is that you can ditch all the text garbage instantly - a welcome bonus
since AMOS' garbage collection is awful!
Regards,
Andrew B
aliensrcooluk at yahoo.co.uk
--- On Tue, 7/4/09, Pete Turnbull <pete at dunnington.plus.com> wrote:
From: Pete Turnbull <pete at dunnington.plus.com>
Subject: Re: The lost art (Was: The VAX is running
To: "On-Topic and Off-Topic Posts" <cctalk at classiccmp.org>
Date: Tuesday, 7 April, 2009, 7:01 PM
On 07/04/2009 17:40, Jim Battle wrote:
Once upon a time, I disassembled a lot of the TRS-80
model III ROM. Part
of that was the garbage collection routine. Because strings
were dynamically
allocated without any explicit recovery mechanism, the interpreter would on
occasion have to sweep dead strings from memory. This gave the appearance of
locking up the computer for long stretches -- the amount of time varied based on
the amount of free memory and the number of active strings. It could easily
take more than half a minute.
Garbage collection isn't as trivial as one might think. There's a
trade-off between space and time, and there's a well-known story about a
student of David Moon's at MIT(?), and Marvin Minsky (who wrote a pretty
well-known GC at SAIL). Search Google for "Minsky garbage" and look
up
http://groups.csail.mit.edu/mac/users/dae/notes/ai-koans
-- Pete Peter Turnbull
Network Manager
University of York