Building RISC OS for the RiscPC
Andrew Hodgkinson (6) 465 posts |
This topic has been imported from the old forum. Due to its use of fixed format text, you may need to make your browser view wider in order to see posts with the correct layout. |
Steve Revill (20) 1361 posts |
If you are interested in learning about what would be involved in taking the RISC OS 5 sources from the shared source project and making them build a ROM image for older machines (e.g. the RiscPC), then take a look at this page in our Wiki: http://www.riscosopen.org/wiki/documentation/pages/Building+RISC+OS+for+the+Risc+PC |
Andrew Hodgkinson (6) 465 posts |
Steve Revill (20) wrote: > [...] this page in our Wiki: Or, for the automatic linker to work... http://www.riscosopen.org/wiki/documentation/pages/Building+RISC+OS+for+the+Risc+PC |
James Peacock (34) 19 posts |
Steve Revill (20) wrote: > http://www.riscosopen.org/wiki/documentation/pages/Building+RISC+OS+for+the+Risc+PC I noticed a reference to "real-time threading support". What is this? Is it present on Iyonix RISC OS 5 builds? |
Ben Avison (25) 445 posts |
James Peacock (34) wrote: > I noticed a reference to "real-time threading support". What is this? Is > it present on Iyonix RISC OS 5 builds? I'm glad someone asked! There has been a hook in the kernel since RISC OS 5.08 for the use of a pre-emptive (but not timesliced) system-mode thread manager module. Warm Silence Software wrote a "Callback After Interrupt" module years ago which was similar in concept, but it had various bugs that were insurmountable without this support from the kernel. The thread manager module was written to fulfil a particular requirement for video decoding on a set-top box, and it hasn't been released for desktop machines yet. But I hope that it'll be on the list of things to go shared-source once the primary ROM modules are out. |
James Peacock (34) 19 posts |
Ben Avison (25) wrote: > I'm glad someone asked! There has been a hook in the kernel since RISC > OS 5.08 for the use of a pre-emptive (but not timesliced) system-mode > thread manager module. Interesting, how does a pre-emptive (but not timesliced) thread behave? |
Ben Avison (25) 445 posts |
James Peacock (34) wrote: > Interesting, how does a pre-emptive (but not timesliced) thread behave? Pre-emption is strictly on a priority basis. This is aimed at things like audio buffer fills and video blit operations, and any other applications where a lot of processing has to be done with strict latency requirements. The real-time threads run at a higher priority than normal (transient and non-transient) callbacks, but a lower priority than interrupt handlers, and there is a priority scale amongst the real-time threads. Bringing this back on topic, because it uses system mode, it'll only work if you've got an ARM v4 architecture (StrongARM or later, including most embedded ARM7's these days). |