PS2SDK
PS2 Homebrew Libraries
sspptp.c
1 /*
2 # _____ ___ ____ ___ ____
3 # ____| | ____| | | |____|
4 # | ___| |____ ___| ____| | \ PS2DEV Open Source Project.
5 #-----------------------------------------------------------------------
6 # Copyright ps2dev - http://www.ps2dev.org
7 # Licenced under Academic Free License version 2.0
8 # Review ps2sdk README & LICENSE files for further details.
9 */
10 
11 #include "libsnd2_internal.h"
12 
13 void SsSeqPlayPtoP(s16 sep_no, s16 seq_no, u8 *start_point, u8 *end_point, char play_mode, s16 l_count)
14 {
15  libsnd2_sequence_struct_t *score_struct;
16 
17  score_struct = &_ss_score[sep_no][seq_no];
18  if ( start_point == end_point || end_point < start_point )
19  {
20  printf("bad address setting!!\n");
21  return;
22  }
23  score_struct->m_seq_ptr = start_point;
24  score_struct->m_unk08 = start_point;
25  score_struct->m_unk0C = start_point;
26  score_struct->m_unk10 = end_point;
27  score_struct->m_flags &= ~0x200u;
28  score_struct->m_flags &= ~4u;
29  score_struct->m_l_count = l_count;
30  switch ( play_mode )
31  {
32  case SSPLAY_PAUSE:
33  score_struct->m_flags |= 2u;
34  break;
35  case SSPLAY_PLAY:
36  score_struct->m_flags |= 1u;
37  score_struct->m_flags |= 0x400u;
38  score_struct->m_play_mode = SSPLAY_PLAY;
39  score_struct->m_unk21 = 0;
40  _SsVmSetSeqVol((sep_no | (seq_no << 8)), score_struct->m_voll, score_struct->m_volr);
41  break;
42  default:
43  break;
44  }
45 }
libsnd2_sequence_struct_
Definition: libsnd2_internal.h:47