MSXシリアルターミナル
Project description
MSXシリアルターミナル
MSXとのシリアル通信またはtelnet接続を行うターミナルプログラムです。日本語文字の送受信やファイル転送機能を備えています。
インストール
pip install msx-serial
使い方
基本的な使い方
# シリアル接続
msx-serial COM1
msx-serial /dev/ttyUSB0
msx-serial serial:///COM1?baudrate=9600
msx-serial serial:///dev/ttyUSB0?baudrate=115200
# Telnet接続
msx-serial 192.168.86.30:2223
msx-serial telnet://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?baudrate=9600)
options:
-h, --help ヘルプメッセージを表示して終了
--baudrate BAUDRATE シリアル接続時のボーレート (URI形式で指定する場合は不要)
--encoding ENCODING エンコーディング (デフォルト: msx-jp)
特殊コマンド
@paste: テキストファイルを読み込んで貼り付け@upload: ファイルをアップロード@cd: カレントディレクトリを変更@encode: 送受信時の文字コードを指定(msx-jp, msx-intl, msx-br, shift-jis)@help: コマンドのヘルプを表示@exit: プログラムを終了
特殊コマンドの詳細な使用方法は @help コマンドで確認できます。
主な機能
- MSXとのシリアル通信
- 日本語文字の送受信(MSX文字コード対応)
- ファイル送信機能
- コマンド補完機能
- カラー表示
文字コード対応
- UTF-8からMSX文字コードへの変換
- MSX文字コードからUTF-8への変換
- グラフィックキャラクタ対応
- 濁点・半濁点対応
開発者向け情報
必要条件
- Python 3.9以上
- 必要なパッケージ(pyproject.tomlに記載)
開発環境のセットアップ
# リポジトリのクローン
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/
├── connection/ # 通信関連のモジュール
├── completion/ # コマンド補完機能
├── data/ # データファイル(文字コード変換テーブルなど)
├── input/ # 入力処理関連
├── transfer/ # ファイル転送機能
├── ui/ # ユーザーインターフェース
└── man/ # マニュアル
主要モジュールの説明
connection/: シリアル通信とtelnet接続の実装completion/: コマンド補完機能の実装input/: キー入力処理とコマンド解析transfer/: ファイル転送機能の実装ui/: ターミナルUIの実装data/: 文字コード変換テーブルなどの静的データ
依存関係
- Python 3.9以上
- colorama: ターミナルのカラー表示
- prompt-toolkit: 対話型コマンドラインインターフェース
- pyserial: シリアル通信
- PyYAML: YAMLファイルの読み込み
- chardet: 文字エンコーディングの検出
- msx-charset: MSX文字コードの変換
謝辞
BASE64によるアップロードは下記の記事を参考にさせていただきました。 https://qiita.com/enu7/items/23cab122141fb8d07c6d
MSX-BASICのコマンドリファレンスは下記のリポジトリをAIによりman形式に変換させていただきました。 https://github.com/fu-sen/MSX-BASIC
ライセンス
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
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.8.dev0.tar.gz.
File metadata
- Download URL: msx_serial-0.2.8.dev0.tar.gz
- Upload date:
- Size: 86.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1bf9f32f147fd66d4365f675a6641c3cf86149172c2787ca77eee92b1b8360c5
|
|
| MD5 |
e442d1ab03c04ee6a1b528d2c4e85094
|
|
| BLAKE2b-256 |
4e01043a2d29c5fb654804b67bc7970c0410558d083f7ee683ac729690dfb9ef
|
File details
Details for the file msx_serial-0.2.8.dev0-py3-none-any.whl.
File metadata
- Download URL: msx_serial-0.2.8.dev0-py3-none-any.whl
- Upload date:
- Size: 175.6 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 |
d06726bdfa80d35cf5622b76fe89d067801828c0360db1051fee71219631fb7c
|
|
| MD5 |
54ce1f4a78b46cbae1dbdb03ab1187e4
|
|
| BLAKE2b-256 |
97ebc56cb8201e25664c7295ee118d67c6e51a6c37549bba21dc43a81685d71a
|