PIC16F777 peripherals

Each block of the PIC16F777: what it is, the registers that control it and the pins it uses.