lev3d / unrealspeccyp

Automatically exported from code.google.com/p/unrealspeccyp
0 stars 0 forks source link

Результат запуска на JXD s5110, Android ICS, предложения. #65

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
Сейчас появляется много android устройств с 
hardware кнопками. http://boards.dingoonity.org/android-devices/. Я 
попробовал запустить на JXD s5110 
http://boards.dingoonity.org/android-devices/jxd-s5110/ под ICS. Вот 
некоторые мыли:

1) нет поддержки переназначения hardware 
кнопок. Как игровых кнопок (джойстик), так и 
кнопок эмулятора (показать on screen 
клавиатуру) (в Xpectroid есть)

2) странный лаг каждые 0.5 секунд с точной 
периодичностью на ICS, как и в Xpectroid. (на 
прошивке 2.3 - в Xpectroid лага нет) возможно это 
проблема кривой прошивки ICS этого 
конкретного устройства, но в эмуляторах 
других консолей (nes, snes, md, n64...) не 
сталкивался с этим. Это проблема только в 
Xpectroid и USP.

3) нужна возможность отключать линейную 
фильтрацию/сглаживание. Часто 
"пикселизированная" графика выглядит 
приятнее чем "размазанная" фильтром. (в 
Xpectroid можно отключить)

Original issue reported on code.google.com by nvi...@gmail.com on 5 Jun 2012 at 10:17

GoogleCodeExporter commented 9 years ago
Прикольный девайс) китайцы заполонили 
планету.
1. имеется в виду, хотелось бы назначать 
незадействованные кнопки (с правой 
стороны) на какие-то клавиши? в чем смысл 
менять кнопку BACK, которая тогглит 
клаву/джойстик?
за неимением девайса хотелось бы узнать 
коды этих кнопок.
2. возможно, лаг из-за размера звукового 
буфера. можно для теста сделать версию без 
звука - посмотреть, будет ли вылазить лаг. 
Либо запустить какую-нить демку с плавным  
скроллером, потом вставить образ кассеты 
(.tap, .tzx) без автозагрузки, и запустить 
кассету (в режиме fast tape with traps). Звук в этом 
режиме выключается. И посмотреть на 
плавность скроллинга. Если лагов не будет, 
возможно, надо будет посмотреть на функцию, 
которая вычисляет размер аудио-буфера.
3. это можно сделать. а в xpectroid это сделано, 
скорее всего, из-за оптимизации, там 
картинка софтварно увеличивается. а тут 
OpenGL ES. Интересно, как работает xpectroid на 
планшетах с большим разрешением экранов.

Original comment by djd...@gmail.com on 5 Jun 2012 at 6:50

GoogleCodeExporter commented 9 years ago
ЗЫ: а нет случайно в наличии андроида на MIPS? 
я тут последнюю версию собирал с 
поддержкой MIPS, только протестить удалось 
только в эмуляторе. реального девайса в 
наличии нет.

Original comment by djd...@gmail.com on 5 Jun 2012 at 6:55

GoogleCodeExporter commented 9 years ago
> 1. имеется в виду, хотелось бы назначать 
незадействованные кнопки (с правой 
стороны) на какие-то клавиши? в чем смысл 
менять кнопку BACK, которая тогглит 
клаву/джойстик?

да. одна из кнопок справа "огонь" на 
джойстике, другие назначить на кнопки на 
клавиатуре.

назначать на кнопки эмулятора - например 
показать/спрятать экранную клавиатуру, 
сэйвы.

кнопка BACK показывает экранную клавиатуру, 
как и некоторые другие кнопки справа.

> 2. возможно, лаг из-за размера звукового 
буфера.

могу потестировать версию без звука. 

> ЗЫ: а нет случайно в наличии андроида на 
MIPS? я тут последнюю версию собирал с 
поддержкой MIPS, только протестить удалось 
только в эмуляторе. реального девайса в 
наличии нет.

у  меня нет, а вообще 
http://habrahabr.ru/post/138495/

Original comment by nvi...@gmail.com on 5 Jun 2012 at 8:03

GoogleCodeExporter commented 9 years ago
да, и ещё звук отстаёт где-то на 0.5 секунд.

