AT&T / Teletype DMD 5620 Terminal Emulator for Linux and Mac
Go to file
Seth Morabito b7e829d303 Rudimentary MacOS support 2022-09-02 14:57:50 -07:00
assets Refactor and cleanup. 2018-12-19 15:21:21 -08:00
dmd_core@c3677ab006 Support serial devices and verbose logging 2022-08-31 11:16:47 -07:00
src Rudimentary MacOS support 2022-09-02 14:57:50 -07:00
.gitignore Rudimentary MacOS support 2022-09-02 14:57:50 -07:00
.gitmodules Use git submodule instead of dmd_core.a 2021-04-19 11:40:29 -07:00
LICENSE.md Added LICENSE and README 2018-12-15 10:58:35 -08:00
Makefile Rudimentary MacOS support 2022-09-02 14:57:50 -07:00
README.md Use git submodule instead of dmd_core.a 2021-04-19 11:40:29 -07:00
dmd5620.man Support serial devices and verbose logging 2022-08-31 11:16:47 -07:00

README.md

GTK DMD 5620 Emulator

This is a GTK+ 3.0 implementation of an AT&T / Teletype DMD 5620 emulator.

Status

Version: 1.3.0

This is an actively developed project.

Dependencies

The executable has the following dependencies:

  • Rust toolchain version 1.50 or later
  • GTK+ 3 (libgtk)
  • GDK Pixbuf 2 (libgdk-pixbuf)
  • Cairo 1.15+ (libcairo)
  • Glib 2 (libglib)

Building

This new build process is still somewhat experimental. The Makefile attempts to ensure that the Git submodule dmd_core is updated and built, but this has not yet been widely tested.

Usage

The terminal emulator uses the Telnet protocol to communicate with a remote host.

dmd5620 -v | [-d] [-s <shell>] [-n <nvram_file>] [-- <gtk-options> ...]

shell is the shell to execute. If not specified, the user's default login shell will be executed.

nvram_file is the name of a file in which to store the contents of NVRAM. This will preserve the state of the NVRAM between runs.

Key Map

Certain keys are mapped to special DMD5620 function keys.

  • F1-F8 are mapped directly to terminal F1-F8
  • F9 is mapped to the DMD5620's SETUP key.
  • Shift+F9 is mapped to the terminal's RESET functionality. This can be used to get out of any jams.

Changelog

Version 1.3.0

  • Removed telnet support.
  • Added local shell execution.
  • Added man page.

Version 1.2.0

  • Upgraded to libdmd_core 0.6.3
  • Improved timing further (loading with 32ld works now)
  • Fixed build in CentOS. Should build cleanly on Fedora, RedHat, Ubuntu, and Debian now.

Version 1.1.0

  • Upgraded to libdmd_core 0.6.2
  • Removed the need for Rust to compile!
  • Improved timing.
  • Fixed a Telnet bug that prevented BINARY mode negotiation.
  • Reduced CPU usage by not redrawing every frame unless video RAM has changed.
  • Added missing TAB and arrow key support.

To Do

  • Local serial line support is not yet implemented.

See Also

  • dmd_core: DMD 5620 core implementation library, used by this project.

License

MIT license. See the file LICENSE.md

Copyright (c) 2018, Seth Morabito <web@loomcom.com>