Update of /cvsroot/pure-data/pd/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23652
Modified Files: Tag: devel_0_38 s_audio_asio.cpp Log Message:
Index: s_audio_asio.cpp =================================================================== RCS file: /cvsroot/pure-data/pd/src/Attic/s_audio_asio.cpp,v retrieving revision 1.1.4.26 retrieving revision 1.1.4.27 diff -C2 -d -r1.1.4.26 -r1.1.4.27 *** s_audio_asio.cpp 14 May 2005 17:25:09 -0000 1.1.4.26 --- s_audio_asio.cpp 16 Jun 2005 13:01:31 -0000 1.1.4.27 *************** *** 172,177 ****
/* from m_sched.c: */ - extern "C" int sys_keepsched; - extern "C" int sys_callbackscheduler; extern "C" double sys_time_per_dsp_tick; extern "C" double sys_time; --- 172,175 ---- *************** *** 298,303 **** { /* use callback scheduler */ ! sys_keepsched = 0; ! sys_callbackscheduler = 1; asio_ticks_per_callback = asio_bufsize / sys_dacblocksize; post("ASIO: using callback-based scheduler"); --- 296,300 ---- { /* use callback scheduler */ ! sys_setscheduler(1); asio_ticks_per_callback = asio_bufsize / sys_dacblocksize; post("ASIO: using callback-based scheduler"); *************** *** 570,574 **** if (sys_callbackscheduler) { ! sys_callbackscheduler = sys_keepsched = 0; } } --- 567,571 ---- if (sys_callbackscheduler) { ! sys_setscheduler(0); } } *************** *** 776,780 **** /* perform the processing */
! sys_lock();
for (long i = 0; i < sys_outchannels + sys_inchannels; i++) --- 773,786 ---- /* perform the processing */
! int timeout = sys_dacblocksize * (float)asio_ticks_per_callback / (float) sys_dacsr * 1e6; ! ! if (sys_timedlock(timeout) == ETIMEDOUT) ! /* we're late */ ! { ! post("timeout %d", timeout); ! sys_log_error(ERR_SYSLOCK); ! return 0; ! } !
for (long i = 0; i < sys_outchannels + sys_inchannels; i++)