Date : Mon, 11 Mar 2002 22:30:04 GMT
From : pete@... (Pete Turnbull)
Subject: Re: BBC Basic (86) for PC
On Mar 11, 18:10, John Woodgate wrote:
> I read in !bbc-micro that Christopher Dewhurst Clerical Assistant SS
> <Christopher.Dewhurst@...> wrote (in <4C14B3C2084AD511AC36009
> 027E413AA8DA5D8@...>) about '[BBC-Micro] BBC Basic (86) for
> PC', on Mon, 11 Mar 2002:
> >> Does anyone know how to switch an inkjet printer on and off from
within
> >BBC
> >> Basic (86)?
> >
> >> VDU2 and VDU3 work fine on my dot matrix printer but not on my HP720C.
> I think so, but for some printers the code strings are very complicated.
> But for a Canon BJC-4000 in LQ mode, for example, the User's Manual says
> that DC1 (VDU1) starts printing and DC3 (VDU3) stops it. However, the
> BEEB won't send DC1/VDU1/CTRL-@ without a 'fix', IIRC. I don't remember
> what the 'fix' is, though. (8-0(
DC1 isn't VDU 1, nor is DC3 the same as VDU 3.
DC1 and DC3 are ASCII codes for "device control", more commonly know as XON
and XOFF, or ctrl-Q and ctrl-S. However they mean something to the Beeb
and probably to BBC BASIC-86 as well, I expect. So to turn on printing as
far as the Beeb or BBC BASIC is concerned, you still need the VDU2, and
then (if what John wrote about DC1/DC3 is correct) you need to send DC1 to
the printer *only*. That's what VDU1 does. Any character you prefix with
ctrl-A (eg by using VDU 1) goes *only* to the current printer. So you'd do
"VDU 2,1,17" (17 is ctrl-Q).
BTW, VDU 1 (or more accurately ASCII code 1) isn't ctrl-@, it's ctrl-A.
ctrl-@ is ASCII 0, "NUL". VDU is the BBC BASIC command to send an ASCII
code to the output (screen/printer) driver.
--
Pete Peter Turnbull
Network Manager
University of York