[Coco] multiple windows on a screen in Basic09
Bob Devries
devries.bob at gmail.com
Thu Jan 14 16:53:48 EST 2010
Hi all,
I have been trying to emulate what Wayne Campbell is trying to do, that is,
to have two active windows on a single screen using Basic09.
Now I know that this is possible, since there was an example shell script on
the original OS9 System disk called "window.glr4". This script produced
three active windows on a graphics screen, and opened a shell in two of
them.
I'm trying to emulate this in Basic09, but so far, no luck.
Here's what I have:
PROCEDURE twowin
DIM x:INTEGER
DIM a$:STRING[80]
DIM wpath1,wpath2:BYTE
OPEN #wpath1,"/w1":UPDATE
OPEN #wpath2,"/w1":UPDATE
RUN gfx2(wpath1,"DWSet",2,0,0,80,20,0,1,1)
RUN gfx2(wpath2,"DWSet",0,0,21,80,4,2,3)
RUN gfx2(wpath1,"Select")
PRINT #wpath1,"Output window"
RUN gfx2(wpath2,"Select")
PRINT #wpath2,"Input window"
INPUT #wpath2,"Type a line",a$
RUN gfx2(wpath1,"Select")
PRINT #wpath1,a$
RUN gfx2(wpath2,"Select")
RUN gfx2(wpath2,"CurXY",0,0)
RUN gfx2(wpath2,"Clear")
FOR x=1 TO 10000
NEXT x
RUN gfx2(wpath2,"DWEnd")
RUN gfx2(wpath1,"DWEnd")
CLOSE #wpath2
CLOSE #wpath1
END
The code when run, gives an error 184, "Window already defined". I have also
tried 255 as the first parameter (window type), to no avail.
According to the Basic09 manual, the use of 0 and 255 are special case
window types, "0" specifies the current screen, and 255 "Current display
screen. Use when putting several windows on the same physical screen"
(Basic09 Reference, page 9-34)
Has anyone else ever tried this? Since it's possible using a shell script,
in my view it _should_ be possible using Basic09.
Regards, Bob Devries
--
Besides a mathematical inclination, an exceptionally good mastery of one's
native tongue is the most vital asset of a competent programmer.
Edsger W.Dijkstra, 18 June 1975
More information about the Coco
mailing list