|
nedoPC.orgElectronics hobbyists community established in 2002 |
|
Загадки и странности родного Монитора РК
Author |
Message |
b2m
Devil
Joined: 26 May 2003 06:57 Posts: 873
|
Был вопрос, почему вызывается два раза. Ответ я дал: | | | | b2m wrote: Между двумя вызовами очищается экран и выводится строка "Радио-86РК". И вот представь, что первого вызова нет, т.е. нет регенерации. Вполне возможно, что пока очищается экран, ОЗУ регенерируется, поскольку адреса перебираются подряд. А вот в момент вывода строки этого нет. Я замерил, вывод строки примерно 9500 тактов, это примерно 5,3 мс, то есть не укладываемся в 2мс. То есть первый вызов необходим. Зачем тогда второй вызов? А затем, что пока мы очищали экран, там был мусор. Но ВГ-шка уже чего-то выводила и синхронизация вполне могла сбиться из-за служебных кодов в диапазоне F0-FF. Так что второй вызов тоже нужен, он задаёт правильную синхронизацию. | | | | |
Остальное всё лирика.
_________________Страничка эмулятора наших компьютеров
http://bashkiria-2m.narod.ru/
|
15 Mar 2021 05:24 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
| | | | b2m wrote: Был вопрос, почему вызывается два раза. Ответ я дал: | | | | b2m wrote: Между двумя вызовами очищается экран и выводится строка "Радио-86РК". И вот представь, что первого вызова нет, т.е. нет регенерации. Вполне возможно, что пока очищается экран, ОЗУ регенерируется, поскольку адреса перебираются подряд. А вот в момент вывода строки этого нет. Я замерил, вывод строки примерно 9500 тактов, это примерно 5,3 мс, то есть не укладываемся в 2мс. То есть первый вызов необходим. Зачем тогда второй вызов? А затем, что пока мы очищали экран, там был мусор. Но ВГ-шка уже чего-то выводила и синхронизация вполне могла сбиться из-за служебных кодов в диапазоне F0-FF. Так что второй вызов тоже нужен, он задаёт правильную синхронизацию. | | | | |
Остальное всё лирика. | | | | |
Ответ тут коллега Paguo-86PK сразу дал... а ты лишь поиграл в капитана Очевидность... аж 2 раза!
_________________ iLavr
|
15 Mar 2021 05:34 |
|
|
Alekcandr
Doomed
Joined: 01 Oct 2007 10:30 Posts: 665 Location: Ukraine
|
Я чего-то утратил мыслЬ между синхронизацией?, и дальнейшего потока мыслей. З.ы. напомню ? давайте подумайте? С чего так стабильно.
_________________Эмулятор OrionEXT:
http://www.orion-ext.narod.ru
|
15 Mar 2021 06:38 |
|
|
b2m
Devil
Joined: 26 May 2003 06:57 Posts: 873
|
А я лишь попытался дать более развёрнутый ответ. Могло ведь мне показаться, что вопрошающий ещё неудовлетворён ответом?
_________________Страничка эмулятора наших компьютеров
http://bashkiria-2m.narod.ru/
|
15 Mar 2021 06:59 |
|
|
Paguo-86PK
Maniac
Joined: 12 Apr 2011 20:43 Posts: 267 Location: Tashkent
|
| | | | Lavr wrote: Вот я тоже сначала так подумал, не глядя в код, а потом посмотрел, что " второй раз, если нужно выйти в монитор, но не надо очищать область монитора" эту подпрограмму как раз-таки не вызывают: | | | | Code: ... ;-------------------- Стек установлен на 76CFH LXI SP,NEWSP ;F83B 31 CF 76 ; установка стека ;-------------------- ВГ75 и ВТ57 настраивают и запускают в работу вывод на дисплей CALL MF82D ;F83E CD CE FA ; настройка CCRT и ПДП ;-------------------- Вся служебная область монитора заполняется 00H LXI H,ADVID ;F841 21 00 76 ; 7600H - начало служебной области LXI D,L765F ;F844 11 5F 76 ; 765FH = 00H 96 байт MVI C,00H ;F847 0E 00 ; служебные ячейки Монитора до 76CFH CALL CFILL ;F849 CD ED F9 ; заполнение HL-DE байтом C ;-------------------- Значение стека сохраняют, но читают косвенно как POP LXI H,NEWSP ;F84C 21 CF 76 SHLD BOXSP ;F84F 22 1C 76 ;-------------------- Вывод заставки с позиции 77C2H ScreenHOME - 1FH; LXI H,MFF5A ;F852 21 5A FF ;--- 1FH,'radio86-rk',00H CALL MF818 ;F855 CD 22 F9 ;--- Вывод на экран ASCII-Z строки HL CALL MF82D ;F858 CD CE FA ;--- Запуск индикации на экране ;-------------------- Установка верха доступного ОЗУ 75FFH LXI H,RAMHI ;F85B 21 FF 75 SHLD MEMHI ;F85E 22 31 76 ;-------------------- Установка констант чтения и записи на маг.ленту LXI H,C1D2A ;F861 21 2A 1D SHLD CONSR ;F864 22 2F 76 ... | | | | |
| | | | |
Вoт с этого у меня и началось вот тут! И я стал понимать, что могу переписать практически весь Монитор подобной оптимизацией, но сохранив практически полную совместимость со всем ПО. P.S.: Как настроение появится, начну переписывать код с FE01 до FF51, чтобы на 100% всё переписать. А то на 96% застрял…
|
15 Mar 2021 09:30 |
|
|
Who is online |
Users browsing this forum: No registered users and 9 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
|
|