Не про канало с включением, отключением дисплея. Слишком уж быстро всё происходит. Надо в других играх посмотреть как это происходит.
AddIntroGen
Сообщений 61 страница 80 из 99
Поделиться622014-03-18 09:38:38
Тогда можно копать в сторону "затемнения экрана". Даже если там и будет мелькать мусор, его не будет видно, так как экран в это время ещё затенён...
Поделиться632014-03-18 09:40:53
А ты не мог бы дать мне код с включением-отключением дисплея. Мой dll-файл с уже сделанными изменениями и объяснением что и где? Я тут хотел кое-что проверить...
Поделиться642014-03-18 10:19:45
Могу только вечером.
Поделиться652014-03-19 12:19:27
Вечерело... ;о)
Поделиться662014-03-19 13:09:34
Это у нас с тобой вечерело, а у Марата ещё день (хотя и ближе к вечеру, но день)
Поделиться672014-03-19 13:25:53
Вчера кабельщики приходили, что-то делали и у меня интернет и кабельное пропало. Сегодня вечером загружу.
Поделиться682014-03-19 13:49:47
А вообще код отключения дисплея выглядит так 33FC810400C00004.
Пояснения:
33FC - команда move.w
81 - номер регистра видео процессора.
04 - состояние в которое нужно установить регистр.
00C00004 - порт управления видео процессором.
Отредактировано Марат (2014-03-19 18:42:19)
Поделиться692014-03-19 20:22:34
Сегодня выяснил, что в коде уже есть команда отключить дисплей. И после загрузки включить дисплей.
Поделиться702014-03-20 00:56:08
Ясно. Значит, надо что-то копать в сторону затенения экрана...
Поделиться712014-03-20 17:08:42
Перезалил файл. Уменьшил размер вставляемой в ром части на 30 кб.
Планирую сделать опции заставки:
1. Изменение скорости затенения экрана при появлении заставки.
2. Включение/отключение небольшой паузы между заставками.
3. Включение/отключение кнопки Start. Если включена - нужно её нажимать для пропуска заставки, нет - не нужно, она исчезнет сама через пару секунд.
Марат, заметил вот что. Если в dll по адресу h516 увеличить стоящее там значение на 16 или на 32, то заставка будет появляться очень медленно. Тогда становится видно, что всё сделано как положено. С выключением/включением экрана и т.д. Но косяк, похоже, в том, что между двумя заставками начинает выполняться какой-то посторонний код. Т.е., как я понял, надо просто его пропустить, т.е. перепрыгнуть - и всё будет ОК. Не глянешь?
Поделиться722014-03-20 17:58:24
Ага. Ром пытается загрузить данные примерно по адресу h5A7. Надо просто как-то убрать эту загрузку...
Поделиться732014-03-20 18:06:46
В итоге получается вот что:
Надо или как-то пропустить это, или сделать так, чтобы размер загружаемых данных был "0", т.е. ничего не загружать...
Как раз кракозябры между заставками видны в этой, верхней, части экрана...
Отредактировано Guyver (2014-03-20 18:09:27)
Поделиться742014-03-20 18:55:00
Такс! Я решил проблему! Ура!!! Правда, пока пришлось пожертвовать постепенным затемнением экрана. Заставки грузятся мгновенно, но зато без артефактов. Поставил между ними паузу в 1 секунду. Попробую ещё поработать, но это уже результат! Перезалил файл.
Конечно, с постепенным затемнением смотрится всё намного круче, но пока мне его вернуть не удаётся...
Может, кто-нибудь из хакеров подскажет более элегантное решение? ;о)
Отредактировано Guyver (2014-03-20 19:50:52)
Поделиться752014-03-20 20:13:15
На Fusion'e ром перестал запускаться.
Поделиться762014-03-20 20:19:05
Эх. А на генсе работает на ура. Скажи какая версия Fusion и где взять... Или поправь dll по-человечески ;о)
Поделиться772014-03-20 20:21:49
Может, ты закачал старый архив? Я его только что перезаливал...
Поделиться782014-03-20 22:17:31
Может, ты закачал старый архив? Я его только что перезаливал...
FUSION 3.64
Поделиться792014-03-21 14:34:43
Я написал свой код. Точнее поправил код из пакета Gentile. Вот результат его работы. http://yadi.sk/d/Ggc06pH1KvySQ
Какой максимальный размер прикрепляемого файла?
Поделиться802014-03-21 16:36:51
Марат, перестало загружаться потому, что я уменьшил dll-файл. Вырезал нули. При этом я нашёл поинтер, который перенаправляет программу на карту графики. В моём файле это:
384 - там находится адрес графики, откуда будет загружаться картинка (2 байта) 7A7C (реальный адрес 8620)
После убирания лишних нулей у меня графика лежит по адресу 1220
Поэтому я 7A7C изменил на 067C. И в генсе у меня всё после этого работает. А почему в FUSION 3.64 не пашет? Там что-то ещё помимо одного поинтера надо изменить было? Не подскажешь?
Главное, я вроде от всех косяков избавился. а тут такое разочарование с фусионом ;*****(
Я вернул старый размер dll файла, всё заработало. Вот ссылка:
http://chief-net.ru/images/ostalnoe/addintrogen.rar
Теперь надо вырезать нули из файла так, чтобы он заработал в fusion...
Отредактировано Guyver (2014-03-21 17:14:29)