Subversion Repositories Kolibri OS

Rev

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

Rev 285 Rev 291
Line 181... Line 181...
181
           jnz .l1
181
           jnz .l1
182
           ret
182
           ret
183
@@:
183
@@:
184
           mov [ev_code], 0xFF000001
184
           mov [ev_code], 0xFF000001
185
           mov [ev_offs], ecx
185
           mov [ev_offs], ecx
186
           mov eax, [ebx+STREAM.notify_task]
186
           mov eax, [ebx+STREAM.pid]
Line 187... Line 187...
187
 
187
 
188
           lea edx, [ev_code]
188
           lea edx, [ev_code]
189
           push ebx
189
           push ebx
190
           stdcall SendEvent, eax, edx
190
           stdcall SendEvent, eax, edx
191
           pop ebx
191
           pop ebx
192
           test eax, eax
192
           test eax, eax
Line 193... Line 193...
193
           jnz .l_end
193
           jnz .l_end
194
 
194
 
195
           not eax
195
           not eax
196
           mov [ebx+STREAM.notify_task], eax      ;-1
196
           mov [ebx+STREAM.pid], eax      ;-1
197
.l_end:
197
.l_end:
198
           inc [stream_index]
198
           inc [stream_index]
199
           dec [play_count]
199
           dec [play_count]
Line 262... Line 262...
262
           je @f
262
           je @f
263
           ret
263
           ret
264
@@:
264
@@:
265
           mov [ev_code], 0xFF000001
265
           mov [ev_code], 0xFF000001
266
           mov [ev_offs], ecx
266
           mov [ev_offs], ecx
267
           mov eax, [ebx+STREAM.notify_task]
267
           mov eax, [ebx+STREAM.pid]
Line 268... Line 268...
268
 
268
 
269
           lea edx, [ev_code]
269
           lea edx, [ev_code]
270
           push ebx
270
           push ebx
271
           stdcall SendEvent, eax, edx
271
           stdcall SendEvent, eax, edx
272
           pop ebx
272
           pop ebx
273
           test eax, eax
273
           test eax, eax
274
           jnz @F
274
           jnz @F
275
           not eax
275
           not eax
276
           mov [ebx+STREAM.notify_task], eax      ;-1
276
           mov [ebx+STREAM.pid], eax      ;-1
277
@@:
277
@@:
278
	   ret
278
           ret
Line 279... Line 279...
279
endp
279
endp
Line 782... Line 782...
782
proc mix_2_1 stdcall, output:dword, str0:dword, str1:dword
782
proc mix_2_1 stdcall, output:dword, str0:dword, str1:dword
Line 783... Line 783...
783
 
783
 
Line 784... Line 784...
784
           mov edi, [output]
784
           mov edi, [output]
-
 
785
 
785
 
786
           stdcall mix_2_1_mmx, edi, [str0],[str1]
786
           stdcall mix_2_1_mmx, edi, [str0],[str1]
787
;           stdcall mix_2_1_sse, edi, [str0],[str1]
787
           add edi, 128
788
           add edi, 128
788
           add [str0], 128
789
           add [str0], 128
-
 
790
           add [str1], 128
789
           add [str1], 128
791
           stdcall mix_2_1_mmx, edi, [str0],[str1]
790
           stdcall mix_2_1_mmx, edi, [str0],[str1]
792
;           stdcall mix_2_1_sse, edi, [str0],[str1]
791
           add edi, 128
793
           add edi, 128
792
           add [str0], 128
794
           add [str0], 128
-
 
795
           add [str1], 128
793
           add [str1], 128
796
           stdcall mix_2_1_mmx, edi, [str0],[str1]
794
           stdcall mix_2_1_mmx, edi, [str0],[str1]
797
;           stdcall mix_2_1_sse, edi, [str0],[str1]
795
           add edi, 128
798
           add edi, 128
796
           add [str0], 128
799
           add [str0], 128
-
 
800
           add [str1], 128
Line 797... Line 801...
797
           add [str1], 128
801
           stdcall mix_2_1_mmx, edi, [str0],[str1]
798
           stdcall mix_2_1_mmx, edi, [str0],[str1]
802
;           stdcall mix_2_1_sse, edi, [str0],[str1]
Line 902... Line 906...
902
           mov eax, [str0]
906
           mov eax, [str0]
903
           mov ecx, [str1]
907
           mov ecx, [str1]
Line 904... Line 908...
904
 
908
 
905
           movq mm0, [eax]
909
           movq mm0, [eax]
906
           paddsw mm0, [ecx]
-
 
907
           ; psraw   mm0, 1
910
           paddsw mm0, [ecx]
Line 908... Line 911...
908
           movq [edx], mm0
911
           movq [edx], mm0
909
 
912
 
910
           movq mm1, [eax+8]
-
 
