--------------------------------------------------------

Shinobi Library ver 0.50 JR4    1998/7/15

               Copyright 1998 SEGA Enterprises, LTD.
--------------------------------------------------------

★今回のリリースのトピック
・Ninjaグラフィックスフォーマットの新フォーマット対応
・Ninjaに新規関数が多数追加
・Ninjaリファレンスマニュアルの更新
・解像度モードの追加，アンチエイリアスのサポート
・Nindowsの更新
・BootRomの搭載
・ユーザタイマ関数の追加
・GDDA機能の追加
・ケーブル識別関数の追加

※前回READ1ST.TXTファイルにてアナウンスいたしました、
「オーバレイライブラリ」
と
「DMA転送関数」
は、諸般の事情により今回のリリースでの公開は見送らせていただきます。
具体的なリリース時期が分かりましたら、改めてご連絡いたします。

★目次と注意事項

・新規追加関数一覧
・Ninja新フォーマットについて
・Ninjaの画面解像度について
・BootROMの更新および、自己起動の方法について
・GDDAの再生方法および現状の不具合について
・ケーブル識別関数について
・サウンドドライバについて
・ファイルシステムについて

-------------------------------------------------------------------

◎このSET5 SDKについて
★新規追加関数一覧
今回のSDKで新規追加された関数は以下の通りです。

◆Ninja
njForwardCameraPosition      カメラを現在向いている方向に移動します。
njInitCamera                 カメラの初期化を行います。
njPitchCameraInterest        カメラの向きをローカル座標のX軸を中心にして
                             回転させます。
njPointCameraInterest        カメラの視線を点(x, y, z)に向けます。
njRollCameraInterest         カメラの視線をローカル座標のＺ軸を中心にして
                             回転させます。
njRotateCameraPositionX      カメラの位置をＸ軸を中心にして回転させます。
njRotateCamerePositionY      カメラの位置をＹ軸を中心にして回転させます。
njRotateCamerePositionZ      カメラの位置をＺ軸を中心にして回転させます。
njRotateCameraPositionXYZ    カメラの位置をX,Y,Zの各軸を中心にして回転させます。
njSetCamera                  ユーザの用意したカメラをマトリクススタックの
                             ベースに反映させます。
njSeCameraAngle              カメラの水平方向の画角を設定します。
njSetCameraDepth             ニアクリッピング、ファークリッピングの限界値を
                             指定します。
njTranslateCameraPosition    カメラの位置をＸ、Ｙ、Ｚ軸の各軸に沿って移動します。
njYawCameraInterest          カメラの視線をローカル座標のＹ軸を中心にして
                             回転させます。
njCnkEasyDrawModel           チャンクモデルをカレントマトリクスで座標変換して
                             描画します。
njCnkEasyDrawObject          チャンクオブジェクト（親子階層付モデルデータ）を
                             カレントマトリクスで座標変換して描画します。
njCnkSimpleDrawModel         チャンクモデルをカレントマトリクスで座標変換して
                             描画します。
njCnkSimpleDrawObject        チャンクオブジェクト（親子階層付モデルデータ）を
                             カレントマトリクスで座標変換して描画します。
njCnkSetEasyLight            njCnkEasyDrawObject(njCnkEasyDrawModel)用のライトを
                             設定します。
njCnkSetEasyLightColor       njCnkEasyDrawObject(njCnkSimpleDrawModel)用の
                             ライトの色を設定します。
njCnkSetEasyLightIntensity   njCnkEasyDrawObject(njCnkEasyDrawModel)用のライトの
                             強さを設定します。
njCnkSetSimpleLight          njCnkSimpleDrawObject(njCnkSimpleDrawModel)用の
                             ライトを設定します。
njCnkSetSimpleLightColor     njCnkSimpleDrawObject(njCnkSimpleDrawModel)用の
                             ライトの色を設定します。
njCnkSetSimpleLightIntensity njCnkSimpleDrawObject(njCnkSimpleDrawModel)用の
                             ライトの強さを設定します。
njSetCheapShadowMode         チープシャドウモードを設定します。
njCnkModDrawModel            モディファイアボリュームを描画します。
njCnkModDrawObject           モディファイアボリュームを描画します。
njEasyDrawModel              モデルをカレントマトリクスで座標変換して描画します。
njEasyDrawObject             オブジェクト（親子階層付モデルデータ）を
                             カレントマトリクスで座標変換して描画します。
njSetEasyLight               njEasyDrawObject(njEasyDrawModel)用のライトを
                             設定します。
njSetEasyLightColor          njEasyDrawObject(njEasyDrawModel)用のライトの色を
                             設定します。
