Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 7128 → Rev 2254

/programs/develop/info3ds/info_fun_float.inc
59,7 → 59,6
;* ‚ë室­ë¥ ¯ à ¬¥âàë: *
;* Data_String - áâப -१ã«ìâ â. *
;*******************************************************
align 4
DoubleFloat_to_String:
pushad
; ¥§ã«ìâ â § ¯¨á뢠âì ¢ áâபã Data_String
151,11 → 150,10
; Žè¨¡ª  - ­¥â §­ ç é¨å æ¨äà
jmp .Error
; ‘ª®¯¨à®¢ âì §­ ç éãî ç áâì ç¨á«  ¢ ­ ç «® áâப¨
align 4
.N4: rep movsb
jmp .End
 
; Žè¨¡ª 
align 4
.Error:
mov AL,'E'
stosb
167,7 → 165,6
stosb
jmp .End
; ¥à¥¯®«­¥­¨¥ à §à來®© á¥âª¨
align 4
.Overflow:
mov AL,'#'
stosb
174,7 → 171,6
xor AL,AL
stosb
; Š®­¥æ ¯à®æ¥¤ãàë
align 4
.End:
popad
ret
187,7 → 183,6
;* ‚ë室­ë¥ ¯ à ¬¥âàë: *
;* Data_Double - ç¨á«® ¢ ¤¢®¨ç­®¬ ª®¤¥. *
;****************************************************
align 4
String_to_DoubleFloat:
pushad
cld
207,7 → 202,6
jne .ShiftIgnoreEnd
loop .ShiftIgnore
jmp .Error
align 4
.ShiftIgnoreEnd:
; à®¢¥à塞 §­ ª ç¨á« 
cmp AL,'-'
228,7 → 222,6
cmp AL,0 ;ª®­¥æ áâப¨?
jne .NotDot
jmp .ASCIItoBCDConversionEnd
align 4
.NotDot:
; “¢¥«¨ç¨âì ­  1 §­ ç¥­¨¥ ¯®§¨æ¨¨ â®çª¨,
; ¥á«¨ ®­  ¥é¥ ­¥ ¢áâà¥ç « áì
291,7 → 284,7
.NoDiv:; ‚ë£à㧨âì ç¨á«® ¢ ¤¢®¨ç­®¬ ä®à¬ â¥
fstp [Data_Double]
jmp .End
align 4
 
.Error:; à¨ «î¡®© ®è¨¡ª¥ ®¡­ã«¨âì १ã«ìâ â
fldz ;§ ­¥á⨠­®«ì á á⥪ ᮯà®æ¥áá®à 
fstp [Data_Double]
300,7 → 293,8
ret
 
align 4
proc str_cat uses eax ecx edi esi, str1:dword, str2:dword
proc str_cat, str1:dword, str2:dword
push eax ecx edi esi
mov esi,dword[str2]
stdcall str_len,esi
mov ecx,eax
310,6 → 304,7
add edi,eax
cld
repne movsb
pop esi edi ecx eax
ret
endp
 
326,34 → 321,4
@@:
sub eax,[str1]
ret
endp
 
align 4
proc String_crop_0 uses eax ebx ecx edi
mov edi,Data_String
mov al,'.'
mov ecx,32
repne scasb
mov ebx,edi
mov edi,Data_String
xor al,al
mov ecx,32
repne scasb
cmp ebx,edi
jg .end_f
dec edi
.cycle0:
dec edi
cmp edi,Data_String
jle .end_f
cmp byte[edi],'0'
jne .cycle0end
mov byte[edi],0
jmp .cycle0
.cycle0end:
cmp byte[edi],'.'
jne .end_f
mov byte[edi],0
.end_f:
ret
endp