-Collapse +Expand
Delphi
Search Delphi Group:

Advanced
Delphi To/From
To/FromCODEGuides
Delphi Store
PRESTWOODSTORE

Prestwood eMagazine

April Edition
Subscribe now! It's Free!
Enter your email:

   ► MB LobbyPascal and Delphi Coding BoardDelphi News / Other Topic   Print This     

Using DirectX in Delphi7?

Using DirectX in Delphi7? in Delphi News / Other topic (part of our Pascal and Delphi Coding group).

Quick Search: DirectX   Delphi7   Using DirectX   Using DirectX Delphi7  
Ingolf
-- USA
Hi

I used to use Hori's Delphix compoents for delphi 4.
(http://www.yks.ne.jp/~hori/index-e.html)

Now i have Delphi 7, and it seems that there is no installpackage for this version of delphi.

So... the question is.. is there any update around for DelphiX, or maybe a better alternative?

I need to use graphics and sound simultanesly.

Thanks in advance, and i hope its the right forum... im new here Big Grin!
 Posted 24 years ago (Thread Starter)
Comment Quote
About Ingolf
Visit Profile
Approved member.
Member subscribes to this thread with a verified email.
Old Account!
If this is your account, sign in to activate web presence data (sign in quarterly to keep active). Alternatively, you can subscribe to our monthly eMag with a valid email address.
Web Presence Hidden.
Once above is taken care of, full Profile content will display including back links, about me, my message, custom Profile html, social networking links, message board signature, company profile, etc.

Post ID #8725, 7 replies
Thread Started 12/19/2002 6:55:00 PM
View Counter=3943
Last Reply Posted 12/23/2002 7:16:00 AM)
Location=-- USA 
Joined=24 years ago   MB Posts=4  
Scott Wehrly
Prestwood IT
 (Inactive)
Las Vegas, NV USA
;) Well, you found a Delphi forum, that's what's important... Big Grin!

How experienced are you at building packages? I'm not surprised that you don't find a D7 package for the components. But if you have the source .DPK and the files that go with it, you could always open the package project file in D7 and let it convert the dependencies for you automatically. Then, save the changes and compile. If there are any missing or invalid unit references, you'll catch them at that point.

Once you get a clean compile, you can just click the Install button on the project manager to add the components to your palette.

I use this method all of the time for component suites when I upgrade versions of Delphi.
 Posted 24 years ago
Comment Quote
About Scott Wehrly
Visit Profile
Inactive member.
Member does not subscribe to this thread.
Old Account!
If this is your account, sign in to activate web presence data (sign in quarterly to keep active). Alternatively, you can subscribe to our monthly eMag with a valid email address.
Web Presence Hidden.
Once above is taken care of, full Profile content will display including back links, about me, my message, custom Profile html, social networking links, message board signature, company profile, etc.

Post ID #8734 (Level 1.1)  Reply to 8725
Thread Started 12/20/2002 7:19:00 AM
View Counter=2
Location=Las Vegas, NV USA 
Joined=24 years ago   MB Posts=442   KB Posts=19  
Scott Wehrly
Prestwood IT
 (Inactive)
