Jasper: Sinclair ZX Spectrum Emulator in Java

Использование и разработка софта (преимущественно на ПЦ)

Moderator: Shaos

begoon
Senior
Posts: 147
Joined: 22 Aug 2012 17:06
Location: 188.220.42.216

Jasper: Sinclair ZX Spectrum Emulator in Java

Post by begoon »

Нашел у себя загашнике эмулятор Спектрума на Java - называется Jasper. Явтор не я, но так как оригинальный сайт более не доступен, то выложил исходники сам.

Также можно запустить уже собранный эмулятор, но только с одной игрой, скрин которой вот. Думаю, игру представлять не надо. ;-)

Last edited by begoon on 26 Oct 2012 03:37, edited 1 time in total.
User avatar
Shaos
Admin
Posts: 24083
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

Да вроде уже пролетало неоднократно
Оно даже на nedopc.org есть в разделе ZX :)
Я тут за главного - если что шлите мыло на me собака shaos точка net
begoon
Senior
Posts: 147
Joined: 22 Aug 2012 17:06
Location: 188.220.42.216

Post by begoon »

Где? Я поиском не нашел.
User avatar
Shaos
Admin
Posts: 24083
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Lavr
Supreme God
Posts: 16689
Joined: 21 Oct 2009 08:08
Location: Россия

Post by Lavr »

begoon wrote:Где? Я поиском не нашел.
Висит похожее вот здесь: http://www.nedopc.org/nedopc/zx/zxjava.shtml
действительно давно.

И по аналогичным исходникам я делал вот это:
viewtopic.php?t=9475&start=0

Image

А вобще у меня их целая коллекция. В том числе и Jasper есть.
Вот ещё есть у нас экземплярчик: viewtopic.php?t=9965
Музычку я выдрал оттуда на рингтон в сотовый... :wink:

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

Если смущает размер - то он там задаётся в параметрах апплета в HTML-файле.
Можно задать и крупный, но я предпочитаю - оригинальный.
iLavr
begoon
Senior
Posts: 147
Joined: 22 Aug 2012 17:06
Location: 188.220.42.216

Post by begoon »

Убедили ;-). Правда, отдавая дань текущей моде, выкладывать исходники в архивах, а не github/bitbucket/googlecode и т.д. в наши дни как-то некомильфо.
begoon
Senior
Posts: 147
Joined: 22 Aug 2012 17:06
Location: 188.220.42.216

Post by begoon »

Кстати, архив, который гуляет по сети с исходниками версии 1.1j имеет баг в скалировании экрана эмулятора. Я списывался с автором, и он дал мне фикс, но, видимо, так и не выпустил обновленную версию после. В моих исходниках этот баг исправлен.
User avatar
Lavr
Supreme God
Posts: 16689
Joined: 21 Oct 2009 08:08
Location: Россия

Post by Lavr »

begoon wrote:Кстати, архив, который гуляет по сети с исходниками версии 1.1j имеет баг в скалировании экрана эмулятора. Я списывался с автором, и он дал мне фикс...
Вполне может быть. Просто когда есть исходники (а у Джабы их нетрудно
получить самому) всегда интересно посмотреть, как решал проблемы тот или иной
автор. Я поэтому и держу коллекцию эмуляторов.

Хотел собрать наиболее шустрые решения в проекте мидлет-эмулятора Спектрума
для "тормозных" телефонов, но в результате экспериментов пришел к выводу, что самое
тормозное - это отрисовка экрана.
И тут трудно что-то улучшить средствами мидлет-Джабы.
Очень не хватает функции - отрисовать 8 бит на экране. В штатных средствах - есть только
отрисовать точку или экран целиком.

А сам эмулятор Z80 весьма шустр даже на очень убогих мобильниках.
iLavr
User avatar
MC68k
Retired
Posts: 1328
Joined: 25 Jul 2011 00:14
Location: WWW

Post by MC68k »

begoon wrote:Кстати, архив, который гуляет по сети с исходниками версии 1.1j имеет баг в скалировании экрана эмулятора. Я списывался с автором, и он дал мне фикс, но, видимо, так и не выпустил обновленную версию после. В моих исходниках этот баг исправлен.
на родине спектрума можно было бы и не говноедствовать. у вас там и с резиновыми кнопками и плюсовые за шапку сухарей можно поиметь.
begoon
Senior
Posts: 147
Joined: 22 Aug 2012 17:06
Location: 188.220.42.216

Post by begoon »

