Hi all, Could somebody please point me to a DPP-registers-for-dummies resource? I have read the application notes and datasheets etc. but they only mention that DPP registers -exist-. I'm still not sure -why- and -how- to use them. Our existing project uses them but I'm not sure why. I'm adding code to run the whole app from RAM instead of flash and I think I'm running into NDATA/near/DPP problems. - You can specify the NCONST and NDATA areas using the DPPUSE linker directive. It doens't seem to be possible to point DPP0 to 8000, DPP1 and 2 to 20000 and DPP3 to the usual segment3. Or did I do something wrong? - What's the difference between NDATA and NDATA0? How are they both defined? DPPUSE only mentions NDATA, the M66/map file also shows NDATA0. - Why is DPP supposed to be faster? Doesn't the compiler need to add DPP code for each access? - How can it be that "near" objects have to be in the first segment but DPP registers can point to way-up-high memory? - I'm still not sure how the _sof_() function fits in. If PEC pointers have to be in the first segment anyway, why do you have to use _sof_()? Isn't the segment always set to 0, leaving a 00'xxxx (=16bit) address? Regards, Joost Leeuwesteijn