Subversion Repositories Kolibri OS

Rev

Rev 431 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 431 Rev 562
Line 29... Line 29...
29
 
29
 
30
	   cmp eax, ebx
30
           cmp eax, ebx
31
	   jne .next
31
           jne .next
32
	   mov eax, [edi+4]
32
           mov eax, [edi+4]
-
 
33
           mov [codec.ac_vendor_ids], eax
-
 
34
           mov esi, eax
33
	   mov [codec.ac_vendor_ids], eax
35
           call SysMsgBoardStr
-
 
36
           stdcall detect_chip, [edi+8]
34
	   stdcall detect_chip, [edi+8]
37
 
35
	   ret
38
           ret
36
.next:
39
.next:
37
	   add edi, 12
40
           add edi, 12
38
	   jmp @B
41
           jmp @B
39
.unknown:
42
.unknown:
40
	   mov [codec.ac_vendor_ids], ac_unknown
43
           mov [codec.ac_vendor_ids], ac_unknown
-
 
44
           mov [codec.chip_ids], chip_unknown
-
 
45
 
-
 
46
           mov esi, chip_unknown
-
 
47
           call SysMsgBoardStr
-
 
48
           mov eax, [codec.chip_id]
-
 
49
           call dword2str
41
	   mov [codec.chip_ids], chip_unknown
50
           call SysMsgBoardStr
42
	   ret
51
           ret
Line 43... Line 52...
43
endp
52
endp
44
 
53
 
Line 62... Line 71...
62
.next:
71
.next:
63
	   add edi, 8
72
           add edi, 8
64
	   jmp @b
73
           jmp @b
65
.unknown:
74
.unknown:
66
	   mov [codec.chip_ids], chip_unknown
75
           mov [codec.chip_ids], chip_unknown
-
 
76
           mov esi, chip_unknown
-
 
77
           call SysMsgBoardStr
-
 
78
           mov eax, [codec.chip_id]
-
 
79
           call dword2str
-
 
80
           call SysMsgBoardStr
67
	   ret
81
           ret
68
endp
82
endp
Line 69... Line 83...
69
 
83
 
70
align 4
84
align 4
Line 91... Line 105...
91
        mov ax, 0x0808
105
           mov ax, 0x0808
92
        stdcall codec_write, dword 0x16
106
           stdcall codec_write, dword 0x16
Line 93... Line 107...
93
 
107
 
94
 
-
 
95
	stdcall codec_read, dword CODEC_EXT_AUDIO_CTRL_REG
108
 
96
 
109
           stdcall codec_read, dword CODEC_EXT_AUDIO_CTRL_REG
97
	and  eax, 0FFFFh - BIT1 		 ; clear DRA (BIT1)
110
           and eax, 0FFFFh - BIT1                  ; clear DRA (BIT1)
Line 98... Line 111...
98
	or   eax, BIT0				 ; set VRA (BIT0)
111
           or eax, BIT0                           ; set VRA (BIT0)
Line 99... Line 112...
99
	stdcall codec_write, dword CODEC_EXT_AUDIO_CTRL_REG
112
           stdcall codec_write, dword CODEC_EXT_AUDIO_CTRL_REG
100
 
-
 
101
	stdcall set_sample_rate, dword 48000
113
 
102
 
114
           stdcall set_sample_rate, dword 48000
103
.init_error:
115
 
Line 151... Line 163...
151
align 16
163
align 16
152
ac_unknown     db 'unknown manufacturer',13,10,0
164
ac_unknown     db 'unknown manufacturer',13,10,0
153
ac_Realtek     db 'Realtek Semiconductor',13,10,0
165
ac_Realtek     db 'Realtek Semiconductor',13,10,0
154
ac_Analog      db 'Analog Devices',13,10,0
166
ac_Analog      db 'Analog Devices',13,10,0
155
ac_CMedia      db 'C-Media Electronics',13,10,0
167
ac_CMedia      db 'C-Media Electronics',13,10,0
156
chip_unknown   db 'unknown chip', 13,10,0
168
chip_unknown   db 'unknown codec id ', 0
Line 157... Line 169...
157
 
169
 
158
CHIP_ANALOG    equ 0x41445300
170
CHIP_ANALOG    equ 0x41445300
159
CHIP_REALTEK   equ 0x414C4700
171
CHIP_REALTEK   equ 0x414C4700
Line 175... Line 187...
175
	       dd 0x63, chip_AD1886A
187
               dd 0x63, chip_AD1886A
176
	       dd 0x70, chip_AD1980
188
               dd 0x70, chip_AD1980
177
	       dd 0x75, chip_AD1985
189
               dd 0x75, chip_AD1985
178
	       dd 0
190
               dd 0
Line -... Line 191...
-
 
191
 
179
 
192
chips_Realtek:
180
chips_Realtek  dd 0x20, chip_ALC650
193
               dd 0x20, chip_ALC650
181
	       dd 0x21, chip_ALC650D
194
               dd 0x21, chip_ALC650D
182
	       dd 0x22, chip_ALC650E
195
               dd 0x22, chip_ALC650E
183
	       dd 0x23, chip_ALC650F
196
               dd 0x23, chip_ALC650F
184
	       dd 0x60, chip_ALC655
197
               dd 0x60, chip_ALC655