Hi there,
I've got a problem with the VectorGeometry.pas erverytime I try to compile Runtime_GLScene.bpl or another GLScene Package i recived the error: VectorGeometry.pas (2410): E2116 invalid combination of Opcode and Operanden
and VectorGeometry.pas (2411): E2107 Operandengröße does not agree
Some People in other Forums said that it might be is a problem that Assambler an Pascal are in one File in XE2, but nobody could say how i can solve it… :-(
here is a small part of the "wrong" Code in the underlined parts are the errors:
asm
or ecx, ecx
jz @@End
There is no dot i had the same idea 4 weeks ago.
Now i've got a second problem, but i didn't think that i can't handle this I just have to find the GLScene.inc and copy it in the delphi Directory 'cause after the reinstall of Delphi it can't find that .inc file.
But back to the topic the problem is that some people think I have to convert the asm to Object Pascal or just write the asm in a special unit in Procedures or functions and just write the procedures in the Geometry.pas, but I don't know if that will work…
Do you have any other ideas to manage this problem?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
yes, I compile with x64 do you mean that the people there are better then here? 'cause I thought that here were more people who work with GLScene espacially since Embarcadero had FireMonkey…
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Currently packages can be compiled for x64. But you can compile and install it as x32, then create project for x64 platform and when you will compile it - all units of GLScene, which uses in project, will be recompiled as x64.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Sure I also can compile with delphi XE2, but not the GLScene packages, because of the errors in the asm lines and now I want to know why… And I've heard of many other peoples who even can compile and work with GLScene and XE2. But I can't :-( I don't know why, but delphi says everytime I tried to compile Pascal and asm in one project like the VectorGeometry.pas I receives a lot of Errors basicly because delphi XE2 didn't like it when pascal and asm are in one project so what can I do?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I'm sure that there is nothing left.I had installed it under 2010(C:\Prorgam Files(x86)\Embarcadero\7.0) all my search paths are for XE2 (C:\Prorgam Files(x86)\Embarcadero\9.0\) and the old directories are already deleted
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Now I found a solution for Xe2 you have to download with SVN from the link: "https://glscene.svn.sourceforge.net/svnroot/glscene", but now I get the error GLSJPG.pas(889): E2045 wrong Objectfileformat: 'C:\Users\ftl.Admin-HP\Desktop\updated GLScene\trunk\Source\FileFormats\LinkedObjects/jdapimin.obj'
what can I do?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
lucky you that your problem was solved! I already compile it in x32 and x64 I've read this article and didn't have any of these mentioned problems all of these problems are solved since the third update and the current one is upd4.
Unfortunately I got these errors:
GLSJPG.pas (903): E2045 wrong object file format: 'C:\Users\ftl. Admin-HP\Desktop\gl for delphi\trunk\Source\FileFormats\LinkedObjects\jdapimin.obj'
GLSJPG.pas (648): E2065 insufficient Forward-or external Al declaration: 'jpeg_CreateDecompress'
GLSJPG.pas (649): E2065 insufficient Forward-or external Al declaration: 'jpeg_stdio_src'
The only error witch ends the compiling is the first one. In this line:
{$Link LinkedObjects\jdapimin.obj} or (other writing I tried it both ways) {$L LinkedObjects\jdapimin.obj}
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Should I use something else, because if I can't load any Textures my Games will become shit or are there other Jpeg loader? and where in GLScene it sayes that it 'll use this loader so whitch lines should i delete?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
AFAIK Delphi has had support for jpeg/png files for a few versions now (Added around Delphi 2007/2009 time IIRC) via the units Vcl.Imaging.Jpeg and Vcl.Imaging.PngImage units in VCLImg package. Isn't adding these to uses clause enough to provide support for these formats, rather than GLScene providing these units?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
First Delphi support Png and jpg also in Delphi 6
Secondly the problem is not that Delphi couldn't use Jepg files the problem is that Delphi couldn't Link the *.obj files and at the EoF Delphi raise a lot of Errors one error for every .obj file which GLScene want to link and Errors for a couple of procedures it says that the object file have the wrong format and the forward deklerations are wrong.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi there,
I've got a problem with the VectorGeometry.pas erverytime I try to compile Runtime_GLScene.bpl or another GLScene Package i recived the error: VectorGeometry.pas (2410): E2116 invalid combination of Opcode and Operanden
and VectorGeometry.pas (2411): E2107 Operandengröße does not agree
Some People in other Forums said that it might be is a problem that Assambler an Pascal are in one File in XE2, but nobody could say how i can solve it… :-(
here is a small part of the "wrong" Code in the underlined parts are the errors:
asm
or ecx, ecx
jz @@End
test vSIMD, 1
jnz @@3DNow
push edi
mov edi, dest
@@FPULoop:
fld dword ptr
fadd dword ptr
fstp dword ptr
fld dword ptr
fadd dword ptr
fstp dword ptr
add eax, 8
add edi, 8
dec ecx
jnz @@FPULoop
pop edi
jmp @@End
@@3DNow:
db $0F,$6F,$02 /// movq mm0,
mov edx, dest
@@3DNowLoop:
db $0F,$6F,$10 /// movq mm2,
db $0F,$0F,$D0,$9E /// pfadd mm2, mm0
db $0F,$7F,$12 /// movq , mm2
add eax, 8
add edx, 8
dec ecx
jnz @@3DNowLoop
db $0F,$0E /// femms
@@End:
{$else}
var
i : Integer;
begin
for i:=0 to nb-1 do begin
dest^.S:=src^.S+delta.S;
dest^.T:=src^.T+delta.T;
end;
{$endif}
end;
You can turn off assembler by removing dot in {.$DEFINE GEOMETRY_NO_ASM} in VectorGeometry (line 216) or same line in GLScene,inc
There is no dot i had the same idea 4 weeks ago.
Now i've got a second problem, but i didn't think that i can't handle this I just have to find the GLScene.inc and copy it in the delphi Directory 'cause after the reinstall of Delphi it can't find that .inc file.
But back to the topic the problem is that some people think I have to convert the asm to Object Pascal or just write the asm in a special unit in Procedures or functions and just write the procedures in the Geometry.pas, but I don't know if that will work…
Do you have any other ideas to manage this problem?
For what platform you compile, x64?
Maybe some one can help at Embarcadero forum.
yes, I compile with x64 do you mean that the people there are better then here? 'cause I thought that here were more people who work with GLScene espacially since Embarcadero had FireMonkey…
Currently packages can be compiled for x64. But you can compile and install it as x32, then create project for x64 platform and when you will compile it - all units of GLScene, which uses in project, will be recompiled as x64.
Yes I tried to compile it in x32 because on the GLScene site it says that you should compile it this way but unfortunately it lead to my problem :-(
I do not understand why you have this problem. I and many others quietly compile in XE2
Sure I also can compile with delphi XE2, but not the GLScene packages, because of the errors in the asm lines and now I want to know why… And I've heard of many other peoples who even can compile and work with GLScene and XE2. But I can't :-( I don't know why, but delphi says everytime I tried to compile Pascal and asm in one project like the VectorGeometry.pas I receives a lot of Errors basicly because delphi XE2 didn't like it when pascal and asm are in one project so what can I do?
Are you sure that there is no remaining older glscene.inc somewhere in your libraries /search paths?
I'm sure that there is nothing left.I had installed it under 2010(C:\Prorgam Files(x86)\Embarcadero\7.0) all my search paths are for XE2 (C:\Prorgam Files(x86)\Embarcadero\9.0\) and the old directories are already deleted
Now I found a solution for Xe2 you have to download with SVN from the link: "https://glscene.svn.sourceforge.net/svnroot/glscene", but now I get the error GLSJPG.pas(889): E2045 wrong Objectfileformat: 'C:\Users\ftl.Admin-HP\Desktop\updated GLScene\trunk\Source\FileFormats\LinkedObjects/jdapimin.obj'
what can I do?
Read this https://sourceforge.net/apps/phpbb/glscene/viewtopic.php?f=11&t=423&start=20#p2830
lucky you that your problem was solved! I already compile it in x32 and x64 I've read this article and didn't have any of these mentioned problems all of these problems are solved since the third update and the current one is upd4.
Unfortunately I got these errors:
GLSJPG.pas (903): E2045 wrong object file format: 'C:\Users\ftl. Admin-HP\Desktop\gl for delphi\trunk\Source\FileFormats\LinkedObjects\jdapimin.obj'
GLSJPG.pas (648): E2065 insufficient Forward-or external Al declaration: 'jpeg_CreateDecompress'
GLSJPG.pas (649): E2065 insufficient Forward-or external Al declaration: 'jpeg_stdio_src'
The only error witch ends the compiling is the first one. In this line:
{$Link LinkedObjects\jdapimin.obj} or (other writing I tried it both ways) {$L LinkedObjects\jdapimin.obj}
*The only error with ends the compiling is the first one. In this line:
*The only error which ends the compiling is the first one. In this line:which
now it's right…
Yep, need new loader for JPEG.
ok an how can I do this and whitch one should I choose, becaus I couldn't find this information in the threat
Do no use GLFIleJPEG and GLSJPG.
Should I use something else, because if I can't load any Textures my Games will become shit or are there other Jpeg loader? and where in GLScene it sayes that it 'll use this loader so whitch lines should i delete?
So, you compile your project and this error appears?
I try to compile the GLScene RunTime .dpk's and this error appeares.
AFAIK Delphi has had support for jpeg/png files for a few versions now (Added around Delphi 2007/2009 time IIRC) via the units Vcl.Imaging.Jpeg and Vcl.Imaging.PngImage units in VCLImg package. Isn't adding these to uses clause enough to provide support for these formats, rather than GLScene providing these units?
First Delphi support Png and jpg also in Delphi 6
Secondly the problem is not that Delphi couldn't use Jepg files the problem is that Delphi couldn't Link the *.obj files and at the EoF Delphi raise a lot of Errors one error for every .obj file which GLScene want to link and Errors for a couple of procedures it says that the object file have the wrong format and the forward deklerations are wrong.
I just now recompile to check main packages for 32-bit windows platform without any error!