10,6 → 10,8 |
include 'proc32.inc' |
include 'imports.inc' |
|
API_VERSION equ 0x01000100 |
|
DEBUG equ 1 |
|
CPU_FREQ equ 2000d ;cpu freq in MHz |
90,7 → 92,7 |
CODEC_REG_POWERDOWN equ 0x26 |
CODEC_REG_ST equ 0x26 |
|
|
SRV_GETVERSION equ 0 |
DEV_PLAY equ 1 |
DEV_STOP equ 2 |
DEV_CALLBACK equ 3 |
249,9 → 251,8 |
|
EVENT_NOTIFY equ 0x00000200 |
|
OS_BASE equ 0; 0x80400000 |
OS_BASE equ 0x80000000 |
SLOT_BASE equ OS_BASE+0x0080000 |
new_app_base equ 0x80000000 |
|
public START |
public service_proc |
341,6 → 342,18 |
|
mov edi, [ioctl] |
mov eax, [edi+io_code] |
|
cmp eax, SRV_GETVERSION |
jne @F |
|
mov eax, [edi+output] |
cmp [edi+out_size], 4 |
jne .fail |
|
mov [eax], dword API_VERSION |
xor eax, eax |
ret |
@@: |
cmp eax, DEV_PLAY |
jne @F |
if DEBUG |
375,16 → 388,15 |
cmp eax, DEV_GET_MASTERVOL |
jne @F |
mov ebx, [edi+output] |
add ebx, new_app_base |
stdcall get_master_vol, ebx |
ret |
;@@: |
; cmp eax, DEV_GET_INFO |
; jne @F |
; mov ebx, [edi+output] |
; stdcall get_dev_info, ebx |
; ret |
@@: |
cmp eax, DEV_GET_INFO |
jne @F |
mov ebx, [edi+output] |
stdcall get_dev_info, ebx |
ret |
@@: |
.fail: |
or eax, -1 |
ret |
1138,7 → 1150,7 |
devices dd (CTRL_SIS shl 16)+VID_SIS,msg_AC, set_SIS |
dd 0 |
|
version dd 0x00040004 |
version dd (5 shl 16) or (API_VERSION and 0xFFFF) |
|
msg_AC db '7012 AC97 controller',13,10, 0 |
msg_SIS db 'Silicon Integrated Systems',13,10, 0 |