MSXエミュ上のプログラムリスト⇔Windows上のテキストファイル

ポク太郎です。

MSX上で作ったプログラムリストが上手く動かないので直したいけど、コピペ不可・汚ったない表示・隙間なしのインタープリタコード故に、デバッグなんかやる気起きず。

なので、Windows上のテキストファイルとして取り出す・Windows上のテキストファイルMSX上へ移動する方法を調べておりました。

それが、なかなかに混乱したので分かりやすく整理しておく自分用メモ。


MSXで作ったプログラムが結構あるんだ

MSXが当たり前のように動く~現在=大昔の未来

MSXとはブラウザ上のJavaScriptで再現できてしまう化石のような大昔のコンピュータ。“こんぴゅうた”って書いた方がイメージ伝わりそうな。

ブラウザ上で動いてしまうMSXWebMSX

右下歯車アイコンSelect MachineMSX2 Japan(NTSC)等の日本仕様に切り替えれば、日本仕様のキーボードで操作できるようになります。

MSXエミュ上のプログラムリスト⇔Windows上のテキスト MSXエミュ上のプログラムリスト⇔Windows上のテキスト

覚えとくとよいキーボード操作は、

WebMSXオススメ操作
パソコン側 MSX上での機能
F9 STOPキー
Ctrl+F9 プログラム停止
Alt+C 表示中のテキストコピーメモ帳に貼り付け可能
MSXエミュ上のプログラムリスト⇔Windows上のテキスト

問題は、Alt+Cのテキストコピー対象が現在表示中の一画面分だけであること。リスト全部ほしいのに。

そこで次項のフリーソフトでDiskイメージを操作して、パソコン-MSX間でのプログラムリストのやり取りを行います。

MSX上プログラムリスト→PC上テキストファイル

【作業全体の流れ】MSXのプログラムリスト→PC上テキストファイル
1 MSX上でのプログラムを保存しディスクイメージを得る
2 DISKMGR.exeを立ち上げ、MSXのディスクイメージをドラッグ&ドロップ
3 見えたファイルを右クリック-Extract Fileで保存
4 保存したファイルをMSX BASIC Viewerで開く→テキストで表示
5 表示されたテキストを選択してコピー→テキストファイルへ貼り付けて保存

MSX上でプログラム保存しディスクイメージ得る

WebMSX上で作ったプログラムをセーブしたディスクイメージを入手して下さい。現状無ければサンプル→poku_MSX-Disk.dsk

MSX上でのコマンド操作
MSXの操作 MSX時代は、
×[ENTERキー]、○[returnキー]
機能
files[returnキー] フロッピー内に保存されてるファイルをリストアップ
load”(ファイル名)”[returnキー] フロッピーから指定のファイル読み込み
save”(ファイル名)”[returnキー] フロッピーへ指定のファイル名でセーブ
run”(ファイル名)”[returnキー] 指定のファイルをフロッピーから読み込んで即実行
list[returnキー] 読み込んだファイルをリスト表示
run[returnキー] 読み込んだファイルを実行

WebMSX上の左下フロッピーアイコンAdd Blank Diskで空ディスクが挿入されるので、そこへセーブ。左下フロッピーアイコンSave Disk Imageでパソコン上にダウンロード。

この●●.dskが“ディスクイメージ”。

Disk-Managerでディスクイメージ開く

Disk-Managerなるものを入手します。

「Download:  DownloadDisk-Manager Installer (454KB)」とある部分からダウンロードできます。

Disk-Managerでファイル取り出す

WebMSXから入手した●●.dskをDisk-Managerで開きます。

MSXエミュ上のプログラムリスト⇔Windows上のテキスト

見えたファイルを右クリックExtract Fileで保存。この●●.basが“.basファイル”例は“34”で拡張子付いてませんが。テキストエディタで開いても何も見えませんがそれでOK。

取り出したファイルをMSX BASIC Viewerへ

上で得た.basファイルを下のMSX BASIC Viewerサイトへドラッグ&ドロップ。

ブラウザ上にMSXのプログラムが表示されるので全体を選択してコピー→適当なテキストファイルに貼り付けて保存。

文字化けする場合は、スタンドアローン型のフリーウェア版MSX BASIC Viewer試すとか。

PC上テキストファイル→MSX上プログラムリスト

【作業全体の流れ】PC上テキストファイル→MSXのプログラムリスト
1 テキストファイルにプログラムを書く(UTF-8でなくShift-JISで保存すべきかな)
2 DISKMGR.exeを立ち上げ、File-Newで新しいディスクイメージを作る
3 DISKMGR.exeの画面上に作ったテキストファイルをドラッグ&ドロップ
4 File-Save asでディスクイメージ●●.dskとして保存
5 WebMSXに●●.dskを挿入し読み込む

こちらでも使うのはDisk-Manager

FileNewで新規のディスクイメージを作ります。

MSXエミュ上のプログラムリスト⇔Windows上のテキスト

パソコン上のテキストファイルにMSX向けのプログラムを書き、そのテキストファイルShift-JISで保存すべきかなDisk-Managerに放り込み。

