Path: csiph.com!eternal-september.org!feeder.eternal-september.org!mx02.eternal-september.org!.POSTED!not-for-mail From: Benoit0123 Newsgroups: comp.sys.apple2.programmer Subject: Re: AppleSoft free memory without using FRE(0) Date: Fri, 4 Mar 2016 13:19:04 -0000 (UTC) Organization: Mac GUI Lines: 36 Message-ID: References: Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Injection-Date: Fri, 4 Mar 2016 13:19:04 -0000 (UTC) Injection-Info: mx02.eternal-september.org; posting-host="ac9e0e4d7dd3957fb97803ee6801bab8"; logging-data="15430"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/g3r5KcNN0y/paJEIrmDjN" User-Agent: Mac GUI Usenet In-Reply-To: Cancel-Lock: sha1:fUSD2/qF09HnnptGyOgJL04/A6I= Xref: csiph.com comp.sys.apple2.programmer:2428 awanderin wrote: > Brian Patrie writes: > >> On 2016-02-28 22:58, awanderin wrote: >>> You could also do a ProDOS "FRE" followed by the applesloth FRE(0) and >>> get your number fairly quickly. If you don't have much string action in >>> your program, the Applesoft FRE(0) is not going to take long anyhow. >> >> I'd tried that; FRE(0) still took ever. (The immediately relevant >> program is a catalog browser, that uses several large arrays.) > > Oh right, I forgot that BASIC.SYSTEM actually turns on TRACE mode and > hides the output, so that it can spy on variable use after each > statement. I believe that is how it auto-issues the FRE command. > > -- > Jerry awanderin at gmail dot com > IMHO the intercept at this level only serves as being able to parse command texts from the Applesoft main loop (starting at $D7D2) to properly render the TRACE output on screen/printer while parsing a ProDOS BI command or writing to a file; I don't think that such hook serves as automatic garbage collection (based on BASIC SYSTEM 1.1 listing study by M. Mossberg) which still needs to be manually triggered by using the PRINT CHR$(4);"FRE" sequence from a BASIC program, unlike the Applesoft internal FRE(0) which remains automatic. Has this state evolved in subsequent BASIC.SYSTEM release (from 1.3 to 1.5).. I do not know.. -- Growing old is mandatory.. growing up is optional.. But the other way round is as true.