Lavr wrote:в результате экспериментов пришел к выводу, что самое
тормозное - это отрисовка экрана.
И тут трудно что-то улучшить средствами мидлет-Джабы.
С отрисовкой экрана всегда терки. Например, можно рисовать символ или точку сразу, как только изменена видео-память, а можно обновлять видео кумулятивно, например 40 раз в секунду (конечно кеширование в обоих подходах никто не отменял). Но, увы, каждый подход имеет недостатки. Первый хорош, когда обновлений мало, а второй - когда много (иначе он вхолостую жрет ресурсы). Я пробовал разные подходы на разных платформах (js, SDL, JavaApplet) -- чахорда. Как-то не видно одноозначно лучшего подхода. Может надо сделать динамически - если изменений мало, то способ 1, а если много, то переключаться на 2. Но не ясно, как выбирать порог. Все опять будет зависеть от платформы, языка и т.д.

Например, играюсь сейчас с нативным эмулятором РК в SDL. На Windows 7 подход ¹1 (с прямой отрисовкой) вообще не тормозит даже когда экран постоянно меняется весь, то есть нет смысла возиться с кумулятивными обновлениями. Но этот же код, запущенный на Маке просто не шевелится вообще. SDL реально тормозит. Видимо, SDL неиспользует аппаратное ускорение почему-то. Сейчас пытаюсь найти правильное сочетание глубины цвета, разрешения, SW vs HW палитры и т.д. Так что -- не угадаешь.

А экран Спектрума - это далеко не РК по структуре. И точек больше, и нелинейность и т.д.
begoon
Senior
Posts: 147
Joined: 22 Aug 2012 17:06
Location: 188.220.42.216

Post by begoon »

Lavr wrote:А вобще у меня их целая коллекция.
Кстати, нет желания их централизовано выложить куда-нибудь?
begoon
Senior
Posts: 147
Joined: 22 Aug 2012 17:06
Location: 188.220.42.216

Post by begoon »

MC68k wrote:на родине спектрума можно было бы и не говноедствовать. у вас там и с резиновыми кнопками и плюсовые за шапку сухарей можно поиметь.
Раз пять перечитал и наконец понял о чем идет речь. :D

Я лично как-то застрял на определенных моделях: если РК, то именно родной из Радио, 16 или 32 (клоны, цветные, даже Орион - не вставляют), если Спектрум, то родной 48К, если Агат, то только семерка, и т.д.

Видимо, кто на чем "сидел", к тому и прилип.

Например, добавить в эмулятор РК на JS клоны, цвет и т.д. можно очень просто, но лично у меня как-то нет для этого запала.
User avatar
Lavr
Supreme God
Posts: 16689
Joined: 21 Oct 2009 08:08
Location: Россия

Post by Lavr »

begoon wrote:
Lavr wrote:А вобще у меня их целая коллекция.
Кстати, нет желания их централизовано выложить куда-нибудь?
Да как-то некрасиво, мне кажется... "Наворовал" за много лет коллекцию чужих
программ - а теперь ещё и выложить кучкой? :lol:

Нет у меня, как мне кажется, таких моральных прав... :-?

Я и с исходниками Adam Davidson & Andrew Pollard работал в открытую, поскольку
они это разрешили.
Вот их модификацию я тоже выложил в открытый доступ, как и сами эти господа
поступили.
iLavr
begoon
Senior
Posts: 147
Joined: 22 Aug 2012 17:06
Location: 188.220.42.216

Post by begoon »

Lavr wrote:
begoon wrote:
Lavr wrote:А вобще у меня их целая коллекция.
Кстати, нет желания их централизовано выложить куда-нибудь?
Да как-то некрасиво, мне кажется... "Наворовал" за много лет коллекцию чужих
программ - а теперь ещё и выложить кучкой? :lol:

Нет у меня, как мне кажется, таких моральных прав... :-?
Не понял. Если исходник в приниципе открыт, но нигде нормально не выложен (архивы, приаттаченные к постам на подозрительных форумах не считаются ;-), то если его выложить и конкретно написать кто автор -- чего ж этом плохого?

Если, конечно, что-то "стырено" ;-), то может с автором связяться и попросить разрешения...
begoon
Senior
Posts: 147
Joined: 22 Aug 2012 17:06
Location: 188.220.42.216

Post by begoon »

Lavr wrote: Вот их модификацию я тоже выложил в открытый доступ, как и сами эти господа
поступили.
Кстати, ссылка http://sgu-wap.narod.ru/SP_MX/SPECOLD/Spec1987.zip дохлая.

Поправка: НЕТ! недохлая ;-)
Last edited by begoon on 26 Oct 2012 03:48, edited 1 time in total.