neogeo.zip is the bios rom file needed to play neogeo games. i believe when you are specifying systems in the ctrl files, you specify the name of the bios file required. (i'm not 100% certain on that, but i think that is how it works)
System name can be gamename, parent gamename, bios name, driver source file, and "default". The neogeo games in the example are using the bios name. You could also use "neodrvr.c". Usually, if a bios is used, all and only the games in one driver file use that bios, so they are basically at the same "level".
I think one of two things are happening for the capcom games. Either the capcom system is placed before another system that over rides it, or there is cfg/cfg files for the game that over ride the ctrlr file. The latter is possible is the game was remapped the normal way (and saved in the cfg file), as cfg files over ride ctrlr file settings. The former is due to the fact that mame goes through the ctrlr file once, from beginning to end, and applies each relivent system as they are placed in the ctrlr file. So if you have system cps1.c before "default" system in the ctrlr file, mame will apply the cps1.c map, then the default map, over writing the prior system (assuming they map the same stuff, of course).
Capcom games are in many drivers, and don't use bios (usually). There are a few ways to get the driver name. Maws is the easiest, but I find mame -ls (aka mame -listsource) is faster for me. I also am begin to really like the new -listbrothers (or -lb for short), as it lists the driver file and all other games that use that driver file. Going through the -listxml is also a way, but -ls, -lb and Maws are faster IMO.
Anyways, back to capcom. Let's take the Street Fighter family of games. Quick Maws search gets 21 parents with street fighter in the name, in eight different drivers (cps3.c, cps2.c, cps1.c, zn.c, naomi.c, sftm.c, ssf2md.c, & sf.c). The last three drivers only are for that game & clones, so you come just use the parent name with the same effect. However, the other drivers have many non-sf type games that you might want a different map than SF2 (use maws or -lb for list of other ).
Dazz, have you read the
wiki page? Basically, map using mame's Input (general) the normal default for most games (p1b1 = A, p1b2 = s, etc), move cfg/default.cfg file to ctrlr folder, repeat mapping this time for neogeo games again in Inputs (gerenal) (p1b1 = V, p1b2 = Z, etc), rename that system name to neogeo (or neodrvr.c), and copy that system into the ctrlr file. More details are in the wiki, but if you have any problems let me know.