It'sin parallel. The Enable pin is more like a clock, as it clocks in the data. The part I didn't see is that it has eight data lines. The upper 8-bits are connected to Port B RB4-RB7. The chip has an 8-bit and 4-bit operation, and its being used in 4-bit mode. The upper four bits are transferred first, then the lower four bits. The chip uses pin RB7 as a handshake pin to indicate that write has been completed! The chip can read and write.
I'm not sure how the chip knows its in 4-bit versus 8-bit mode! It may be related to the timing sequence. It appears that its timing based, 8-bit uses one enable pulse, and 4-bit uses two enable pulse. The falling edge is the trigger to start the operration.
The LCD has a reprogrammable 256 character generator for changing the font characters.
The code stores its hour, min, second in BCD and then convert it to ASCII and store it in the LCD shadow. Then when a change occurs, clocks the 32 character data bytes from the shadow into the LCD display buffer. You set the write data address but the chip has an auto-increment so once a memory address has been clocked, it advances to the next.
For Each ctrl As Control In Me.Controls("pnlMainPanel").Controls
If ctrl.GetType Is GetType(System.Windows.Forms.Panel) Then
For Each subCtrl As Control In ctrl.Controls
If subCtrl.GetType Is GetType(System.Windows.Forms.TextBox) Then
If subCtrl.GetType Is ...