И, что, от того, что добавляется лишний уровень абстракции
Даже два уровня, хотя бог его знает как эмулятор БК сделан, но вообще, у таких процессоров есть железо и микропрограммы.
Что же до ассемблера 8080 и 8086, то существовал транслятор из текстов 8080 в текст 8086, распространявшийся непосредственно Интелом.
Мне нужно было бинарный код эмулировать, а не текст на ассемблере.
Но Z80 - дело другое, и эмулированный процессор находился в памяти, а не в регистрах х86.
А что мешает регистры z80 в регистры 386 процессора раскидать? Места достаточно. Впрочем, я тоже регистры хранил в памяти, потому что тот эмулятор для отладки писался, а не ради скорости.
И надо было ещё справляться с графикой, которая у PC и ZX оччень горбатая, и у каждого - по-своему.
Не на столько они горбатые, в любом случае, это всего только битики (а может и целые байтики, я уже не помню таких подробностей) перемещать, и не слишком быстро. В любом случае, это тоже совсем другой уровень.
no subject
Date: 2013-04-04 07:10 (UTC)Даже два уровня, хотя бог его знает как эмулятор БК сделан, но вообще, у таких процессоров есть железо и микропрограммы.
Что же до ассемблера 8080 и 8086, то существовал транслятор из текстов 8080 в текст 8086, распространявшийся непосредственно Интелом.
Мне нужно было бинарный код эмулировать, а не текст на ассемблере.
Но Z80 - дело другое, и эмулированный процессор находился в памяти, а не в регистрах х86.
А что мешает регистры z80 в регистры 386 процессора раскидать? Места достаточно. Впрочем, я тоже регистры хранил в памяти, потому что тот эмулятор для отладки писался, а не ради скорости.
И надо было ещё справляться с графикой, которая у PC и ZX оччень горбатая, и у каждого - по-своему.
Не на столько они горбатые, в любом случае, это всего только битики (а может и целые байтики, я уже не помню таких подробностей) перемещать, и не слишком быстро. В любом случае, это тоже совсем другой уровень.