pin 12 is bit 5(32 decimal) of the byte you read from port 379h. So actually 58 is +5V and 78 is 0V.
in C:
if(32 & data){
/* pin 12 is high (+5V) */
} else {
/* pin 12 is low (0V) */
}
graphing depends on your programming language and tools available.
If your signal is slow enough, and you don't need very good accuarcy, use a software timer and get a measurement every x mS