User Tag List

Страница 1 из 7 12345 ... ПоследняяПоследняя
Показано с 1 по 10 из 73

Тема: Реверс инжиниринг БМК Электроники МС-1502

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    Регистрация
    29.05.2010
    Адрес
    Москва
    Сообщений
    218
    Спасибо Благодарностей отдано 
    77
    Спасибо Благодарностей получено 
    13
    Поблагодарили
    12 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Реверс инжиниринг БМК Электроники МС-1502

    Уважаемые участники форума, может быть кто-нибудь подскажет как лучше сделать реверс инжиниринг БМК Электроники МС-1502? Я имею ввиду где-нибудь заказать эту услугу, сам я не сумею. Больше всего меня интересует её видеоконтроллер. Дело в том, что видеоадаптер МС-1502 совместим на уровне программирования через порты с CGA. При этом корректно работают старые игры, в которых параметры развёртки меняются напрямую через порты. Но хочу заметить, что видеоадаптер МС-1502 (в отличии от оригинального CGA) тактируется частотами 8 МГц и 16 МГц (соответственно для среднего и высокого разрешения) и параметры строчной и кадровой развёрток соответствуют нашим стандартам (15625 Гц для строчной и чуть больше 50 Гц для кадровой). То есть параметры развёртки, заносимые через порты 3D4h и 3D5h, внутри БМК как-то корректируются и всё прекрасно работает. Мне было бы интересно знать, как именно это делается.
    Последний раз редактировалось SoftCat; 01.07.2024 в 01:07.

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #2

    Регистрация
    08.01.2012
    Адрес
    г.Винница, Украина
    Сообщений
    94
    Спасибо Благодарностей отдано 
    1
    Спасибо Благодарностей получено 
    21
    Поблагодарили
    16 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Если там БМК 1515ХМ1/2, то я б попросил совета у участников данной темы:
    https://zx-pk.ru/threads/30964-rever...2)/page56.html
    Они видеоконтроллер УКНЦ вскрыли

    Этот пользователь поблагодарил predatoralpha за это полезное сообщение:

    SoftCat(13.01.2025)

  4. #3

    Регистрация
    29.05.2010
    Адрес
    Москва
    Сообщений
    218
    Спасибо Благодарностей отдано 
    77
    Спасибо Благодарностей получено 
    13
    Поблагодарили
    12 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от predatoralpha Посмотреть сообщение
    Если там БМК 1515ХМ1/2, то я б попросил совета у участников данной темы:
    https://zx-pk.ru/threads/30964-rever...2)/page56.html
    Они видеоконтроллер УКНЦ вскрыли
    predatoralpha, спасибо за совет и за ссылку!
    Там 5 БМК: КР1545ХМ10009, КР1545ХМ10012, КР1545ХМ10015, КР1545ХМ10031, КР1545ХМ10042. Хорошо бы вскрыть их все, но в первую очередь формирователь видеосигнала -- КР1545ХМ10012.

  5. #4

    Регистрация
    08.01.2012
    Адрес
    г.Винница, Украина
    Сообщений
    94
    Спасибо Благодарностей отдано 
    1
    Спасибо Благодарностей получено 
    21
    Поблагодарили
    16 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Добрый день. Есть ли у Вас какой-то прогресс? Держите, пожалуйста, в курсе.

    Я честно говоря не уверен, что там можно свободно менять параметры настройки развертки, и почти уверен, что все делители там жестко зашиты, только - подстройка под разрешение 320/640
    Да и не особо было популярно колупаться у разработчиков игр в регистрах. Единственный трюк, который я знаю - єто изменение высоты символа до 2, что бы получить псевдографический режим 160х100х16, правда я знаю только одну такую игру - Pacman
    В остальном в CGA к регистрам обращались только для контроля обратного ходя луча что бы избежать снега в текстовом режиме, иногда позицию курсора меняли через регистры или номер текстовой страницы. Да и то старались использовать BIOS.
    В графике один из четырех цветов можно было менять. Но я не знаю, чтоб параметры развертки меняли через регистры.
    Мне тут интереснее другой момент. МС1502 откусывает 32К памяти для графики, а с CGA используется только 16К. Что-то подобное есть в Поиск-1, там железо не умеет выводить текст, поетому в текстовом режиме половина памяти 16К содержала графику 640х200х1 где был нарисован весь текстовый єкран. При изменении кода символа в видеопамяти вызывался NMI, и там програмно рисовался символ в нужной позиции. Также по прерыванию таймера рисовался мигающий текстовый курсор. Мне кажется что здесь реализована такая же схема, только вместо програмного NMI символ рисуется БМК. Особенно учитывая тот факт, что оба єти компьютера - киевская разработка.

  6. #5

    Регистрация
    29.05.2010
    Адрес
    Москва
    Сообщений
    218
    Спасибо Благодарностей отдано 
    77
    Спасибо Благодарностей получено 
    13
    Поблагодарили
    12 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от predatoralpha Посмотреть сообщение
    Добрый день. Есть ли у Вас какой-то прогресс? Держите, пожалуйста, в курсе.

    Я честно говоря не уверен, что там можно свободно менять параметры настройки развертки, и почти уверен, что все делители там жестко зашиты, только - подстройка под разрешение 320/640
    Да и не особо было популярно колупаться у разработчиков игр в регистрах. Единственный трюк, который я знаю - єто изменение высоты символа до 2, что бы получить псевдографический режим 160х100х16, правда я знаю только одну такую игру - Pacman
    В остальном в CGA к регистрам обращались только для контроля обратного ходя луча что бы избежать снега в текстовом режиме, иногда позицию курсора меняли через регистры или номер текстовой страницы. Да и то старались использовать BIOS.
    В графике один из четырех цветов можно было менять. Но я не знаю, чтоб параметры развертки меняли через регистры.
    Мне тут интереснее другой момент. МС1502 откусывает 32К памяти для графики, а с CGA используется только 16К. Что-то подобное есть в Поиск-1, там железо не умеет выводить текст, поетому в текстовом режиме половина памяти 16К содержала графику 640х200х1 где был нарисован весь текстовый єкран. При изменении кода символа в видеопамяти вызывался NMI, и там програмно рисовался символ в нужной позиции. Также по прерыванию таймера рисовался мигающий текстовый курсор. Мне кажется что здесь реализована такая же схема, только вместо програмного NMI символ рисуется БМК. Особенно учитывая тот факт, что оба єти компьютера - киевская разработка.
    Здравствуйте!
    Хорошо, я буду сообщать новости по этой теме здесь. Пока прогресса нет, но кое-что я знаю наверняка.
    1) На материнской плате МС1502 стоит один единственный кварц на 16 МГц и нет никаких PLL. То есть возможны только две пиксельные частоты: 16 МГц и 8 МГц (другие пиксельные частоты будут слишком далеки от стандартов CGA).

    2) В руководстве (лежит в открытом доступе) написано, что частота строчной развёртки -- 15625 Гц и частота кадровой развёртки -- 50 Гц. Следовательно, полный растр получается 1024x312 (или 512x312 для среднего разрешения).

    3) На МС1502 корректно работал невзломанный Digger, в котором все параметры развертки программируются через порты, а не через BIOS.

    4) На схеме (лежит в открытом доступе) прекрасно видно, что текстовые режимы реализованы полностью аппаратно. То есть там имеется ПЗУ знакогенератора и два "последовательно" соединённых 4-битных сдвиговых регистра.

    5) В руководстве написано и я сам проверял, что во всех текстовых и графических режимах в 2 раза больше видеостраниц, чем у стандартного CGA.

  7. #6

    Регистрация
    08.01.2012
    Адрес
    г.Винница, Украина
    Сообщений
    94
    Спасибо Благодарностей отдано 
    1
    Спасибо Благодарностей получено 
    21
    Поблагодарили
    16 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от SoftCat Посмотреть сообщение
    1) На материнской плате МС1502 стоит один единственный кварц на 16 МГц и нет никаких PLL. То есть возможны только две пиксельные частоты: 16 МГц и 8 МГц (другие пиксельные частоты будут слишком далеки от стандартов CGA).
    Да, похоже на то. У Спеки пиксельклок 7МГц, и 320 в него б не влезло видимую часть экрана, несмотря на широкий бордюр. На 8Мг уже появляется бордюр при 320, хотя не такой огромный как у Спеки.


    Цитата Сообщение от SoftCat Посмотреть сообщение
    3) На МС1502 корректно работал невзломанный Digger, в котором все параметры развертки программируются через порты, а не через BIOS.
    Я немного погуглил, нашел такое:
    As with vertical retrace, it is possible to work around the mode change by hacking. In DIGGER.COM search for the byte pattern BA D8 03 B0 02 EE and change it to B8 04 00 CD 10 90; in the program file I have here the pattern starts at offset 38F. The hack changes the mode register write to a call to INT 10h to set mode 4. It seems to work OK in my tests in DOSBox, but please reply with how you fare on your real system.
    Проблема здесь не в том, что он хитро программирует регистры, проблема в то, что переключив режим в графический через запись в порт, он ничего не меняет в регистрах EGA/VGA/Hercules, о которых он ничего не знает. И получается недоCGA графика, в которой часть регистров содержит настройки для режимов этих карт. Обычнй вызов INT10H это решает.
    Так что я считаю, что все делители у МС жестко зашиты в схему. На самом деле у КР1545ХМ1 не так много вентилей что б реализовывать дополнительные тригеры и логику. В 1515ХМ1 УКНЦ их втрое больше, но и там разработчики крутились как могли, реализуя нестандартные ячейки для тригеров с целью экономии ресурсов.

    Цитата Сообщение от SoftCat Посмотреть сообщение
    5) В руководстве написано и я сам проверял, что во всех текстовых и графических режимах в 2 раза больше видеостраниц, чем у стандартного CGA.
    Жаль что они не реализовали режимы Plantronics Colorplus 640х200х4 и 320х200х16, с 32К это было не сложно, а некоторые игры и бизнес программы использовали их.

    Если у Вас сейчас есть МС, то не могли б Вы попробывать на нем запустить игры с 160x100x16, те же Pacman и Moon Bugs, работают ли они?

  8. #7

    Регистрация
    15.09.2009
    Адрес
    SPb
    Сообщений
    7,301
    Спасибо Благодарностей отдано 
    260
    Спасибо Благодарностей получено 
    293
    Поблагодарили
    211 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    А все в курсе что была еще предшествующая модель (ПК88) на 3 БМК: КР1545ХМ10009, КР1545ХМ10031, КР1545ХМ10042. Может у кого-нибудь есть документация и схема?
    А была ещё последующая модель (Каштан), тоже на 5 БМК, но уже других: КР1545ХМ1047-1051 (именно так, уже один нолик).
    Последний раз редактировалось dk_spb; 18.03.2025 в 17:15.

    Этот пользователь поблагодарил dk_spb за это полезное сообщение:

    SoftCat(18.03.2025)

  9. #8

    Регистрация
    29.05.2010
    Адрес
    Москва
    Сообщений
    218
    Спасибо Благодарностей отдано 
    77
    Спасибо Благодарностей получено 
    13
    Поблагодарили
    12 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от dk_spb Посмотреть сообщение
    А все в курсе что была еще предшествующая модель (ПК88) на 3 БМК: КР1545ХМ10009, КР1545ХМ10031, КР1545ХМ10042. Может у кого-нибудь есть документация и схема?
    А была ещё последующая модель (Каштан), тоже на 5 БМК, но уже других: КР1545ХМ1047-1051 (именно так, уже один нолик).
    Да, я в курсе, но подробностей не знаю. А какие формирователи видеосигнала были у ПК88 и Каштана? У Каштана вроде бы даже видеоадаптер EGA? Есть ли какая-нибудь документация и схемы по Каштану?

  10. #9

    Регистрация
    15.09.2009
    Адрес
    SPb
    Сообщений
    7,301
    Спасибо Благодарностей отдано 
    260
    Спасибо Благодарностей получено 
    293
    Поблагодарили
    211 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от SoftCat Посмотреть сообщение
    У Каштана вроде бы даже видеоадаптер EGA?
    Вроде нет.
    oldpc.su/0/tt.mov

    >какие формирователи видеосигнала были у ПК88 и Каштана?
    По ПК 88 схему сам ищу. Всё таки три БМК ровно такие же. Хотя и отсутствуют как раз 012 - та что RGBI формировала.

    - - - Добавлено - - -

    Вот, кстати, у коллег на сайте музея вместе с фото ПК88:
    "В отличие от МС 1502, который построен на 5-ти БМК серии 1545 , у ПК 88 их всего 3 —​ КР1545ХМ1-0009 (генератор адреса видео ОЗУ), КР1545ХМ1-0031 (генератор синхросигналов), КР1545ХМ1-0042 (дешифратор адреса)."

    - - - Добавлено - - -

    КР1545ХМ1-0009 генератор адресов ОЗУ
    КР1545ХМ1-0012 формирователь видеосигнала
    КР1545ХМ1-0015 схема управления
    КР1545ХМ1-0031 синхрогенератор
    КР1545ХМ1-0042 дешифратор адреса
    Последний раз редактировалось dk_spb; 18.03.2025 в 17:35.

    Этот пользователь поблагодарил dk_spb за это полезное сообщение:

    SoftCat(18.03.2025)

  11. #10

    Регистрация
    29.05.2010
    Адрес
    Москва
    Сообщений
    218
    Спасибо Благодарностей отдано 
    77
    Спасибо Благодарностей получено 
    13
    Поблагодарили
    12 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от dk_spb Посмотреть сообщение
    Вроде нет.
    oldpc.su/0/tt.mov
    Да, действительно, шрифт CGA-шный. Я тут измерил линейкой кадр из видео с Каштаном и пришёл к выводу, что у него видеоадаптер похож на видеоадаптер МС1502. А именно: пиксельная частота 16 МГц, активный растр 768x270 и фактически используется 640x200 (как и на всех CGA).
    https://disk.yandex.ru/i/1EN8ydzATV4H2g

    Есть ещё вот такой скан листочка, на котором написано, что выпускался ещё Каштан-02 с объёмом ОЗУ 2 Мб и видеоадаптером EGA/VGA. Очевидно, что он уже не на ВМ88.
    https://disk.yandex.ru/i/YTRR-ugdadQV2Q
    Последний раз редактировалось SoftCat; 19.03.2025 в 00:29.

Страница 1 из 7 12345 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Реверс-инжиниринг Z80
    от Titus в разделе Программирование
    Ответов: 802
    Последнее: 22.05.2025, 13:19
  2. Ответов: 1739
    Последнее: 09.01.2025, 10:55
  3. Ответов: 32
    Последнее: 18.12.2024, 18:19
  4. Реверс-инжиниринг игры Boovie
    от Oleg N. Cher в разделе Программирование
    Ответов: 41
    Последнее: 09.01.2022, 23:07
  5. Реверс инжиниринг печатной платы
    от Filin в разделе Несортированное железо
    Ответов: 36
    Последнее: 11.03.2018, 22:46

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •