プチコンで遊ぼう! (はてなブログ版)

任天堂3DSのプチコンで遊ぼう! [twitter:@eida_s]

はてなダイアリーから移行しました。 はてなダイアリーのURLを開いても自動的にこちらにリダイレクトされますのでご了承ください。

プチコンプログラミング覚え書き(7) 互換機能編

プチコンBIGも発売されたので、「3号プログラミング覚え書き」でなくて「プチコンプログラミング覚え書き」にしました。

バンナムDLCを使っているプログラムを一つのソースコードでBIGやDLCの入っていない3号で動かすには

 DLCが入っているか入っていないかは、FILESやCHKFILEでDLCのフォルダを調べることでチェックできます。
 例えば、パックマンDLCの場合、FILES "$PACMAN"とするとDLCが入っていればそのフォルダ名が返ってきますし、DLCが入っていなければ何も返ってきません。
 プチコン3号だけの時はこれでOKでした。

 ところが、プチコンBIGでは、FILES "$PACMAN" のように $ を含むフォルダ名/ファイル名をFILESやCHKFILEに指定すると、Illegal function callエラーになってしまいます。

 そのため、プチコンBIGを含めて対応するには、上記のチェックをするのに先だって、システム変数HARDWAREをチェックしておきます。

 具体的な方法は次のソースコードのとおりです。

VAR DLCNAME$="PACMAN"
IF HARDWARE<2 THEN
 IF CHKFILE("$"+DLCNAME$+"/DEFS") THEN
  DLCOPEN DLCNAME$
  'その他のDLCを使う処理....
 ENDIF
ENDIF