1
0
mirror of https://github.com/rricharz/Tek4010.git synced 2026-01-11 23:53:16 +00:00

hard copy (screen dump) added

This commit is contained in:
¨Rene Richarz 2019-04-05 19:45:56 +02:00
parent c29fdcbaf2
commit 8cfeec3157
44 changed files with 17 additions and 7 deletions

View File

@ -1,10 +1,10 @@
# Tektronix 4010 Terminal Emulator # Tektronix 4010 and 4014 Terminal Emulator
This is a [Tektronix 4010](https://en.wikipedia.org/wiki/Tektronix_4010) terminal emulator This is a [Tektronix 4010 und 4014](https://en.wikipedia.org/wiki/Tektronix_4010) terminal emulator
for the Raspberry Pi and other Linux systems. It can also be used on Windows an Macintosh systems for the Raspberry Pi and other Linux systems. It can also be used on Windows an Macintosh systems
with [Virtualbox](https://www.virtualbox.org/) and [Ubuntu](https://www.ubuntu.com/). with [Virtualbox](https://www.virtualbox.org/) and [Ubuntu](https://www.ubuntu.com/).
![screen_shot](teklogo.png?raw=true "Tektronix logo in tek4010 window") ![screen_shot](screendump.png?raw=true "tek4010 screendump")
It attempts to emulate the storage tube display of the Tektronix 4010, including the bright It attempts to emulate the storage tube display of the Tektronix 4010, including the bright
drawing spot. drawing spot.
@ -126,12 +126,16 @@ in the terminal emulator and clear the persistent screen:
home home
page up page up
page down page down
control arrow up <control> arrow up
control arrow left <control> arrow left
These keys emulate the "page" key of the Tektronix 4010. You need to use one of these These keys emulate the "page" key of the Tektronix 4010. You need to use one of these
keys frequently to avoid to get a mess on the screen, as on a real Tektronix 4010. keys frequently to avoid to get a mess on the screen, as on a real Tektronix 4010.
The hardcopy function on the Tektronix 4010 is emulated with a screen dump.
<control> w Make a screen dump in current directory using scrot
**Login into the system running simh (same or different Raspberry Pi)** **Login into the system running simh (same or different Raspberry Pi)**
This makes sense, if you have set up a virtual DZ11 for multiple user login, opening a This makes sense, if you have set up a virtual DZ11 for multiple user login, opening a

4
main.c
View File

@ -134,6 +134,10 @@ static void on_key_press(GtkWidget *widget, GdkEventKey *event, gpointer user_da
gtk_widget_queue_draw(widget); gtk_widget_queue_draw(widget);
return; return;
} }
else if (event->keyval == 0x0077) { // "ctrl>w" makes screendump
system("scrot --focussed");
return;
}
else else
ch = event->keyval & 0x1F; ch = event->keyval & 0x1F;
} }

BIN
screendump.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 354 KiB

BIN
tek4010

Binary file not shown.

View File

@ -535,6 +535,8 @@ int escapeCodeHandler(cairo_t *cr, cairo_t *cr2, int todo, int ch)
mode = 0; mode = 0;
break; break;
case 23: system("scrot --focussed"); mode= 0; break;
case 28: // file separator >> point plot mode case 28: // file separator >> point plot mode
mode = 5; mode = 5;
plotPointMode= 1; plotPointMode= 1;

View File

@ -1,7 +1,7 @@
#define A_WINDOW_WIDTH 1024 // proposed width of main window #define A_WINDOW_WIDTH 1024 // proposed width of main window
#define A_WINDOW_HEIGHT 780 // proposed height of main window #define A_WINDOW_HEIGHT 780 // proposed height of main window
#define WINDOW_NAME "Tektronix 4010" // name of main window #define WINDOW_NAME "Tektronix 4010/4014" // name of main window
#define ICON_NAME "" // path to icon for window #define ICON_NAME "" // path to icon for window
#define TIME_INTERVAL 30 // time interval for timer function in msec #define TIME_INTERVAL 30 // time interval for timer function in msec

Binary file not shown.

Before

Width:  |  Height:  |  Size: 126 KiB