https://cs9.pikabu.ru/post_img/2018/...0125599525.jpg
Платка называлась ковОкс)
Вид для печати
https://cs9.pikabu.ru/post_img/2018/...0125599525.jpg
Платка называлась ковОкс)
В Профи 5.0x не работает кемстон мышка. Не двигается курсор, но есть реакция на кнопки, файлы выделяться/запускается (если они попадают под неподвижный курсор).
Куда рыть?
Maximum Speed просто убирает задержки для синхронизации и эмуляция работает на максимальной скорости (скорость немного зависит от обновления экрана, т.к. периодически экран обновляется). На эмулируемой машине это абсолютно никак не отражается. Используется, если нужно быстро прокрутить длительный код.
нет, можно только в исходниках подкорректировать число тактов на фрейм.
Когда то хотел сделать GS, в исходниках даже файлы с заготовками сохранились, но как он работает я не знаю, поэтому сделать не могу.
ZXMAK.NET это был переходной вариант между древним ZXMAK и ZXMAK2. Первая версия на дотнете.
последняю версию
- - - Добавлено - - -
возможно порт для мыши неправильно задана дешифрация портов. Её можно подредактировать вручную в файле конфигурации машины ZXMAK2.vmz.
На время редактирования эмулятор нужно закрыть, чтобы он не переписал файл поверх ваших изменений.
Найти вот эту строку и поправить текстовым редактором:
noDos="True" - означает что мышь отключается при активации DOS пзу, чтобы DOS пзу не влияло нужно задать "False"Код:<Device type="ZXMAK2.Hardware.General.KempstonMouseDevice, ZXMAK2.Hardware" noDos="True" maskX="65535" portX="64479" maskY="65535" portY="65503" maskB="65535" portB="64223" />
maskX="65535" - задаёт маску выборки порта, в данном случае 0xFFFF
portX="64479" - значение адреса порта регистра X мыши, в данном случае 0xFBDF
maskY и portY - маска и порт регистра Y мыши
maskB и portB - маска и порт регистра кнопок мыши
Значение маски и порта можно задавать в десятичной форме или в шестнадцатиричной. Для шестнадцатиричной формы можно использовать как префикс 0x (как в С++), так и префикс # (спектрум стиль). Например "0xFBDF", "#FBDF" и "64479" - это всё одно и то-же значение.
Управление становиться практически не возможным, так как на одно нажатие идёт куча срабатываний :)
Жаль...
Посоле дополнительных тестов поправка.
Не работает только в режиме PROFI, в TR_DOS всё работает без замечаний.
У Profi ещё есть мышка под COM порт, но у тебя нет его поддержки.
А можно пару хотелок?
* Можно на панель добавить выбор образа для дисков A:, B:? Очень далеко лезть для смены образа.
* Так же ввести понятие "не сколько последних открытых образов". Образы могут быть разбросанный по папкам, очень много беготни.
* Также добавить кнопку сброса образа хотя бы для диска A:. Для сброса диска, приходиться открыть несколько меню.
* По умолчанию все образы открываются только для чтения, можно это изменить. Забыл убрать галочку, эмулятор повис на попытке записи, n'ый объем работ коту под хвост. Всё равно запись отложенная.
* И такой "косячёк", когда нажимаешь кнопки F1-F12, реакция идет как эмуляторе (что правильно), так и в оболочке. Например, вызывается главное меню.
Актуально в CP/M которая знает о таких кнопках. Сделай плз, опционное отключение горячих кнопок в главном меню.
* ОС PQ-DOS (разработанная Вадимом Чертковым) не работает от слова "ни как". Просто виснет при старте. Проверял со стартом с дискет и из специального ПЗУ. Можно это поправить?
двойным кликом в окне включается эксклюзивный режим мыши и клавиатуры. Курсор мыши при этом пропадает. Выход из этого режима по нажатию Alt+Ctrl
скорей всего из-за глюков эмуляции контроллера дисковода. Можно попробовать режим WD93 no delays, бывает помогает
С дискетами такая история.
Если брать диска на которых ещё Q-Dos, то они грузятся, но винчестер не видят (хотя для 100% уверенности нужно провести ещё один тест, на одно из дискет я видел драйвер HDD, но не понял грузиться ли он при старте системы).
А вот образы дискет которые прислал мне Вадим с последней версией PQ-Dos, не грузятся. Просто черный экран. Режим "WD93 no delays" пробовал включать, разницы нет.
ПЗУ с сервисом 2.1 грузиться без проблем, но образ винчестера от Вадима, запускать не хочет.
Все эксперименты с дискетами провожу именно с этим ПЗУ.
А вот БИОС от Вадима не грузиться вообще. При его подключении по центру экрана, почти во весь экран появляться ч/б прямоугольник, равномерно заполненный вертикальными полосками. При этом стандартная версия Унреал ведет себя почти так же. Вадима присылал, мне специально доработанную версию.
Отмечу что БИОС от Вадима имеет размер 128кб.
- - - Добавлено - - -
Спасибо! То что нужно.
Titus, спасибо за упоминание любимого перса Corvax! (блин, ну здесь же собрались кому +-40, что же никто не плюсует, Muzzy in Gondoland неужели все забыли?!)
Можно до кучи ещё хотелок?
1. В CP/M у IBM клавы при нажатии Scroll должны переключаться режимы ввода ЯВЕРТЫ и ЙЦУКЕН. Пока иного способа включить ЙЦУКЕН нет, что обидно и не удобно.
2. Очень не приятное соседство кнопок "ускорение" и "сброса". Промахиваешься иногда. Можно сброс увести вообще к правому краю окна, для безопасности.
3. При работе дисковода или винчестера в верхнем право углу появляется пиктограмма информирующая об этом. Можно сделать то же при включении максимальной скорости (информацию, что она включена)? Было бы удобно в полно экранных режимах.
Неожиданно при запуске начал получать сообщение "System.DllNotFoundException: Не удается загрузить DLL "d3dx9_43": Не найден указанный модуль. (Исключение из HRESULT: 0x8007007E)"
Переустановка DirectX не помогает?
https://www.microsoft.com/ru-ru/down...aspx?q=directx
установи DX 9:
https://www.microsoft.com/en-us/down...s.aspx?id=8109
Спасибо! Помогло.
Найдена ошибка в отображении расширенной палитры на Профи. Не учитывается третий бит в цвете. То есть его включение, отключение ни как не влияют на цвет. Есть программа установки палитру, где это явно видно.
Как следствие цветов всего 192 и есть искажения цветов при выводе на экран.
Скрытый текст
tae1980, как это можно проверить? Если подскажете как проверить и как должно работать, исправлю
Работать должна как стандартная палитра 332, то есть значения цветов должны быть 7 7 3.
Проверить работу можно через программу Palet. Она позволяет устанавливать палитру включая/выключая пиксели и визиализирует процесс. Ранее скриншоты привел из неё. Здесь архив с файлами. https://yadi.sk/d/-jYHh8QYYsK6qw Если нужна в образе диска, кину.
Так же есть фотографии с реала, правда не очень хорошего качества, так как с телефона, но изменения цветов уловить можно.
Скрытый текст
Есть так же фотографии с картинка, на которых видно, что в эмуляторе искажены цвета, а на реале нет. Но думаю они не нужны.
Что нибудь ещё?
сделайте образ диска, чтобы его можно было сразу открыть и запустить
https://yadi.sk/d/CwHfQC81F9JNEA
Там файлы под все возможные режимы.
Ошибку в отображении цвета в расширенной палитре можно хорошо увидеть на файле "steng.grf"
Можно собрать образ с файлами только под расширенную палитру.
образ загружается, но прогрммы palet в нём не нашёл. Что касается картинок, как они должны выглядеть я не знаю. Поэтому сами файлы мне мало о чём говорят.
Для проверки всётаки лучше текстовый режим, чтобы можно было по отдельности цвета проверить, т.к. в каше картинки цвета сравнивать проблематично, даже при наличии картинки как оно должно выглядеть.
И просто программа или файл мне мало о чём говорят, нужна программа и фотография как эти цвета должны выглядеть. Иначе понять где ошибка нереально. Это примерно как смотреть в калейдоскоп и пытаться угадать какой цвет неправильно показывается :)
Вот например какой-то цвет зелёным показывает. Как я угадаю что он должен быть красным, а не зелёным? Без сравнения с тем как это должно быть это невозможно.
- - - Добавлено - - -
вроде всё нормально, выглядит реалистично, что не так?
https://i.imgur.com/2mCGI3V.png
ZXMAK, тупонул. Вот доложил palet.com https://yadi.sk/d/CwHfQC81F9JNEA
Выглядеть картинка должна вот так
https://imageup.ru/img121/3498018/20...7_09-17-33.png
Вообще SteinBlume цвета показывает правильно.
Наиболее хорошо ошибка цвета видно на картинка в градации серости. Так как сдвиг цвета очень хорошо выделяется на общем фоне, тогда как на полноцветных, он сглаживается другими цветами. Я даже понял, что он вообще есть только через почти полгода год работы над "img2grf".
Могу набрать с 3, 4 картинки где сдвиг цвета проще заметить.
Если я правильно разобрался в ситуации, то:
Стандартные перевод цветов такой:
r8=format(rrr*(7/255),,0) /* 24bpp в 8bpp */
g8=format(ggg*(7/255),,0)
b8=format(bbb*(3/255),,0)
Получал такие же неправильные цвета когда экспериментировал с палитрой и ограничивал цвета на значении 6. То есть так:
r8=format(rrr*(6/255),,0)
g8=format(ggg*(6/255),,0)
b8=format(bbb*(3/255),,0)
А как поставить точку останова?
В хелпе по поводу дебаггера очень лаконично:
Также окошко дебаггера в хелпе и в версии, что здесь пробегала 2.9.3.8 отличаются, и F12 ничего не переключает.Цитата:
Debugger Shortcuts
When in debugger window you can use following shortcuts:
F3 - Reset speccy
F5 - Stop/Pause
F10 - Run
F7 - Step Into
F8 - Step Over
F12 - switch between Stack/Breakpoints list
https://i.ibb.co/1ZdtvL1/2019-10-27-09-20-05-zxmak.png
да, стандартный отладчик остался в качестве легковесного и проверенного в боях :) на нём много кода с таймингами было продебажено и все баги с таймингами из-за пошагового исполнения и ручной подстройки таймингов вылизаны, поэтому в него никаких изменений не вносилось, т.к. можно чтото легко сломать.
Debugger Adlers делал другой человек - Adlers, что там я сильно не вникал, т.к. мне хватало дефолтного. Он там начал подключать бинарники с компилятором и это плохо вязалось с безопасностью, поэтому бинарники были отрезаны, насколько отладчик Adlers сейчас работает сказать не могу.
Хотел сделать новый отладчик, то что успел можно увидеть в DEBUGGER EX. Хотелось чтобы все эти плавающие панели работали и на linux, но компонент глючный. На его багах застрял - убил кучу времени, но добиться нормальной работы панелей в linux так и не получилось, только зря кучу времени потратил. На этом и заглохло :(
Вобщемто практически весь функционал дефолтного отладчика был перенесён в DEBUGGER EX, можно использовать. Даже список точек останова появился и посимпатичней выглядит. Но доделать так и не успел.
Брейкпоинты ставятся мышью на пустом пространстве слева от адреса инструкций, как выше Eltaron написал.
Самая вкусная фишка дефолтного отладчика - это возможность установить любой такт кадра в любой момент и всё это корректно будет разрулено. Для этого нужно остановить исполнение и кликнуть на ftmT - это текущий такт кадра. Ни в одном другом эмуляторе такое корректно не работает. Например спектакулятор почти позволяет это сделать, но в нём нарушается состояние после смены номера кадра и следующее прерывание сработает не вовремя.
Управление в дефолтном отладчике:
F5 - stop
F9 - start
F7 - step into
F8 - step over
да, для смены дебаггера нужно удалить устройство Debugger и добавить новое.
Всего имеется 5 разных дебагеров:
1) DEBUGGER - это дефолтный (тот что у вас на скрине)
2) DEBUGGER ADLERS - это альтернативный дебагер от Adlers (тот что на картинке в хелпе)
3) DEBUGGER EX - это новый вариант дебагера, который я делал последнее время
4) DEBUGGER SPRINTER - это отладчик для спринтера со своей спецификой
5) GDB-Z80 SERVER - эмулятор выступает в роли GDB сервера для подключения внешним GDB отладчиком.
GDB cервер слушает порт 2000.
Новый отладчик (4) выглядит вот так:
https://i.imgur.com/xZJsIe2.png
Всё работает, панели можно тягать, отклеивать, приклеивать, регистры можно редактировать, только скролы и загрузку сохранение блоков не прикрутил, да и под линуксом при тягании панелей может подвиснуть.
Привет
Я давно не был здесь. Я прочитал всю тему и увидел, что эмуляция звука AY и Covox была улучшена. Прошло 5 лет, как я просил добавить поддержку VI53 для Byte48.
ZXMAK - есть ли у вас время и желание добавить поддержку VI53 сейчас?
Ну тогда заодно хотя бы 4 из 6-ти проваленных тестов исправить, за два первых - молчу уж))
https://spectrumcomputing.co.uk/foru...tart=50#p28453
И мой пулл-реквест про Кворум-64 принять :)
Так в первом посте того треда ссылка: https://www.dropbox.com/s/33he0chzu6...t-1.0.zip?dl=0
ZXMAK, Можно ли узнать ситуацию с исправлением ошибки отображения палитры 256 цветов для расширенного экрана Профи?
Я вроде нашел, где собака порылась
Попробуй https://github.com/atsidaev/ZXMAK2/r...8-fixprofi.zip
А что можно/нужно сделать что бы была доступна ПЦ - клавиатура более/менее. Например PgUp/PgDn, Delete/Backspace, Home/End. И что бы CapsLock работал как CapsLock, а на TAB - CS+SS, вместо непонятной "I", ну и на "`" - хорошо бы CS+1 [EDIT]. Да, CapsShift на SHIFT это ладно, хотелось бы SymbolShift подвесить на CTRL, лучше ALT.
Изменения в дисках записываются не сразу, но хотя бы без "File Exists". И очень приятно, что после выхода из ZXMAK2 диски остаются в дисководах.
Еще .., может я уже забыл как оно в действительности, но кажется TR-DOS слишком тормозит.
Да, все претензии, претензии, никакой благодарности. Спасибо.
При старте вылетает консольное окно с сообщением: ConsoleWindow: stdout will be redirected from 1488 for application needs.
В основном окне, можно отрыть настройки и настроить всё на Профи. Выбираю загрузочный образ *.pro И эмулятор виснет на попытке с него загрузиться (черный экран).
При наличии у меня некоторого количества Профи-ков - все же я ленивый пользователь , и мне более по душе эмуу-ляторы. (мечтаю об эмуле в ФПГА :)
Так вот
https://s.micp.ru/7QJ93.jpg
Слева оригинальный эмуль (правые квадратики как бы поярче?), справа - последняя сборка, та, что выше. Консольное окно то жи прилагаю, но это возможно из-за двух мониторов так пишет.
А в чем то разниЦЦа должна быть? На пальцах ежели?
Даже начальный экран профика не показывает?
Включи квадратик 1G, например, слева и справа. Слева ничего не изменится. Справа цвет станет поярче.
О, я тут понял, что не совсем верно сделал конверсию цвета, у меня ярко белый получился 11111111, а ведь должен быть 11011011.
- - - Добавлено - - -
Пофиксил https://github.com/atsidaev/ZXMAK2/r...-fixprofi2.zip
Да. Виснет при попытке прочитать диск. БИОС работает нормально.
Вылечил полностью пересоздав машину с помощью Wizard. До этого копировал новые файлы поверх старых.
В фикс2 пропало текстовое окно.
Реакция на третий бит есть. Из замечаний, на картинка белый цвет отдаёт жёлтизной.
Пример с фикс2
Попробовал фикс 1, так как лечение проблемы найдено.
Нареканий по цвету нет вообще. Идеально!
Пример с фикс1
Так что это скорее всего верно для белого цвета из палитры Спектрума, а в расширенной палитре Профи, максимально яркий белый цвет 11111111
Так а может SteineBlume неверно выводит? Нельзя ли сфотографировать, как оно на реале выглядит?
Меня что смущает - в palet.com ярко-белый - это именно 11011011. Оно и логично, ведь раз биты означают g4g2g1r4r2r1b4b2, то отсутствующий младший бит синего b1 всегда 0. Что означает, что для получения цвета на диагонали цветового куба (ну т.е. цвета, у которого R=G=B) мы должны и r1 и g1 тоже занулить.
- - - Добавлено - - -
И вот ещё какое дело
https://b.radikal.ru/b10/2001/fc/e68e1985c120.png
Видно, что второй бит любого цвета везде подмешивается через резисторы одинакового номинала (510).
Первый тоже через одинаковые (килоомы).
Доступный через палитру нулевой бит есть только у G и R, он подмешивается через 2K. А нулевой бит синего всегда нулевой (стрелкой отмечено), но и тут 2К.
То есть цвета намешиваются совершенно равномерно и одинаково для всех каналов.
Что значит, что белый цвет - это всё-таки 11011011, потому что 11111111 даст заметный уклон в желтизну (зеленого и красного будет больше, чем синего).
Исходная картинка, без какой либо обработки.
https://imageup.ru/img83/thumb/stengpqgzty3541792.jpg
А тогда какой цвет 11111111? Ведь по битам он возможен.
В литературе есть такое: "Так как синяя компонента представлена всего 2-я битами, то считается, что у нее есть младший бит, но он равен всегда 0. Т.е. если мы задаем значение синей компоненты в 11 (т.е. десятичное 3), то для получения белого цвета зелёная и красная компоненты должны быть заданы в значение 110 (десятичное 6). И байт палитры соответствующий белому цвету будет выглядеть как 11011011"
Убил несколько месяцев на анализ этого вопроса. Как быть, если принять, что 11011011 на Профи == 11111111 на IBM PC? Если рассматривать в лоб, то часть значение цветов на Профи ушли в следующий спектр. И как с этим работать? Я даже примерных формул найти не смог. Спрашивал у профессиональных дизайнеров, они только руками разводят, мол мы не программисты, программы всё сами делают.
На текущий момент, принял такое решение, если да же цвета переходят в следующий спектр, то условный зеленый остается зеленым, только меняет насыщенность цвета. По этому "волевым решением" приравнял 11111111 на Профи к 11111111 на IBM PC (RGB332). Все встало более, и можно использовать стандартные формулы для перевода цветов. Моё Профик всё ни как не вернётся из ремонта (процесс затянулся). Но по моей просьбе человек проверял на реальном Профике - цвета адекватные (точнее казать сложно), а сама картинка на телевизоре через скарт лучше, чем в эмуляторе на жк мониторе (ну нет у меня места для лучевого монитора :((. Есть фотки с телефона, но весьма посредственного качества.