Date : Tue, 25 Jul 2006 01:14:35 +0100
From : "Ian Wolstenholme" <BBCMailingList@...>
Subject: Re: 6502 copros again
The system variables are correct. When the Tube is running,
the current language is copied into the second processor memory
beginning at &8000 (as with the main processor) and run from there to
keep all the addressing the same. To claim back the "lost" 16K of
RAM, certain languages have co-processor versions running higher in
the second processor's RAM, such as Hi-BASIC, Hi-View & Hi-Edit but
there are actually few others with Hi versions. With Hi-BASIC you will
get a HIMEM of 47104 so effectively you have 48K (ish) user workspace
and 16K ROM image copied into RAM making up the 64K in the Tube.
Best wishes,
Ian
----- Original Message -----
From: Jules Richardson
To: bbc-micro@...
Sent: Mon, 24 Jul 2006 23:33:47 +0000
Subject: [BBC-Micro] 6502 copros again
OK, I think the copro is working... at startup I get "Acorn TUBE 6502 64K".
System memory variables as follows:
PAGE HIMEM TOP
no copro: 6400 31744 6402
with copro: 2048 32768 2050
.. can someone with a known-good copro confirm that's what they get too?
I'm a little confused as to what runs where - does BASIC data by default still
get stored on the beeb side of things (which would explain why HIMEM is at 32K
and not closer to 64K)? Or does the copro by default reserve half its memory
for workspace / ROM space? The Advanced User Guide says that everything (apart
from I/O) actually runs from the copro side though, including the default
language - which in a way does a lot of the memory testing that I was asking
about for me! :)
Oddly enough the Watford diags (which I've finally got copied on to a disk!)
say that there's no copro present - not sure why that is (unless I need to
somehow kick everything back to running on the beeb side before the code will
let me test the copro - not sure how to do that yet)
cheers
Jules
--
(\__/)
(='.'=) This is Bunny. Copy and paste bunny into your
(")_(") signature to help him gain world domination.