Вниз  Вопросы по модификации
- 19.04.2014 / 13:55
SeTSeR
  Пользователь

SeTSeR 
Сейчас: Offline
EA-Qwerty99, Модь оригинал
- 20.04.2014 / 10:47
EA-Qwerty99
  Пользователь

EA-Qwerty99 
Сейчас: Offline
SeTSeR, в каком смысле? Я же итак модифицирую исходники самого оригинала. Или ты имел ввиду дизассемблировать классы из оригинала, потом исправлять ошибки и дальше модифицировать?
- 20.04.2014 / 16:44
SeTSeR
  Пользователь

SeTSeR 
Сейчас: Offline
EA-Qwerty99, бери версию с рабочим джоем и модь её
- 21.04.2014 / 08:00
EA-Qwerty99
  Пользователь

EA-Qwerty99 
Сейчас: Offline
SeTSeR, Да я уже так делал, просто тупо брал с рабочим сенсором и заменял в ней картинки, скин, треки и перевод, всё, что можно было в ней изменять. Я то ведт на новый уровень модифицирования перешёл, то есть до исходников.
- 27.01.2015 / 12:45
lightro
  Пользователь

lightro 
Сейчас: Offline
Помогите пожалуйста научиться определять сколько нужно писать в лимит стек и лимит локалс.
Вот код:
  1.  .method protected final paint(Ljavax/microedition/lcdui/Graphics;)V
  2.   .limit stack ?
  3.   .limit locals ?
  4.   aload_1
  5.   iconst_0
  6.   iconst_1
  7.   bipush 8
  8.   invokestatic javax/microedition/lcdui/Font/getFont(III)Ljavax/microedition/lcdui/Font;
  9.   invokevirtual javax/microedition/lcdui/Graphics/setFont(Ljavax/microedition/lcdui/Font;)V
  10.   aload_1
  11.   sipush 200
  12.   bipush 20
  13.   bipush 20
  14.   invokevirtual javax/microedition/lcdui/Graphics/setColor(III)V
  15.   aload_1
  16.   getfield c/creator Limagecreator/Creator;
  17.   iconst_0
  18.   invokevirtual imagecreator/Creator/fCreated(I)Ljavax/microedition/lcdui/Image;
  19.   iconst_0
  20.   iconst_0
  21.   bipush 20
  22.   invokevirtual javax/microedition/lcdui/Graphics/drawImage(Ljavax/microedition/lcdui/Image;III)V
  23.   aload_1
  24.   ldc "5!"
  25.   aload_0
  26.   invokevirtual javax/microedition/lcdui/Canvas/getWidth()I
  27.   iconst_2
  28.   idiv
  29.   aload_0
  30.   invokevirtual javax/microedition/lcdui/Canvas/getHeight()I
  31.   iconst_2
  32.   idiv
  33.   bipush 17
  34.   invokevirtual javax/microedition/lcdui/Graphics/drawString(Ljava/lang/String;III)V
  35.   return
  36. .end method

- 27.01.2015 / 13:04
aNNiMON
  Супервизор

aNNiMON 
Сейчас: Offline
lightro,
.limit stack - это максимальный размер стека, который участвует в методе.
Например:
aload_1
sipush 200
bipush 20
bipush 20
invokevirtual javax/microedition/lcdui/Graphics/setColor(III)V
Здесь мы загрузили локальную переменную 1 в стек, потом добавили в стек 200, потом 20, а потом ещё 20, затем вызвали метод, который из стека всё достал. Соответственно, размер стека для этого участка будет равен 4.
И вот так надо пройтись по всему методу и посчитать максимальный. В данном методе .limit stack как раз и будет 4.

.limit locals - это количество локальных переменных (включая параметры, кажется).
В данном случае их вроде как 2.
*load_0 - 1 локальная переменная (на самом деле это ссылка на текущий объект this - канвас)
*load_1 - 2 локальная переменная, она же параметр метода - Graphics.


:ps: Вроде можно не париться и указывать значения больше, например 9, 9. При преверификации всё должно пересчитаться, то есть это не твоя забота.
__________________
 let live
- 27.01.2015 / 13:53
lightro
  Пользователь

lightro 
Сейчас: Offline
aNNiMON, ставлю 4 и 2 соответственно- преверифер выдает ошибку:
длина 4, индекс -1
а если ставлю овер9 и овер9, то в ошибке:
длина овер9, индекс-1 :-(

В других методах овер9 проходит и ошибок не возникает. А в пейнт такая ерунда. Даже на пк преверифер не дает рабочий класс.
А если 3 и 2, то ошибка:
длина 3, индекс 3.

Изменено lightro (27.01 / 14:04) (всего 1 раз)
- 27.01.2015 / 14:10
aNNiMON
  Супервизор

aNNiMON 
Сейчас: Offline
В других методах овер9 проходит и ошибок не возникает. А в пейнт такая ерунда.Может проблема в чём-то другом?
__________________
 let live
- 27.01.2015 / 21:33
lightro
  Пользователь

lightro 
Сейчас: Offline
aNNiMON, а в чем? Вроде бы все правильно. Я просто хочу подменить одна изображение на другое. Точнее динамично его заменять :-( Перед этим много кода просмотрела чтобы понять что к чему. Обидно

Апдэйтид: получилось! лимит стека 5, и я забыла загрузить в локалку свое новое поле :) Каюсь, паникерша ещё та :hack:

Изменено lightro (27.01 / 21:48) (всего 1 раз)
- 27.01.2015 / 22:53
ДубmanD
  Пользователь

ДубmanD 
Сейчас: Offline
Мне надо отменить твердую ориентацию в манифесте(андроид). Но когда я начинаю редактировать хмл едитором размер манифеста уменьшается в два раза и при впихивании его в приложение, оно не ставится. Чем редактировать, чтобы файл нормальный был?
__________________
 No thing is perfecT
Наверх  Всего сообщений: 689
Фильтровать сообщения
Поиск по теме
Файлы топика (20)