nuauseqplayersetno.c
1.47 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
/*======================================================================*/
/* NuSYS */
/* nuauseqplayersetno.c */
/* */
/* Copyright (C) 1997, NINTENDO Co,Ltd. */
/* */
/*======================================================================*/
/* $Id: nuauseqplayersetno.c,v 1.1.1.1 2002/10/30 02:07:09 blythe Exp $ */
/*======================================================================*/
#include <nusys.h>
#include <nualsgi.h>
/*----------------------------------------------------------------------*/
/* nuAuSeqPlayerSetNo -シーケンスプレイヤーのシーケンス読み込み */
/* IN: player_no シーケンスプレイヤーの番号 */
/* NU_AU_SEQ_PLAYER0 or NU_AU_SEQ_PLAYER1 */
/* seq_no シーケンス番号 */
/* RET: 無し */
/*----------------------------------------------------------------------*/
void nuAuSeqPlayerSetNo(u32 player_no ,u32 seq_no)
{
s32 dataLen;
u8* dataOffset;
#ifdef NU_DEBUG
if(seq_no >= nuAuSeqFile_ptr->seqCount){
osSyncPrintf("nuAuSeqPlayerSetNo: seq_no %d is too big.\n", seq_no);
return;
}
#endif /* NU_DEBUG */
nuAuSeqPlayer[player_no].seqno = seq_no;
/* シーケンスデータのアドレスとサイズをヘッダから取得する */
dataOffset = nuAuSeqFile_ptr->seqArray[seq_no].offset;
dataLen = nuAuSeqFile_ptr->seqArray[seq_no].len;
/* サイズが奇数だとPIで転送できないので偶数にする */
if(dataLen & 0x00000001) dataLen++;
nuPiReadRom((u32)dataOffset, nuAuSeqPlayer[player_no].data_ptr, dataLen);
}