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 |