Original comment by nvi...@gmail.com on 5 Jun 2012 at 9:24

GoogleCodeExporter commented 9 years ago
тогда попробуй этот вариант:

>Либо запустить какую-нить демку с плавным  
скроллером, потом вставить образ кассеты 
(.tap, .tzx) без автозагрузки, и запустить 
кассету (в режиме fast tape with traps). Звук в этом 
режиме выключается. И посмотреть на 
плавность скроллинга.

>звук отстаёт где-то на 0.5 секунд.

отставание есть за счет буферизации, но 
должно быть меньше 0.5 сек.

Original comment by djd...@gmail.com on 5 Jun 2012 at 10:06

GoogleCodeExporter commented 9 years ago
> тогда попробуй этот вариант:

всё верно. без звука не тормозит.

Original comment by nvi...@gmail.com on 5 Jun 2012 at 10:25

GoogleCodeExporter commented 9 years ago
ок, соберу на днях отладочную версию

Original comment by djd...@gmail.com on 6 Jun 2012 at 8:04

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
вот версия с отладочной инфо.
надо ее установить, запустить, потом в 
портретном режиме включить on-screen джойстик, 
и нажать в правом нижнем углу экрана.
появится список с разными числами, 
интересует самое последнее число в строке 
STAT (в круглых скобках).

Original comment by djd...@gmail.com on 6 Jun 2012 at 10:02

GoogleCodeExporter commented 9 years ago
30104

кстати, вот эти самые break space, enter и 0, которые 
появляются в портретном режиме хорошо было 
бы назначать на аппаратные кнопки. а в 
лучшем случае любую кнопку на клавиатуре 
спектрума. и кнопки джойстика (огонь) (не в 
курсе, есть ли у них (кнопок джойстика) 
маппинг на кнопки клавиатуры в реальном 
железе)

Original comment by nvi...@gmail.com on 7 Jun 2012 at 12:02

GoogleCodeExporter commented 9 years ago
>30104 - это мин. размер звукового буфера в 
байтах.

похоже, понятно, в чем баг. у меня 4096.
а в эмуляторе создается буфер в 4 раза 
больше минимального.
попробую починить.

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

Original comment by djd...@gmail.com on 7 Jun 2012 at 7:34

GoogleCodeExporter commented 9 years ago
собрал новую версю - переделал работу со 
звуковыми буферами. лаг должен уменьшиться 
(раза в 3) и должны пропасть периодические 
подтормаживания.

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

Original comment by djd...@gmail.com on 7 Jun 2012 at 9:06

GoogleCodeExporter commented 9 years ago
лаг звука уменьшился, почти исчез, но 
тормоза остались без изменения.

курсор - 19,20,21,22
select - 62
start - 66
lshft - 102
rshift - 103
треугольник и квадрат - 23 (одно и то же число)
крест и круг - 4 (одно и то же число)
24,25 - громкость

однако эмулятор mupen64 plus показывает 
следующие коды:

треугольник - 99
круг - 96
крест - 97
квадрат - 100

остальные коды те же.

Original comment by nvi...@gmail.com on 7 Jun 2012 at 9:45

GoogleCodeExporter commented 9 years ago
>но тормоза остались без изменения.

непонятно...

>однако эмулятор mupen64 plus показывает

а он под какую версию андроида? может в 3м-4м 
андроиде добавили поддержку новых кнопок?
в Xpectroid или другом эмуляторе 
(поддерживающих андроид 2.1) можно их 
переназначить?

Original comment by djd...@gmail.com on 8 Jun 2012 at 2:37

GoogleCodeExporter commented 9 years ago
кстати
>на прошивке 2.3 - в Xpectroid лага нет

а в USP? и какой там мин. размер звукового 
буфера, интересно, выдает.

Original comment by djd...@gmail.com on 8 Jun 2012 at 2:39

GoogleCodeExporter commented 9 years ago
> а он под какую версию андроида? может в 
3м-4м андроиде добавили поддержку новых 
кнопок?
в Xpectroid или другом эмуляторе 
(поддерживающих андроид 2.1) можно их 
переназначить?

