PDA

Просмотр полной версии : Bubble Booble на эмуляторах



Higgins
03.05.2008, 14:18
Чудеса в решете. Взял TZX оригинальной версии с WOS.com. Пробую на своем эмуляторе. Вижу проблему: при пускании пузырей вместо пузырей получается ерунда (снимок ерунды прилагается).

Все бы ничего, но: ZX-Emul, Spectemu, Glukalka, Spectrum, ZXMak дают ровно ту же грязь вместо пузырей (я брал версии, выложенные на том же WOS.com). Все эмуляторы, до которых мне удалось добраться ведут себя так же. Кроме FUSE -- у него все как положено.

Реализация Z80 у меня своя. И, наверное, не у всех перечисленных эмуляторов реализация одна и та же.

Пытаю далее. Подключил реализацию Z80 FUSE в свой эмулятор так, чтобы работал параллельно и каждой инструкции сравнивались регистры. Нашлось несколько ошибок у меня и во FUSE. Подправил у себя. В таком режиме запускаю игрушку - и все равно вижу ту же грязь.

Далее. Нашел инструкцию до выполнения которой FUSE нормально исполняет снапшот, созданный на моем эмуляторе (в формате Z80). Беру этот снапшот, выполняю одну эту инструкцию на своем эмуляторе (с параллельным процессором от FUSE), сохраняю снапшот - получаю грязь уже и во FUSE.

Сама инструкция -- условный переход -- ничего необычного. Лежит в простом цикле опроса клавиатуры. Прерывания в этот момент выключены.

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

Не знает ли кто случайно, отчего это все так?

Снапшот игрушки, остановленной на проблемной инструкции так же прилагается.

Vladimir Kladov
03.05.2008, 18:07
У меня на EmuZGL работает правильно, при включённом мультиколоре и модели 48К (остальные не смотрел, Пентагон естественно - это не ULA мультиколор). Грузить лучше тапку, TZX на таком количестве мелких блоков у меня грузиться на автомате пока не хочет, надо отключать всю автоматику, в том числе Fast, AutoStop, AutoStart Tape.

(А вот вопрос: вы в курсе, что такое ULA?)

Higgins
03.05.2008, 20:55
Vladimir Kladov,
Вы имеете в виду циклы задержки при обращении к памяти? Нет, я их не реализовывал (хотя FUSE это делает).

Тогда такой вопрос. Может ли игрушка закладываться на наличие задержек, ведь их может и не быть?

ZXMAK
03.05.2008, 23:00
да не, там дело не в юле, на ZXMAK.NET, для модели Pentagon128 пузыри нормально рисуются. Грузил из TZX. А вот из выложенного снэпшота, в графике какието нарушения...

AAA
03.05.2008, 23:04
А зачем пользоваться TZX версиями, ведь есть же trd или scl версии, которые прекрасно работают во всех достойных эмулях ? В чем кайф то ?

goodboy
03.05.2008, 23:12
скорее всего проблема в определении 48/128, (после загрузки) - (музыка накладывается на данные) ( иногда проверка делается через (23388) или ячейку ПЗУ) хотя я подробно не копал.
вообще то братья Фоллины использовали спек на все 100%, они впервые применили скролл на бордюре в Sentinel и эффект `снега` в Vectron.

ZXMAK
03.05.2008, 23:19
А зачем пользоваться TZX версиями, ведь есть же trd или scl версии, которые прекрасно работают во всех достойных эмулях ? В чем кайф то ?

оригинал на WOS был в TZX :v2_wink2:

скриншот из zxmak.net для Pentagon 128 и рабочий снэпшот z80 прилагаю

Higgins
04.05.2008, 00:04
Alexander Makeev,
Спасибо. К сожалению, это не поможет, поскольку ни мой эмулятор, ни, скажем, spectemu снапшот 128K загрузить не могут.

Исходной задачей была правильная реализация Z80, я только для этого и сделал эмулятор: есть масса бесплатных игр, на которых можно прилично потестировать. Плюс ребенку понравилось поиграться. Так вот если эта игрушка просто не работает на 48K, мне этого достаточно. Хотя и удивительно, почему бы ей и не работать.

