|
Atari coding BBS
DSP SSI question |
Posted by: Thadoss/Dune
|
Jun,10.2024-23:34
|
Hi Falcon lovers
I've got a question about SSI interrupts and stack underflow.
I'm trying to improve the DSP emulation of Hatari.
I'm playing with a programm called "VoxxFree" a 16 bands vocoder.
This program is built like this :
SSI interrupts (Send / receive sound)
p:000c jmp p:$02bb
p:000e jmp p:$02bb
p:0010 jmp p:$02c4
p:0012 jmp p:$02c4
p:02bb jclr #3,x:$ffee,p:$02c0
p:02bd movep x:$ffef,x:$0001
p:02bf rti
p:02c0 movep x:$ffef,x:$0002
p:02c2 bset #1,x:$0000
p:02c3 rti
p:02c4 jclr #2,x:$ffee,p:$02c9
p:02c6 movep x:$0003,x:$ffef
p:02c8 rti
p:02c9 movep x:$0004,x:$ffef
p:02cb rti
From what I understand of the Motorola DSP doc, the jmp in the 2 instructions interrupt vector generates a fast interrupt, not a long interrupt.
But it also generates a break into the program flow.
Actually, the RTI generates a "stack underflow" message and the program doesn't work.
Is there something I misunderstand ?
Is the interrupts with a jmp and a RTI normal ?
Any idea why the coder did it this way ?
Regards
Thadoss
|
[All messages in this thread] [Start new thread]
What's the anti-troll code? That's your personal code to be able to add comments and messages on the dhs.nu site.
Don't have a code or forgot it? Fix it here.
|