nedoPC.org

Electronics hobbyists community established in 2002
Atom Feed | View unanswered posts | View active topics It is currently 19 Apr 2024 17:52



Reply to topic  [ 14 posts ] 
Апогей в Proteus 
Author Message
Fanat

Joined: 21 Feb 2017 06:54
Posts: 75
Location: Казань
Reply with quote
Попробовал собрать на РК86 схему дешифрации портов Апогея и подключил её ПЗУ и ЗГ - запустил его пока в Протеусе :
Attachment:
APO_1-photo.jpg
APO_1-photo.jpg [ 94.53 KiB | Viewed 1391 times ]
Attachment:
APO_3-photo.jpg
APO_3-photo.jpg [ 94.12 KiB | Viewed 1391 times ]

Предварительно все работает. ПЗУ АПОГЕЯ практически полностью повторяет ПЗУ оригинального РК86, за исключением настроек памяти, экранной области и портов специфических для Апогея. директива "U" не работает, нет перехода на "F000", есть 4 перехода на адреса второй ПЗУ 2Кб с "F000", но что там пока не понял.
Сохранены все стандартные точки входа в Монитор, думаю если использовать эти стандартные точки входа, РКашные программы будут работать без переделок, например у меня без проблем заработала моя программа загрузки каталога из РОМ диска
Attachment:
APO_5-photo.jpg
APO_5-photo.jpg [ 137.23 KiB | Viewed 1391 times ]


Думаю, если без переделок , только добавив выходы для цвета, как в Апогее и изменить настройки ВГ75 - РК сможет стать такой же цветной , как Апогей. все остальное полностью совпадает. осталось разобраться с 2 ПЗУ - похоже там есть какието тесты и ещё что то ?


14 Mar 2024 12:25
Profile
Fanat

Joined: 21 Feb 2017 06:54
Posts: 75
Location: Казань
Reply with quote
Продолжаю с Апогеем Ц
подключил РОМ диск - тоже аналогично как в РК86:
Attachment:
APO_6-photo.jpg
APO_6-photo.jpg [ 111.93 KiB | Viewed 1328 times ]

есть много игр :
Attachment:
APO_8-photo.jpg
APO_8-photo.jpg [ 121.85 KiB | Viewed 1328 times ]


И мой РК86 в Протеусе тоже стал ЦВЕТНЫМ !!!
Attachment:
RA86_15-photo.jpg
RA86_15-photo.jpg [ 87.14 KiB | Viewed 1328 times ]

правда в РК пришлось изменить вывод на экран - своя программа безжалостно обнуляет старший бит 7 при записи в экранную память и никакие атрибуты цвета не работают.
В дополнительном 2 ПЗУ есть список новых команд :
"J", "Z" "W" "H" "Q" "A" "B" "K" "V" "P"
"P" - это тесты памяти Апогея.
"V" похоже на запись данных на внешний РАМ диск, причем запись происходит командами EI DI - установка сброс выхода INTE процессора, который ктому же используется для переключения страниц ПЗУ знакогенератора


16 Mar 2024 06:58
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22543
Location: Silicon Valley
Reply with quote
Это ПЗУ от Апогея? V получается недокументированная директива? Надо её чтоли дизассемблировать...

_________________
:dj: https://mastodon.social/@Shaos


16 Mar 2024 13:27
Profile WWW
Fanat

Joined: 21 Feb 2017 06:54
Posts: 75
Location: Казань
Reply with quote
Искал в документации информацию про то как организован графический режим и нашел далеко в другой теме про эту директиву "V" - в документации - есть про неё тоже оказывается :
Attachment:
APO_127-GSSM.jpg
APO_127-GSSM.jpg [ 111.65 KiB | Viewed 1270 times ]



а про графический режим так ничего и не понятно.
Понял, что переключает знакогенератор на 2 половину - где знакоместа 4 ряда по 6 точек, и значит что бы заполнить экран надо выводить
не 25 а 50 строк по 64 символа, а для этого должна быть дополнительная экранная память ( ещё столько же ) а где она располагается и как определить когда она подключается - пока неясно ...