Еще раз спасибо.

DINAMIX
04.05.2008, 00:19
оригинал на WOS был в TZX
И шо они эти TZX и таперы плодят?Не легче в scl с оригинальным бутом выложить...

ZEK
04.05.2008, 00:23
Не легче в scl с оригинальным бутом выложить...

Балбес... :) Отгадай почему

DINAMIX
04.05.2008, 00:26
alexeenko, у англичан кайф и ностальгия по кассетникам,им хоть к ихнему Эйплу оригинальный спекковский кассетник подсоедени-они только рады будут...

Добавлено через 1 минуту

Балбес... Отгадай почему
Не хочу думать в час ночи...А почему?

ZEK
04.05.2008, 00:57
Ну к примеру что ты можеш расказать интересного мне о формате dsk ?

ZEman
04.05.2008, 06:47
проверил этот тест на эмуляторе Klive 1.1 выпускаются пузыри, никаких глюков нет.
использовать надо нормальные эмуляторы а не Г всякое.

Higgins
04.05.2008, 09:09
ZEman,
Речь не идет о том, чтобы найти эмулятор, который не имеет проблем с этой игрушкой. Вопрос был в том, почему перечисленные эмуляторы, включая написанный своими руками, таинственным образом демонстрируют один и тот же симптом.

В этом свете ссылка на Klive не помогает. Во-первых, он поддерживает 128K, а значит не может ни подтвердить, ни опровергнуть версию о том, что сама игрушка не работает правильно на 48K. Во-вторых, пусть даже он поддерживает 128K и нормально работает с игрушкой. Что это дает, если нет исходных текстов?

goodboy
04.05.2008, 11:54
а ведь действительно дело в ULA :v2_yahoo: определение модели 48/128 в игре сделано через подсчёт изменений переменной frames (23672). естественно на наших клонах времянка определяется неправильно. смотри процедуру по адресу 64195. :v2_finge:

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

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

Higgins
04.05.2008, 13:05
goodboy,
Еще раз спасибо за наводку. Это, наверное, объясняет и большую паузу между выбором управления для второго игрока и началом игры.

Попутно вопрос: на этих самых "наших клонах" ULA работает как-то иначе? Я имею в виду, кроме того, что экран прорисовывается с другими времянками.

goodboy
04.05.2008, 13:15
на этих самых "наших клонах" ULA работает как-то иначе? Я имею в виду, кроме того, что экран прорисовывается с другими времянками.

отсутствует эффект `снег`
http://www.ramsoft.bbk.org/floatingbus.html#SNOWEFFECT

CityAceE
04.05.2008, 13:54
Стало интересно и я протестировал игрушку на своём эмуляторе под PalmOS, так как я тоже писал его с нуля сам. Увы, чуда не произошло :) Для чистоты эксперемента снял SNA (другой формат мой эмулятор не держит) на PC сразу после загрузки последнего байта с TZX.

abelenki
04.05.2008, 16:56
И шо они эти TZX и таперы плодят?Не легче в scl с оригинальным бутом выложить...

:v2_lol: ты в курсе, что все оригиналы коммерческих игр выходили либо на кассетах, либо на +3 дисках? TR-DOS никто на западе не использовал. именно по-этому, все перфект-дампы кассет/дискет на WoS в TZX/DSK.

goodboy
04.05.2008, 21:54
И шо они эти TZX и таперы плодят?Не легче в scl с оригинальным бутом выложить...

прямая параллель пиратская копия фильма с .уевым качеством и левым переводом.

DINAMIX
05.05.2008, 00:29
может стоит переменить форум ?
Неа,не стоит,я ведь может и юзер в ZX но учусь!,а по спектруму я просто фан(как-то в ZX-ревю писалось об этом про категории пользователей Спектрума),и люблю Спекк всей своей душой,так что нечего меня гнать на другие форумы!У меня ведь едь есть настольгия по спекки,и притом я обожатель Демок и игр Speccy...
Так-что лишить меня эт.форума-значитъ перекрыть мне кислород..Мож че нить полезное сделаю когда-нить...
Так шо советы ваши прошу приопустить!
Кстати советую,брось свое занятье-подсчитывать чужие сообщения.