Suppress SPOOL...

Discussions about the BBC BASIC language, with particular reference to BB4W and BBCSDL
Post Reply
User avatar
hellomike
Posts: 34
Joined: Sat 09 Jun 2018, 09:47

Suppress SPOOL...

Post by hellomike » Fri 14 Jun 2019, 15:35

Hi,

Probably it isn't easily possible but maybe I'm unaware off a nifty trick so lets post this anyhow....

To have all PRINT output on screen also saved as file, obviously *SPOOL is how to do that, as it was 30 years ago.
Obviously it saves all VDU output, hence also the COLOUR VDU bytes (17,...).
When post processing the text file saved, these characters pose a problem.

There are VDU chars to disable and enable output to screen (21 and 6) or to printer (3 and 2),
but not, I think, for disable and enable output to the current open SPOOL file.

Anyone found a straight forward way around this? I mean, apart form closing and then open/append to the SPOOL file.

Currently I'm using the following horrible solution to post process after closing the SPOOL file:

Code: Select all

      F%=OPENUPSPOOLFILE$ : IF F%=0 END
      WHILE NOT EOF#F% : B%=BGET#F% : IF B%=17 OR B%=1 OR B%=2 OR B%=3 THEN PTR#F%=PTR#F% - 1 : BPUT#F%, 32
      ENDWHILE : CLOSE#F%
At least it is transparent for the entire program above it but this still leaves unwanted spaces.

Thanks

Mike

Post Reply