16 Mar 2024 14:17
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22543
Location: Silicon Valley
Reply with quote
А это из какой книжки? И что изображено на рисунке 10.2?...всё нашёл - это приложение 1, страница 65 - и вот текст программы на рис.10.1 со стр.66 и схема на рис.10.2 со стр.67:

Attachment:
Apogey-Appendix1-pages66-67.jpg
Apogey-Appendix1-pages66-67.jpg [ 206.41 KiB | Viewed 1221 times ]


Damir wrote:
а про графический режим так ничего и не понятно.
Понял, что переключает знакогенератор на 2 половину - где знакоместа 4 ряда по 6 точек, и значит что бы заполнить экран надо выводить
не 25 а 50 строк по 64 символа, а для этого должна быть дополнительная экранная память ( ещё столько же ) а где она располагается и как определить когда она подключается - пока неясно ...

Вот тут я приводил исходники демки от vinxru, использующей этот урезанный шрифт высотой 4 пиксела и соответствующий режим ВТ57/ВГ75:


_________________
:dj: https://mastodon.social/@Shaos


16 Mar 2024 20:52
Profile WWW
Fanat

Joined: 21 Feb 2017 06:54
Posts: 75
Location: Казань
Reply with quote
Т е ты говоришь что графический экран будет только в половину экрана, зато широкоэкранный !

но сместив экранную область в другие адреса можно выводить и на полный экран должно быть.?


17 Mar 2024 04:58
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22543
Location: Silicon Valley
Reply with quote
Damir wrote:
Т е ты говоришь что графический экран будет только в половину экрана, зато широкоэкранный !

но сместив экранную область в другие адреса можно выводить и на полный экран должно быть.?

Нет - ВГ75 максимум 64 строки умеет, а если символ высотой 4 пиксела, то это только 64x8=256 строк вместо обычных РК-шных 30x10=300 (плюс 1-2 строки на кадровый синхро-импульс) - т.е. это получается видеосигнал похожий на NTSC - около 60 Гц кадровой частоты и если монитор 4:3 то кадр будет растянут на эти 4:3 (не широкоэкранный) - широко только эмулятор Emu80 показывает (кстати там на скриншоте видно в нижней строке статуса написаны характеристики видеовыхлопа).

_________________
:dj: https://mastodon.social/@Shaos


17 Mar 2024 12:03
Profile WWW
Fanat

Joined: 21 Feb 2017 06:54
Posts: 75
Location: Казань
Reply with quote
Полный экран я имел ввиду стандартные РКашные 25 строк символьных высотой по 8 тв строк + 2 тв-строки для между строк . Но если они высотой по 4 тв-строки, то нам надо на полный экран выводить 50 строк, если без межстрочных промежутков то ещё 10 строк символов.
итого 60 строк высотой по 4 тв-строки = всего 240 тв-строк, ну или если 64 строки - то 256.
но это и информации о символах тоже в 2 раза больше, а экранная область имеет фиксированное расположение и обьем.
Т е в графическом режиме эта область меняется, а вот информация о том куда она смещается и на сколько - где в системной области это храниться? - вот что мне надо, что бы выводить на ЛЦД экран , но это скорее всего напрямую пишется в ДМА и ВГ75.

А эмуляторы да, в зависимости от программ показывают разные значения разрешения - 30х78, 50х78, есть и 64 х 78 ...ну и экранная картинка
скачет в пропорциях - то шире то квадрат.


17 Mar 2024 14:07
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22543
Location: Silicon Valley
Reply with quote
Смотри исходник vinxru под спойлером - там экран сдвинут в памяти вниз т.к. он больше:
Code:
VG75_ADDR = 0EF00h
VT57_ADDR = 0F000h
VIDEOMEM_ADDR = 08000h
VIDEOMEM_SIZE = 78*64
Напомню, что это Апогей, где ОЗУ распространяется вплоть до EAFF (EBFF?)

Приаттачиваю архив с бинарником (и исходником) на попробовать:


Attachments:
test192x103.zip [1.76 KiB]
Downloaded 10 times

_________________
:dj: https://mastodon.social/@Shaos
17 Mar 2024 14:36
Profile WWW
Fanat

