Версия для печати темы

Нажмите сюда для просмотра этой темы в оригинальном формате

GBX.ru _ NDS: Эмуляторы / Утилиты _ DLDI и с чем его едят

Автор: theli Суббота, 20 января 2007, 14:31

С самого начала разработки хоумбрю под ДС возникла проблема несовместимости драйверов для доступа к файловой системе флешки, нежелание/невозможности производителей флешек выпускать драйвера, а также необходимость для разработчика заниматься кучей драйверов для кучи флешек (это вместо того чтобы сосредоточиться на своём продукте)...

И вот ... совсем недавно первонгоочальный автор GBA_NDA_FAT и fatlib "Chishm" разработал новый интерфейс для встраивания драйверов доступа к флеш-памяти -
DLDI ( Dynamically Linked Device Interface )
http://chishm.drunkencoders.com/DLDI/index.html

Если в кратце и совсем просто - то это драйвер который как-бы оставляет в собранном приложении место для драйвера ( уже выпущенного или который когда-нить выйдет wink.gif ).

Таким образом разработчику не приходится заниматься поддержкой кучи драйверов кучи флешек а предоставить процедуру "встраивания" драйвера пользователям. Кроме того это выгодно и пользователям ... к примеру если к вашей карточке только появился драйвер то не надо ждать пока разработчик его добавит в свое приложение ( как было раньше ), а просто взять и пропатчить приложение нужным драйвером.

Как этим всем пользоваться..
Для начала скачаем все необходимое для "встраивания" драйвера.
Это драйвер для нашего адаптера и сам патчер.
Патчер существует под ОС Windows, Linux, Mac OS.
Но, т.к. мы будем рассматривать вариант для коммандной строки то вся процедура идентична для любой ОС.
Итого .. пользователи Windows скачивают
http://chishm.drunkencoders.com/DLDI/downloads/dlditool-win32.zip
А пользователи Linux/Mac скорее всего исходники т.к. на момент написания этого текста последней версии патчера (1.21) недоступны в собранном виде для этих ОС а предыдущие версии имели некоторые проблемы.

Теперь нам понадобится драйвер. Для этого заходим на
http://chishm.drunkencoders.com/DLDI/index.html и смотрим таблицу доступных драйверов.
Нас интересует первая колонка - тип адаптера.
Ссылка на готовый драйвер dldi в колонке Download.
Если кто-то хочет заняться усовершенствованием драйвера то может скачать и исходные тексты драйвера (SRC).

Получив все необходимое можно заняться добавлением поддержки своего адаптера в нужное нам хоумбрю smile.gif.

сама процедура предельно проста - достаточно запустить скачанный dlditool с нужными параметрами

CODE
dlditool путь_к_драйверу путь_к_хоумбрю

и все smile.gif
к примеру:
CODE

dlditool mpcf.dldi libfat_tests.nds

вывод должен быть примерно такой:
CODE
C:\rom_dir\>dlditool mpcf.dldi libfat_tests.nds
Dynamically Linked Disk Interface patch tool by Michael Chisholm (Chishm)

Old driver:          Default (No interface)
New driver:          GBA Movie Player (Compact Flash)

Position in file:    0x000062C0
Position in memory:  0x02000000
Patch base address:  0xBF800000
Relocation offset:   0x428060C0

Patched successfully



update [2007.04.17]
также появилась Wiki с информацией по DLDI
http://dldi.drunkencoders.com/

Автор: inkvizitor Суббота, 20 января 2007, 15:53

Спасибо! Эмуль МД2 теперь работает.

Органайзер 2.45бета то же так запускать? И SNEmulDS?

Как правильно Doom запускать, что бы при установке не испортить файлы на флешке?

Автор: theli Суббота, 20 января 2007, 22:17

DSOrganize b SnemulDS да так же .. как и все что использует DLDI для драйверов доступа к флешке ... насчет дум ... единственная версия которая поддерживает DLDI которую я видел это отсюда
http://www.jefklak.com/Guides/Doom-DS
там в версии 1.1.0 Rev1 добавлена его поддержка.


зы: может это прицепить ? smile.gif

