GithubHelp home page GithubHelp logo

vt05's People

Contributors

aap avatar larsbrinkhoff avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

vt05's Issues

Map arrow keys

Most terminals supported have no arrows keys, and most emulators have them unmapped. I suggest it would be useful to map them to Emacs cursor movement, or similar depending on the intended target system. I.e. Datamedia could use E cursor movement.

Option to re-run subprocess

Add new option, say -r or -R. Used to re-run the subprocess if it exits.

Intended use case: <terminal> -r telnet host so that if host goes down, the terminal will reconnect when host comes back up.

terminal emulators may fail to build on MacOS

The terminal emulator for the vt05, vt52, dp3300, dm2500 and gecon may fail to build on MacOS with libsdl2. This was discovered building ITS using the pdp10-kl emulator. MacOS was 11.6.4, libsdl2 version 2.0.20 installed by MacPorts and clang13.

The error was

cc -Wall -Wno-unused-parameter -Wno-parentheses -Wno-unused-result -O3 -o vt05 vt05.c terminal.c `sdl2-config --libs --cflags` -lm -lpthread
In file included from vt05.c:18:
In file included from /opt/local/include/SDL2/SDL.h:32:
In file included from /opt/local/include/SDL2/SDL_main.h:25:
/opt/local/include/SDL2/SDL_stdinc.h:482:5: error: implicit declaration of function 'memset_pattern4' is invalid in C99 [-Werror,-Wimplicit-function-declaration]
    memset_pattern4(dst, &val, dwords * 4);
    ^
1 error generated.
make: *** [vt05] Error 1

The cause of the error seems to be fragile conditionalization in the SDL.h header file. The error can be fixed my moving
the include of SDL.h to the top of the includes (for example, here in vt05.c):

#define _XOPEN_SOURCE 600
#define _DEFAULT_SOURCE

#include <SDL.h>
#include <stdio.h>
#include <stdlib.h>
#include <stdint.h>
#include <stdarg.h>
#include <ctype.h>

Making this change in all of the source files allow the build to complete successfully.

The fragile conditionalization in SDL.h seems to be a known problem and the recommended solution is to include SDL.h
as early as possible.

VT100

VT100 in progress on the branch lars/vt100.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.