Внимание! Все, что есть на сегодняшний день по МАДЛу (и не только)
все предыдущие архивы этой темы и новое, теперь будет в одном архиве!
Этот архив далее будет базовым для будущих обновлений МАДЛа
Размер распакованного архива = 13 888 151 байт.
Распаковывать в корневой каталог диска "C:\" (папки "MADL2021", "MD00", "MD01")
Attachment:
210504_MADL2021Full.7z [1016.15 KiB]
Downloaded 767 times
===============
МАДЛ01. Итоги. Перспективы и прочее.
Работы над частью МАДЛа которая МД01 завершены. Больше согласно логике туда добавлять нечего.
Для начало объясню почему я называю «часть», а не «версия». В принципе можно называть и так и так, но насколько я понимаю, версия это что-то такое отдельное и явно не зависимое от предыдущих версий. В МАДЛе это далеко не так, но это не является каким-то дефектом реализации. Просто МАДЛ устроен так, что будущая часть использует предыдущую т.е. она (будущая часть) не может работать без предыдущих частей МАДЛа. В принципе, мною как автором это было задумано, для того, чтобы была «жесткая платформа» для будущих частей МАДЛа и не было необходимости «ковырять» что-то там в предыдущих частях. Ну по крайней мере, я очень стараюсь этого не делать!
Теперь обо всех папках МАДЛа, а также архивах которые были выложены на форум в тему. Об их путях на диске, переименовании и т.д.
«MADL2021»
viewtopic.php?f=20&t=394
Для начала скажу, что автор, т.е. сделал всё, чтобы минимализировать зависимость МАДЛа от чего либо подобного. Однако обстоятельствами накладываются разные ограничения.
Архивы МАДЛа проверялись, рассматривались и будут рассматриваться далее, как расположенные на на диске "C:\" (в корневом каталоге). Для тех, кого это устраивает или он уже понял как можно, что можно и куда перенести, далее эта тема скорее всего не представляет для него никакого интереса.
Интерес будет тем, кому не нравиться расположение МАДЛа на "C:\" (в корневом каталоге).
Давайте, рассмотрим, все зависимости МАДЛа и разберемся, что можно делать а что нет, для того, чтобы сохранялась работоспособность МАДЛа.
Ну начнём с того, что МАДЛ использует FPC 2.6.0 или какой-то другой паскалеподобный компилятор. Вся зависимость МАДЛа от того где находится компилятор (FPC 2.6.0 или какой-то другой) и его работоспособности быть используемым их другого каталога (из бат-файла другого каталога). Зависимость МАДЛа прописана в файле C:\MADL2021\CompileFPC_RUN.bat, в строке «c:\FPC\2.6.0\bin\i386-win32\fpc.exe ...». Вот и вся его зависимость, которую если учитывать можно можно соответственно манипулировать этим.
Сам каталог «MADL2021» может называться как угодно, располагаться, где угодно и т.д.
Так уж устроен МАДЛ, что проекты должны находится в том же каталоге где и МАДЛ. Так как проекту нужно «прямое» использование DLL-файлов. А остальное, в папке МАДЛа тоже с этим связно.
О том, что можно и нельзя с файлами в папке МАДЛа, читайте в
MADL2021doc\MD00\"Описание файлов и каталогов МАДЛ(MD00).txt" и
MADL2021doc\MD00\"Тоже Описание файлов и каталогов МАДЛ(MD00).txt"
Коротко говоря, DLL-файлы лучше вообще не трогать (Не переименовывать! Не перемещать! и т.д.) Ну а далее, как я писал, там одно от другого зависимо.
В принципе при необходимости МАДЛов может быть несколько «MADL2021(1)», «MADL2021(2)» и т.д. Такое может быть удобно в случаях под каждый проект отдельный МАДЛ.
Не так он уж и много занимает места на диске, чтобы были причины такого не делать! И каждый из них будет естественно не зависимый от другого, и может быть удален как отдельный МАДЛ!
ПАПКи MD00 и MD01.
В них находятся вспомогательные программы (декомпиляторы).
В папках этих программ находятся bat-файлы. По сути то тестовые bat-файлы, для демонстрации. Т.е. настроенные на тестовую проверку (по конкретному файлу) декомпиляции с последующие компиляцией декомпилированного файла. Зависимость тех программ, находящихся в папках (и подпапках) MD00 и MD01, от того где находится МАДЛ, исключительно в bat-файлах. Больше не от чего программы в тех папках не зависимы. Bat-файлы могу быть вообще удалены. Папки могут быть перенесены, переименованы. Exe-файлы, - тоже могут быть переименованы. А вот dll-файлы, естественно трогать нельзя (переносить, переименовывать)! Ну с txt-файлами, все понятно — что хочешь то и делай!
Вот вроде и все по этим папкам.
Папки MADL2021doc, MADL2021dop, MADL2021Samples.
Папки документации, разных дополнений и примеров.
С этим всем поступайте как хотите и делайте что хотите!
Папка «MADL2021Samples» там находятся примеры, но они все равно должны копироваться в МАДЛ для запуска. Поэтому она может быть постоянно запакована в архив. И только при необходимости распаковывать, только то, что нужно. Все остальные папки тоже так. Ну это я как пример.
Что еще можно сказать по этой теме ...
Остерегайтесь названий своих проектов такими именами файлов которые использую я, например Project.dpr для примеров и разных тестов. Это все для того, чтобы случайно обновлением или запуском очередного тестового bat-файла, не испортить ваши труды. В будущем скорее всего появится папка «LIB» в папке МАДЛа. В ней будут модули, макросы и прочее как говорится в «открытом» виде. Если же вы будете их редактировать по своему, - наверное лучше все таки сделать копию «LIB» в «MyLIB» и там этим всем заниматься. Скорее всего только папка «LIB» и будет обновляться! Хотя не исключено, что однажды будет сказано удалить весь МАДЛ, распаковывать новый из архива — не забудьте предварительно сохранить все что вам нужно из старой папки МАДЛ перед удалением.
Все что будет в будущих в архивах, самое главное будет в папке «MADL2021». С остальным можете поступать и относится, как я уже писал выше.
Ну вот вроде и все!
Чего ждать в будущей части МАДЛ02.
Пока радикальных изменений не ждите, подобных
TByteLV, TWordLV, TTextLV,
TArrayByteLV, TArrayWordLV, TspriteLV,
TProcedureLV, TLabelGLV, TFunctionLV.
Оно то всё это есть и работает, но должно пройти хорошенькую «обкатку»
так как оно все базируется на TLabelLV, который в следующих частях МАДЛа, (после МАДЛ02) видимо для пользователя нужно будет отменять! Во всяком случае прямое его применение.
Попробую начать с того, чтобы в МАДЛ02, реализовать типы регистров и регистровых пар и макросов к ним.
Добавлю разные «вкусности» подобных
Code:
DText(txt1,'txt1','Привет мир!');
DrawText(txt1);
Со спайтами надо подобное делать. Это важно.
Code:
DSprite(SPRITE241,'SPRITE241',' ','1','2','3',
'2 2'+
' 233332 '+
' 2222 '+
' 322223 '+
' 322223 '+
' 2222 '+
' 2 33 2 '+
'2 2'
);
DrawSprite(SPRITE241);
Ну более ничего так сразу и не припомнишь.
Буду заниматься короче,
пока появилось желание, время и главное настроение этим заниматься!