/programs/network/htmlv/lib/file_system.h |
---|
46,7 → 46,7 |
// Ñîçäàíèå ïàïêè // |
/////////////////////////// |
f70 create_dir_70; |
:int CreateFolder(dword new_folder_path) |
:int CreateDir(dword new_folder_path) |
{ |
create_dir_70.func = 9; |
create_dir_70.param1 = |
186,4 → 186,18 |
$mov eax,70 |
$mov ebx,#read_file_70.func |
$int 0x40 |
} |
inline fastcall void SetCurDir( ECX) |
{ |
$mov eax,30 |
$mov ebx,1 |
$int 0x40 |
} |
inline fastcall void GetCurDir( ECX, EDX) |
{ |
$mov eax,30 |
$mov ebx,2 |
$int 0x40 |
} |
/programs/network/htmlv/lib/kolibri.h |
---|
306,6 → 306,15 |
$int 0x40 |
} |
inline fastcall DeleteAllButtons() |
{ |
EAX = 12; // function 12:tell os about windowdraw |
EBX = 1; |
$int 0x40 |
EBX = 2; |
$int 0x40 |
} |
inline fastcall MoveSize( EBX,ECX,EDX,ESI) |
{ |
$mov eax, 67 |
/programs/network/htmlv/lib/mem.h |
---|
26,13 → 26,6 |
} |
//mem.ReAlloc |
inline fastcall dword mem_ReAllocR( ECX, EDX) |
{ |
$mov eax, 68 |
$mov ebx, 20 |
$int 0x40 |
} |
stdcall dword mem_ReAlloc(dword mptr, size) |
{ |
$push ebx |
72,30 → 65,30 |
inline fastcall mem_Move( EDI, ESI, ECX) |
{ |
asm { |
mov eax, ecx |
cmp edi, esi |
jg l1 |
je l2 |
sar ecx, 2 |
js l2 |
rep movsd |
mov ecx, eax |
and ecx, 3 |
rep movsb |
jmp short l2 |
l1: lea esi, dsdword[ esi+ecx-4] |
lea edi, dsdword[ edi+ecx-4] |
sar ecx, 2 |
js l2 |
std |
rep movsd |
mov ecx, eax |
and ecx, 3 |
add esi, 3 |
add edi, 3 |
rep movsb |
cld |
l2: |
MOV EAX, ECX |
CMP EDI, ESI |
JG L1 |
JE L2 |
SAR ECX, 2 |
JS L2 |
REP MOVSD |
MOV ECX, EAX |
AND ECX, 3 |
REP MOVSB |
JMP SHORT L2 |
L1: LEA ESI, DSDWORD[ ESI+ECX-4] |
LEA EDI, DSDWORD[ EDI+ECX-4] |
SAR ECX, 2 |
JS L2 |
STD |
REP MOVSD |
MOV ECX, EAX |
AND ECX, 3 |
ADD ESI, 3 |
ADD EDI, 3 |
REP MOVSB |
CLD |
L2: |
} |
} |
/programs/network/htmlv/lib/strings.h |
---|
203,6 → 203,8 |
do{ |
AL=DSBYTE[ESI]; |
IF(AL>='a')IF(AL<='z')DSBYTE[ESI]=AL&0x5f; |
IF (AL>=160) && (AL<=175) DSBYTE[ESI] = AL - 32; //à-ï |
IF (AL>=224) && (AL<=239) DSBYTE[ESI] = AL - 80; //à-ï |
ESI++; |
}while(AL!=0); |
} |
236,42 → 238,42 |
inline fastcall unsigned int strstr( EBX, EDX) |
inline fastcall dword strstr( EBX, EDX) |
{ |
asm { |
mov edi, edx |
xor ecx, ecx |
xor eax, eax |
dec ecx |
repne scasb |
not ecx |
dec ecx |
je ls2 |
mov esi, ecx |
xor ecx, ecx |
mov edi, ebx |
dec ecx |
repne scasb |
not ecx |
sub ecx, esi |
jbe ls2 |
mov edi, ebx |
lea ebx, DSDWORD[ esi-1] |
ls1: mov esi, edx |
lodsb |
repne scasb |
jne ls2 |
mov eax, ecx |
push edi |
mov ecx, ebx |
repe cmpsb |
pop edi |
mov ecx, eax |
jne ls1 |
lea eax, DSDWORD[ edi-1] |
jmp short ls3 |
ls2: xor eax, eax |
ls3: |
MOV EDI, EDX |
XOR ECX, ECX |
XOR EAX, EAX |
DEC ECX |
REPNE SCASB |
NOT ECX |
DEC ECX |
JE LS2 |
MOV ESI, ECX |
XOR ECX, ECX |
MOV EDI, EBX |
DEC ECX |
REPNE SCASB |
NOT ECX |
SUB ECX, ESI |
JBE LS2 |
MOV EDI, EBX |
LEA EBX, DSDWORD[ ESI-1] |
LS1: MOV ESI, EDX |
LODSB |
REPNE SCASB |
JNE LS2 |
MOV EAX, ECX |
PUSH EDI |
MOV ECX, EBX |
REPE CMPSB |
POP EDI |
MOV ECX, EAX |
JNE LS1 |
LEA EAX, DSDWORD[ EDI-1] |
JMP SHORT LS3 |
LS2: XOR EAX, EAX |
LS3: |
} |
} |
298,7 → 300,7 |
íå 0, åñëè ñëîâî ñêîïèðîâàíî â dest (ïåðåäàéòå ýòî çíà÷åíèå |
â êà÷åñòâå src äëÿ ïîñëåäóþùåãî ïîèñêà) */ |
dword fastcall strtok( EDX, ESI, EBX) |
inline fastcall dword strtok( EDX, ESI, EBX) |
{ |
asm { |
XOR ECX, ECX |