comparison Render.cpp @ 1430:71a2cf416478

LloydBeacons
author Ritor1
date Fri, 02 Aug 2013 13:48:57 +0600
parents 1987f2cca08f
children 6de9c1316852
comparison
equal deleted inserted replaced
1429:c7489dd19f88 1430:71a2cf416478
2751 } 2751 }
2752 2752
2753 //----- (0049F8B5) -------------------------------------------------------- 2753 //----- (0049F8B5) --------------------------------------------------------
2754 FILE *Render::SavePCXImage(const char *Filename, char *a3, int a4, int a5) 2754 FILE *Render::SavePCXImage(const char *Filename, char *a3, int a4, int a5)
2755 { 2755 {
2756 Render *v5; // esi@1 2756 //Render *v5; // esi@1
2757 FILE *result; // eax@1 2757 FILE *result; // eax@1
2758 FILE *v7; // edi@4 2758 FILE *v7; // edi@4
2759 int v8; // ecx@5 2759 int v8; // ecx@5
2760 int v9; // eax@5 2760 int v9; // eax@5
2761 int v10; // eax@7 2761 int v10; // eax@7
2773 PCXHeader_2 header2; // [sp+90h] [bp-14h]@4 2773 PCXHeader_2 header2; // [sp+90h] [bp-14h]@4
2774 void *ptr; // [sp+98h] [bp-Ch]@4 2774 void *ptr; // [sp+98h] [bp-Ch]@4
2775 int v24; // [sp+9Ch] [bp-8h]@2 2775 int v24; // [sp+9Ch] [bp-8h]@2
2776 char *i; // [sp+A0h] [bp-4h]@8 2776 char *i; // [sp+A0h] [bp-4h]@8
2777 2777
2778 v5 = this;
2779 result = fopen(Filename, "wb"); 2778 result = fopen(Filename, "wb");
2780 Filename = (const char *)result; 2779 Filename = (const char *)result;
2781 if ( result ) 2780 if ( result )
2782 { 2781 {
2783 v24 = a4; 2782 v24 = a4;
2834 { 2833 {
2835 a3 = (char *)ptr + v8; 2834 a3 = (char *)ptr + v8;
2836 i = (char *)ptr + 2 * v24; 2835 i = (char *)ptr + 2 * v24;
2837 do 2836 do
2838 { 2837 {
2839 *((char *)ptr + v10) = (signed int)(v5->uTargetRMask & *(short *)a5) >> (LOBYTE(v5->uTargetGBits) 2838 *((char *)ptr + v10) = (signed int)(this->uTargetRMask & *(short *)a5) >> (LOBYTE(this->uTargetGBits)
2840 + LOBYTE(v5->uTargetBBits) 2839 + LOBYTE(this->uTargetBBits)
2841 + v5->uTargetRBits 2840 + this->uTargetRBits
2842 - 8); 2841 - 8);
2843 a3[v10] = (signed int)(v5->uTargetGMask & *(short *)a5) >> (LOBYTE(v5->uTargetBBits) 2842 a3[v10] = (signed int)(this->uTargetGMask & *(short *)a5) >> (LOBYTE(this->uTargetBBits)
2844 + LOBYTE(v5->uTargetGBits) 2843 + LOBYTE(this->uTargetGBits)
2845 - 8); 2844 - 8);
2846 v11 = a5; 2845 v11 = a5;
2847 a5 += 2; 2846 a5 += 2;
2848 i[v10++] = (v5->uTargetBMask & *(char *)v11) << (8 - LOBYTE(v5->uTargetBBits)); 2847 i[v10++] = (this->uTargetBMask & *(char *)v11) << (8 - LOBYTE(this->uTargetBBits));
2849 } 2848 }
2850 while ( v10 < a4 ); 2849 while ( v10 < a4 );
2851 } 2850 }
2852 for ( i = 0; (signed int)i < v20; i += BYTE3(a5) ) 2851 for ( i = 0; (signed int)i < v20; i += BYTE3(a5) )
2853 { 2852 {