【MSX0用アプリ】HTTPファイル送信コマンド – MSX0UPLD【祝MSX0 Stack着弾】

コンピューター

いよいよMSXの第三世代がスタート!
お待ちかねのMSX0 Stack、PlanBを選んだ私もついに受け取ることができました。
MSX0に追加されたIOT命令を活用したツールを公開します。

新作ゲームもよろしくお願いします。

アプリの概要

HTTP通信でファイルをアップロードすることができるMSX-DOS用のコマンドです。
MSX0上のセルフ開発環境でプログラミングしていて、PCにファイルを移すたびに毎回MicroSDカードを入れ替えるのが面倒なので作りました。
MSX0GETと併せて少しでもお役に立てば幸いです。

HTTPSには対応していませんので、インターネットや公共WiFiでのセキュアな通信にはご注意ください。
自宅のサーバー、NAS、PCなどと接続するのが良いでしょう。
私は使うときだけPCでFlaskを起動しています。

対応機種

MSX0 StackのMSX-DOS環境でご利用いただけます。
IOT命令を使用しているので、実機のMSXやエミュレーターでは現状利用できません。

利用方法

MSX-DOSでコマンド実行します。

MSX0UPLD HOSTNAME PORT DESTPATH SOURCE MODE [WAITTIME]
HOSTNAMEホスト名またはIPアドレス
PORTポート番号
DESTPATH送信先パス
SOURCEファイル名
MODEモード
/1:0x1Aをファイルの終端とみなします。
/2:すべてのデータを送信します。
WAITTIME待ち時間(1/60秒単位)
省略可能


MSX0UPLD 192.168.0.1 80 /upload TEST.TXT /1
MSX0UPLD 192.168.0.1 80 /upload TEST.BIN /2

MSX0は起動後にWifi接続されるまでに時間がかかることがありますので、AUTOEXEC.BATで自動実行する場合はWAITTIMEに300(5秒)等を指定して少し待つようにしてください。

ダウンロード

実行ファイル(MSX-DOS COM形式)20231022_MSX0UPLD_COM.zip

アップロード先のサーバーとして動作するFlaskのサンプルを同梱してあります。
flask_sampleのフォルダー上でFlaskを起動するだけで使えます。

サーバー側を自分で構築する場合

通常のシングルパートのフォームでPOST送信されてきます。
ファイル名はfilename、データはfiledataで受け取ってください。
データは16進数文字列で送信されてきますので、2文字ずつバイナリーに変換してファイルに保存してください。

※またいつかマルチパートにリベンジします。きっと。

デモ動画

特記事項

  • ファイル名にサブディレクトリ指定はできません。
  • /1モードはファイルの終端を0x1A(Ctrl-Z)で判別しています。
    こちらのモードは実質テキストファイル専用となります。
  • 128バイト単位で保存されたファイルで/2モード送信すると余分なデータも併せて送信されます。
  • ベータ版よりはマシになりましたが、MSX0が送信サイズを小分けにしないと受け取ってくれませんので、まだまだ遅いです。あまり大きいファイルはやめておきましょう。100KBとか送るとヤバいです。
  • MSXはMSXライセンシングコーポレーションの商標です。
  • 作者は使用した事による損害について一切の責任を負うことは出来ません。使用者の責任において使用してください。
  • 入手したご自身の個人での利用のみを許諾します。無断での二次配布や商用利用は禁止です。
  • アプリの内容は予告なく変更になることがあります。

コマ~シャル

作者がMSX0で使っているお気に入りのマイクロSDカードと液晶保護フィルムです。

昔の実機で遊ぶ場合は、邪魔にならない小さめのモニターとRCA→HDMI変換器を持っておくと便利です。
いずれも私が使っているものです。

変更履歴

Release 01 – 2023.10.22

  • 初版公開(ベータ版よりマシになりました)
タイトルとURLをコピーしました