| 
				 нужна помощь в написании 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 в 16:18.
				Причина: не забываем про бб-код
 
 |