GTK DMD 5620 Emulator
This is a GTK+ 3.0 implementation of an AT&T / Teletype DMD 5620 emulator.
This is an actively developed project.
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)
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.
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.
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.
- Removed telnet support.
- Added local shell execution.
- Added man page.
- Upgraded to
- Improved timing further (loading with 32ld works now)
- Fixed build in CentOS. Should build cleanly on Fedora, RedHat, Ubuntu, and Debian now.
- Upgraded to
- 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.
- Local serial line support is not yet implemented.
- dmd_core: DMD 5620 core implementation library, used by this project.
MIT license. See the file LICENSE.md
Copyright (c) 2018, Seth Morabito <email@example.com>