Amiga.org
Operating System Specific Discussions => Amiga OS => Amiga OS -- Development => Topic started by: Karlos 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?
-
No takers?
-
WarpOS had hardware interupt support? :-o :-o
-
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).
-
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?
-
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.
-
Have you ever taken a look to the huge 603-604 PDF datasheets?
MPC604EUM.pdf (http://www.freescale.com/files/32bit/doc/ref_manual/MPC604EUM.pdf)
Pins, Hardware etc (http://www.freescale.com/files/32bit/doc/data_sheet/MPC604E9QEC.pdf)
MPC603EUM (http://www.freescale.com/files/32bit/doc/ref_manual/MPC603EUM.pdf)
if you have a holyday week! :-)
-
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 :-)
-
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? ;-)
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.
-
@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?
-
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?
-
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. :-)
-
@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.