The problem with directly relying on the mame exe (or the dat file) for crcs, is that you would have to manually tell the tester the ROM memory map for the pcb. Otherwise how would it know how big each eprom is, and where it resides in the memory space. In this regard, it is just as much labour as using an old Fluke. This would be especially hard, if you connect up an unknown pcb, whose memory map is unknown.
A way to give it a bit of intelligence, is something like this:
So this file is read (ideally it would be an sql database or similar) when you connect to a Z80 socket. The file lists mame_game_name:total_ROM_size:first_1k_crc32:total_crc32
Z80_briefcrc
It means you don't have to tell the tester anything, it can simply read the first 1k of address space, calculate a CRC on it, and then work out which game(s) it could possibly be from the info in the file/database. It then knows the total ROM space, and has a total CRC for that in the file too.
Once it has that info, it can then get more info on the game by using information scraped from the mame xml dat, such as:
Z80_full
lines starting with + are maincpu eproms, showing hex memory address, size and crc. Lines starting with - are graphics etc. eproms that aren't directly addressable, and so can be ignored.
It's all a bit convoluted to set up, but it would make it a very clever device.
Does that all make sense?