Автор: Oris Суббота, 20 января 2007, 23:17

А никто не видел scummVM ds с поддержкой DLDI? Очень погонять хочется smile.gif

Автор: theli Суббота, 20 января 2007, 23:27

я могу собрать вот только не стоит .... скоро agentq новую версию .. с поддержкой выложит

Автор: Cluster Воскресенье, 21 января 2007, 01:03

Я как раз думал такую тему создать, но меня опередили smile.gif Идея замечательная. Облегчает жизнь и программистам, и пользователям =)

Автор: Atari Teenage Riot Понедельник, 22 января 2007, 12:07

это получается, что скоро можно будет запускать scummVM на G6 Lite?

Автор: theli Понедельник, 22 января 2007, 12:20

ну собсна версию с драйвером (чтение) давно неоффициально мы выкладывали ...
а так да - следующая версия будет использовать DLDI .. ну и будет работать на карточках для которых есть такой драйвер.

Автор: Cluster Понедельник, 22 января 2007, 20:37

Не долго я радовался. Собрал свою прогу с gba_nds_fat, включив в драйвера только DLDI (всякие M3/Supercard'ы я выкинул). Пропатчил ROM, вставив в него дрова для G6 - работает, всё замечательно. Сейчас решил пропатчить под M3 CF - драйвер даже не инициализируется :( Если включить драйвер M3 CF в саму gba_nds_fat, то всё работает. Впечатление, что DLDI драйвер для M3 CF, выложенный на сайте Chishm'а, битый :(

Автор: theli Понедельник, 22 января 2007, 21:04

Cluster, может ошибся где?

Автор: Cluster Понедельник, 22 января 2007, 21:47

Да где там можно ошибиться, если тот же самый ROM с G6 работает... Только драйвер M3CF подключаю.

Автор: theli Вторник, 23 января 2007, 10:19

протести драйвер на этом
http://chishm.drunkencoders.com/DLDI/downloads/dldi_tester.zip

Автор: Cluster Вторник, 23 января 2007, 12:41

QUOTE (theli @ Вторник, 23 января 2007, 11:19)
протести драйвер на этом
http://chishm.drunkencoders.com/DLDI/downloads/dldi_tester.zip
*
Протестил.
"Initing FAT...fail"

Автор: theli Вторник, 23 января 2007, 12:55

ну не знаю даже .. а может у тебя все-таки не М3-Цф а М3-СД ? хы-хы ..

Автор: Cluster Вторник, 23 января 2007, 13:04

QUOTE (theli @ Вторник, 23 января 2007, 13:55)
ну не знаю даже  .. а может у тебя все-таки не М3-Цф а М3-СД ? хы-хы ..
*
Пошутил, да? =) Я знаю какой у меня адаптер. И с обычными дровами всё работает. Мораль такова: помимо HLDI всё таки стоит включать в свой софт как можно больше драйверов различных флешек.

Автор: theli Вторник, 23 января 2007, 13:46

нет, не стоит
убирая драйвера мы получаем больше такой драгоценной на ДС памяти ....
а с М3-ЦФ драйвером что-то странное у тебя творится :-/ ...

Автор: Cluster Вторник, 23 января 2007, 13:57

А у тебя M3 CF есть, чтобы проверить?

Автор: theli Вторник, 23 января 2007, 14:24

та в том то и дело что нима sad.gif
а муншелл последний пробовал поставить на м3-цф?

Автор: Cluster Вторник, 23 января 2007, 17:19

Не пробовал. Надо попросить Кира, чтобы он попробовал на своей M3CF.

Автор: theli Вторник, 23 января 2007, 17:24

все-таки попробуй финал муншелл 1.6 на m3cf

Автор: Cluster Среда, 24 января 2007, 01:31

Попробую, только чуть позже. M3 CF принадлежит моей девушке, а она сейчас уже домой поедет, а я на работу.

UPD: Всё таки успел попробовать. Интересный результат...
Муншел с уже встроенным драйвером M3CF работает. Но если встраиваю драйвер, скаченный с официального сайта, то уже не работает. Он у меня битый или битая версия выложена?

Автор: theli Среда, 24 января 2007, 08:38

наверное битый smile.gif ... хотя можешь перекачать ....
ну или просто юзать м3-цф dldi из муншела..... там он разве встроенный?
точно .. не встроенный
m3cf_moon.dldi там есть .. попробуй этот драйвер юзать smile.gif

Автор: theli Воскресенье, 28 января 2007, 16:51

QUOTE (Oris @ Суббота, 20 января 2007, 22:17)
А никто не видел scummVM ds с поддержкой DLDI? Очень погонять хочется smile.gif
*

ну вот и вышло
http://scummvm.drunkencoders.com/scummvmds0-9-1a-beta2.zip

Автор: Oris Воскресенье, 28 января 2007, 21:02

QUOTE (theli @ Воскресенье, 28 января 2007, 17:51)
ну вот и вышло
http://scummvm.drunkencoders.com/scummvmds0-9-1a-beta2.zip
*

Круто! спасибо smile.gif

Автор: Cluster Среда, 31 января 2007, 21:06

У Кира на M3 тоже не работает. Пробовал скачать драйвер заново, скомпилировать из сырцов, результат тот же.

Автор: theli Среда, 31 января 2007, 21:51

хм .. т.е. m3cf.dldi не пашет на самой М3 CF ... очень странно
ну тогда я ж говорю - юзайте драйвер из муншела... он ведь работает?
(он там m3cf_moon.dldi )

Автор: inkvizitor Воскресенье, 04 февраля 2007, 14:32

Эмуль NES поддерживает DLDI? И если да, где можно скачать? А то версия для GBA не очень удобная. На М3 CF полноэкранный эмуль шел, но на М3 Слим СД нет.

Автор: Cluster Воскресенье, 04 февраля 2007, 14:50

QUOTE (inkvizitor @ Воскресенье, 04 февраля 2007, 15:32)
Эмуль NES поддерживает DLDI? И если да, где можно скачать? А то версия для GBA не очень удобная. На М3 CF полноэкранный эмуль шел, но на М3 Слим СД нет.
*

Дык NesDS умеет прямо в свой бинарник ромы добавлять (GBFS?), поэтому он должен на всех флешках работать... По крайней мере на моей G6 работал ещё очень давно.

Автор: inkvizitor Воскресенье, 04 февраля 2007, 15:28

QUOTE (Cluster @ Воскресенье, 04 февраля 2007, 14:50)
Дык NesDS умеет прямо в свой бинарник ромы добавлять (GBFS?), поэтому он должен на всех флешках работать... По крайней мере на моей G6 работал ещё очень давно.
*


Написано No roms found. Хотя ромы там есть, и на М3 СF все шло.

Есть за 31.07.06, правда теперь его надо скачать. Нет более новых версий?

---

На моей запустить не вышло, хотя у знакомого на М3 CF работает, да и у меня работало.

Автор: werter1232 Вторник, 27 февраля 2007, 09:33

более удобная прога для патча хомбрю dlditool-win32-gui не нужно заморачиватся с командной строкой

Автор: Cluster Вторник, 27 февраля 2007, 14:32

QUOTE (werter1232 @ Вторник, 27 февраля 2007, 10:33)
более удобная прога для патча хомбрю dlditool-win32-gui не нужно заморачиватся с командной строкой
*

Мне, например, командная строка кажется удобнее и быстрее. Так что дело вкуса.

Автор: Zuko Воскресенье, 04 марта 2007, 13:30

У меня dlditool.exe при запуске сразу закрывается, может я что-то не то делаю?

А, все не надо, я скачал dlditool-win32-gui, и теперь все норм..

Автор: Bogger Среда, 14 марта 2007, 21:06

Скажите мне че я не так делаю:
Скачал dlditool-win32-gui
Указал путь для драйвера моей флехи (г6)
Указал путь для homebrew.nds
Пропатчил
Залил на карту через манагер тот самый фаил
Результат один - белые экраны, тестил емуль снеса и нитротракер.

Автор: slavasob Понедельник, 02 апреля 2007, 18:37

А для чего существуют файлы типа "*tgz"?
Я уже запутался во всём этом *МАТ*е

Автор: Cluster Понедельник, 02 апреля 2007, 19:39

QUOTE (slavasob @ Понедельник, 02 апреля 2007, 19:37)
А для чего существуют файлы типа "*tgz"?
*
ЛОЛ. Это банально архив =))))

