





|

Unless otherwise noted, this software runs on Acorns only, but
should run on Acorn Risc OS 3.1, 3.5, 3.6, and 3.7. Most have been
tested with StrongARM, but do get in touch if you think you've found
an incompatibility. None has been tested on Risc OS 2, but some might
work. The software is all held as Spark archives (check out this page at Imperial College,
or get ArcFS off any Acorn User cover disk, if you don't already have
a de-archiver).
|
AADraw 1.02, |
a tool to make sprites from Draw files (but InterGif can now do this too)
|
| Automaton Wars
3.80, | a computer board game
|
| Benchmarks, | some performance tests (probably compiles on anything)
|
|
CheckWeb, |
a simple consistency checker
|
|
Chorale, |
a suite of UPnP software for Unix and Windows, is hosted at Sourceforge, not here.
|
|
Enla 1.1, |
a tool to report on unused routines in large C programs
|
|
ExtrasLib 0.1, |
some extra code for users of DeskLib
|
|
InterGif 6.15, |
a tool to make GIFs, even interlaced ones, and even animated ones (available for NT, Win95, and Unix as well as Risc OS)
|
|
JTL (Just The Linux) 1.2, |
a minimalist Linux distro built entirely from sources
|
|
ManyFonts 3.0, |
a font manager (requires RiscOS 3.10 or later)
|
|
Sort Your MP3s Out 1.1, |
an ID3-tag editor for Unix only.
|
If you're in the medium memory model, the implicit casting of
(void __near*)NULL to a __far* appends the data
segment register to it, so the routine you're passing it to gets
something which isn't (void __far*)NULL. Sorry if you
already knew this, or if you don't have a clue what I'm talking about,
but I've just cured a bug caused by this and I think it's foul.
Copying things
As far as I'm concerned, working as a computer programmer is a bit
like prostitution: those who do it do so because they don't think
there's much else they can do which people would pay them for
-- they'd much rather be doing it for free for the sheer love of it.
Thusly, you are welcome to copy any of these programs -- in fact, the
more widely they're spread, the bigger buzz I get off it. These
programs (and these Web pages) are NOT
COPYRIGHTED and are NOT distributed under the GNU General Public
Licence.
I do this because
when I write a piece of code, I want it to STAY WRITTEN. That's to
say, I write a routine only when I can't find an existing one that
does the job; and once I've written it I don't want ANYONE, ANYWHERE,
EVER to have to write it again. For further information see The Manifesto of
the Futurist Programmers ("A Farmer's Tractor: Is it
object-oriented? Is it extensible?") or consult your
pineal gland.
If you run an archive
site, by all means stick this stuff on it. If you run a PD/freeware
disk library, or organise magazine cover disks, by all means stick
this stuff on your disks. Just make sure you've got the latest
versions. I know of one freeware library whose books include
both Critical Mass (Automaton Wars 1.00) and Automaton Wars
2.40. That's just carelessness. Besides, the current version is 3.80
and earlier ones were just bobbins. Never mind Risc OS 3.7 -- I don't
think Critical Mass worked on Risc OS 2, it was Arthur-only!
Changing things
In addition to this, I'd like to request that anyone who
changes any of the source code in order to make a bug-fix or
enhancement to a program (as opposed to including bits of it in a
new program doing something substantially different) sends me the
changes they have made so that I can keep the distributions here
as up-to-date and definitive as is possible.
The same thing again in legalese
Everyone who has a copy of one of these programs, including ones
downloaded from this site, is the owner of their copy of
it, not a 'licensee'. In other words, infinite extension
of rights is possessed by all who have, by any manner, acquired a
copy of one of these programs: this includes unlimited rights for
use, copying, modification, redistribution, resale, or any
combination thereof, and excludes only the arrogation of claim of
authorship.
struct{int i;char s[16];int j;}main={0xEF000001,"Hello
world\n",0xE1B0F00E};
DEF FNzero_terminate( a% ) : LOCAL a$ : SYS
"XOS_GenerateError",a% TO a$ : = a$
<html>Your browser is <! -- >not <! -->Fresco<! -- >, but <! --><!-- -- >is SGML compliant<!-- --><!-- ->MSIE 3<!-- --><!-- >Netscape 3<!-- -></html>
All Rites Reversed -- Copy
What You Like
|