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

SET5 SDK ver 0.50 JR5    1998/8/5

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

★今回のリリースのトピック
ビジュアルメモリの本体装着時API(LCD、バックアップ)
BootROMのオープニングアニメーション、GUI対応
BootROMフォントAPI
Graphic Toolの提供(\GRAPHICTOOLS\以下をご覧ください)
ビジュアルメモリSDKの提供(\VM\以下をご覧ください)

★目次と注意事項

・新規追加関数一覧
・Ninja関数仕様変更について
・LCD及びバックアップ関数評価について
・バックアップデータについて
・Dreamcastコントローラとビジュアルメモリの接続について
・BootROMの更新および、自己起動の方法について
・GD-DAについて
・ファイルシステムについて

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

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

◆Ninja
  njGenerateFogDensity        フォグを手前から奥に掛けるための精度を求める 
  njCnkSetAmbient             チャンクモデル用の環境光を設定する
  njCalcPoints                複数の点にマトリクス変換をかける
  njCalcVectors               複数のベクトルにマトリクス変換をかける
  njGetTranslation            マトリクスから移動要素を取り出す
  njRotateZXY                 マトリクスにZXYの順番で回転変換をかける
  njUnitRotPortion            マトリクスの回転要素を正規化
  njUintTransPortion          マトリクスの移動要素を正規化
  njCnkDrawModel              チャンクモデルの描画
  njCnkDrawObject             チャンクオブジェクトの描画
  njCameraAction              カメラモーションの実行
  njCameraMotion              カメラモーションの実行
  njCnkDrawMotion             モーションの描画
  njCnkEasyDrawMotion         モーションの描画
  njDrawMotion                モーションの描画
  njEasyAction                モーションの実行
  njEasyDrawMotion            モーションの実行
  njEasyDrawShapeMotion       シェイプ付きモーションの実行
  njGetAction                 モーション情報の取得
  njGetDrawMotion             モーション情報の取得
  niInitShape                 シェイプバッファの初期化
  njLightAction               ライトモーションの実行
  njLightMotion               ライトモーションの実行
  njSimpleAction              モーションの実行
  njSimpleActionLink          モーションの結合
  njSimpleDrawMotion          モーションの実行
  njSimpleDrawMotionLink      モーションの結合
  njSimpleDrawShapeMotion     モーションの実行
  njSimpleDrawShapeMotionLink モーションの結合
  njSetSystemAttr             現在のアトリビュートを取得する
  njUserClipping              ユーザクリッピングの設定
  njUserClippingMode          ユーザクリッピングモードの設定
  njFrameBufferBmp            フレームバッファをビットマップにする
  njFrameBufferBmp2           ※削除。njFrameBufferBmpに吸収
  njInitTextureBuffer         テクスチャバッファの設定
  njLoadTexturePvmFile        PVMファイルのロード
  njSetPvmTextureList         PVMファイルロード時のテクスチャリストの設定

◆Nindows
  nwFindWindowEx              指定のタイトル文字列を持つウィンドウ、ボタン、
                              スクロールバーを指定の親ウィンドウ以下から探す
  nwSelectSystemFont          システムフォントのサイズを変更する
  nwEnablePeripheral          コントロールパッドでのマウス操作の許可、禁止を
                              変更する

◆サウンド
  sdDrvCheckExecute       サウンドドライバの自己診断を行う
  sdDrvFinish             サウンドシステムの終了
  sdDrvMidiTimmingCounter サウンドドライバがサウンドデータの特殊なメッセージを
                          カウントしているカウント数を取得
  sdDrvGetTimmingCounter  ※削除。sdDrvMidiTimmingCounterに名称変更

◆メモリ管理
  syMallocStat   Mallocで確保している空きメモリと一回の確保での最大サイズの取得
  syMallocFinish Mallocシステムの終了

◆LCDコントロール
  pdVmsLcdWrite     VMSの液晶にデータを表示する
  pdLcdGetDirection 液晶の向きを取得する
  pdVmsLcdIsReady   VMSが接続されているかどうか調べる

