Manuel, you don't have to worry about code page switching on a 16F84 as it only has 1K of code memory. There is no bank 1, 2, or 3. Just ORG your code after your interrupt service routine and call your subroutines. You do have to keep track of the stack level (up to 8 levels). If you call a routine from the main program, then call another from the current routine, you have used two levels. Each time you return from a routine the level goes back up one level. Unless you exceed 8 levels, you don't have to worry about it. - Tom At 11:30 AM 3/25/98 +0100, you wrote: >Hi piclisters! >I have a 'titanic' problem with my program, i made it with several >(sub)routines wich i put in bank 2 and bank 3. The Interrupt Service Routine >is at 0x04 and main program code comes from ORG 0x25 to 0x180 aprox. > >Routines can be called from main program and from other routines, and pic >(16f84) can't work well, because i don't know how PCLATH must be set after >execution of the subroutine. > >Does anyone solve this problem? > > >Investimento e Investigacisn Industrial, S.L. >Av. Galicia 51-53 >32300 Barco de Valdeorras (Orense) >Spain >TLF. : (+34)(9) 88 327370 >FAX : (+34)(9) 88 327338 >E-MAIL: manuel.castro@mx3.redestb.es > >