GGPO is a networking library that game developers can use to add networked gameplay support to arcade style games.
GGPO uses a peer to peer topology to run a complete copy of your game for each player, transmitting controller inputs over the network to keep these copies in sync.
Each player's inputs are sent to their copy of the game without having to wait for their opponent's to arrive over the network.
The program can be downloaded from GGPO. The games can be found on piratebay and they also can be googled. Some of the games you can play are: Streetfighter alpha, alpha 2, alpha 3, third strike, marvel vs capcom, xmen children of the atom, final fight, king of fighters, last blade, samurai showdown, fatal fury and many many more!
You need to make an account to run and play GGPO. You have to open internet ports to play against other players online. You can find all the info in the troubleshooting forum.
The cool thing about this GGPO is that you also can watch live matches. That's a feature that should be implanted in every emulator.
Please go try out GGPO and have fun playing some of the good old arcade games.