Date : Sat, 07 Sep 2002 08:31:36 +0100
From : Mike Tomlinson <mike@...>
Subject: Re: Regaining disc drive memory work space
In article <001901c255db$aa9fe6c0$02000003@...>, james watson
<james@...> writes
> When using a disc drive on a BBC micro, Page is moved from &E00 to
> &1900 to create memory work space for the disc drive. Is possible
> to regain the disc drive work space once the program has loaded.
> I.e resetting page back to &E00. Can anybody give an example of
> various techniques on how to achieve this.
1. If you don't open any random-access files (i.e. with
A%=OPENOUT("filename"), you can use a disc drive with PAGE set at &1100.
This gains you another 2k of RAM.
2. Many utility ROMs have a command to load a file from disc and then
move it down in memory. For example, Disc Doctor: *DOWNLOAD "file"
0E00
3. Use one of the E00 DFSes that provide full disc drive operation while
keeping PAGE at &0E00.
4. Assuming your file is 2000 bytes long, and is called by jumping to
the first byte, put in a function key:
*KEY0 OSCLI "*LOAD file 1900":OSCLI "*TAPE":FOR A%=1 TO 2000 STEP
4:A%!&0E00=A%!&1900:NEXT:CALL &0E00ŚM
--
Security-wise, NT is a server with a 'Kick me'
sign taped to it. -- Peter Gutmann