Forums Logo

Здравствуйте Гость ( Вход | Регистрация )

[ Каскадный ] · Стандартный · Линейный

> DLDI и с чем его едят, а то непонятки возникают :)

theli
post Суббота, 20 января 2007, 14:31
Отправлено #1


вышибала
*****

Группа: Пользователи
Сообщений: 729
Регистрация: 09 окт. 2006
Из: Киев
Пользователь №: 18 402





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

И вот ... совсем недавно первонгоочальный автор 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/downl...itool-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/

Сообщение отредактировал theli - Вторник, 17 апреля 2007, 09:13


--------------------
xmpp://theli@theli.is-a-geek.orguser posted image
user posted image
поддержку в ПМ не оказываю
User is offlineProfile CardPM
Go to the top of the page
+Quote Post

Posts in this topic
theli   DLDI и с чем его едят   Суббота, 20 января 2007, 14:31
inkvizitor   Спасибо! Эмуль МД2 теперь работает. Органайзе...   Суббота, 20 января 2007, 15:53
theli   DSOrganize b SnemulDS да так же .. как и все что ...   Суббота, 20 января 2007, 22:17
Oris   А никто не видел scummVM ds с поддержкой DLDI? Оче...   Суббота, 20 января 2007, 23:17
theli   ну вот и вышло http://scummvm.drunkencoders.com/s...   Воскресенье, 28 января 2007, 16:51
Oris   Круто! спасибо :)   Воскресенье, 28 января 2007, 21:02
theli   я могу собрать вот только не стоит .... скоро agen...   Суббота, 20 января 2007, 23:27
Cluster   Я как раз думал такую тему создать, но меня оперед...   Воскресенье, 21 января 2007, 01:03
Atari Teenage Riot   это получается, что скоро можно будет запускать sc...   Понедельник, 22 января 2007, 12:07
theli   ну собсна версию с драйвером (чтение) давно неоффи...   Понедельник, 22 января 2007, 12:20
Cluster   Не долго я радовался. Собрал свою прогу с gba_nds_...   Понедельник, 22 января 2007, 20:37
theli   Cluster, может ошибся где?   Понедельник, 22 января 2007, 21:04
Cluster   Да где там можно ошибиться, если тот же самый ROM ...   Понедельник, 22 января 2007, 21:47
theli   протести драйвер на этом http://chishm.drunkencode...   Вторник, 23 января 2007, 10:19
Cluster   Протестил. "Initing FAT...fail"   Вторник, 23 января 2007, 12:41
theli   ну не знаю даже .. а может у тебя все-таки не М3-...   Вторник, 23 января 2007, 12:55
Cluster   Пошутил, да? =) Я знаю какой у меня адаптер. И с ...   Вторник, 23 января 2007, 13:04
theli   нет, не стоит убирая драйвера мы получаем больше т...   Вторник, 23 января 2007, 13:46
Cluster   А у тебя M3 CF есть, чтобы проверить?   Вторник, 23 января 2007, 13:57
theli   та в том то и дело что нима :( а муншелл последний...   Вторник, 23 января 2007, 14:24
Cluster   Не пробовал. Надо попросить Кира, чтобы он попробо...   Вторник, 23 января 2007, 17:19
theli   все-таки попробуй финал муншелл 1.6 на m3cf   Вторник, 23 января 2007, 17:24
Cluster   Попробую, только чуть позже. M3 CF принадлежит мое...   Среда, 24 января 2007, 01:31
theli   наверное битый :) ... хотя можешь перекачать .... ...   Среда, 24 января 2007, 08:38
Cluster   У Кира на M3 тоже не работает. Пробовал скачать др...   Среда, 31 января 2007, 21:06
theli   хм .. т.е. m3cf.dldi не пашет на самой М3 CF ... о...   Среда, 31 января 2007, 21:51
inkvizitor   Эмуль NES поддерживает DLDI? И если да, где можно ...   Воскресенье, 04 февраля 2007, 14:32
Cluster   Дык NesDS умеет прямо в свой бинарник ромы добавл...   Воскресенье, 04 февраля 2007, 14:50
inkvizitor   Написано No roms found. Хотя ромы там есть, и на...   Воскресенье, 04 февраля 2007, 15:28
werter1232   более удобная прога для патча хомбрю dlditool-win3...   Вторник, 27 февраля 2007, 09:33
Cluster   Мне, например, командная строка кажется удобнее и...   Вторник, 27 февраля 2007, 14:32
Zuko   У меня dlditool.exe при запуске сразу закрывается,...   Воскресенье, 04 марта 2007, 13:30
Bogger   Скажите мне че я не так делаю: Скачал dlditool-win...   Среда, 14 марта 2007, 21:06
slavasob   А для чего существуют файлы типа "*tgz"?...   Понедельник, 02 апреля 2007, 18:37
Cluster   ЛОЛ. Это банально архив =))))   Понедельник, 02 апреля 2007, 19:39
Gucha   хм... может мне ктонибудь обьяснить) в общем разра...   Пятница, 06 апреля 2007, 14:32
Gene98   это как бы и есть общий стандарт   Пятница, 06 апреля 2007, 15:45
Goodmesh   Вопрос. Вот у меня EZ-V. Если я гружу софт с shell...   Среда, 11 июля 2007, 22:16
Goodmesh   Если вопрос непонятен - так и скажите. Если не зна...   Пятница, 13 июля 2007, 20:45
theli   в DSOrganize попробуй пропатчить dldi файл exec_st...   Пятница, 13 июля 2007, 21:12


Reply to this topicStart new topic
1 чел. читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
 

Упрощённая версия Сейчас: Пт., 26 апр. 2024, 17:00
Skin Designed (c) by Rooq.net, All Rights Reserved.