Simple answer, they don't require 500 MB, or 50 MB, or even 5 MB of drivers.
A PCL (what most inkjets speak) driver is in the hundreds of KB. Likewise, a postscript driver is equally tiny.
In Windows you can, in fact, install and use most printers using a built-in driver, even if it's not the "right" driver. You would be astounded at how many printers will work just fine with the
hp-laserjet-4 driver for instance.
All that extra space is help files, graphics, updater, a silly application to let you order more ink online, clipart, etc. Mostly, all the extra space is junk.
Err, that didn't answer the question did it.
The answer is, the driver just needs to speak the language of the printer. Even if the printer read in a raw bitmap, you'd need a driver that took the page you're printing, and turned it into, say, a PPM file. That would be incredibly inefficient though, so they have languages like HPGL for plotters, PS for good printers, and PCL for OK printers and inkjets.
If your OS or software speaks a printer's language, it doesn't need a driver.
Download the required Windows 7 32bit or 64bit HP Universal Printer Driver PCL6 (UPD) from the HP Website.
Install the driver using “Traditional mode”.
Go to “Printer Properties” -> “Device Settings” of the printer and scroll to the bottom.
Change “Device Type” setting from “Automatic” to “Color”
The "Color" tab will now be available under Printing Preferences of the printer.
If you are sharing the USB printer over your network specifically for Windows 7 clients, you have to change the same “Device Type” setting as above for each client’s printer driver to enable colour printing to the shared printer.
Try this driver: http://guigo.us/mac/splix/
Works well wih my Samsung ML-1510 on OS X Mountain Lion.