Re: cards32.ew by Brian Broker: how move cards?

new topic     » goto parent     » topic index » view thread      » older message » newer message

Dan Moyer wrote:
> 
> Larry Miller wrote:
> > 
> > Dan Moyer wrote:
> > > 
> > > Brian,
> > > 
> > > I'm trying to use your cards32.ew to make a solitaire game, (actually
> > > taking
> > > your demo & altering it as needed), and I wonder if you continued with it
> > > to include moving cards?  I thought it would be easy, until I realized
> > > that
> > > it's doing a lot of "record keeping" of cards dealt onto a window, which
> > > then
> > > have to be handled correctly when cards are moved, I guess? 
> > > 
> > > I also discovered it (my alteration of your demo) won't run on a Win98
> > > system,
> > > can't find cards.dll, even though it's present. 
> > > 
> > > Dan Moyer
> > 
> > I am not familiar with this program but I do know about cards.dll. There are
> > 2 versions of this DLL, the version that comes with Win98, and the one that
> > comes with later OS's. They are not compatible. If you have a copy of the
> > later
> > DLL it should work with the program. Do not replace the original cards.dll
> > as
> > Win98 ganes will not work with it.
> > 
> > Larry Miller
> 
> 
> Larry,
> 
> Thanks for the info, sounds like I need two versions of the program, one
> to work with Win98 cards.dll & another to work with WinXP cards.dll.
> (or one that can distinguish between op sys)
> 
> Here's the (first?) failure point on W98 of code that works on WinXP, would
> you have any suggestion as to what to do to alter it for W98?  As far as I 
> remember (I'm on XP right now), "cdtInit" is in the W98 cards.dll.
> 
> 
> global constant
>   eCdtInit = registerw32Function( cards32, "cdtInit", {C_POINTER, C_POINTER},
> C_INT ),
> 
> Dan

Using the cards.dll that comes with Win98 is not easily done. Cards.dll in Win98
is a 16bit dll dating back to Windows 3.0 and can not be directly accessed with
32bit code. Win98 does this by a rather awkward technique known as thunking.
Although it is difficult, the technique is used throughout much of Win98 and
Microsoft decided to use the old DLL rather than develop a new one.

Euphoria can not use thunking without assembly language support. For further
information see: http://www.catch22.net/tuts/cardtut.asp

This is well out of my league but others on the forum may have done this kind of
thing. Condidering the low usage of Win98 it might be best to not support this
platform.

Larry Miller

new topic     » goto parent     » topic index » view thread      » older message » newer message

Search



Quick Links

User menu

Not signed in.

Misc Menu