Screen Saving

By William Entwistle

Originally published in EUG #24

I'm trying hard to write a simple Desk Top Publisher but I need a procedure which will save a required screen. At the moment I'm using:

      *SAVE Screen 5800 7FF MODE4

My problem lies if I want to save it under another name other than screen. I don't want to corrupt the screen with the filename, as with *LOAD Screen 5800.

Can any subscribers help?

William Entwistle

The command you require to save a full Mode 4 screen to disk is:

      *SAVE Screen 5800 8000

Where you have found the command you mention, I really don't know. If you want to use different filenames, you need to OSCLI the command (as it will need to include the ever-changing filename as a string). You will need to find some space on the screen where you can see the filename to enter - even if it's just one line. Then a simple program such as:

      10PRINTTAB(0,30)"Filename";
      20INPUT file$
      30OSCLI("SAVE "+file$+" 5800 8000")

should be quite sufficient for your purposes. Of course, in this example the filename request and name will be present on the screen as it's saved. You could blank them out by adding:

      25PRINTTAB(0,30)SPC(20);

Another idea is to turn off the VDU drivers and enter your *SAVE command then.

Perhaps readers have some other ideas.

Gus Donnachaidh, EUG #24