PS2SDK
PS2 Homebrew Libraries
Loading...
Searching...
No Matches
midinote.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
13void _SsNoteOn(s16 sep_no, s16 seq_no, u8 note, u8 vollr)
14{
15 libsnd2_sequence_struct_t *score_struct;
16 int m_channel_idx;
17
18 score_struct = &_ss_score[sep_no][seq_no];
19 m_channel_idx = score_struct->m_channel_idx;
20 if ( vollr == 0 )
21 {
22 _SsVmKeyOff(
23 sep_no | (u16)(seq_no << 8), (char)score_struct->m_vab_id, (u8)score_struct->m_programs[m_channel_idx], note);
24 }
25 else if ( ((score_struct->m_channel_mute >> m_channel_idx) & 1) == 0 )
26 _SsVmKeyOn(
27 sep_no | (u16)(seq_no << 8),
28 (char)score_struct->m_vab_id,
29 (u8)score_struct->m_programs[m_channel_idx],
30 note,
31 vollr,
32 (u8)score_struct->m_panpot[m_channel_idx]);
33}