всё тестирую под ISP. Кнопки можно назначать 
в 90% эмуляторов. в Xpectroid можно переназначить 
любые кнопки. от  версии андройда не 
зависит.

> а в USP? и какой там мин. размер звукового 
буфера, интересно, выдает.

а вот USP не тестировал.

Original comment by nvi...@gmail.com on 8 Jun 2012 at 10:15

GoogleCodeExporter commented 9 years ago
посмотрел исходники xpectroid... вроде он 
обрабатывает кнопки так же, как и usp.
непонятно, почему приходят одинаковые коды 
для:

>треугольник и квадрат - 23 (одно и то же 
число)
>крест и круг - 4 (одно и то же число)

а когда в xpectroid переназначаешь их, как они 
там называются?

Original comment by djd...@gmail.com on 9 Jun 2012 at 6:34

GoogleCodeExporter commented 9 years ago
и кстати, какие цифры отладочный usp 
показывает в строке PRO0 ?
только надо запустить какую-нибудь 
программу, проигрывающую музыку, вызвать 
эту отладочную инфу, потом нажать и пол 
секунды подержать enter - статистика 
обнулится, затем засечь секунд 20-30 (цифры 
более-менее устаканятся).
можешь приаттачить скриншот после всего 
вышеперечисленного?

Original comment by djd...@gmail.com on 9 Jun 2012 at 9:16

GoogleCodeExporter commented 9 years ago
> а когда в xpectroid переназначаешь их, как они 
там называются?

BUTTON_A, BUTTON_Y, DPAD_LEFT, DPAD_RIGHT, SPACE (для Select), ENTER (для 
Start)

как скриншот сделать ? PRO0  ~ 170 - 210. 

> потом нажать и пол секунды подержать enter 

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

Original comment by nvi...@gmail.com on 10 Jun 2012 at 4:54

GoogleCodeExporter commented 9 years ago
>>BUTTON_A, BUTTON_Y, DPAD_LEFT, DPAD_RIGHT, SPACE (для Select), ENTER 
(для Start)

>треугольник и квадрат - 23 (одно и то же 
число)
>крест и круг - 4 (одно и то же число)

не совсем понятно, какие кнопки что 
означают.
треугольник - BUTTON_A
квадрат - BUTTON_Y
крест и круг - DPAD_LEFT, DPAD_RIGHT ?

>как скриншот сделать ?
в маркете туча прог есть, или через ddms.
http://developer.android.com/guide/developing/debugging/ddms.html

Original comment by djd...@gmail.com on 10 Jun 2012 at 7:48

GoogleCodeExporter commented 9 years ago
DPAD_LEFT, DPAD_RIGHT - это курсор
BUTTON_X - трекгольник
BUTTON_Y - квадрат
BUTTON_A - круг
BUTTON_B - крест
BUTTON_L1, BUTTON_R1 - шифты.
также есть BACK, MENU, VOLUME_UP, VOLUME_DOWN

Original comment by nvi...@gmail.com on 10 Jun 2012 at 8:50

GoogleCodeExporter commented 9 years ago
скриншот

Original comment by nvi...@gmail.com on 10 Jun 2012 at 9:05

Attachments:

GoogleCodeExporter commented 9 years ago
>скриншот

ого, там статистика за 30439 кадров - это ~10 
минут.
можно мне за пол минуты статистику? :) а то 
там могут вылазить всякие тормоза системы

>только надо запустить какую-нибудь 
программу, проигрывающую музыку, вызвать 
эту отладочную инфу, потом нажать enter - 
статистика обнулится, затем засечь секунд 
20-30 (цифры более-менее устаканятся).

в идеале - несколько скринов (штуки 3) - в 
каждом по пол минуты статистики.

Original comment by djd...@gmail.com on 11 Jun 2012 at 1:48

GoogleCodeExporter commented 9 years ago
3 скрина по пол минуты

Original comment by nvi...@gmail.com on 11 Jun 2012 at 2:14

Attachments:

GoogleCodeExporter commented 9 years ago
добавил обработку A,B,X,Y,L1,R1. интересно, 
заработают ли они.

