Take a look at http://www.lcd-module.de/eng/pdf/zubehoer/st7036.pdf

Pages 34-38 tell you exactly what each register contains and what each bit does.

Page 39 shows 8 bit initialisation

Page 41 shows 4 bit initialistaion but you dont need to go down to that lave. PBP should take care of that for you.

Just look for the commands that set the contrast. It look to be "$7x" where x is the setting 0-F for the 16 possible values.

I would follow Steves advice for leaving a long delay after the first initialistaion command then try something like this
Code:
contrast             var byte
contrastcommand var byte



For contrast = 0 to 15
   contrastcommand = $70 + contrast
   LCDout $FE, contrastcommand
   pause 10
   LCDout $FE,1, "contrast=", DEC2 contrast
   pause 1000
Next
That should send all possible values to the LCD for adjusting the contrast and if it works you will see on the display the values that give a visible display. Then pick the best one.

Cant really offer much more as I dont have that type of display.