Subversion Repositories Kolibri OS

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
1769 yogev_ezra 1
define @Menuet@StrLen$qpxc
2
  push edi
3
  cld
4
  mov  edi,[esp+8]
5
  mov  ecx,-1
6
  xor  al,al
7
  repnz scas byte [edi]
8
  not  ecx
9
  lea  eax,[ecx-1]
10
  pop  edi
11
  ret
12
enddef
13
 
14
define @Menuet@StrCopy$qpcpxc
15
  push esi
16
  push edi
17
  cld
18
  mov  edi,[esp+16]
19
  mov  ecx,-1
20
  mov  esi,edi
21
  xor  al,al
22
  repnz scas byte [edi]
23
  not  ecx
24
  mov  edi,[esp+12]
25
  mov  edx,ecx
26
  mov  eax,edi
27
  shr  ecx,2
28
  rep movs dword [edi],[esi]
29
  mov  ecx,edx
30
  and  ecx,3
31
  rep movs byte [edi],[esi]
32
  pop  edi
33
  pop  esi
34
  ret
35
enddef
36
 
37
define @Menuet@MemCopy$qpvpxvui
38
  push esi
39
  push edi
40
  cld
41
  mov  edi,[esp+12]
42
  mov  eax,edi
43
  mov  ecx,[esp+20]
44
  mov  esi,[esp+16]
45
  mov  edx,ecx
46
  shr  ecx,2
47
  rep movs dword [edi],[esi]
48
  mov  ecx,edx
49
  and  ecx,3
50
  rep movs byte [edi],[esi]
51
  pop  edi
52
  pop  esi
53
  ret
54
enddef
55
 
56
define @Menuet@MemSet$qpvcui
57
  push edi
58
  cld
59
  mov  edi,[esp+8]
60
  mov  al,[esp+12]
61
  mov  ah,al
62
  mov  dx,ax
63
  shl  eax,16
64
  mov  ax,dx
65
  mov  ecx,[esp+16]
66
  mov  edx,ecx
67
  shr  ecx,2
68
  rep stos dword [edi]
69
  mov  ecx,edx
70
  and  ecx,3
71
  rep stos byte [edi]
72
  pop  edi
73
  mov  eax,[esp+4]
74
  ret
75
enddef
76
 
77
define __ftol
78
  sub  esp,12
79
  wait
80
  fstcw word [esp+8]
81
  wait
82
  mov  al,[esp+9]
83
  or   byte [esp+9],0x0c
84
  fldcw word [esp+8]
85
  fistp qword [esp]
86
  mov  [esp+9],al
87
  fldcw word [esp+8]
88
  mov  eax,[esp]
89
  mov  edx,[esp+4]
90
  add  esp,12
91
  ret
92
enddef
93
 
94
define @Menuet@Floor$qd
95
  fld  qword [esp+4]
96
  mov  ax,[esp+10]
97
  shl  ax,1
98
  cmp  ax,0x8680
99
  ja   Menuet_floor_end
100
  mov  ch,4
101
  sub  esp,2
102
  wait
103
  fstcw word [esp]
104
  mov  ax,0xf3ff
105
  wait
106
  mov  dx,[esp]
107
  and  ax,dx
108
  or   ah,ch
109
  mov  [esp],ax
110
  fldcw word [esp]
111
  frndint
112
  mov  [esp],dx
113
  fldcw word [esp]
114
  add  esp,2
115
Menuet_floor_end:
116
  ret
117
enddef
118