Предлагаю в этой теме разрешать вопросы связанные с написанием прог.
Помогать друг другу так сказать Возможно также отписываться здесь о различных трюках и приёмах...
Вот у меня, кстати, есть несколько вопросов:
1) Как найти все файлы в папке?
2) Как в работающей программе найти путь с которого она была запущена?
3) Планирую прикрутить к своей модификации PSAR дампера защиту от замены копирайта. Делать я это собираюсь следующим образом - ну банально считать CRC и сравнивать с оригиналом. Кстати, по этому поводу см. вопрос № 2
Пугает мня следующее - если я объявляю переменную unsigned int CRC=0; а дальше плюсую туды значения считанные из ебута, то что произойдёт при перегрузке переменной CRC? Прога упадёт, или значение CRC сбросится в 0 и дальше всё будет нормально? Конечно для гарантии можно было-бы замутить асм-вставки типа -
addi $10, buff
shl $10,1
но этого не хотелось бы. Кстати, в комповых процессорах есть overflow flag во флаговом регистре, интересно есть ли аналог в МИПСе?
P.S. Ну естественно оригинальный CRC в файле будет храниться в измененном виде чтобы всякие вумники не смогли сами высчитать это значение, найти в ебуте и подправить.
Другие консоли: PS3(CECHC 60Gb), DS lite, x360(20Gb/120Gb)
Регистрация: 11.05.2007
Возраст: 43
Сообщений: 2,510
Вы сказали Спасибо: 337
Поблагодарили 986 раз(а) в 579 сообщениях
Сила репутации: 1
Репутация: 946 
(это имя известно всем)
Граждане вопрос. есть функция звать
sceKernelTotalFreeMemSize()
на голову вся больная мрачно. показывает то правильно то неправильно. видимо считает память доступную ядру. подозреваю что юзать её могут тока соники в своих осёвых делах, те если например мой процесс нажрал памяти под кэш и высвободил её, функция не видит этого и считает что память обратна занята. отсюда вопрос:
какой функцие правильно определять кол-во свободной памяти?
ещё раз уж пришёл спрошу. есть ли какойто аналог баундс чекера но чтоб не для визуал студии а просто ему можно было кормить *.с файлы? желательно бесплатный -)
Последний раз редактировалось l3VGV; 12.07.2007 в 20:07.
Ага, вот я и здесь =)
Возник такой вопрос - из плагина (prx) можно рисовать текстуры поверх XMB?
добавлено через 1 час 29 минут
###
Возвращаясь к теме обработки кнопок пульта. Поковырявшись, выяснил что REMOTE - это псевдо клавиша, она "нажата" когда к PSP подключен пульт (0х30С0000). Сейчас бы декриптнутый prx стандартного плеера... Может кто нибудь его залить?
добавлено через 7 часов 20 минут
###
l3VGV: насчёт установки частоты процессора при загрузке - это я копаюсь в mp3 плагине, хочу привести его в человеческий вид :\
В аттаче исходник с комментами в косячных местах (main_thread, рядом с обработчиком кнопок). Архив rar.
Последний раз редактировалось freecod; 03.08.2007 в 06:19.
Причина: добавил, подумав
Возвращаясь к теме обработки кнопок пульта. Поковырявшись, выяснил что REMOTE - это псевдо клавиша, она "нажата" когда к PSP подключен пульт (0х30С0000). Сейчас бы декриптнутый prx стандартного плеера... Может кто нибудь его залить?
А ты пробовал понажимать кнопки на пульте и посмотреть значения pad.Buttons? Просто интересно, я бы сам проверил, да пульт проипал (
Другие консоли: PS3(CECHC 60Gb), DS lite, x360(20Gb/120Gb)
Регистрация: 11.05.2007
Возраст: 43
Сообщений: 2,510
Вы сказали Спасибо: 337
Поблагодарили 986 раз(а) в 579 сообщениях
Сила репутации: 1
Репутация: 946 
(это имя известно всем)
почитал посмотрел. сходу сказать затруднительно. нужно сделать пустое приложение и потестить, это всё вечером.
а оно точно работает на 300 и 150 если вызывать не в гл треде а попозже?
пс и имхо тут частоту трогать ненужно. для мр3 хватает и 266, даже если играть процом а не дсп. хотя конечно для чистоты совести расковыряем в чём трабл.
Последний раз редактировалось l3VGV; 03.08.2007 в 08:59.
Пример работает, что неудивительно - это хомка, а глючит плагин. К тому же после загрузки консоли - всё меняется легко (так на комбинации кнопок висит смена). Виснет только при исп. scePowerSetClockFrequency(speed[speednum],speed[speednum],bus[speednum]), а связка
scePowerSetCpuClockFrequency(speed[speednum]);
scePowerSetBusClockFrequency(bus[speednum]);
просто не устанавливает частоту выше 222\111...
pspowner: А вот это 0х30С0000 и есть значение pad.Buttons при подключенном пульте. Если при этом нажимать кнопки пульта - никакой реакции. Ну они блин с этим пультом намутили... Я вот думаю - через этот слот подключаются куча других устройств - микрофон,... Может у них api специальная есть? Вроде sceGetPerefiry =)
Ну вроде в sdk настоятельно советуют использовать scePowerSetCpuClockFrequency вместо scePowerSetClockFrequency при установке частот ниже 222\111, из чего делаю вывод, что для частот выше 222 использовать именно её.
NOTE: Please use scePowerSetBusClockFrequency and scePowerSetCpuClockFrequency instead of this function for clock <= 222 and bus <= 111.
Программа нормально отработала, правда частоту не изменила осталось 222. Вот такие дела.
PS Кстати, релиз medialib близок? Ждёмс =)
Другие консоли: PS3(CECHC 60Gb), DS lite, x360(20Gb/120Gb)
Регистрация: 11.05.2007
Возраст: 43
Сообщений: 2,510
Вы сказали Спасибо: 337
Поблагодарили 986 раз(а) в 579 сообщениях
Сила репутации: 1
Репутация: 946 
(это имя известно всем)
да не в функциях дело, конструктор к себе поставь и заработает скорее всево.
либу поихоньку делаю. как приделаю файловый буфер так будет ещё релизек. завтро вечером скорее всего.
Последний раз редактировалось l3VGV; 04.08.2007 в 16:19.
Ну да ладно. А не известно, где хранится дефолтный порядок иконок в XMB? Надоела эта "Камера", "Обновление" и "Настройки видео" на линии после каждой перезагрузки =\
Посетила меня седня светлая идея , какая пока не скажу, чтоб не5 сглазить, но сразу столкнулся с глобальной проблемой:о данном вопросе я незнаю ровным счетом ничего(именно по этому вопросу, но не по програмированию в целом), вот и решил обратится за помощью.
Собственно интересуюсь по какому принципу были запущны на зыз дум и квэйк, как игра от пк была запущена на зыз?!!!Зарание спасибо!
Игры от ПК на PSP не запускаются в принципе, поскольку это разные платформы. Есть правда эмуляторы(DosBox, Bochs) которые эмулируют слабенькую ПК в PSP, но для таких игр как Doom и Quake1/2 это явно не годится.
Что касается портов, видимо ты именно их имел в виду, то да, есть такое дело. Берётся исходный код Doom или Quake, естественно на языке программирования высокого уровня(С/С++) и правится/затачивается, а потом и компилируется под PSP. Естественно, это уже будет не игра для ПК, это игра для PSP. Т.е. тут вопрос "как была запущена?" неправильный в корне. Не запусщена, а портирована(переделана) она была. Повторяю ещё раз - переделывались исходники, а не готовый бинарник(ехешник). Далее эти исходники компилировались и получался Doom для PSP, или Quake для PSP.
Fur die freiheit zu kampfen um jeden preis
Последний раз редактировалось pspowner; 30.10.2007 в 12:25.
Спасибо огромное!!!! Теперь понял А то я никак немог врубится что к чему! Один только еще вопрос, а где они исходники брали? о_0 Разве это можно найти в сети?
А исходники игр от мидвэй, из серии анриал найти можно? А то представте какое будет счастье в анриал торнамент первый или в возвращение в напали загамать