Advertisement
Guest User

usesDouble (mgr.inz.Player)

a guest
Jul 27th, 2012
126
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Diff 2.01 KB | None | 0 0
  1. Index: MainUnit.pas
  2. ===================================================================
  3. --- MainUnit.pas    (wersja 1481)
  4. +++ MainUnit.pas    (kopia robocza)
  5. @@ -3666,6 +3668,7 @@
  6.        Add('alloc(TypeName,256)');
  7.        Add('alloc(ByteSize,4)');
  8.        Add('alloc(UsesFloat,1)');
  9. +      Add('//alloc(UsesDouble,1)');
  10.        Add('');
  11.        Add('TypeName:');
  12.        Add('db ''' + n + ''',0');
  13. @@ -3696,11 +3699,17 @@
  14.        Add('//parameters: (32-bit)'); //[esp]=return [esp+4]=input
  15.        Add('push ebp');  //[esp]=ebp , [esp+4]=return [esp+8]=input
  16.        Add('mov ebp,esp');  //[ebp]=ebp , [esp+4]=return [esp+8]=input
  17. +      Add('xor edx,edx');
  18.        Add('//[ebp+8]=input');
  19. +      Add('//eax=output      use eax and edx when UsesDouble is set to 1');
  20.        Add('//example:');
  21.        Add('mov eax,[ebp+8] //place the address that contains the bytes into eax');
  22.        Add('mov eax,[eax] //place the bytes into eax so it''s handled as a normal 4 byte value');
  23.        Add('');
  24. +      Add('//if you are using UsesDouble:');
  25. +      Add('//eax is less significant DWord inside double');
  26. +      Add('//edx is most significant DWord inside double');
  27. +      Add('');
  28.        Add('pop ebp');
  29.        Add('ret 4');
  30.        add('[/32-bit]');
  31. @@ -3726,19 +3735,19 @@
  32.        Add('push ebp');  //[esp]=ebp , [esp+4]=return [esp+8]=input
  33.        Add('mov ebp,esp');  //[ebp]=ebp , [esp+4]=return [esp+8]=input
  34.        Add('//[ebp+8]=input');
  35. -      Add('//[ebp+c]=address of output');
  36. +      Add('//[ebp+10]=address of output');
  37.        Add('//example:');
  38.        Add('push eax');
  39.        Add('push ebx');
  40.        Add('mov eax,[ebp+8] //load the value into eax');
  41. -      Add('mov ebx,[ebp+c] //load the address into ebx');
  42. +      Add('mov ebx,[ebp+10] //load the address into ebx');
  43.        Add('mov [ebx],eax //write the value into the address');
  44.        Add('pop ebx');
  45.        Add('pop eax');
  46.  
  47.        Add('');
  48.        Add('pop ebp');
  49. -      Add('ret 8');
  50. +      Add('ret c');
  51.        add('[/32-bit]');
  52.        Add('');
  53.      end;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement