Tabs gadget now open source
Rik Griffin (98) 264 posts |
Hi all, My plan is to release as open source some old RISC OS software which I no longer have the time to maintain myself. To start with I’ve put the source code for the Tabs Toolbox gadget onto github here: https://github.com/rikgriffin/TabsGadget This is my first time with github, I may have messed it up, please let me know if I have! To compile the source you’ll need a couple of utility programs which I’ll upload ASAP, or I’m sure industrious people can work around it. The code is released under a BSD style licence, which basically says “do what you want but acknowledge me as the original author”. If someone decides to incorporate this code into the ROOL source tree, or any other RISC OS distro, that’s cool with me. I’m posting here because I have an account on these forums, not intending to show any favouritism towards one or another branch of RISC OS. |
Paolo Fabio Zaino (28) 1882 posts |
@ Rik, Great job sir, I was trying to contact you to see if it was possible to release the code as Open Source, I am using it in my PowerFiler and would like to have everything open sourced (to make sure people can keep maintaining the whole thing even if I get bored of working on it). Thank you very much :) |
David Pitt (3386) 1248 posts |
A build shows there are two missing files that were dependencies outside the main source. Norcroft RISC OS Arm C vsn 5.88 [27 Oct 2021] cmhg -32bit -p -d h.Header cmhg.Header o.Header "cmhg.Header", line 3: Serious error: #include file "Rikslib:Services.h" wouldn't open cmhg.Header: 0 warnings, 0 errors, 1 serious error AMU: *** exit (1) *** There is a further It is just that one file from RiksLib that is needed. However also in Update A copy of RiksLib was found on RiscWorld CD inside Popcorn. That’s Update2 That old file was insufficient. A file of Service calls is in the DDE, Update3 Found it, use Verma to look at the built module. #define Service_RedrawingWindow (0x44EC6) |
Rik Griffin (98) 264 posts |
Thanks for the testing! My intention is to update the sources I upload to github so that they will build without special dependencies like that. As you might guess, “RiksLib” is a personal collection of all sorts of crap I’ve thrown together over the years, any released version will be way out of date. I had forgotten about Popcorn! “rmensure.h” is part of “glib” which as far as I remember, was something Acorn released to help people write Toolbox modules. I assumed it was still available as part of the ROOL source. The source files of the copy I have list the authors as “IDJ” and “rlougher”, no copyright notices. Not sure if I have the right to upload that. |
David Pitt (3386) 1248 posts |
There is no “glib” entity now but glib.h and rmensure.h files are in ROOL’s Builder environment, but not in the DDE. |
Rik Griffin (98) 264 posts |
I’ve just updated the code on github, hopefully the new version will build without needing external stuff. The dependencies on “glib” have been removed – I’ve included the files from the RISC OS source in Tabs – they are Apache licensed so I think this is OK. This means you don’t have to have the RISC OS sources installed to be able to build Tabs. Ideally someone will do a proper job on this but this quick fix should allow the module to be built. |
David Pitt (3386) 1248 posts |
There is still a Apart from that it does build with the DDE. Many thanks. |
David Pitt (3386) 1248 posts |
There is one further small issue. Three service call defines have been added to It is now also building using the shared MakeFiles.
Someone proper would be good. The “quick fix” is complete source so good to go. |
Rik Griffin (98) 264 posts |
Another day, another commit. Thanks David for pointing out the mistakes, I’ve uploaded another version which should really get rid of those external dependencies. I’ve also added “bin2c” to the Utilities repo, and reinstated Tabs’ use of it during the build. This utility is used to create “Sprites.c”, which is just a sprite file packaged up as a C array. |