Автор: Gucha Пятница, 06 апреля 2007, 14:32

хм... может мне ктонибудь обьяснить)
в общем разработчик делает когда хомбрю он он оставляет какбы место под патчинье этим самым длди своего хомбрю на любую флешку?
и почему бы не сделать всем общий стандарт?

Автор: Gene98 Пятница, 06 апреля 2007, 15:45

это как бы и есть общий стандарт

Автор: Goodmesh Среда, 11 июля 2007, 22:16

Вопрос.
Вот у меня EZ-V. Если я гружу софт с shell'а - то всё в порядке, грузится через DLDI и нет проблем. Но если я запускаю любой софт из-под другой софтинки, то вылезает например, в DSOrganaise - инициализация FAT. В Муншелле же просто - не соответсвует карточке. Почему так происходит? Это решаемо?

Автор: Goodmesh Пятница, 13 июля 2007, 20:45

Если вопрос непонятен - так и скажите. Если не знаете - тоже. А то даже не понятно - видели пост или нет.

Автор: theli Пятница, 13 июля 2007, 21:12

в DSOrganize попробуй пропатчить dldi файл exec_stub.bin
а с муншеллом не решаемо раз не работает.
это вообще, к сожалению, достаточно проблемно запускать приложения из приложений в связи со спецификой платформы

