Speccy - наш выбор!

Speccy - наш выбор! (http://zx-pk.ru/index.php)
-   Эмуляторы отечественных компьютеров (http://zx-pk.ru/forumdisplay.php?f=61)
-   -   Пожелания и планы по эмулятору Башкирия-2М (http://zx-pk.ru/showthread.php?t=8373)

esl 24th February 2010 17:59

Привет!
нашел багу в эмуляции Корвета

не играет музыка в игрушке Treasure (на первом диске treas.com)
deflektor

не работает 32хсимвольный текстовый режим ...
посмотри в apple.com (на 3м диске) и galaxian, anton
в apple.com и со звуком явно грабли, тормозит оно странно

в АБРИСе со второго диска не двигается курсор ...

p.s. эти штуки в моем эмуляторе работают (диски то из него :)

b2m 24th February 2010 20:41

ОК, 32-х символьный текстовый режим я добавил, заодно добавил выбор шрифта.

А вот насчёт АБРИСа вопрос: вроде на Корвете мышь была, куда подключалась, и вообще как с ней работать можно было? Может он её случайно у меня в эмуляторе определил и пытается использовать? Вроде раньше курсор двигался, но когда баг появился, я к сожалению не заметил.

З.Ы. Музыка в treas теперь тоже есть. С тормозами разобрался.

esl 26th February 2010 13:13

в treas не все впорядке с оботбражением спрайта героя,
у тебя он в некоторых частях экрана не виден (побегай немного по экрану)

а по поводу мышки


а по поводу мышей, там все просто - стандартная MS-Mouse
вроде кто-то умеет использовать MouseSystem. я с этим игрался но в релиз не вставлял.
и было еще какаято корветовская "паралельная" мышка, но я ее упоминание встречал только косвенно в спековсвих доках где-то

а сериальные мышки - стандартный ком порт и прерывание
не знаю нужно ли оно, но я реализовал

смотри в исходниках mouse.c

а поддержка есть в арисе и акварелле
причем у тебя абрис не работает а акварель работает

вот цитата из доки по абрису
Quote:

" ПРИЛОЖЕНИЯ

Приложение А. Подключение манипулятора "мышь"
фирмы Microsoft.

"Мышь" фирмы "Microsoft" подключается к последовательному
порту компьютера. В таблице приведено соответствие выводов
этого разъема и разъема манипулятора. Нумерация выводов соот-
ветствует разъему РП15-9 (она отличается от американской, ука-
занной на разъеме манипулятора).

компьютер "мышь"
----------------------------------------------------
1 1
8 2+7 (выводы соединить)
3 3
4 4
----------------------------------------------------

Приложение Б. Управлением редактора от
клавиатуры.

Графический редактор ABRIS предусматривает управление от
клавиатуры. Это необходимо в случае отсутствия у пользователя
манипулятора "мышь", а также удобно для точной установки кур-
сора в определенную точку.
Для управления координатами курсора используется дополни-
тельное поле клавиатуры (группа клавишей с цифрами и стрелками
справа от основного поля). Нажатием '1', '2', '3', '4', '5',
'6', '7', '8', и '9' осуществляется перемещение курсора в од-
ном из восьми направлений на одну точку экрана. Те же клавиши
\\
в верхнем регистре (нажатые вместе с одной из клавишей
[SHIFT]) вызывают аналогичные смещения но на восемь позиций.
Клавиши дополнительного поля '0' и '.' являются полными
аналогами правой и левой кнопок "мыши" соответственно.

Error404 26th February 2010 13:20

Quote:

Originally Posted by esl (Post 260441)
и было еще какаято корветовская "паралельная" мышка, но я ее упоминание встречал только косвенно в спековсвих доках где-то

У меня такая мышь до сих пор дома где-то валяется - планировал на Орионе попользовать, но руки так и не дошли.

esl 26th February 2010 13:52

Quote:

Originally Posted by Error404 (Post 260443)
У меня такая мышь до сих пор дома где-то валяется - планировал на Орионе попользовать, но руки так и не дошли.

а фото можно :)
и есть ли детали программирования ?

b2m 26th February 2010 14:06

Quote:

Originally Posted by esl (Post 260441)
в treas не все впорядке с оботбражением спрайта героя,
у тебя он в некоторых частях экрана не виден (побегай немного по экрану)

Я подозревал, что прерывание генерируется не тогда, когда луч выходит на экран, а в другой момент, но в какой - я не знаю. Придётся залезть в твои исходники :)

З.Ы. Нету у тебя такой информации, у тебя экран "фотографируется" и выплёвывается, а у меня формируется параллельно с выполнением. Поэтому спрайт успевает отобразиться в "стёртом" состоянии. Скорее всего прерывание формируется как везде, с началом кадрового СИ. Пока сделаю так.

esl 26th February 2010 14:37

Quote:

Originally Posted by b2m (Post 260454)
Я подозревал, что прерывание генерируется не тогда, когда луч выходит на экран, а в другой момент, но в какой - я не знаю. Придётся залезть в твои исходники :)

