source code

Where can I find the source code for library functions?
In particular the LCD setup and write functions. They are close but I need to modify them to work with my hardware setup.


In the distribution. Find your distribution and look inside. There’s a directory called “libraries”,
inside it “LiquidCrystal”

library functions are only ever distributed as source code, never as compiled object code.
Most of the libraries are in the libraries folder, but some core ones are located in another place depending on what machine the IDE is running on. On a Mac these are "inside" the application. Select the Arduino icon control click and select "Show Package contents" to see inside.

Within your ide installation directory, look for the subdirectory Libraries. Within there, you'll find subdirectories for all the basic libraries. Within them you'll find .cpp files. This is where the functions are generally defined.
I'd suggest that you make a copy of the original library files and then edit every file in your copy to effectively change the name to something different. (eg, change EVERY incidence of "LiquidChrystal" to "ModifiedLCD") This way you can still use the original version if you ever get a more conventional display.