Sint32 buFormatDisk( drive, *volume, icon, *time, flag ) Sint32 drive const Uint8 *volume Sint32 icon BUS_TIME *time Sint32 flag
drive | 拡張ソケットの番号 |
*volume | ボリュームデータ |
icon | アイコン番号(0〜123) |
*time | タイムスタンプ |
flag | フォーマットフラグ |
BUD_ERR_OK | 処理要求を受けつけた |
BUD_ERR_BUSY | 処理中のため要求を受けつけられなかった |
拡張ソケットの番号driveには次の値が指定できます。
BUD_DRIVE_A1 | ポートAの拡張ソケット1 |
BUD_DRIVE_A2 | ポートAの拡張ソケット2 |
BUD_DRIVE_B1 | ポートBの拡張ソケット1 |
BUD_DRIVE_B2 | ポートBの拡張ソケット2 |
BUD_DRIVE_C1 | ポートCの拡張ソケット1 |
BUD_DRIVE_C2 | ポートCの拡張ソケット2 |
BUD_DRIVE_D1 | ポートDの拡張ソケット1 |
BUD_DRIVE_D2 | ポートDの拡張ソケット2 |
ボリュームデータvolumeは、ボディカラー情報を格納した領域へのポインタを指定します。 ボディカラー情報は32バイトの領域で、次のようになっています。
ボディカラー情報を持たせる場合
+0 | +1 | +2 | +3 | +4 | +5 | … | +31 |
01H | BLUE | GREEN | RED | ALPHA | 00H | … | 00H |
volume[ 0 ]には必ず'\x01'を格納してください。それ以外の値は禁止されています。 BLUE,GREEN,REDにそれぞれ青、緑、赤の成分を0〜255の範囲で指定します。 ALPHA(透明度)の値は128〜255の間で設定してください。 127以下の値は指定禁止です(BOOT ROMでの表示が見づらくなるため)。
ボディカラーを持たせない場合全ての要素を00Hにしてください。 ボディカラー情報を持たせない場合、BOOT ROMのファイル管理画面では、 デフォルトカラー(白)が使用されます。
フォーマットフラグflagには以下の値が指定できます。
TRUE | 完全フォーマット |
FALSE | クイックフォーマット |
Sint32 ret; BUS_TIME time; SYS_RTC_DATE rtc; Uint8 volume[32]; Sint32 icon_no; syRtcGetDate( &rtc ); time = ( BUS_TIME )rtc; /* タイムスタンプの設定 */ icon_no = 0; /* アイコン番号の設定 */ /* ボディカラー青を設定する */ memset(volume, 0, sizeof(volume)); volume[0] = 0x01; /* ボディカラー情報あり */ volume[1] = 0xbf; /* B */ volume[2] = 0x00; /* G */ volume[3] = 0x00; /* R */ volume[4] = 0xff; /* A */ ret = buFormatDisk(BD_DRIVE_A1, volume, icon_no, &time, TRUE); while (buStat(BUD_DRIVE_A1) == BUD_STAT_BUSY) { } if (buGetLastError(BUD_DRIVE_A1) != BUD_ERR_OK) return NG; return OK;
BUD_ERR_OK | 正常終了 |
BUD_ERR_NO_DISK | メモリーカードがない |