MSXシリアルターミナル
Project description
MSXシリアルターミナル
MSXとのシリアル通信またはtelnet接続を行うターミナルプログラム
機能
- MSXとのシリアル通信
- 日本語文字の送受信(MSX文字コード対応)
- ファイル送信機能
- コマンド補完機能
- カラー表示
プロジェクト構造
msx_serial/
├── connection/ # 通信関連のモジュール
├── completion/ # コマンド補完機能
├── data/ # データファイル(文字コード変換テーブルなど)
├── input/ # 入力処理関連
├── transfer/ # ファイル転送機能
├── ui/ # ユーザーインターフェース
└── man/ # マニュアル
主要モジュールの説明
connection/: シリアル通信とtelnet接続の実装completion/: コマンド補完機能の実装input/: キー入力処理とコマンド解析transfer/: ファイル転送機能の実装ui/: ターミナルUIの実装data/: 文字コード変換テーブルなどの静的データ
必要条件
- Python 3.9以上
- 必要なパッケージ(pyproject.tomlに記載)
インストール
pip install msx-serial
開発環境のセットアップ
# リポジトリのクローン
git clone https://github.com/yamamo-to/msx-serial
cd msx-serial
# 仮想環境の作成と有効化
python -m venv venv
.\venv\Scripts\activate # Windowsの場合
source venv/bin/activate # Linuxの場合
# 開発モードでインストール
pip install -e . --use-pep517
使用方法
基本的な使い方
# シリアル接続
msx-serial serial:///COM1?baud=9600
msx-serial serial:///dev/ttyUSB0?baud=115200
msx-serial COM1 --baudrate 9600
msx-serial /dev/ttyUSB0 --baudrate 115200
# Telnet接続(URI形式)
msx-serial telnet://192.168.86.30:2223
msx-serial 192.168.86.30:2223
コマンドラインオプション
usage: msx-serial [-h] [--baudrate BAUDRATE] [--encoding ENCODING] connection
MSXシリアルターミナル
positional arguments:
connection 接続先 (例: COM1, /dev/ttyUSB0, 192.168.1.100:2223, telnet://192.168.1.100:2223, serial:///COM1?baud=9600)
options:
-h, --help ヘルプメッセージを表示して終了
--baudrate BAUDRATE シリアル接続時のボーレート (URI形式で指定する場合は不要)
--encoding ENCODING エンコーディング (デフォルト: msx-jp)
接続先の指定方法
-
URI形式
- シリアル接続:
serial:///COM1?baud=9600 - Telnet接続:
telnet://192.168.1.100:2223
- シリアル接続:
-
従来の形式
- シリアル接続:
COM1または/dev/ttyUSB0 - Telnet接続:
192.168.1.100:2223
- シリアル接続:
特殊コマンド
@paste: テキストファイルを読み込んで送信@upload: ファイルをアップロード@cd: カレントディレクトリを変更@encode: 送受信時の文字コードを指定(msx-jp, msx-intl, msx-br, shift-jis)@help: コマンドのヘルプを表示@exit: プログラムを終了
特殊コマンドの詳細な使用方法は @help コマンドで確認できます。
文字コード対応
- UTF-8からMSX文字コードへの変換
- MSX文字コードからUTF-8への変換
- グラフィックキャラクタ対応
- 濁点・半濁点対応
依存関係
- Python 3.9以上
- colorama: ターミナルのカラー表示
- prompt-toolkit: 対話型コマンドラインインターフェース
- pyserial: シリアル通信
- PyYAML: YAMLファイルの読み込み
- chardet: 文字エンコーディングの検出
- msx-charset: MSX文字コードの変換
謝辞
BASE64によるアップロードは下記の記事を参考にさせていただきました。 https://qiita.com/enu7/items/23cab122141fb8d07c6d
ライセンス
MIT License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
msx_serial-0.2.1.dev15.tar.gz
(83.3 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file msx_serial-0.2.1.dev15.tar.gz.
File metadata
- Download URL: msx_serial-0.2.1.dev15.tar.gz
- Upload date:
- Size: 83.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f128b6fad7e8c6bb8eb6b250f511fd44e234b16b987e29c7c51e9abfdca1ba3f
|
|
| MD5 |
655779a74fb5fca03076a2d7a4c893a7
|
|
| BLAKE2b-256 |
9a5addad3a39a1fd356be7a0de6e07849ac88520082644eb70108041116a7beb
|
File details
Details for the file msx_serial-0.2.1.dev15-py3-none-any.whl.
File metadata
- Download URL: msx_serial-0.2.1.dev15-py3-none-any.whl
- Upload date:
- Size: 171.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bee4e1677ed1c634787593d6d7931ed01b3890e80cac25f5ec9186c07dd638a1
|
|
| MD5 |
429ecac5eeeb62febe1902ffe84fe8fd
|
|
| BLAKE2b-256 |
ef55df18885ed28ae21a4732158f955ec12cf2c28e890425bbebf648046fea69
|