Subversion Repositories Kolibri OS

Rev

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

Rev 2242 Rev 2266
Line 9... Line 9...
9
dword  final_addr   = #stop+32;
9
dword  final_addr   = #stop+32;
10
dword  alloc_mem    = 0x00100000;
10
dword  alloc_mem    = 0x00100000;
11
dword  x86esp_reg   = 0x00100000;   // 0x0007fff0; 
11
dword  x86esp_reg   = 0x00100000;   // 0x0007fff0; 
12
dword  I_Param      = #param;
12
dword  I_Param      = #param;
13
dword  I_Path       = #program_path;
13
dword  I_Path       = #program_path;
-
 
14
 
14
char param[4096]="";
15
char param[4096]="";
15
char program_path[4096]="";
16
char program_path[4096]="";
Line 16... Line 17...
16
 
17
 
Line 35... Line 36...
35
struct mouse{
36
struct mouse{
36
	unsigned int x,y,lkm,pkm,hor,vert;
37
	unsigned int x,y,lkm,pkm,hor,vert;
37
	void get();
38
	void get();
38
};
39
};
Line 39... Line 40...
39
 
40
 
40
int TestBit(EAX, CL)
41
inline fastcall int TestBit(EAX, CL)
41
{
42
{
42
	$shr eax,cl
43
	$shr eax,cl
43
	$and eax,1
44
	$and eax,1
Line 93... Line 94...
93
{
94
{
94
	EAX = 9;
95
	EAX = 9;
95
	$int  0x40
96
	$int  0x40
96
}
97
}
Line 97... Line 98...
97
 
98
 
98
int GetSlot(dword ECX)
99
inline fastcall int GetSlot(dword ECX)
99
{
100
{
100
	EAX = 18;
101
	EAX = 18;
101
	EBX = 21;
102
	EBX = 21;
102
	$int 0x40
103
	$int 0x40
Line 103... Line 104...
103
}
104
}
104
 
105
 
105
int ActiveProcess()
106
inline fastcall int ActiveProcess()
106
{
107
{
107
	EAX = 18;
108
	EAX = 18;
108
	EBX = 7;
109
	EBX = 7;
Line 154... Line 155...
154
	$mov eax, 5       // ã§ , ¢ á®âëå ¤®«ïå ᥪ㭤ë
155
	$mov eax, 5       // ã§ , ¢ á®âëå ¤®«ïå ᥪ㭤ë
155
	$int 0x40
156
	$int 0x40
156
}
157
}
Line 157... Line 158...
157
 
158
 
158
//------------------------------------------------------------------------------
159
//------------------------------------------------------------------------------
159
void DefineAndDrawWindow(dword x,y,sizeX,sizeY,
160
void DefineAndDrawWindow(dword x,y,sizeX,sizeY,byte mainAreaType,
160
byte mainAreaType, dword mainAreaColor,byte headerType,dword headerColor,EDI)
161
dword mainAreaColour,byte headerType,dword headerColour,EDI)
161
{
162
{
162
	EAX = 12;
163
	EAX = 12;              // function 12:tell os about windowdraw
163
	EBX = 1;
164
	EBX = 1;
Line 164... Line 165...
164
	$int 0x40
165
	$int 0x40
165
	
166
	
166
	EBX = x << 16 + sizeX;
167
	EBX = x << 16 + sizeX;
167
	ECX = y << 16 + sizeY;
168
	ECX = y << 16 + sizeY;
168
	EDX = mainAreaType << 24 | mainAreaColor;
169
	EDX = mainAreaType << 24 | mainAreaColour;
169
	ESI = headerType << 24 | headerColor;
170
	ESI = headerType << 24 | headerColour;
Line 170... Line 171...
170
	$xor eax,eax
171
	$xor eax,eax
171
	$int 0x40
172
	$int 0x40
172
	
173
 
173
	EAX = 12;
174
	EAX = 12;              // function 12:tell os about windowdraw
Line 174... Line 175...
174
	EBX = 2;
175
	EBX = 2;
Line 364... Line 365...
364
	EDX = x<<16+y;
365
	EDX = x<<16+y;
365
	$int 0x40
366
	$int 0x40
366
}
367
}
Line 367... Line 368...
367
 
368
 
368
//------------------------------------------------------------------------------
369
//------------------------------------------------------------------------------
369
/*void WriteDebug(dword EDX)
370
inline fastcall void WriteDebug(dword EDX)
370
{
371
{
371
	$mov eax, 63
372
	$mov eax, 63
372
	$mov ebx, 1
373
	$mov ebx, 1
373
next_char:
374
next_char:
Line 400... Line 401...
400
	
401
	
401
	WriteDebug("ra_kadrom:");
402
	WriteDebug("ra_kadrom:");
Line 402... Line 403...
402
	WriteDebug(IntToStr(za_kadrom));
403
	WriteDebug(IntToStr(za_kadrom));
403
	
-
 
404
	Pause(200);
404
	
-
 
405
	Pause(200);
405
}*/
406
}