Release Notes
for the
Microsoft® Windows® CE Toolkit for Visual C++® 5.0
and
the SH4 IDE Enhancement Pack for the
Sega Dreamcast System
Libraries Needed
Uninstalling the SH4 IDE
Enhancement Pack
Known Issues
Welcome
Welcome to the Microsoft Windows CE Toolkit for
Visual C++ 5.0 and the SH4 Integrated Development Environment (IDE) Enhancement
Pack Beta. This CD includes the following:
- The Windows CE Toolkit for Visual C++ 5.0. The Windows CE
Toolkit for Visual C++ 5.0 supports building applications for version 2 platforms and devices. This toolkit is also compatible with Visual Studio Special Pack 3 (SP3), except Multi-monitor support.
- The SH4 IDE Enhancement Pack for Dreamcast. The SH4 IDE Enhancement
Pack includes the Windows CE Toolkit SH4 compiler.
- The Windows CE for Dreamcast Beta SDK.
For the latest information about developing for Windows CE, visit the Microsoft Windows
CE Web site, http://www.microsoft.com/windowsce/developer.
For more information about issues and limitations in the use of the Windows CE
Toolkit for Visual C++ 5.0, refer to the Release Notes for the Windows CE
Toolkit for Visual C++ 5.0.
For more information about issues and limitations in the use of the Windows CE for Dreamcast SDK,
refer to the Release Notes for the Windows CE for Dreamcast Beta SDK. These can be
found in Readme.txt in the root directory in which the Windows CE for Dreamcast SDK was installed.
Installation Instructions
Before installing the current toolkit, you must uninstall any previous versions of the Windows CE Toolkit for Visual C++. Previous versions include version 1+, or any version 2.0 betas. Install the products in the following order:
1. The Windows CE Toolkit for Visual C++ 5.0
2. The Windows CE for Dreamcast SDK
3. The SH4 IDE Enhancement Pack.
To install the Windows CE Toolkit for Visual C++ 5.0, run Setup.exe from the VCCE20\VCCE directory on this CD. This will launch the Windows CE Tookit for Visual C++ setup. Once the setup for the toolkit is completed, it will launch the setup for the Windows CE Platform SDK and Windows CE Services. Do not install the Windows CE Platform SDK and Windows CE Services.
To install the SH4 IDE Enhancement Pack, run Setup.exe from the SH4IDE subdirectory on this CD.
To install the Windows CE for Dreamcast Beta SDK, run Setup.exe from the Setup_WCESDK\Disk1 subdirectory on this CD.
To complete the installation, point the SH4 IDE Enhancement Pack at the correct Include and Library files provided by this beta version of the Dreamcast SDK.
Uninstalling the SH4 IDE
Enhancement Pack
Installing the SH4 IDE Enhancement Pack creates a new uninstall shortcut called
Uninstall Dreamcast IDE for Visual C++. This shortcut replaces
the Uninstall Windows CE Toolkit for Visual C++ 5.0 shortcut.
Users can, and should, still remove the SH4 IDE Enhancement Pack before the Windows CE Toolkit for Visual C++ 5.0. Both the
Windows CE Toolkit for Visual C++ 5.0, and the Windows CE SH4 IDE
Enhancement Pack can be removed by going to Control Panel, then choosing Remove.
When uninstalling the Windows CE SH4 IDE Enhancement Pack, you should also
uninstall the Windows CE Toolkit for Visual C++ 5.0.
Libraries Needed
The directory Dragon\Lib\Sh4\WinCE\(debug, retail) contains
libraries for building your applications for Windows CE on the SH4 platform.
This includes the core OS libraries (Coredll.lib),
and the core DirectX libraries (Ddraw.lib, D3dim.lib, D3drm.lib, Dsound.lib,
Dinput.lib, and Dplayx.lib). The Dragon\Lib\I386\Win95\(debug, retail) directory
contains DirectX 5 libraries for Windows 95. To build within the Windows CE Toolkit
for Visual C++ 5.0, you will need to do the following:
- In box Objects/Library Modules, enter all needed libraries,
including Coredll.lib, and Corelibc.lib. A complete list of the needed libraries is
included in the previous paragraph. However, your list may or may not include all of the libraries
listed.
Known Issues
- The IDE links with Corelibc.lib and Coredll.lib by default. If the user program requires additional C run-time support, it should add Fulllibc.lib to the Object/Library Modules edit box.
- MFC and ATL are not supported.
- When using the IDE for debugging, breakpoints set in functions called simultaneously from more than one thread do not always work correctly.
- Running the IDE on Windows 95 with Internet Explorer 4.01 installed breaks debugging. This problem is indicated by a message which states that "EM.DLL cannot be loaded" when opening a project. To fix this, copy the Imagehlp.dll found in the IDE installation Sharedide\Bin directory, typically found in c:\Program Files\Devstudio\Sharedide\Bin\Imagehlp.dll, to the Windows\System directory.
- There is a compiler error in VC5 for the SH range of processors when performing template specialization. The problem has been fixed in VC6, although VC6 will not accept template specialization in the form: struct BAR..., because the ANSI standard specifies new syntax for template specialization. The correct statement is now: BAR ..., for example:
void BAR_int_bbbbbbbb( struct BAR& BAR_int, int& a, int& b){
void BAR_XXX_bbbbbbbb( struct BAR&BAR_XXX, XXX& xxx1,XXX& xxx2){
must be re-written as:
void BAR_int_bbbbbbbb( BAR& BAR_int, int& a, int& b){
void BAR_XXX_bbbbbbbb( BAR&BAR_XXX, XXX& xxx1,XXX& xxx2){
VC5 also accepts this syntax.
- An error occurs when calls are made to a declspec (dllimport) method in a DLL through a derived class defined in the .exe, and (in the same file) calls are made both through a pointer to an object of the derived class and to the object of the derived class directly.
Example Conditions for Error:
-Base class X defined in .dll.
-A virtual method from base class X is imported from .dll using declspec (dllimport).
-Class Y derived from base class X and defined in .exe, and class Y does not define the method.
-Instance of class Y called "obj."
-Pointer to "o1" called "objPtr."
-Call in .exe to a method in .dll using "obj" directly.
-Call in .exe to a method in .dll through "objPtr."
To work around this error, the user must refer to a declspec (dllimport) method either always through the vtable or always directly. This means always calling the method using '->' from a pointer to the object, or always calling the method using '.' on the object itself. If the code tries to call the method both ways, the vtable call can fail.
- Setting Up the Remote Debug Monitor
The remote debug monitor is a small program on the target computer that communicates with the debugger and controls the execution of the program you are debugging.
To install the remote debug monitor:
Install the Dreamcast Pack on your host computer.
On a Windows 95 computer, the remote debug monitor consists of the following files: Msvcmon.exe, Msvcrt.dll, Tlnot.dll, Dm.dll, Msvcp50.dll and Msdis109.dll. Copy these files to the remote computer.
These files must be the same on your host machine and target machine. Do not use previous versions of these files from previous Visual C++ installations.
Follow the normal instructions for remote debugging as provided in the VC++ online help.
- When building for Dreamcast SH4 configurations, the system environment may prevent the Error Lookup tool (found under the Tools menu of the Integrated Development Environment) from loading. In order to run this tool successfully, either change the active configuration to standard Win32, or start Errlook.exe from the command line. Errlook.exe is typically located in \Program Files\Devstudio\VC\Bin.