A 26bit build of RISC OS from ROOL sources
Peter Howkins (211) 236 posts |
The latest release is ‘C1’ from 17/6/2024 available on Hi, this is to announce the working on of a 26bit compatible release of RISC OS from the ROOL source tree. It targets the Risc PC era machines, including the A7000 and A7000+, and therefore RPCEmu as well. I’ve been aware that it should be possible to build a 26bit rom from the source tree since approx 2005 when I bought a Risc PC off ebay with an ‘Internal Pace Build’ of RISC OS on. However I’ve only started really hacking on it since last December. The build is mostly made by checking out the whole ROOL tree from approximately 2002 (the date of the Pace build) and using a contemporary set of the build tools (DDE). Then fixing up various build failures, sometimes moving a git submodule forwards or back to find a fix. The kernel however was moved back to 2000, the last commit before the HAL became a requirement. Other changes have generally involved making small changes to get things to compile, tweaks to paths etc. Unfortunately this isn’t under version control yet, though the build is reproducible (I’ve taken extensive notes of every change I’ve made), I think ideally it would make sense to be checked into a branch on ROOL, as such I’ve requested a ROOL gitlab account. I suppose I should answer some questions. Why? Mostly just for fun, it has been quite enjoyable getting each subsection working, and progressively building up a more and more capable ROM. There are some other advantages, I think this is the first 26bit rom that is unambiguously freely-licenced and freely-available, no worries about coughing up money or worrying about copyrights to set up an emulator to run an old copy of Impression, Lemmings, or Sibelius or whatnot. What features does it have? It has the feature set of RISC OS 3.8 or ROL RISC OS 4 and it does have DHCP (which was a Select 1 feature I think), so in terms of ROL a feature set of between 4.0x and 4.1×. In terms of Castle, it has most of the features that would have been in 5.00 on the Iyonix. Is it ‘ready’ yet? Probably not. I’ve only done some very minimal smoke-testing, whilst it seems capable, it has not been extensively tested, it dates to a period in RISC OS history when desktop builds weren’t being released from this tree. It is likely to have bugs in that have already been fixed in future ROOL releases. There is also the risk of integration bugs, where components of different ages have not been tested well against each other. Can you make a real ROM of it? Theoretically yes, I wouldn’t at the moment though, see ‘Is it ready yet?’. Where? There are some ‘known issues’ listed on that page. Want to help? If you would like to help work on this let me know, at the moment one of the most useful things is testing, finding out what doesn’t work and what is missing would be very useful in working out how much there is still to do. |
Stuart Swales (8827) 1357 posts |
Applause emoji. |
Rick Murray (539) 13840 posts |
Well, that sorts the “safeguarding the past” part of the banner text. đź‘Ť |
Peter Howkins (211) 236 posts |
I dunno, if someone could dig out some archimedes/3.1 era risc os code and make it open. I think that would make a lot of people happy. |
Rick Murray (539) 13840 posts |
How far past is too far past? ;) Still, a 26 bit version of anything 5-ish is big. |
Steve Pampling (1551) 8170 posts |
Like Stuart I applaud, using your time for something you wanted to do – because. |
Paolo Fabio Zaino (28) 1882 posts |
Nice work! :) |
Colin Ferris (399) 1814 posts |
Hmm – RO 5 possible on a 16Mb A3000 :-) |
Peter Howkins (211) 236 posts |
No such thing as ‘too far’. Just because we can’t think of a way it’d be immediately useful, doesn’t mean someone else won’t figure something out :) |
Colin Ferris (399) 1814 posts |
A A310 with 8Mb of RAM certainly worked well! |
Andy S (2979) 504 posts |
This is excellent news. Well done Peter! |
Liam Proven (529) 2 posts |
Does the “there are no stupid questions” rule apply here? I hope so. IIUIC then 32-bit RO came out of Pace’s internal work. It was the other fork/tree, from ROL, that was the 26-bit? IOW RO Adjust? http://www.riscos.com/riscos/439/index.php Is it meaningful to ask “what version is it?” Compared, say, to the final version number in the URL above, there — 4.39? If it’s not meaningful right now… will it be? |
Peter Howkins (211) 236 posts |
Yes the 32bit work started on the Pace tree, but of course it didn’t happen overnight and what it came from was traditional 26bit risc os from Acorn. The ROL branch also came from Acorn, released many versions (including 4.39 you mentioned) and also ended up going 32bit (for use on the a9home) but independantly developed., however this branch has ended up being closed source and any improvements there lost to history. My build is from the Pace side of the tree, at a point before 32bit and HAL were mandated. Functionality wise it’s similar in features and capabilities to the ROL side at approximately 4.0x to 4.1×. Really confusingly I might end up renumbering it to 4.50, this is so it’ll happily softload over the top of 4.39 ROL roms … |
Peter Howkins (211) 236 posts |
Today I uploaded a new release of the build ‘C1’ The big news is that it’s now in public version control at https://gitlab.4corn.co.uk/explore under the branch ‘twentysix’. Some other issues have been resolved; - More of the disc build is building |