Date : Fri, 06 Sep 2002 22:28:37 +0100
From : Jeremy C B Nicoll <Jeremy@...>
Subject: Re: Regaining disc drive memory work space
In article <001901c255db$aa9fe6c0$02000003@...>,
james watson <james@...> wrote:
> 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.
It's certainly possible.
A long time ago a program I wrote used this as a simple method of
copy-protection. The program was loaded from diskette and at the start
it found the page value and the length of the program, then moved itself
down through memory to overlay the disk operating system. Then it (I
think) did a GO TO or something to start running at its new address.
Once the program was running it couldn't be copied to another diskette
though of course it was easy to copy between loading it and starting it
running.
--
Jeremy C B Nicoll - my opinions are my own.