Z88DKでBSAVE形式のファイルを作るには
Z88DKではコンパイル時にSubtypeを指定することで、様々なシーンに対応したバイナリを作ることができます。
subtype=disk
と指定すると、通常のバイナリに加えて、BSAVE形式のバイナリも作ってくれます。BSAVE形式はファイルの先頭に識別用のコード1バイト(FEH)、開始アドレス、終了アドレス、実行開始アドレス各2バイトの計7バイトのヘッダがつくのが特徴です。
BSAVE形式の格納アドレスを変更するには
デフォルトでは、BSAVE形式の開始アドレスは9C40H
とみなしてバイナリが作られますが、これを任意のアドレスに変更するには、-zorg
というオプションを指定します。ちなみに、アドレスを16進表記とする場合は、"0x"というプレフィックスをつける必要があります。
zcc +msx -create-app hello.c mymsx.c -subtype=disk -o $1.bin -DAMALLOC -lm -zorg 0xc400
のように指定すると、先頭番地がC400HのBSAVE形式のバイナリを作成してくれます。
実行時には、HIMEMの位置を変更してマシン語領域を確保した後に、BLOADコマンドでロードして実行します。
Z88DKでコンパイルすると、BSAVE形式のファイルは拡張子が.MSX
となります。
CLEAR 100,&HC400
BLOAD"FOOBAR.MSX",R
コメント
コメントを投稿