|
nedoPC.orgElectronics hobbyists community established in 2002 |
|
Author |
Message |
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
А ты, кстати, разбирался, вот в этом твоём проекте: используется режим " пультового отладчика", или режим HALT 1801ВМ2 ?А то я заканчиваю разбор программы-Монитора под 1801ВМ1, и что-то терзают меня смутные сомнения, что для 1801ВМ2 в связи с наличием режима HALT придется внести в него некие правки, а вот какие - мне пока не совсем ясно...
_________________ iLavr
|
08 Feb 2018 04:34 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22587 Location: Silicon Valley
|
Режим HALT в MK85 активно используется - например оно туда попадает при нажатии на кнопку клавиатуры STOP P.S. Вот что про него пишет Пётр: http://pisi.com.pl/piotr433/mk85hwe.htm#modes
|
08 Feb 2018 07:20 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
А что с сигналами в этом режиме? Вроде где-то читал, что Din, Dout в режим HALT перестают работать? И вроде как прерывания вываливают 1801ВМ2 в режим HALT?...
_________________ iLavr
|
08 Feb 2018 09:37 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22587 Location: Silicon Valley
|
Да всё тоже самое вроде как - разве что SEL ещё в нуль устанавливается при выдаче адреса - т.е. его можно использовать как дополнительный адресный бит, чтобы разделить адресные пространства USER и HALT P.S. Ну и чуть больше команд доступно в HALT:
|
08 Feb 2018 19:44 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Ну а я вот читаю - и вижу некоторые отличия:
_________________ iLavr
|
09 Feb 2018 02:26 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22587 Location: Silicon Valley
|
Безадресное чтение само по себе существует - независимо от режима HALT - например при старте таким образом читается SEL чтобы понять куда идти - при входе в HALT из SEL берётся часть вектора куда перескакивать - если там нули, то перескочит по адресу взятому из памяти по адресу #0078 (как в МК85)
|
09 Feb 2018 02:39 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
А как аппаратно из режима HALT CPU может залезть в память режима USER? Я вот думаю, что Монитор, видимо, надо разместить в адресном пространстве HALT CPU 1801ВМ2, но Монитор написан под 1801ВМ1, сможет ли он манипулировать памятью режима USER, или придется код править?
_________________ iLavr
|
09 Feb 2018 02:59 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22587 Location: Silicon Valley
|
А кстати как оно получает доступ к USER пространству то?
P.S. Всё - нашёл как:
|
09 Feb 2018 18:48 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22587 Location: Silicon Valley
|
В тех командах, что я скопипастил ранее, это:
MFUS $0011 R0 <- (R5)+ pop from the stack location pointed to by the Frame Pointer MTUS $0019 -(R5) <- R0 push to the stack location pointed to by the Frame Pointer
Соответственно код монитора придётся править, т.к. чтобы вылезти за пределы своего адресного пространства, оно использует трюк с косвенным обращением через спец.инструкции (видимо на шину адреса без SEL оно выдаётся при обработке этих команд)
|
09 Feb 2018 18:50 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Я вот думаю, как бы код Монитора НЕ править, а использовать с 1801ВМ2 так, как он работает с 1801ВМ1, тем более, что Монитор оказался действительно перемещаемый. Но задумался я вот о чем: а не вывалится ли 1801ВМ2 по случаю в этот самый режим HALT - а там ничего (никакого ПО) нет?
_________________ iLavr
|
10 Feb 2018 03:27 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22587 Location: Silicon Valley
|
Ну не подключай SEL как 16-й адресный сигнал - только и всего. Тогда адресные пространства USER и HALT будут совпадать...
|
10 Feb 2018 03:32 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Кстати, мы как-то все не обратили внимания на эту схему с микропроцессором КМ1801ВМ2( я лично из-за плохого качества графики схемы). Но схему можно увеличить, и тогда становится видно, что в ней весьма оригинальное схемотехническое решение есть. С 16-разрядным микропроцессором используется 8-битное ПЗУ с двумя защелками байт данных: Еще бы автор прошивочку 556РТ4 выложил, если есть такая возможность. А то что-то не очень понятно по схеме чем она управляет: надписи на входе в шину утрачены...
_________________ iLavr
|
10 Feb 2018 14:21 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22587 Location: Silicon Valley
|
Хм, интересный момент Кстати надписей там и нет - оно насквозь похоже проходит к резисторам И ответвления видно куда идут: D0 на сигнал RPLY D1 на вход OE этих двух регистров, защёлкнувших 2 байта с ПЗУ D2 на вход OE регистров, читающих с IN0...IN15 D3 на вход C регистров, выводящих OUT0...OUT15 и на триггер, который формирует OE для тех же регистров
|
10 Feb 2018 15:34 |
|
|
Mixa64
Doomed
Joined: 25 Aug 2009 07:02 Posts: 460 Location: Москва
|
Да, там в принципе из схемы все видно, прошивка не требуется. Стробируемый дешифратор, формирует RPLY, те самые стробы данных из буфера ПЗУ, из буфера IN и стробирует запись в буфер OUT. Упрощено до предела, дошло даже до того, что смешаны DIN и DOUT, т.е. все эти стробы возникают при активном одном из них. И задумка автора, похоже, была такая, что нет адресов, кроме ОЗУ, по которым возможно как чтение, так и запись. Из ПЗУ только чтение, из IN только чтение, в OUT только запись. Если не нарушать эти условия, то работать будет. Если записывать в IN или в ПЗУ, то будет конфликт на шине. Если прочитать из OUT, то туда что-то запишется, содержимое порушится. Для спец применений еще как бы с натяжечкой проходит такой финт, но в целом не очень-то.
|
11 Feb 2018 03:32 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Вобще-то RPLY вылезает на ЦПУ как раз из ПЗУ-ушки, и собственно, мне и интересно, как он там сформирован. Так что если Вам "прошивка не требуется", то я бы её с интересом посмотрел, как раз на повод формирования в ней RPLY... P.S. Гадать на кофейной гуще мы все умеем, и делать реверсы не привыкать, но иногда интересно посмотреть и оригинал, если есть на то возможность. P.P.S. Кстати, красивый финт, нигде такой не видел. Даже интересно - с 8086 такой трюк проскочит?
_________________ iLavr
|
11 Feb 2018 04:18 |
|
|
Who is online |
Users browsing this forum: No registered users and 31 guests |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot post attachments in this forum
|
|