С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Если эмулировать TR-DOS, то только вместе с эмулированием флопика!
Иначе опять фигня получится. Вон к divIDE написали ESXDOS и что? TR-DOS там работает, но криво. Если делать, то делать сразу нормально а не криво как в ESXDOS.
Куплю корпус и материнку от Spectrum +2/+3
Да в принципе не проблема ... Только бы отследить вовремя обращение к портам ВГ. Проблема как раз в работе с ОЗУ.
Пока не уяснил, опять же, две вещи.
1) как обеспечить регенерацию памяти в режиме захвата шин, и надо ли?
2) как отследить момент, когда можно безболезненно обращаться к памяти в режиме захвата шин, чтобы избежать конфликта с дисплейным контроллером?
Lisitsin /Василий Лисицын/
[email protected]
остаются вопросы с регенерацией памятиТам же :4.7. Команда останова.
После выполнения команды останова процессор Z80 выполняет последовательность пустых (NOP) команд, пока не получит запрос на прерывание или сброс. Запросы как маскируемого, так и немаскируемого прерываний анализируются по переднему фронту тактовой частоты в такте T4 каждого машинного цикла команды NOP. В течение состояния останова процесс регенерации динамической памяти продолжает выполняться, поэтому такое состояние процессора может продолжаться сколь угодно долго без опасности потери данных.
http://mpsystems.narod.ru/help_06.htmРегенерация динамической памяти, при этом активизируется и /MREQ, а адрес выдается на A0-A6. Процесс регенерации Z80 производит перебором 128 адресов, т.е. расчитан на организацию 16K-словами, в то время как микросхемы, имеющие объем 64K (565РУ5), требуют регенерации по 256 адресам.
Profi v3.2 -=- Speccy2010,r2
Bus Request (input, active Low). Bus Request has a higher priority than
NMI and is always recognized at the end of the current machine cycle.
BUSREQ forces the CPU address bus, data bus, and control signals MREQ
IORQ, RD, and WR to go to a high-impedance state so that other devices
can control these lines. BUSREQ is normally wired-OR and requires an
external pull-up for these applications. Extended BUSREQ periods due to
extensive DMA operations can prevent the CPU from properly refreshing
dynamic RAMS.
Или я что-то не правильно понимаю ...
Lisitsin /Василий Лисицын/
[email protected]
"Во времена всеобщей лжи говорить правду - это экстремизм" - афоризм.
ну видимо своя схема собрана, кто же спорит, но запуск наверняка идет сигналом /RFSH.А там где регенерацию производит ULA/БМК?
За саморегенерируемые DRAM не слышал, если постоянно читать\писать память, возможно и не надо, а вот при простое - потекут ячейки без регенерации. imho добавлять?
Profi v3.2 -=- Speccy2010,r2
>> С первой ситуацией. Я не совсем понимаю, что происходит в реальном спектруме при обращении к адресам #3Dxx
Нужно вместо поступающих от встроенного на плату данных пзу, подставлять данные образа пзу из эмулятора, тоесть при чтении по адресу 3D12 процессору на шину данных будут поступать данные от ПЗУ, а нужно что бы шли от эмулятора
По второй ситуации тоже самое, при чтении к примеру из порта 3F, будут читаться данные от кемстон джойстика (адрес 1F из за неполной адресации читается по всем нечетным адресам) а нужно что бы читались данные эмулятора ВГ93
С последней ситуацией действительно проще всего, единственный нюанс что нужно правильно реагировать, на 2 бита адреса, A0 и еще какой то, вроде A15, значение остальных бит не важно
Так вот ключевой вопрос, каким образом захват шины позволит процессору подсунуть данные от эмулятора не конфликтуя с встроенной перефирией, именно эту хитрость я не могу понять, просто я до этого считал что без разделительного буфера между процессором и шиной не обойтись, поэтому хак крайне интересен
По синхронизации, в наших клона используется прозрачный доступ к памяти, где плата сама подстраивается когда видеоданные считать, используя тот нюанс что процессор не может 2 соседних такта подряд иметь доступ к памяти, в оригинальных клонах используется останов синхронизации процессора в момент когда читаются видеоданные
Последний раз редактировалось s_kosorev; 19.01.2015 в 20:40.
Да ... Щас у меня голова уже опухнет ... Не лучше ли тогда сразу отслеживать обращение дисплейного контроллера к памяти по сигналу ~CAS непосредственно на памяти и сразу после него производить операцию записи/чтения? Но это дополнительный провод ... (((
Lisitsin /Василий Лисицын/
[email protected]
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)