Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 3907 → Rev 3908

/kernel/branches/Kolibri-acpi/drivers/sound.asm
11,7 → 11,9
 
include 'proc32.inc'
include 'imports.inc'
include '../struct.inc'
 
 
VID_INTEL = 0x8086
VID_NVIDIA = 0x10DE
VID_VIA = 0x1106
149,10 → 151,24
public service_proc
public version
 
struct SRV
srv_name rb 16 ;ASCIIZ string
magic dd ? ;+0x10 ;'SRV '
size dd ? ;+0x14 ;size of structure SRV
fd dd ? ;+0x18 ;next SRV descriptor
bk dd ? ;+0x1C ;prev SRV descriptor
base dd ? ;+0x20 ;service base address
entry dd ? ;+0x24 ;service START function
srv_proc dd ? ;+0x28 ;user mode service handler
srv_proc_ex dd ? ;+0x2C ;kernel mode service handler
ends
 
 
section '.flat' code readable align 16
 
proc START stdcall, state:dword
 
mov eax, [srv_entry]
cmp [state], 1
jne .stop
 
161,9 → 177,16
call SysMsgBoardStr
end if
 
test eax, eax
jnz .done
call detect_controller
ret
.stop:
test eax, eax
jz .done
leave
jmp eax
.done:
xor eax, eax
ret
endp
237,7 → 260,11
end if
 
stdcall GetService, dword[edi+4]
test eax, eax
jz .err
 
mov edx, [eax+SRV.entry]
mov [srv_entry], edx
ret
 
.err:
377,6 → 404,8
 
version dd (5 shl 16) or (API_VERSION and 0xFFFF)
 
srv_entry dd 0
 
intelac97 db 'INTELAC97', 0
vt823x db 'VT823X', 0
sis db 'SIS', 0
390,4 → 419,5
msgLoading db 'Loading ',0
msgNewline db 13,10,0
 
 
section '.data' data readable writable align 16