v1.10528

１．BMP to MSX とは？
２．機能
  ２．１　BMP読み込み機能
  ２．２　設定画面（デフォルト設定・再変換）
  ２．３　メイン画面
  ２．４　スクリプトモード画面
  ２．５　オリジナル画像表示画面
３．チュートリアル
４．ＭＳＸで変換結果を表示させる
５．配布・サポート・最新版の入手先

[ [image] HRA's Room へ]


１．BMP to MSXとは？

  MS-Windows 用の BMP 画像ファイルを、ＭＳＸバソコンで主に使われている画像形式の一つ BSAVE形式 へ変換するツールです。
  これを使うことで、豊富な Windows用の機材やソフトを使って画像を作成したあとに、それをＭＳＸで読み込み表示することが出来るようになります。

  MSXとWindowsの縦横比の違いを吸収したり、なるべく色を再現するような機能を内蔵しています。ＭＳＸ用グラフィックツールの多くが対応しているBSAVE形式なので、変換後の微調整なども比較的容易ではないかと思います。
  BMP to MSX は、高画質にＭＳＸ向けの画像データを作成することを目的としていますが、やはり機械変換なので限度があります。高品位をこだわるなら、ＭＳＸ実機上で色を見ながら微調整することをおすすめします。

[ [image] 目次]


２．機能

  BMP to MSX には主に次のような機能があります。

  ・非圧縮 Windows BMP ファイルの読み込み機能
  ・SCREEN 2/3/4/5/6/7/8/10/11/12 用の BSAVE形式画像出力機能
  ・グラフサウルス形式／ＣＳＶ形式のパレットデータ出力機能
  ・一部または全部パレットの自動決定
  ・一部または全部パレットの手動設定
  ・一部パレットの未使用指定
  ・パレットのソート機能
  ・誤差拡散やディザリングなどによる減色機能
  ・ＭＳＸ表示イメージの表示機能
  ・元画像の表示機能
  ・スクリプト実行機能
  ・アスペクト比調整機能


２．１　ＢＭＰ読み込み機能

Windows の非圧縮 1/4/8/16/24/32bit BMPファイルを読み込むことが出来ます。
RLEやJPEG等で圧縮されたBMPファイルは読み込むことが出来ません。各種変換ツールであらかじめ 非圧縮BMP へ変換しておいてください。

図１．メイン画面

図１のメイン画面にファイルをドロップ（複数可能）するか、メニューのファイル(F)の中のファイルを開く(O)でＢＭＰファイルを選ぶことで読み込むことが出来ます。
読み込むと、即座に BSAVE形式へ変換されてメイン画面にＭＳＸ表示イメージが表示されます。
（※ＭＳＸ表示イメージは、デフォルト設定画面で出力先でプレビューを作成する指定をしていないと表示されません）

図２．ＭＳＸ表示イメージ

BMP to MSX では、まず画像をＭＳＸのサイズに調整（強引にＭＳＸ解像度にあわせるか、右や下を削ったりしてＭＳＸ画面に収まるように修正します）してから、減色処理を施します。

  ・設定でサイズ調整をチェックしている場合・・・強引にＭＳＸ解像度に会わせるために縮めたり引き延ばしたりします
  ・サイズ調整をチェックしていない場合・・・ＭＳＸ解像度より大きければ左上の範囲内だけを切り取って処理します、不足していれば不足部分を黒で塗りつぶします

左下に出ている青地に白の文字は、設定内容です。タイトルロゴの時は「デフォルト設定」の内容で、ＭＳＸ表示イメージが表示されているときはその画像の変換時の設定です。

ＭＳＸ表示イメージが表示されているときにメイン画面の画像部分をクリックすると再変換画面が現れます。これは、メニューのプレビュー（Ｐ）・・・再変換（Ｒ）を選択しても表示されます。

図３．再変換画面

再変換画面には、その画像の設定内容が表示されています。パレットを使えるＭＳＸ側モードを指定していた場合は、下側のパレットテーブルに使用したパレットが表示されます。
ここで、設定内容を変更して、右上の再変換ボタンをクリックすると、変更した新しい設定で画像を変換し直します。このとき出力先設定でプレビューを作成するように指定しておけば、新しい変換結果がＭＳＸ表示イメージに現れます。
（→再変換画面の設定方法については設定画面をご覧ください）

ＭＳＸ表示イメージは、最大５０個まで蓄積するようになっており、メイン画面にフォーカスがある状態でカーソルキーの左右を押せば表示を切り替えることが出来ます。メニューのプレビュー（Ｐ）・・表示（Ｖ）・・次の画像（Ｎ）／前の画像（Ｐ）でも切り替えられます。

図４．元画像表示

ＭＳＸ表示イメージでスペースキーを押すと、元画像とＭＳＸ表示イメージを切り替えることが出来ます。
（元画像とは、サイズを調節した直後のフルカラーイメージです。）
元画像を表示しているときは、左下の設定内容表示の背景が赤くなっています。
（ＭＳＸ表示イメージの時は青です）

もう一度スペースを押せばＭＳＸ表示イメージへ戻るので、変換前と変換後を見比べたい場合に使うと便利です。

サイズ調整前の完全な元絵もプレビュー（Ｐ）・・・表示（Ｖ）・・・オリジナル画像（Ｏ）見ることが出来ます。
他にも、プレビュー（Ｐ）の表示（Ｖ）に拡大・縮小表示などがあります。


２．２　設定画面（デフォルト設定・再変換）

■設定画面とは？
  設定画面とは、どのような変換をすべきか BMP to MSX へ指示する画面です。
  Windows と MSX では、画面の表示能力に大幅な差があるので画像の種類によって細かな指定をしないと、良好な結果を得られません。その設定を行う画面です。

■デフォルト設定画面と再変換画面の違い
  デフォルト設定画面と再変換画面は、見た目上そっくりです。
  しかし、次のような違いがあります。

  ・デフォルト設定画面
    特徴
      ・BMP to MSX を起動して最初の変換に使用される設定
      ・BMP to MSX のアイコンにファイルをドロップした際の変換に使用される設定
      ・BMP to MSX が終了しても自動的に保存される

  ・再変換設定
    特徴
      ・変換済みのＭＳＸ表示イメージの変換時に使われた設定を表示
      ・再変換ボタンをクリックすると即座に変換し直す
      ・BMP to MSX を終了させると消滅する

  よく使う設定をデフォルト設定に入れておけば、起動の度に設定し直す必要が無くなります。
  また、デフォルト設定は BMP to MSX のインストールフォルダに保存される（レジストリではありません）ので、BMP to MSX を複数インストールしておけば、それぞれに異なるデフォルト設定を設定することが可能です。

  再変換設定の設定内容が気に入った場合、デフォルトへコピーボタンをクリックすることでデフォルト設定へ設定内容を複写することが出来ます。
  また、デフォルト設定・再変換設定いずれの場合もファイルに保存で設定内容を保存したり、ファイルから読むで読み込むことができます。

■デフォルト設定画面
  メイン画面の設定（Ｓ）・・設定（Ｓ）．．をクリックすると開きます。

図１．デフォルト設定画面

たくさんの設定項目がありますが、ＭＳＸ側モードの設定により使える項目と使えない項目があります。
使えない項目は、グレイ表示になっていたり表示されなかったりします。

・ＭＳＸ側モード
  ＭＳＸのどの画面モード用に出力するか指定します。指定内容はＭＳＸ－ＢＡＳＩＣのＳＣＲＥＥＮ命令の方式です。
  SCREEN2/3/4/5/6/7/8/10/11/12 のいずれかを選択することが出来ます。

・出力先
  変換結果の出力先を指定します。
    ・ファイルへ出力　・・・・　変換結果の BSAVE形式ファイルを作成しますが、ＭＳＸ表示イメージ（プレビュー）は作成しません。
    ・プレビューのみ作成・・・・　ＭＳＸ表示イメージのみ作成し、ファイルは出力しません。試しに変換するときに使います。
    ・プレビューを作成してファイルへ出力　・・・・　ＭＳＸ表示イメージと BSAVE形式ファイルを両方作成します。

・１９２ラインモード
  SCREEN5 以降で、垂直192ライン（インターレース時は384ライン）として処理します。
  （VDP(10) = VDP(10) AND &B01111111 の指定で使う画像を生成します）

・インターレース
  ＭＳＸのインターレースモードを使用するか否かを設定する項目です。
  チェックを入れるとインターレースモード用に２枚の画像ファイルを生成します。これらを読み込み、ＭＳＸをインターレースモードにすればＹ軸方向の解像度が擬似的に倍になります。

・ファイル名自動決定
  チェックを入れると、出力先指定でファイルを生成するようにしてある状態で画像を変換したときに、ファイル名が自動的に割り振られ、保存ファイル名を尋ねなくなります。
  変換元のファイル名の拡張子を変更したファイル名になります。
  同じファイル名があると上書きしてしまうので注意してください。

・ファイルに保存ボタン
  表示している設定内容をファイルに保存します。Ｂ２Ｍという拡張子のファイルになります。

・ファイルから読むボタン
  ファイルに保存ボタンで保存したＢ２Ｍファイルを読み込んで表示内容に反映します。

・デフォルト設定ボタン
  表示内容をデフォルト設定として記憶してデフォルト設定画面を閉じます。

・キャンセルボタン
  変更した内容をすべて廃棄してデフォルト設定画面を閉じます。

・常に再変換をデフォルト化
  再変換を行ったときの再変換設定を常にデフォルト設定として記憶するか否かを設定します。
  チェックを入れておくと、常にデフォルト設定へ記憶されるようになります。

・変換時設定選択肢
  画像を変換する際の設定内容を選択します。
    ・デフォルト設定・・・２回目以降の変換もすべてデフォルト設定の設定内容で変換します
    ・最後の変換設定・・初回はデフォルト設定、２回目以降は最後に変換したときの変換設定で変換します。
    ・表示画像の設定・・初回はデフォルト設定、２回目以降はＭＳＸ表示イメージがあればその変換設定を採用、なければデフォルト設定の設定で変換を行います。

■変換設定
  設定画面の中央あたりにある変換設定ですが、これは主に画質を決める設定を行います。

・ディザパターン
  近い色を編み目模様に配置することで、その中間色を近似して色を擬似的に増やす方式です。この選択肢では、網目模様の形状を選択します。
    ・なし　・・・　ディザパターンを適用しません
    ・疑似ランダム　・・・　ランダムっぽい配置の模様を使います
    ・高度な網がけ　・・・　組織的な網目模様を使います
    ・縦長の網がけ　・・・　組織的な編み目模様ですが、縦に引き延ばされています、うまく組み合わせるとインターレースモードでのちらつきを抑えることが出来ます
    ・レンガ模様　・・・　レンガブロック塀のような模様です、あまり用途はありません (^_^;
    ・つぶつぶ模様　・・・　やや組織的なまだら模様です。
    ・粗い網がけ　・・・　組織的な網目模様を使います。ただし、輝度の変化が激しくなります。
    ・薄い網がけ　・・・　組織的な網目模様を使います。ただし、輝度の変化が弱いです。SCREEN10などで使うと、編み目模様があまり目立たなくなります。
    ・ハーフトーン　・・・　完全な５０％比の網がけになります。

・ディザ加算方法
  ディザパターンは、Ｒ・Ｇ・Ｂの各要素それぞれに同じモノを適用しますが、このときＲ・Ｇ・Ｂに加算する編み目模様のズレ方向を決めます。

  ・回転　・・・　Ｒ・Ｇ・Ｂで、それぞれ９０度ずつ回転させた模様を使います。あまり編み目が目立ちません。
  ・同位相　・・・　Ｒ・Ｇ・Ｂで全く同じ編み目を適用します。網目模様が非常に目立ちます。
  ・Ｘずらし　・・・　Ｒ・Ｇ・Ｂで１つずつ右へずらします。縦長の網がけを使ってインターレースのちらつきを抑える場合は、この方式を選ばないとちらつきを抑える効果がなくなります。
  ・Ｙずらし　・・・　Ｒ・Ｇ・Ｂで１つずつ下へずらします。

  一般的には回転が良好な結果をもたらすようです。

・色再現精度
  読み込んだＢＭＰをフルカラーとして見なし、それを減色開始する直前にあらかじめＲ・Ｇ・Ｂそれぞれのビット数を落としてしまう設定をおこないます。
  アニメ調・グラデーションのないイラスト調の絵をスキャナーなどで取り込んだ場合に発生する微妙なノイズを削除する効果があります。
  ただし、グラデーションなどは階段状に変化してしまうため、注意が必要です。

    ・8bit ・・・ ビット数を落としません
    ・7bit ・・・ Ｒ・Ｇ・Ｂそれぞれ最下位１ビットを無視します
    ・6bit ・・・ 最下位２ビットを無視します
    ・5bit ・・・ 最下位３ビットを無視します
    ・4bit ・・・ 最下位４ビットを無視します

  色が変化してしまう場合もあるため、意味の分からない人は 8bit のままお使いください。

・５０％：５０％の網タイル
  ５０％の比率でまぜあわせた網がけパターンを強引に単色と見なして処理します。
  近い色のみ対象とします。

・誤差拡散
  色を近似することで発生する誤差を、近傍の画粗へ拡散して画像全体の誤差を軽減する方法です。
  チェックを入れると誤差拡散方式を適用します。

・誤差係数
  誤差拡散は右と上に拡散しますが、この誤差に掛け合わせる係数を指定します。最大の 0.500 では減衰無し、最小の 0.000 では拡散無しになります。
  0.430 あたりが一般的に良好な結果を得られるようです。変換結果にまばらにツブツブが現れるようならば、この数値を若干下げてみると改善される可能性があります。
  誤差拡散にチェックが入っていない場合は意味を持ちません。

・切り捨て誤差
  誤差拡散で拡散する誤差がこの値より小さくなると、強制的に誤差を０にします。
  微妙な誤差が、誤差発生地点より非常に離れた位置まで運ばれることを防ぐ目的で使用します。たいていの場合０で十分です。
  離散的なツブツブが目立つ場合は、若干の値を指定してみると改善される可能性があります。

・色差（ＪＫ）の再計算
  SCREEN10/12 の変換処理では、仮のＪＫを算出し、それを元にＹ値を計算します。
  この項目にチェックを入れておくと、Ｙ値を決定した後、そのＹ値からＪＫ値を計算し直すようになります。

・自然画生成アルゴリズム
  SCREEN10/12 用の変換で使われる計算式を指定します。

    ・なし　・・・　最も一般的な方法（Ｖ９９５８の仕様書の色）を使用して変換します
    ・誤差訂正（輝度重視） ・・・ Ｙ値を総なめにして、最も誤差が少ない値を採用します。
    ・ＭＳＸパワフル活用法レイトレ方式　・・・　ＭＳＸパワフル活用法に掲載されているレイトレーシングプログラムの計算式を使います
    ・ＮＴＳＣ改　・・・　ＮＴＳＣ方式のＹＵＶ変換式のパラメータを若干調整して使用します
    ・誤差訂正（色合い重視）　・・・　Ｙ値を総なめにして、最も誤差が少ない値を採用します。誤差の大小判定が誤差訂正（輝度重視）と若干異なります。

■サイズ調整
  チェックを入れると、入力画像のサイズを調節するようになります。

・リサンプル
  拡大または縮小するときの画像サンプリング方法を指定します。
    ・ノーマル・・・間引き/引き延ばしで調整します。拡大はギザギザして、縮小は線がとぎれる場合があります。
    ・アンチエイリアス・・・縮小は関連画素の重心/拡大はバイリニアにより調整します。拡大はぼやけた感じ、縮小はにじみます。

・サイズ
  調節サイズを選択します。
    ・強制的に出力サイズに合わせる・・・ドット比は考えず、ＭＳＸのドット幅・高さにあわせて出力します。出力によけいな隙間はできません。
    ・ＭＳＸで同じ縦横比に見えるサイズ・・・Windows上でのアスペクト比が、ＭＳＸ実機で表示したときに再現されるようにサイズを調節します。画像が画面内に収まるように調節するので、右又は下に隙間が出きる場合があります。

・背景色
    出力結果に隙間が出来た場合に埋める色を指定します。この色も減色時のパレット決定に影響するので注意してください。
    隙間が出来るのは、ＭＳＸ側モードのサイズよりも小さな画像をサイズ調節しないで変換した場合と、ＭＳＸで同じ縦横比に見えるサイズに調整した場合のいずれかです。

■パレット設定
  パレット周りの設定を行います。パレットを使えない SCREEN 10/12 出力では、ほとんどの項目が使用できません。

・パレット多色分布
  パレットの色の決定方法を指定します。自動決定パレットが１つも存在しない場合は無意味な設定です。
  未チェックの場合は、色の使用具合から、なるべく分散していてたくさん使われている色を選択します。
  チェックしている場合は、単純にたくさん使われている色から順番に選択します。この場合、アクセント的に点在する色などはほとんど再現されなくなります。

・０番を使わない
  ＶＲＡＭ上で０になる色は使わないようにします。ＶＤＰのTIMP（ TPSET ) で透き通らないようにしたり、背景色が透けて見えない方が良い場合などに使用します。

・全固定パレット
  すぺてのパレットの色を変更せずにそのまま使います。
  ゲーム用画像などで、決まった色しか使えない場合にしようします。

・ゼロ化
  元画像の特定の色を強制的に０にします。VDP の TIMP ( TPSET ) で透き通らせたい色を指定します。
  ただし、サイズ調節がＯＮの場合、サイズ調整によりぼかされた輪郭部分が透明色としてうまく判定されない場合があります。

    ・使用しない　・・・　ゼロ化を行いません
    ・指定色ゼロ化　・・・　指定した色（フルカラー）を強制的にゼロにします
    ・指定座標色でゼロ化　・・・　元画像の指定位置（サイズ調節後）にある色をゼロにします

・ゼロ化色ボタン
  ゼロ化の選択肢で、指定色ゼロ化を選択している場合に有効になります。
  ここで選択した色が強制的にゼロ（透明色）になります。
  色は、ゼロ化色ボタンのすぐ右に表示されています。

・ゼロ化色ボタンの右の入力欄
  指定座標色でゼロ化の場合に有効です。
  左側にＸ座標、右側にＹ座標を記入します。元画像のその場所にある色が透明色になります。

・COLOR = xx
  選択しているパレット番号を表示します。
  すぐ右の選択肢は、選択しているパレットの使用許可状態を示しています。

    ・色自動決定　・・・　BMP to MSX に色を決めさせる
    ・使用無許可　・・・　出力ファイルにはこの番号のパレットを使わない
    ・設定色を使用　・・・ＲＧＢスライダで指定した色をそのまま使う

  これらはパレット上にアイコンで表示されます。
       使用無許可（左）、設定色を使用（右）

・全て同じ許可ボタン
  クリックすると選択しているパレットの使用許可状態を、その他の全てのパレットへ適用します。

・ソート
  パレット決定直後にパレット値をソートするか否かを設定します。

    ・おまかせ　・・・　ソートしません
    ・自動決定のみ昇順ソート　・・・　使用許可状態が色自動決定になっているパレットのみ、輝度により昇順ソートします
    ・自動決定のみ降順ソート　・・・　使用許可状態が色自動決定になっているパレットのみ、輝度により降順ソートします
    ・完全昇順ソート　・・・　全てのパレットを輝度により昇順ソートします
    ・完全降順ソート　・・・　全てのパレットを輝度により降順ソートします

・パレットテーブル（ソートのすぐしたにある色）
  パレットの内容を色で表示しています。
  左クリックするとクリックした色が選択されます。
  左ドラッグするとドラッグ元と先でパレットの内容を入れ替えます（使用許可状態も入れ替わります）。
  右クリックすると使用許可状態を変更します。

・ＲＧＢスライダ
  選択中のパレットの色を変更します。

・パレット出力
  パレットデータをどこに出力するか指定します。

    ・出力しない　・・・　出力しません
    ・画像に結合　・・・　MSX-BASICの COLOR=RESTORE 命令でパレットを読み込めるように BSAVE 形式の決まったアドレスに書き込みます
    ・グラフサウルス形式　・・・　BIT2製グラフサウルスで使われている PL? 形式でファイルに出力します
    ・ＣＳＶ形式　・・・　カンマ区切りのテキストでファイルに出力します。

・パレット読み込み
  出力したパレットファイルを読み込んでパレットテーブルに反映します。

■再変換画面
  ＭＳＸ表示イメージが表示されている状態で、メイン画面の画像をクリックするかメニューのプレビュー（Ｐ）・・・再変換（Ｒ）をクリックすると開きます。

図２．再変換画面

  基本的にデフォルト設定画面と同じですが、一部異なっています。

・再変換
  現在表示されている設定で表示中の画像を変換し直します。
  出力先でプレビューを作成になっている場合は、現在の変換結果をのこしたまま新たにＭＳＸ表示イメージ（プレビュー）を作成します。
  デフォルト設定画面で常に再変換をデフォルト化がチェックされている場合、この時点で表示内容がデフォルト設定へコピーされます。

・デフォルトへコピー
  現在表示されている再変換の設定をデフォルト設定へコピーします。


２．３　メイン画面

■メイン画面
  メイン画面には画像が表示されます。
  また、ファイルをドロップすることで変換することも出来ます。

図１．メイン画面

■メニュー
  メイン画面には、次のようなメニューが付いています。

表１．メイン画面メニュー一覧

メニュー項目 | 内容
ファイル（Ｆ） | ファイル読み込みや終了などの基本的な操作が含まれています
編集（Ｅ） | クリップボード画像を変換するメニューが含まれています
プレビュー（Ｐ） | 表示されているＭＳＸ表示イメージの操作メニューが含まれています
設定（Ｓ） | デフォルト設定の操作メニューが含まれています
ヘルプ（Ｈ） | バージョン表示が含まれています

■ファイルメニュー
  ファイルメニューには次のような項目が含まれています。

表２．ファイルメニュー一覧

メニュー項目 | ショートカットキー | 内容
ファイルを開く | なし | 画像ファイルを開くダイアログを表示します
スクリプトモード | なし | スクリプトモード画面を表示します
終了 | なし | ＢＭＰｔｏＭＳＸを終了します

■編集メニュー
  編集メニューには次のような項目が含まれています。

表３．編集メニュー一覧

メニュー項目 | ショートカットキー | 内容
クリップボードの画像を変換 | Ctrl+V | クリップボードに記憶している画像を変換します

■プレビューメニュー
  プレビューメニューには次のような項目が含まれています。

表４．プレビューメニュー一覧

メニュー項目 | ショートカットキー | 内容
表示-次の画像 | → | プレビューの表示を次のプレビュー画像へ変更する
表示-前の画像 | ← | プレビューの表示を前のプレビュー画像へ変更する
表示-変換元/変換結果切り替え | スペースキー | 変換元表示とプレビュー表示を切り替える
表示-オリジナル画像の表示 | Ctrl+O | サイズ調整前の完全な変換元を表示する
表示-拡大 | F7 | 表示を拡大する
表示-縮小 | F8 | 表示を縮小する
プレビューのクリア | Del | 表示しているプレビューを記憶から削除する
プレビューの全クリア | Ctrl+A | 記憶しているプレビューを全て削除する
保存 | なし | 表示しているプレビューを BSAVE 形式で保存する
名前を付けて保存 | Ctrl+S | 表示しているプレビューを名前を付けて BSAVE 形式で保存する
ＢＭＰで保存 | なし | 表示しているプレビューを BMP 形式で保存する
再変換 | Ctrl+R | 表示しているプレビューを変換し直す（再変換画面を出す）

■設定メニュー
  設定メニューには次のような項目が含まれています。

表５．設定メニュー一覧

メニュー項目 | ショートカットキー | 内容
設定 | Ctrl+E | デフォルト設定画面を表示します
設定の表示 | Tab | メイン画面の左下に表示されている設定の表示・非表示を切り替えます
設定を初期値へ戻す | なし | デフォルト設定を初期化します

■ヘルプメニュー
  ヘルプメニューには次のような項目が含まれています。

表６．ヘルプメニュー一覧

メニュー項目 | ショートカットキー | 内容
バージョン表示 | なし | バージョン表示ダイアログを表示します


２．４　スクリプトモード画面

■スクリプトモード
  BMP to MSX にはスクリプトモードがあります。
  このモードでは、決まった変換処理を半自動化する事が出来ます。

  用途
    ・ＭＳＸ２用とＭＳＸ２＋以降用でSCREEN8とＳＣＲＥＥＮ１０の画像を使い分けたい場合
      →手動では：同じ画像を必ずSCREEN8と10用に変換する、手作業でやると設定ファイルを読み込みなおしたり何かと面倒
    ・SCREEN5 の画像を使うけど、いろいろな画像をいろいろな設定で変換して見比べたい
      →手動では：設定を切り替えたりなにかと面倒
    などなど。

  上のような用途の場合、自動的に設定を読み直すスクリプトを組んでおけば、後はそれを開いて置いてスクリプト画面にファイルをドロップするだけになります。

■スクリプトとは？
  BMP to MSX のスクリプトとは、決まった記述方法で変換手順を記述したテキストファイルです。
  スクリプトモード画面でも編集することが出来ます。

  スクリプトテキストを読み込むか入力して、メニューの実行をクリックすると実行することが出来ます。

■スクリプト命令
  スクリプトは、命令を羅列して記述します。
  使える命令を表１．に示します。

表１．スクリプト命令表

命令語 | 引数 | 意味
LOADSETTING | "ファイル名" | ファイル名で指定した B2M ファイルを読み込みます。拡張子まで指定してください。 ファイル名は半角の "（ダブルクォート）で囲む必要があります。
設定読込 | "ファイル名" | LOADSETTING命令と同じです。
CONVERT | なし | 現在の設定を元に設定されたファイル名のファイルを変換します。 ファイルをドロップして実行した場合は、自動的にそのファイル名が設定されています。 メニューの実行で実行した場合は、SETFILENAME 命令をつかってファイル名を指定していないとエラーになります。
変換処理 | なし | CONVERT命令と同じです。
SETFILENAME | "ファイル名" | 変換対象のファイル名を指定します。
ファイル名 | "ファイル名" | SETFILENAME命令と同じです
; | コメント | ; の次から行末までを無視します。コメントの記述に使用してください。 ; は半角のセミコロンです。全角は使用できません。
SCREEN | 出力側モード番号 | 出力側モード番号を指定します。出力側モード番号として、2/3/4/5/6/7/8/10/11/12を指定することが出来ます。この番号は MSX-BASIC の SCREEN命令第１引数と同じです。
画面モード | 出力側モード番号 | SCREEN命令と同じです
MSG | "メッセージ" | メッセージを小さなウィンドウで表示します。 メッセージは半角の "（ダブルクォート）で囲む必要があります。メッセージのなかに " を含めることは出来ません。
メッセージ | "メッセージ" | MSG命令と同じです
SETFLAG | フラグ名=値 | フラグ名（後述）で示される設定値に値を指定します
フラグ | フラグ名=値 | SETFLAG命令と同じです
SETTING | なし | 変換設定ダイアログの表示
設定画面表示 | なし | SETTING命令と同じです
PALETTE | パレット番号=赤,緑,青 | パレット番号のＭＳＸパレットに赤・緑・青の色を設定します。
パレット | パレット番号=赤,緑,青 | PALETTE命令と同じです。
PALMODE | パレット番号=値 | パレットの使用許可・無許可状態を設定します。
パレット動作 | パレット番号=値 | PALMODE 命令と同じです。
CUTERR | 値 | 切り捨て誤差を指定します。
切り捨て誤差 | 値 | CUTERR命令と同じです。
GOSAVAL | 値 | 誤差係数を指定します。値は 0～500 の整数です。この 1/1000 が誤差係数になります。
誤差拡散係数 | 値 | GOSAVAL命令と同じです。
SELCOLMODE | 値 | パレットの決定アルゴリズム（多色分布か、分散分布）を指定します。
選色モード | 値 | SELCOLMODE命令と同じです。
DITHERADD | 値 | ディザ加算モードを指定します。
ディザ加算 | 値 | DITHERADD命令と同じです。
ALGOMODE | 値 | 自然画生成アルゴリズムを指定します。
自然画生成 | 値 | ALGOMODE命令と同じです。

  スクリプト命令の引数の「フラグ名」には次の値を指定します。

表２．フラグ名一覧

値 | 意味
誤差拡散 | 誤差拡散を行うか否かを指定するフラグです
GOSA | 誤差拡散と同じです
インターレース | インターレース出力を行うか否かを指定するフラグです
INTERACE | インターレースと同じです
固定パレット | 全パレットをそのまま使うか否かを指定するフラグです
PALNOCHG | 固定パレットと同じです
サイズ調節 | サイズをＭＳＸ解像度にあわせて拡大縮小するか否かを指定するフラグです
RESIZE | サイズ調節と同じです
自動ファイル名 | ファイル名をソースファイル名を元に自動的に生成するか否かを指定するフラグです
AUTONAME | 自動ファイル名と同じです
色差再計算 | 自然画モードでＪＫ値を再計算するか否かを指定するフラグです
COLORRECALC | 色差再計算と同じです
ゼロ使用不可 | ０番のパレットまたは色を使用しないかどうかを指定するフラグです
ZERONOUSE | ゼロ使用不可と同じです
タイル | ５０％：５０％比タイルを単色として使うか否かを指定するフラグです
TILE | タイルと同じです

スクリプト命令の引数の「値」には数値の他に次の値を指定する事も出来ます。

表３．定数一覧

値 | 関連命令 | 意味
TRUE | SETFLAG | 有効
FALSE | SETFLAG | 無効
ON | SETFLAG | 有効
OFF | SETFLAG | 無効
NOUSE | PALMODE | このパレットは使用しない
AUTO | PALMODE | このパレットの色は自動的に決定する
CUSTOM | PALMODE | このパレットは指定の色のまま使う
未使用 | PALMODE | NOUSEと同じです
自動 | PALMODE | AUTOと同じです
指定 | PALMODE | CUSTOMと同じです
SCATTER | SELCOLMODE | 最も多く使われている色を基準になるべく分散した色を選びます
MAX | SELCOLMODE | 多く使われているものを優先して色を選びます
分散 | SELCOLMODE | SCATTERと同じです
多分布 | SELCOLMODE | MAXと同じです
ROTATE | DITHERADD | 回転
NONE | DITHERADD | 同位相
X | DITHERADD | Ｘずらし
Y | DITHERADD | Ｙずらし
回転 | DITHERADD | 回転
同位相 | DITHERADD | 同位相
Ｘずらし | DITHERADD | Ｘずらし
Ｙずらし | DITHERADD | Ｙずらし
NONE | ALGOMODE | 無し
RECALC | ALGOMODE | 誤差訂正（輝度重視）
POWERFUL | ALGOMODE | パワフル活用法レイトレの式
NTSC2 | ALGOMODE | ＮＴＳＣのＹＵＶ→ＲＧＢ変換式パラメータの修正式
COLOR | ALGOMODE | 誤差訂正（色合い重視）
無し | ALGOMODE | NONEと同じです
再計算 | ALGOMODE | RECALCと同じです
パワフル | ALGOMODE | POWERFULと同じです
ＮＴＳＣ改 | ALGOMODE | NTSC2と同じです
色合い | ALGOMODE | COLORと同じです

■補足
  アルファベットのスクリプト命令は、大小文字を区別しません。
  つまり、LOADSETTING と LoadSetting は同じ意味になります。

  命令・値などはすべてアルファベット版と日本語版を用意してあります。好きな方をご利用ください。

  誤差係数などの数値を指定するパラメータは、数式を指定することが出来ます。
  ただし、定数として評価可能な式のみで、変数などは使えません。
  その場合、数値は 101011B のような２進数、0FFH のような１６進数も記入可能です。
  演算子は、(,),*,+,/,%,&,^,~,|,AND,OR,XOR,NOT が使用可能です。演算の意味は C言語のそれや MSX-BASIC のそれと同じです。


２．５　オリジナル画像表示画面

  画像を変換後、ＭＳＸ表示イメージ（プレビュー）を表示させた状態で、プレビュー（Ｐ）・・・表示（Ｖ）・・オリジナル画像の表示（Ｏ）をクリックするとサイズ調整前の元画像が表示されます。

図１．オリジナル画像表示画面

メニューの機能の中には、等倍・２倍表示の選択があります。また、ウィンドウそのものを自由にサイズ変更できます。

オリジナル画像表示画面にカーソルを重ねると、カーソルがスポイトの形状に変化します。
この状態で、画像をクリックすると、クリック位置の色情報を表示します。

スポイト画面の左側上の色は、スポイトで吸い取った部分そのまま色です。左側下の色は、ＭＳＸの５１２色中１６色パレットに近似変換した際の色です（微妙に違うのが分かりますよね (^_^; ）。
色の右側に書いてある情報は、それぞれの色の値をＲＧＢで示した数値です。
パレット画面の変換処理は、パレットが大きく影響するので、「自動設定なんかに任せてられない！」というこだわり派の人は、この色を参考にしながらパレット値を決めると良いと思います。
スポイト画面を出している間、オリジナル画像画面は操作できなくなりますが、メイン画面の方は操作できます。設定画面を出して、スポイト画面と並べながら設定することもできます。

図２．色情報表示画面

左側の枠内はクリックした色、右側の情報は上から色コード、赤、緑、青、座標になります。
色コードは１６進数で xxRRGGBBH　の並びになっています。
赤・緑・青は１０進数表示で、それぞれ 0～255 の範囲を持っています。
座標は、画像の左上を (0,0) としたＸ軸右方向、Ｙ軸下方向を＋とした画素位置です。


３．チュートリアル

■はじめに
  BMP to MSX はいろいろな機能を入れてあるために、初めて使う方は少々とまどうかもしれません。
  そこで、簡単に変換の流れを示してみたいと思います。

■画像を用意する
  まず、変換する画像ファイルを用意します。Windowsの非圧縮ＢＭＰしか読み込めないので、目的の画像が圧縮BMPだったり、JPEG、GIF等の形式の場合は、他のツールを使って BMP へ変換して置いてください。

  ★メモ：JPEG/GIF/PNG であれば InternetExplorer で表示させることで BMP で保存することが出来ます

  ここでは、次の画像を使うことにします。

図１．変換したい画像（640x480）

  画像は 640x480 の倍数のサイズにしておくと便利です。今回は、640x480 にしてあります。
  BMP to MSX には、サイズ調節機能がありますが、これは強引にＭＳＸの解像度にあわせるものです。そのため、サイズ調節機能を使うなら、元の画像も「表示したときにＣＲＴと同じ縦横比になる」ようにしておくと、変換結果も比率が崩れずに表示されます。

■変換
  では、SCREEN7 用の画像を作ることにします。

図２．起動次画面

  起動したときの画面は図２のようになっています。
  左下に表示されている設定内容を見てみると「SCREEN5」になっていますね。
  これをSCREEN7 に変えなければ、SCREEN7 用の画像は作れません。

  では、メニューの設定(S)・・・設定(S)..をクリックしてデフォルト設定画面を出してください。

図３．デフォルト設定画面

SCREEN7 の出力を行うには、左上にある MSX側モード の選択肢で SCREEN7 を選択します。
ディザパターンは、高度な網がけ。誤差拡散にチェックをいれ、誤差計数を 0.430 にしてください。
中央あたりにあるサイズ調節にチェックを入れてください。アンチエイリアス・強制的に出力サイズに合わせるを選択するのも忘れずに。
その他はそのままにして、デフォルト設定ボタンをクリックします。

図４．SCREEN7 用に変わった画面

 図４の画面が出てきたはずです。左下の表示が SCREEN7 に変化しているのが分かりますね。

ここで、画像ファイルのアイコンをエクスプローラー等からドラッグして、このウィンドウの上にドロップしてください。

図５．ＭＳＸ表示イメージ

ファイルをドロップした瞬間に変換作業が開始されます。しばらくすると、図５．のようにＭＳＸ表示イメージが現れます。これをプレビューと呼びます。

若干画像が縦長になっていますが、これはＭＳＸとWindowsではドットの縦横比が異なるためです。表示イメージは Windowsのドット比のまま表示するので縦長になります。
ＭＳＸではWindowsよりも若干横長のドットを使っているため、これをＭＳＸで表示させれば変換元の比率が再現されるわけです。

出力先指定でプレビューを作成してファイルへ出力、ファイル明示同決定にチェックが入っているので、変換元のファイルが入っているフォルダに変換結果ファイルが作成されているはずです。

■ＭＳＸで表示してみる
  表示させる方法は４．ＭＳＸで変換結果を表示させるを見てもらうこととして、実際にＭＳＸ実機で表示したモノを見てみましょう。

図６．ファイルの確認

  ２ＤＤのフロッピーに変換結果（例の場合、S680480.SC7）を入れて、ＭＳＸ－ＢＡＳＩＣから見えることを確認します。

図７．画像表示のための単純なプログラム

  画像を読み込むためのプログラムを入力します。３０行目の BLOAD の後に来ているのがファイル名です。

図８．実行結果

  実行すると、図８のように表示されました。縦長ではなく若干横長ではなくなっていますね。

※上記写真撮影に使用した機材
    ビデオキャプチャボード：ATI RADEON 64DDR VIVO
    ＭＳＸ：Panasonic FS-A1GT
    これらの機材により色合いが若干変化しています。実際の色合いは実機でご確認ください。


４．ＭＳＸで変換結果を表示させる

■サンプルプログラム
  BMP to MSX に添付の Load.txt にいくつかのサンプルプログラム（MSX-BASIC）を掲載してあります。
  これを参考に、プログラムを作れば表示させることが出来ます。

■ツールを使う
  BSAVE 形式を読み込めるグラフィックビューワーなどもあるようです。
  市販されていたツールであれば、グラフサウルスやＤＤ倶楽部などで読み込むことが出来ます。
  グラフィックツールが付属しているＭＳＸでは、その付属ツールで読み込める場合があります。
  ただし、それらのツールが対応しているスクリーンモードの画像しか正常に読み込むことが出来ません。
  インターレースモードや、SCREEN2/3/4 の画像を表示させるにはプログラムを作るのが一番のようです。


５．配布・サポート

■著作権
  BMP to MSX はフリーウェアですが、著作権は HRA! が保持しています。

■配布
  以下の全ての条件を満たす場合に配布を許可します。

  ・配布に金銭が伴わないこと。ただし、配布メディアの代金等実費は除外する。また、HRA!に許可を得た場合も除外する。
  ・配布アーカイブ（ＬＺＨファイル）の内容を変更しないこと。
  ・免責の項目内容を配布先へ通知すること。
  ・ホームページや雑誌等へ掲載の際は、掲載の旨を事前に HRA! に連絡すること。

■免責
  以下の条件に同意できない方は、BMP to MSX を使用できません。

  ・BMP to MSX の使用により、使用者が何らかの損害を受けたとしても HRA! はいかなる責任も負いません
  ・BMP to MSX に不都合があっても HRA! は修正の義務を負いません

■サポート・連絡先について
  免責の項目にあるようにバグの修正義務は負いませんが、可能な限り修正・改善していきたいと思っています。
  もしも、バグ・要望等お気づきの点がありましたら、メールや掲示板にてお知らせください。

  メールアドレス： hra@imasy.or.jp
  掲示板ＵＲＬ　： HRA's Room ＭＳＸ掲示板

■最新版の入手

  実行ファイル・ヘルプの最新版 [ [image] ダウンロードページ]
  BMP to MSX のオンライン解説 [ [image] 解説ページ]