mirror of
https://github.com/ENSL/NS.git
synced 2024-12-02 09:11:56 +00:00
88 lines
4.5 KiB
HTML
88 lines
4.5 KiB
HTML
<HTML>
|
|
<HEAD>
|
|
<META NAME="GENERATOR" Content="SOURCEDOC.EXE">
|
|
<META HTTP-EQUIV="Content-Type" content="text/html; charset=iso-8859-1">
|
|
<TITLE>sceSifAddCmdHandler</TITLE>
|
|
<STYLE>
|
|
#flush {margin-left: -10p; margin-right: -0p}
|
|
#buttonbar {color: white}
|
|
</STYLE>
|
|
</HEAD>
|
|
<BODY TOPMARGIN=0 BGPROPERTIES="FIXED" BGCOLOR="white">
|
|
<FONT FACE="ARIAL">
|
|
<SPAN ID="flush">
|
|
<A NAME="SEE ALSO">
|
|
<TABLE WIDTH="100%" COLS=2 BORDER=0 BGCOLOR="#000000">
|
|
<TR ALIGN=RIGHT>
|
|
<TD ALIGN=LEFT>
|
|
<IMG SRC="banner03.gif" WIDTH="88" HEIGHT="31" BORDER=0>
|
|
</TD>
|
|
<TD ALIGN=RIGHT VALIGN=TOP>
|
|
<FONT FACE="ARIAL" SIZE="2">
|
|
<A ID=buttonbar HREF="FSOUND_Update.html">
|
|
<IMG SRC="u_prev.gif" WIDTH="71" HEIGHT="16" BORDER=0 ALT="Previous Topic">
|
|
</A>
|
|
<A ID=buttonbar HREF="FSOUND.html">
|
|
<IMG SRC="u_index.gif" WIDTH="47" HEIGHT="16" BORDER=0 ALT="Index">
|
|
</A>
|
|
<A ID=buttonbar HREF="FSOUND_REVERB_CHANNELPROPERTIES.html">
|
|
<IMG SRC="u_next.gif" WIDTH="48" HEIGHT="16" BORDER=0 ALT="Next Topic">
|
|
</A>
|
|
</FONT></TD><TD WIDTH=15></TD>
|
|
</TR>
|
|
</TABLE>
|
|
</A>
|
|
</SPAN>
|
|
<A HREF="FSOUND.html#Functions"><H5>[API function]</A></H5>
|
|
<H2><A NAME="sceSifAddCmdHandler">sceSifAddCmdHandler</A></H2>
|
|
For advanced users only. <BR>
|
|
Only used if users are getting conflicts with FMOD's command handler when writing IOP modules of their own or using other middleware that uses SIFCMD.<BR>
|
|
This function tells FMOD about the user's SIFCMD buffer that has been set with sceSifSetCmdBuffer, and the indicies into that sceSifCmdData array that FMOD can use.<BR>
|
|
The user may have specified a SIF command handler of their own before calling FSOUND_Init and loading FMOD.IRX when setting up their own IOP<->EE communication.<BR>
|
|
It simply enables FMOD to know the size, and what indicies into the sceSifCmdData array the user has set that FMOD can use.<BR>
|
|
It allows the user's app and FMOD to share the buffer that the user has created.<BR>
|
|
FMOD uses 2 sif handlers. A main one and secondary one.<BR>
|
|
<P>
|
|
<B> </B><B> </B><B>sceSifAddCmdHandler</B><B>(</B><BR>
|
|
<B>YOURHANDLERINDEX</B><B> </B><I></I><B>,</B><BR>
|
|
<B>yourhandler</B><B> </B><I></I><B>,</B><BR>
|
|
<B>NULL</B><B> </B><I></I><BR>
|
|
<B>);</B><BR>
|
|
<H3>Parameters</H3>
|
|
<TABLE>
|
|
<TR VALIGN=top><TD><I>buffersize</I></TD>
|
|
<TD>The size of the sceSifCmdData array that the user has set.<BR>
|
|
</TD><TR VALIGN=top><TD><I>bufferindexmain</I></TD>
|
|
<TD>The index into the user created sceSifCmdData array for the primary FMOD sifcmd handler.<BR>
|
|
</TD><TR VALIGN=top><TD><I>bufferindexsecondary</I></TD>
|
|
<TD>The index into the user created sceSifCmdData array for the secondary FMOD sifcmd handler.<BR>
|
|
</TD></TABLE>
|
|
<H3>Return Value</H3>
|
|
void<BR>
|
|
<H3>Remarks</H3>
|
|
FMOD will automatically use the previously set command buffer, as sceSifSetCmdBuffer returns the previously set buffer which FMOD uses.<BR>
|
|
This is why you dont have to pass in the actual buffer itself.<BR>
|
|
-----------<BR>
|
|
IMPORTANT! FMOD.IRX must also be notified when it is initialized!<BR>
|
|
The IOP side of the command handler, which is initialized when FMOD.IRX is loaded, must also be notified of the user's IOP side buffer size and indicies.<BR>
|
|
By passing it as command line parameter with sceSifLoadModule, you can do this. If this is not done, unexpected results may occur.<BR>
|
|
The FMOD.IRX takes 3 parameters. They are simply 3 integers seperated by a space. <BR>
|
|
Parameter 1 is equal to 'buffersize'<BR>
|
|
Parameter 2 is equal to 'bufferindexmain'<BR>
|
|
Parameter 3 is equal to 'bufferindexsecondary'<BR>
|
|
------------<BR>
|
|
Here is an example of using sceSifLoadModule to notify FMOD.IRX of your IOP side sifCmd buffer size and command handler index.<BR>
|
|
sprintf(s, "4989424 1238404 205", CMDBUFSIZE, FMODINDEXMAIN, FMODINDEXSECONDARY); // NOTE : must be formatted as 3 integers seperated by a space.<BR>
|
|
sceSifLoadModule("host0:api/fmod.irx", strlen(s), s);<BR>
|
|
Then later on the EE side, before calling FSOUND_Init, you will call this function, ie<BR>
|
|
FSOUND_SetSifCommandInfo(CMDBUFSIZE, FMODINDEXMAIN, FMODINDEXSECONDARY);<BR>
|
|
And before any of this, you would have set up your own command handler with something like this.<BR>
|
|
sceSifInitCmd();<BR>
|
|
sceSifSetCmdBuffer(&yourcommandbuffer<BR>
|
|
<H3>See Also</H3>
|
|
<A HREF="FSOUND_Init.html">FSOUND_Init</A>
|
|
<HR><BR><FONT SIZE="-2">This document copyright ©Firelight Technologies, Pty, Ltd, 1999-2002. All rights reserved.</FONT><BR>
|
|
<FONT SIZE="-2">Generated Thu Dec 15 17:31:37 2005
|
|
by SourceDoc v0.10, the automated source code documenter.</FONT><BR>
|
|
</BODY>
|
|
</HTML>
|