Updated VT100 blog post
This commit is contained in:
parent
b0260c4525
commit
517c9215c7
1 changed files with 27 additions and 12 deletions
|
|
@ -6,24 +6,24 @@ permalink: /blog/2016/08/03/
|
||||||
machines:
|
machines:
|
||||||
- type: pc8080
|
- type: pc8080
|
||||||
id: vt100
|
id: vt100
|
||||||
debugger: true
|
config: /devices/pc8080/machine/vt100/machine.xml
|
||||||
config: /devices/pc8080/machine/vt100/debugger/machine.xml
|
|
||||||
---
|
---
|
||||||
|
|
||||||
Summer has been filled with distractions, but I've finally begun making headway on a
|
Summer has been filled with distractions, but I've finally begun making headway on a
|
||||||
[DEC VT100 Terminal](/devices/pc8080/machine/vt100/debugger/) simulation.
|
[DEC VT100 Terminal](/devices/pc8080/machine/vt100/) simulation.
|
||||||
|
|
||||||
Unlike other VT100 emulators, this isn't simply an emulation of VT100 protocols. It's a simulation of the VT100's
|
Unlike other VT100 emulators, this isn't simply an emulation of VT100 protocols. It's a simulation of the VT100's
|
||||||
8080 CPU, running the original [VT100 Firmware](/devices/pc8080/rom/vt100/) inside the [PC8080](/modules/pc8080/)
|
8080 CPU, running the original [VT100 Firmware](/devices/pc8080/rom/vt100/) inside the [PC8080](/modules/pc8080/)
|
||||||
CPU emulator, along with other key components that the CPU interacts with to drive the display, keyboard, and serial port.
|
CPU emulator, along with other key components that the CPU interacts with to drive the display, keyboard, and serial port.
|
||||||
|
|
||||||
It's not operational yet, but as you can see below, pieces are starting to fall into place, including a test screen that
|
It's not fully operational yet, but as you can see below, major pieces are falling into place, including a test screen that
|
||||||
displays most of the VT100 font variations, built on-the-fly from the original VT100 Character Generator ROM, and LEDs that
|
displays most of the VT100 font variations, built on-the-fly from the original VT100 Character Generator ROM, and LEDs that
|
||||||
respond to the firmware's commands. When you click "Run" to start the simulation, it briefly displays a "WAIT" message
|
respond to the firmware's commands. When the VT100 "powers on", it briefly displays a "WAIT" message as it processes the
|
||||||
as it processes the VT100's Non-Volatile RAM (NVR), and then it spins, awaiting further stimulus.
|
VT100's Non-Volatile RAM (NVR), and then it spins, awaiting further stimulus.
|
||||||
|
|
||||||
The VT100 KEYMAP table in [keyboard.js](/modules/pc8080/lib/keyboard.js) maps modern keys to VT100 key addresses,
|
{% include machine.html id="vt100" %}
|
||||||
and most of the mappings are 1-1. Function keys are mapped as follows:
|
|
||||||
|
Function keys are mapped as follows:
|
||||||
|
|
||||||
- F1: PF1
|
- F1: PF1
|
||||||
- F2: PF2
|
- F2: PF2
|
||||||
|
|
@ -34,15 +34,30 @@ and most of the mappings are 1-1. Function keys are mapped as follows:
|
||||||
- F8: NO SCROLL
|
- F8: NO SCROLL
|
||||||
- F9: SET-UP
|
- F9: SET-UP
|
||||||
|
|
||||||
|
From the SET-UP screen, you can press **4** to switch to LOCAL mode and verify local operation of most VT100
|
||||||
|
keys. The following keys have special meaning inside SET-UP Mode:
|
||||||
|
|
||||||
|
- 0: RESET
|
||||||
|
- 2: SET/CLEAR TAB
|
||||||
|
- 3: CLEAR ALL TABS
|
||||||
|
- 4: ONLINE/LOCAL
|
||||||
|
- 5: SET-UP A/B
|
||||||
|
- 6: TOGGLE FEATURE
|
||||||
|
- 7: TRANSMIT SPEED
|
||||||
|
- 8: RECEIVE SPEED
|
||||||
|
- 9: 80/132 COLUMNS
|
||||||
|
- SHIFT-S: Save SET-UP Features
|
||||||
|
- SHIFT-R: Restore SET-UP Features
|
||||||
|
|
||||||
The initial goal for the simulation is to provide a virtual terminal that can communicate with other PCjs machines
|
The initial goal for the simulation is to provide a virtual terminal that can communicate with other PCjs machines
|
||||||
and provide a realistic serial communication experience, all from the comfort of your web browser.
|
and provide a realistic serial communication experience, all from the comfort of your web browser.
|
||||||
|
|
||||||
In the interim, there's still a lot of debugging to do, because while DEC's Technical Manuals were excellent, they were
|
There's still plenty of debugging to do, because while DEC's Technical Manuals were excellent, they were
|
||||||
not comprehensive; there are no commented source-code listings, for example, like those that IBM used to provide in their
|
not comprehensive; there are no commented source-code listings, for example, like those that IBM used to provide in their
|
||||||
early Technical Reference manuals. Check out the [VT100 Debugger Configuration](/devices/pc8080/machine/vt100/debugger/)
|
early Technical Reference manuals, so we have to [create our own](/devices/pc8080/rom/vt100/).
|
||||||
for additional information about VT100 internals and links to other technical resources.
|
|
||||||
|
|
||||||
{% include machine.html id="vt100" %}
|
Check out the [VT100 Debugger Configuration](/devices/pc8080/machine/vt100/debugger/) for additional information about
|
||||||
|
VT100 internals and links to other technical resources.
|
||||||
|
|
||||||
*[@jeffpar](http://twitter.com/jeffpar)*
|
*[@jeffpar](http://twitter.com/jeffpar)*
|
||||||
*Aug 3, 2016*
|
*Aug 3, 2016*
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue