Просмотр сообщений

В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.


Сообщения - karaulov

Страницы: [1]
1
крайне сомневаюсь, мало нужных навыков судя по частому использованию десятичных чисел для офсетов в флешке
Ну нет у меня структуры флэш файла, даже гугл не хочет ее давать :)

2
Ну для начало нужно от шарпа избавиться, как научишься писать на правильных языках дело быстрей пойдет поверь
Ну я не собираюсь писать эмулятор, хотя у меня получился бы намного лучше демула :)


Просто решил конфигуратор написать, для этого не обязателен C , достаточно csharp'а :)

3
http://mc.pp.se/dc/ip0000.bin.html этот, что-то было написано про дримкаст, решил что подойдет :)
только переписал на c#

private int calcCRC(byte[] buf)
        {
            int i, c, n = 0xffff;
            for (i = 0; i < buf.Length; i++)
            {
                n ^= (buf[i] << 8);
                for (c = 0; c < 8; c++)
                    if ((n & 0x8000) != 0)
                        n = (n << 1) ^ 4129;
                    else
                        n = (n << 1);
            }
            return (~n) & 0xffff;
        }

возможно ошибка в коде :)

CRC нужно проверять всего файла или только какой-то части(даты)?

4
Все просто, время устанавливается, но makaron другой алгоритм crc использует.

One more thing, don't bother trying to calculate CRC for FLASH files - the files are changed by emulators
вот что написал автор макарона

если я правильно понял то он послал всех куда-то :D

5
Я же так и знал что там в секундах хранится , никакого там специального алгоритма нет  :lol:
Добавлено позже:
private int calcCRC(byte[] buf)
        {
            int i, c, n = 0xffff;
            for (i = 0; i < buf.Length; i++)
            {
                n ^= (buf[i] << 8);
                for (c = 0; c < 8; c++)
                    if ((n & 0x8000) != 0)
                        n = (n << 1) ^ 4129;
                    else
                        n = (n << 1);
            }
            return (~n) & 0xffff;
        }


if (File.Exists("Makaron\\ROM\\Dreamcast_flash_eu.bin"))
            {
                if (File.Exists("Makaron\\ROM\\Dreamcast_flash_eu.bin.bak"))
                    File.Delete("Makaron\\ROM\\Dreamcast_flash_eu.bin.bak");

                File.Move("Makaron\\ROM\\Dreamcast_flash_eu.bin", "Makaron\\ROM\\Dreamcast_flash_eu.bin.bak");
               

                byte[] flash = File.ReadAllBytes("Makaron\\ROM\\Dreamcast_flash_eu.bin.bak");

                byte[] curtime = new byte[4] { flash[129346], flash[129347], flash[129348], flash[129349] };

                DateTime mydata = new DateTime(1950, 1, 1, 0, 0, 0);

                UInt32 mytime = BitConverter.ToUInt32(curtime, 0);

                DateTime mynewdata = mydata.AddSeconds(Convert.ToDouble(mytime));

                MessageBox.Show(String.Format("Current eu bios time: {0}:{1} {2}/{3}/{4} ", mynewdata.Hour, mynewdata.Minute, mynewdata.Day, mynewdata.Month, mynewdata.Year));

                TimeSpan mydate = DateTime.Now - mydata;

                byte[] mynewtime = BitConverter.GetBytes(Convert.ToUInt32(mydate.TotalSeconds));
                flash[129346] = mynewtime[0];
                flash[129347] = mynewtime[1];
                flash[129348] = mynewtime[2];
                flash[129349] = mynewtime[3];

                flash[129346 - 1] = 0x00;
                flash[129346 - 2] = 0x05;
                flash[129346 + 5] = 0x01;
                flash[129346 + 6] = 0x00;
                flash[129346 + 7] = 0x00;
                flash[129346 + 8] = 0x7D;
                flash[129346 + 9] = 0x0A;
                flash[129346 + 10] = 0x62;
                flash[129346 + 11] = 0x61;

                flash[129406] = 0xFF;
                flash[129406 + 1] = 0xFF;

                flash[131036] = 0x07;
                flash[131036 + 1] = 0xFF;

                UInt16 tmpcrc = Convert.ToUInt16(calcCRC(flash));
                byte[] tmpcrcbyte = BitConverter.GetBytes(tmpcrc);

                flash[129406] = tmpcrcbyte[0];
                flash[129406 + 1] = tmpcrcbyte[1];

                ByteArrayToFile("Makaron\\ROM\\Dreamcast_flash_eu.bin", flash);
            }

