GAME-MB

概要

GAME-MB (BMUG)
  • 「BASIC MASTER 研究会」(BASIC MASTER USER'S GROUP の前身) で配布されていたもの

    残念ながら移植者がわかりません。 ご存じの方は情報をお寄せください。

    「GAME-BM」,「GAME/BM」といった表記がされることもあるようですが、同じものと考えて良さそうです。

    確認できているバージョン:

    • Version 2.0
  • ベーシックマスター向けの実装
  • MUSIC文拡張あり
  • 「GAME-MB MONUTOR」搭載
GAME-MB コンパイラ (BMUG)
  • 「BASIC MASTER 研究会」で配布されていた GAME-MB用のコンパイラ
deBUG記事
  • GAMEコンパイラの de bug について (1982.2p2) TEW SOFT

    MUSIC文の異常動作 FIX

再移植版 (こちらのバージョンを使う場合は本ドキュメントは無視してください)
  • BMUG版の仕様を反映した再移植版です
  • アセンブルソースとアセンブル済みのバイナリを公開されています

関連情報

  • GAME (ASCII:1978.7-10 | 合本:2-3) 大西博
  • GAME - DISS COMPILER (BMUG:1982.1) 瑞慶覧辰
  • GAME/BM COMPILER reference manual (BMUG:1983.9) TEW SOFT

メモリマップ




環境構築

バグがあるかも

プログラムリストの入力から実行まで

操作方法

GAME-MBの起動方法

  1. モニタの LOADコマンドで GAME-MBをロードする
  2. モニタの GOコマンドで GAME-MBを起動する
    COLD START :
    $1003
    HOT START :
    $101C

    原作では先頭アドレスが HOT START のエントリになっているのですが、手持ちのバイナリの冒頭部分は「JMP $1003」になっていました。

    少し調べてみたところ、$101C あたりが HOT START のエントリとして良さそうだっだので紹介しておきますが、 HOT START に不具合が見つかって殺した可能性もありますので注意してください。

  3. HOT START時にはソースエリアを再設定する
    1. $$== としてソースエリアの先頭アドレスが正しいか確認する
    2. デフォルト設定に戻す場合は =$1A00 とする
    3. == でソースの末尾を自動調整する

テキスト・エディタの基本操作

[=0 で「GAME-MB MONUTOR」を呼び出すことができます。

モニタのコマンド
※ベーマスのモニタコマンドを呼んでいるだけ?
S	SAVE
L	LOAD
V	VERIFY
M	MARGE	???
T	TRASFER
P	PRINT	???
#	PRINT	??? ('P'と同じ)
[CR]空打ちでスクリーンエディタに戻る?

プログラムのセーブ方法

「GAME-MB MONUTOR」から S

プログラムのロード方法

「GAME-MB MONUTOR」から L
[BREAK] で中断可能

プログラムの実行方法 (インタプリタ)

j68での入力方法

準備段階での注意事項

実機と同様に入力する (非推奨)

テキストファイルを用意して自動タイプ機能で入力する

参考:プログラムリストをメモリに直接流し込む方法

コンパイラの利用について

GAME-MB コンパイラ (BMUG)
  • 「BASIC MASTER 研究会」で配布されていた GAME-MB用のコンパイラ
deBUG記事
  • GAMEコンパイラの de bug について (1982.2p2) TEW SOFT

    MUSIC文の異常動作 FIX

改良版クロスコンパイラ
  • 移植者ご本人による改良版です (C言語)
  • ライブラリはアセンブルソースで公開されています

インタプリタ版コンパイラの準備




ランタイム・ライブラリをロードする ($5000-$513B)

オブジェクト版コンパイラの準備




ランタイム・ライブラリをロードする ($5000-$513B)

??==	ソースの先頭アドレス確認 ($1A00)
??=&	ソースの最終アドレス確認 ($3C8A)
#=1		コンパイラ起動

以下対話式
GAME?	ソースの先頭アドレスを入力する ($1A00)
1216 BYT (302LINE)	ソースの概要が表示される
SUB ?	ライブラリの先頭アドレスを入力する ($5000)
END   $513B			最終アドレスが表示される
STAT?	オブジェクトを出力するアドレスを入力する ($9000)
WORK?	WORK~STAC がソースのサイズ(1216byte)以上になるように指定する ($0A00)
STAC?	64byte程度あれば良い ($0F80)
SIZE: 11098 (513C-7C95)
		終了するとオブジェクトの概要が表示される
		$5000-7C95 をセーブすれば使いやすい (ライブラリ+オブジェクト版コンパイラ)

コンパイラの使い方





GAME-MB [BASIC MASTER]