TADSpole
TADSpole is a small TADS 3 program that can load another T3
game/program ("image"), and dump its contents.
It's very much in beta still, in part because the T3 binary
format is rather difficult to analyze beyond the high level block
structure.
TADSpole, being a T3 program, will run under any T3 interpreter
that supports banners. However, in practice you'll need a more
advanced interpreter, supporting scrollbars and such.
That means HTML TADS on Windows, and, uh... something similar,
on other platforms.
Download
tadspole.t3 (46 kB executable, version 0.2).
tadspole-src.zip (26 kB source code archive, version 0.2).
Features of TADSpole
- Supports all image blocks, except the Global Symbol Table
Block.
- Obtains symbolic names for the values exported in the Symbolic
Names Block.
- Tries to decode constant data pool pages into strings and lists
using heuristics (though, it isn't very good at it.)
- Allows you to show embedded text files (such as GameInfo.txt)
in multimedia blocks.
- Enables you to see the time of compilation of the image.
- Comes with a nifty hex viewer for examining blocks.
- Can dump blocks to file.
- Will dump TadsObjects in a quite indecipherable format for your
viewing pleasure.
- Also supports Vector and CharacterSet objects.
- Has limited support for the IntrinsicClass and 'int-class-mod'
objects.
To-do
- Commandline interface.
- Support for all metaclasses (once Mike writes up some specs for
those, or I reverse engineer them.)
- Naming of objects, properties etc. (using heuristics.)
- Location tree dump (using above data.)
- A better analysis of constant data pools (using better
heuristics.)
- Disassembly of constant code pools. (Guess what? Heuristics
will be neccessary here, too!)
Copyright 2002-13 Søren Løvborg.
The text of this page is licensed under a Creative Commons Attribution-Share Alike 3.0 License.