Games Quick-Search
Go to Advanced Search
Lemon Amiga Forum Index
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Banging metal in systemfriendly way

 
Post new topic   Reply to topic    Lemon Amiga Forum Index -> Software & Hardware
View previous topic :: View next topic  
Author Message
cadaver
Groupie in Training
Groupie in Training


Joined: 14 Jul 2004
Posts: 59
Location: Finland

PostPosted: Mon Jul 26, 2004 3:42 pm    Post subject: Banging metal in systemfriendly way Reply with quote

I've looked some newsgroups posts and misc. resources about the subject and most seem to point into a few things:

- Use InitView() & LoadView() to install your own copperlist
- Write a highpriority inputhandler to snatch away key/mouse events so that they won't take rastertime
- Of course, use OwnBlitter() and DisownBlitter() as needed

But a few questions remain: if you go this route, how do you know when your own program gets "defocused"? (so that you can let go of the input events and not cause lockup) Do you poll GfxBase->ActiView (or something) to see if the copperlist has changed back to the system? And if so, how do you know when you can switch back to your own view?

Sorry if these are stupid questions..
Back to top
View user's profile Send private message Visit poster's website
xeron
Lemon Amiga Donator
Lemon Amiga Donator


Joined: 16 Jul 2004
Posts: 315
Location: Bristol, UK

PostPosted: Mon Jul 26, 2004 4:27 pm    Post subject: Re: Banging metal in systemfriendly way Reply with quote

cadaver wrote:

- Use InitView() & LoadView() to install your own copperlist
- Write a highpriority inputhandler to snatch away key/mouse events so that they won't take rastertime

But a few questions remain: if you go this route, how do you know when your own program gets "defocused"?


You won't get "defocused" since you've removed the system copperlist and view, and they won't come back until you LoadView() the old view back, and since you've put in a high priority input event swallower, the user can't swap screens until you decide to do it for them anyway.

I did have a system that opened an intuition screen, but then installed its own copperlist. When the user clicked the mouse on the top right of my custom screen (using my own direct input routines), I reloaded the system copperlist and put my intuition screen to the back. I then polled IntuitionBase->FirstScreen every 5 VBLs to see if it was my screen, and if so, i reinstated my view and copperlist.

Mostly, however, I just safely shut down the OS in such a way that I can bring it back, and forget about it. I discussed how to do that here.
Back to top
View user's profile Send private message Visit poster's website MSN Messenger
cadaver
Groupie in Training
Groupie in Training


Joined: 14 Jul 2004
Posts: 59
Location: Finland

PostPosted: Mon Jul 26, 2004 5:54 pm    Post subject: Reply with quote

Ok, thanks a lot! Now I see it... time for some dirty experimenting in the near future...
Back to top
View user's profile Send private message Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic    Lemon Amiga Forum Index -> Software & Hardware All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Tip: Get Amiga Forever for super-comfy Amiga emulation with pre-installed Workbench, games and other goodies!


Powered by phpBB © 2001, 2005 phpBB Group
A sister site to Lemon64. Made in Sweden by Kim Lemon 2004-2009.
News  Games  Lemonade  Forum  Help  Links  Sitemap