Forums Logo

Здравствуйте Гость ( Вход | Регистрация )

 
Reply to this topicStart new topicStart Poll

Каскадный · [ Стандартный ] · Линейный

> Проблемы с swiDecompressLZSSVram., libNDS

MoonLight
post Суббота, 24 февраля 2007, 18:35
Отправлено #1


Developer
Group Icon

Группа: Профи
Сообщений: 94
Регистрация: 02 дек. 2002
Из: Воронеж
Пользователь №: 28





Незнаю почему, но ниже приведенный код на реальной консоли виснет.

Перед вызовом злополучной функции swiDecompressLZSSVram включены приревания и на приход VBlank повешена cpp коллбек функция.

TDecompressionStream CGmConsole::ms_decompCallbacks = { decompGetSize, NULL, decompReadByte, NULL, NULL };

uint32 CGmConsole::decompGetSize(const uint8 *source, uint16 *dest, uint32 arg)
{
*((uint16*)0x5000400) = RGB8(127,127,255);
return *((uint32*)source);
}

uint8 CGmConsole::decompReadByte(const uint8 *source)
{
*((uint16*)0x5000400) = RGB8(255,127,255);
return *source;
}

#endif

void CGmConsole::Init()
{
#ifndef FINAL_BUILD
memset(ms_consoleText, ' ', 768);

// Виснет после вызова этой функйии
swiDecompressLZSSVram((void*)consoleFontData, (void*)0x621F400, 0, &ms_decompCallbacks);



swiDecompressRLEVram((void*)consoleFontPalette, (void*)0x50005E0, 0, &ms_decompCallbacks);

SUB_BG3_CR = BG_PRIORITY_0 | BG_TILE_BASE(7) | BG_MOSAIC_OFF | BG_16_COLOR | BG_MAP_BASE(CONSOLE_BG_MAP_BASE) | BG_WRAP_OFF | BG_32x32;
#endif
}
User is offlineProfile CardPM
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
 

Упрощённая версия Сейчас: Пт., 10 мая. 2024, 13:13
Skin Designed (c) by Rooq.net, All Rights Reserved.