Emulation is absolutely the way to go. For the older cart-based systems especially, even full romsets barely take up any space, so you can just grab the whole thing and decide what you want to play later:
NES - 280 MB
SNES - 3 GB
N64 - 12 GB
Game Boy - 200 MB
GBC - 675 MB
GBA - 13 GB
Master System - 100 MB
Genesis - 1 GB
When you get into the disc-based era things get more into the terabyte range, but even then it's very much in the "cheap HDD" range:
Saturn (US) - 80 GB
Dreamcast (US) - 115 GB
PS1 (NTSC) - 500 GB
PS2 (NTSC) - 2.5 TB
PSP (NTSC) - 500 GB
Gamecube (NTSC) - 500 GB
Wii - 5-6 TB (?)
Nintendo DS - 200 GB
Obviously, about 80% of that (conservatively) is games you wouldn't actually ever want to play, so you can easily store every ROM you'd ever want from every system from the PS2/GCN/Xbox and before (+Wii) on a single cheap drive and run them all on a potato PC (with enhanced graphics for the more modern ones, too!).