[Icc-mot] ICCV7 for CPU12, some questions

jpdi at free.fr jpdi at free.fr
Wed Mar 28 02:25:13 PST 2007


Dear Sir,

I just begin to pass from 9s12dp256 to 9s12Xdp512, so I downloaded the beta 03 version of ICC712, and I've some questions about it :

- Using professional version 6, and waiting for the full professional version, including XGATE functionality, do the version 6
compile code for HC12X, and manage paged functions ? What kind of processor I've to use with Version 6 for compile for a 9s12xdp512
processor ?

- With 9s12dp256, I usually developed some functions in RAM area, in order to avoid to burn too much the flash eeprom. To do that, I
used "custom device", program memory 0xd000, Stack 0xff80, and with NoIce, I used a command file "edit 0x10 0xd1" to put ram area in
0xd000.
It seems that register, "INITRM" disappeared ?
Is it possible to do the same kind of thing with Xdp512 ? I know it's a question about XGATE family, not about the compiler.

- Examining the .SRC files, I sow the EDI automatically verify SRC file and changes absolute path to Files in relative path. It
refuses any modification I try to write with an alternative editor, obliging me to close the project, and open again... In fact, I
preferred the precedent way, absolute path, which was easier for creating and analysing project, as a SRC file of mine shown below :
[Files]
main.c
vectors.c
Rti.c
LcdGraph.c
c:\Disque_D\9s12\Icc12\Library\KeyGraph.c
c:\Disque_D\9s12\Icc12\Library\Delay.c
c:\Disque_D\9s12\Icc12\Library\Dble.c
c:\Disque_D\9s12\Icc12\Library\Bus_arriere.c
c:\Disque_D\9s12\Icc12\Library\Sci1_duplex.c
c:\Disque_D\9s12\Icc12\Library\JOEL_MemClear.c
c:\Disque_D\9s12\Icc12\Library\JOEL_Mem255.c
[Headers]
c:\Disque_D\9s12\Icc12\Library\Delay.h
c:\Disque_D\9s12\Icc12\Library\MesMacros.h
[Documents]
_lire.txt
TestCle.noi
TestCle.src

that means that, for me
"c:\Disque_D\9s12\Icc12\Library\Bus_arriere.c"
is more easy to read than
"..\..\..\..\..\Icc12\Library\Bus_arriere.c"
and it's easier for copying different projects with some differences from a directory to another one.
But maybe your have an excellent reason for that !


- It seems you changed the way to pass parameters to a function (compare with version 6), because functions I developed in assembly
language doesn't run now. See below a quick function to reset memory area I used before.
// OK under version 6, KO with version 7
void JOEL_MemClear (void *ptr, unsigned int nb_octets)
{  if (nb_octets == 0) return;
	asm	(
		"pshx  			\n"		// sauve X
		"pshy  			\n"		// sauve Y
		"ldy   %ptr  		\n"		// Y pointe sur destination
		"ldx   %nb_octets		\n"		// X contient nbre octets
		"clra				\n"		// A <- 0
		"MemClear:			\n"
		"staa 0,y			\n"		// *Y <-- A
		"iny				\n"
		"dbne x,MemClear		\n"		// fini ? sort

		"puly				\n"
		"pulx				\n"
		);
}

I've pleasure to work with you and your compiler !
Thank you for your answer.

Best regards
Joel Petrique

*********************************************************************
Dièse-Info / Joël Pétrique
L'électronique et l'informatique au service de l'orgue à tuyaux
10 rue Jules Ferry - 01200 BELLEGARDE-SUR-VALSERINE - France
Tél-fax : (+33) 04 50 56 74 03
Gsm : 06 09 76 07 71
Web : www.dieseinfo.com






More information about the Icc-mot mailing list