Code: Select all
V1. Load the current value of the VxSRCN register, if necessary.
V2. Load the sample pointer (using previously loaded DIR and VxSRCN) if
necessary.
Code: Select all
inline VOICE_CLOCK( V1 )
{
m.t_dir_addr = m.t_dir * 0x100 + m.t_srcn * 4;
m.t_srcn = VREG(v->regs,srcn);
}
inline VOICE_CLOCK( V2 )
{
// Read sample pointer (ignored if not needed)
uint8_t const* entry = &m.ram [m.t_dir_addr];
...<snip>...
}