Las Vegas, NV USA
:( Hmmm...you should have gotten a dialog that says "This package appears to be in an older format...".



What could be going on is that the code contains conditional-define controlled code, and the fact that the conditional directive is missing is surfacing some broken code. You would have to hunt those down in the code units, and add the respective conditional-defines to the project options.



Okay, to get around errors caused by the compiler settings (which are in the .DOF and .CFG files of the project, do the following:


  • Make a list of all of the unit files in the .DPK (In contains, not the ones in the requires).
  • Copy the files in the list to a new project folder (and ignore the existing package files)
  • Start an entirely new package project in D7.
  • One by one, add the files in the list into the new project.
  • Compile the new project.



If that gives you a clean compile, then click the Install button (yes, that small window you see is the project manager for the package) to add the component to the palette.
Give that a try, and see what happens. If it's still busted, there are a lot of fine folk on these boards who would probably take a copy of your component source and build a clean D7 package for you (I only have D6. Sorry).
 Posted 24 years ago
Comment Quote
About Scott Wehrly
Visit Profile
Inactive member.
Member does not subscribe to this thread.
Old Account!
If this is your account, sign in to activate web presence data (sign in quarterly to keep active). Alternatively, you can subscribe to our monthly eMag with a valid email address.
Web Presence Hidden.
Once above is taken care of, full Profile content will display including back links, about me, my message, custom Profile html, social networking links, message board signature, company profile, etc.

Post ID #8738 (Level 1.2)  Reply to 8725
Reply Posted 12/20/2002 3:12:00 PM
Location=Las Vegas, NV USA 
Joined=24 years ago   MB Posts=442   KB Posts=19  
Scott Wehrly
Prestwood IT
 (Inactive)
Las Vegas, NV USA
Oooh, I just noticed something!

The code may not be broken, you could just be missing an important code unit.

I looked at your error:

The operand size mismatch error appears on asm code
mov eax,Dest; add eax,TDXRMachine_Color.R+1

If the compiler doesn't know what the class attribute TDXRMachine_Color.R means, because the unit that defines it can't be found (or the uses clause is messed up in the unit where the error appears), then the ASM code line would be seen by the compiler as:


mov eax,Dest; add eax,<unknown>+1

...and, <unknown>+1 is not a valid operand size value!!!

Do a full file search for TDXRMachine_Color. That's your culprit! Big Grin!
 Posted 24 years ago
Comment Quote
About Scott Wehrly
Visit Profile
Inactive member.
Member does not subscribe to this thread.
Old Account!
If this is your account, sign in to activate web presence data (sign in quarterly to keep active). Alternatively, you can subscribe to our monthly eMag with a valid email address.
Web Presence Hidden.
Once above is taken care of, full Profile content will display including back links, about me, my message, custom Profile html, social networking links, message board signature, company profile, etc.

Post ID #8739 (Level 1.3)  Reply to 8725
Reply Posted 12/20/2002 3:19:00 PM
Location=Las Vegas, NV USA 
Joined=24 years ago   MB Posts=442   KB Posts=19  
Most Recent Post
Scott Wehrly
Prestwood IT
 (Inactive)
Las Vegas, NV USA
Thanks for the update! That's a really good reference site for DirectX programming in Delphi! Now that



And for those of you who are following this thread, the fix to the ASM statement was to cast the operand as a BYTE:

 mov eax,Dest; add eax,BYTE(TDXRMachine_Color.R+1) 


The reason that the record alignment setting didn't have an effect was that the operand was still seen as a WORD operand, not BYTE.
 Posted 24 years ago
Comment Quote
About Scott Wehrly
Visit Profile
Inactive member.
Member does not subscribe to this thread.
Old Account!
If this is your account, sign in to activate web presence data (sign in quarterly to keep active). Alternatively, you can subscribe to our monthly eMag with a valid email address.
Web Presence Hidden.
Once above is taken care of, full Profile content will display including back links, about me, my message, custom Profile html, social networking links, message board signature, company profile, etc.

Post ID #8751 (Level 1.4)  Reply to 8725
Reply Posted 12/23/2002 7:16:00 AM
Location=Las Vegas, NV USA 
Joined=24 years ago   MB Posts=442   KB Posts=19  
Ingolf
-- USA
Thanks for the reply Scott.

First of all, my experience with building packages is zero.. meaning i have newer made one before.

But i do have the source .DPK and .PAS files.

The package contains .DPK files for Delphi 3,4,5 so i opened the .DPK for v5. I get this small window with a "compile", "add", "remove", "install", "options" button.. which i believe is normal for packages.

But how do i convert the dependecies?

What i have done so far, was simply hit the compile button, but i get 101 errors, with "operand size mismatch". I believed it was bad compiler settings, but i have tried every setting to no avail Big Grin!

The operand size mismatch error appears on asm code

mov eax,Dest; add eax,TDXRMachine_Color.R+1

I was hoping that its just a matter of the correct compiler settings Confused

I've tried several times to get in touch with the developer, Hori, who made the original packages, but i have never heard from him.

I hope you can elaborate on the conversion of dependecies.

Thanks for your help
 Posted 24 years ago (Thread Starter)
Comment Quote
About Ingolf
Visit Profile
Approved member.
Member subscribes to this thread with a verified email.
Old Account!
If this is your account, sign in to activate web presence data (sign in quarterly to keep active). Alternatively, you can subscribe to our monthly eMag with a valid email address.
Web Presence Hidden.
Once above is taken care of, full Profile content will display including back links, about me, my message, custom Profile html, social networking links, message board signature, company profile, etc.

Post ID #8737 (Level 1.5)  Reply to 8725
Reply Posted 12/20/2002 1:57:00 PM
Location=-- USA 
Joined=24 years ago   MB Posts=4  
Ingolf
-- USA
Thanks for your help so far Scott. I think im getting closer to the solution.

Well.. the thing you mentioned about the box i shuld get about the "This package appears to be in an older format...", yes, i do get that if i try to open the old d5.dpk file. Sorry for not mentioning that. I answer yes to this box, but end up in the situatuion before.. the error in asm Big Grin!

Anyway, i tried yor suggestion, and rebuilded the entire package. I could add most of the .PAS file, but i got a few "Class XXXX not found" messages on some of the added units, and figured that i just needed to add those units in the ned.. but it did not solve the problem. So i just left those units out. After i try to compile, i get the 101 errors again, and the same error as before "operand size mismatch".

The declaration of TDXRMachine_Color is in the same unit where the error occurs:



Type
PDXRMachine_Color = ^TDXRMachine_Color;
TDXRMachine_Color = packed record
R, G, B, A: WORD;
end;

Since i posted 2 lines of code before, i have cut out the piece where the error occurs:

add eax,TDXRMachine_Color.R+1

I was wondering if this was caused by the "Align record field" setting in the compiler setting, which i hve seen so many times before, so i tried all the settings in d7 1,2,4,8, but to no avail. I wonder if its possible to turn it complete off, by setting it to 1?

So.. i have a new package, but ts the same errors Big Grin!

I would really appreciate if someone could help me lift this to D7. If somebody want to take a shot at it, you can download the original package from:
http://www.yks.ne.jp/~hori/DelphiX-e.html

And again.. if someone knows of a better alternative for using DirectX in D7, please dont hesitate to post a link Big Grin!
 Posted 24 years ago (Thread Starter)
Comment Quote
About Ingolf
Visit Profile
Approved member.
Member subscribes to this thread with a verified email.
Old Account!
If this is your account, sign in to activate web presence data (sign in quarterly to keep active). Alternatively, you can subscribe to our monthly eMag with a valid email address.
Web Presence Hidden.
Once above is taken care of, full Profile content will display including back links, about me, my message, custom Profile html, social networking links, message board signature, company profile, etc.

Post ID #8740 (Level 1.6)  Reply to 8725
Reply Posted 12/20/2002 7:22:00 PM
Location=-- USA 
Joined=24 years ago   MB Posts=4  
Ingolf
-- USA
Search and thou shall find.. and so i did Big Grin!

It seems that i was not the only one with this problem.. Some users have made a update tutorial for D6 users, and it also works with D7.. GREAT!!

If anyone needs to update DelphiX, as its rightfully called, go to this site for help:
http://turbo.gamedev.net/delphixd6.asp

Im off coding some more cool freeware games Big Grin!

My Site:
http://home.worldonline.dk/ingolf17/
 Posted 24 years ago (Thread Starter)
Comment Quote
About Ingolf
Visit Profile
Approved member.
Member subscribes to this thread with a verified email.
Old Account!
If this is your account, sign in to activate web presence data (sign in quarterly to keep active). Alternatively, you can subscribe to our monthly eMag with a valid email address.
Web Presence Hidden.
Once above is taken care of, full Profile content will display including back links, about me, my message, custom Profile html, social networking links, message board signature, company profile, etc.

Post ID #8741 (Level 1.7)  Reply to 8725
Reply Posted 12/20/2002 10:50:00 PM
Location=-- USA 
Joined=24 years ago   MB Posts=4  

Revive Thread!

Add a comment to revive this old thread and make this archived thread more useful.

Write a Comment...
Full Editor
...
Sign in...

If you are a member, Sign In. Or, you can Create a Free account now.


Anonymous Post (text-only, no HTML):

Enter your name and security key.

Your Name:
Security key = P1213A1
Enter key:
Icon: A Post    Thread    Idea    Important!    Cool    Sad    No    Yes    Includes a Link...   
Thread #8725 Counter
3943
Since 4/2/2008
Go ahead!   Use Us! Call: 916-726-5675  Or visit our new sales site: 
www.prestwood.com


©1995-2026 Prestwood IT Solutions.   [Security & Privacy]