- Index: MainUnit.pas
- ===================================================================
- --- MainUnit.pas (wersja 1481)
- +++ MainUnit.pas (kopia robocza)
- @@ -3666,6 +3668,7 @@
- Add('alloc(TypeName,256)');
- Add('alloc(ByteSize,4)');
- Add('alloc(UsesFloat,1)');
- + Add('//alloc(UsesDouble,1)');
- Add('');
- Add('TypeName:');
- Add('db ''' + n + ''',0');
- @@ -3696,11 +3699,17 @@
- Add('//parameters: (32-bit)'); //[esp]=return [esp+4]=input
- Add('push ebp'); //[esp]=ebp , [esp+4]=return [esp+8]=input
- Add('mov ebp,esp'); //[ebp]=ebp , [esp+4]=return [esp+8]=input
- + Add('xor edx,edx');
- Add('//[ebp+8]=input');
- + Add('//eax=output use eax and edx when UsesDouble is set to 1');
- Add('//example:');
- Add('mov eax,[ebp+8] //place the address that contains the bytes into eax');
- Add('mov eax,[eax] //place the bytes into eax so it''s handled as a normal 4 byte value');
- Add('');
- + Add('//if you are using UsesDouble:');
- + Add('//eax is less significant DWord inside double');
- + Add('//edx is most significant DWord inside double');
- + Add('');
- Add('pop ebp');
- Add('ret 4');
- add('[/32-bit]');
- @@ -3726,19 +3735,19 @@
- Add('push ebp'); //[esp]=ebp , [esp+4]=return [esp+8]=input
- Add('mov ebp,esp'); //[ebp]=ebp , [esp+4]=return [esp+8]=input
- Add('//[ebp+8]=input');
- - Add('//[ebp+c]=address of output');
- + Add('//[ebp+10]=address of output');
- Add('//example:');
- Add('push eax');
- Add('push ebx');
- Add('mov eax,[ebp+8] //load the value into eax');
- - Add('mov ebx,[ebp+c] //load the address into ebx');
- + Add('mov ebx,[ebp+10] //load the address into ebx');
- Add('mov [ebx],eax //write the value into the address');
- Add('pop ebx');
- Add('pop eax');
- Add('');
- Add('pop ebp');
- - Add('ret 8');
- + Add('ret c');
- add('[/32-bit]');
- Add('');
- end;
mgr.inz.Player