I usually define the following macro and prefix tables with the macro ATable macro xxxSize if HIGH $ != HIGH ( $ + xxxSize ) org ( ( HIGH $ ) +1 ) * .256 endif endm Then whenever you define a table, place the macro before the table It effectively aligns the table on a 256 byte boundary if the table spans the boundary - it seems to have the desired effect, and takes no space unless the page boundary is crossed ATable 26 ; 26 is the number of entries in the table DTMF_TABLE_IN ADDWF PCL, F ; springe zu Wert laut W-Register RETLW 'D' ; 0 RETLW '1' RETLW '2' [....] RETLW '9' RETLW '0' ; A RETLW '*' ; B RETLW '#' ; C RETLW 'A' ; D RETLW 'B' ; E RETLW 'C' ; F ---------- From: Wolfgang Sch dle Sent: 19 March 1998 22:02 To: PICLIST@MITVMA.MIT.EDU Subject: Table (Paging problem ??) Hello All ! I have an question about tabels and perhaps the paging of the PICs (eg PIC16C65A) When I write a Table like this, DTMF_TABLE_IN ADDWF PCL, F ; springe zu Wert laut W-Register RETLW 'D' ; 0 RETLW '1' RETLW '2' [....] RETLW '9' RETLW '0' ; A RETLW '*' ; B RETLW '#' ; C RETLW 'A' ; D RETLW 'B' ; E RETLW 'C' ; F and the table is in an include file (eg: dtmf.inc). The Pic goes out of the table and works then at an other place of the program. Could that be a problem with the paging ? How can I write code, that ever works ? Because I want to include the file this day in the PIC16C65A and next month perhaps in an other PIC with other adresses. In the moment I have changed the code like this: DTMF_TABLE_IN MOVFW DTMF_IN SUBLW 0x0 BTFSC STATUS, Z RETLW 'D' MOVFW DTMF_IN SUBLW 0x1 BTFSC STATUS, Z RETLW '1' [......] But this cost very much time and programm place :-( Thanks for all tips & tricks :-)) Good bye schaedle@swol.de \ olle / schaedle@usa.net \/\/olfgang DB6TE @ DB0CZ