VISA supports programming IEEE 488.1 and IEEE 488.2 devices, and includes complete device-level and board-level functionality.
Introduction to Programming GPIB Devices in VISA
Comparison Between NI-VISA and NI-488.2 APIs
Board-Level Programming
GPIB Summary