

#include <nitro/ctrdg.h>
void CTRDG_DummyInit( void );
なし。
なし。
特殊な用途で、カートリッジライブラリの初期化を行います。
本関数は、CTRDG ライブラリの占有サイズを減らすために weak 関数である CTRDG_Init() をアプリケーションで定義しなおした場合にその中で呼び出すことを目的として用意されています。それ以外の目的で使用することはできません。
記述方法は以下の通りです。
void CTRDG_Init(void)
{
CTRDG_DummyInit();
}
アプリケーション側でこのように定義することで、CTRDG ライブラリの多くの関数がリンクされなくなり、メモリの占有サイズを減らすことができます。
このリファレンスで説明した方法で CTRDG 関数のメモリ占有サイズを小さくした場合、カートリッジにアクセスすることは出来ないので、カートリッジ関連のアクセス関数を呼ぶことが出来ません。DEBUG ビルドでは、多くの関数でアサーションが発生します。
TWL LIMITED ROM に対してこの方法を使用することは出来ません。TWL LIMITED ROM で行おうとするとコンパイルエラーとなります。TWL ハードウェアにはカートリッジスロットがないので
TWL LIMITED ROM では元から CTRDG_Init() が最小限の初期化しか行わず、CTRDG 関数の多くがリンクされません。ここで説明する方法をとる必要がありません。(CTRDG_Init() は インライン関数で定義されています。)
使用できるのは、NITRO 専用 ROM を作成する場合と、NITRO/TWL の HYBRID ROM を作成する場合です。いずれもアプリケーションが カートリッジスロットを使用しないことが条件となります。なおカートリッジアクセスをすべて無視するのでカートリッジの抜け検出も行いません。
2008/01/28 初版