Don't know this tool set, but in C you have to declare external functions and then link the object files from C and ASM (compile the C source code to an object file, assemble the assembly code to object, and then use a linker to build the final binary), so you should have something like this: extern void mygoto(void); void main(void) { mygoto(); } This will be a subroutine call, so you should keep in mind that after "mygoto" finishes, the program will be back in C (sort of) Hope this helps. Francisco Doug Hewett wrote: >Using Keil A51, C51 toolset (v6.10), > >in main.c: > >extern mygoto; > >void main( void ); >void main( void ) >{ > goto mygoto; >} > >In file.a51: > >public mygoto >mygoto: > >end > >The compiler for main.c says mygoto is an undefined label. (I tried 'code' as a keyword but no help.) > >Thanks, > >Doug > >-- >http://www.piclist.com#nomail Going offline? Don't AutoReply us! >email listserv@mitvma.mit.edu with SET PICList DIGEST in the body > >. > > > -- http://www.piclist.com#nomail Going offline? Don't AutoReply us! email listserv@mitvma.mit.edu with SET PICList DIGEST in the body