Hi!
I've started using SDCC (ver 3.3.0) to program 12F675.
As the standard library doesn't provide delay functions I try to make my own 
ones.
However its hard to guess variable names from the inline asm.
For instance:

static void _delay_ms(void) {
    volatile unsigned char CounterA;
    volatile unsigned char CounterB;
    CounterA = 74;
    CounterB = 2;

__asm
loop_again:
decfsz __delay_ms_CounterA_1_4,1
goto loop_again
decfsz __delay_ms_CounterB_1_4,1
goto loop_again 
__endasm;
}

The variables CounterA and CounterB are prefixed with underscore and function 
name: "__delay_ms_"
And suffixed with _1_4 and here's the problem. How can I guess these numbers?
In the above listing I compiled the code first with variables commented out and 
looked up 
their names in asm file. Then I corrected and uncommented relevant lines. This 
solution is good
if you have just 2 lines, but...

Maybe already exists a solution and I'm just inventing something again?
The manual does't cover much about inline assembler in PIC14 section.



-- 
interia <cheman...@interia.pl>

------------------------------------------------------------------------------
Rapidly troubleshoot problems before they affect your business. Most IT 
organizations don't have a clear picture of how application performance 
affects their revenue. With AppDynamics, you get 100% visibility into your 
Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro!
http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk
_______________________________________________
Sdcc-user mailing list
Sdcc-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sdcc-user

Reply via email to