Welcome, Guest. Please login or register.

Author Topic: Interrupt handling under WarpOS...  (Read 2845 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline KarlosTopic starter

  • Sockologist
  • Global Moderator
  • Hero Member
  • *****
  • Join Date: Nov 2002
  • Posts: 16879
  • Country: gb
  • Thanked: 5 times
    • Show only replies by Karlos
Interrupt handling under WarpOS...
« on: June 12, 2005, 11:57:52 AM »
Hi,

It's sunday an hour before I have to be at work, so that can only mean another silly developer question :-D

Is it possible to handle a hardware level interrupt on the PPC under warpos? Preferably without having a context switch orgy ;-)

If so, does anybody have any good examples?
int p; // A
 

Offline KarlosTopic starter

  • Sockologist
  • Global Moderator
  • Hero Member
  • *****
  • Join Date: Nov 2002
  • Posts: 16879
  • Country: gb
  • Thanked: 5 times
    • Show only replies by Karlos
Re: Interrupt handling under WarpOS...
« Reply #1 on: June 12, 2005, 03:16:22 PM »
No takers?
int p; // A
 

Offline bloodline

  • Master Sock Abuser
  • Hero Member
  • *****
  • Join Date: Mar 2002
  • Posts: 12114
    • Show only replies by bloodline
    • http://www.troubled-mind.com
Re: Interrupt handling under WarpOS...
« Reply #2 on: June 13, 2005, 12:17:57 PM »
WarpOS had hardware interupt support? :-o :-o

Offline KarlosTopic starter

  • Sockologist
  • Global Moderator
  • Hero Member
  • *****
  • Join Date: Nov 2002
  • Posts: 16879
  • Country: gb
  • Thanked: 5 times
    • Show only replies by Karlos
Re: Interrupt handling under WarpOS...
« Reply #3 on: June 13, 2005, 01:30:34 PM »
I'm not sure, that's the point :-)

I know there are soft interrupts that can be triggered, eg calling CausePPCInterrupt() (or whatever it's called) from the 68K etc, as a fast way of getting the PPC to do something (no cache arbitrartion is performed).

I need to find out if I can get the PPC under warpos to respond to a CIA level interrupt, preferably without a lot of context switches (without any, preferably).
int p; // A
 

Offline bloodline

  • Master Sock Abuser
  • Hero Member
  • *****
  • Join Date: Mar 2002
  • Posts: 12114
    • Show only replies by bloodline
    • http://www.troubled-mind.com
Re: Interrupt handling under WarpOS...
« Reply #4 on: June 13, 2005, 02:33:37 PM »
Quote

Karlos wrote:
I'm not sure, that's the point :-)

I know there are soft interrupts that can be triggered, eg calling CausePPCInterrupt() (or whatever it's called) from the 68K etc, as a fast way of getting the PPC to do something (no cache arbitrartion is performed).

I need to find out if I can get the PPC under warpos to respond to a CIA level interrupt, preferably without a lot of context switches (without any, preferably).


What are you waiting for exactly? If it's a timer... doesn't the PPC have it's own timers?

Offline KarlosTopic starter

  • Sockologist
  • Global Moderator
  • Hero Member
  • *****
  • Join Date: Nov 2002
  • Posts: 16879
  • Country: gb
  • Thanked: 5 times
    • Show only replies by Karlos
Re: Interrupt handling under WarpOS...
« Reply #5 on: June 13, 2005, 02:39:04 PM »
An interrupt issued by the GPU. I'm not sure if it is accessible (but I can see the pin is connected to some logic on the card), but it will show up in the CIA if it shows up anywhere.

-edit-

Obviously finding out if the interrupt does show up is doable on the 68K, but I need it for something PPC based.
int p; // A
 

Offline Framiga

  • Hero Member
  • *****
  • Join Date: May 2003
  • Posts: 4096
    • Show only replies by Framiga
Re: Interrupt handling under WarpOS...
« Reply #6 on: June 13, 2005, 03:50:23 PM »
Have you ever taken a look to the huge 603-604 PDF datasheets?

MPC604EUM.pdf

Pins, Hardware etc

MPC603EUM

if you have a holyday week! :-)


 

Offline KarlosTopic starter

  • Sockologist
  • Global Moderator
  • Hero Member
  • *****
  • Join Date: Nov 2002
  • Posts: 16879
  • Country: gb
  • Thanked: 5 times
    • Show only replies by Karlos