njSetEasyLightIntensity      njEasyDrawObject(njEasyDrawModel)用のライトの強さ
                             を設定します。
njOpenBinary                 バイナリフォーマットファイルを開きます。
njCloseBinary                バイナリフォーマットファイルを閉じます。
njReadBinary                 バイナリフォーマットファイルを読み込みます。
njChangeSystem               システムを変更します。
njGetSystemAttr              現在のアトリビュートを取得します。
njStopDisplay                フレームバッファの表示を停止します。

◆ファイルシステム
gdFsReinit         ライブラリの再初期化
gdFsCreateDirhn    ディレクトリハンドルの生成
gdFsSetDir         カレントディレクトリを設定
gdFsGetDirInfo     ファイルの情報を取得
gdFsOpenRange      ファイルのセクタ指定オープン
gdFsGetFileSctSize ファイルのセクタサイズ取得
gdFsCalcSctSize    バイト数からセクタ数を算出 (マクロ)
gdFsGetErrStat     ファイルのエラー状態取得
gdFsStopRd         ファイルの読み込み中断
gdFsMovePickup     ピックアップ (読取装置) の移動
gdFsReqGdRd        GDバッファへの先読みのリクエスト発行
gdFsTrans32        GDバッファからの転送指定
gdFsGetWorkHn      現在実行中のハンドルの取得
gdFsGetTransStat   転送状態を取得
gdFsGetToc         TOCの取得
gdFsGetDrvStat     ドライブの状態の取得
gdFsEntryRdEndFunc 読み込み終了時のコールバック関数を登録
gdFsEntryTrEndFunc 転送終了時のコールバック関数を登録
gdFsEntryErrFunc   エラー発生時のコールバック関数を登録
GdFsDaPlay         DAのトラック再生
GdFsDaPlaySct      DAのセクタ指定再生
GdFsDaStop         DAの再生停止
GdFsDaPause        DAの再生の一時停止
GdFsDaRelease      DAの再生の一時停止解除

◆タイマ
syTmrGenStart        汎用タイマをスタートする
syTmrGenStop         汎用タイマを停止させる
syTmrGenSetClock     汎用タイマのベースクロックを変更
syTmrGenSetInt       汎用タイマ割り込みを設定する
syTmrGenCancelInt    汎用タイマ割り込みを動作させない
syTmrGenSetCount     汎用タイマカウント値を設定する
syTmrGenGetCount     汎用タイマカウント値を取得する
syTmrGenDiffCount    汎用タイマ値の差分をとる
syTmrGenCountToMicro 汎用タイマ値をマイクロ秒に変換する
syTmrGenMicroToCount マイクロ秒を汎用カウンタ値に変換する

◆サウンド
sdDrvGetTimingCounter サウンドドライバがサウンドデータの特殊なメッセージを
                      カウントしているカウント数を取得．
sdGddaSetVol          GD-DAの再生音量の設定．
sdGddaSetPan          GD-DAの再生定位の設定．
sdGddaGetStat         GD-DAのステータスの取得．
sdGddaResetPrm        GD-DAのリセット．

◆ケーブル識別
syCblCheckCable   接続ケーブルの種別を判別


★Ninja新フォーマット
  これまで、アナウンスしてきましたように本リリースからNinjaライブラリが
  新フォーマットに対応します。
  新フォーマットの対応により、キャッシュを効率よく使用し、これまでのフォーマット
  と比べ高速な計算処理が可能になります。

★Ninja旧フォーマットについて
  引き続きサポートを行います。また、Ninjaの関数についても今後も利用可能です。

★sbInitSystem、njInitSystemの第一引数で与える画面解像度が本SDKより
  追加されております。
  Image Super Samplingの機能を用いて、アンチエイリアスのかかった滑らかな
  画像表現が可能となります。
  若干、マクロの定義が分かりづらいため、添付のドキュメント(ninja\new\reso.doc)
  をお読みいただくことをお勧めします。

  注意）SET5.05の不具合により、アンチエイリアスを使った場合に画面の左側に
        ノイズが発生します。（SET5.2で修正対応）

★Nindowsついて
  頂点バッファの使用量の確認が行えるようになりました。
  また、パフォーマンスメーターの機能が一新されました。

