S*BASIC: pause window refresh until all drawing complete?

Anything QL Software or Programming Related.
Post Reply
User avatar
Sparrowhawk
Super Gold Card
Posts: 726
Joined: Wed Dec 15, 2010 12:33 pm
Location: @131072

S*BASIC: pause window refresh until all drawing complete?

Post by Sparrowhawk »

In S*BASIC, is it possible for a window (not the entire screen) to refresh only after all drawing operations to it have been completed?

I am building up a pseudo-3D scene of various items drawn from furthest away (scaled small) to nearest (scaled large) - ideally I'd like the window that is being drawn to appear complete all at once, rather than seeing the drawing commands take place.

Thanks.


a.k.a. Jean-Yves
User avatar
tofro
Font of All Knowledge
Posts: 3122
Joined: Sun Feb 13, 2011 10:53 pm
Location: SW Germany

Re: S*BASIC: pause window refresh until all drawing complete?

Post by tofro »

Nope, not for a single window and not from S*BASIC, at least not that I would know of. (Other than using the Minerva second-screen feature)

Seeing how you ask, I understand you know you can switch off the display entirely by POKEing the display control register.


ʎɐqǝ ɯoɹɟ ǝq oʇ ƃuᴉoƃ ʇou sᴉ pɹɐoqʎǝʞ ʇxǝu ʎɯ 'ɹɐǝp ɥO
User avatar
Sparrowhawk
Super Gold Card
Posts: 726
Joined: Wed Dec 15, 2010 12:33 pm
Location: @131072

Re: S*BASIC: pause window refresh until all drawing complete?

Post by Sparrowhawk »

Thanks for confirmation. I didn't think it would be possible but you never know unless you ask :D


a.k.a. Jean-Yves
User avatar
mk79
QL Wafer Drive
Posts: 1349
Joined: Sun Feb 02, 2014 10:54 am
Location: Esslingen/Germany
Contact:

Re: S*BASIC: pause window refresh until all drawing complete?

Post by mk79 »

Hm well, in theory it's possible to draw in the backing buffer and copy everything to the screen once it's finished. This is more or less what my PE background refresh routine does. But in practice there is no utility to handle this easily and a lot of hacking would be required. But I agree it could be an interesting feature.


User avatar
pjw
QL Wafer Drive
Posts: 1623
Joined: Fri Jul 11, 2014 8:44 am
Location: Norway
Contact:

Re: S*BASIC: pause window refresh until all drawing complete?

Post by pjw »

mk79 wrote:Hm well, in theory it's possible to draw in the backing buffer and copy everything to the screen once it's finished.<>
I have tried to do this, but couldnt make it work. I wonder why. I'll have another go next time it becomes relevant - unless someone beats me to it, of course.


Per
I love long walks, especially when they are taken by people who annoy me.
- Fred Allen
Post Reply