Hi, >my problem is that I'm not understanding what the assembler is doing in my >little code. I try to call my init routine on page 1 (0x800). But the >PAGESEL directive is not correctly assembled. Anybody who knows this problem >? What am I doing wrong ? not really sure what You are upto, but im guessing you want this: ================file.asm ===================== RESET CODE -----> PAGESEL Start <---------- sets to page where start is located !!! goto Start PAGE0 CODE Start -----> ; PAGESEL Hardware_Init; remove, redundant, on same page !!!! call Hardware_Init Loop goto Loop So you will have: ================file.asm ===================== RESET CODE PAGESEL Start goto Start PAGE0 CODE Start call Hardware_Init Loop goto Loop Then it should work, /Tony Tony KŸbek, Flintab AB ΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣ E-mail: tony.kubek@flintab.com ΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣΣ