![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
SuperMax |
![]() ![]()
Сообщение
#1
|
![]() Администратор ![]() ![]() ![]() ![]() ![]() Группа: Root Admin Сообщений: 6 157 Регистрация: 7.1.2006 Из: Красноярск Пользователь №: 1 ![]() |
Прошивка 00001 тестовая
функционал: - отображение в VGA экрана БКшки, цветной режим - проверка работы STM32 должны отвечать регистры 177220-177226 (если читается только 177220 то значит Вы не вставили SD-карту с валидным набором образов - сейчас можно взять любой от ДВК/УКНЦ) - проверка работы ПЛИС должны отвечать регистры 177560-177566 - проверка работы SDRAM в байтовом режиме должна отвечать оперативная память в адресах 160000-167776, читается младший байт, его значения можно изменять - те сохраненные значения потом должны читаться ограничения:не пойдет на новоделе БК11М тк AZ нацелен отключить все ПЗУ, а эмуляция ПЗУ в замену еще не сделана Процедура обновления firmware (прошивки) контроллера прошивка нужна для: - диагностики компонентов - обучения процедуре обновления ![]() -------------------- Живы будем - Не помрем !
|
SuperMax |
![]()
Сообщение
#2
|
![]() Администратор ![]() ![]() ![]() ![]() ![]() Группа: Root Admin Сообщений: 6 157 Регистрация: 7.1.2006 Из: Красноярск Пользователь №: 1 ![]() |
Прошивка 00002
функционал: 1. палитры, сделано расширение функционала механизма палитр подробнее https://forum.maxiol.com/index.php?showtopic=5556 2. реализовано ручное переключение видеорежима (циклическое 1-2-3-4) по сочетанию AR2+KT те можно спокойно переключать его в зависимости от программы не напрягаясь! 3. сделан маппер памяти + разделение по сегментам: - область перехвата - те копия станиц оперативки - область эмуляции ROM - выделил 256КБ под всякие ПЗУ которые будут подключаться как в эмуляторе из меню - и вся остальная память 4. полный вывод VGA уже из SDRAM, переключение страниц [пока без новых режимов, но они уже заложены в архитектуру] 5. перехват переключения палитр БК11М - доступ к памяти палитр с шины, чтение+запись 6. Генератор псевдослучайных чисел - технически это LFSR длиной 128бит, младшие 16 в регистре доступном программно. сдвиг идет с частотой 50MHz (или 65Mhz-посмотрим) как следствие полностью новое слово доступно будет каждый такт 7. загрузка ПЗУ в память (пока реализовано но не используется) должны отвечать регистры AZ 177220-177226 дебаг 177100-177106 регистры палитр - уже можно экспериментировать 177234 - адрес ячейки палитры [9бит] 177236 - значение палитры [15бит] ограничения: пока еще не пойдет на новоделе БК11М тк AZ нацелен отключить все ПЗУ, а эмуляция ПЗУ в замену еще не включена как запускать - cпособ временный, костыльный: 177226G R0/0 160002G будет загружен и запущен первый образ с диска (согласно ini-файла) если в R0 занести не 0 а 1 то второй образ Процедура обновления firmware (прошивки) контроллера Прошивка ![]() Образ дисков для тестов ![]() -------------------- Живы будем - Не помрем !
|
SuperMax |
![]()
Сообщение
#3
|
![]() Администратор ![]() ![]() ![]() ![]() ![]() Группа: Root Admin Сообщений: 6 157 Регистрация: 7.1.2006 Из: Красноярск Пользователь №: 1 ![]() |
Прошивка 00003
функционал: 1. палитры, сделано расширение функционала механизма палитр подробнее https://forum.maxiol.com/index.php?showtopic=5556 2. реализовано ручное переключение видеорежима (циклическое 1-2-3-4) по сочетанию AR2+KT те можно спокойно переключать его в зависимости от программы не напрягаясь! 3. сделан маппер памяти + разделение по сегментам: - область перехвата - те копия станиц оперативки - область эмуляции ROM - выделил 256КБ под всякие ПЗУ которые будут подключаться как в эмуляторе из меню - и вся остальная память перехват запросов SMK сделан, но не включен 4. полный вывод VGA уже из SDRAM, переключение страниц [пока без новых режимов, но они уже заложены в архитектуру] 5. перехват переключения палитр БК11М - доступ к памяти палитр с шины, чтение+запись 6. Генератор псевдослучайных чисел - технически это LFSR длиной 128бит, младшие 16 в регистре доступном программно. сдвиг идет с частотой 130MHz как следствие полностью новое слово доступно будет каждый процессорный такт 7. загрузка ПЗУ в память полностью реализована 8. Реализовано распознавание новодела БК11М и подключение ПЗУ (надо оттестировать тк у меня нет новодела) должны отвечать регистры AZ 177220-177226 дебаг 177100-177106 регистры палитр - уже можно экспериментировать 177234 - адрес ячейки палитры [9бит] 177236 - значение палитры [15бит] маппер памяти 177300-342 загрузчик 177000 После reset машина стартует автоматически и загружается со второго образа в ini-файле (cейчас там ANDOS - ANSYS.IMG) Процедура обновления firmware (прошивки) контроллера Прошивка ![]() Образ ![]() поправил образ для реплики, теперь должно нормально запускаться (те проверено на БК с отключенной 324й) -------------------- Живы будем - Не помрем !
|
SuperMax |
![]()
Сообщение
#4
|
![]() Администратор ![]() ![]() ![]() ![]() ![]() Группа: Root Admin Сообщений: 6 157 Регистрация: 7.1.2006 Из: Красноярск Пользователь №: 1 ![]() |
Прошивка 00004
является небольшой коррекцией предыдущей функционал: 1. палитры, сделано расширение функционала механизма палитр подробнее https://forum.maxiol.com/index.php?showtopic=5556 2. реализовано ручное переключение видеорежима (циклическое 1-2-3-4) по сочетанию AR2+KT те можно спокойно переключать его в зависимости от программы не напрягаясь! 3. сделан маппер памяти + разделение по сегментам: - область перехвата - те копия станиц оперативки - область эмуляции ROM - выделил 256КБ под всякие ПЗУ которые будут подключаться как в эмуляторе из меню - и вся остальная память перехват запросов SMK сделан, но не включен 4. полный вывод VGA уже из SDRAM, переключение страниц [пока без новых режимов, но они уже заложены в архитектуру] 5. перехват переключения палитр БК11М - доступ к памяти палитр с шины, чтение+запись 6. Генератор псевдослучайных чисел - технически это LFSR длиной 128бит, младшие 16 в регистре доступном программно. сдвиг идет с частотой 130MHz как следствие полностью новое слово доступно будет каждый процессорный такт 7. загрузка ПЗУ в память полностью реализована 8. Реализовано распознавание новодела БК11М и подключение ПЗУ должны отвечать регистры AZ 177220-177226 дебаг 177100-177106 регистры палитр - уже можно экспериментировать 177234 - адрес ячейки палитры [9бит] 177236 - значение палитры [15бит] маппер памяти 177300-350 загрузчик 177000 После reset машина стартует автоматически и загружается со второго образа в ini-файле (cейчас там ANDOS - ANSYS.IMG) Изменения: - внесена коррекция в стартовую последовательность, теперь STM32 явно дожидается подъема RESET и только потом разрешает прерывания от RESET - снижена частота обмена с сетевой картой тк новая партия сетевух отказалась работать на SPI 21Mbit, соответственно скорость обмена с сетевой картой теперь 10.5Mbit - внесена коррекция в технологию синхронизации захвата строки при перегрузки из оперативки в буфер показа - стартовая ПЗУ со 170000 теперь определяет конфигурацию машины, сохраняет битовую маску занятых окон, различает БК10/11M и записывает тип машины в регистр. также проверяет соответствие аппаратной прошивке и при отличии версий, включает "сирену" явно обозначая проблему. ![]() ![]() Интересны результаты запуска на БК-0010-01 втч и новой где отключается монитор -------------------- Живы будем - Не помрем !
|
SuperMax |
![]()
Сообщение
#5
|
![]() Администратор ![]() ![]() ![]() ![]() ![]() Группа: Root Admin Сообщений: 6 157 Регистрация: 7.1.2006 Из: Красноярск Пользователь №: 1 ![]() |
Образ дисков для RT11 c исправленной ПЗУ
![]() RT11 корректно стартует и работает через штатный драйвер BY.SYS ( AZ.SYS еще надо поправить для совместимости с БК ) PS: встроенная оболочка интеркоммандер не понимает больших дисков (по 32МБ) их надо открывать через штатный фукнционал ОS RT11 - те DIR итд -------------------- Живы будем - Не помрем !
|
SuperMax |
![]()
Сообщение
#6
|
![]() Администратор ![]() ![]() ![]() ![]() ![]() Группа: Root Admin Сообщений: 6 157 Регистрация: 7.1.2006 Из: Красноярск Пользователь №: 1 ![]() |
Прошивка 00005
функционал: 1. палитры, сделано расширение функционала механизма палитр подробнее https://forum.maxiol.com/index.php?showtopic=5556 2. реализовано ручное переключение видеорежима (циклическое 1-2-3-4) по сочетанию AR2+KT те можно спокойно переключать его в зависимости от программы не напрягаясь! также режимы можно переключать через регистр 177230 младшие 2 бита - видеорежим (точнее интерпретация легаси-видеорежимов) 0 - монохром 512х256 1 - 4 цвета 256х256 2 - 16 цветов 128х256 3 - 256 цветов 64х256 3. Реализовано отображение информации в консоли контроллера дисковой подсистемы и сети - переключается по АР2+РУС соответственно выделена страница памяти под консоль 4. сделан маппер памяти + разделение по сегментам: - область перехвата - те копия станиц оперативки - область эмуляции ROM - выделил 256КБ под всякие ПЗУ которые будут подключаться как в эмуляторе из меню - и вся остальная память перехват запросов SMK сделан, но не включен 4. полный вывод VGA уже из SDRAM, переключение страниц [пока без новых режимов, но они уже заложены в архитектуру] 5. перехват переключения палитр БК11М - доступ к памяти палитр с шины, чтение+запись 6. Генератор псевдослучайных чисел - технически это LFSR длиной 128бит, младшие 16 в регистре доступном программно. сдвиг идет с частотой 130MHz как следствие полностью новое слово доступно будет каждый процессорный такт 7. загрузка ПЗУ в память полностью реализована 8. Реализовано распознавание новодела БК11М и подключение ПЗУ должны отвечать регистры AZ 177220-177226 дебаг 177100-177106 регистры палитр - уже можно экспериментировать 177230 - видеорежимы 177230 - видеорежимы 177234 - адрес ячейки палитры [9бит] 177236 - значение палитры [15бит] маппер памяти 177300-350 загрузчик 177000 177550 - генератор псевдослучайных чисел После reset машина стартует автоматически и загружается со первого образа в ini-файле (cейчас там ANDOS - ANSYS.IMG) Изменения: - консоль STM32 - управление видео режимами через 177230 - новое ПЗУ - AZBOOT.ROM ![]() Готовый образ c новым AZBOOT.ROM ![]() Если у Вас уже готовы свои образа, копируйте с этого раздел ROM в ini файле + все файлы в каталоге ROM эти части будут постоянно обновляться тк AZ требует полного соответствия версий прошивок -------------------- Живы будем - Не помрем !
|
SuperMax |
![]()
Сообщение
#7
|
![]() Администратор ![]() ![]() ![]() ![]() ![]() Группа: Root Admin Сообщений: 6 157 Регистрация: 7.1.2006 Из: Красноярск Пользователь №: 1 ![]() |
Обновление ПЗУ для версии 00005
обновление - включает сеть "на постоянку" - убирает радугу - исправляет ошибку автозапуска МКДОС/НОРД содержит 2 файла ПЗУ AZ337.ROM AZBOOT.ROM их необходимо скопировать в ROM на карточку а таже исправить строчку в AZ.INI на Код R08=0:/rom/AZ337.rom ![]() -------------------- Живы будем - Не помрем !
|
SuperMax |
![]()
Сообщение
#8
|
![]() Администратор ![]() ![]() ![]() ![]() ![]() Группа: Root Admin Сообщений: 6 157 Регистрация: 7.1.2006 Из: Красноярск Пользователь №: 1 ![]() |
Набор с 8ю дисками - игрушки
![]() последний диск АОДОС или что-то подобное (тк не нашел больше гровых дисков под андос столько) соответственно многофайловые игры надо запускать из под нее -------------------- Живы будем - Не помрем !
|
SuperMax |
![]()
Сообщение
#9
|
![]() Администратор ![]() ![]() ![]() ![]() ![]() Группа: Root Admin Сообщений: 6 157 Регистрация: 7.1.2006 Из: Красноярск Пользователь №: 1 ![]() |
Прошивка 00005_2 - обновление для поддержки 32х дисков
![]() Образ диска ![]() содержит уже новую версию ROM-ов см выше + поддержка 32х дисков в ПЗУ AZ337 -------------------- Живы будем - Не помрем !
|
SuperMax |
![]()
Сообщение
#10
|
![]() Администратор ![]() ![]() ![]() ![]() ![]() Группа: Root Admin Сообщений: 6 157 Регистрация: 7.1.2006 Из: Красноярск Пользователь №: 1 ![]() |
Комплект RT11 для БК
автоматическая загрузка идет с BY0: но на системном диске есть еще стандартны драйвер AZ.SYS через который можно корректно работать с образами большого размера - те больше чем дискета тк драйвер BY ориентирован только на дискету и не знает других размеров AZ.SYS поддерживает максимальные доступные для RT11 диски, а именно 32МБ ![]() -------------------- Живы будем - Не помрем !
|
SuperMax |
![]()
Сообщение
#11
|
![]() Администратор ![]() ![]() ![]() ![]() ![]() Группа: Root Admin Сообщений: 6 157 Регистрация: 7.1.2006 Из: Красноярск Пользователь №: 1 ![]() |
Прошивка 00006
жирным новое в прошивке функционал: 1. палитры, сделано расширение функционала механизма палитр подробнее https://forum.maxiol.com/index.php?showtopic=5556 2. реализовано ручное переключение видеорежима (циклическое 1-2-3-4) по сочетанию AR2+KT те можно спокойно переключать его в зависимости от программы не напрягаясь! также режимы можно переключать через регистр 177230 младшие 2 бита - видеорежим (точнее интерпретация легаси-видеорежимов) 0 - монохром 512х256 1 - 4 цвета 256х256 2 - 16 цветов 128х256 3 - 256 цветов 64х256 3. Реализовано отображение информации в консоли контроллера дисковой подсистемы и сети - переключается по АР2+РУС соответственно выделена страница памяти под консоль 4. сделан маппер памяти + разделение по сегментам: - область перехвата - те копия станиц оперативки - область эмуляции ROM - выделил 256КБ под всякие ПЗУ которые будут подключаться как в эмуляторе из меню - и вся остальная память перехват запросов SMK сделан, но не включен 4. полный вывод VGA уже из SDRAM, переключение страниц [пока без новых режимов, но они уже заложены в архитектуру] 5. Добавлен альтернативный легаси-режим который позволяет отображать любой участок памяти на экран включение - 15й бит регистра 177230 в 1 регистр 177232 - номер страницы памяти, кратный 4м - те с дискретностью 16кБ 6. перехват переключения палитр БК11М - доступ к памяти палитр с шины, чтение+запись исправлены ошибки перехвата при обращении к нечетным адресам 7. Генератор псевдослучайных чисел - технически это LFSR длиной 128бит, младшие 16 в регистре доступном программно. сдвиг идет с частотой 130MHz как следствие полностью новое слово доступно будет каждый процессорный такт 8. загрузка ПЗУ в память полностью реализована 9. Реализовано распознавание новодела БК11М и подключение ПЗУ 10. COVOX набор регистров доступных и по чтению и по записи 177200 - 16bit левый канал 177202 - 16bit правый канал 177204 - 16bit моно, иначе говоря запись в этот регистр приводит к фактической одновременной записи в регистры 177200 и 177202 177206 - 8bit стерео/mono, иначе говоря запись в этот регистр приводит к фактической одновременной записи в регистры 177200 и 177202 - в старший байт режимы stereo/momo определяются по байтовой записи те если писать слово в 177206 то это будет стерео а если писать младший байт в 177206 то данные будут трактоваться как моно запись в 177714 мультирежимная ибо у нас есть 2 варианта ковокса 1. моно 8bit - запись в младший байт 2. стерео 8bit - МЛБ - левый СТБ-правый переключать режимы через регистр 177212 соответственно запись в 177714 тоже приводит к фактической одновременной записи в 177200 и 177202 обеспечивая полную совместимость со старым софтом Регистр управления звуком - 177212 биты: 00 - легаси перехват ковокса в 177714: 0=моно 1=стерео 01 - =0 разрешен легаси перехват 177714 =1 запрещен 02 - =0 разрешен перехват 177716 =1 запрещен перехват спикера сделан 3х битный должны отвечать регистры SOUND 177200-177212 AZ 177220-177226 дебаг 177100-177106 регистры палитр - уже можно экспериментировать 177230 - видеорежимы 177232 - номер легаси страницы 177234 - адрес ячейки палитры [9бит] 177236 - значение палитры [15бит] маппер памяти 177300-350 загрузчик 177000 177550 - генератор псевдослучайных чисел После reset машина стартует автоматически и загружается со первого образа в ini-файле В архиве обновленное AZBOOT.ROM - не забудьте обновить AZBK_00006.hex без изменений относительно 5й версии, те надо обновить только прошивку ПЛИС ![]() Для проверки работы ковокса ![]() -------------------- Живы будем - Не помрем !
|
SuperMax |
![]()
Сообщение
#12
|
![]() Администратор ![]() ![]() ![]() ![]() ![]() Группа: Root Admin Сообщений: 6 157 Регистрация: 7.1.2006 Из: Красноярск Пользователь №: 1 ![]() |
Прошивка 00007
жирным новое в прошивке функционал: 1. палитры, сделано расширение функционала механизма палитр подробнее https://forum.maxiol.com/index.php?showtopic=5556 2. реализовано ручное переключение видеорежима (циклическое 1-2-3-4) по сочетанию AR2+KT те можно спокойно переключать его в зависимости от программы не напрягаясь! также режимы можно переключать через регистр 177230 младшие 2 бита - видеорежим (точнее интерпретация легаси-видеорежимов) 0 - монохром 512х256 1 - 4 цвета 256х256 2 - 16 цветов 128х256 3 - 256 цветов 64х256 3. Реализовано отображение информации в консоли контроллера дисковой подсистемы и сети - переключается по АР2+РУС соответственно выделена страница памяти под консоль 4. сделан маппер памяти + разделение по сегментам: - область перехвата - те копия станиц оперативки - область эмуляции ROM - выделил 256КБ под всякие ПЗУ которые будут подключаться как в эмуляторе из меню - и вся остальная память перехват запросов SMK сделан, но не включен 4. полный вывод VGA уже из SDRAM, переключение страниц [пока без новых режимов, но они уже заложены в архитектуру] 5. Добавлен альтернативный легаси-режим который позволяет отображать любой участок памяти на экран включение - 15й бит регистра 177230 в 1 регистр 177232 - номер страницы памяти, кратный 4м - те с дискретностью 16кБ 6. перехват переключения палитр БК11М - доступ к памяти палитр с шины, чтение+запись исправлены ошибки перехвата при обращении к нечетным адресам 7. Генератор псевдослучайных чисел - технически это LFSR длиной 128бит, младшие 16 в регистре доступном программно. сдвиг идет с частотой 130MHz как следствие полностью новое слово доступно будет каждый процессорный такт 8. загрузка ПЗУ в память полностью реализована 9. Реализовано распознавание новодела БК11М и подключение ПЗУ 10. COVOX набор регистров доступных и по чтению и по записи 177200 - 16bit левый канал 177202 - 16bit правый канал 177204 - 16bit моно, иначе говоря запись в этот регистр приводит к фактической одновременной записи в регистры 177200 и 177202 177206 - 8bit стерео/mono, иначе говоря запись в этот регистр приводит к фактической одновременной записи в регистры 177200 и 177202 - в старший байт режимы stereo/momo определяются по байтовой записи те если писать слово в 177206 то это будет стерео а если писать младший байт в 177206 то данные будут трактоваться как моно запись в 177714 мультирежимная ибо у нас есть 2 варианта ковокса 1. моно 8bit - запись в младший байт 2. стерео 8bit - МЛБ - левый СТБ-правый переключать режимы через регистр 177212 соответственно запись в 177714 тоже приводит к фактической одновременной записи в 177200 и 177202 обеспечивая полную совместимость со старым софтом Регистр управления звуком - 177212 биты: 00 - легаси перехват ковокса в 177714: 0=моно 1=стерео 01 - =0 разрешен легаси перехват 177714 =1 запрещен 02 - =0 разрешен перехват 177716 =1 запрещен перехват спикера сделан 3х битный 11. DMA контроллер звука 177160 - регистр управления регистр скорости чтения , режима интерпретации данных (8/16 моно стерео), повтора 00 - старт =1 старт 01 - =1 однократный запуск =0 циклический , при этом надо записать =0 в 3й бит при циклическом запуске, запись 1цы даст останов после завершения цикла, с установкой в =1 бита3 02 - =1 принудительная остановка до завершения цикла 03 - на чтение =1 однократный запуск завершился, в начале сбрасывается на ноль, запись =1 не влияет на процесс 04 - =1 потоковое воспроизведение с подкачкой данных, актуально для IMA_ADPCM в этом режиме на стадии начала цикла не происходит сброса начальных кодов декодирования ADPCM 06-07-08 - скорость выдачи наружу поддерживаемые скорости 0 - 44100 09-10-11 - режим интерпретации 09 - =0 моно =1 стерео 11 - =0 PCM =1 IMA_ADPCM поддерживаемые режимы: 000-0 PCM 16 mono 100-4 IMA ADPCM DECODER mono 101-5 IMA ADPCM DECODER stereo 177162 - регистр адреса страницы с которой будем читать с дискретностью 10000 (4кБ) 177164 - старшая часть длины - 8бит 177166 - младшая часть длины - 16бит 177170 - номер текущей страницы воспроизведения данные с DMA пойдут напрямую на микшер отдельным каналом должны отвечать регистры SOUND 177160-177170 177200-177212 AZ 177220-177226 дебаг 177100-177106 регистры палитр - уже можно экспериментировать 177230 - видеорежимы 177232 - номер легаси страницы 177234 - адрес ячейки палитры [9бит] 177236 - значение палитры [15бит] маппер памяти 177300-350 загрузчик 177000 177550 - генератор псевдослучайных чисел После reset машина стартует автоматически и загружается со первого образа в ini-файле В архиве обновленное AZBOOT.ROM - не забудьте обновить AZBK_00007.hex без изменений относительно 5й версии, те надо обновить только прошивку ПЛИС ![]() Для проверки работы DMA-контроллера - комплект дисков и плееры ![]() подробнее про воспроизведение IMA ADPCM в этой теме -------------------- Живы будем - Не помрем !
|
SuperMax |
![]()
Сообщение
#13
|
![]() Администратор ![]() ![]() ![]() ![]() ![]() Группа: Root Admin Сообщений: 6 157 Регистрация: 7.1.2006 Из: Красноярск Пользователь №: 1 ![]() |
Прошивка 00008
жирным новое в прошивке функционал: 1. палитры, сделано расширение функционала механизма палитр подробнее https://forum.maxiol.com/index.php?showtopic=5556 2. реализовано ручное переключение видеорежима (циклическое 1-2-3-4) по сочетанию AR2+KT те можно спокойно переключать его в зависимости от программы не напрягаясь! также режимы можно переключать через регистр 177230 младшие 2 бита - видеорежим (точнее интерпретация легаси-видеорежимов) 0 - монохром 512х256 1 - 4 цвета 256х256 2 - 16 цветов 128х256 3 - 256 цветов 64х256 3. Реализовано отображение информации в консоли контроллера дисковой подсистемы и сети - переключается по АР2+РУС соответственно выделена страница памяти под консоль 4. сделан маппер памяти + разделение по сегментам: - область перехвата - те копия станиц оперативки - область эмуляции ROM - выделил 256КБ под всякие ПЗУ которые будут подключаться как в эмуляторе из меню - и вся остальная память перехват запросов SMK сделан, но не включен 4. полный вывод VGA уже из SDRAM, переключение страниц [пока без новых режимов, но они уже заложены в архитектуру] 5. Добавлен альтернативный легаси-режим который позволяет отображать любой участок памяти на экран включение - 15й бит регистра 177230 в 1 регистр 177232 - номер страницы памяти, кратный 4м - те с дискретностью 16кБ 6. перехват переключения палитр БК11М - доступ к памяти палитр с шины, чтение+запись исправлены ошибки перехвата при обращении к нечетным адресам 7. Генератор псевдослучайных чисел - технически это LFSR длиной 128бит, младшие 16 в регистре доступном программно. сдвиг идет с частотой 130MHz как следствие полностью новое слово доступно будет каждый процессорный такт 8. загрузка ПЗУ в память полностью реализована 9. Реализовано распознавание новодела БК11М и подключение ПЗУ 10. COVOX набор регистров доступных и по чтению и по записи 177200 - 16bit левый канал 177202 - 16bit правый канал 177204 - 16bit моно, иначе говоря запись в этот регистр приводит к фактической одновременной записи в регистры 177200 и 177202 177206 - 8bit стерео/mono, иначе говоря запись в этот регистр приводит к фактической одновременной записи в регистры 177200 и 177202 - в старший байт режимы stereo/momo определяются по байтовой записи те если писать слово в 177206 то это будет стерео а если писать младший байт в 177206 то данные будут трактоваться как моно запись в 177714 мультирежимная ибо у нас есть 2 варианта ковокса 1. моно 8bit - запись в младший байт 2. стерео 8bit - МЛБ - левый СТБ-правый переключать режимы через регистр 177212 соответственно запись в 177714 тоже приводит к фактической одновременной записи в 177200 и 177202 обеспечивая полную совместимость со старым софтом Регистр управления звуком - 177212 биты: 00 - легаси перехват ковокса в 177714: 0=моно 1=стерео 01 - =0 разрешен легаси перехват 177714 =1 запрещен 02 - =0 разрешен перехват 177716 =1 запрещен перехват спикера сделан 3х битный 11. DMA контроллер звука 177160 - регистр управления регистр скорости чтения , режима интерпретации данных (8/16 моно стерео), повтора 00 - старт =1 старт 01 - =1 однократный запуск =0 циклический , при этом надо записать =0 в 3й бит при циклическом запуске, запись 1цы даст останов после завершения цикла, с установкой в =1 бита3 02 - =1 принудительная остановка до завершения цикла 03 - на чтение =1 однократный запуск завершился, в начале сбрасывается на ноль, запись =1 не влияет на процесс 04 - =1 потоковое воспроизведение с подкачкой данных, актуально для IMA_ADPCM в этом режиме на стадии начала цикла не происходит сброса начальных кодов декодирования ADPCM 06-07-08 - скорость выдачи наружу поддерживаемые скорости 0 - 44100 09-10-11 - режим интерпретации 09 - =0 моно =1 стерео 11 - =0 PCM =1 IMA_ADPCM поддерживаемые режимы: 000-0 PCM 16 mono 100-4 IMA ADPCM DECODER mono 101-5 IMA ADPCM DECODER stereo 177162 - регистр адреса страницы с которой будем читать с дискретностью 10000 (4кБ) 177164 - старшая часть длины - 8бит 177166 - младшая часть длины - 16бит 177170 - номер текущей страницы воспроизведения данные с DMA пойдут напрямую на микшер отдельным каналом 12. Legacy AY через 177714 работает автоопределение источника звука - или ковокс или AY должны отвечать регистры SOUND 177160-177170 177200-177212 AZ 177220-177226 дебаг 177100-177106 регистры палитр - уже можно экспериментировать 177230 - видеорежимы 177232 - номер легаси страницы 177234 - адрес ячейки палитры [9бит] 177236 - значение палитры [15бит] маппер памяти 177300-350 загрузчик 177000 177550 - генератор псевдослучайных чисел После reset машина стартует автоматически и загружается со первого образа в ini-файле В архиве обновленное AZBOOT.ROM - не забудьте обновить AZBK_00008.hex без изменений относительно 5й версии, те надо обновить только прошивку ПЛИС ![]() Образ с музыкой AY ![]() -------------------- Живы будем - Не помрем !
|
SuperMax |
![]()
Сообщение
#14
|
![]() Администратор ![]() ![]() ![]() ![]() ![]() Группа: Root Admin Сообщений: 6 157 Регистрация: 7.1.2006 Из: Красноярск Пользователь №: 1 ![]() |
Сделал поддержку БК-0010-01
проверено на БК-0010-01 с пленкой ![]() игрушки от 10ки запускаются андос грузится единственное, включается 15ая палитра от 11М это пока не учтено, но записано в беклог -------------------- Живы будем - Не помрем !
|
SuperMax |
![]() ![]()
Сообщение
#15
|
![]() Администратор ![]() ![]() ![]() ![]() ![]() Группа: Root Admin Сообщений: 6 157 Регистрация: 7.1.2006 Из: Красноярск Пользователь №: 1 ![]() |
Прошивка 00009
жирным новое (или измененное) в прошивке функционал: 1. палитры, сделано расширение функционала механизма палитр подробнее https://forum.maxiol.com/index.php?showtopic=5556 2. реализовано ручное переключение видеорежима (циклическое 1-2) по сочетанию AR2+KT те можно спокойно переключать его в зависимости от программы не напрягаясь! 3. Реализовано отображение информации в консоли контроллера дисковой подсистемы и сети - переключается по АР2+РУС соответственно выделена страница памяти под консоль 4. сделан маппер памяти + разделение по сегментам: - область перехвата - те копия станиц оперативки - область эмуляции ROM - выделил 256КБ под всякие ПЗУ которые будут подключаться как в эмуляторе из меню - и вся остальная память перехват запросов SMK сделан, но не включен 4. полный вывод VGA уже из SDRAM, переключение страниц [пока без новых режимов, но они уже заложены в архитектуру] 5. Переделано 6. перехват переключения палитр БК11М - доступ к памяти палитр с шины, чтение+запись исправлены ошибки перехвата при обращении к нечетным адресам 7. Генератор псевдослучайных чисел - технически это LFSR длиной 128бит, младшие 16 в регистре доступном программно. сдвиг идет с частотой 130MHz как следствие полностью новое слово доступно будет каждый процессорный такт 8. загрузка ПЗУ в память полностью реализована 9. Реализовано распознавание новодела БК11М и подключение ПЗУ 10. COVOX набор регистров доступных и по чтению и по записи 177200 - 16bit левый канал 177202 - 16bit правый канал 177204 - 16bit моно, иначе говоря запись в этот регистр приводит к фактической одновременной записи в регистры 177200 и 177202 177206 - 8bit стерео/mono, иначе говоря запись в этот регистр приводит к фактической одновременной записи в регистры 177200 и 177202 - в старший байт режимы stereo/momo определяются по байтовой записи те если писать слово в 177206 то это будет стерео а если писать младший байт в 177206 то данные будут трактоваться как моно запись в 177714 мультирежимная ибо у нас есть 2 варианта ковокса 1. моно 8bit - запись в младший байт 2. стерео 8bit - МЛБ - левый СТБ-правый переключать режимы через регистр 177212 соответственно запись в 177714 тоже приводит к фактической одновременной записи в 177200 и 177202 обеспечивая полную совместимость со старым софтом Регистр управления звуком - 177212 биты: 00 - легаси перехват ковокса в 177714: 0=моно 1=стерео 01 - =0 разрешен легаси перехват 177714 =1 запрещен 02 - =0 разрешен перехват 177716 =1 запрещен перехват спикера сделан 3х битный 11. DMA контроллер звука 177160 - регистр управления регистр скорости чтения , режима интерпретации данных (8/16 моно стерео), повтора 00 - старт =1 старт 01 - =1 однократный запуск =0 циклический , при этом надо записать =0 в 3й бит при циклическом запуске, запись 1цы даст останов после завершения цикла, с установкой в =1 бита3 02 - =1 принудительная остановка до завершения цикла 03 - на чтение =1 однократный запуск завершился, в начале сбрасывается на ноль, запись =1 не влияет на процесс 04 - =1 потоковое воспроизведение с подкачкой данных, актуально для IMA_ADPCM в этом режиме на стадии начала цикла не происходит сброса начальных кодов декодирования ADPCM 06-07-08 - скорость выдачи наружу поддерживаемые скорости 0 - 44100 09-10-11 - режим интерпретации 09 - =0 моно =1 стерео 11 - =0 PCM =1 IMA_ADPCM поддерживаемые режимы: 000-0 PCM 16 mono 100-4 IMA ADPCM DECODER mono 101-5 IMA ADPCM DECODER stereo 177162 - регистр адреса страницы с которой будем читать с дискретностью 10000 (4кБ) 177164 - старшая часть длины - 8бит 177166 - младшая часть длины - 16бит 177170 - номер текущей страницы воспроизведения данные с DMA пойдут напрямую на микшер отдельным каналом 12. Legacy AY через 177714 работает автоопределение источника звука - или ковокс или AY 13. Сделан UART адреса стандартные 177560 - регистр статуса приемника 177562 - регистр управления + регистр принятых данных 177564 - регистр статуса передатчика 177566 - регистр данных на передачу 177560 - регистр статуса приемника бит 7 - флаг наличия данных: единица означает наличие принятых данных в регистре 177562 после чтения 177562 - флаг будет сброшен регистр доступен на чтение запись игнорируется, ошибки не взывает 177562 - по чтению - младший байт содержит принятые данные - по записи - слово определяющее скорость, подробности ниже дефолтное значение 32346(8) что соответствует стандартной скорости в 9600бод 177564 - регистр статуса передачика бит 7 - флаг успешной передачи данных: единица означает что байт из регистра 177566 успешно передан в линию после записи в 177566 - флаг будет сброшен тк начнется передача регистр доступен на чтение запись игнорируется, ошибки не взывает 177566 - регистр данных на передачу, используется младший байт, доступен на чтение и запись после записи начинается передача в линию Слово определяющее скорость - доступно только по записи детальное описание UART в AZБК 14. Сделан конструктор видеорежимов 177230 - регистр управления 177232 - регистр номера страницы начала отображения 177230, далее пойдут биты с описанием 1;0 - режим цветовой интерпретации 4;3 - длина строки в словах 7;6 - растяжение по горизонтали - те количество повторов у точки 10;9 - количество повторов строк 15;12 - длина рулона в словах теперь подробно режим цветовой интерпретации, значение от 0 до 3 0 - 1 бит на цвет - 2 цвета 1 - 2 бита на цвет - 4 цвета 2 - 4 бита на цвет - 16 цветов 3 - 8 бит на цвет - 256 цветов длина строки в словах 0 - 32 слова 1 - 64 2 - 128 3 - 256 это значение должно соответствовать вашему режиму - иначе будут повторы или пропуски данных расчет прост - к примеру мы выбрали 512х384х16 цветов считаем 512точек х 4 бита = 2048бит /16 = 128 слов растяжение по горизонтали - те количество повторов у точки 0 - х1 - те 1024 точки в строке 1 - х2 - 512 2 - х3 - 256 3 - х4 - 128 количество повторов строк 0 - х1 - 768 строк 1 - х2 - 384 2 - х3 - 256 3 - х4 - 192 длина рулона в словах 0 6144 1 8192 2 12288 3 16384 4 24576 5 32768 6 49152 7 65536 8 98304 9 131072 10 196608 11 262144 длина дает информацию контроллеру для корректной работы вертикального скролинга и важный момент - длина рулона может быть БОЛЬШЕ чем экран иначе говоря можно объявить экран в 32кБ (к примеру 256х256х16цветов ) а рулон выбрать в 64кБ, что позволит осуществлять формирование того что выйдет на экран ЗА его пределами ДО его вывода рулоном типовые видеорежимы (значение восьмеричные) 012201 - 256х256х4цвета (экран 16кБ) 012100 - 512х256х2цвета (экран 16кБ) 032212 - 256х256х16цветов (экран 32кБ) регистр 177232 - адрес страницы начала отображения те можно начинать отображение с любой страницы в памяти Важно! видеорежимы в состоянии "beta" те я не провел полного тестирования должны отвечать регистры SOUND 177160-177170 177200-177212 AZ 177220-177226 дебаг 177100-177106 регистры палитр - уже можно экспериментировать 177230 - видеорежимы 177232 - номер легаси страницы 177234 - адрес ячейки палитры [9бит] 177236 - значение палитры [15бит] маппер памяти 177300-350 загрузчик 177000 177550 - генератор псевдослучайных чисел 177560-177566 - UART После reset машина стартует автоматически и загружается со первого образа в ini-файле В архиве обновленное AZBOOT.ROM - не забудьте обновить также утилита VGAMON.SAV для RT11 которая переключает в режим mono 512x256 AZBK_00009.hex без изменений относительно 5й версии, те надо обновить только прошивку ПЛИС ![]() RT11 + IMA player ![]() -------------------- Живы будем - Не помрем !
|
SuperMax |
![]()
Сообщение
#16
|
![]() Администратор ![]() ![]() ![]() ![]() ![]() Группа: Root Admin Сообщений: 6 157 Регистрация: 7.1.2006 Из: Красноярск Пользователь №: 1 ![]() |
Прошивка 00010
жирным новое (или измененное) в прошивке функционал: 1. палитры, сделано расширение функционала механизма палитр подробнее https://forum.maxiol.com/index.php?showtopic=5556 2. реализовано ручное переключение видеорежима (циклическое 1-2) по сочетанию AR2+KT те можно спокойно переключать его в зависимости от программы не напрягаясь! 3. Реализовано отображение информации в консоли контроллера дисковой подсистемы и сети - переключается по АР2+РУС соответственно выделена страница памяти под консоль 4. сделан маппер памяти + разделение по сегментам: - область перехвата - те копия станиц оперативки - область эмуляции ROM - выделил 256КБ под всякие ПЗУ которые будут подключаться как в эмуляторе из меню - и вся остальная память перехват запросов SMK сделан, но не включен 4. полный вывод VGA уже из SDRAM, переключение страниц [пока без новых режимов, но они уже заложены в архитектуру] 5. Переделано 6. перехват переключения палитр БК11М - доступ к памяти палитр с шины, чтение+запись исправлены ошибки перехвата при обращении к нечетным адресам 7. Генератор псевдослучайных чисел - технически это LFSR длиной 128бит, младшие 16 в регистре доступном программно. сдвиг идет с частотой 65MHz как следствие полностью новое слово доступно будет каждый процессорный такт 8. загрузка ПЗУ в память полностью реализована 9. Реализовано распознавание новодела БК11М и подключение ПЗУ 10. COVOX набор регистров доступных и по чтению и по записи 177200 - 16bit левый канал 177202 - 16bit правый канал 177204 - 16bit моно, иначе говоря запись в этот регистр приводит к фактической одновременной записи в регистры 177200 и 177202 177206 - 8bit стерео/mono, иначе говоря запись в этот регистр приводит к фактической одновременной записи в регистры 177200 и 177202 - в старший байт режимы stereo/momo определяются по байтовой записи те если писать слово в 177206 то это будет стерео а если писать младший байт в 177206 то данные будут трактоваться как моно запись в 177714 мультирежимная ибо у нас есть 2 варианта ковокса 1. моно 8bit - запись в младший байт 2. стерео 8bit - МЛБ - левый СТБ-правый переключать режимы через регистр 177212 соответственно запись в 177714 тоже приводит к фактической одновременной записи в 177200 и 177202 обеспечивая полную совместимость со старым софтом Регистр управления звуком - 177212 биты: 00 - легаси перехват ковокса в 177714: 0=моно 1=стерео 01 - =0 разрешен легаси перехват 177714 =1 запрещен 02 - =0 разрешен перехват 177716 =1 запрещен перехват спикера сделан 3х битный 03 - =0 YM2149 =1 AY8910 тип эмуляции PSG 11. DMA контроллер звука 177160 - регистр управления регистр скорости чтения , режима интерпретации данных (8/16 моно стерео), повтора 00 - старт =1 старт 01 - =1 однократный запуск =0 циклический , при этом надо записать =0 в 3й бит при циклическом запуске, запись 1цы даст останов после завершения цикла, с установкой в =1 бита3 02 - =1 принудительная остановка до завершения цикла 03 - на чтение =1 однократный запуск завершился, в начале сбрасывается на ноль, запись =1 не влияет на процесс 04 - =1 потоковое воспроизведение с подкачкой данных, актуально для IMA_ADPCM в этом режиме на стадии начала цикла не происходит сброса начальных кодов декодирования ADPCM 06-07-08 - скорость выдачи наружу поддерживаемые скорости 0 - 44100 09-10-11 - режим интерпретации 09 - =0 моно =1 стерео 11 - =0 PCM =1 IMA_ADPCM поддерживаемые режимы: 000-0 PCM 16 mono 100-4 IMA ADPCM DECODER mono 101-5 IMA ADPCM DECODER stereo 177162 - регистр адреса страницы с которой будем читать с дискретностью 10000 (4кБ) 177164 - старшая часть длины - 8бит 177166 - младшая часть длины - 16бит 177170 - номер текущей страницы воспроизведения данные с DMA пойдут напрямую на микшер отдельным каналом 12. Legacy AY через 177714 работает автоопределение источника звука - или ковокс или AY 13. Сделан UART - изменена базовая частота - теперь это не 130MHz а 65MHz адреса стандартные 177560 - регистр статуса приемника 177562 - регистр управления + регистр принятых данных 177564 - регистр статуса передатчика 177566 - регистр данных на передачу 177560 - регистр статуса приемника бит 7 - флаг наличия данных: единица означает наличие принятых данных в регистре 177562 после чтения 177562 - флаг будет сброшен регистр доступен на чтение запись игнорируется, ошибки не взывает 177562 - по чтению - младший байт содержит принятые данные - по записи - слово определяющее скорость, подробности ниже дефолтное значение 32346(8) что соответствует стандартной скорости в 9600бод 177564 - регистр статуса передачика бит 7 - флаг успешной передачи данных: единица означает что байт из регистра 177566 успешно передан в линию после записи в 177566 - флаг будет сброшен тк начнется передача регистр доступен на чтение запись игнорируется, ошибки не взывает 177566 - регистр данных на передачу, используется младший байт, доступен на чтение и запись после записи начинается передача в линию Слово определяющее скорость - доступно только по записи детальное описание UART в AZБК 14. Сделан конструктор видеорежимов 177230 - регистр управления 177232 - регистр номера страницы начала отображения 177230, далее пойдут биты с описанием 1;0 - режим цветовой интерпретации 4;3 - длина строки в словах 7;6 - растяжение по горизонтали - те количество повторов у точки 10;9 - количество повторов строк 15;12 - длина рулона в словах теперь подробно режим цветовой интерпретации, значение от 0 до 3 0 - 1 бит на цвет - 2 цвета 1 - 2 бита на цвет - 4 цвета 2 - 4 бита на цвет - 16 цветов 3 - 8 бит на цвет - 256 цветов длина строки в словах 0 - 32 слова 1 - 64 2 - 128 3 - 256 это значение должно соответствовать вашему режиму - иначе будут повторы или пропуски данных расчет прост - к примеру мы выбрали 512х384х16 цветов считаем 512точек х 4 бита = 2048бит /16 = 128 слов растяжение по горизонтали - те количество повторов у точки 0 - х1 - те 1024 точки в строке 1 - х2 - 512 2 - х3 - 256 3 - х4 - 128 количество повторов строк 0 - х1 - 768 строк 1 - х2 - 384 2 - х3 - 256 3 - х4 - 192 длина рулона в словах 0 6144 1 8192 2 12288 3 16384 4 24576 5 32768 6 49152 7 65536 8 98304 9 131072 10 196608 11 262144 длина дает информацию контроллеру для корректной работы вертикального скролинга и важный момент - длина рулона может быть БОЛЬШЕ чем экран иначе говоря можно объявить экран в 32кБ (к примеру 256х256х16цветов ) а рулон выбрать в 64кБ, что позволит осуществлять формирование того что выйдет на экран ЗА его пределами ДО его вывода рулоном типовые видеорежимы (значение восьмеричные) 012201 - 256х256х4цвета (экран 16кБ) 012100 - 512х256х2цвета (экран 16кБ) 032212 - 256х256х16цветов (экран 32кБ) регистр 177232 - адрес страницы начала отображения те можно начинать отображение с любой страницы в памяти Важно! видеорежимы в состоянии "beta" те я не провел полного тестирования 15. Добавлена эмуляция 2xAY сложение каналов по форумуле R=A1+A2+B1+B2 L=C1+C2+B1+B2 Прямая доступность регистров на шине, а именно доступны байтовые регистры 177172 - адрес AY1 177173 - данные AY1 177174 - адрес AY2 177175 - данные AY2 должны отвечать регистры SOUND 177160-177174 177200-177212 AZ 177220-177226 дебаг 177100-177106 регистры палитр - уже можно экспериментировать 177230 - видеорежимы 177232 - номер легаси страницы 177234 - адрес ячейки палитры [9бит] 177236 - значение палитры [15бит] маппер памяти 177300-350 загрузчик 177000 177550 - генератор псевдослучайных чисел 177560-177566 - UART После reset машина стартует автоматически и загружается со первого образа в ini-файле В архиве обновленное AZBOOT.ROM - не забудьте обновить AZBK_00010.hex без изменений относительно 5й версии, те надо обновить только прошивку ПЛИС Прошивка [исправлено 4.06.2022]: ![]() Музыка 6ти канальная (2хAY) на диске С - спасибо Kuvo ! ![]() Игры: ![]() IMA музыка: ![]() запускать RU PLSS SWEET.IMA PLSS - это плеер а SWEET.IMA - трек посмотреть все - DIR -------------------- Живы будем - Не помрем !
|
SuperMax |
![]()
Сообщение
#17
|
![]() Администратор ![]() ![]() ![]() ![]() ![]() Группа: Root Admin Сообщений: 6 157 Регистрация: 7.1.2006 Из: Красноярск Пользователь №: 1 ![]() |
Прошивка 00011
жирным новое (или измененное) в прошивке функционал: 1. палитры, сделано расширение функционала механизма палитр подробнее https://forum.maxiol.com/index.php?showtopic=5556 2. реализовано ручное переключение видеорежима (циклическое 1-2) по сочетанию AR2+KT те можно спокойно переключать его в зависимости от программы не напрягаясь! 3. Реализовано отображение информации в консоли контроллера дисковой подсистемы и сети - переключается по АР2+РУС соответственно выделена страница памяти под консоль 4. сделан маппер памяти + разделение по сегментам: - область перехвата - те копия станиц оперативки - область эмуляции ROM - выделил 256КБ под всякие ПЗУ которые будут подключаться как в эмуляторе из меню - и вся остальная память - перехват запросов SMK сделан и работает - все запросы к нему управлению режимами через 177130 транслируются в запросы к AZ-менеджеру памяти. - добавлена возможность хака с отключением окна 1 со 100'000 до 137'777. Более подробно описано тут. - добавлен RPLY для служебных страниц (с 40 по 77ую включительно) эти страницы будут иметь специальное назначение и будут использоваться для работы AZБК контроллера; использовать для иных целей кроме указанных в документации запрещено 5. полный вывод VGA уже из SDRAM, переключение страниц [пока без новых режимов, но они уже заложены в архитектуру] 6. перехват переключения палитр БК11М - доступ к памяти палитр с шины, чтение+запись исправлены ошибки перехвата при обращении к нечетным адресам 7. Генератор псевдослучайных чисел - технически это LFSR длиной 128бит, младшие 16 в регистре доступном программно. сдвиг идет с частотой 65MHz как следствие полностью новое слово доступно будет каждый процессорный такт 8. загрузка ПЗУ в память полностью реализована 9. Реализовано распознавание новодела БК11М и подключение ПЗУ 10. COVOX набор регистров доступных и по чтению и по записи 177200 - 16bit левый канал 177202 - 16bit правый канал 177204 - 16bit моно, иначе говоря запись в этот регистр приводит к фактической одновременной записи в регистры 177200 и 177202 177206 - 8bit стерео/mono, иначе говоря запись в этот регистр приводит к фактической одновременной записи в регистры 177200 и 177202 - в старший байт режимы stereo/momo определяются по байтовой записи те если писать слово в 177206 то это будет стерео а если писать младший байт в 177206 то данные будут трактоваться как моно запись в 177714 мультирежимная ибо у нас есть 2 варианта ковокса 1. моно 8bit - запись в младший байт 2. стерео 8bit - МЛБ - левый СТБ-правый переключать режимы через регистр 177212 соответственно запись в 177714 тоже приводит к фактической одновременной записи в 177200 и 177202 обеспечивая полную совместимость со старым софтом Регистр управления звуком - 177212 биты: 00 - легаси перехват ковокса в 177714: 0=моно 1=стерео 01 - =0 разрешен легаси перехват 177714 =1 запрещен 02 - =0 разрешен перехват 177716 =1 запрещен перехват спикера сделан 3х битный 03 - =0 YM2149 =1 AY8910 тип эмуляции PSG 11. DMA контроллер звука 177160 - регистр управления регистр скорости чтения , режима интерпретации данных (8/16 моно стерео), повтора 00 - старт =1 старт 01 - =1 однократный запуск =0 циклический , при этом надо записать =0 в 3й бит при циклическом запуске, запись 1цы даст останов после завершения цикла, с установкой в =1 бита3 02 - =1 принудительная остановка до завершения цикла 03 - на чтение =1 однократный запуск завершился, в начале сбрасывается на ноль, запись =1 не влияет на процесс 04 - =1 потоковое воспроизведение с подкачкой данных, актуально для IMA_ADPCM в этом режиме на стадии начала цикла не происходит сброса начальных кодов декодирования ADPCM 06-07-08 - скорость выдачи наружу поддерживаемые скорости 0 - 44100 09-10-11 - режим интерпретации 09 - =0 моно =1 стерео 11 - =0 PCM =1 IMA_ADPCM поддерживаемые режимы: 000-0 PCM 16 mono 100-4 IMA ADPCM DECODER mono 101-5 IMA ADPCM DECODER stereo 177162 - регистр адреса страницы с которой будем читать с дискретностью 10000 (4кБ) 177164 - старшая часть длины - 8бит 177166 - младшая часть длины - 16бит 177170 - номер текущей страницы воспроизведения данные с DMA пойдут напрямую на микшер отдельным каналом 12. Legacy AY через 177714 работает автоопределение источника звука - или ковокс или AY 13. Сделан UART - изменена базовая частота - теперь это не 130MHz а 65MHz адреса стандартные 177560 - регистр статуса приемника 177562 - регистр управления + регистр принятых данных 177564 - регистр статуса передатчика 177566 - регистр данных на передачу 177560 - регистр статуса приемника бит 7 - флаг наличия данных: единица означает наличие принятых данных в регистре 177562 после чтения 177562 - флаг будет сброшен регистр доступен на чтение запись игнорируется, ошибки не взывает 177562 - по чтению - младший байт содержит принятые данные - по записи - слово определяющее скорость, подробности ниже дефолтное значение 32346(8) что соответствует стандартной скорости в 9600бод 177564 - регистр статуса передачика бит 7 - флаг успешной передачи данных: единица означает что байт из регистра 177566 успешно передан в линию после записи в 177566 - флаг будет сброшен тк начнется передача регистр доступен на чтение запись игнорируется, ошибки не взывает 177566 - регистр данных на передачу, используется младший байт, доступен на чтение и запись после записи начинается передача в линию Слово определяющее скорость - доступно только по записи детальное описание UART в AZБК 14. Сделан конструктор видеорежимов 177230 - регистр управления 177232 - регистр номера страницы начала отображения 177230, далее пойдут биты с описанием 1;0 - режим цветовой интерпретации 4;3 - длина строки в словах 7;6 - растяжение по горизонтали - те количество повторов у точки 10;9 - количество повторов строк 15;12 - длина рулона в словах теперь подробно режим цветовой интерпретации, значение от 0 до 3 0 - 1 бит на цвет - 2 цвета 1 - 2 бита на цвет - 4 цвета 2 - 4 бита на цвет - 16 цветов 3 - 8 бит на цвет - 256 цветов длина строки в словах 0 - 32 слова 1 - 64 2 - 128 3 - 256 это значение должно соответствовать вашему режиму - иначе будут повторы или пропуски данных расчет прост - к примеру мы выбрали 512х384х16 цветов считаем 512точек х 4 бита = 2048бит /16 = 128 слов растяжение по горизонтали - те количество повторов у точки 0 - х1 - те 1024 точки в строке 1 - х2 - 512 2 - х3 - 256 3 - х4 - 128 количество повторов строк 0 - х1 - 768 строк 1 - х2 - 384 2 - х3 - 256 3 - х4 - 192 длина рулона в словах 0 6144 1 8192 2 12288 3 16384 4 24576 5 32768 6 49152 7 65536 8 98304 9 131072 10 196608 11 262144 длина дает информацию контроллеру для корректной работы вертикального скролинга и важный момент - длина рулона может быть БОЛЬШЕ чем экран иначе говоря можно объявить экран в 32кБ (к примеру 256х256х16цветов ) а рулон выбрать в 64кБ, что позволит осуществлять формирование того что выйдет на экран ЗА его пределами ДО его вывода рулоном типовые видеорежимы (значение восьмеричные) 012201 - 256х256х4цвета (экран 16кБ) 012100 - 512х256х2цвета (экран 16кБ) 032212 - 256х256х16цветов (экран 32кБ) регистр 177232 - адрес страницы начала отображения те можно начинать отображение с любой страницы в памяти Важно! видеорежимы в состоянии "beta" те я не провел полного тестирования 15. Добавлена эмуляция 2xAY сложение каналов по форумуле R=A1+A2+B1+B2 L=C1+C2+B1+B2 Прямая доступность регистров на шине, а именно доступны байтовые регистры 177172 - адрес AY1 177173 - данные AY1 177174 - адрес AY2 177175 - данные AY2 Теперь работают программы использующие менеджер памяти СМК. К примеру Принц Персии. Косметические правки кода и звукового модуля. должны отвечать регистры SOUND 177160-177174 177200-177212 AZ 177220-177226 дебаг 177100-177106 регистры палитр - уже можно экспериментировать 177230 - видеорежимы 177232 - номер легаси страницы 177234 - адрес ячейки палитры [9бит] 177236 - значение палитры [15бит] маппер памяти 177300-350 загрузчик 177000 177550 - генератор псевдослучайных чисел 177560-177566 - UART После reset машина стартует автоматически и загружается со первого образа в ini-файле В архиве обновленное AZBOOT.ROM - не забудьте обновить! AZ377.ROM - не забудьте обновить ! AZBK_00011.hex без изменений относительно 5й версии, те надо обновить только прошивку ПЛИС Прошивка ![]() -------------------- Живы будем - Не помрем !
|
SuperMax |
![]()
Сообщение
#18
|
![]() Администратор ![]() ![]() ![]() ![]() ![]() Группа: Root Admin Сообщений: 6 157 Регистрация: 7.1.2006 Из: Красноярск Пользователь №: 1 ![]() |
Прошивка 00012
жирным новое (или измененное) в прошивке функционал: 1. палитры, сделано расширение функционала механизма палитр подробнее https://forum.maxiol.com/index.php?showtopic=5556 2. реализовано ручное переключение видеорежима (циклическое 1-2) по сочетанию AR2+KT те можно спокойно переключать его в зависимости от программы не напрягаясь! 3. Реализовано отображение информации в консоли контроллера дисковой подсистемы и сети - переключается по АР2+РУС соответственно выделена страница памяти под консоль 4. сделан маппер памяти + разделение по сегментам: - область перехвата - те копия станиц оперативки - область эмуляции ROM - выделил 256КБ под всякие ПЗУ которые будут подключаться как в эмуляторе из меню - и вся остальная память - перехват запросов SMK сделан и работает - все запросы к нему управлению режимами через 177130 транслируются в запросы к AZ-менеджеру памяти. - добавлена возможность хака с отключением окна 1 со 100'000 до 137'777. Более подробно описано тут. Теперь работают программы использующие менеджер памяти СМК. К примеру Принц Персии. - добавлен RPLY для служебных страниц (с 40 по 77ую включительно) эти страницы будут иметь специальное назначение и будут использоваться для работы AZБК контроллера; использовать для иных целей кроме указанных в документации запрещено 5. полный вывод VGA уже из SDRAM, переключение страниц 6. перехват переключения палитр БК11М - доступ к памяти палитр с шины, чтение+запись исправлены ошибки перехвата при обращении к нечетным адресам 7. Генератор псевдослучайных чисел - технически это LFSR длиной 128бит, младшие 16 в регистре доступном программно. сдвиг идет с частотой 65MHz как следствие полностью новое слово доступно будет каждый процессорный такт 8. загрузка ПЗУ в память полностью реализована были обнаружены ошибки при загрузке не кратных блоку образов ПЗУ, исправлены 9. Реализовано распознавание новодела БК11М и подключение ПЗУ 10. COVOX набор регистров доступных и по чтению и по записи 177200 - 16bit левый канал 177202 - 16bit правый канал 177204 - 16bit моно, иначе говоря запись в этот регистр приводит к фактической одновременной записи в регистры 177200 и 177202 177206 - 8bit стерео/mono, иначе говоря запись в этот регистр приводит к фактической одновременной записи в регистры 177200 и 177202 - в старший байт режимы stereo/momo определяются по байтовой записи те если писать слово в 177206 то это будет стерео а если писать младший байт в 177206 то данные будут трактоваться как моно запись в 177714 мультирежимная ибо у нас есть 2 варианта ковокса 1. моно 8bit - запись в младший байт 2. стерео 8bit - МЛБ - левый СТБ-правый переключать режимы через регистр 177212 соответственно запись в 177714 тоже приводит к фактической одновременной записи в 177200 и 177202 обеспечивая полную совместимость со старым софтом Регистр управления звуком - 177212 биты: 00 - легаси перехват ковокса в 177714: 0=моно 1=стерео 01 - =0 разрешен легаси перехват 177714 =1 запрещен 02 - =0 разрешен перехват 177716 =1 запрещен перехват спикера сделан 3х битный 03 - =0 YM2149 =1 AY8910 тип эмуляции PSG 11. DMA контроллер звука 177160 - регистр управления регистр скорости чтения , режима интерпретации данных (8/16 моно стерео), повтора 00 - старт =1 старт 01 - =1 однократный запуск =0 циклический , при этом надо записать =0 в 3й бит при циклическом запуске, запись 1цы даст останов после завершения цикла, с установкой в =1 бита3 02 - =1 принудительная остановка до завершения цикла 03 - на чтение =1 однократный запуск завершился, в начале сбрасывается на ноль, запись =1 не влияет на процесс 04 - =1 потоковое воспроизведение с подкачкой данных, актуально для IMA_ADPCM в этом режиме на стадии начала цикла не происходит сброса начальных кодов декодирования ADPCM 06-07-08 - скорость выдачи наружу поддерживаемые скорости 0 - 44100 09-10-11 - режим интерпретации 09 - =0 моно =1 стерео 11 - =0 PCM =1 IMA_ADPCM поддерживаемые режимы: 000-0 PCM 16 mono 100-4 IMA ADPCM DECODER mono 101-5 IMA ADPCM DECODER stereo 177162 - регистр адреса страницы с которой будем читать с дискретностью 10000 (4кБ) 177164 - старшая часть длины - 8бит 177166 - младшая часть длины - 16бит 177170 - номер текущей страницы воспроизведения данные с DMA пойдут напрямую на микшер отдельным каналом 12. Legacy AY через 177714 работает автоопределение источника звука - или ковокс или AY 13. Сделан UART - изменена базовая частота - теперь это не 130MHz а 65MHz адреса стандартные 177560 - регистр статуса приемника 177562 - регистр управления + регистр принятых данных 177564 - регистр статуса передатчика 177566 - регистр данных на передачу 177560 - регистр статуса приемника бит 7 - флаг наличия данных: единица означает наличие принятых данных в регистре 177562 после чтения 177562 - флаг будет сброшен регистр доступен на чтение запись игнорируется, ошибки не взывает 177562 - по чтению - младший байт содержит принятые данные - по записи - слово определяющее скорость, подробности ниже дефолтное значение 32346(8) что соответствует стандартной скорости в 9600бод 177564 - регистр статуса передачика бит 7 - флаг успешной передачи данных: единица означает что байт из регистра 177566 успешно передан в линию после записи в 177566 - флаг будет сброшен тк начнется передача регистр доступен на чтение запись игнорируется, ошибки не взывает 177566 - регистр данных на передачу, используется младший байт, доступен на чтение и запись после записи начинается передача в линию Слово определяющее скорость - доступно только по записи детальное описание UART в AZБК 14. Сделан конструктор видеорежимов 177230 - регистр управления 177232 - регистр номера страницы начала отображения 177240 - регистр номера страницы начала отображения - средняя страница под спрайты 177242 - регистр номера страницы начала отображения - нижняя страница - под фон 177230, далее пойдут биты с описанием 2;0 - режим цветовой интерпретации 4;3 - длина строки в словах 7;6 - растяжение по горизонтали - те количество повторов у точки 10;9 - количество повторов строк 15;12 - длина рулона в словах теперь подробно режим цветовой интерпретации, значение от 0 до 7 0 - 1 бит на цвет - 2 цвета 1 - 2 бита на цвет - 4 цвета 2 - 4 бита на цвет - 16 цветов 3 - 8 бит на цвет - 256 цветов 4 - 1 бит на цвет - 8 цветов - сборный "слоеный" режим 5 - 2 бита на цвет - 4 цвета - включены слои 6 - 4 бита на цвет - 16 цветов - включены слои 7 - 8 бит на цвет - 256 цветов - включены слои подробное описание работы со слоями тут длина строки в словах 0 - 32 слова 1 - 64 2 - 128 3 - 256 это значение должно соответствовать вашему режиму - иначе будут повторы или пропуски данных расчет прост - к примеру мы выбрали 512х384х16 цветов считаем 512точек х 4 бита = 2048бит /16 = 128 слов растяжение по горизонтали - те количество повторов у точки 0 - х1 - те 1024 точки в строке 1 - х2 - 512 2 - х3 - 256 3 - х4 - 128 количество повторов строк 0 - х1 - 768 строк 1 - х2 - 384 2 - х3 - 256 3 - х4 - 192 длина рулона в словах 0 6144 1 8192 2 12288 3 16384 4 24576 5 32768 6 49152 7 65536 8 98304 9 131072 10 196608 11 262144 длина дает информацию контроллеру для корректной работы вертикального скролинга и важный момент - длина рулона может быть БОЛЬШЕ чем экран иначе говоря можно объявить экран в 32кБ (к примеру 256х256х16цветов ) а рулон выбрать в 64кБ, что позволит осуществлять формирование того что выйдет на экран ЗА его пределами ДО его вывода рулоном типовые видеорежимы (значение восьмеричные) 012201 - 256х256х4цвета (экран 16кБ) 012100 - 512х256х2цвета (экран 16кБ) 032212 - 256х256х16цветов (экран 32кБ) регистр 177232 - адрес страницы начала отображения те можно начинать отображение с любой страницы в памяти Важно! видеорежимы в состоянии "beta" те я не провел полного тестирования 15. Добавлена эмуляция 2xAY сложение каналов по форумуле R=A1+A2+B1+B2 L=C1+C2+B1+B2 Прямая доступность регистров на шине, а именно доступны байтовые регистры 177172 - адрес AY1 177173 - данные AY1 177174 - адрес AY2 177175 - данные AY2 Косметические правки кода и звукового модуля. должны отвечать регистры SOUND 177160-177174 177200-177212 AZ 177220-177226 дебаг 177100-177106 регистры палитр - уже можно экспериментировать 177230 - видеорежимы 177232 - номер легаси страницы 177234 - адрес ячейки палитры [9бит] 177236 - значение палитры [15бит] 177240 - регистр номера страницы начала отображения - средняя страница под спрайты 177242 - регистр номера страницы начала отображения - нижняя страница - под фон маппер памяти 177300-350 177550 - генератор псевдослучайных чисел 177560-177566 - UART После reset машина стартует автоматически и загружается со первого образа в ini-файле В архиве обновленное AZBOOT.ROM - не забудьте обновить! AZ377.ROM - не забудьте обновить ! AZBK_00012.hex новая. ее надо тоже обновить Прошивка ![]() Пример с 6ти канальной музыкой ![]() -------------------- Живы будем - Не помрем !
|
SuperMax |
![]()
Сообщение
#19
|
![]() Администратор ![]() ![]() ![]() ![]() ![]() Группа: Root Admin Сообщений: 6 157 Регистрация: 7.1.2006 Из: Красноярск Пользователь №: 1 ![]() |
Прошивка 00012 bugfix
исправление ошибок в слоях и расширенных режимах 16 и 256цветов Прошивка ![]() -------------------- Живы будем - Не помрем !
|
![]() ![]() |
Текстовая версия | Сейчас: 9.8.2022, 11:15 |