по поводу звука - почему-то на этом девайсе 
добавление звука в звуковой буфер от 
очередного кадра в некоторых случаях 
достигает 200мс. а это ~10 кадров эмуляции. что 
приводит к лагу.
непонятно, что делать. у меня сейчас на этом 
как раз основана audio/video синхронизация. т.е. 
звук понемногу от каждого кадра 
добавляется в буфер, и когда его там много, 
функция добавления зависает, и следующий 
кадр ждет.

а здесь оно добавляет-добавляет, и в итоге 
подвисает на 200мс.
а звук тоже запинается, или только видео 
дергается?

Original comment by djd...@gmail.com on 11 Jun 2012 at 9:54

GoogleCodeExporter commented 9 years ago
кнопки вроде бы подцепились, но проблемы 
есть. протестировал несколько игр.

в dizzy 1 управление "cursor" работает только для 
on-screen джойстика.
в jack the nipper 2 - "kempston" не работает никак. 
(кажется, в каком-то другом эмуляторе 
встречал эту проблему)
в arkanoid 2 никакое управление не работает.

и было бы очень хорошо при вызове меню 
эмулятор ставить на паузу.

звук не тормозит. тормозит только картинка. 
есть небольшая вероятность что это 
проблема прошивки, но я тестировал где-то 
10-15 других эмуляторов, и подобную проблему 
обнаружил только в xspectrum и usp. (звук отстаёт 
в некоторых эмуляторах, но не картинка)

Original comment by nvi...@gmail.com on 12 Jun 2012 at 11:03

GoogleCodeExporter commented 9 years ago
>в dizzy 1 управление "cursor" работает только для 
on-screen джойстика.

это как? выбран тип джойстика "cursor"? 
проверил - в dizzy 1 он вообще не работает.
там "K for Kempston" в меню, и все бегает.
диззи брал отсюда: http://vtrdos.ru/gamez/d/DIZZSACK.ZIP

>в jack the nipper 2 - "kempston" не работает никак.
это проблема игры - вот какой-то чел. 
ковырял:
http://newsgroups.derkeiler.com/Archive/Comp/comp.sys.sinclair/2006-01/msg00090.
html

>в arkanoid 2 никакое управление не работает.
там в каких-то версиях Kempston работает, в 
каких-то нет
вот в этой работает: http://vtrdos.ru/gamez/a/ARKAN2K.ZIP

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

Original comment by djd...@gmail.com on 12 Jun 2012 at 2:04

GoogleCodeExporter commented 9 years ago
> это как? выбран тип джойстика "cursor"? 
проверил - в dizzy 1 он вообще не работает.
там "K for Kempston" в меню, и все бегает.
диззи брал отсюда: http://vtrdos.ru/gamez/d/DIZZSACK.ZIP

если не выбирать  "K for Kempston" а нажать space, то 
будет работать в режиме курсор но только на 
on-screen. аппаратные кнопки (только 
крестовина?) не работают. 

Original comment by nvi...@gmail.com on 12 Jun 2012 at 2:20

GoogleCodeExporter commented 9 years ago
>будет работать в режиме курсор но только 
на on-screen.

а, да, работает on-screen который в ландшафте)) в 
портрете стрелки не работают.
обнаружился глюк - работать не должен.
потому что cursor joystick - это кнопки 5,6,7,8,0 с 
зажатым caps shift.
а в dizzy 1 управление работает на кнопках 
5,6,7,8,0 без caps shift.

Original comment by djd...@gmail.com on 12 Jun 2012 at 4:31

GoogleCodeExporter commented 9 years ago
еще один затест - уменьшил размер звукового 
буфера.

и исправил cursor joystick - теперь dizzy 1 играться в 
ландшафте не будет))

Original comment by djd...@gmail.com on 12 Jun 2012 at 9:39

GoogleCodeExporter commented 9 years ago
сейчас приставки на руках нет, посмотрю 
завтра вечером.

Original comment by nvi...@gmail.com on 13 Jun 2012 at 7:58