Этот код работает но макарон все равно требует время :(

Может у меня CRC не правильный получается?

6
да, но не нужна эмуляция клавиш:)  И а зачем поддержка старых версий? :)

                    //Часть моего г#вн#кода
                    BlockInput(true);
                    ....
                    if (selectmenu == 1)
                    {
                        short YearDM = makaproc.ReadShort("Makaron.exe", 0xAAC400);
                        byte MonDM = makaproc.ReadByte("Makaron.exe", 0xAAC402);
                        byte DayDM = makaproc.ReadByte("Makaron.exe", 0xAAC403);
                        byte hourDM = makaproc.ReadByte("Makaron.exe", 0xAAC404);
                        byte minDM = makaproc.ReadByte("Makaron.exe", 0xAAC405);

                        short YearMy = Convert.ToInt16(DateTime.Today.Year);
                        byte MonMy = Convert.ToByte(DateTime.Today.Month);
                        byte DayMy = Convert.ToByte(DateTime.Today.Day);
                        byte hourMy = Convert.ToByte(DateTime.Today.Hour);
                        byte minMy = Convert.ToByte(DateTime.Today.Minute);

                        Boolean settimetimded = true;
                        while(settimetimded)
                        {
    MakaronUpdateScreen(30);

                            if (YearDM > YearMy)
                                YearDM--;
                            else if (YearDM < YearMy)
                                YearDM++;

                            if (MonDM > MonMy)
                                MonDM--;
                            else if (MonDM < MonMy)
                                MonDM++;

                            if (DayDM > DayMy)
                                DayDM--;
                            else if (DayDM < DayMy)
                                DayDM++;

                            if (hourDM > hourMy)
                                hourDM--;
                            else if (hourDM < hourMy)
                                hourDM++;

                            if (minDM > minMy)
                                minDM--;
                            else if (minDM < minMy)
                                minDM++;

                            //short YearDM =
                                makaproc.WriteShort("Makaron.exe", 0xAAC400,YearDM);
                            //byte MonDM =
                                makaproc.WriteByte("Makaron.exe", 0xAAC402, MonDM);
                           // byte DayDM =
                                makaproc.WriteByte("Makaron.exe", 0xAAC403, DayDM);
                            //byte hourDM =
                                makaproc.WriteByte("Makaron.exe", 0xAAC404, hourDM);
                           // byte minDM =
                                makaproc.WriteByte("Makaron.exe", 0xAAC405, minDM);

                            if (YearDM == YearMy && MonDM == MonMy && DayDM==DayMy && hourDM == hourMy && minDM == minMy)
                            {
                                settimetimded = false;
                            }

                            System.Threading.Thread.Sleep(100); // Так, для анимации :)
                        }
                        byte selectmenutmpbyte = 0x05;
                        makaproc.WriteByte("Makaron.exe", 0xA2B162, selectmenutmpbyte); // Выбрать 5 пункт меню
MakaronSendKey(MK.START); // A
                    }
                   
                }
                BlockInput(false);



нет в дримовском формате, но грабля даже не в этом, если взять из Demul флешку с прописанным там текущим временем и правильным CRC и скормить ее Макарону - биос всё равно выкидывает запрос на установку даты.
я хз что там Кнут у себя намутил в эмуляторе.
 
я правильно понял что ты в памяти процесса макарона меняешь цифирки ? но тогда оно будет работать только с какой-то определенной версией, а это не айс

Там еще один байт 0F на 07 заменяется в флэшке (где-то в конце )

А может в demul время не правильно сохраняется? или в makaron'е :)

7
Может в секундах  0_0? но там еще каких-то 2 левых байта изменяются не знаю за что они отвечают :)

8
Я решил себе написать конфигуратор для макарона  0_0


Настройка времени без лагов и ее сложно случайно сломать . (BlockInput(true) и почти никакой эмуляции клавиш, просто изменения в памяти.)



https://www.virustotal.com/ru/file/967a7559e8f1f5f6b128f98ed84bce4e782a21b10de6ef73a717ea47b8d5097b/analysis/1381409260/

А разве просто в dreamcast_flash_##.bin нельзя дату заменить на нужную? Я пытался разобраться как там время хранится, но не получилось.

