fox #1 Posted October 27, 2011 Yesterday I have released a new version of my 8-bit Atari chiptune player: ASAP. For those who haven't heard of it yet: it runs on Windows (including plugins for all popular audio players), Linux, web pages, Windows Mobile, Android, J2ME, etc. You can also use it to convert music files to Atari executables. Download ASMA and enjoy hours of Atari music. New in this version is an option to display information in the converted Atari executables, it looks like this: 2 Quote Share this post Link to post Share on other sites
phaeron #2 Posted October 28, 2011 I found a bug in ASAP's IRQ handling when I tried my 4-channel experiment on it. It looks like ASAP allows STIMER to shift the position of 15KHz based IRQs, which only SKCTL should be able to do. Repro case is attached. Here's the trace from asapscan -c showing the problem: 0 9 A=00 X=00 Y=00 S=FF P=--*---Z- PC=2000: 78 SEI 0 11 A=00 X=00 Y=00 S=FF P=--*--IZ- PC=2001: A9 00 LDA #$00 0 13 A=00 X=00 Y=00 S=FF P=--*--IZ- PC=2003: 8D 0E D4 STA $D40E 0 17 A=00 X=00 Y=00 S=FF P=--*--IZ- PC=2006: A9 00 LDA #$00 0 19 A=00 X=00 Y=00 S=FF P=--*--IZ- PC=2008: 8D 00 D4 STA $D400 0 23 A=00 X=00 Y=00 S=FF P=--*--IZ- PC=200B: 8D 0F D4 STA $D40F 0 27 A=00 X=00 Y=00 S=FF P=--*--IZ- PC=200E: A9 38 LDA #$38 0 29 A=38 X=00 Y=00 S=FF P=--*--I-- PC=2010: 8D 03 D3 STA $D303 0 33 A=38 X=00 Y=00 S=FF P=--*--I-- PC=2013: A9 FF LDA #$FF 0 35 A=FF X=00 Y=00 S=FF P=N-*--I-- PC=2015: 8D 01 D3 STA $D301 0 39 A=FF X=00 Y=00 S=FF P=N-*--I-- PC=2018: A9 3C LDA #$3C 0 41 A=3C X=00 Y=00 S=FF P=--*--I-- PC=201A: 8D 03 D3 STA $D303 0 45 A=3C X=00 Y=00 S=FF P=--*--I-- PC=201D: A9 FE LDA #$FE 0 47 A=FE X=00 Y=00 S=FF P=N-*--I-- PC=201F: 8D 01 D3 STA $D301 0 51 A=FE X=00 Y=00 S=FF P=N-*--I-- PC=2022: A9 3F LDA #$3F 0 53 A=3F X=00 Y=00 S=FF P=--*--I-- PC=2024: 8D FE FF STA $FFFE 0 57 A=3F X=00 Y=00 S=FF P=--*--I-- PC=2027: A9 20 LDA #$20 0 59 A=20 X=00 Y=00 S=FF P=--*--I-- PC=2029: 8D FF FF STA $FFFF 0 63 A=20 X=00 Y=00 S=FF P=--*--I-- PC=202C: A9 00 LDA #$00 0 65 A=00 X=00 Y=00 S=FF P=--*--IZ- PC=202E: 8D 06 D2 STA $D206 0 69 A=00 X=00 Y=00 S=FF P=--*--IZ- PC=2031: A9 71 LDA #$71 0 71 A=71 X=00 Y=00 S=FF P=--*--I-- PC=2033: 8D 08 D2 STA $D208 0 75 A=71 X=00 Y=00 S=FF P=--*--I-- PC=2036: A9 04 LDA #$04 0 77 A=04 X=00 Y=00 S=FF P=--*--I-- PC=2038: 8D 0E D2 STA $D20E 0 81 A=04 X=00 Y=00 S=FF P=--*--I-- PC=203B: 58 CLI 0 83 A=04 X=00 Y=00 S=FF P=--*----- PC=203C: 4C 3C 20 JMP $203C (snip) 1 74 A=04 X=00 Y=00 S=FF P=--*----- PC=203C: 4C 3C 20 JMP $203C 1 84 A=04 X=00 Y=00 S=FC P=--*--I-- PC=203F: 48 PHA 1 87 A=04 X=00 Y=00 S=FB P=--*--I-- PC=2040: 8D 09 D2 STA $D209 1 91 A=04 X=00 Y=00 S=FB P=--*--I-- PC=2043: A9 00 LDA #$00 1 93 A=00 X=00 Y=00 S=FB P=--*--IZ- PC=2045: 8D 0E D2 STA $D20E 1 97 A=00 X=00 Y=00 S=FB P=--*--IZ- PC=2048: A9 04 LDA #$04 1 99 A=04 X=00 Y=00 S=FB P=--*--I-- PC=204A: 8D 0E D2 STA $D20E 1 103 A=04 X=00 Y=00 S=FB P=--*--I-- PC=204D: 68 PLA 1 107 A=04 X=00 Y=00 S=FC P=--*--I-- PC=204E: 40 RTI 1 113 A=04 X=00 Y=00 S=FF P=--*----- PC=203C: 4C 3C 20 JMP $203C (snip) 2 89 A=04 X=00 Y=00 S=FF P=--*----- PC=203C: 4C 3C 20 JMP $203C 2 99 A=04 X=00 Y=00 S=FC P=--*--I-- PC=203F: 48 PHA 2 102 A=04 X=00 Y=00 S=FB P=--*--I-- PC=2040: 8D 09 D2 STA $D209 2 106 A=04 X=00 Y=00 S=FB P=--*--I-- PC=2043: A9 00 LDA #$00 2 108 A=00 X=00 Y=00 S=FB P=--*--IZ- PC=2045: 8D 0E D2 STA $D20E 2 112 A=00 X=00 Y=00 S=FB P=--*--IZ- PC=2048: A9 04 LDA #$04 3 9 A=04 X=00 Y=00 S=FB P=--*--I-- PC=204A: 8D 0E D2 STA $D20E 3 13 A=04 X=00 Y=00 S=FB P=--*--I-- PC=204D: 68 PLA 3 17 A=04 X=00 Y=00 S=FC P=--*--I-- PC=204E: 40 RTI asapbug.zip Quote Share this post Link to post Share on other sites
fox #3 Posted October 28, 2011 Thanks, I'm aware of this and other emulation inaccuracies. Quote Share this post Link to post Share on other sites