update cmm programs

git-svn-id: svn://kolibrios.org@3081 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
2012-12-06 07:49:06 +00:00
parent 675efc8539
commit c8034527ce
9 changed files with 164 additions and 8 deletions

52
programs/cmm/lib/socket.h Normal file
View File

@@ -0,0 +1,52 @@
#define SOCKET_PASSIVE 0
#define SOCKET_ACTIVE 1
inline fastcall dword OpenSocket( ECX, EDX, ESI, EDI)
{
$mov eax,53
$mov ebx,5
$int 0x40
}
inline fastcall int StatusSocket( ECX)
{
$mov eax,53
$mov ebx,6
$int 0x40
}
inline fastcall dword ReadSocket( ECX)
{
$mov eax,53
$mov ebx,3
$int 0x40
return BL;
}
inline fastcall dword PollSocket( ECX)
{
$mov eax,53
$mov ebx,2
$int 0x40
}
inline fastcall dword WriteSocket( ECX, EDX, ESI)
{
$mov eax,53
$mov ebx,7
$int 0x40
}
inline fastcall int IsPortFree( ECX)
{
$mov eax,53
$mov ebx,9
$int 0x40
}
unsigned int GetFreePort(int port_i)
{
for (; port_i<65535; port_i++;)
if (IsPortFree(port_i)==1) return port_i;
return 0;
}