MSXエミュ上のプログラムリスト⇔Windows上のテキスト

FileSaveでそれをディスクイメージ●●.dskとして保存。

その●●.dskをWebMSXに読み込ませます。→以降はMSX上のコマンドでロード、LIST表示させ好きなように。

MSXエミュ上のプログラムリスト⇔Windows上のテキスト

MSXPenとの合わせ技で快適に

んで、「リストの双方向移動」てのは上記で出来るようになりました。

ですが、「プログラム作る」作業ってのはデバッグ実行の繰り返し。いちいちディスクイメージ作ってやり取りやり取り…ってのはすこぶるやる気を削ぎます。

そんな時に合わせて使いたいのがこちらMSXPen

これは、左側窓にテキストファイルからのソースを貼りつけ、右下の「→Run」ボタンを押すとそのまま実行できる優れもの。list+RETURNでそのリストがMSX上に表示されます。

上で取り上げたwebMSXを内包してるようです。

左側窓は、命令文の補完機能付き。まぁ、その窓内で編集してもいいし、自分で準備したテキストファイル上でもいいし。

使いどころは以下2点。

●実行→エラーを何度も何度も繰り返すデバッグ作業。
●編集側では行番号が次々増えて中途半端な105行、121行とか→ゴチャってきたらMSX上でrenum命令→上記の方法:webMSX側でディスクイメージに保存→PC側のテキストファイル全更新。

リナンバリング命令renum…行番号を再度割り振ってくれる命令・機能。renum+RETURNで実行
renum前(ゴチャってきた) renum
1 A=0 10 A=0
2 A=A+1 20 A=A+1
3 A=A-2 30 A=A-2
5 PRINT A 40 PRINT A
6 IF A>1000 THEN 10 50 IF A>1000 THEN 70
8 IF A>100 THEN 2 ELSE 3 60 IF A>100 THEN 20 ELSE 30
10 GOTO 1 70 GOTO 10

ベーマガとOCR

ベーマガとはマイコンBASICマガジン

著作権的にどうなんだ?て情報ではありますがこんなものが→ベーマガ アーカイブ

もちろん著作権者である電波新聞社が判断することではありますが、

こんなもん金取ろうとしたって大した額で売れないだろうし、販売システム構築費用の方が莫大で大赤字だろうし、それなら誰もが見れる状態でも放置して、歴史的資料として賞讃されてた方が会社として得策だろうし…。←自分勝手な爺の言い分。

なんにせよ「ベーマガでプログラムを学んだんだ」「ベーマガのおかげでプログラムが組めるようになったんだ」←これを認めてるってこと。その上で以下を紹介いたします。

21世紀の未来では無料でOCR

上記でベーマガの紙面が見られます→スクリーンダンプだって当たり前に可能。時代を考慮し“スクショ”でなく“スクリーンダンプ”。いわゆる“スクダン”。

てことは、

(コロン)や(イコール)の認識がちょっと厳しいが、パソコンのテキストエディタ上なら対処のしようもあるでしょ。認識率上げるためのフォトショ加工も自由自在だし。

なんなら「これはMSXのプログラム画像をOCRで読み取った結果だ。誤認識部分を直せ。」とAIに投げつける…でも。

因みに、上の説明で使用した「34」て.basファイルは、マイコンBASICマガジン1985年1月号掲載の「34-鶴間さん死闘編-」。

長年、パターンおかしい?上手く動いてない?と謎でしたが、「1」を「I」と打ち間違えたデータが大量に。数々のタイプミスをPCのテキストファイル上にて発見→修正したもの。

火の玉は壁を無視して突き進んでくるの?と疑問でしたが、動画見るとそれは正常の様子。動画のとうちの音楽は異なりますが、再度リストと突き合わせるとうちのが正しいとか。

なんにせよ、テキストファイルで読み書きできる環境なら諦めず投げやりにならず対処できます。

つまり、

劣悪な環境下で、何が正しいか分からんモノを題材に
必死に勉強してたんだ!

これは宣伝)MSXマガジンが全部無料!

これは単なる宣伝。MSXマガジンが1983年の創刊号からターボR時代までの全刊を無料で入手できます。こちらで紹介する電子書籍販売サイトで無料公開されています。

MSXマガジンはマシン語ガリガリの結構長いプログラムも掲載してたので、それを上記のOCR利用して打ち込んでも楽しいかも。

恐らく、現在を生きる現在の若者からすれば「何やってんだい…、暇なヤツらめ…」でしょうが、過去に生きる爺にとっては、

未来の技術を携えてあの時代へ戻るリアルドラえもん体験

貧困老人ではありますが、それでも金を持ってる筈のじじい側が、全く経済活動に寄与せずこーやって金使わずに遊んでるわけですから、そら景気悪なりますわ。

面白くないのは、じゃあ金取れるんではと商売人が入り込んだ瞬間、「んな化石情報どーでもええわ」と簡単に切り捨てられるヘッポコな存在であること。

コメント

タイトルとURLをコピーしました