Joined: 21 Feb 2017 06:54
Posts: 75
Location: Казань
Reply with quote
Почему то эмуляторы этот тест показывают по разному :
Attachment:
TestAPO_1.jpg
TestAPO_1.jpg [ 226.2 KiB | Viewed 1016 times ]

Первый ЕМУ80 - делит экран и меняет местами верх-низ, а второй В2В показывает правильно.

У Апогея адреса дешифрируются в ПЗУ и понять как используется ОЗУ без анализа прошивки этого ПЗУ невозможно.
не понятно как использовать область с EAF5 - EAFF, EB00-EBFF.


18 Mar 2024 04:58
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22543
Location: Silicon Valley
Reply with quote
Чтобы подобные программы работали как надо на Emu80 там в конце экрана нужно код F3 воткнуть

Прошивка ПЗУ дешифратора Апогея пролетала на зхпк:
Code:
00: 07 07 07 07 07 07 07 07 07 07 07 07 07 07 07 07
10: 07 07 07 07 07 07 07 07 07 07 07 07 07 07 07 07
20: 07 07 07 07 07 07 07 07 07 07 07 07 07 07 07 07
30: 07 07 07 07 07 07 07 07 07 07 07 07 07 07 07 07
40: 07 07 07 07 07 07 07 07 07 07 07 07 07 07 07 07
50: 07 07 07 07 07 07 07 07 07 07 07 07 07 07 07 07
60: 07 07 07 07 07 07 07 07 07 07 07 07 07 07 07 07
70: 07 07 07 07 07 07 07 07 07 07 07 07 07 07 07 07
80: 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06
90: 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06
A0: 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06
B0: 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06
C0: 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06
D0: 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06
E0: 06 06 06 06 06 06 06 06 06 06 06 06 05 04 03 02
F0: 01 01 01 01 01 01 01 01 00 00 00 00 00 00 00 00

_________________
:dj: https://mastodon.social/@Shaos


18 Mar 2024 08:11
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22543
Location: Silicon Valley
Reply with quote
Получается оно принимает решение с точностью до 256-байт:

00XX...7FXX -> 7 : первая половина ОЗУ
80XX...EBXX -> 6 : вторая половина ОЗУ
ECXX -> 5 : ВИ53
EDXX -> 4 : ВВ55 клавы
EEXX -> 3 : ВВ55 разъёма
EFXX -> 2 : ВГ75
F0XX...F7XX -> 1 : первая половина ПЗУ на чтение, ВТ57 на запись
F8XX...FFXX -> 0 : вторая половина ПЗУ

Выходит EB00-EBFF это ОЗУ

_________________
:dj: https://mastodon.social/@Shaos


18 Mar 2024 21:31
Profile WWW
Fanat

Joined: 21 Feb 2017 06:54
Posts: 75
Location: Казань
Reply with quote
У меня на дискретах тоже не так сложно получилось, и можно переключить Апогей/РК86, хотя почти все ркашные проги работают на Апогее, если не писать прямо в память и порты, а пользоваться стандартными точками Монитора :
Attachment:
CX_photo.jpg
CX_photo.jpg [ 136.16 KiB | Viewed 725 times ]


и графику получилось и своё немного попробовал добавить , но в мой протеусовский экран не все вмещается :
Attachment:
APO_GRAF_TST-COLORo.jpg
APO_GRAF_TST-COLORo.jpg [ 109.53 KiB | Viewed 725 times ]


22 Mar 2024 03:22
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22543
Location: Silicon Valley
Reply with quote
Damir wrote:
У меня на дискретах тоже не так сложно получилось, и можно переключить Апогей/РК86, хотя почти все ркашные проги работают на Апогее, если не писать прямо в память и порты, а пользоваться стандартными точками Монитора
Я 10 лет назад запланировал себе сделать гибрид РК/Микроша/Апогей - вроде даже на мелкой логике дешифратор не сильно тяжелый выходит (хотя на галке было бы сильно легче):

http://www.nedopc.org/forum/viewtopic.php?f=93&t=10581

_________________
:dj: https://mastodon.social/@Shaos


23 Mar 2024 21:04
Profile WWW
Display posts from previous:  Sort by  
Reply to topic   [ 14 posts ] 

Who is online

Users browsing this forum: No registered users and 18 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

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.