PC-01 Lviv http://pc01.lviv.ua/forum/ |
|
MADL2021 http://pc01.lviv.ua/forum/viewtopic.php?f=20&t=394 |
Page 1 of 1 |
Author: | als [ 24 Apr 2021, 15:05 ] |
Post subject: | MADL2021 |
Значит, начнём наверно так. Для возможности работы с МАДЛом, должна быть установлена такая среда разработки как FPC или DELPHI. Если у Вас есть уже установленная такая среда разработки или по крайней мере есть утилиты от такой среды, которые могут компилировать (такие как dcc32.exe, с несколькими файлами SysInit.dcu; system.dcu; Types.dcu; windows.dcu;) то устанавливать ничего не нужно. Если же у вас нет среды DELPHI и вы хотите использовать среду FPC, то установите эту среду с сайта https://www.freepascal.org/ . МАДЛ проверялся на FPC версии 2.6.0. Логично предположить, что он будет работать на более новых версиях. Для тех, кто не хочеш иметь дело с инсталяциями, по каким-то причинам, есть FPC версии 2.6.0 которая была установлення как можно минимальнее (исключительно для работы МАДЛ) на диск "C" и запакована в архив. Архив можна скачать вот отсюда - http://forumstatic.ru/files/0010/2b/7f/38977.7z Размер архива: 3 798 023 байта, размер распакованного: 26 060 358 байт. Скачайте архив http://forumstatic.ru/files/0010/2b/7f/38977.7z и распакуйте в корневой каталог диска "C:\". МАДЛ проверялся на работоспособность с версиями DELPHI 5, DELPHI 7, DELPHI 10Lite, точнее говоря используя утилиты (такие как dcc32.exe, с несколькими файлами SysInit.dcu; system.dcu; Types.dcu; windows.dcu;) от этих сред программирования. К слову, замечу, что компиляция утилитами (или средой DELPHI) происходит быстрее чем компиляция FPC, во всяком случае версии 2.6.0. Особенно это заметно когда компилируешь, декомпилированные LVT файлы такие большие как SPY.LVT. |
Author: | als [ 24 Apr 2021, 16:56 ] |
Post subject: | Re: MADL2021 |
Забыл в первом сообщении упомянуть. Данная разработка предназначена, для любителей Паскалеподобных сред программирования. И расчитана на пользователей которые имеют представление о данных средах. Далее предлагаю скачать архив 212404_MADL2021_000.7Z з некоторыми файлами МАДЛа, которых достаточно, чтобы посмотреть как это работает и работает ли оно у вас вообще. Скачиваем архив распаковываем на диск "C:\" в корневой каталог. Attachment:
Проверяем правильность настроек файла CompileFPC_RUN.bat.При использование FPC 2.6.0 (распакованного с архива предложенного мною) на "C:\" в корневой каталог, строка компилирования должна выглядеть вот так c:\FPC\2.6.0\bin\i386-win32\fpc.exe Project.dpr если же вы используете утилиты Delphi, то тогда примерно вот так C:\Delphi\dcc32.exe -UC:\Delphi Project.dpr в зависимости от расположения среды Delphi (её утилит). Можна открыть Project.dpr в самой среде Delphi и скомпилировать, запустить (F9) и посмотреть, что будет. Или же запустите CompileFPC_RUN.bat После того как Вы запустили CompileFPC_RUN.bat и все увидели... Если Вам такое категорически не приемлемо, - удалите немедленно! А так же забудьте название, эту тему, да и автора, при желании. Дальше для Вас лучше не будет! Если же Вас это заинтересовало хоть как-то, оставляем всё на далее, будем то все постепенно "наращивать" на том же месте, т.е. в корневом каталоге диска "C:\". С данным примером вряд ли сильно разгонишься как-то поэкперементировать, так как в нём не реализованы метки. Это так сказать "нулёвка" (часть МАДЛа - MD00)да еще и с минимальным количеством файлов, достаточных для демонстрации. Существуют уже часть МАДЛа - MD01 которая позволяет работать с метками. Мне осталось её лишь только выложить. А так же, естественно существуют декомпиляторы которые декомпилируют так, что МАДЛ компилирует запускает их "без сучка и задиринки". Но давайте обо всём по порядку и постепенно. Я не хочу на пользователей голову сваливать все и сразу. Я хочу. что те кого заинтересовало подобное, по ходу наращивания разобрались, что к чему и как это все работает. Документация уже тоже готова, осталось выложить. Пока можете рассмотреть файлы Project.dpr и uMD00u.pas , да больше и рассматривать то нечего. P.S. По поводу поексперементировать с тем, что есть... uMD00u.pas редактировать не рекомендую, а только рассматривать! В Project.dpr, ну можете попробовать точку старта поменять StartProgram; или же заменить где-то например MviA($00); на MviB($00); (на MviA($10);) и посмотреть, что из этого будет. Сами понимаете, что тут идет привязка чёткая к адресам и любые вставки неравные по количеству байтов и программа (ПК-01) просто не запуститься! Успехов! |
Author: | als [ 24 Apr 2021, 18:08 ] |
Post subject: | Re: MADL2021 |
Необходимые файлы для работы МАДЛа. SE - внешний САС-эмулятор-для-МАДЛ. view.exe - просмотрщик ошибок. MD00uToLVT.exe - компилятор файлов .MD00u в _res.LVT Распаковать в коневой каталог "C:\" (в папку МАДЛа) Attachment:
Документация МАДЛ, MD00, "Мнемо КР580 и МАДЛ" Attachment:
|
Author: | als [ 24 Apr 2021, 18:26 ] |
Post subject: | Re: MADL2021 |
Распаковывать в корневой каталог "C:\" "LVTtoMD00D(e)" - Декомпилятор из LVT-файла в Project.dpr (в мнемонику КР580) (пример PL.lvt) "LVTtoMD00M(e)" -Декомпилятор из LVT-файла в Project.dpr (в мнемонику МАДЛ) (пример kobra.lvt) "MD00DtoMD00U(d)" - MD00DtoMD00U.dll - модуль, который Project.dpr, компилирует в файл "Project.MD00u". (пример FRUCT.LVT) Attachment:
|
Author: | als [ 24 Apr 2021, 20:11 ] |
Post subject: | Re: MADL2021 |
ЧАСТЬ МАДЛа MD01. (Реализованы метки) Распаковывать в корневой каталог "C:\" В архиве: MADL2021 - файлы комплятора (MD01) MD01.dll, MD01main.dll, uMD01u.pas MADL2021doc - "ОПИСАНИЕ ПРОЦЕДУР И ФУНКЦИЙ КОМПИЛЯТОРА (MD01).txt" "LVTtoMD01D(e)" - Дизкомпилятор из LVT-файла в Project.dpr (в мнемонику КР580) (пример mario.lvt) "LVTtoMD01M(e)" - Дизкомпилятор из LVT-файла в Project.dpr (в мнемонику МАДЛ) (пример popcornfvi.lvt) Attachment:
|
Author: | als [ 03 May 2021, 16:53 ] |
Post subject: | Re: MADL2021 |
Создана тема Учимся писать на MADL2021 viewtopic.php?f=8&t=397 которая предназначена для примеров, проб, экспериментов, частей кода, черновиков (кода), вопросов от пользователей касающихся написания кода на МАДЛе. Данная же тема "MADL2021", будет использоваться для архивом связанных связанных с МАДЛом! |
Author: | als [ 03 May 2021, 19:51 ] |
Post subject: | Re: MADL2021 |
Attachment:
Файл 210503_MADL2021Samples.7z содержит 4 примера (LS1 - LS4) которые опубликованы в теме"Учимся писать на MADL2021" viewtopic.php?f=8&t=397#p5443 |
Author: | als [ 04 May 2021, 14:02 ] |
Post subject: | Re: MADL2021 |
Внимание! Все, что есть на сегодняшний день по МАДЛу (и не только) все предыдущие архивы этой темы и новое, теперь будет в одном архиве! Этот архив далее будет базовым для будущих обновлений МАДЛа Размер распакованного архива = 13 888 151 байт. Распаковывать в корневой каталог диска "C:\" (папки "MADL2021", "MD00", "MD01") Attachment:
===============МАДЛ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);Ну более ничего так сразу и не припомнишь. Буду заниматься короче, пока появилось желание, время и главное настроение этим заниматься! |
Author: | als [ 13 Jun 2022, 14:05 ] |
Post subject: | Re: MADL2021 |
Почну з того, що з цих пір описи моїх програмних продуктів та іншого будуть лише Українською мовою! Тепер це принципово! Якщо це недопустимо на цьому форумі будь-ласка напишіть, я припиню участь! Тепер по суті: В MADL2021 була виявлена помилка в деяких файлах, а саме — неправильна компіляція команди, код якої $F4, компілювання було як $E4. {F4}Procedure Cp(e:Cardinal);Begin ComC($E4,e); end; Це необхідно виправити в файлах: MADL2021\uMD00u.pas MADL2021\uMD01u.pas MD00\MD00DtoMD00U(d)\source.7z\uMD00u.pas MD00\MD00DtoMD00U(d)\uMD00u.pas Сподіваюсь більше нічого й ніде виправляти не треба, хоча рекомендую продивитись самостійно. Архів з виправленими файлами які потрібно замінити: Attachment:
Повний архів MADL2021 з виправленнями та деякими переміщеннями в директоріях:
Attachment:
На цьому я припиняю розробку, виправлення та все інше що пов*язано з MADL2021.Готую MADL2023. Назва відповідає року його випуску. MADL2023 буде уявляти модулі для FPC, тобто файли *.o , *.ppu. “Відсіювання” не потрібного коду, даних в написаній для ПК-01 програмі, компіляція і т.д. буде відбуватись виключно через FPC. Команди-КР580, процедури та інше у вигляді процедур для FPC. “Розпізнавання” вихідного коду, як в інших компіляторах не буде, бо дуже складна річ, як й крутилка для “відсіювання” не потрібного коду в самому компіляторі. |
Author: | als [ 27 Jul 2022, 12:19 ] |
Post subject: | Re: MADL2021 |
Тема “MADL2021”, як і розробка “MADL2021”, - закриті! Наділі переходжу на розробку “MADL2023” ( viewtopic.php?f=20&t=405 )! |
Page 1 of 1 | All times are UTC+03:00 |
Powered by phpBB® Forum Software © phpBB Limited https://www.phpbb.com/ |