はじめに
MMBasicのフルスクリーンエディタは便利だがmacOSやWindowsで使用しているテキストエディタに比べるとどうしても見劣りがする。
MMBasicのソースプログラムをMacやWindowsで作成してそれをPicoMiteへ転送するほうが便利な場合もある。
ここではPicoMite(MMBasic)とmacOSとの間でのファイル転送について述べる。
ファイル転送について
PicoMite(MMBasic)がサポートしているファイル転送プロトコルはXMODEMのみです。コマンドプロンプトでXMODEM
コマンドを使って送受信します。
送受信のコマンドを以下の表に示します。
コマンド | 動作 |
---|---|
XMODEM SEND | プログラムメモリの内容を送信します |
XMODEM SEND file$ | file$で指定したフラッシュファイルシステム内のファイルを送信 |
XMODEM RECEIVE | 受信したプログラムをプログラムメモリに保存します |
XMODEM RECEIVE file$ | 受信したプログラムをフラッシュファイルシステムに指定したファイル名で保存します |
XMODEM CRUNCH | プログラム中のコメント、空白行、不要なスペースを削除して保存 |
※ SEND、RECEIVE、CRUNCHはS、R、Cと短縮できる。
PicoMiteでの送受信コマンドを実行後にシリアル接続したmacOS等で送受信操作を実行する。
macOSとPicoMiteの間のファイルの転送
準備
macOSにはXMODEMを使えるコマンドがないのでHomebrewでパッケージlrzsz
をインストールする。(lrzszのWebサイト: lrzsz: free x/y/zmodem implementation)
$ brew install lrzsz
コマンドは/opt/homebrew/Cellar/lrzsz/0.12.20_1/bin
にインストールされ、それぞれのコマンドのシンボリックリンクがパスの通ったディレクトリ/opt/homebrew/bin
に作成される。
$ ls -l /opt/homebrew/Cellar/lrzsz/0.12.20_1/bin
total 1128
-r-xr-xr-x 1 sakabe admin 94000 12 31 1998 lrb
-r-xr-xr-x 2 sakabe admin 94000 12 31 1998 lrx
-r-xr-xr-x 2 sakabe admin 94000 12 31 1998 lrz
-r-xr-xr-x 2 sakabe admin 95616 12 31 1998 lsb
-r-xr-xr-x 2 sakabe admin 95616 12 31 1998 lsx
-r-xr-xr-x 1 sakabe admin 95616 12 31 1998 lsz
lrwxr-xr-x 1 sakabe admin 3 12 31 1998 rz -> lrz
lrwxr-xr-x 1 sakabe admin 3 12 31 1998 sz -> lsz
ファイルサイズやリンク数からlrb
、lrx
、lrz
の3つが同じで受信用コマンド、lsb
、lsx
、lsz
の3つが同じで送信用コマンドになっている。
これらのコマンドを使用しているシリアル通信プログラムからPicoMiteの送受信操作に合わせて指定すればいい。
minicomの設定
ここではminicomを使用しているのでファイルのアップロード・ダウンロードディレクトリ、送受信コマンドを設定しておく。
minicomの設定画面を操作する方法もあるが設定ファイルを直接書き換えてファイルの送受信コマンドとファイルのアップロード・ダウンロードディレクトリを設定した。
minicomの設定ファイルは~/.minirc.dfl
でこれを使い慣れたテキストエディタで次の4行を編集する。これ以外の行はそのままにしておく。
pu pprog3 lsx
pu pprog6 lrx
pu updir /Path/to/upload/file/dir
pu downdir /Path/to/download/file/dir
※ 上記のupdirとdowndirは例です。
項目 | 内容’ | 設定値 |
---|---|---|
pu pprog3 | xmodem送信コマンド名 | lsx |
pu pprog6 | xmodem受信コマンド名 | lrz |
pu updir | アップロードファイルのディレクトリ名 | アップロードするファイルの保存ディレクトリ名 |
pu downdir | ファイルのダウンロードディレクトリ名 | ダウンロードしたファイルの保存ディレクトリ名 |
ファイルのアップロード(Mac → Pico)
次の手順で操作してMacで作成したMMBasicのプルグラムをPicoに転送(アップロード)します。
- PicoMiteのコマンドプロンプトで
XMODEM RECEIVE
コマンドを実行 -
ESC
キーを押した直後、すぐにZ
キーを押し、メニューを表示 -
S
キーを押す(Macからみて送信なので) - Uploadメニューで
↓キー
を押してxmodem
に合わせ、RETURN
キーを押す -
Select a file for upload
メニューでファイルの一覧が表示されるのでカーソルキー
カーソルを送信したいファイルの位置に合わせ、スペースキー
を押して選択し、RETUNR
キーを押す
以上でファイルがMacからPicoにアップロードされる。
Picoが受信したプログラムはプログラムメモリに保存されるのでLIST
コマンドで確認できる。
ファイルのダウンロード(Pico → Mac)
次の手順でPicoで作成したMMBasicのプログラムメモリ内のプログラムをMacに転送(ダウンロード)します。
- PicoMiteのコマンドプロンプトで
XMODEM SEND
-
ESC
キーを押した直後、すぐにZ
キーを押し、メニューを表示 -
R
キーを押す(Macからみて受信なので) - Downloadメニューで
↓キー
を押してxmodem
に合わせ、RETURN
キーを押す - ファイル名の入力を促す
Please enter file name
と表示されるのでMacで保存するときのファイル名を入力する
以上でファイルがPicoからMacにダウンロードされる。設定したディレクトリにファイルが保存されているかを確認する。