![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
SuperMax |
![]()
Сообщение
#1
|
![]() Администратор ![]() ![]() ![]() ![]() ![]() Группа: Root Admin Сообщений: 6 341 Регистрация: 7.1.2006 Из: Красноярск Пользователь №: 1 ![]() |
Палитры V2
управление палитрами осуществляется через 2 регистра палитры первый (177234) - адрес ячейки палитры второй(177236) - значение палитры 15bit адреса ячеек палитры будут начинаться с большей Код нумерация кодов цветов палитра коды цветов (адреса ячеек палитры) 256 0-255 4х16 256-319 16 320-335 2 336-337 так получается полностью независимые палитры без пересечений + явный дубль стандартного функционала палитр, те можно переключать палитры как и ранее, но теперь доступна опция настройки каждой штатной палитры! и как следствие палитры не надо будет перегружать при переключении видеорежима для удобства формирования палитр сделал эксельку v2.6 от 2023.11.07 ![]() начиная с v15 базовая палитра изменена v2.8 от 2024.02.07 ![]() изменения косметические, касаются только палитры 256 цветов - ее начало изменено на 32 градации серого тк в стандартной WEB-safe которая взята за базу, такого набора градаций серого почему-то нет эта палитра загружена в ПЛИС, а также перегружается при запске явно. именно эта палитра используется при конвертации графики этим конверетером https://master.pdp-11.ru/picword3/picword.php основная задача этой эксельки - сформировать файл mif для загрузки дефолтной палитры при старте ПЛИС также она пригодится разработчикам для пересчета цветов в 15bit пояснения к блоку 4x16 256-319 это 16 наборов палитры, изначально туда грузятся штатные значения, но их можно менять на любые! нумерация прямая - те нулевая палитра это 256-257-258-259 ячейки следующие 4 ячейки это 1ая палитра и так далее управление палитрами осуществляется через 2 регистра 177234 - адрес ячейки палитры [9бит] 177236 - значение палитры [15бит] Код РЕГИСТРЫ УПРАВЛЕНИЯ ПАЛИТРАМИ АДРЕС = 177234 ФОРМАТ РЕГИСТРА ┌──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┐ │15│14│13│12│11│10│09│08│07│06│05│04│03│02│01│00│ └──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┘ │ │ └────АДРЕС ПАЛИТРЫ───────┘ Доступен по чтению и записи АДРЕС = 177236 ФОРМАТ РЕГИСТРА ┌──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┐ │15│14│13│12│11│10│09│08│07│06│05│04│03│02│01│00│ └──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┘ │ │ └──────────ЗНАЧЕНИЕ ПАЛИТРЫ────────────────┘ Доступен по чтению и записи Палитра 15bit ┌──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┐ │14│13│12│11│10│09│08│07│06│05│04│03│02│01│00│ └──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┘ └─────RED────┘ └───GREEN───┘ └────BLUE────┘ формулу формирования цвета цвет на выходе = VideoModeOffset + PaletteOffset + ColorIndex ; VideoModeOffset - смещение видеорежима cмещение - кол-во цветов (значения десятичные) 0 - 256 256- 4 х16 320- 16 336- 2 PaletteOffset существует только для штаного видеорежима 4 цвета во всех остальных случаях =0 номер палитры - смещение 0 - 0 1 - 4 2 - 8 итд ColorIndex - непосредственно номер цвета в видеорежиме, начиная с 0 Примеры работы с палитрой надо загрузить новые значения для 16ти цветной палитры для этого мы последовательно пишем 320.-> 177234 те устанавливаем адрес палитры теперь мы можем записать значение <новое значение> -> 177236 (также после установки адреса палитры мы можем ее и считать) Примеры работы с экселькой к примеру делаем новые значения для 16ти-цветой палитры ![]() слева вводим стандартные RGB значения в hex справа получаем как этот цвет выглядит (надо включить макросы) и восьмеричные значения цвета номер палитры - в столбце номер цвета Как включить макросы в эксельке идем в настройки ![]() ![]() ![]() Утилита-пикер формирующая 15ти-битный цвет AZБК от автора БК-Арена ![]() -------------------- Живы будем - Не помрем !
|
![]() ![]() |
SuperMax |
![]()
Сообщение
#2
|
![]() Администратор ![]() ![]() ![]() ![]() ![]() Группа: Root Admin Сообщений: 6 341 Регистрация: 7.1.2006 Из: Красноярск Пользователь №: 1 ![]() |
UART (RS-232 EIA-232 COM ком-порт)
адреса стандартные 177560 - регистр статуса приемника 177562 - регистр управления + регистр принятых данных 177564 - регистр статуса передатчика 177566 - регистр данных на передачу 177560 - регистр статуса приемника бит 7 - флаг наличия данных: единица означает наличие принятых данных в регистре 177562 после чтения 177562 - флаг будет сброшен регистр доступен на чтение запись игнорируется, ошибки не взывает 177562 - по чтению - младший байт содержит принятые данные - по записи - слово определяющее скорость, подробности ниже дефолтное значение 32346(8) что соответствует стандартной скорости в 9600бод 177564 - регистр статуса передачика бит 7 - флаг успешной передачи данных: единица означает что байт из регистра 177566 успешно передан в линию после записи в 177566 - флаг будет сброшен тк начнется передача регистр доступен на чтение запись игнорируется, ошибки не взывает 177566 - регистр данных на передачу, используется младший байт, доступен на чтение и запись после записи начинается передача в линию Слово определяющее скорость - доступно только по записи ![]() те для переключения UART-a на скорость 2400бод мы записываем 64713(8) в регистр 177562 технически эти константы вычисляются так: константа скорости = (65 000 000)/(бодовая скорость) те в принципе можно сделать любую доступную скорость в пределах 16ти битного делителя. дефолтное значение 15163(8) что соответствует стандартной скорости в 9600бод. Техническая реализация на плате порт реализован в двух режимах напряжений TTL - 3.3V EIA-232 (+-12V) переключение режимов осуществляется перемычками JP2 и JP3 ![]() положения перемычек подписаны - TTL и EIA232 соответственно для включения TTL надо JP2 и JP3 установить в положение 2-3 для PS/2 переходника нужен именно этот режим ![]() для переключения в режим EIA232 надо JP2 и JP3 установить в положение 1-2 ![]() также есть перемычка JP1 установка которой позволяет вывести +5В с БК на 9й пин порта это может потребоваться для изготовления своих устройств питающихся от AZ Старая таблица, актуальна только для прошивки #9 ![]() Начиная с 10й прошивки RS232 переведен на тактирование от 65MHz -------------------- Живы будем - Не помрем !
|
![]() ![]() |
Текстовая версия | Сейчас: 21.6.2025, 6:28 |