Jump to content

Photo

GEM and non-trivial window redraw?


3 replies to this topic

#1 tschak909 OFFLINE  

tschak909

    River Patroller

  • 3,242 posts
  • Location:USA

Posted Tue Aug 21, 2018 12:48 AM

I am porting PLATOTerm to the Atari ST, have finally come back to it after a few months of developing terminals for other systems.

 

It needs to, given an area of pixels, be able to draw lines, and individual dots. Text will be blit from a bitmap character set, as well, to any pixel position.

 

The problem I am trying to anticipate comes from window redraw. Assuming the window becomes occluded, I can't simply send the drawing commands again, because I will have possibly lost them in the protocol buffer, and since the protocol buffer is highly stateful, it becomes difficult to play back previous data to restore the window to the previously known good state.

 

On other systems, I would simply render to an off-screen bitmap, and when I received the window update, I would ask the system to blit the requisite rectangles back to the screen.

 

But on the ST, it seems that API functions for off-screen bitmaps are not available in most VDI implementations, most certainly not stock VDI. 

 

So what the hell am I supposed to do?

 

-Thom



#2 pixelmischief OFFLINE  

pixelmischief

    Stargunner

  • 1,288 posts

Posted Tue Aug 21, 2018 8:56 AM

GODLIB is your friend for all things about Atari ST graphics.  Check it out:

 

https://github.com/ReservoirGods



#3 tschak909 OFFLINE  

tschak909

    River Patroller

  • Topic Starter
  • 3,242 posts
  • Location:USA

Posted Sun Oct 21, 2018 10:16 PM

@pixelmischief Actually, I have...and while it does seem to be very complete, it's also very sorely lacking in documentation. I am trying to use it, but it is painful. I'm only here, because I literally wrote the entire terminal using GEM and VDI calls and it failed so badly in the performance department, that it was unusable on 8MHz machines.

 

-Thom



#4 pixelmischief OFFLINE  

pixelmischief

    Stargunner

  • 1,288 posts

Posted Mon Oct 22, 2018 1:32 AM

Another possible route is Pure C.  It came with Borland BGI as the graphics library, which is pretty well documented.  Give it a look.






0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users