Mercurial > sdl-ios-xcode
comparison src/audio/mint/SDL_mintaudio_it.S @ 961:185acc07127a
Date: Fri, 29 Oct 2004 11:47:09 +0200
From: Patrice Mandin
Subject: Reworked audio drivers for Atari platform
These are reworked audio drivers for the Atari platform.
Previous drivers were missing some features:
- Test external clock plugged to DSP port on Atari Falcon 030.
- Ability to select internal or external clock.
So now, I generate a list of frequencies available, with the master clock
and predivisor to use. One big caveat to this: I do not have an external
clock, so I hope it works.
author | Patrice Mandin <patmandin@gmail.com> |
---|---|
date | Fri, 29 Oct 2004 09:56:53 +0000 |
parents | c4803992e09c |
children | d00b4d8508ab |
comparison
equal
deleted
inserted
replaced
960:eec28a5278be | 961:185acc07127a |
---|---|
21 */ | 21 */ |
22 | 22 |
23 /* | 23 /* |
24 Audio interrupts | 24 Audio interrupts |
25 | 25 |
26 Patrice Mandin | 26 Patrice Mandin, Didier Méquignon |
27 */ | 27 */ |
28 | 28 |
29 .text | 29 .text |
30 | 30 |
31 .globl _SDL_MintAudio_Callback | 31 .globl _SDL_MintAudio_Callback |
32 | 32 |
33 .globl _SDL_MintAudio_GsxbInterrupt | 33 .globl _SDL_MintAudio_GsxbInterrupt |
34 .globl _SDL_MintAudio_EmptyGsxbInterrupt | 34 .globl _SDL_MintAudio_EmptyGsxbInterrupt |
35 .globl _SDL_MintAudio_XbiosInterrupt | 35 .globl _SDL_MintAudio_XbiosInterrupt |
36 .globl _SDL_MintAudio_XbiosInterruptMeasureClock | |
36 .globl _SDL_MintAudio_Dma8Interrupt | 37 .globl _SDL_MintAudio_Dma8Interrupt |
37 .globl _SDL_MintAudio_StfaInterrupt | 38 .globl _SDL_MintAudio_StfaInterrupt |
38 | 39 |
39 .globl _SDL_MintAudio_mutex | 40 .globl _SDL_MintAudio_mutex |
40 .globl _SDL_MintAudio_audiobuf | 41 .globl _SDL_MintAudio_audiobuf |
41 .globl _SDL_MintAudio_numbuf | 42 .globl _SDL_MintAudio_numbuf |
42 .globl _SDL_MintAudio_audiosize | 43 .globl _SDL_MintAudio_audiosize |
44 .globl _SDL_MintAudio_clocktics | |
43 | 45 |
44 .globl _SDL_MintAudio_stfa | 46 .globl _SDL_MintAudio_stfa |
45 | 47 |
46 /* | 48 /* |
47 How it works: | 49 How it works: |
92 | 94 |
93 clrw _SDL_MintAudio_mutex | 95 clrw _SDL_MintAudio_mutex |
94 _SDL_MintAudio_EmptyGsxbInterrupt: | 96 _SDL_MintAudio_EmptyGsxbInterrupt: |
95 rts | 97 rts |
96 | 98 |
99 /*--- Xbios interrupt vector to measure Falcon external clock ---*/ | |
100 | |
101 _SDL_MintAudio_XbiosInterruptMeasureClock: /* 1 mS */ | |
102 | |
103 btst #0,0xFFFF8901:w /* state DMA sound */ | |
104 beqs SDL_MintAudio_EndIntMeasure | |
105 addql #1,_SDL_MintAudio_clocktics | |
106 SDL_MintAudio_EndIntMeasure: | |
107 bclr #5,0xFFFFFA0F:w /* Clear service bit */ | |
108 rte | |
109 | |
97 /*--- Xbios interrupt vector ---*/ | 110 /*--- Xbios interrupt vector ---*/ |
98 | 111 |
99 _SDL_MintAudio_XbiosInterrupt: | 112 _SDL_MintAudio_XbiosInterrupt: |
100 | 113 |
101 /* Reenable interrupts, so other interrupts can work */ | 114 /* Reenable interrupts, so other interrupts can work */ |