Date : Fri, 19 Sep 2003 21:40:58 +0100 (BST)
From : Pete Turnbull <pete@...>
Subject: Re: DFS Execution address of BASIC program
On Sep 19, 20:39, Sprow wrote:
> In article <OF312C83C9.15B5702D-ON80256DA6.004BBD5D@...>,
> <Richard_Talbot-Watkins@...> wrote:
> > On an unexpanded Beeb, running just the tape filing system in the
OS, this
> > would work fine, as the Basic ROM would be paged in. When
attemping to
> > *RUN from disc however, the DFS ROM will be paged in, and therefore
it
> > tries to jump to that location in the DFS ROM, which is undefined
and leads
> > to the strange results we see when we try it.
>
> Bingo.
> What would have been cunning (and make the machine more intuitive to
use)
> would be to have a fixed address in the OS (eg.along with all the
other
> &FFxx entry points) which in turn caused the OS to find BASIC, page
it in,
> and call it's language entry with A=3 (or some other unused reason
code) -
> causing BASIC to RUN the program too.
This is a reasonable idea, but I don't quite understand the problem.
Maybe I missed something when I was plowing through millions[1] of
emails the last couple of days? On all the Beebs I've ever seen,
*RUNning a file which has FF8023 or FFFF8023 as an exec address just
causes it to be loaded, and then control returns to whatever was going
on before -- just as I'd expect. Of course, I'm using Acorn DFSes and
ADFS, ANFS, etc, and a real Beeb, not third party filing systems or an
emulator, if it makes a difference.
[1] Ok, I exaggerate. Not millions, it just seemed like a huge number,
and I got a bit selective about what I read (no they were mostly not
spam :-)).
--
Pete Peter Turnbull
Network Manager
University of York