Previous 15994 Revisions Next

r9342 Friday 8th October, 2010 at 23:49:05 UTC by R. Belmont
[MAC] Change increment interpretation in wavetable mode, doubles the pitch of wavetable mode.
[src/emu/sound]asc.c

src/emu/sound/asc.c
r9341r9342
1818    0x807: CLOCK RATE (0 = Mac 22257 Hz, 1 = undefined, 2 = 22050 Hz, 3 = 44100 Hz)
1919    0x80a: PLAY REC A
2020    0x80f: TEST (bits 6-7 = digital test, bits 4-5 = analog test)
21    0x810: WAVETABLE 0 PHASE (big-endian 8.16 fixed-point, only 24 bits valid)
22    0x814: WAVETABLE 0 INCREMENT (big-endian 8.16 fixed-point, only 24 bits valid)
21    0x810: WAVETABLE 0 PHASE (big-endian 9.15 fixed-point, only 24 bits valid)
22    0x814: WAVETABLE 0 INCREMENT (big-endian 9.15 fixed-point, only 24 bits valid)
2323    0x818: WAVETABLE 1 PHASE
2424    0x81C: WAVETABLE 1 INCREMENT
2525    0x820: WAVETABLE 2 PHASE
r9341r9342
250250
251251               if (ch < 2)
252252               {
253                  smpl = (INT8)m_fifo_a[((m_phase[ch]>>16)&0x1ff) + wtoffs[ch&1]];
253                  smpl = (INT8)m_fifo_a[((m_phase[ch]>>15)&0x1ff) + wtoffs[ch&1]];
254254               }
255255               else
256256               {
257                  smpl = (INT8)m_fifo_b[((m_phase[ch]>>16)&0x1ff) + wtoffs[ch&1]];
257                  smpl = (INT8)m_fifo_b[((m_phase[ch]>>15)&0x1ff) + wtoffs[ch&1]];
258258               }
259259
260260               smpl ^= 0x80;
r9341r9342
490490            m_fifo_a_wrptr = m_fifo_b_wrptr = 0;
491491            break;
492492
493         case R_FIFOMODE:
494            if (data & 0x80)
495            {
496               memset(m_fifo_a_wrhalf, 0, sizeof(m_fifo_a_wrhalf));
497               memset(m_fifo_b_wrhalf, 0, sizeof(m_fifo_b_wrhalf));
498
499               m_fifo_a_rdptr = m_fifo_b_rdptr = 0;
500               m_fifo_a_wrptr = m_fifo_b_wrptr = 0;
501            }
502            break;
503
493504         case R_WTCONTROL:
494505//            printf("One-shot wavetable %02x\n", data);
495506            break;

Previous 15994 Revisions Next


© 1998-2018 The MESS Team