Bug #67
openPokey two tone timing problem
Added by admin over 7 years ago. Updated about 4 years ago.
0%
Description
An old bug.. See http://atariage.com/forums/topic/228527-pokey-emulation/page-3#entry3060595
10 P=53760
20 POKE P+8,64
30 POKE P+1,10+32
31 POKE 53775,11
40 POKE P,20
50 GOTO 50
high pitched, low pitched on real Atari
Files
Screenshot from 2018-06-20 23-02-19.png (111 KB) Screenshot from 2018-06-20 23-02-19.png | foft, 06/20/2018 10:02 PM |
FO Updated by foft over 7 years ago Actions #1
FO Updated by foft over 7 years ago Actions #2
Been measuring cases on the scope...
Confirmed the extra cycle delays described in that forum post on my 600XL. Confirmed missing on the EclaireXL implementation.
FO Updated by foft over 7 years ago Actions #3
I was concerned that my clocks were off at first since I was running in VGA mode, but that changes vsync slightly (50Hz vs 4.86Hz) which of course also impacts audio frequency:-) Debugging in RGB mode gives a perfect match.
FO Updated by foft over 7 years ago Actions #4
A 2 cycle delay on the reset fixes both the 4 cycle and the 9 cycle case.
Now to check this specific example!
FO Updated by foft over 7 years ago Actions #5
Nope, seems to be some interaction with the noise filtering. I wonder if the delay also needs applying to the pulse from the timer, that then hits the noise filter.
FO Updated by foft over 7 years ago Actions #6
So, errr identical then! Going to have to think about this one...
B is Atari, A is EclaireXL.
FO Updated by foft over 7 years ago Actions #7
I found if I pokey 53775,11+128 on the Atari then it matches the Eclaire output. Unfortunately forcing the serious output on eclaire to 1 or 0 does not change anything. Still its something to go on!
FO Updated by foft over 4 years ago Actions #8
I have audio test pcbs now to allow synchronised writes to pokeymax vs pokey. Which should help track down this kind of thing.
FO Updated by foft about 4 years ago Actions #9
This was fixed following investigation and a simple test case/detailed spreadsheet from Synthpopalooza.
I used these new audio test pcbs and a cycle exact fpga comparison program to check it against the real pokey.
Incidentally I found another few small intermittent cycle differences which I'll be able to track down with this too.
FO Updated by foft about 4 years ago Actions #10
- Status changed from New to Resolved