Thank you Ken: Please don't think I am arguing with you - I really do want to know the answer. Now let me ask - is there any effective difference between a PAGEing scheme and a BANKing scheme for accessing data memory? We have a flat memory space for programs using that 21-bit Program counter, but we have BANKed RAM memory using a combination of 12-bit File/Register address and the 8-bit Bank Select Register. And we have a notation in the AN716 migration instructions which advises that all variable addresses be 12-bits long in the form "0x0nn" and be stored in Bank 0. Now obviously the 256 bytes of Bank 0 can't handle any variables beyond 0x0FF (in Microchip's format). So what happens to a variable which is addressed as (say) 0x130 or 0x430 with the BSR=0? Which GPRs are accessed? Likewise if the change the BSR=1 and access a GPR at 0x130, which GPR is actually being accessed? I have been unable to find any information in the PIC docs which would clarify this. The reason this is significant to me is that I am trying to set up a program with multiple serial I/O buffers. These buffers don't need to be gigantic, but there are 4 of them -- 2 send and 2 receive buffers. Now an obvious way to do this is to assign each buffer to a seperate RAM bank, and this can certainly be done using the BSR. It is a whole lot cleaner, however, if one can simply address 0x130, 0x230, 0x330, 0x430. It seems that this can not be done, and that you must keep track of your Page/Bank for every RAM access and adjust the BSR accordingly. Is this correct, or am I missing something here? Thanks, Roy . ----- Original Message ----- From: "Ken Pergola" To: Sent: Wednesday, January 14, 2004 9:05 PM Subject: Re: [PIC]: I hope I am missing something here > Perhaps it was a Freudian slip (referring to data memory BANKS as PAGES), > but the PIC18F architecture does not have a paging scheme for program memory > at all -- thanks to the 21-bit program counter. > > What it does have is a banking scheme for data memory (General-Purpose > Registers and Special Function Registers) using the Bank Select Register. > > I don't mean to nitpick, but it might be confusing to some people on this > list who might not be familiar with the PIC18F architecture when they see > the term PAGE used when BANK should be used in some of the posts in this > thread. I'm just trying to point this out for clarification and not to make > anyone feel bad, ok? As my professor once said, "It's important to learn the > terminology." > > Best regards, > > Ken Pergola > > -- > http://www.piclist.com hint: The PICList is archived three different > ways. See http://www.piclist.com/#archives for details. -- http://www.piclist.com#nomail Going offline? Don't AutoReply us! email listserv@mitvma.mit.edu with SET PICList DIGEST in the body