Hi,
Im using the free demo version of PBP right for now.
OK, it doesn't say much to me I'm afraid... Is it a demo version of 2.4, 2.5, 2.6, 3.0 or what? As long as it's not 3.0 editing the .inc file like I showed should work. In 3.0 Melabs have provided us with a better way to handle the CONFIG bits but lets not get into that if you're not using 3.0.

Im a little vague on understaning what exactly is a INC file. It seems like the books I have read don't go into detail on this very much for the beginner. What I am gathering is that its a file that is attached to the source program when the program is compiled.
Yes, that is correct. For each device there's .INC file in the PBP folder, the file for the device you select in the drop-down list in Micro Code Studio gets included in your source file before the actual compilation process starts.

What happens is that MicroCodeStudio passes the name of the device to the compiler thru its -P parameter (see the manual for details on that) and the compiler then "adds" the content of the .INC file to your source file before compiling.

This tells the compiler which ports to use and how to setup the ports?
Pretty much, it doesn't say how to set them up (ie. inputs, outputs, analog, digital etc) but it tells the compiler at which physical adress in memory that each register is (PORTA, TRISA, TMR0, T0CON, ANSEL, RCON, whatever). Pretty much like you did with the SYMBOL statements but it does it for you for ALL the regsiters in the chip so you don't have to dig that deep in the datasheet. Small chips might have a dozen or so register, large chips have hundreds of registers.

Actually, if you look in the 18F45K20.INC file in the PBP folder you'll see there's another include statement in this file, namely INLCUDE P18F45K20.INC which is located in the MPASM directory. It's in this file that the actual names of the registers and their adresses are located.

In practice it means that you don't have to know the physical adress of the register you want to access, you just need to know its name. The rest is handled for you behind the scenes. So, except for editing the CONFIG bits you rarely need to worry about these files.

/Henrik.