◆バックアップ
  buInit                ライブラリを初期化する
  buExit                ライブラリを終了する
  buSetCompleteCallback 処理完了時のコールバック関数を登録する
  buSetProgressCallback 一定処理経過時のコールバック関数を登録する
  buIsReady             バックアップRAMが接続されているかどうかを調べる
  buIsFormat            バックアップRAMがフォーマット済みかどうかを調べる
  buGetDiskFree         空き容量を調べる
  buGetDiskInfo         バックアップRAMの各種情報を取得する
  buIsExistFile         指定ファイルが存在するかどうか調べる
  buGetFileSize         指定ファイルのサイズを調べる
  buGetFileInfo         指定ファイルの各種情報を取得する
  buStat                処理が完了しているかどうか調べる
  buGetLastError        最後に発生したエラーを取得する
  buSaveFile            ファイルをセーブする
  buLoadFile            ファイルをロードする
  buDeleteFile          ファイルを削除する
  buSetFileAttr         ファイル属性を変更する
  buFindFirstFile       第１ファイルのファイル名を取得する
  buFindNextFile        次のファイルのファイル名を取得する
  buLoadFileEx          読み込み開始ブロックとブロック数を指定してファイルを
                        ロードする
  buFormatDisk          バックアップRAMをフォーマットする
  buFindExecFile        実行ファイルのファイル名を取得する
  buSaveExecFile        実行ファイルをセーブする
  buDefragDisk          連続空きブロックを確保する

◆BootROMフォント
  syBtFntGet     BootROM上のフォントデータの先頭アドレスを取得
  syBtFntChkSmph フォントセマフォのチェック
  syBtFntClrSmph フォントセマフォのクリア

★Ninja関数制限事項
  現在の所、フリッカフリー機能は正常に表示できません。

★Ninja関数仕様変更
  Ninjaの関数のうち
  njInitVertexBuffer関数の仕様が変更になり、関数引数が一つ追加されます。
  void njInitVertexBuffer(Uint32 op, Uint32 om, Uint32 tp, Uint32 tm, Uint32 pt)
    op:不透明ポリゴン用頂点バッファのサイズ
    om:不透明モディファイアボリューム用頂点バッファのサイズ
    tp:半透明ポリゴン用頂点バッファのサイズ
    tm:半透明モディファイアボリューム用頂点バッファのサイズ
    pt:パンチスルーポリゴン用頂点バッファのサイズ(追加)
  パンチスルーポリゴンはSET 5.2で始めて対応される機能ですので、現時点では、
  何を入れても変化はありません。

★LCD・バックアップについて
  本バージョンより、ビジュアルメモリを本体コントローラに装着した際の、LCD画面の
  コントロールおよびバックアップ処理を行う関数APIを、追加しました。
  これらのAPIを利用するためには、SET5本体に4つのペリフェラルポートのついた
  最終仕様の開発ターゲットを使用するか、Maple Stationと呼ばれる、製品版のパット
  を挿すことの出来る、変換用ハードウェアを必要とします。
  Maple Stationについては、今後配布予定になっておりますので、
  Maple Station入手後に、これらのライブラリAPI及び、サンプルプログラムを
  お試しください。

★バックアップデータについて
  今回のリリースよりバックアップ関数を追加しておりますが、提供している
  関数は、単純にバイナリのイメージをビジュアルメモリなどのストレージメディア
  に読み書きする機能のみが備わっています。
  しかしながら、実際には、そのバイナリイメージの中には、BootROMのGUIで
  見ることの出来る、ファイルのコメントや、アニメーションアイコン等の情報が
  ヘッダ(ビジュアルメモリ単体で動くプログラムの場合にはフッタ)情報として
  含まれてなければいけません。(最低270hバイト)
  次回リリースにおいては、セーブデータの付加情報を作成するための、ユーティリティ
  関数が追加される予定です。(KATANA\SHINOBI\DOC\SHINOBI\BACKUP.DOCの最後の、
  作成中と書かれた関数がそれです。)
  したがって、このパッケージにあるサンプルプログラムで作成したセーブデータは、
  BootROMのバックアップ管理画面では、白いアイコンにコメントなしという状態に
  なります。
  今回の関数利用は、あくまで関数APIを習得するという目的にし、次回リリースで
  本格的な利用に移行して頂けるようよろしくお願いいたします。

