### Welcome to XTads

XTads is a TADS 2/3 interpreter for macOS (10.12 Sierra or higher). It's a GUI application, with native macOS look and feel. Game output is text-only, with limited/simplistic support for HTML.

This is still a work in progress. Please report any bugs to runeberg76@gmail.com

Follow XTads on https://xtadsetc.com

XTads is open source and builds on the work of others. Please take the time to look at the About XTads panels.

Thanks for testing, - Rune

### Installing

Just unpack the XTads-prebeta-12.zip file, and move XTads.app to your Applications folder.

### Extra keyboard shortcuts

- Cmd-R Reload and restart current game
- Cmd-A Select all text, either the command being typed or the scrollback buffer, depending on cursor position
- Ctrl-K Delete any text after cursor (in the command being typed)
- Ctrl-A Move cursor to start of line
- Ctrl-E Move cursor to end of line
- Arrow Up/Down Recall previous commands

### Version History

#### Pre-beta 12 (2020-06-25)

- Games can now set text and background colors.
- Added a new user option to allow/disallow games to set text and background colors.
  See Preferences | Colors tab.
- Bug fixes.

#### Pre-beta 11 (2020-02-22)

- Improved support for HTML TADS features.
- Bug fixes.
- Performance improvements.
- UI tweaks.

#### Pre-beta 10 (2018-03-28)

- The "Open for Testing" dialog now lets you start a game from the position in a save file (T3 only).
- Logging
  - Logging gives you a way to observe how XTads operates internally, how it interacts with macOS and the TADS VMs, and (to a lesser degree) how games behave. Logging is mainly useful for working on XTads itself, but game developers might also benefit from it.
  - Configurable log levels: XTads has had built-in logging since the beginning, but you can now configure the severity threshold of each of XTads's logging classes. This is done from the Preferences panel, Dev. Mode tab. (This requires that XTads's development mode features are enabled, which is done from the Preferences panel, Misc. tab.)
  - Menu shortcut to log viewer: File | Open Log Console opens macOS's Console.app, configured to display log entries from XTads only.
    For this shortcut to work, you'll need to:
    - Enable XTads's development mode features (Preferences panel, Misc. tab.)
    - Enable "assistive access" for XTads: go to System Preferences, Security & Privacy, Privacy tab, and add XTads to the list of applications allowed to control you computer.
    You can also open Console.app from the /Applications/Utilities folder, and configure it manually by setting process "XTads" and subsystem "XTads" in the search field.
    Note that Console.app is a "live stream" sort of viewer - it doesn't show log entries from before it was opened, and has a limited time window.
  - For more details on XTads development mode features, visit https://xtadsetc.com/xtads-game-development-features/
- Misc. UI tweaks.
- Misc. bug fixes.
- XTads now requires macOS 10.12 (Sierra) or higher.

#### Pre-beta 9 (2018-02-05)

- A new "Open for Testing" dialog, to allow capture/playback of command scripts and output scripts, aiding game authors in regression testing.
- Misc. UI tweaks.
- (Much internal cleanup.)

#### Pre-beta 8 (2017-12-22)

- The Open Recent menu now shows proper game titles (when available).
- Banners with help menus no longer flicker when navigated with keyboard.

#### Pre-beta 7 (2017-10-31)

- Fixed a build issue related to macOS 10.13 (High Sierra).
- Fixed several threading issues related to macOS 10.13 (High Sierra).

#### Pre-beta 6 (2017-10-21)

- Banners now support pagination (i.e. more prompts on overflowing text).
- A few bug fixes and performance improvements.

#### Pre-beta 5 (2017-08-09)

- Fixed (or greatly alleviated, at least) a serious performance issue to do with window/view resizing as the amount of buffered text grew. TADS 2 games using HTML output were especially affected.
- Right and center aligned text in banners now updates continually as window gets resized.

#### Pre-beta 4 (2017-07-31)

- Bug-fix: changing background colour of main output area didn't work
- Source code fix: character set translation files (.tcp) were missing from source structure, preventing build

#### Pre-beta 3 (2017-07-25)

- Support for banners (except more-prompts)
- Full support for the <tab> tag
- Improvements in text formatting
- Misc. bug-fixes

### Missing features

XTads currently lacks support for some features, most notably:

- Images and sound
- Full HTML TADS coverage
- Timed input

Hopefully these areas can be improved upon in future versions.

Some games exhibit (mostly minor) formatting issues when played with XTads, typically due to lack of full HTML support.