Автор: Goodmesh Суббота, 14 июля 2007, 04:30

Говорю только как теоретик - а почему при вызове бинарника не передавать управление и путь обратно кернелу флешки?..
Просто "флешечный" муншелл меня не устраивает - много глюков с музыкой, с "окошками" на тачскрине...
А с Органайзом - надо попробовать...

upd
Органайз не лечится.

Автор: Johny Воскресенье, 29 июля 2007, 14:00

хелп,я нуп
собственно существует ли длди драйвер для г6рил(слот 1)
???

Автор: p0nt Воскресенье, 29 июля 2007, 14:12

А что нужно делать с нитротрекером?о_О
А то я совсееем нуп+/

Автор: RAuzeR-007 Пятница, 19 октября 2007, 19:42

Помогите Please. В чем проблема скачал soft запускаю эту прогу и она появляеться на 1с и исчезает??

Автор: ndr Пятница, 19 октября 2007, 20:40

запускай через командную строку!

Автор: Santos Пятница, 19 октября 2007, 20:55

Используй прогу - "Dlditool-win32-gui". Всё просто и понятно. Почитать и скачать можешь http://dldi.drunkencoders.com/index.php?title=Win32_GUI

Автор: Cluster Пятница, 19 октября 2007, 21:09

Дети винды...

Автор: elf90 Понедельник, 29 октября 2007, 11:28

так конечно. никто не хочет "замарачиваться" с командной строкой.
а у меня появился вопрос: у меня м3 симпли. скачал dldi для р4,скачал прогу,чтобы пропатчить.так вот патчу я прогу колорс,а она все равно не хочет работать на моей флехе.кто может подсказать в чем я туплю?

Автор: elf90 Понедельник, 29 октября 2007, 23:34

все.проблема решена.всем спасибо=)
просто отформатировал флешку и колорДС заработала.

Автор: Zangetsu Суббота, 09 августа 2008, 10:40

я так и не понял а чем патчить TTDS
ведь ее нет в списке

Автор: Gashik Суббота, 09 августа 2008, 11:51

не надо патчить ТТДС, там встроен этот софт.

Автор: chibis Среда, 08 октября 2008, 13:00

Друзья, что за бред. Хочу скачать DLDI файл для моей М3, а мне парашу какую-то выписывает и скачка не идет. Браузер и опера пробовал и инет эксплорер!

Что блин ваще надо нажимать для флеш-картриджа M3 DS real? excl.gif

Автор: theli Среда, 08 октября 2008, 15:27

для M3 DS real и остальных б/м современных флеш устройств ничего патчить не надо, обычно прошивки патчат хоумбрю автоматом

