Name Last Update
..
CVS Loading commit data...
Makefile Loading commit data...
Makefile.dos Loading commit data...
Makefile.irix Loading commit data...
README.TXT Loading commit data...
lib_memory.h Loading commit data...
nualstl.h Loading commit data...
nualstl_n.h Loading commit data...
nuauprenmifuncset.c Loading commit data...
nuauprenmiproc.c Loading commit data...
nuaustlheap.c Loading commit data...
nuaustlinit.c Loading commit data...
nuaustlmgr.c Loading commit data...
nuaustlptrbankinit.c Loading commit data...
nuaustlptrbankset.c Loading commit data...
nuaustlseqplayerdataset.c Loading commit data...
nuaustlseqplayerinit.c Loading commit data...
nuaustlseqplayerplay.c Loading commit data...
nuaustlsndplayerdataset.c Loading commit data...
nuaustlsndplayerinit.c Loading commit data...
nuaustlsndplayerplay.c Loading commit data...
//======================================================================//
//									//
//		SoundTools Ver3.0 用 NuSystemについて			//
//				NINTENDO Co,Ltd.			//
//									//
//			1998/10/21	K.Ohki				//
//======================================================================//

【1】インストール
  まず、MUS ライブラリVer.3 の lib ディレクトリのライブラリとヘッダーが、
 所定の場所にコピーされているのを確認してください。

  その後、nualstl3ディレクトリに移り、以下のコマンドを入力し、NuSystemの
 ライブラリをインストールしてください。

    make -f makefile.dos install

  これで、makefile.dosのN64KITDIR(デフォルトではc:\nintendo\n64kit)で指定した
  位置にlibmus3.0用のNuSystemがインストールされます。


【2】コンパイル方法
 nualstl3 ライブラリを再構築する場合は、以下のようにして下さい。

  通常では、NuSystemのソースは、

  X:\nintendo\n64kit\nusys\src
  (X: NuSystemをインストールしたドライブ)

  にnusys-120.lzhとして圧縮してインストールされていますので、
  これをその場で展開し、
  展開してできたディレクトリ"nusys-1.20"のしたに
  nualstl3をディレクトリごとコピーしてください。
  そしてnualstl3のしたで

  >make -f makfile.dos

  とすればコンパイルできます。

 (参考)
  N64 Soundtools 付属のライブラリ(libgmus.a libn_gaudio_sc.a など)は、
  OS2.0I Patch5以降に対応した物です。
 OS2.0I Patch4以前のバージョンで動作させる場合、これらも再構築する必要が
 あります。
 それぞれのソースの makefile の以下の行のコメントを外してコンパイルして
  下さい。

    OLD_AUDIO_DEF = -D_OLD_AUDIO_LIBRARY


【3】NuSystemの変更点

  libmus3.0は、それ以前とはかなり関数やその動作が変更されています。
  しかし、できるだけその差をNuSystem側で吸収し、変更点が少なくなるように
  しています。
  また、audioマイクロコードとn_audioマイクロコード用は同じソースから
  ライブラリを生成できるようにしました。


  ●変更概要

  これまで、NuSystem用のmusライブラリが必要でしたが、libmus3.0から
  スケジューラの変更ができるようになりました。
  そのため、libmusをそのまま用いるように変更しています。
  ただ、これまではmusライブラリを変更してsound effects bankやbinary song等
  の領域をオーディオヒープ領域から確保できるようにしていましたが、
  そのままlibmusを用いた場合そういったことができません。
  これを解決するため、libmusの内部関数のうち__MusInitMemMalloc()を用いています。

  libmus3.0から効果音は、エフェクトバンクファイルとして扱うようになり、
  関数も変更されていますので、NuSystem側も変更しています。

  以下に変更した関数と新たに追加した関数をあげておきます。


  ●変更した関数

  nuAuStlinit()
    これまで、引数のmusConfigのメンバをほとんどを使わなかったものを、
    すべて使うようになりました。そのため、全てのメンバの初期設定を
    おこなってください。
    ただしNULLを指定した場合は、デフォルト値(auConfig)を用います。

  nuAuStlMgrInit()
    これまでDMAコールバック用の初期化部分とシンセサイザの初期化を削除し、
    スケジューラの登録とmusの初期化をおこなうように変更しました。
    また引数は、musConfig構造体のポインタに変更しています。


  ●追加した関数

  nuAuStlSeqPlayerInit()
    シーケンスと効果音の扱いが変わったので、追加しました。
    オーディオヒープ領域から、シーケンス(binary song)の領域を
    確保します。そのため、サイズには、ゲームでつかうシーケンスファイルの
    最大値をしてしてください。

  nuAuStlSndPlayerInit()
    効果音が別ファイルになったので追加しました。
    オーディオヒープ領域から、効果音(binary song effects bank)の
    領域を確保します。そのため、サイズにはゲームで使う効果音のファイルの
    最大値を指定してください。



  ●削除した関数

  nuAuStlPlayerInit()
    nuAuStlPlayerInit()は、nuAuStlSeqPlayerInit()に変更しました。
    また、この関数でMusIntialize()を呼んでいましたが、
    nuAuStlMgrInit()で呼ぶように変更しています。
    マクロでnuAuStlPlayerInit()は、nuAuStlSeqPlayerInit()に定義して
    あります。

  ●その他
    ボリュームやパン、テンポの指定はマクロで定義してありますが、
    libmus3.0に無い関数は使えません。また新規に作成していませんので
    注意してつかってください。