The core of the emulator should be changed so that specific models of spectrum (and other computers?) can be defined in separate hardware definition files. These could be compiled or read at runtime depending upon how the problem is solved. The immediate use for this includes different Spectrum rom (JGH for instance) or different hardware models (16k, 128k, +2, etc).