Terminal compatible with ansi-bbs. Meant to be a prototype, but published because why not.

Overview

pybbsterm: Terminal emulator for calling BBSs.

The Quantum Wormhole screenshot

Use cases (non-exhaustive)

  • Explore terminal protocols.
  • Connect to BBSs.

Highlights

  • Python 3.8+ code.
  • Built with pygame.
  • Targets ANSI-BBS compatibility.
    • Already has great compatibility with a range of BBSs.
  • cp437 translation.
  • Multiple connectivity options.
    • EndpointTCP connects the terminal to a remote host:port.
      • Call internet-exposed BBSs.
    • EndpointReplay allows for playing stored logs.
      • Useful for debugging.
    • EndpointSerial attaches terminal to a serial port.
      • Null-modem direct connections.
      • Interface with modems, call remote computers.
      • Requires pySerial.
  • Terminal font is settable.
  • Multiple color schemes.
  • Easy to use.
  • MIT License. See LICENSE file.

Usage

  • Ensure Python 3.8+, pygame 2.0+, pySerial 3.1+ are installed.
  • Run pybbsterm.py -h for verbose usage help.
  • Run pybbsterm.py -t bbs.erb.pw to connect to The Quantum Wormhole.
  • Run pybbsterm.py --scheme help for list of available color schemes.
  • Use of bitmap fonts is recommended.
    • Open Type Bitmap (.otb) fonts preferred
    • A good set is oldschool-pc-fonts found at: https://int10h.org
  • Keyboard shortcuts
    • Alt-x will exit.
    • PrtScn and Shift-F12 will start/finish capture of incoming bytes into file.
    • Control +/- will integer-scale the output window.
    • Shift-Esc will close connection.
    • Shift-F1 to Shift-F4 will call functions specific to the endpoint.

Caveats

  • File transfers are not yet implemented.
  • Encoding is always cp437.
  • Keyboard translation is still poor. A hardcoded UK layout is provided.
  • ANSI-BBS specification isn't yet 100% implemented.

Author

Roc Vallès Domènech

Owner
Roc Vallès i Domènech
Roc Vallès i Domènech
This repository contains the exercices for the robotics class at Supaero, 2022.

Supaero robotics, 2022 This repository contains the exercices for the robotics class at Supaero, 2022. The exercices are organized by notebook. Each n

Gepetto team, LAAS-CNRS 5 Aug 01, 2022
Get a list of all offline/online members in a discord server

Discord server insights Get a list of all offline/online members in a discord server. Uses Selenium to crawl invite links. Config Download Chrome driv

Prakhar Gurunani 3 Oct 21, 2022
String Spy is a project aimed at improving MacOS defenses.

String Spy is a project aimed at improving MacOS defenses. It allows users to constantly monitor all running processes for user-defined strings, and if it detects a process with such a string it will

10 Dec 13, 2022
Web UI for your scripts with execution management

Script-server is a Web UI for scripts. As an administrator, you add your existing scripts into Script server and other users would be ab

Iaroslav Shepilov 1.1k Jan 09, 2023
Semester Project on Signal Processing @CS UCU 2021

Blur Detection with Haar Wavelet Transform Requirements Python3 opencv-python PyWavelets Install these using the following command: $ pip install -r r

ButynetsD 2 Oct 15, 2022
Send notifications created in Frappe or ERPNext as push notication via Firebase Cloud Message(FCM)

FCM Notification for ERPNext Send notifications created in Frappe or ERPNext as push notication via Firebase Cloud Message(FCM) Steps to use the app:

Tridz 9 Nov 14, 2022
The Python Fuzzer that the world deserves 🐍

pip3 install frelatage Current release : 0.0.2 The Python Fuzzer that the world deserves Installation | How it works | Features | Use Frelatage | Conf

Rog3r 219 Dec 21, 2022
A conda-smithy repository for boost-histogram.

The official Boost.Histogram Python bindings. Provides fast, efficient histogramming with a variety of different storages combined with dozens of composable axes. Part of the Scikit-HEP family.

conda-forge 0 Dec 17, 2021
Semantic Data Management - Property Graphs 📈

SDM - Lab 1 @ UPC 👨🏻‍💻 Table of contents Introduction Property Graph Dataset 1. Introduction This repo is all about what we have done in SDM lab 1

Mohammad Zain Abbas 1 Mar 20, 2022
This is collection of Managementsystem programs: Hospital Management, Student Managemen, etc

Contribute in this repository and help other students with their assignment by adding python scripts for various management system programs.

GDSC BVP DET - Navi Mumbai 3 Mar 20, 2022
Implent of Oracle Base line and Lea-3 Baseline

Oracle-Baseline Implent of Oracle Base line and Lea-3 Baseline Oracle Oracle : This model is used to obtain an oracle with a greedy algorithm similar

Andrew Zeng 2 Nov 12, 2021
JSEngine is a simple wrapper of Javascript engines.

JSEngine This is a simple wrapper of Javascript engines, it wraps the Javascript interpreter for Python use. There are two ways to call interpreters,

11 Dec 18, 2022
Python API for HotBits random data generator

HotBits Python API Python API for HotBits random data generator. Description This project is random data generator. It uses is HotBits API web service

Filip Š 2 Sep 11, 2020
Monitor the New World login queue and notify when it is about to finish

nwwatch - Monitor the New World queue and notify when it is about to finish Getting Started install python 3.7+ navigate to the directory where you un

14 Jan 10, 2022
🦠 A simple and fast (< 200ms) API for tracking the global coronavirus (COVID-19, SARS-CoV-2) outbreak.

🦠 A simple and fast ( 200ms) API for tracking the global coronavirus (COVID-19, SARS-CoV-2) outbreak. It's written in python using the 🔥 FastAPI framework. Supports multiple sources!

Marius 1.6k Jan 04, 2023
The docker-based Open edX distribution designed for peace of mind

Tutor: the docker-based Open edX distribution designed for peace of mind Tutor is a docker-based Open edX distribution, both for production and local

Overhang.IO 696 Dec 31, 2022
Hello World in different languages !

Hello World And some Examples in different Programming Languages This repository contains a big list of programming languages and some examples for th

AmirHossein Mohammadi 131 Dec 26, 2022
msImpersonate - User account impersonation written in pure Python3

msImpersonate v1.0 msImpersonate is a Python-native user impersonation tool that is capable of impersonating local or network user accounts with valid

Joe Helle 90 Dec 16, 2022
Archive, organize, and watch for changes to publicly available information.

0. Overview The Trapper Keeper is a collection of scripts that support archiving information from around the web to make it easier to study and use. I

Bill Fitzgerald 9 Oct 26, 2022
Script to produce `.tex` files of example GAP sessions

Introduction The main file GapToTex.py in this directory is used to produce .tex files of example GAP sessions. Instructions Run python GapToTex.py [G

Friedrich Rober 2 Oct 06, 2022