после оптимизации кода процессора под новую модель с BusManager, результат таков: падение производительности на новой модели составило 23%. Решил оставить, т.к. уж больно удобная модель получилась 
Как выяснилось, львиную долю дополнительного времени съедает подписка Beta Disk Interface на ReadMemoryM1. Кода в обработчиках фактически нет, но при подписке на ReadMemory производительность сразу проседает на 15%. Вот код обработчиков:
Код:
public void BusInit(IBusManager bmgr)
{
bmgr.AddListenerReadMemoryM1(0xFF00, 0x3D00, readMem3D00_M1);
bmgr.AddListenerReadMemoryM1(0xC000, 0x4000, readMemRam);
bmgr.AddListenerReadMemoryM1(0xC000, 0x8000, readMemRam);
bmgr.AddListenerReadMemoryM1(0xC000, 0xC000, readMemRam);
bmgr.AddListenerWritePort(0x8002, 0x0000, writePort7FFD);
bmgr.AddListenerWritePort(0x00E3, 0x0003, writePortCMD);
bmgr.AddListenerWritePort(0x00E3, 0x0023, writePortTRK);
bmgr.AddListenerWritePort(0x00E3, 0x0043, writePortSEC);
bmgr.AddListenerWritePort(0x00E3, 0x0063, writePortDATA);
bmgr.AddListenerWritePort(0x00E3, 0x00E3, writePortBETA);
bmgr.AddListenerReadPort(0x00E3, 0x0003, readPortCMD);
bmgr.AddListenerReadPort(0x00E3, 0x0023, readPortTRK);
bmgr.AddListenerReadPort(0x00E3, 0x0043, readPortSEC);
bmgr.AddListenerReadPort(0x00E3, 0x0063, readPortDATA);
bmgr.AddListenerReadPort(0x00E3, 0x00E3, readPortBETA);
bmgr.AddListenerReset(busReset);
}
private void busReset(long cpuTact)
{
m_selTrdos = false;
m_lock = false;
writePort7FFD(cpuTact, 0x7FFD, 0);
}
#region RDMEM
private void readMem3D00_M1(long cpuTact, ushort addr, ref byte value)
{
if (m_romPage == 1)
m_selTrdos = true;
}
private void readMemRam(long cpuTact, ushort addr, ref byte value)
{
m_selTrdos = false;
}
#endregion
обнаруженые недостатки на примере бета диск интерфейса:
- из девайса бета диска приходится мониторить чтение памяти чтобы отловить вход в TRDOS для разрешения обработки портов (сами ROM переключаются в девайсе Memory);
- из девайса бета диска приходится мониторить RESET и запись в порт 7FFD на предмет битов LOCK и ROM, чтобы блокировать вход в TRDOS из 128K ROM