• Stars
    star
    114
  • Rank 308,031 (Top 7 %)
  • Language
    C
  • License
    GNU General Publi...
  • Created over 3 years ago
  • Updated 10 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Simulation of VT52 and VT100 terminal hardware.

Simulation of the VT52 and VT100 hardware

Build

About

This is a software simulation of the VT100 hardware. (There is also a VT52 simulation.) The original firmware ROM is built in and executed by an 8080 emulator. Other components include video display with character generator ROM, settings NVRAM, Intel 8251 USART, and a keyboard matrix scanner. The Advanced Video Option is not included.

To build this, you need to have the SDL2 and SDL2_image libraries installed.

Usage

The command line syntax is vt100 [-afgh2CDQ] [-c CUR] [-N DIV] [-R test] [program/device].

  • -a set pixel color to amber.
  • -c CUR screen curvature (0.0 - 0.5, requires OpenGL)
  • -f enters full screen. Toggle with F11.
  • -g set pixel color to green.
  • -h give help message.
  • -2magnify by 2; each additional -2 adds 1 to multiplier.
  • -D enters a PDP-10 style DDT for debugging the firmware.
  • -R test runs a CP/M program; this is only for testing.
  • -C turns capslock into control.
  • -N DIV reduce recomputation of screen to 60/DIV Hz (may run faster).
  • -Q disables use of OpenGL (may run faster).
  • program/device is any command to run as a child process providing I/O, or a character device assumed to be a serial port.

F9 is the SET-UP key. See a VT100 User Guide for instructions. Control+F11 exits the simlator.

3D Printed Model

This simulator was inspired by Michael Gardi's 3D printed model, see his instructions and GitHub files.

This is my printing progress so far: VT100 3D print

Update! After much sanding and filling, here it is together with its larger twin. A Tale of Two VT100

More Repositories

1

awesome-cpus

All CPU and MCU documentation in one place
HTML
1,800
star
2

lbForth

Self-hosting metacompiled Forth, bootstrapping from a few lines of C; targets Linux, Windows, ARM, RISC-V, 68000, PDP-11, asm.js.
Forth
388
star
3

httptunnel

Bidirectional data stream tunnelled in HTTP requests.
C
366
star
4

emacs-history

Historical Emacs Software Preservation
C
221
star
5

emacs-cl

Common Lisp implemented in Emacs Lisp.
Emacs Lisp
162
star
6

fmacs

Emacs clone in Forth.
Forth
96
star
7

forth-documents

Forth douments, books, papers
HTML
68
star
8

nybbleForth

Stack machine with 4-bit instructions
Forth
64
star
9

forth-mode

Wants to be the SLIME of Forth
Emacs Lisp
61
star
10

emacs-16.56

Build and run Emacs like it's 1985
C
61
star
11

xForth

Experimental Forth cross compiler for tiny devices
Forth
59
star
12

forth-metacompiler

Forth metacompiler written in Lisp, for bootstrapping
Common Lisp
36
star
13

m68k-microcode

18
star
14

docker-emacsen

Multiple versions of Emacs in a Docker image
Shell
18
star
15

crt-simulation

CRT simulation, as seen on TV
C
15
star
16

pdp10-its-disassembler

Disassembler and other tools for files in ITS formats
C
15
star
17

tt2500-raw-data

Unsorted files for Minsky's TT2500 computer
Roff
14
star
18

forth-compiler

Native inlining constant folding register allocating Forth compiler
Forth
14
star
19

glsl-sphere-tracing

Ray tracing implicit surfaces with GLSL using the "sphere tracing" algorithm.
GLSL
14
star
20

its-archives

BUG-ITS, ITS-LOVERS, ITS-HACKERS, AI & LCS & DMCG memos
Awk
13
star
21

pdp10-gcc

PDP-10 backend for GCC 3.2
C
13
star
22

prebuilt-emulator-images-with-interesting-software-installed

13
star
23

fearless-git

Rewrite Git History Like There's No Tomorrow
12
star
24

pty-stdio

Redirect pseudo-terminal I/O to stdin and stdout
C
12
star
25

imp

New implementation of an Arpanet IMP
C
10
star
26

Knight-TV-font

Font used by the MIT-AI Knight TV
Perl
10
star
27

absolutely-not-a-vaxstation100-emulator

Go away, nothing to see here!
10
star
28

bubble-universe

"Bubble Universe" display hack
JavaScript
10
star
29

sixel

Emacs Lisp
9
star
30

crunchly

9
star
31

its-manual

ITS Reference Manual
9
star
32

tools-for-unusual-tape-formats

C
8
star
33

vt52-simulator

VT52 hardware simulation.
C
8
star
34

build-tenex

Attempt to build TENEX
Stata
8
star
35

MinskyForth

Forth for the TT2500.
Common Lisp
7
star
36

forth16

