|
|
1.1 root 1: /*
2: * Copyright (c) 1994 NeXT Computer, Inc. All rights reserved.
3: *
4: * HISTORY
5: * 4-Mar-94 Rakesh Dubey at NeXT
6: * Created.
7: */
8:
9: #import <driverkit/IOAudio.h>
10: #import <driverkit/i386/ioPorts.h>
11: #import <soundkit/NXSoundParameterTags.h>
12:
13: @interface SoundBlaster8 : IOAudio
14: {
15: @private
16: unsigned int currentDMADirection;
17: BOOL interruptTimedOut;
18: unsigned int dmaDescriptorSize; // DMA descriptor size for interrupts
19: BOOL isValidRequest; // Can we do I/O of type requested?
20: }
21:
22: + (BOOL)probe: deviceDescription;
23: - (BOOL)reset;
24: - (void) initializeHardware;
25:
26: - (BOOL) isValidRequest: (BOOL)isRead;
27:
28: - (BOOL) startDMAForChannel: (unsigned int) localChannel
29: read: (BOOL) isRead
30: buffer: (IOEISADMABuffer) buffer
31: bufferSizeForInterrupts: (unsigned int) division;
32:
33: - (void) stopDMAForChannel: (unsigned int) localChannel read: (BOOL) isRead;
34:
35: - (void) interruptOccurredForInput: (BOOL *) serviceInput
36: forOutput: (BOOL *) serviceOutput;
37:
38: - (void)updateSampleRate;
39:
40: - (void) setBufferCount:(int)count;
41:
42:
43: - (IOReturn)enableAllInterrupts;
44: - (void)disableAllInterrupts;
45:
46: - (BOOL)acceptsContinuousSamplingRates;
47:
48: - (void)getSamplingRatesLow:(int *)lowRate
49: high:(int *)highRate;
50:
51: - (void)getSamplingRates:(int *)rates
52: count:(unsigned int *)numRates;
53:
54: - (void)getDataEncodings: (NXSoundParameterTag *)encodings
55: count:(unsigned int *)numEncodings;
56:
57: - (unsigned int)channelCountLimit;
58:
59: - (void) updateInputGainLeft;
60: - (void) updateInputGainRight;
61: - (void) updateOutputMute;
62: - (void) updateOutputAttenuationLeft;
63: - (void) updateOutputAttenuationRight;
64:
65: @end
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.