|
Здравствуйте Гость ( Вход | Регистрация ) Доступ из РоссииДля сохранения достпа из России к сайту и форуму GBX
|
||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() ![]() ![]() |
VRAM, subj
| 500mhz |
Воскресенье, 17 октября 2010, 14:54
Отправлено
#1
|
![]() аццкий сотона ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 677 Регистрация: 21 авг. 2006 Пользователь №: 17 682 ![]() ![]() |
непонятки господа с видеопамятью. у нас заявлено разрешение 480*272*32b.
делаю CODE #include <pspkernel.h> //#include <pspdebug.h> PSP_MODULE_INFO("Main", 0, 1, 1); PSP_MAIN_THREAD_ATTR(THREAD_ATTR_USER | THREAD_ATTR_VFPU); void main () { unsigned char *vram; vram = 0x4000000; int i=512; while (i>0) { *vram = 0xff; vram = vram + 4; i--; } vram = 0x4000000; int a=272; while (a>0) { *vram = 0xff; vram = vram + 512*4; a--; } } фактически 512 получаеться по горизонтали, что не так? |
| 500mhz |
Воскресенье, 17 октября 2010, 15:07
Отправлено
#2
|
![]() аццкий сотона ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 677 Регистрация: 21 авг. 2006 Пользователь №: 17 682 ![]() ![]() |
нарыл в инклюдах
#define PSP_LINE_SIZE 512 #define SCREEN_WIDTH 480 #define SCREEN_HEIGHT 272 ))) никто не знает за каким хреном так сделано? |
| Chintoi |
Воскресенье, 17 октября 2010, 17:48
Отправлено
#3
|
|
Маньяк ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 366 Регистрация: 28 мая. 2007 Пользователь №: 22 437 ![]() ![]() |
Потому что 512 это степень двойки. Ширина шин всегда равна степеням двойки. Если класть в память строку пикселей на строку памяти, даже если вторая длиннее, то математика доступа проще и быстрее.
|
| 500mhz |
Воскресенье, 17 октября 2010, 18:56
Отправлено
#4
|
![]() аццкий сотона ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 677 Регистрация: 21 авг. 2006 Пользователь №: 17 682 ![]() ![]() |
это все понятно, но можно было и экран в таком случае сделать на 512 пикселей )
|
| Chintoi |
Воскресенье, 17 октября 2010, 19:13
Отправлено
#5
|
|
Маньяк ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 366 Регистрация: 28 мая. 2007 Пользователь №: 22 437 ![]() ![]() |
можно, но на заводе делают только такого размеры пиксели, значит экран пришлось бы делать больше, тогда псп не влезла бы даже в репперский карман и была бы дороже.
|
| 500mhz |
Понедельник, 18 октября 2010, 18:27
Отправлено
#6
|
![]() аццкий сотона ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 677 Регистрация: 21 авг. 2006 Пользователь №: 17 682 ![]() ![]() |
Вопрос номер 2
Выше приведенный код при компиляции в prx прекрасно работает через psplink, при запуске как eboot не пашет. В теории я могу догадываться что prx это loadable kernel module, то есть работает с правами system что позваляет напрямую работать с vram, на практике в sdk об этом скромно умалчивают. Вопрос где шаманить? |
![]() ![]() |
1 чел. читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
| Упрощённая версия | Сейчас: Сб., 24 окт. 2026, 02:09 |




Воскресенье, 17 октября 2010, 14:54











