PSPx форум

PSPx форум (https://www.pspx.ru/forum/index.php)
-   Программирование для PSP (https://www.pspx.ru/forum/forumdisplay.php?f=101)
-   -   нужна помощь в написании umd дампера (https://www.pspx.ru/forum/showthread.php?t=94442)

indeec-evafan 01.01.2012 14:08

нужна помощь в написании umd дампера
 
Собственно в целях самообразования решил написать дампер умд. Сами диски прекрасно грабятся, но никак не могу организовать вывод процента на экран. Сам процесс снятия образа идеит в отдельном цикле, так что до его завершения экран не обновляется, а если писать внутри этого цикла - сбрасывается все что было на экране до этого и вывод идет построчечно (pspDebugScreenSetXY не срабатывает второй раз). Как уже понятно все идет через отладочный вывод. И еще вопрос - как можно программно включить режим "без засыпания" при запуске программы и вернуть все как было при выходе?

Сам грабеж идет примерно так:
Код:

if (ready==1)
                {
                        fd_i = sceIoOpen("umd:", PSP_O_RDONLY, 0777);

                        fd_o = sceIoOpen(op, PSP_O_WRONLY | PSP_O_CREAT | PSP_O_TRUNC, 0777);
                        now_sector = 0;
                        read_sec = sceIoRead(fd_i, buf, max_buf);
                        while (read_sec>0)
                        {
                                sceIoWrite(fd_o, buf, read_sec * 0x800);
                                now_sector += read_sec;

                                read_sec = sceIoRead(fd_i, buf, max_buf);
                                prc = now_sector * 100 /umd_sector;
                        }
                        sceIoClose(fd_i);

                        sceIoClose(fd_o);
                        ready=0;
                }

в prc собственно процент копирования

Yoti 01.01.2012 15:59

Чем готовые исходники от Такки не угодили? Там есть всё.



Цитата:

Сообщение от indeec-evafan (Сообщение 999993)
И еще вопрос - как можно программно включить режим "без засыпания" при запуске программы и вернуть все как было при выходе?

Мне больше нравится вариант отсылать системе тики, дабы она не засыпала.
Код:

scePowerTick(PSP_POWER_TICK_SUSPEND);
До кучи можно отключить power рычаг =)

indeec-evafan 01.01.2012 16:34

Спасибо! С выводом тоже разобрался. Сейчас тики прикручу и все. За идею с рычагом тоже спасибо!
Исходники эти смотрел чтоб понять как именно читать. Но там плагин, а я хотел отдельную прогу.
З.Ы.
Извиняюсь, код забыл поставить.


Текущее время: 17:27. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2025, vBulletin Solutions, Inc. Перевод: zCarot
PSPx Forum - Сообщество фанатов игровых консолей.