Author |
Message |
aviator
Senior
Joined: 10 Dec 2008 08:39 Posts: 155 Location: Стокгольм, Швеция
|
При чём тут электронный диск, если речь о переносе стека в "теневой банк" и перехвате PUSH/POP. Если так извращаться, чтобы копировать данные между банками ПЗУ-ОЗУ, то эффективнее организовать переключение, чтобы копирование вообще не нужно было. Гораздо эффективнее подход, когда программа выполняется прямо из ПЗУ "электронного диска".
_________________ С уважением, Сергей.
|
18 Feb 2024 03:17 |
|
|
Mondx
Doomed
Joined: 10 Aug 2022 07:27 Posts: 356
|
Электронный диск при том что я ИМЕННО о нём - вернитесь на предыдущую страницу, с чего я начал. А то вы куда то в другую сторону... Что Аликберов про циклы куда то повёл... Ужос.)
|
18 Feb 2024 03:25 |
|
|
aviator
Senior
Joined: 10 Dec 2008 08:39 Posts: 155 Location: Стокгольм, Швеция
|
А, так я как раз писал о сложности и неоднозначности идеи "стек - теневой банк".
_________________ С уважением, Сергей.
|
18 Feb 2024 03:30 |
|
|
Alikberov
Maniac
Joined: 14 Oct 2019 18:10 Posts: 324 Location: Tashkent
|
Как раз таки при использовании циклов доступа к стеку ничего и не надо, так как CALL/POP/PUSH/RET/XTHL будут работать с теневым банком стека до 64 Кб - по Гарварду получается. Причём, самыми малыми затратами без перехвата/декодирования кодов инструкций.
|
18 Feb 2024 03:48 |
|
|
Mondx
Doomed
Joined: 10 Aug 2022 07:27 Posts: 356
|
Ну так это не надо для 8080. А началось с того что на z80 это, якобы, не сделать.) Ладно, замяли. Каждый думает по своему.)
|
18 Feb 2024 03:58 |
|
|
aviator
Senior
Joined: 10 Dec 2008 08:39 Posts: 155 Location: Стокгольм, Швеция
|
Внутри функций обращение к аргументам идёт не через POP, а через MOV. Что в Гарварде, что в Фон-Неймане.
_________________ С уважением, Сергей.
|
18 Feb 2024 04:18 |
|
|
Alikberov
Maniac
Joined: 14 Oct 2019 18:10 Posts: 324 Location: Tashkent
|
Данная тема - сугубо про доработку архитектуры журнального РАДИО-86РК до 64 Кб сплошного ОЗУ. Перехват инструкций меня интересует только в двух случаях: - Перехват кодов 40…7F (MOV R,R) для организации сегментов памяти
- Перехват кодов D3/DB (OUT/IN) для виртуализации УВВ
Зачем тогда, в этом случае, теневой квази-диск через перехват PUSH/POP, если через MOV-префиксы проще ( реализуемо на ВМ80/i8080/i8085/z80), быстрее ( никаких предварительных оперативных настроек портов) и гибче ( до семи теневых банков по 64 Кб)?
|
18 Feb 2024 05:03 |
|
|
Mondx
Doomed
Joined: 10 Aug 2022 07:27 Posts: 356
|
Может и незачем, спорить не буду.) Напомню только, из чего началось. А началось из за "никак не реализуемо под i8085 и z80". Только всего. Удачи в РК строении!) Во! Нашел. Radio86-PK+: CP/M, 8 ROM, 64 RAM, 64 El disk, CTC, SIO. 1989 год. Так что и я к РК причастен.)
|
18 Feb 2024 05:57 |
|
|
Alikberov
Maniac
Joined: 14 Oct 2019 18:10 Posts: 324 Location: Tashkent
|
Верно, я повторяю, что никак не реализуемо под i8085/z80 при условии использования минимума вентилей. Так, для переключения режимов 16/64 Кб не требуется никаких ИМС - только ТМ2, который на плате уже имеется + три диода. Однако, мне намекнули, что с диодами - нне так стабильно, по причине возможных завалов сигналов. Потому я врисовал один вентиль ЛИ3. Для перехвата MOV-префиксов - достаточно добавить СП1 для их отлова и ИР1 для хранения индекса теневой страницы. То есть, практически, получается - ничего не выбросишь (ИР1 хранит код сегментного префикса и адресует одну из семи дополнительных страниц, а СП1 - стробирует его отловом кодов MOV). Давайте схему отлова PUSH/POP рассмотрим, изучим и обсудим тогда?
|
18 Feb 2024 06:12 |
|
|
Mondx
Doomed
Joined: 10 Aug 2022 07:27 Posts: 356
|
Ой. Это было в районе 1984-87. Попробуй вспомни тут.) Я могу, конечно, посидеть нарисовать по новой. Только зачем?
|
18 Feb 2024 06:28 |
|
|
Alikberov
Maniac
Joined: 14 Oct 2019 18:10 Posts: 324 Location: Tashkent
|
Ну, Вас не поймёшь! Расхваливаете свой вариант, а показать - так военная тайна!
|
18 Feb 2024 07:01 |
|
|
aviator
Senior
Joined: 10 Dec 2008 08:39 Posts: 155 Location: Стокгольм, Швеция
|
А что там перехватывать? По SYNC, а затем F1, на шине появляется слово состояния машинного цикла. В нём смотрим комбинацию флагов для чтения инструкции (M1+RD если правильно помню). Ну и потом ловим код инструкции на шине и сравниваем. Так можно детектировать любую инструкцию. А можно ловить WR+STACK и RD+STACK. И определять, что будет операция со стеком непосредственно. Могу ошибаться в деталях, это я по памяти.
_________________ С уважением, Сергей.
|
18 Feb 2024 09:10 |
|
|
ra3qdp
Fanat
Joined: 18 Feb 2019 15:46 Posts: 64
|
" при условии использования минимума вентилей" разве это как-то важно ? (а на разведенной с учетом этого печатной плате припаять пару дополнительных микросхем вообще ни кого не затруднит). Зато применение 8085_Z80 дает массу преимуществ. Объяснение применения 8080 только одно - инерция мышления.
|
18 Feb 2024 09:48 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22606 Location: Silicon Valley
|
8080 это не "инерция мышления", а классика
|
18 Feb 2024 10:18 |
|
|
vital72
Senior
Joined: 17 Jun 2014 04:29 Posts: 138 Location: 93.80.157.217
|
хотите сделать процессор для процессора? чтоб работал процессор, пока работает процессор.
_________________https://radio-86rk.ruкто я такой, чтобы спорить с самим собой
|
18 Feb 2024 10:42 |
|
|