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
pyreports is a python library that allows you to create complex report from various sources

pyreports pyreports is a python library that allows you to create complex reports from various sources such as databases, text files, ldap, etc. and p

Matteo Guadrini aka GU 78 Dec 13, 2022
Parametric Bottle in CADQuery

Parametric Bottle using CADQuery The proposed code makes it possible to generate different types and sizes of 3D bottles in order to train Pixel2mesh

Ayoub EL HOUDRI 1 May 22, 2022
Class XII computer science project.

Computer Science Project — Class XII Kshitij Srivastava (XI – A) Introduction The aim of this project is to create a fully operational system for a me

Kshitij Srivastava 2 Jul 21, 2022
A hackerank problems, solution repository

This is a repository for all hackerank challenges kindly note this is for learning purposes and if you wish to contribute, dont hesitate all submision

Tyler Mwalo Kenneth's 1 Dec 20, 2021
✨ Udemy Coupon Finder For Discord. Supports Turkish & English Language.

Udemy Course Finder Bot | Udemy Kupon Bulucu Botu This bot finds new udemy coupons and sends to the channel. Before Setup You must have python = 3.6

Penguen 4 May 04, 2022
Create N Share is a No Code solution which gives users the ability to create any type of feature rich survey forms with ease.

create n share Note : The Project Scaffold will be pushed soon. Create N Share is a No Code solution which gives users the ability to create any type

Chiraag Kakar 11 Dec 03, 2022
A tool to help calculate how to split conveyors in Satisfactory into specific ratios.

Satisfactory Splitter Calculator A tool to help calculate how to split conveyors in Satisfactory into specific ratios. Dependencies Python 3.9 PyYAML

RobotiCat 5 Dec 22, 2022
Rotazioni: a linear programming workout split optimizer

Rotazioni: a linear programming workout split optimizer Dependencies Dependencies for the frontend and backend are respectively listed in client/packa

Marco 3 Oct 13, 2022
How to access and display MyEnergi data

MyEnergi-Python-Example How to access and display MyEnergi data Windows PC Install a version of Python typically 3.10 The Python code here needs addit

G6EJD 8 Nov 28, 2022
Python Classes Without Boilerplate

attrs is the Python package that will bring back the joy of writing classes by relieving you from the drudgery of implementing object protocols (aka d

The attrs Cabal 4.6k Jan 02, 2023
Check bookings for TUM libraries.

TUM Library Checker Only for educational purposes This repository contains a crawler to save bookings for TUM libraries in a CSV file. Sample data fro

Leon Blumenthal 3 Jan 27, 2022
Replit theme sync; Github theme sync but in Replit.

This is a Replit theme sync, basically meaning that it keeps track of the current time (which may need to be edited later on), and if the time passes morning, afternoon, etc, the theme switches. The

Glitch 8 Jun 25, 2022
Organize seu linux - organize your linux

OrganizeLinux Organize seu linux - organize your linux Organize seu linux Uma forma rápida de separar arquivos dispersos em pastas. formatos a serem c

Marcus Vinícius Ribeiro Andrade 1 Nov 30, 2021
A curses based mpd client with basic functionality and album art.

Miniplayer A curses based mpd client with basic functionality and album art. After installation, the player can be opened from the terminal with minip

Tristan Ferrua 102 Dec 24, 2022
Python Project For Beginner

Basic-Vitrual-AI-Assistant Python Project For Beginner Hey There, I had manipulated Selenium WebDriver to make this assistant. I hope, It will be help

Maruf Billah 13 Dec 12, 2022
Recreating my first CRUD in python, but now more professional

Recreating my first CRUD in python, but now more professional

Ricardo Deo Sipione Augusto 2 Nov 27, 2021
Geodesic Dome Math

dome Geodesic Dome Math Python dome tool dome.py calculates an icosahedron or 2v geodesic dome and creates 3d printable hubs as OpenSCAD sources. usag

Brian Olson 2 Feb 09, 2022
Blender addon to import images as meshes

ImagesAsMesh Blender addon to import images as meshes. Inspired by: ImagesAsPlanes Installation It's like just about every other Blender addon. Downlo

Niccolo Zuppichini 4 Jan 04, 2022
Datargsing is a data management and manipulation Python library

Datargsing What is It? Datargsing is a data management and manipulation Python library which is currently in deving Why this library is good? This Pyt

CHOSSY Lucas 10 Oct 24, 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