G
Guest
Guest
Archived from groups: rec.arts.int-fiction,rec.games.int-fiction (More info?)
[I'm posting this on behalf of Nikos Chantziaras. He doesn't have reliable
Usenet access right now, so if you have support-type questions about this
new release, you're probably better off emailing him directly - his address
is at the end of the message. --Mike]
(Mac OS X users: "Unix" includes your OS too, so keep reading.)
(Replies to this message will only show up in rec.games.int-fiction. Please
don't change the "follow-up-to" header.)
I was working on fine-tuning a new Unix port of the character-mode Tads
interpreter for the last couple of weeks (it combines both virtual machines;
Tads 2 and Tads 3). It still has some "childhood" problems, but the main
work is complete. I hope that, in the long term, it will replace the
existing Unix port, which is too big and complex, and has a few problems. I
think that maintaining the current port is somewhat of a nightmare, as no
one seems to know what might break if extensive changes are made to it (like
implementing color support; I already tried but all Hell broke loose). One
of the biggest problems is that it has "sub-ports" with maintainers for each
of them. (Of course, it is still very useful for very old systems that lack
even a basic curses library, so I'm not suggesting that it should be
abandoned.) The new terp should be more portable than the current
Unix-port; it even compiles cleanly under Microsoft Windows.
This is how the new port looks like (screenshots taken while the terp was
running in a 80x27 console):
(Intro from Soren Lovborg's "Evil Brain Five")
http://members.lycos.co.uk/realnc/evilbrain.png (1.6 KB)
(In-game menu in Eric Eve's "Square Circle")
http://members.lycos.co.uk/realnc/circle.png (1.8 KB)
(Iain Merrick's "Forever Always")
http://members.lycos.co.uk/realnc/forever.png (6.5 KB)
(Mike Sousa's and Jon Ingold's "Till Death [...]")
http://members.lycos.co.uk/realnc/tilldeath.png (6.5 KB)
(Geoff Fortytwo's "I Must Play")
http://members.lycos.co.uk/realnc/mustplay.png (7.8 KB)
To avoid confusion with the current port, I named the new interpreter
"FrobTADS". Call me a marketing weenie.
The terp uses the Autotools (autoconf+automake), so there's no need to edit
makefiles prior to building (there aren't any makefiles; they will be
generated "on the fly"). A "configure; make; make install" is enough to
configure, compile and install it. For masochists who want to compile in
MS-Windows, if you're using MinGW/MSYS or cygwin, just "configure;make" like
in Unix; it should work. A Dev-C++ project file is not provided; it should
be easy to create one by yourself (Dev-C++ is something like Visual C++ but
uses Windows GCC as its compiler; it uses the same system API as Visual C++
(win32), so there's no POSIX emulation layer).
The terp is written in C++, with a simple window class that wraps around the
curses-API, so maintaining it should be a lot easier (at least that's how
C++ works for me). It looks and feels much like Frotz or the MS-DOG Tads
terp. I chose C++ instead of C since Tads 3 itself is C++, so choosing C
would not lower the system requirements and it's is a combined TADS2/3
interpreter.
The code is (mostly) trivial and very generic; it does not rely on any
Linux/BSD/SysV/whatever functions, nor kernel calls. It does not do any
fancy curses-tricks that might not work on broken curses libraries. It
restricts itself to standard C++, with no compiler specific features, no
exception handling, no templates, no namespaces, and it does not make use of
the standard template library. This should make it compile on older C++
compilers. (At least I *hope* it does all these things. If something
slipped through, it's a bug.)
Currently, the main differences to the current port are:
- Automatic configuration prior to building.
- Tads 3 color support (text, background, banners) and configurable
default colors.
- Correct timing with timed operations (millisecond-precision on
almost every system).
- Input like in Frotz; cursor keys, insert, delete, etc., instead
of Emacs-like input.
- Statusline and TADS3 banners look as they should.
- Less source code, more comments.
- More portable
Some things are still missing (like a Frotz-like configuration file).
Terminal-resizing when running in X11 or OS X is handled, but maybe not 100%
since it might not work with some curses libs, I don't know. Your feedback
is needed here.
Anyway, just because it works on my system doesn't mean it works everywhere
else. So I need help in testing the new port. If you have a Unix-like OS
(including Mac OS X) and some spare time, download the tarballs:
(Main package - Interpreter)
http://www.tads.org/frobtads/frobtads-0.1.tar.gz
(TADS 2 compiler)
http://www.tads.org/frobtads/t2comp.tar.gz
(TADS 3 compiler)
http://www.tads.org/frobtads/t3comp.tar.gz
and give it a go. Although you can "configure; make" right away, reading
the README and/or INSTALL files first might be a good idea.
Try the above games if you can, and compare them to the screenshots.
I can be reached at:
realnc (at) users sourceforge net
[I'm posting this on behalf of Nikos Chantziaras. He doesn't have reliable
Usenet access right now, so if you have support-type questions about this
new release, you're probably better off emailing him directly - his address
is at the end of the message. --Mike]
(Mac OS X users: "Unix" includes your OS too, so keep reading.)
(Replies to this message will only show up in rec.games.int-fiction. Please
don't change the "follow-up-to" header.)
I was working on fine-tuning a new Unix port of the character-mode Tads
interpreter for the last couple of weeks (it combines both virtual machines;
Tads 2 and Tads 3). It still has some "childhood" problems, but the main
work is complete. I hope that, in the long term, it will replace the
existing Unix port, which is too big and complex, and has a few problems. I
think that maintaining the current port is somewhat of a nightmare, as no
one seems to know what might break if extensive changes are made to it (like
implementing color support; I already tried but all Hell broke loose). One
of the biggest problems is that it has "sub-ports" with maintainers for each
of them. (Of course, it is still very useful for very old systems that lack
even a basic curses library, so I'm not suggesting that it should be
abandoned.) The new terp should be more portable than the current
Unix-port; it even compiles cleanly under Microsoft Windows.
This is how the new port looks like (screenshots taken while the terp was
running in a 80x27 console):
(Intro from Soren Lovborg's "Evil Brain Five")
http://members.lycos.co.uk/realnc/evilbrain.png (1.6 KB)
(In-game menu in Eric Eve's "Square Circle")
http://members.lycos.co.uk/realnc/circle.png (1.8 KB)
(Iain Merrick's "Forever Always")
http://members.lycos.co.uk/realnc/forever.png (6.5 KB)
(Mike Sousa's and Jon Ingold's "Till Death [...]")
http://members.lycos.co.uk/realnc/tilldeath.png (6.5 KB)
(Geoff Fortytwo's "I Must Play")
http://members.lycos.co.uk/realnc/mustplay.png (7.8 KB)
To avoid confusion with the current port, I named the new interpreter
"FrobTADS". Call me a marketing weenie.
The terp uses the Autotools (autoconf+automake), so there's no need to edit
makefiles prior to building (there aren't any makefiles; they will be
generated "on the fly"). A "configure; make; make install" is enough to
configure, compile and install it. For masochists who want to compile in
MS-Windows, if you're using MinGW/MSYS or cygwin, just "configure;make" like
in Unix; it should work. A Dev-C++ project file is not provided; it should
be easy to create one by yourself (Dev-C++ is something like Visual C++ but
uses Windows GCC as its compiler; it uses the same system API as Visual C++
(win32), so there's no POSIX emulation layer).
The terp is written in C++, with a simple window class that wraps around the
curses-API, so maintaining it should be a lot easier (at least that's how
C++ works for me). It looks and feels much like Frotz or the MS-DOG Tads
terp. I chose C++ instead of C since Tads 3 itself is C++, so choosing C
would not lower the system requirements and it's is a combined TADS2/3
interpreter.
The code is (mostly) trivial and very generic; it does not rely on any
Linux/BSD/SysV/whatever functions, nor kernel calls. It does not do any
fancy curses-tricks that might not work on broken curses libraries. It
restricts itself to standard C++, with no compiler specific features, no
exception handling, no templates, no namespaces, and it does not make use of
the standard template library. This should make it compile on older C++
compilers. (At least I *hope* it does all these things. If something
slipped through, it's a bug.)
Currently, the main differences to the current port are:
- Automatic configuration prior to building.
- Tads 3 color support (text, background, banners) and configurable
default colors.
- Correct timing with timed operations (millisecond-precision on
almost every system).
- Input like in Frotz; cursor keys, insert, delete, etc., instead
of Emacs-like input.
- Statusline and TADS3 banners look as they should.
- Less source code, more comments.
- More portable
Some things are still missing (like a Frotz-like configuration file).
Terminal-resizing when running in X11 or OS X is handled, but maybe not 100%
since it might not work with some curses libs, I don't know. Your feedback
is needed here.
Anyway, just because it works on my system doesn't mean it works everywhere
else. So I need help in testing the new port. If you have a Unix-like OS
(including Mac OS X) and some spare time, download the tarballs:
(Main package - Interpreter)
http://www.tads.org/frobtads/frobtads-0.1.tar.gz
(TADS 2 compiler)
http://www.tads.org/frobtads/t2comp.tar.gz
(TADS 3 compiler)
http://www.tads.org/frobtads/t3comp.tar.gz
and give it a go. Although you can "configure; make" right away, reading
the README and/or INSTALL files first might be a good idea.
Try the above games if you can, and compare them to the screenshots.
I can be reached at:
realnc (at) users sourceforge net