Compile the Open Source Software

I am not able to compile the Open Source Software. Version: v1.03 Every time i want to compile, i get this error in the ssc32.c file: undefined external ‘oc1a_isr_function_ptrs’
My compiler: Code Vision AVR Version: 1.24.0 Standard

Have anyone an idea?

thanks
Martin

Hello Martin,
Sorry for the delay. We updated the firmware page and it now includes a screen shot of the configuration. We will be updating the files as well as the included files are a little old.
lynxmotion.com/images/html/proj078.htm

Hello,

I get the same error when I want to compile (in the ssc32.c file: undefined external ‘oc1a_isr_function_ptrs’)
Open Source Software version : v1.03 (file 32v106XE.zip)
Compiler : Code Vision AVR Version: 1.24.0 Standard

The compiler’s configuration is the same as the screenshot.

I also got a lot of warning “macro ‘xxxx’ was redefined” because of the “include <mega16.h>” in the appdefs.h file.

Is someone can help ?
Thank you !

Stéphane

Hi Stéphane,

Did you set the compiler for mega8? I found an error or two as well. I believe a cast helped.

Perhaps you need an extern?

extern flash uint16_t oc1a_isr_function_ptrs 9 ] ;

Alan KM6VV

Thanks for your answer !

Yes, I did…

Yes, it seems to be the matter.

In globals.h, there is : extern flash uint16_t oc1a_isr_function_ptrs 9 ];
But in globals.c, the implementation is :

#asm .cseg _oc1a_isr_function_ptrs: .dw bank1_pulse ;// 0 ] .dw bank1_pulse_loop ;// 1 ] .dw bank2_pulse ;// 2 ] .dw bank2_pulse_loop ;// 3 ] .dw bank3_pulse ;// 4 ] .dw bank3_pulse_loop ;// 5 ] .dw bank4_pulse ;// 6 ] .dw bank4_pulse_loop ;// 7 ] .dw no_pulse ;// 8 ] .dseg #endasm

I think the compiler don’t see the implementation because it is in assembler.

I don’t know what to do… :cry:

Hi Stéphane,

An additional thought. I was using 1.25.6, maybe that would help?

The redefinitions started to sound familiar. I think they can just be commented out.

PM me your EMAIL address, I’ll see if I can match up my fixes. Why not work on the new '168 version? That’s where I will concentrate my next efforts.

Alan
KM6VV at arrl dot net

Hello,

I compiled using the 1.25.8 version.
It seems better, but there is sill an error : a value of type ‘struct *] can’t be assigned to an entity of type "unsigned int’
In the file pulsedge.c, line 396

	edge_data_ptr = & edge_array  36 ] ;

For the redefinitions, I commented them, it seems to work fine.

Thank you for your help.

For the '168 version, it could be a good idea, but I already bought the atmega8 version…

I send you my e-mail adresse by MP.

Stéphane

Hi Stéphane,

I searched the line, and found that I had added a cast:

edge_data_ptr = (unsigned int)&edge_array  36 ] ; // added cast alm

There might be one or two more.

Yeah, I figured that! I found my '168 chips, and somewhere I’ve got megga8 chips as well.

Got your address, and copied you on this post.

Best regards,

Alan Marconett KM6VV

Hi,
I’m getting lots of errors, software won’t compile at all.
Will there be a more uptodate version?
Thx, Fried