HeyRick / BudgieSoft
|Something I believe in is that when you finally decide it is not worth continuing with a specific project...|
Release the source code!!!Well?
Here it is!
Somebody, Peter Naulls?, has made a proper 32 bit version of DeskLib 2.30. I would recommend that you use this version for writing software; however to get my software compiled and up&running as quickly as possible, you'll probably want to download my version of DeskLib. Go here for more info.
You CANNOT use Desk v3.20 (etc) as too much has changed from it's DeskLib origins.
Thus, with one exception, this project is now to be called CastAWote. If anybody here has arrived here looking for details and information on CastAVote, then if you are looking for the ArcBBS-compatible add-on for RISC OS (hands up how many of you even know what I'm talking about...?) then you have come to the right place. If you are looking for the professional Internet-based distributed voting system, then asides from CMS deciding to claim the product name as their own and the similarity of "it has something to do with voting", then you are very much in the wrong place - go to www.castavote.co.uk.
I wish to now present to you the CastAWote project source code...
This was a suite of programs for ArcBBS (running under RISC OS) which provided a "vote on this topic" for the users of the bulletin board.
You can download the sources for:
In any case:
Previous releases required a few patches in order to get it working. This version will work out-of-the-box if you simply amend the !Run file to run the SourceCode file instead of !RunImage...
All other patches have been applied. Call it as door 21 if you don't have a config file to say otherwise.
There is no !RunImage supplied. It would only be a compressed version of the source!
The main menu:
Adding a vote:
The local vote software:
The VoteModule source code is available separately (Acorn C/module):
The PDF document explaining the VoteModule API is not currently available. It has not been converted to the CastAWote naming. When it has (i.e. once I've found the file...), it will be made available.
The VoteFile tool attempts to fix potential problems with the CastAWote database. Here is the VoteFile source (Acorn C):
Due to the problems BBSs will be facing compared to websites and fixed-price broadband connections, I do not envisage there will be new installations. Because of this, I do not plan to take the time to convert and build 'executable' releases. These can be sourced from BBSs if really required. I have rebuilt VoteModule as it is an important part of the system.
You have all the sources here, to build your own.
I did want to expand this with better quality and colour, however neither HCCS nor the designer ever returned my emails (despite the Vision no longer being in production), and my ability to figure out ARM code was not up to that required to take apart a complex program. So, this is the best we have.
The inner core is properly © HCCS, the rest being my bolt-in. In any case, I don't imagine they'll argue - the code is completely 100% useless if you don't actually have an HCCS Digitiser!
Whatever, here's the code:
You also get, as an added benefit, a quick'n'simple viewer and a time-lapse program (edit the paths first!) which should be left running (with monitor off) and it will take a small snapshot every 30 seconds. I had a feeling that the landlord was coming into my room and coincidentally stuff was departing my room at roughly the same time frame. This cobbled-up software proved to be somewhat useful...
In order to build, just compile everything into the 'o' directory. Don't worry about missing functions. If any executables were created, delete them - we're only interested in the object files.
Then run the obey file supplied to build the "DoorLib" library. It will leave it there as "o.DoorLib"; which you can then copy into the "o" directory of applications that use DoorLib.
What FetchMail does is work with Argonet's Posty to manage and pre-process your emails. You can whizz though your emails before Posty gets to see them, deleting those that are undesired, bouncing those you don't want, and so forth.
You can also extract and save mailboxes.
This software was written in C.
You will need DoorLib - sources above, or go here for prebuilt (APCS/26).
PATCH: You'll first need to copy in a version of the DoorLib library.Oh, and yes, I know it is an odd conjugation; it should properly be parlons (as in "nous parlons", or "we speak") instead of parlez (as in "vous parlez", or "you (plural) speak"). The name was chosen for artistic reasons as I think "parlez" (said like pahr-lay) is a better sounding word than "parlons".
Next, you will need to create "s.getstat", which looks like this:PC RN 15 AREA |C$$code|, CODE, READONLY EXPORT arcbbsfiler_get_status_pointer arcbbsfiler_get_status_pointer SWI &41014 MOVS PC, R14 ENDAmend as necessary if you are building to APCS/32 - though, I don't know if ArcBBS itself ever had an APCS/32 build. I've not used it in a loooong time!
Now amend the MakeFile so the !RunImage is built as follows:@.!RunImage: @.o.parlez C:o.stubs DeskLib:o.DeskLib link $(linkflags) @.o.parlez @.o.getstat @.o.doorlib C:o.stubs DeskLib:o.DeskLiband the parlez object file is built as follows:@.o.parlez: @.c.parlez objasm $(objasmflags) -from @.s.getstat -to @.o.getstat cc $(ccflags) -o @.o.parlez @.c.parlezIt's a crappy makefile, but I can't be bothered to rewrite it - it works as it is...
!Teletext is, in my opinion, the best teletext viewer for RISC OS. The powerful scripting system makes it miles better than the commercial Teletext+... but hey, Paul Skirrow can probably list attributes his software has over mine (if any <grin>!).
In any case, full (BASIC) sources are here:
Note - the teletext driver module is supplied (with kind permission of the author), however it is not mine so please do not ask, nor expect, sources.
Furthermore, if you wish to distribute teletext software that uses this module, you really should ask Colin Granville for permission. Don't ask me, and don't assume "it is okay" - ASK!
More to come. If you have any requests - email me!