Emulate a 16-bit Forth inside a 32/64-bit Forth
Forth
7
star
37

squeeze

CP/M SQUEEZE and UNSQUEEZE for Unix
C
7
star
38

FujiBoink

Source code for the classic FujiBoink demo for the Atari ST.
C
6
star
39

pdp10-small-libc

Small C library for the PDP-10.
C
6
star
40

git-scripts

Scripts for automating git and GitHub tasks
Shell
6
star
41

pdp10-wall-crock

Abuse a 70s mainframe as a wall clock
C
5
star
42

Lisp-lab

Unsorted Lisp snippets.
Common Lisp
5
star
43

DECROMs

Backup of http://www.dunnington.info/public/DECROMs/
5
star
44

2bsd

WARNING: this repository WILL be mercilessly force pushed.
Shell
4
star
45

pdp10-js

JavaScript applications for talking to PDP-10 emulators
JavaScript
4
star
46

linux-ncp

ARPANET NCP for Linux, and IMP-host interface to SIMH
C
4
star
47

its-presentation

Talking about ITS
HTML
4
star
48

xmas-leds

LED strip lit by microcontroller Forth
Forth
4
star
49

mit-logo-and-sits-raw-files

Roff
4
star
50

forth-games

Space invaders in Forth.
Forth
4
star
51

its-book

A book about ITS?!?
4
star
52

pack-ice

C
3
star
53

unmsa

Convert an MSA floppy file to a plain image
C
3
star
54

its-interviews

Notes before/during/after interviews related to the Incompatible Timesharing System.
3
star
55

vector-terminal

General purpose vector terminal
JavaScript
3
star
56

abermud

HTML
3
star
57

ooits

Resurrect ancient 1971-73 versions of ITS
Roff
3
star
58

hdri-io

Input/output for various HDRI formats
Common Lisp
3
star
59

value-change-dumper

Dump values that change!
C
3
star
60

trek7

TREK7 game by Donald Ecclestone
Fortran
3
star
61

pidp-kl10

Stuff to make a KL10 version of the PiDP-11
3
star
62

image-tape

Make an image from a magnetic tape.
C
3
star
63

pdp10-gcc-test

Tests for the GCC PDP-10 backend
Assembly
3
star
64

scame

TECO EMACS clone for Unix
C
3
star
65

compile-teco-to-emacs-lisp

Compile TECO to Emacs Lisp
Emacs Lisp
3
star
66

tops20-v2

TOPS-20 V2
Batchfile
3
star
67

forth-continuous-integration

Forth continuous integration
Forth
3
star
68

munching-squares.el

"Munching Squares" for Emacs
Emacs Lisp
2
star
69

arpanet-map

ARPANET topological data
2
star
70

kldcp

Attempt to make a bootable KLDCP disk image, and boot it with SIMH PDP-11/40
2
star
71

sunview-x-mazewar

Mazewar for Sunview/X
C
2
star
72

linux-ddt

DDT for Linux
C
2
star
73

ks10-udis

KS10 microcode disassembler
C
2
star
74

ards-files

Kind of like the X files but for ARDS
Roff
2
star
75

tape-lab

Examine and recover data from broken tape images
Common Lisp
2
star
76

techsquare

Terminal emulators for ITS, installed on a Raspberry Pi
Shell
2
star
77

xoroshiro-36

36-bit xorshift
C
2
star
78

pdp6-timeline

Photo timeline for the Project MAC / MIT AI lab PDP-6.
HTML
2
star
79

systemd-files

Useful systemd snippets.
2
star
80

haliaeetus

The Soul of an Old Machine
2
star
81

pdp10-periodic-build

Periodically build TOPS-10 and TOPS-20
Shell
2
star
82

emacs-cl-compiler

Compiler: Common Lisp to Emacs bytecodes
2
star
83

its-history

Git history for the Incompatible Timesharing System
2
star
84

maclisp-mode

Emacs mode for editing Maclisp code.
Emacs Lisp
2
star
85

rtape

RTAPE server
C
1
star
86

bcc-500

Experiments with BCC-500 data.
C
1
star
87

XX

File tree from MIT-XX
1
star
88

github-scripts

Shell
1
star
89

pclites

Running lights in program counter indicators.
1
star
90

vttest

C
1
star
91

t-shirts

1
star
92

absolutely-not-a-bcpl-compiler

D
1
star
93

xgp-fonts

MIT XGP fonts, converted
Shell
1
star
94

ptrace-proxy

Proxying for ptrace operations
C
1
star
95

bbn-reports

Backup of BBN reports
1
star
96

colorimetric-data

Colorimetric data: color matching functions, illuminants, etc.
Common Lisp
1
star
97

twitter-data

JavaScript
1
star
98

ding

Ring a bell
C
1
star
99

KU10

(Placeholder for) Kμ10 - PDP-10 microcontroller
1
star
100

libword

A library for reading and writing binary words.
C
1
star