Автор: Guredo Пятница, 23 января 2009, 15:16

для ТТДС там нету патча

если в ней софт встроен то как же запустить муншел2 если он требует патчинг рома?
как врубить на ней автопатч я хз ничего об этом не сказано

Автор: mr3dx Понедельник, 26 января 2009, 23:58

Возможно эта тема обсуждалась, но не нашел. Вопрос: подскажите пожалуйста как пропатчить игры GBA чтобы в них сэйвиться можно было? У меня M3 Real CF. прошивка установлена http://gbx.ru/index.php?showtopic=40576, и она не патчит сама GBA игры, в результате чего я в них не могу сохраниться. Везде пишут что надо патчить софтом производителя. Воспользовался утилиткой M3DS Real Trim Tool V1.00Beta, но она как то не помогла, хотя про save там было написано. Обьясните пожалуйста, чем нужно патчить? на родном ПО M3 DS Real с этим проблем никаких нет, там игры патчатся сами, но им пользоваться не охота. M3 Sakura поприкольней будет

Автор: filo Понедельник, 04 января 2010, 22:28

я застряла на самом первом шаге,помогите разобратся,скачала прогу
DLDI теперь как на картинке тут
http://dldi.drunkencoders.com/index.php?title=Win32_GUI
надо найти файл,а у меня прга видит только папки,как мне найти этот файл?что я не так делаю?

Автор: filo Понедельник, 04 января 2010, 23:35

объясните что значит надпись вылезающая после применения патча?
.nds не имеют раздел DLDI
и так с каждой игрой которую пытаюсь патчить

Автор: Kir Понедельник, 11 января 2010, 10:44

DLDI - это система драйверов флеш-картриджей для HOMEBREW программ. Пиратские копии игр патчить с помощью DLDI патчера бесполезно.

Автор: Нео Суббота, 30 января 2010, 05:54

В чем может быть проблема: имеется Фат с Асекард2.1, патчу ДсВидео длди от Асекард+ (с сайта),прога запускается и черный экран?
Уже разобрался. DLDI была не родная.

Автор: Daimond Четверг, 17 ноября 2011, 19:35

Поставил WoodYS на M3DS REAL, автопатчинга хомбрюшек я так понял в WoodYS нет. Как можно патчить DLDI для M3DS REAL?

Автор: Че Гевара Четверг, 17 ноября 2011, 23:03

QUOTE (Mad Daimond @ Четверг, 17 ноября 2011, 20:35)
Поставил WoodYS на M3DS REAL, автопатчинга хомбрюшек я так понял в WoodYS нет. Как можно патчить DLDI для M3DS REAL?
*
http://chishm.drunkencoders.com/DLDI/

Автор: Daimond Пятница, 18 ноября 2011, 20:58

QUOTE (Че Гевара @ Пятница, 18 ноября 2011, 00:03)
http://chishm.drunkencoders.com/DLDI/
*

Я видел эту ссылку. Судя по ней для M3DS REAL патчинга не существует. Однако в Вики написано что при необходимости можно вынуть патч из папки SYSTEM прошивки. Вот только как пропатчить неизвестно, ибо ни один патчер его не видит.

Автор: Че Гевара Пятница, 18 ноября 2011, 21:17

QUOTE (Mad Daimond @ Пятница, 18 ноября 2011, 21:58)
Я видел эту ссылку. Судя по ней для M3DS REAL патчинга не существует. Однако в Вики написано что при необходимости можно вынуть патч из папки SYSTEM прошивки. Вот только как пропатчить неизвестно, ибо ни один патчер его не видит.
*
ну так можно переименовать dldi_ds.m3 в m3sd.dldi и он его должен увидеть

Автор: Daimond Суббота, 19 ноября 2011, 14:41

QUOTE (Че Гевара @ Пятница, 18 ноября 2011, 22:17)
ну так можно переименовать dldi_ds.m3 в m3sd.dldi  и он его должен увидеть
*

Пропробую, спасибо.

Автор: Krokozaber Суббота, 12 января 2013, 21:44

господа, а какой драйвер использовать для Ez 3-in-1 Expansion Pack?