> The TABLPTR is 16-bits wide. So write 80 to TBLPTRH and 00 to TBLPTRL. > Then execute a TABLRD instruction. The trick here is that the data read > is not immediately passed to the file register of your choice. It passes > through a (not mapped in data space) latch first. What's the best way of doing a context save/restore if an ISR needs to use TABLRD [in ROM-only systems] or else both TABLRD and TABLWT [in systems with external RAM]? According to what others have posted, the 17Cxx uses seperate latches for the table-read and table-write instructions. Does this mean that the only way to put something into the table-read latches is to read it from memory? If so, is there any good way to accomplish this other than [in a RAM-based system] doing something like: SAVE: save a copy of the current table pointer point to a spare spot in RAM save the contents of the table-read latches do a table-write (to record the contents of the write latches) RESTORE: point to another spare spot in RAM put the saved table-read latch contents into the write latches do a table write, followed by a table read put the saved table-write latch contents into the write latches That seems ickly. Is there a better way?