Personal Computer News


Getting BBC Screens Taped

 
Published in Personal Computer News #044

Getting BBC Screens Taped

Q. Is there any way of saving a BBC screen print to tape? I know that the Spectrum has the command SCREENS for this, but can it be done on the BBC, and how?

Jonathan Loose
Chelmsford, Essex

A. Saving screens to tape on the BBC is relatively straightforward if a little slow. You merely save the section of the memory containing the screen information. The amount of memory varies depending on which screen mode is in use and is found by:

PRINT ~&8000-HIMEM

This will give the amount of memory in hexadecimal for that particular mode.

To save the whole screen simply find the value of HIMEM in hex as this is where the screen starts in memory and use:

*SAVE name SSS + LLLL

SSSs is the hexadecimal start address given by HIMEM for the particular screen mode, and LLLL is the length of the screen given by ~&800-HIMEM. The values for the moes are:

MODEs 0,1,2 SSSS = 3000, LLLL = 5000
MODE 3 SSSS = 4000, LLLL = 4000
MODEs 4,5 SSSS = 5800, LLLL = 2800
MODE 6 SSSS = 6000, LLLL = 2000
MODE 7 SSSS = 7C00, LLLL = 0400

So, for instance, saving MODE 0 graphics use:

*SAVE name 3000 +5000

within the program and reload with:

*LOAD name

The following program demonstrates this:

 10 MODE 0
 20 FOR T=0 TO 1280 STEP 5
 30 MOVE 0,0
 40 PLOT 6,T,1024
 50 NEXT
 60 *SAVE SCRN 3000 +5000
 70 CLS
 80 PRINT"REWIND THE TAPE THEN HIT THE SPACE BAR"
 90 REPEAT:UNTIL INKEY(-99)
100 *LOAD SCRN 3000

Jonathan Loose