Hola comunidad buenas tardes

, estoy realizando un proyecto el cual utiliza un microcontrolado pic 18F6722, teclado 4x4 y una glcd GDM12864(KS0108), la programacion del microcontrolador sera mediante el software ccs. La problematica se encuentra en que el teclado 4x4 utiliza el puerto B y la glcd (libreria proporcionada por ccs HDM64GS12.c) utiliza el puerto B y D.
Distribucion de pines libreria HDM64GS12.c :
////////////////////////////////////////////////////////////////////////
//// * 1: VSS is connected to GND ////
//// * 2: VDD is connected to +5V ////
//// * 3: V0 - LCD operating voltage (Constrast adjustment) ////
//// * 4: D/I - Data or Instruction is connected to B2 ////
//// * 5: R/W - Read or Write is connected to B4 ////
//// * 6: Enable is connected to B5 ////
//// *7-14: Data Bus 0 to 7 is connected to port d ////
//// *15: Chip Select 1 is connected to B0 ////
//// *16: Chip Select 2 is connected to B1 ////
//// *17: Reset is connected to C0 ////
//// *18: Negative voltage is also connected to the 20k Ohm POT ////
//// *19: Positive voltage for LED backlight is connected to +5V ////
//// *20: Negavtive voltage for LED backlight is connected to GND ////
///////////////////////////////////////////////////////////////////////////////////
se podra modificar o si existiese alguna libreria para la GLCD que no utilize el puerto B, ya que para el teclado 4x4 he intentado y buscado librerias para hacerla funcionar en algun otro puerto y no lo he podido conseguir. muchas gracias cualquier informacion me ayudaria.
