tadsrsc on Linux?

I’ve installed the tads2-dev package for Ubuntu 12.04. It gave me a compiler, tadsc, and a debugger, tdb. But, the manual also refers to a resource compiler, tadsrsc, which embeds metadata, sounds, and images into either a game or resource file.

I tried looking at newer versions of the tads2-dev package, thinking that I might try a backport, but they not only don’t include tadsrsc, they also don’t include tdb.

Is there a port of tadsrsc for Linux somewhere? And, if I upgrade to a more recent version of Ubuntu, will I need to compile tdb from the source code on the IF-Archive?

I haven’t played with TADS 2 at all, but I have installed FrobTADS on my Linux box (openSUSE)…I built it from source. It has both the TADS 2 and 3 compilers. Doesn’t look like it includes tadsrsc at all (and it didn’t build the tdb file either). I’m more interested in TADS 3 development myself (well, I like to look at a blank editor window and think deep thoughts about how I’m in over my head most of the time)
So I don’t think that downloading the source will help your particular situation. (there is a dbg.c/dbg.h file in the source that looks like to my inexperienced eye to be the tads 2 debugger, but it doesn’t seem to include any debugger front-end, and the only mention I find of resources is the code that loads them into the interpreter, nothing about compiling the resources)

I’ve now found two different ports of TADS to Unices, FrobTads (for versions 2.5.17 & 3.1.3) by Nikos Chantziaras, and TADS Unix (for versions 2.5.9 & 3.0.8) by David Baggett et al.

FrobTads seems to include ports of the interpreter(s), frob, the T2 compiler, tadsc, and the T3 compiler, t3make, but nothing else.

TADS Unix includes ports for the interpreter(s), t23run, the T2 compiler, tadsc, the T2 debugger, tdb, and the T2 resource manager, tadsrsc, but leaves the last out of the makefile. It also has ports of the T3 compiler, t3make, and the T3 resource manager, t3res, but leaves out the T3 debugger.

It looks like if you want the most recent versions of all the available TADS tools, you’ll need to build both ports, so you get the T2 debugger and the T2 and T3 resource managers from TADS Unix, along with the newer compilers and interpreters from FrobTads.

Also, the source-code archive for FrobTads on the IF-Archive is corrupted, so you’ll have to pick it up from the TADS page or its home page.

I wasn’t aware the resource tools were needed for anything. Doesn’t the compiler handle resources?

Not according to the manual. The “Compiler” chapter of the Author’s Manual doesn’t say anything about bundling, listing, or extracting resources, while the “Resources” chapter of the HTML TADS documentation calls for the use of either tadsrsc or t3res for handling resources.

I suppose one of the porters could have combined the resource manager with the compiler, but if so, it’s undocumented. Have you been able to manage resources using just tadsc or t3make?

Not on my linux computer at the moment, but I was looking at the t3make --help output, and it does merge the resources into the .t3 file. (use -res /path/to/resource). Again, don’t know about the tads2 portion of FrobTADS as I haven’t messed with that at all.

1 Like

It doesn’t look like either port of the TADS 2 compiler has the resource manager bundled into it. I’ll try to build it from the TADS Unix port.

I added tadsrsc to FrobTADS. It will be built and installed alongside tadsc.

Do a “git pull” followed by a “./bootstrap”. Then reconfigure and build.

Thanks Nikos!

It looks like you’ve been working on the debugger too. Will your user interface be based on the DOS debugger, or are you trying something new?

The debugger-enabled build (“frobd”) is just to allow external debuggers to hook into the T3VM. This user requested it:

memberlist.php?mode=viewprofile&u=18887

I don’t know though how far he got. He was doing a T3 debugger in Python.

There’s no actual debuggers included in FrobTADS and I don’t think I’ll be able to provide them anytime soon. And no one else has volunteered either.

I understand. Thanks for keeping the rest of the tools up to date. And thanks for QTads, too. “Arrival” and “Kaged,” wouldn’t have worked nearly as well without it.

Anyone, contact me by PM if you are interested… this is in my TO-DO list, I can give it more priority.

The introduction from the docs:

[spoiler][code]

Introduction

This is a release for early adopters, people interested in testing or developing a debugger for TADS3.

A usable proof-of-concept is presented: command line interface (CLI) debugger, in Python.

Features:
- Display code
- Step through code interactively
- Positional breakpoints
- Conditional breakpoints
- Expression evaluation

General requeriments:
- A unix system compatible with frobtads (development is done in Debian GNU/Linux 7, wheezy)
- build tools
- git
- Python 2.7.3, (maybe 2.6 is enough, Python 3 is not supported yet)

You will need to:
- get the sources from the repo of frobtads
- add/replace some files and patch a bit of another
- bootstrap, compile and install the patched frobtads
- copy some Python files
- create a script (template provided)
- compile a .t3 with debugging symbols
profit!

Questions or reports are welcomed. I’m open to discuss further development. Maybe a “native” implementation in C++ is simpler in the long term, but I’m not very productive using it.

Some short term features to expect are: show locals, change next line, easy breakpoints and a simple Qt GUI.
[/code][/spoiler]

I would really like to see this happen and would like to help out here. I see this thread is quite dated so if this idea is abandoned but there’s anyone else out there considering implementing a standalone debugger or IDE plugin, pease let me know.

1 Like