windows
ZXNet echo conference «code.zx»
From Kirill Frolov → To All 31 March 2000
Press RESET immediately, All!
I wonder if anyone has ever done overlapping windows on the Spectrum?
so that the output of information is possible not only in the top window?
I only saw this in DosX to Dickie, when messages were written to the log under
window Z-MODEM or EMSI.
You probably need to have an image of each window in memory as it is
on the screen. And when outputting, see which parts of the line end up on the screen and
display only them. So, when drawing each point, you need to check the coordinates
all other windows and their depth in order to find out whether the point will be
on the surface. You can (and should) of course limit yourself to familiar places of 8x8 points,
but when outputting each byte, there are still a lot of checks. You can
for example
limit the number of windows on the screen to 255 and for each familiar place enter
byte of belonging to the window - only 768 bytes are needed. But when outputting each byte
you need to check whether it falls into the current window or even into the screen area. :-(
You can do the opposite, for each window familiarity there is a pointer in memory
on the screen. But this is true for any manipulations with windows (moving, changing sizes,
depth...) you need to recalculate all pointers for each window.
I remember how this was done in the sprinter - everything is purely hardware.
Maybe there is some quick way?