<< Previous Message Main Index Next Message >>
<< Previous Message in Thread This Month Next Message in Thread >>
Date   : Sun, 13 Jun 2004 13:53:36 +0200 (BST)
From   : Johan Heuseveldt <johan@...>
Subject: Re: free memory on a model B with Econet?

Hi Jules,

On Sun 13 Jun, Jules Richardson wrote:

> More ponderings... how much free memory can I expect for user programs
> in a BBC B running in mode 2 and hooked up to Econet?
> 
> I'm thinking that I could run the video wall thingy in mode 2, but
> double the pixels vertically giving me a 160 x 128 display (which is
> probably about right for the aspect ratio of a Cub anyway).

I have to re read this a few times, but I think this is what you mean:

 * using the 20K MODE 2 as the screen mode
 * using and sending screen images of 10K, which will be expanded to 20K
    when and during putting it into video RAM?

> That means I need 10KB of RAM for holding an off-screen image.

SWR(AM) would be very nice to have. In a Master or BBC+ (128) you
can forget about the four RO(/A)M headers and six images can be stored.

You can also use a full MODE 2 (20K) screen image, compressing it to 15K,
as only 3 of 4 bits of colour information is needed, because flashing colours
are less usefull. 15K fits into SWR, including an appropiate header.

Some demonstration software for the Master uses this technique.

> Thing is, according to the user guide, anything up to &E00 is reserved.
> That not only eats into the 10KB I'd need for an off-screen image, but
> gives me no room for any display routine code...

It depends on what you need, and what absolute locations are used with the
few things you /do/ need to use.

> Looking at the memory map for 0 - &E00 there's a lot of vague hand-wavy
> 'workspace' type stuff though, plus 1KB of langage ROM workspace which I
> assume I can stomp on if I'm not using BASIC in the machine?

Yes, although I never used it myself, it's easy to forget about BASIC
and use your own code. But as I have no experience in this situation, you
should be aware that the MOS don't expect this. There is also a concept
of the current language, and I don't know all the situations the MOS
will do this. At least there's a problem Error Vector!

> Indeed, what above &400 is needed when not running a language ROM?

At least you want the screen! :-) But luckily this is in page &03. Other
necessaties are also safe as stack and zero page.

If you don't need anything else, you can use whatever you want. You need
the Bray, Dickens & Holmes AUG to investigate the issues concerned.

Of course you need the Econet ROM. If you use DNFS, you need to take
out the 8271, as that's the only way (I think) to unplug the software,
thereby prohibites its claim on memory.

Econet itself needs two pages of absolute workspace and two pages
of private worksspace, and these are then pages &0E and &0F (abs wsp)
and &10 and &11 (priv wsp).
It still is fragmenting precious RAM area. :-(
Possibly you could patch the Econet (part) of the ROM? :-)

> Other option I suppose is presumably I can jumper the BBC to accept a
> static RAM chip in place of a ROM in the paged ROM area &8000 -  &C000?
> I think I have some 2KB devices spare...

If you can provide indeed a SWRAM, and keep the code as small as 6k as an ROM
image, you also have a(n extra) 10K area as well.

Have fun!

greetings,
Johan

-- 
Johan Heuseveldt <johan@...              >
  aka  waarland

  The best place is a Riscy place
 
"I'm only a beer teetotaler, not a champagne teetotaler."
GEORGE B. SHAW
<< Previous Message Main Index Next Message >>
<< Previous Message in Thread This Month Next Message in Thread >>