911
           paddsw mm1,[ecx+8]
913
           movq mm1, [eax+8]
Line 912... Line 914...
912
           ; psraw   mm1, 1
914
           paddsw mm1,[ecx+8]
913
           movq [edx+8], mm1
915
           movq [edx+8], mm1
914
 
-
 
915
           movq mm2, [eax+16]
916
 
Line 916... Line 917...
916
           paddsw mm2, [ecx+16]
917
           movq mm2, [eax+16]
917
           ; psraw   mm2, 1
918
           paddsw mm2, [ecx+16]
918
           movq [edx+16], mm2
-
 
919
 
919
           movq [edx+16], mm2
Line 920... Line 920...
920
           movq mm3, [eax+24]
920
 
921
           paddsw mm3, [ecx+24]
921
           movq mm3, [eax+24]
922
           ; psraw   mm3, 1
-
 
923
           movq [edx+24], mm3
922
           paddsw mm3, [ecx+24]
Line 924... Line 923...
924
 
923
           movq [edx+24], mm3
925
           movq mm0, [eax+32]
924
 
926
           paddsw mm0, [ecx+32]
-
 
927
           ; psraw   mm0, 1
925
           movq mm0, [eax+32]
Line 928... Line 926...
928
           movq [edx+32], mm0
926
           paddsw mm0, [ecx+32]
929
 
927
           movq [edx+32], mm0
930
           movq mm1, [eax+40]
-
 
931
           paddsw mm1, [ecx+40]
928
 
Line 932... Line 929...
932
           ; psraw   mm1, 1
929
           movq mm1, [eax+40]
933
           movq [edx+40], mm1
930
           paddsw mm1, [ecx+40]
934
 
-
 
935
           movq mm2, [eax+48]
931
           movq [edx+40], mm1
Line 936... Line 932...
936
           paddsw mm2, [ecx+48]
932
 
937
           ; psraw   mm2, 1
933
           movq mm2, [eax+48]
938
           movq [edx+48], mm2
-
 
939
 
934
           paddsw mm2, [ecx+48]
Line 940... Line 935...
940
           movq mm3, [eax+56]
935
           movq [edx+48], mm2
941
           paddsw mm3, [ecx+56]
936
 
942
           ; psraw   mm3, 1
-
 
943
           movq [edx+56], mm3
937
           movq mm3, [eax+56]
Line 944... Line 938...
944
 
938
           paddsw mm3, [ecx+56]
945
           movq mm0, [eax+64]
939
           movq [edx+56], mm3
946
           paddsw mm0, [ecx+64]
-
 
947
           ; psraw   mm0, 1
940
 
Line 948... Line 941...
948
           movq [edx+64], mm0
941
           movq mm0, [eax+64]
949
 
942
           paddsw mm0, [ecx+64]
950
           movq mm1, [eax+72]
-
 
951
           paddsw mm1, [ecx+72]
943
           movq [edx+64], mm0
Line 952... Line 944...
952
           ; psraw   mm1, 1
944
 
953
           movq [edx+72], mm1
945
           movq mm1, [eax+72]
954
 
-
 
955
           movq mm2, [eax+80]
946
           paddsw mm1, [ecx+72]
Line 956... Line 947...
956
           paddsw mm2, [ecx+80]
947
           movq [edx+72], mm1
957
           ; psraw   mm2, 1
948
 
958
           movq [edx+80], mm2
-
 
959
 
949
           movq mm2, [eax+80]
Line 960... Line 950...
960
           movq mm3, [eax+88]
950
           paddsw mm2, [ecx+80]
961
           paddsw mm3, [ecx+88]
951
           movq [edx+80], mm2
962
           ; psraw   mm3, 1
-
 
963
           movq [edx+88], mm3
952
 
Line 964... Line 953...
964
 
953
           movq mm3, [eax+88]
965
           movq mm0, [eax+96]
954
           paddsw mm3, [ecx+88]
966
           paddsw mm0, [ecx+96]
-
 
967
           ; psraw   mm0, 1
955
           movq [edx+88], mm3
Line 968... Line 956...
968
           movq [edx+96], mm0
956
 
969
 
957
           movq mm0, [eax+96]
Line -... Line 958...
-
 
958
           paddsw mm0, [ecx+96]
-
 
959
           movq [edx+96], mm0
970
           movq mm1, [eax+104]
960
 
971
           paddsw mm1, [ecx+104]
961
           movq mm1, [eax+104]
Line 972... Line 962...
972
           ; psraw   mm1, 1
962
           paddsw mm1, [ecx+104]
973
           movq [edx+104], mm1
963
           movq [edx+104], mm1
Line 1227... Line 1217...
1227
	   jnz @B
1217
           jnz @B
1228
	   ret
1218
           ret
1229
endp
1219
endp
Line 1230... Line -...
1230
-