ABC turbo

git-svn-id: file:///home/notaz/opt/svn/PicoDrive/platform@553 be3aeb3a-fb24-0410-a615-afba39da0efa
This commit is contained in:
notaz 2008-07-16 12:50:33 +00:00
parent 1b38d64b02
commit 6589c840ca
13 changed files with 179 additions and 99 deletions

View file

@ -1026,6 +1026,27 @@ void emu_RunEventsPico(unsigned int events)
}
}
void emu_DoTurbo(int *pad, int acts)
{
static int turbo_pad = 0;
static unsigned char turbo_cnt[3] = { 0, 0, 0 };
int inc = currentConfig.turbo_rate * 2;
if (acts & 0x1000) {
turbo_cnt[0] += inc;
if (turbo_cnt[0] >= 60)
turbo_pad ^= 0x10, turbo_cnt[0] = 0;
}
if (acts & 0x2000) {
turbo_cnt[1] += inc;
if (turbo_cnt[1] >= 60)
turbo_pad ^= 0x20, turbo_cnt[1] = 0;
}
if (acts & 0x4000) {
turbo_cnt[2] += inc;
if (turbo_cnt[2] >= 60)
turbo_pad ^= 0x40, turbo_cnt[2] = 0;
}
*pad |= turbo_pad & (acts >> 8);
}