9
Скачал заново makaronex , несколько раз поменял разрешение и опять такое началось. Без MakaronEx разрешение в конфиге меняю и все работает, только игра не запускается. С makaronex ошибка такая как и у



Геймпад Dinput , но там нет триггеров аналоговых.


10
Ну ок, исправил текст сообщения, но от этого лучше не стало работать. 



P.S / = X = НА

Вот даже скрины:

1. Выбираю 1440x900






2. Получаю



11
Что-то у тебя всё подозрительно криво работает.
Не знаю, выбрал 1440x900

после перезапуска получил:

---------------------------
MakaronEX
---------------------------
'#' is not a valid integer value.
---------------------------
ОК   
---------------------------

12
А время без этих файлов никак не настроить? Зачем экран поворачивать? и почему конфиг криво сохраняет makaronex? выбираю 1440/900 разрешение, но оно не сохраняется.

Запустил макарон 12/5 без makaronex , ошибка пропала, НО игра не запускается :) (вообще ничего не происходит ,и потом окно эмулятора закрывается)
Добавлено позже:
И почему запускается 2 процесса, makaron.dll и makaron.exe ? в обычном макароне ведь только один makaron.exe а этот переименованный в dll из exe....Ужас какой-то :)



Сейчас как-то запустилась настройка времени, но по моему рано начались кнопки нажиматься, так как у меня эмулятор не загрузился до конца, а они уже нажимаются :)


Что нужно для настройки времени? напишу без вирусов на c#(или возможно C++) автоматический настройщик без всяких хуков и вирусов.

13


Точно такая же ошибка.

Как исправить эту ошибку? Проверил все настройки, ничего не помогло.


И зачем вы распространяете вирусы?

set.exe vert.exe pause.exe

https://www.virustotal.com/ru/file/21384632c942c052b67d02217d09cc5527c6b3e18273474188f122aa7da80030/analysis/1381338692/

Думал MakaronEx установить, а там на все дополнительные файлы начало ругаться, троян и т.п

Что эти файлы делают? запустил в песочнице, включил настройку времени, запустился там cmd.exe ,set.exe ... Открылся makaron.dll запустился эмулятор, потом ошибка похожая как на скрине только там что-то про ..urom.. было написано. Потом кнопки стали сами по себе нажиматься и т.п


14
Какая последняя версия эмулятора для x64?


15
Если тебе нужен spawn в переводе на китайский от DCLT могу скинуть.
Просто хочу изменить текстуры и т.п, а заодно хотел бы узнать какой версии там .mdl(?).

P.S ни слова не сказал что хочу скачать игру в переводе на китайский, я нашел упоминания о проге на китайском сайте а ссылку на неё не нашёл

Добавлено позже:
вот например один из файлов:

http://www.mediafire.com/?6rxcbbp1u1t273h

Помогите. Что это за формат и как его конвертировать.(что б например в TGA и обратно TEX. находил TEX2TGA TXB2TGA но они чето не открывали :( )

16
GeForce 9500 512 mb (и разогнанная) и winXP ... Не думаю что это только у меня... Жаль что не развиваются .





а мож подсказать какую тулзу юзать для конвертации текстур ? http://www.emu-land.net/forum/index.php/topic,61773.0.html

17
Пробовал играть в Spawn: In The demon's hand на этом эмуле... 1 ядро проца грузит меньше 40%, видюху тоже <30% грузит, но тормозит ужасно...Видео воспроизводится с лагами, как так вообще возможно?  Может перед стартом эмуля конвертируйте видеофайлы и потом обычный формат воспроизводите или такое не прокатит?


на макароне с туманом траблы, а так там вообще без лагов. На nulldc без лагов, но большие мапы лагают просто жуть, тут как макарон+nulldc(текстуры в тумане не правильно отображаются, и большие мапы лагают(хоть и проц с видюхай не грузит >40%.))

18
Подскажите что это за формат файлов .tex и чем его редактировать.

Нашел китайский форум но не могу найти там ссылку http://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=7&ved=0CG4QFjAG&url=http%3A%2F%2Fbbs.chinaemu.org%2Fsimple%2Ft88513.html&ei=ht2xT6TiNInTtAabnPWhBA&usg=AFQjCNHtbh7VVW3xmsJeRRept9wTl_shaA&sig2=vnUY0CiwIeECp5a9a-rnfA


Просто хочу изменить текстуры и т.п, а заодно хотел бы узнать какой версии там .mdl(?).

Страницы: [1]