CW4.6 versus CW3.1 Problems to make AN3275 All Access Bootloader for S12

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

CW4.6 versus CW3.1 Problems to make AN3275 All Access Bootloader for S12

Jump to solution
1,557 Views
fritzchen
Contributor I
Im trying to adapt the All Access Bootloader described in AN3275 to my application and I´m facing several problems. One of them seems to be related to the CW version. In CW4.6 when I mark Start12.c as to touch I get several errormessages C1007: Typedef name expected and C1007: Type specifier mismatch.  The errors are placed in the start12.h - File. If I do the Make in CW3.1 none of this messages comes up. It seems that there is a *.h - File missing, but I don´t have any glue which one.
 
Maybe anybody knows this problem and can give me a hint.
Thank´s al lot in advance.
 
Labels (1)
Tags (1)
0 Kudos
1 Solution
450 Views
CrasyCat
Specialist III
Hello
 
In order to enhance portability and avoid this kind of issues, it is recommended to use only relative paths in projects settings.
 
{Compiler} can be used to refer to the CodeWarrior installation directory and define a path relative to that directory.
{Project} can be used to define paths relative to the project directory (the place you have stored your .mcp file).
 
Try to avoid absolute paths as much as possible in your projects.
 
Except for that you should be fine.
I know we changed the definition in the register definition file in order to increase readability and make it easier to switch to another MCU. 
 
CrasyCat

View solution in original post

0 Kudos
3 Replies
450 Views
CrasyCat
Specialist III
Hello
 
This seems to be related to your project.
I did open a couple of project created with V3.1 and I could build them in V4.6 without any trouble.
 
Also there are not enough information to help you more.
 
I would recommend you the following:
Generate the preprocessor listing for the start12.c file in V3.1 and check where the typedef is defined there...
 
If this does not help, I would recommend you to submit a service request for that.

Click here to submit a service request.

Make sure to attach a reproducible project and installed product information to the service request.
To generate the required information:
- Start CodeWarrior
- Open the project
- Select "Help" -> "Pack and Go" and follow instructions on the screen.

Attach the generated .zip file to the SR.
 
CrasyCat
0 Kudos
450 Views
fritzchen
Contributor I
Hello CrasyCat,
thanks for your reply. Meanwhile I went ahead with my research and I found the reason. Some of the paths in the targetspecification pointed to the folders of CW3.1. After changing it to the folders of CW4.6 Make is possible. Now I compared the start12.h - Files and found several differences. Well I´m not the highly sophisticated C-programmer to understand the differences completely. Up to now the startcode was "terra incognita".  Additionally I found a difference in the mc9s12dg128.h - File ( PORTAD0_PTAD0 instead of PORTAD0_BIT0).
I´m quite sure, if I uninstall CW3.1 what I will do sooner or later, none of the programs created with CW3.1 will work without changing. If the only thing to do is to change the paths, then it shouldn´t be a problem.
But the remainig question is: Do these changes have further effect, so that the application won´t run on the target in the way it should?
Hope you - or anybody else - can give me advice.
Thanks in advance
 
fritzchen
0 Kudos
451 Views
CrasyCat
Specialist III
Hello
 
In order to enhance portability and avoid this kind of issues, it is recommended to use only relative paths in projects settings.
 
{Compiler} can be used to refer to the CodeWarrior installation directory and define a path relative to that directory.
{Project} can be used to define paths relative to the project directory (the place you have stored your .mcp file).
 
Try to avoid absolute paths as much as possible in your projects.
 
Except for that you should be fine.
I know we changed the definition in the register definition file in order to increase readability and make it easier to switch to another MCU. 
 
CrasyCat
0 Kudos