Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 280 → Rev 281

/kernel/trunk/drivers/infinity.asm
17,6 → 17,7
 
include 'proc32.inc'
include 'main.inc'
include 'imports.inc'
 
DEBUG equ 1
 
30,25 → 31,6
public service_proc
public version
 
extrn AttachIntHandler
extrn SysMsgBoardStr
extrn PciApi
extrn PciRead32
extrn PciRead8
extrn PciWrite8
extrn AllocKernelSpace
extrn MapPage
extrn RegService
extrn KernelAlloc
extrn KernelFree
extrn GetPgAddr
extrn GetCurrentTask
extrn GetService
extrn ServiceHandler
extrn FpuSave
extrn FpuRestore
extrn SendEvent
 
SND_CREATE_BUFF equ 2
SND_PLAY equ 3
SND_STOP equ 4
212,13 → 194,17
 
mov edi, [str]
mov [edi+STREAM.base], eax
mov [edi+STREAM.seg_0], eax
mov [edi+STREAM.curr_seg], eax
mov [edi+STREAM.notify_off1], eax
add eax, 0x8000
add eax, 0x7FFF
mov [edi+STREAM.lim_0], eax
inc eax
mov [edi+STREAM.seg_1], eax
mov [edi+STREAM.notify_off2], eax
add eax, 0x7FFF
mov [edi+STREAM.limit], eax
 
mov [edi+STREAM.lim_1], eax
inc eax
 
mov [edi+STREAM.work_buff], eax
266,7 → 252,6
 
mov eax, [str]
ret
 
.fail:
xor eax, eax
ret
367,7 → 352,7
mov [ebx+STREAM.work_write], eax
mov [ebx+STREAM.work_count], 0
 
mov eax, [ebx+STREAM.base]
mov eax, [ebx+STREAM.seg_0]
mov [ebx+STREAM.curr_seg], eax
 
mov esi, [ebx+STREAM.curr_seg]
520,6 → 505,7
ret
endp
 
if 0
align 4
proc check_stream
 
529,11 → 515,15
mov esi, [play_list+edx]
 
mov eax, [esi+STR.curr_seg]
cmp eax, [esi+STR.limit]
cmp eax, [esi+STR.lim_0]
jb .next
 
.m1:
mov eax,[esi+STR.base]
mov eax, [esi+STREAM.seg_0]
mov ecx, [esi+STREAM.lim_0]
xchg eax, [ebx+STREAM.seg_1]
xchg ecx, [ebx+STREAM.lim_1]
mov [esi+STREAM.seg_0], eax
mov [esi+STREAM.lim_0], ecx
mov [esi+STR.curr_seg], eax
.next:
add edx, 4
540,8 → 530,8
loop .l1
ret
endp
end if
 
 
align 4
proc prepare_playlist
 
733,7 → 723,7
mm_mask dq 0xFF00FF00FF00FF00
 
stream_map dd 0xFFFF ; 16
version dd 0x00010001
version dd 0x00020002
 
szInfinity db 'INFINITY',0
szSound db 'SOUND',0