You must build your own PDEV, no ? That’s a part of the mode change
sequence. Take a look at DrvEnablePDEV ! It’s documented in the DDK. The
size information comes from picking an appropriate mode, which is done by
asking the Miniport, look at the VIDEO_MODE_INFORMATION structure and its
associated IOCTLs to the Miniport, it’s all documented in the DDK docs. If
you want to put in your own screen dimensions, you’re going to have to
either change your enable.c to pick up the right value, or you’re going to
have to frig the miniport, or both. Assuming, that is, that the size you’re
getting from that other driver is correct. Again, look at enable.c in any
video driver, all the answers are there.
Alberto.
-----Original Message-----
From: Nitin Kapoor [mailto:xxxxx@hotmail.com]
Sent: Thursday, April 10, 2003 9:10 AM
To: NT Developers Interest List
Subject: [ntdev] RE: Drvxxx Methods
Right! The width and Height are passed over to Enable Surface as a pointer
to Pdev.
But what if I want to read those values and manipulate them.
Here is the scenario I am talking abt:
If I am using another driver to load my original display driver and using
the height and Width being passed to me by the original driver what would be
the way of reading those values.
PPDEV ppdev;
ppdev=(PPDEV)dhpdev;
Now if I want to read the height and width I will use the “ppdev->cxScreen”
which is the width passed by the orignal driver and “ppdev->cyscreen” which
is the height and then I can do the manipulations with them.
If this is the correct way of reading it then I am getting wrong values and
don’t know whats going wrong,
if this is not the right way , please suggest the correct method.
Nitin
----- Original Message -----
From: “Moreira, Alberto”
To: “NT Developers Interest List”
Sent: Thursday, April 10, 2003 5:33 AM
Subject: [ntdev] RE: Drvxxx Methods
> Take a look at enable.c in any of the DDK video samples, it’s all there.
> DrvEnableSurface gets a pointer to the PDEV. Width and heigth come from
the
> PDEV. DrvEnablePDEV, if I still recall it, is basically the PDEV
> constructor: you get a new one every time you change into a new mode.
>
> Alberto.
>
>
> -----Original Message-----
> From: Nitin Kapoor [mailto:xxxxx@hotmail.com]
> Sent: Wednesday, April 09, 2003 9:07 PM
> To: NT Developers Interest List
> Subject: [ntdev] Drvxxx Methods
>
>
> There is something about Drv functions which I am kind of Confussed ,
>
> Here is my doubt:
>
> If my Dekstop is running in a 800x600 Mode and I right click on the
desktop
> and switch to 1024x768 mode what exactly happens and how is the desktop
> returned in 1024x768 mode.?
>
> What I understand from debugging the display driver is that when I switch
> the mode DrvAssertMode is called and then DrvEnablePDEV is called where it
> is determined wthether the particular mode is supported or not and then
the
> GDIINFO structure is filled in with the details about the particular mode
> such as width and height and resolution and then DrvCompletePDEV is called
> ,Finally DrvEnableSurface is called and I think the surface is drawn here
.
>
> But what I am not clear about is where are the parameters passed to the
> surface ,we are just passing a handle to the PDEV in DrvEnableSurface and
we
> need to draw an associated surface with this , but where does it come to
> know aboutt the width and Height it has to draw .
>
> Also,How does DrvEnablePDEV behave the first time when te driver loads , i
> mean i could se it is called multiple times but why is this happening ?
>
> Please advice what exactly happens and what am I missing.
>
> Thanks & Regards,
> Nitin Kapoor
>
>
>
> —
> You are currently subscribed to ntdev as: xxxxx@compuware.com
> To unsubscribe send a blank email to xxxxx@lists.osr.com
>
>
>
> The contents of this e-mail are intended for the named addressee only. It
> contains information that may be confidential. Unless you are the named
> addressee or an authorized designee, you may not copy or use it, or
disclose
> it to anyone else. If you received it in error please notify us
immediately
> and then destroy it.
>
>
>
> —
> You are currently subscribed to ntdev as: xxxxx@hotmail.com
> To unsubscribe send a blank email to xxxxx@lists.osr.com
>
—
You are currently subscribed to ntdev as: xxxxx@compuware.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
The contents of this e-mail are intended for the named addressee only. It
contains information that may be confidential. Unless you are the named
addressee or an authorized designee, you may not copy or use it, or disclose
it to anyone else. If you received it in error please notify us immediately
and then destroy it.