A smart grid is a highly complex cyber-physical electrical power system that uses two-way digital communication and intelligent embedded devices to achieve sensing, control, computation, and communication within power network. To validate the functionality, security, and reliability of such a system requires the modeling and emulation of both communication network and power network, as well as the interactions between them. In this paper, we present smart-grid common open research emulator (SCORE), a distributed software emulator for cyber-physical analysis in smart grid. SCORE integrates the emulations of both power network and communication network, and it is highlighted by the following features. First, SCORE is the first software emulation platform for smart grid, which means that the same application program running in SCORE can be directly ported to embedded devices with little or no migration issues. Second, for one smart grid instance, SCORE supports distributed emulation when the instance is in very large scale. Third, for multiple smart grid emulation instances running on different networked computers, SCORE allows them to dynamically connect or disconnect with each other in run time, such that each instance can capture its own interior system dynamics even without a prior knowledge of the entire smart grid topology.