GoogleCodeExporter commented 9 years ago
не запускается. при клике по ярлыку, 
андройд пишет - В приложении "Unreal Speccy Portable" 
произошла ошибка.

Original comment by nvi...@gmail.com on 16 Jun 2012 at 9:47

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
еще одна версия для затеста. синхронизация 
по таймеру.

Original comment by djd...@gmail.com on 17 Jun 2012 at 8:55

GoogleCodeExporter commented 9 years ago
+ добавил опцию для фильтрации

Original comment by djd...@gmail.com on 17 Jun 2012 at 9:33

GoogleCodeExporter commented 9 years ago
тормозить стало по-другому. не 
периодические подтормаживания, а исчезла 
плавность движения, и возможно чуть 
замедлилось движение. звук поломался, стал 
скрипеть и тоже как бы соответствует 
подтормаживаемой картинке.

Original comment by nvi...@gmail.com on 17 Jun 2012 at 9:34

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
>а исчезла плавность движения, и возможно 
чуть замедлилось движение.

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

>звук поломался, стал скрипеть и тоже как бы 
соответствует подтормаживаемой картинке.

трещать начал?

Original comment by djd...@gmail.com on 17 Jun 2012 at 9:45

GoogleCodeExporter commented 9 years ago
звук трещать начал звучит или звучит как бы 
дискретно. и явно музыка медленнее играет. 
на экране тоже всё медленнее и нет 
плавности. будто вся эмуляция замедленна: и 
звук и движение и отрисовка.

отключение фильтрации работает - супер. 
спасибо.

Original comment by nvi...@gmail.com on 17 Jun 2012 at 10:02

GoogleCodeExporter commented 9 years ago
а так?

Original comment by djd...@gmail.com on 17 Jun 2012 at 10:13

GoogleCodeExporter commented 9 years ago
стало как раньше. звук не тормозит. 
картинка - периодические лаги. ~ каждые пол 
секунды.

Original comment by nvi...@gmail.com on 17 Jun 2012 at 10:22

GoogleCodeExporter commented 9 years ago
да, там был баг... еще одна версия

Original comment by djd...@gmail.com on 17 Jun 2012 at 10:31

GoogleCodeExporter commented 9 years ago
так же как и раньше. звук и изображение 
тормозит. сравнил с pc версией. звук играет и 
картинка движется заметно медленее на 
андройде.

Original comment by nvi...@gmail.com on 17 Jun 2012 at 10:54

GoogleCodeExporter commented 9 years ago
кстати та прошивка, на которой я тестирую в 
информации о системе пишет 1 ghz но реально 
процессор работает на 800 mhz. в android 2.3 честно 
пишет 800 mhz.

тут об этом много написано 
http://boards.dingoonity.org/android-devices/jxd-s5110/

Original comment by nvi...@gmail.com on 17 Jun 2012 at 10:59

GoogleCodeExporter commented 9 years ago
попытка №5

Original comment by djd...@gmail.com on 18 Jun 2012 at 12:16

GoogleCodeExporter commented 9 years ago
на этот раз победа! постоянное 
подтормаживание исчезло. уже вполне 
играбельно. но теперь тормозит кажется при 
обработке ввода. т.е. когда я не нажимаю 
кнопки всё ок. в саботёре 2 например когда 
двигаюсь или просто сижу нажав кн. вниз, 
начинает тормозить (звук и картинка).

Original comment by nvi...@gmail.com on 18 Jun 2012 at 9:51

GoogleCodeExporter commented 9 years ago
а так?

Original comment by djd...@gmail.com on 19 Jun 2012 at 9:46

GoogleCodeExporter commented 9 years ago
периодические подтормаживания каждую 
секунду примерно (вроде чуть меньше чем 
раньше). звук нормальный. от нажатий кнопок 
не тормозит.

Original comment by nvi...@gmail.com on 19 Jun 2012 at 10:19

GoogleCodeExporter commented 9 years ago
еще один вариант

Original comment by djd...@gmail.com on 20 Jun 2012 at 7:17

GoogleCodeExporter commented 9 years ago
отпишись, плз, как там последний вариант 
работает?

Original comment by djd...@gmail.com on 25 Jun 2012 at 11:18