However, since TADS does not
allow derivative works that does not qualify as open source or Free software (although perhaps a new implementation could be made by reading the documentation about the T3-VM and implementing that, maybe).
Indeed, these restrictions are somewhat limiting, especially now that
many OSs are officially abandoning 64-bit support. I wish the author
might re-license TADS under a more permissive license, to ensure its
survival in time. His original intention was to prevent the proliferation of TADS variants incompatible with themselves, but this
goal can be achieved by any FOSS license that requests changing the
name of derivative software.
ADRIFT has become fully open source since quite a while, and the full source >> code is available on GitHub under BSD-3-Clause:
https://github.com/jcwild/ADRIFT-5
OK, so that is good.
However, it seems to be written in VB.NET and doesn't use Glk. (Fortunately, there is Mono to run .NET executables on non-Windows systems, and I read the documentation and it says there is a Mono Runner, so that will work, so that is good. I personally would prefer in C or Glulx, but Mono works too.)
The main problem with ADRIFT source code is that it relies on commercial third party components for the GUI, without which it won't
compile. These are rather expensive components, and to keep the
project FOSS they would have to be replaced by native VS controls
somehow.
I also see no mention on the web site about the source code; it is found
only in GitHub as far as I can tell. (Maybe I missed it, but I cannot find it so easily, if it is there.)
The new was broken out in a single brief post on the ADRIFT forum:
http://forum.adrift.co/viewtopic.php?f=14&t=11875
I also cannot find documentation about the file format.
There isn't one unfortunately, and the ADRIFT 5 Manual isn't complete
either. But the source code is well documented enough to allow re-implementing various modules in other languages if required. I had
a brief look at the file format to understand better how it compresses
XML files, etc., and my first impression is that it's quite doable
even without an official specs documentation — but of course, writing
one would make the whole endeavour easier.
Hugo seems to have other problems such
as assuming 16-bit integers on 32-bit systems
Could you please expand on that? I'm interest in learning more about these >> limits, since I'm working on/with Hugo right now.
Last time I checked I thought I noticed something like that, but I cannot find it now. It looks like it is designed to work with 16-bit integers but allows the system to use larger integers, and would not malfunction on a system with 32-bit or larger integers. I suppose I must have made a mistake, because what I wrote before seems to be wrong (either that, or it was the case in some older version that is no longer in use, but has been fixed now).
So, I was mistaken. Sorry for my mistakes, and thank you to clarify!
You're right about Hugo using 16 bit data types internally, either
signed or unsigned (depending on need), and in a recent email exchance
with Hugo author (Tessman) he mentioned that in case Hugo were to see
a new edition the first thing he'd be changing was dropping the 16-bit
integers in favour of a wider words (he even mentioned 64-bit data
types).
So chances are that these 16-bit integers might be a problem on some platforms, I'm just no aware which ones since I work mostly on x86 machines, and Hugo has been ported to so many platforms in the course
of the years that it's hard to keep track of them.
Anyhow, if you do stumble on the 16-bits limitation again, by chance,
please do buzz me for I'm interested in following it, since I'm
planning to work on a Hugo port in Rust sometime in Spring. Since
Rust can compile to multiple hardwares, I'll have to keep into account
the 16-bit issues.
Thanks again,
Tristano
--- SoupGate-Win32 v1.05
* Origin: fsxNet Usenet Gateway (21:1/5)