Re: Interrupt handling under WarpOS...
« Reply #7 on: June 13, 2005, 04:28:24 PM »
Oh I looked at it, but hardware anaylsis isn't my field. I know the interrupt line of the GPU is connected to logic on the graphics card but where it ends up is anybody's guess.

I'll try to see if it shows up, assuming I can persuade the GPU to issue it in the first place.

I truly have no idea if the PPC can actually directly respond to such an interrupt if it does show up.

Worst case scenario is that the interrupt would be handled by a 68K task that can wake the PPC, but I don't really want anything that requires an 800 microsecond round trip for something fairly time critical ;-)

At least this shouldn't be a problem in OS4 :-)
int p; // A
 

Offline itix

  • Hero Member
  • *****
  • Join Date: Oct 2002
  • Posts: 2380
    • Show only replies by itix
Re: Interrupt handling under WarpOS...
« Reply #8 on: June 13, 2005, 04:58:28 PM »
Quote
I truly have no idea if the PPC can actually directly respond to such an interrupt if it does show up.

How it is possible to run Linux, MorphOS, AmigaOS4 and many many more on those boards? :) Do they have secret 68k interrupt handler or something? ;-)

Quote
Worst case scenario is that the interrupt would be handled by a 68K task that can wake the PPC, but I don't really want anything that requires an 800 microsecond round trip for something fairly time critical

You are out of luck I'm afraid.
My Amigas: A500, Mac Mini and PowerBook
 

Offline KarlosTopic starter

  • Sockologist
  • Global Moderator
  • Hero Member
  • *****
  • Join Date: Nov 2002
  • Posts: 16879
  • Country: gb
  • Thanked: 5 times
    • Show only replies by Karlos
Re: Interrupt handling under WarpOS...
« Reply #9 on: June 13, 2005, 05:01:07 PM »
@Itix

True, but of course these are complete OS's. I am referring specifically to WarpOS and wether or not it is possible for a WarpOS PPC app to respond to an interrupt without 68K intervention.

Hence why I added "At least this shouldn't be a problem in OS4 " on an earlier post ;-)

Specifically for the pedants, then, can you install a PPC native interrupt handler under WarpOS?
int p; // A
 

Offline KarlosTopic starter

  • Sockologist
  • Global Moderator
  • Hero Member
  • *****
  • Join Date: Nov 2002
  • Posts: 16879
  • Country: gb
  • Thanked: 5 times
    • Show only replies by Karlos
Re: Interrupt handling under WarpOS...
« Reply #10 on: June 17, 2005, 05:40:34 PM »
Seeing as Piru is around....

:bump:

The question is, can you *under WarpOS* install a PPC native (ie: without needing 68K at any point during handling) interrupt handler for hardware interrupts?
int p; // A
 

Offline Piru

  • \' union select name,pwd--
  • Hero Member
  • *****
  • Join Date: Aug 2002
  • Posts: 6946
    • Show only replies by Piru
    • http://www.iki.fi/sintonen/
Re: Interrupt handling under WarpOS...
« Reply #11 on: June 17, 2005, 05:56:45 PM »
I have no clue. I'd guess it's not possible. WOS is pretty damn limited in numerous ways.

As a sidenote: It was a bloody joke WOS was claimed to be basis for future OS, running standalone. Some of the WOS promotion was based on a claim that PowerUP couldn't do that, but the fact is WOS didn't allow it either...

Also WOS introduced all sorts of ugly hacks, like custom object formats, linkers and stuff instead of using the industry standard ELF.

In addition, WOS itself is known for the bugginess. In fact, there's some debate going on if the latest WOS actually is the stablest at all, or if it rather introduced whole bag of new bugs.

I'm not saying PUP was bugfree either (I myself found several bugs from it), but at least PUP got very stable once the bugs got ironed out.

In short: I wouldn't bother with WOS. Or at least, better not try get me look into WOS related problems. :-)
 

Offline KarlosTopic starter

  • Sockologist
  • Global Moderator
  • Hero Member
  • *****
  • Join Date: Nov 2002
  • Posts: 16879
  • Country: gb
  • Thanked: 5 times
    • Show only replies by Karlos
Re: Interrupt handling under WarpOS...
« Reply #12 on: June 17, 2005, 06:05:06 PM »
@Piru

Personally I don't rate either WOS or PUp, but alas the choice is not mine to make in this case. This is actually WOS shared library that I'm messing around with. Recompiling it for another target (at present) makes no sense as it is not directly used but forms a sub component of a larger system.
int p; // A