эээ, прерывание называтся VBL
в моем понимании это когда идет кадровый гасящий ...

Quote:

Originally Posted by b2m (Post 260454)
З.Ы. Нету у тебя такой информации, у тебя экран "фотографируется" и выплёвывается, а у меня формируется параллельно с выполнением.

эт конечно более правильно, если вдруг займусь опять, тоже так сделаю

b2m 28th February 2010 16:14

В ходе разбирательства с ABRIS-ом выяснил одну фичу, которая у меня пока не реализована. Оказывается сигнал gate второго канала таймера тактировался коротким импульсом логического нуля в момент начала КСИ. На режим делителя частоты это никак не влияет, а режим аппаратной задержки без этого не работает. Посмотрел в схему: действительно есть сигнал /SVBL и идёт он на второй канал таймера.

Однако ещё более странным оказалось то, что ABRIS рассчитывет на то, что такой фичи может и не быть, т.е что сигнал gate таймера просто повешен на еденицу, и тогда он использует прерывание по КСИ. Курсор при этом полностью или частично исчезает с экрана при движении в самой верхней части экрана (что сейчас в эмуляторе и происходит). Выяснилось это когда я нашёл у себя ошибку инициализации таймера, из-за которой курсор в ABRIS-е двигался только после второй попытки запуска.

Правда ли, что были такие варианты Корвета?

ZEman 28th February 2010 20:20

esl, а вы будете дальше обновлять свой эмулятор ?

esl 1st March 2010 13:36

Quote:

Originally Posted by ZEman (Post 260990)
esl, а вы будете дальше обновлять свой эмулятор ?

Хотелось бы :)
по крайней мере его НАДО портануть по MAC :)
заодно и переписать по SDL
и дописать таймер (эт единственный серьезный баг в нем)

гораздо важнее это привести в порядок софт корветовский
хотя сейчас эти процессы будут взаимосвязаны (т.к. под мак нету эмулятора корвета а эт сейчас моя основная домашняя платформа).

хотя основную работу так сказать я сделал, теперь уже есть несколько эмуляторов корвета
и значит он не канет в лету :)

---------- Post added at 11:28 ---------- Previous post was at 11:25 ----------

Quote:

Originally Posted by b2m (Post 260934)
В ходе разбирательства с ABRIS-ом выяснил одну фичу, которая у меня пока не реализована. Оказывается сигнал gate второго канала таймера тактировался коротким импульсом логического нуля в момент начала КСИ. На режим делителя частоты это никак не влияет, а режим аппаратной задержки без этого не работает. Посмотрел в схему: действительно есть сигнал /SVBL и идёт он на второй канал таймера.

Однако ещё более странным оказалось то, что ABRIS рассчитывет на то, что такой фичи может и не быть, т.е что сигнал gate таймера просто повешен на еденицу, и тогда он использует прерывание по КСИ. Курсор при этом полностью или частично исчезает с экрана при движении в самой верхней части экрана (что сейчас в эмуляторе и происходит). Выяснилось это когда я нашёл у себя ошибку инициализации таймера, из-за которой курсор в ABRIS-е двигался только после второй попытки запуска.

Правда ли, что были такие варианты Корвета?

гм, вроде что-то такое было
поищу письмо от авторов.
вроде как это добавили позже, в оригинальном этого небыло
хотя штука удобная, можно точно позиционироватся на нужной строке :)

---------- Post added at 11:36 ---------- Previous post was at 11:28 ----------

Пожелание/бага :)
в About EMU
все еще EMU Version 1.01
Copyright (C) 2005-2008

и имхо было бы не плохо выкладывать Release Notes ...


All times are GMT +4. The time now is 02:57.

Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.