Low Voltage Programming mode of PIC18F2550
To put the device in low voltage programming mode, MCLR, PGM, PGD, PGC all are pulled low in the beginning, then PGM and MCLR are pulled up in that order and then only data transmission and clock begin. Exiting steps exactly opposite of this procedure, pull PGC, PGD low, then pull MCLR low, then pull PGM low.
Additional link on specifics of programming PIC mcus(thanks to  @Ron Beyer), see page 17, section 2.6 ->
http://ww1.microchip.com/downloads/en/DeviceDoc/30009622M.pdf