2: 2003-10-24 (金) 07:33:00 [4] | 現: 2024-01-08 (月) 12:58:55 ゲスト [5] | ||
---|---|---|---|
Line 4: | Line 4: | ||
***lib_init | ***lib_init | ||
struct LIB_WORK *lib_init(struct LIB_WORK *work) : | struct LIB_WORK *lib_init(struct LIB_WORK *work) : | ||
+ | |||
機能: APIライブラリを初期化する。 | 機能: APIライブラリを初期化する。 | ||
+ | |||
work==0の時はmalloc(256)してその領域を返す。その他のときはworkを返す。 | work==0の時はmalloc(256)してその領域を返す。その他のときはworkを返す。 | ||
ほかのコマンドを使う前にできるだけ早くこのコマンドを実行すること。 | ほかのコマンドを使う前にできるだけ早くこのコマンドを実行すること。 | ||
Line 14: | Line 14: | ||
***lib_close | ***lib_close | ||
void lib_close(int opt) : | void lib_close(int opt) : | ||
+ | |||
機能: APIライブラリを終了する。 | 機能: APIライブラリを終了する。 | ||
+ | |||
opt=0。 | opt=0。 | ||
現在、アプリもろとも終了する。 | 現在、アプリもろとも終了する。 | ||
Line 22: | Line 22: | ||
***lib_opensoundtrack | ***lib_opensoundtrack | ||
void lib_opensoundtrack(int slot) : | void lib_opensoundtrack(int slot) : | ||
+ | |||
機能:サウンドトラックをオープンする。 | 機能:サウンドトラックをオープンする。 | ||
+ | |||
slotはスロット番号を意味していて、0x200~0x3f0の値を指定する。slotは1つ消費。 | slotはスロット番号を意味していて、0x200~0x3f0の値を指定する。slotは1つ消費。 | ||
ウィンドウ等で使ったslot番号は使えないので重複しないようにすること。また、slotは | ウィンドウ等で使ったslot番号は使えないので重複しないようにすること。また、slotは | ||
16の倍数でなくてはならない。 | 16の倍数でなくてはならない。 | ||
+ | |||
参考になるサンプル:music2(introb)、music3(introb)、plymmlc0(intorb) | 参考になるサンプル:music2(introb)、music3(introb)、plymmlc0(intorb) | ||
***lib_controlfreq | ***lib_controlfreq | ||
void lib_controlfreq(int slot, int freq) : | void lib_controlfreq(int slot, int freq) : | ||
+ | |||
機能:サウンドトラックに対し、どんな音を出すのか指示する。 | 機能:サウンドトラックに対し、どんな音を出すのか指示する。 | ||
+ | |||
slotはlib_opensoundtrack()でオープンしてあるslot番号を入れる。freqは以下の式で | slotはlib_opensoundtrack()でオープンしてあるslot番号を入れる。freqは以下の式で | ||
求めた値を指定する。 | 求めた値を指定する。 | ||
+ | |||
freq = 0x100000000 / f (ただし、fはHzで表した周波数) | freq = 0x100000000 / f (ただし、fはHzで表した周波数) | ||
+ | |||
freqに0を指定すると無音(消音)を指定したことになる。 | freqに0を指定すると無音(消音)を指定したことになる。 | ||
+ | |||
参考になるサンプル:music2(introb)、music3(introb)、plymmlc0(intorb) | 参考になるサンプル:music2(introb)、music3(introb)、plymmlc0(intorb) | ||
***lib_getrandseed | ***lib_getrandseed | ||
int lib_getrandseed() : | int lib_getrandseed() : | ||
+ | |||
機能:乱数の種を生成する。 | 機能:乱数の種を生成する。 | ||
+ | |||
例:srand(lib_getrandseed()); | 例:srand(lib_getrandseed()); | ||
+ | |||
参考になるサンプル:test029 | 参考になるサンプル:test029 | ||
参考になるOSASK-ML:[OSASK 3233] | 参考になるOSASK-ML:[OSASK 3233] | ||
Line 57: | Line 57: | ||
***lib_execcmd | ***lib_execcmd | ||
void lib_execcmd(void *EBX) : | void lib_execcmd(void *EBX) : | ||
+ | |||
機能: コマンド列へのポインタをAPIライブラリに渡し、実行させる。 | 機能: コマンド列へのポインタをAPIライブラリに渡し、実行させる。 | ||
+ | |||
コマンド列の書き方: | コマンド列の書き方: | ||
void*の配列として書くと書きやすい。 | void*の配列として書くと書きやすい。 | ||
+ | |||
参考になるサンプル: introe01/helloc8.c | 参考になるサンプル: introe01/helloc8.c | ||
***lib_execcmd0 | ***lib_execcmd0 | ||
void lib_execcmd0(int cmd, ...) : | void lib_execcmd0(int cmd, ...) : | ||
+ | |||
機能: 引数をAPIライブラリのコマンドとして実行する。 | 機能: 引数をAPIライブラリのコマンドとして実行する。 | ||
+ | |||
guigui00.hのほとんどのコマンドはこれでできている。 | guigui00.hのほとんどのコマンドはこれでできている。 | ||
+ | -参考:[[gg00man/execcmd]] | ||
***lib_execcmd1 | ***lib_execcmd1 | ||
const int lib_execcmd1(int ret, int cmd, ...) : | const int lib_execcmd1(int ret, int cmd, ...) : | ||
+ | |||
機能: 引数をAPIライブラリのコマンドとして実行し、引数の一部を返す。 | 機能: 引数をAPIライブラリのコマンドとして実行し、引数の一部を返す。 | ||
+ | |||
cmd以下の引数をAPIのコマンドとして実行し、*(int*)&cmd+(ret-12)/4を返す。 | cmd以下の引数をAPIのコマンドとして実行し、*(int*)&cmd+(ret-12)/4を返す。 | ||
引数が入っているメモリはAPIライブラリが返り値を返すバッファとして使うこと | 引数が入っているメモリはAPIライブラリが返り値を返すバッファとして使うこと |
(This host) = http://osask.net