x
This website is using cookies. We use cookies to ensure that we give you the best experience on our website. More info. That's Fine
HPC:Factor Logo 
 
Latest Forum Activity

Where to download Windows CE.NET 4.1 SDK?

[Frozen]
1 2
Frozen
Snappy! Page Icon Posted 2005-06-24 11:43 AM
#
Avatar image of Snappy!
H/PC Elder

Posts:
1,712
Location:
New Mexico, US
Status:
chiark - 2005-06-24 2:14 AM

Advantech have made the CE .net 4.1 SDK for x86 available. Not much use for compiling to arm, but at least you could test stuff out


Thanks there! I found it the other day too, but in the platform options pulldown, it showed 420 ... In any case, I did a work around for the rotation app I am was writing.

Here's the code, modded from the msdn sample:

Unfortunately, the system's returned value indicates that build 4.1 for SL4 only supports standard 0deg angle and *cannot* be rotated. *bummer*

Quote

// rotate.cpp : Defines the entry point for the application.
//

// #include "stdafx.h"

/**********************************************************************
THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF
ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
PARTICULAR PURPOSE.

Copyright (c) 1999 Microsoft Corporation. All Rights Reserved.

MODULE:
rotation.cpp

ABSTRACT:
This application code demonstrates the how you can set up the DEVMODE structure and use the ChangeDisplaySettingsEx function to rotate the screen.
Each time you run the executable for this code, the screen will rotate clockwise by 90 degrees.

**********************************************************************/

#include "C:\Program Files\Windows CE Tools\wce420\STANDARDSDK_420\Include\Armv4\windows.h"
#include "C:\Program Files\Windows CE Tools\wce420\STANDARDSDK_420\Include\Armv4\wingdi.h"

// Snappy!
// Function prototype for ChangeDisplaySettingsEx
typedef LONG (*MYPROC)(
LPCTSTR,
LPDEVMODE,
HWND,
DWORD,
LPVOID);

// Snappy!
// 1. ProcAdd replaces the original api "ChangeDisplaySettingsEx" by loading the dll coredll.dll directly at runtime above.
// 2. The function address pointer is then retrieved with a call to GetProcAddress and assigned to ProcAdd
// 3. All function call to ChangeDisplaySettingsEx is simply replaced by ProcAdd


