MAME statistics

Top 20 CPUs in MAME

Quick info:

  1. Zilog Z80: 8-bit king.
  2. Motorola MC6809: 8-bit. With multiplication. Beautiful orthogonal instruction set.
  3. Motorola MC68000: 32-bit registers/16-bit ALU.
  4. MC68307: 32-bit registers/16-bit ALU/16 or 8-bit data bus.
  5. Freescale MCF5206E: 32-bit.
  6. Motorola MC6809E: 8-bit, external clock.
  7. MOS Technology M6502: 8-bit.
  8. Intel 80C51: 8-bit, MCS-51 family.
  9. MC6809 (legacy): 8-bit. 'legacy' because it's an old implementation in MAME?
  10. MC68340: 32-bit.
  11. Hitachi H8/3002: 32-bit. For instance, used by Namco as sound processor in its System-12 architecture.
  12. ARM7 (little): 32-bit. 'little' is for little-endian mode?.
  13. Hitachi SH-4 (little): 32-bit. Used in the Dreamcast, for instance. 'little' is for little-endian mode?.
  14. Intel 80C32: 8-bit, MCS-51 family.
  15. Hitachi HD6303Y: 8-bit.
  16. Motorola M6808: 8-bit, 6800 family.
  17. AM9517A: DMA controller?.
  18. Atari C012294 POKEY: Atari sound and I/O chip.
  19. Motorola MC68E020: fully 32-bit.
  20. Intel 8080: 8-bit, second by Intel, 1974.

For the full list: mamecpus.txt.

Generated using:

mame -listxml | awk -F\" '/chip type="cpu"/ { print "\42"$6"\42" }' | sort | uniq -c | sort -rgk1 | tee 'mamecpus.txt' | head -n20 >ncpus.txt

gnuplot plotcmds.txt

plotcmds.txt is:

set xtics nomirror rotate by -45 scale 0
set boxwidth 0.3
set style fill solid border -1 
set terminal png size 1000,1000 transparent fontscale 0.8
set title "Top 20 CPUs in MAME v0.201"
plot 'ncpus.txt' using 0:1:xtic(2) with boxes notitle, \
     ''          using 0:1:1 with labels center offset 0,1 notitle