Skip to content
Dayton Pidhirney edited this page Apr 10, 2019 · 6 revisions

Getting Started

Hey | ๐Ÿ˜ƒ ๐Ÿ‘‹ | thanks for checking out ANSiTerm2!

About

Why ANSiTerm2? Because there's nothing else like it!

ANSiTerm2 was created to fill a somewhat recent gap in the lack of a free and useable BBS client on the latest versions of macOS. This stems from the pitfalls and issues I encountered trying to run a BBS client on a brand new Mac. I've detailed some of the issues I experienced below:

  • SyncTERM is DOA. Due to SIP and a unmaintained code base, SyncTERM's frameworks are unsigned and filled with imminent crashes. This effectively curbs it's use on newer macOS machines.

  • The standard Terminal.app and even the stock iTerm.app simply cannot handle the legacy standards of BBS systems. They can't handle the color-codes, fonts, widths, backspace, and fairly importantly; a modem client for file transfers. (I recommend you try though, just so you can experience how bad it really is)

  • If I came across an client that was reported to work on macOS, it was always a paid product ๐Ÿ˜ž.

  • future rambling placeholder...

Features

  • Full emulation:
    • Full emulation of Amiga fonts (Topaz(Plus), P0T-NOoDLE, MicroKnight(Plus), mO_sOul).
    • Full emulation of ANSI color-codes.
    • Proper scaled terminal size.
    • Screen is rendered with GPU by default.
  • Scrollback and clipboard support.
  • Secure install and update:
    • Installation package is only served over HTTPS.
    • Installation package is verified via a SHA256 checksum.
    • Installation package is "Apple Developer" codesigned, and this costs money.
      • I am doing this to show my commitment and intentions to support it.
  • Totally hackable:
    • Every aspect of ANSiTerm2 can be changed through iTerms configuration menu's and shell scripts.
  • Trigger interface:
    • At any point, if a regular expression you've specified in a trigger matches text rendered to the screen, a shell script can be run.
      • This is esentially how the modem transfer interface works, by hooking onto the zmodem begin marker.

Dependencies

To use ANSiTerm2, you only need two things:

  1. macOS (10.9+)
  2. brew

ANSiTerm2 has been tested on machines 10.9 up to 10.14.4.

Installation

Installation of the latest ANSiTerm2 is simple (and plans to be EVEN simpler in the future once it's been submitted to brew after beta testing):

brew cask install https://raw.githubusercontent.com/watbulb/ANSiTerm2/master/ansiterm2.rb

This will install iTerm2 if it's not currently installed, then bootstrap ANSiTerm2 ontop of it.

Installation via BBS archive

If you happened to come across this fantastic warez among a ArakNET board, the steps are as follows:

  1. Unzip the archive
  2. Run the following within the root of the extracted archive: make install_local

Usage

Using ANSiTerm2 is also simple:

  1. Open iTerm2.
  2. CTRL+CMD+0 or Profiles->Dynamic->ANSiTerm2 (via top bar)
  3. telnet blackflag.acid.org or any other fantastic BBS you have the address for.

Upgrading

Since ANSiTerm2 is installed using brew, updates are provided automatically as they become available. If you'd still like to manually update it, issue the following:

brew cask upgrade ansiterm2

Uninstallation

brew cask uninstall ansiterm2

Note: โš ๏ธ This will delete all files in ~/.config/ansiterm2

Developing ANSiTerm2

Please refer to the HACKING.md guide.