★今回のリリースより、BootROMイメージの提供を開始いたします。
  ROMイメージの交換により、イニシアルプログラムと併せ、自己起動するディスク
  イメージの構築および、ディスクイメージからの起動が可能になります。
  これに伴い、GD Workshopは本バージョンにある最新版以外でのご利用は、
  出来なくなります。
  BootROMイメージは、SET5本体内蔵のFlashROMを書き換えることで行います。
  簡単に方法を説明すると、
  ・SET5のディップスイッチ4番を上に
  ・SET5の電源を投入し、すべてのブレークポイントを解除
  ・BootROMイメージをダウンロード
  ・0C000000hにライトブレークを張って、BootROMイメージを実行
  ・先に設定したブレークポイントで止まったら、ディップスイッチ4番を下にして
    再度リセット
  となります。
  詳細につきましては、必ず「KATANA\SETUP.DOC」をご覧ください。
  なお、今後BootROMの更新方法については変更される可能性があります。
  BootROMイメージは
    \KATANA\BOOTROM\BTRF067.bin
  にあります。
  
  また、BootROMを用いた自己起動の方法については、BootROM更新後、以下のような
  手順で行います。
  ・GD Workshopでプロジェクトを開き、プロジェクトウィンドウの右から、DISCタブ
    を選択
  ・System Area File (Single)と、System Area File (High)に、
    KATANA\SHINOBI\SAMPLE\IP\IP.BIN
    を選択する。(両方とも)
  ・自己起動したいプログラムをMAKEUSERファイルのPROJECT_TYPE変数を
    PROJECT_TYPE = bin
    にして、再コンパイル。
  ・できあがったバイナリファイル(.bin)を「1ST_READ.BIN」という名前に変更し
    ディスクイメージの高密トラックのデータトラック(第3トラック)においておく。
  ・一旦GD Workshopを再起動する。
  ・リセットボタンを押す。
  ・Codescapeを起動し、もし、[HARD-RESET]の状態ならば、F9キーまたは、
    Debug/Execution/RunでCPUを[RUNING...]の状態にしておく。
  ・この時点でCDトレイがクローズされていれば、ディスク上から1ST_READ.BINを
    読み込み、起動プロセスが開始されます。もし、CDトレイが開いていたら、
    CDトレイを閉じてください。その時点で起動プロセスが開始されます。

  以後は、起動したいプログラムを1ST_READ.BINという名前で、ディスクイメージ
  においておき、Codescape上または、ターゲット上からHard Resetをかけ、
  CodescapeでCPUを[RUNNING...]状態にして、トレイを閉めれば実行できます。

★GDDAについて
  今回、BootROMの更新およびGD Workshopのアップデートを行ったことにより、
  GD-DAの再生が可能になります。
  但し、現時点では、GD Workshop側に不具合があり、最終トラックのDAデータが
  再生できません。
  DAを再生するには、最後に4秒以上のダミートラックを置く必要があります。

★ケーブル識別関数について
  本バージョンよりケーブル識別関数が追加されました。
  この関数の機能は、本体背面AVマルチ端子にどのようなビデオケーブルが接続されて
  いるかを識別するものです。
  SET5には、AVマルチ端子はついていませんので、本体前面のディップスイッチ1番、2番
  を使いこれをエミュレートすることが出来ます。

★サウンドドライバについて
  本バージョンにサンプルとして提供しているサウンドデータのうち、サウンドドライバ
  が新しいものに差し替わります。
  ドライバ自体に仕様の変更が入ったため、古い仕様のドライバで作られた、他の
  サウンドデータは、以前のバージョンと比べて若干音量が変ります。
  本来、サウンドドライバはデータといっしょにサウンド制作者から貰うことになるため
  プログラム開発者に直接的な影響はありません。(サンプルの音量も若干変っています)

★ファイルシステムについて
  これまでファイルシステムで用いられていた定数マクロ
    GDFS_SEEK_*
    GDFS_STAT_*
    GDFS_ERR_*
  は、今後
    GDD_SEEK_*
    GDD_STAT_*
    GDD_ERR_*
  となります。
  また、同様にマクロ関数
    GDFS_WORK_SIZE
    GDFS_DIRREC_SIZE
  も、マクロ名を変更し、それぞれ
    gdFsGetWorkSize
    gdFsGetDirecSize
  となります。
  「GDFS_*」は互換性のために残してありますが、将来的に削除される可能性が
  あります。
  今後は、極力新しい名称をお使いいただくようお願いいたします。


△▼▽▲次回予告▲▽▼△
・Ninja Viewer for SET5
・サンプル追加
・BootROMアップグレード
・Codescape/GD Workshopアップグレード

※パッケージ付属のHTML関数リファレンスSHINOBI.HTMは、若干更新が遅れることが
あります。
最新の情報は、TEXTファイルまたはDOCファイルをご覧いただくようお願いいたします。

-- 以上 --