int
WINAPI
WinMain(
HINSTANCE,
HINSTANCE,
#ifdef UNDER_CE
LPWSTR,
#else
LPSTR,
#endif
int
)
{
DEVMODE DevMode;
HINSTANCE hCoreDLL = LoadLibrary(L"coredll.dll"; // Snappy!

// Snappy!
if (hCoreDLL == NULL)
{
printf("Library load error!";
return (-1);
}

MYPROC ProcAdd = (MYPROC) GetProcAddress(hCoreDLL, L"ChangeDisplaySettingsEx";

if (!ProcAdd)
{
printf("Function not found!";
return (-1);
}

int RotationAngles;
int CurrentAngle;
int NewAngle;

//
// Check for rotation support by getting the rotation angles supported.
//

memset (&DevMode, 0, sizeof (DevMode));
DevMode.dmSize = sizeof (DevMode);
DevMode.dmFields = DM_DISPLAYQUERYORIENTATION;

if (DISP_CHANGE_SUCCESSFUL == ProcAdd(NULL, &DevMode, NULL, CDS_TEST, NULL))
{
RotationAngles = DevMode.dmDisplayOrientation;
printf("ChangeDisplaySettingsEx supports these rotation angles %d", RotationAngles);
}
else
{
printf("ChangeDisplaySettingsEx failed to get the supported rotation angles.";
RotationAngles = -1;
}

//
// Get the current rotation angle.
//

memset(&DevMode, 0, sizeof (DevMode));
DevMode.dmSize = sizeof (DevMode);
DevMode.dmFields = DM_DISPLAYORIENTATION;

if (DISP_CHANGE_SUCCESSFUL == ProcAdd(NULL, &DevMode, NULL, CDS_TEST, NULL))
{
CurrentAngle = DevMode.dmDisplayOrientation;
printf("ChangeDisplaySettingsEx reports the current rotation as %d", CurrentAngle);
}
else
{
printf("ChangeDisplaySettingsEx failed to get the current rotation angle.";
CurrentAngle = -1;
}

//
// Rotate to the "next" angle.
//

if (CurrentAngle >= 0 && RotationAngles >= 0)
{
NewAngle = CurrentAngle;

do
{
NewAngle <<= 1;

if (NewAngle == DMDO_0)
{
NewAngle = DMDO_90;
}

if (NewAngle > DMDO_270)
{
NewAngle = DMDO_0;
}
} while (!(NewAngle & RotationAngles) && (NewAngle != DMDO_0));

memset(&DevMode, 0, sizeof (DevMode));
DevMode.dmSize = sizeof (DevMode);
DevMode.dmFields = DM_DISPLAYORIENTATION;
DevMode.dmDisplayOrientation = NewAngle;

if (DISP_CHANGE_SUCCESSFUL == ProcAdd(NULL, &DevMode, NULL, CDS_RESET, NULL))
{
printf("ChangeDisplaySettingsEx changed rotation angle to %d", NewAngle);
}
else
{
printf("ChangeDisplaySettingsEx failed to change the rotation angle to %d", NewAngle);
}
}


// Snappy!
memset(&DevMode, 0, sizeof (DevMode));
DevMode.dmSize = sizeof (DevMode);
DevMode.dmFields = DM_DISPLAYORIENTATION;
DevMode.dmDisplayOrientation = DMDO_270;

ProcAdd(NULL, &DevMode, NULL, 0, NULL);

return 0;
}


Edited by Snappy! 2005-06-24 12:01 PM
 Top of the page
chiark Page Icon Posted 2005-06-27 3:27 AM
#
Avatar image of chiark
H/PC Sensei

Posts:
1,330
Location:
North of England
Status:
Oh dear... Still, at least you found that out before spending serious amounts of time and/or cash

How did you end up compiling to target 4.1?
 Top of the page
Snappy! Page Icon Posted 2005-06-27 2:55 PM
#
Avatar image of Snappy!
H/PC Elder

Posts:
1,712
Location:
New Mexico, US
Status:
chiark - 2005-06-27 1:27 AM

Oh dear... Still, at least you found that out before spending serious amounts of time and/or cash

How did you end up compiling to target 4.1?


I compiled against hpc2k. But the app itself does not use anything specific to hpc2k really. As hpc2k biniary runs on 4.1, it runs without any problem. The only issue with most apps is that they use the mfc or ole libraries which came with hpc2k.

Here, my app is loading up coredll.dll as would any dlls, so it is just using it as is. That's why it works.

For the most part, the sdk merely declares the function prototype, constants, and provides the .lib libraries to compile against. No rocket science here.
 Top of the page
chiark Page Icon Posted 2005-06-28 4:07 AM
#
Avatar image of chiark
H/PC Sensei

Posts:
1,330
Location:
North of England
Status:
Makes sense.

So what result do you get from your DM_DISPLAYQUERYORIENTATION call? Just the zero?
 Top of the page
Snappy! Page Icon Posted 2005-06-28 8:37 AM
#
Avatar image of Snappy!
H/PC Elder

Posts:
1,712
Location:
New Mexico, US
Status:
chiark - 2005-06-28 2:07 AM

Makes sense.

So what result do you get from your DM_DISPLAYQUERYORIENTATION call? Just the zero?


yeap, just zero.
 Top of the page
Snappy! Page Icon Posted 2005-07-02 11:23 AM
#
Avatar image of Snappy!
H/PC Elder

Posts:
1,712
Location:
New Mexico, US
Status:
Just tested the SL4 with Nyditot (its not Nydiot as I previously misspelled!) and it works great for rotation! Now the SL4 can function like a real book in portrait mode and be held in one hand comfortably.





(SL4-4.JPG)



Attachments
----------------
Attachments SL4-4.JPG (21KB - 29 downloads)
 Top of the page
chiark Page Icon Posted 2005-07-04 4:51 AM
#
Avatar image of chiark
H/PC Sensei

Posts:
1,330
Location:
North of England
Status:
GREAT STUFF! Well done, squire!

So are you using Nyditot to rotate the display, or to provide the ability to rotate the display?

By the way, the CE 4.2 SDK can apparently be used to develop against 4.1; the Nexio uses 4.1, and developers use the 4.2SDK against that with success.
 Top of the page
cmonex Page Icon Posted 2005-07-04 5:19 AM
#
Avatar image of cmonex
H/PC Oracle

Posts:
16,175
Location:
Budapest, Hungary
Status:
mhmm.. btw i heard 4.2 can't run nyditot...
 Top of the page
chiark Page Icon Posted 2005-07-04 6:52 AM
#
Avatar image of chiark
H/PC Sensei

Posts:
1,330
Location:
North of England
Status:
I've found the SDK for the Nexio, which should do what you want: http://202.67.155.247/~nexio/ . This is maintained by a Samsung engineer, apparently.

The freesia SDK allows you to target 4.1 with an ARM processor. If it works for the Simpad, would you let me know?
 Top of the page
Snappy! Page Icon Posted 2005-07-04 8:34 AM
#
Avatar image of Snappy!
H/PC Elder

Posts:
1,712
Location:
New Mexico, US
Status:
chiark - 2005-07-04 2:51 AM

GREAT STUFF! Well done, squire!

So are you using Nyditot to rotate the display, or to provide the ability to rotate the display?

By the way, the CE 4.2 SDK can apparently be used to develop against 4.1; the Nexio uses 4.1, and developers use the 4.2SDK against that with success.


For a few seconds, I was looking for a person called squire! (Think of the "Shoot at Will" joke! )

well, in the snapshot, I use Nyditot to rotate the display. Then I read that it replaces some of the gdi and touchscreen dlls to do the rotation, so I gave it a shot and ran my rotate.exe app! ... nope, didn't work! hehe but was worth a shot! Though I had my reservation about doing that 'cos it might mean that I can do rotation without paying Nyditot for the s/w, but still use the underlying engine! ... ...
 Top of the page
Snappy! Page Icon Posted 2005-07-04 8:42 AM
#
Avatar image of Snappy!
H/PC Elder

Posts:
1,712
Location:
New Mexico, US
Status:
chiark - 2005-07-04 4:52 AM

I've found the SDK for the Nexio, which should do what you want: http://202.67.155.247/~nexio/ . This is maintained by a Samsung engineer, apparently.


The freesia SDK allows you to target 4.1 with an ARM processor. If it works for the Simpad, would you let me know?


Initiated download sequence of NEXIO_sdk.zip! ... and installed msmsgs.exe! will update if this actually updates my msn messenger on the 4.1 image to work properly! nope ... didn't work! Forgot that NEXIO does not use SA1100!

Edited by Snappy! 2005-07-04 8:43 AM
 Top of the page
chiark Page Icon Posted 2005-07-04 9:24 AM
#
Avatar image of chiark
H/PC Sensei

Posts:
1,330
Location:
North of England
Status:
Naah, it uses the PXA250 in the S160 and the PXA255 in the XP30.

The majority of software compiled for a PXA 25x series should work, but isn't guaranteed to as there's new features in the chip which aren't present in the SA1100

How did you get on with the SDK? Or is it still downloading
 Top of the page
Snappy! Page Icon Posted 2005-07-04 10:13 AM
#
Avatar image of Snappy!
H/PC Elder

Posts:
1,712
Location:
New Mexico, US
Status:
chiark - 2005-07-04 7:24 AM

Naah, it uses the PXA250 in the S160 and the PXA255 in the XP30.

The majority of software compiled for a PXA 25x series should work, but isn't guaranteed to as there's new features in the chip which aren't present in the SA1100

How did you get on with the SDK? Or is it still downloading


It came down awhile ago ... though I think I will look on it on Thursday, my free errand day!
 Top of the page
Yogesh Kaushik
Yogesh Kaushik Page Icon Posted 2008-10-15 6:53 PM
#
Status:
 Top of the page
Yogesh Kaushik
Yogesh Kaushik Page Icon Posted 2008-10-15 6:54 PM
#
Status:
 Top of the page
1 2
Frozen
Jump to forum:
Seconds to generate: 0.203 - Cached queries : 71 - Executed queries : 9