★Dreamcastコントローラとビジュアルメモリの接続について
Dreamcastコントローラのプロトタイプ及びMaple Stationと呼ばれるケーブル変換器
が順次配布される予定ですが、Dreamcastコントローラに現在市販されている、
ビジュアルメモリソフト「あつめてゴジラ 怪獣大集合」
を挿した場合の問題点について列挙しておきます。
なお、これらの症状は「あつめてゴジラ」に依存したものではなく、
ビジュアルメモリをコントローラに挿す時の、ハードウェア的な仕様であるとお考え
                                          ~~~~~~~~~~~~~~~~~~~~
ください。
1)コントローラにビジュアルメモリを挿した瞬間にコントローラが認識されなくなる
  BootROMのバックアップ管理画面で確認できます。
2)「あつめてゴジラ」のプロトタイプ(Ver. 0.90)に限り、
  「あつめてゴジラ」がゲームモードの時にコントローラに挿すと、そのコントローラは
  接続を認識されない。
  ※「あつめてゴジラ」のほうをSEGAロゴの出ているモード、又は時計モードにしてから
    コントローラに挿すようにしてください。
3)ゲームモード起動中の製品版のビジュアルメモリをコントローラに挿した場合は、
  ビジュアルメモリは認識されません。(コントローラは認識されます。)

★BootROMの更新および、自己起動の方法について
  本バージョンでは、BootROM Version 0.71を提供していますが、
  本バージョンで提供する、SHINOBIライブラリやNinjaライブラリあるいは、
  SET5用グラフィックビューワーは、この最新版のBootROMが入っていないと
  正常に動作いたしません。
  したがって、本バージョンのライブラリ及びツールをご利用になる場合には、
  必ずBootROMの更新または、インストールを行ってください。
  
  BootROM Ver 0.71にはオープニングアニメーション、ユーザインターフェイスの機能が
  追加されました。

  BootROMのインストールおよび更新方法が変更になりましたので
  ここに簡単に説明いたします。
  ◆インストール方法
    ・SET5のディップスイッチ4番を上に
    ・SET5の電源を投入し、すべてのブレークポイントを解除
    ・BootROMイメージを0c010000hにダウンロード
    ・AC000000hにインストラクションブレークを張って、BootROMイメージを実行
    ・先に設定したブレークポイントで止まったら、ディップスイッチ4番を下にして
      再度リセット
  ◆更新方法
    ・SET5のディップスイッチ4番を上に
    ・GD Workshopで起動ディスクを作成しBootROM(btrf071.bin)をファーストリード
      ファイルに指定する。
    ・BootROMの自己起動機能を用いて、GD Workshop上のBootROMイメージを実行する。
    ・画面が白くなったら、ディップスイッチを元に戻してリセットする。
  となります。
  詳細につきましては、必ず「KATANA\SETUP.DOC」をご覧ください。
  なお、今後BootROMの更新方法については変更される可能性があります。

  BootROMイメージは
    \KATANA\BOOTROM\BTRF071.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...]状態にして、
  トレイを閉めれば実行できます。
  又、\KATANA\UTILITY\DACHECKの中にあるDACHECH.EXEを仕様し、CPUをOSモードに
  しておけば、SET5のリセットボタンを押すか、CodescapeでHard Resetを選択する
  ことでBootROMが自動起動し、オープニングアニメーションが始まります。

★GD-DAについて
  JR4にてアナウンスいたしました、最終トラックのDAデータが全く再生されない
  というバグは、今回提供しておりますGD EmulatorのFirmwareでは
  改善されておりますが、まだFirmwareに不具合があり、最終トラックのDAデータが
  最後まで再生されません。
  この現象は、SET5の実ドライブでは発生しません。
  また、GDDA再生中にリセットをかけた場合、RootROMのオープニングアニメーション
  時などで、GDDAが再生されつづけるという症状が起こりますが、これも、
  GD EmulatorのFirmwareのバグです。今後改善されます。

  サウンドドライバにあるバグのため、GDDAにPANを設定した場合、予想外の挙動を
  示すことがあります。この不具合は次回のリリースにおいて修正される予定です。

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


△▼▽▲次回予告▲▽▼△
・サンプル追加
・BootROM更新
・Codescape/GD Workshopアップグレード
・ライブラリ・ツールのバグ修正
・Waveファイル再生サンプルの提供(ミドルウェア)

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

-- 以上 --
