Как отключить RTL?

Вопросы программирования на Free Pascal, использования компилятора и утилит.

Модератор: Модераторы

Re: Как отключить RTL?

Сообщение alexs » 14.12.2009 21:17:34

подобным занимались на форуме KolibriOS - делали адаптацию fpc под неё и писали для неё system - автор был кажется bw.
Аватара пользователя
alexs
долгожитель
 
Сообщения: 4060
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь

Re: Как отключить RTL?

Сообщение R1DDLE » 14.12.2009 21:30:46

Надо посмотреть...

Добавлено спустя 10 минут 45 секунд:
Любопытно конечно, но для моих задач это слишком через ж....

P.S. Надо же, KolobriOS стремительно набирает обороты! :)
R1DDLE
новенький
 
Сообщения: 26
Зарегистрирован: 08.12.2009 19:00:24

Re: Как отключить RTL?

Сообщение vital » 15.12.2009 01:51:39

R1DDLE писал(а):
Max Rusov писал(а): (получается этакий язык Си с паскаль синтаксисом)

:D Самое интересное, что мне это и нужно. Низкий уровень Си, но с синтаксисом паскаля и ООП.

P.S. Простите за оффтоп, но случайно не подскажите, на микроконтроллерах соблюдается правило 1 байт = 8 бит?

Спасибо за подсказку! Я так и знал, что выход должен быть, пусть и корявый...

Сколько не искал, не нашёл ни одного ЯП с поддержкой ООП и без RTL. Более-менее легко отключается в C/C++, но Паскале-подобные языки для меня читабельнее. Может плохо искал? :shock:


Что за микроконтроллеры? Не avr/Atmel, случаем?

P.S. Порылся в закладках, нашел пример минимизации стандартного System, правда, для delphi, но идея понятна:
http://xproger.mentalx.org/old/?id=1&page=0&doc=delphi_min
А заодно и обратите внимание, от каких ставших уже привычными вещей придётся отказаться... т.е. практически от всего:))
vital
новенький
 
Сообщения: 86
Зарегистрирован: 17.10.2007 14:52:59

Re: Как отключить RTL?

Сообщение AbakAngelSoft » 15.12.2009 11:03:34

Если после изменения system не изменить objpas никакого ООП не будет!
Аватара пользователя
AbakAngelSoft
постоялец
 
Сообщения: 273
Зарегистрирован: 06.08.2008 19:28:26
Откуда: Краснодар

Re: Как отключить RTL?

Сообщение FedeX » 15.12.2009 11:49:08

Самое интересное, что мне это и нужно. Низкий уровень Си, но с синтаксисом паскаля и ООП.
...
Сколько не искал, не нашёл ни одного ЯП с поддержкой ООП и без RTL. Более-менее легко отключается в C/C++, но Паскале-подобные языки для меня читабельнее. Может плохо искал? :shock:

Если только под Вин32, то советую поискать где-то был такой компилятор/ИДЕ, назывался Странник Си/Модула/Паскаль. Я на нём даже когда-то утилитку одну написал, которой пользуюсь по сей день..

Вот даже нашол сайт:
http://home.perm.ru/strannik/index.html
Аватара пользователя
FedeX
постоялец
 
Сообщения: 422
Зарегистрирован: 27.03.2006 09:25:34
Откуда: украина, житомир

Re: Как отключить RTL?

Сообщение R1DDLE » 15.12.2009 21:01:01

vital писал(а):Что за микроконтроллеры? Не avr/Atmel, случаем?

Пусть даже эти. Мне попадались 2-3 популярные "разновидности". Уверен, что их много больше. Так вот мне интересно, бывает ли в современном мире (кроме экспериментов и еденичных экземпляров) так, чтобы 1 байт не был равен 8 бит?

Добавлено спустя 4 минуты 30 секунд:
vital писал(а):P.S. Порылся в закладках, нашел пример минимизации стандартного System, правда, для delphi, но идея понятна:
http://xproger.mentalx.org/old/?id=1&page=0&doc=delphi_min
А заодно и обратите внимание, от каких ставших уже привычными вещей придётся отказаться... т.е. практически от всего:))


Посмотрел. Если честно, то уж проще на асме или си на крайний случай... :?

FedeX писал(а):Вот даже нашол сайт:
http://home.perm.ru/strannik/index.html


Интересно... Действительно то, что я искал за исключением оптимизации объектного кода. Не проверял, но сомневаюсь, что оптимизация на уровне си или delphi.
R1DDLE
новенький
 
Сообщения: 26
Зарегистрирован: 08.12.2009 19:00:24

Re: Как отключить RTL?

Сообщение alexrayne » 15.12.2009 22:32:48

imho помимо обрезания лишнего кода надо еще и smartlinking включить.
а вообче сдается мне вместо вырезания лишнего можно просто секционировать текщий код systemа - препроцессором задать секции которые затем включать\выключать, весь код менеджера памяти, менеджера строк ... и остальных подсистем которые инициируются в system, заключить в свою секцию.

когдато в лихие 90е выходил такой интересный журнал "монитор", там была рассмотрена идея секционирования кода, где она в жизни реализовывалась незнаю, но там секции описывались тоже в стиле Сшного препроцессора а подключались автоматически при использовании какойто процедуры\переменно из секции.
хотел такую фичу както предложить Даниелю Матине, непонравилось ему а может просто невьехал. покрайней мере я так и несмог объяснить почему ето лучше чем смартлинкинг, он уперся рогом что смартлин решит все проблемы секционирования.
alexrayne
постоялец
 
Сообщения: 125
Зарегистрирован: 03.12.2008 16:56:26

Re: Как отключить RTL?

Сообщение R1DDLE » 15.12.2009 23:03:13

...
Почти десять лет ищу пусть не совершенный, но наиболее подходящий для меня ЯП. Сейчас во мне крепчает уверенность в отсутствии такого.
Pascal (и собратья):
+ синтаксис, строгая типизация
- среда языка построена по старым методам
Lisp (scheme, etc.):
+ вершина метапрограммирования
- синтаксис :cry: , реализация связи программы с внешним миром по принципу "а-ля Vi$ualBaSic"
C/C++:
+ были инновационными в своё время
- их время прошло
Ba$ic:
+ для 3-го класса церковно-приходской школы - ТруЪ
- большинство уже закончили даже 9-й класс :D
Assembler:
+ моя любовь
+ компактность программ
+ позволяет выжать из машины всё
- пока вы заняты предыдущим пунктом - выжимает ваш мозг (возможно это даже плюс :D )
- с кроссплатформенностью и повторно используемым кодом тяжко
- не хватает синтаксиса pascal, метапрограммирования lisp при сохранении низкого уровня асма или Си

P.S. Прошу не относиться к этому посту слишком серьёзно, просто писал на эмоциях... :wink:
R1DDLE
новенький
 
Сообщения: 26
Зарегистрирован: 08.12.2009 19:00:24

Re: Как отключить RTL?

Сообщение vital » 16.12.2009 00:28:02

R1DDLE писал(а):1.
vital писал(а):Что за микроконтроллеры? Не avr/Atmel, случаем?

Пусть даже эти. Мне попадались 2-3 популярные "разновидности". Уверен, что их много больше. Так вот мне интересно, бывает ли в современном мире (кроме экспериментов и еденичных экземпляров) так, чтобы 1 байт не был равен 8 бит?

2.Добавлено спустя 4 минуты 30 секунд:
vital писал(а):P.S. Порылся в закладках, нашел пример минимизации стандартного System, правда, для delphi, но идея понятна:
http://xproger.mentalx.org/old/?id=1&page=0&doc=delphi_min
А заодно и обратите внимание, от каких ставших уже привычными вещей придётся отказаться... т.е. практически от всего:))


Посмотрел. Если честно, то уж проще на асме или си на крайний случай... :?

3.
FedeX писал(а):Вот даже нашол сайт:
http://home.perm.ru/strannik/index.html


Интересно... Действительно то, что я искал за исключением оптимизации объектного кода. Не проверял, но сомневаюсь, что оптимизация на уровне си или delphi.


1. Гм. Насчёт многообразия контроллеров я в курсе :) Но тем более не понятен выбор языка и компилятора общего назначения в качестве средства разработки под эти контроллеры... Особенно учитывая, что существует куча Pascal-компиляторов(как коммерческих, так и свободных) для работы с данными устройствами, т.е. всегда можно подобрать инструмент, адекватный задаче.
E-LAB AVRco Pascal(Atmel AVR):
http://www.e-lab.de/AVRco/index_en.html
E-LAB PICco Pascal(MicroChip PIC16Cxx):
http://www.e-lab.de/PICco/index_en.html
Pic Micro Pascal(PIC10 to PIC18):
http://www.pmpcomp.fr/
Turbo51(Intel 8051):
http://turbo51.com/
А mikroelEktronika вообще выпускает целое семейство компиляторов и IDE(C\Pascal\Basic) для различных типов микроконтроллеров:
http://www.mikroe.com/en/compilers/
Гляньте тамошние скриншоты и сравните это со старым дедушкиным велосипедом "Украина" :D, который Вы хотите изобрести, надругавшись в особоизвращённой форме над Free Pascal'ем :)
E-LAB и mikroElectronika вдобавок, предоставляют достаточно подробную документацию "от производителя". И становится совсем непонятно, стоит ли овчинка выделки?

2. О чём и речь. Все эти обрезания RTL лишают Object Pascal его сути и смысла существования. Относительно байта <> 8 бит... В наши дни такое имеет место быть: а) в телеграфе. Код МТК-2 использует 5-разрядную кодировку.
б) В кодировке КОИ-7.

3. По ходу, оно уже умерло.
vital
новенький
 
Сообщения: 86
Зарегистрирован: 17.10.2007 14:52:59

Re: Как отключить RTL?

Сообщение Vadim » 16.12.2009 09:36:47

vital писал(а):Относительно байта <> 8 бит... В наши дни такое имеет место быть: а) в телеграфе. Код МТК-2 использует 5-разрядную кодировку.
б) В кодировке КОИ-7.

Вы путаете разные вещи. :)
Смысл существования байта как раз в том и состоит, что байт это 8 бит, а не 5 или 11. :)
Если в самом байте не используется несколько бит, то это не значит, что их там нет. Они просто не используются. ;) И явление это довольно распространённое. Например в былые времена в кодировке цвета.
Vadim
долгожитель
 
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Re: Как отключить RTL?

Сообщение SII » 16.12.2009 09:57:36

R1DDLE
Пусть даже эти. Мне попадались 2-3 популярные "разновидности". Уверен, что их много больше. Так вот мне интересно, бывает ли в современном мире (кроме экспериментов и еденичных экземпляров) так, чтобы 1 байт не был равен 8 бит?


В качестве минимально адресуемой единицы представления данных я лично не встречал. А вот в памяти команд такое не исключено. Во всяком случае, "мягкий" (soft) микроконтроллер PicoBlaze, "прошиваемый" в ПЛИС фирмы Xilinx, имеет разрядность команды 18 бит. Здесь дело в том, что в этих ПЛИС встроенные блоки памяти имеют на каждый байт по одному контрольному биту, но его можно использовать и в качестве обычного бита данных, чем и воспользовались. Соответственно, адресация команд ведётся 18-разрядными словами.

А насчёт телеграфного кода и т.п. -- то это не _современный_ мир. Это просто совместимость со старыми стандартами, которая вынужденно сохраняется и сегодня.
SII
новенький
 
Сообщения: 64
Зарегистрирован: 24.06.2007 17:15:09
Откуда: Зеленоград

Re: Как отключить RTL?

Сообщение R1DDLE » 16.12.2009 13:59:03

vital писал(а):1. Гм. Насчёт многообразия контроллеров я в курсе :) Но тем более не понятен выбор языка и компилятора общего назначения в качестве средства разработки под эти контроллеры... Особенно учитывая, что существует куча Pascal-компиляторов(как коммерческих, так и свободных) для работы с данными устройствами, т.е. всегда можно подобрать инструмент, адекватный задаче.
E-LAB AVRco Pascal(Atmel AVR):
http://www.e-lab.de/AVRco/index_en.html
E-LAB PICco Pascal(MicroChip PIC16Cxx):
http://www.e-lab.de/PICco/index_en.html
Pic Micro Pascal(PIC10 to PIC18):
http://www.pmpcomp.fr/
Turbo51(Intel 8051):
http://turbo51.com/
А mikroelEktronika вообще выпускает целое семейство компиляторов и IDE(C\Pascal\Basic) для различных типов микроконтроллеров:
http://www.mikroe.com/en/compilers/
Гляньте тамошние скриншоты и сравните это со старым дедушкиным велосипедом "Украина" :D, который Вы хотите изобрести, надругавшись в особоизвращённой форме над Free Pascal'ем :)
E-LAB и mikroElectronika вдобавок, предоставляют достаточно подробную документацию "от производителя". И становится совсем непонятно, стоит ли овчинка выделки?

Про это не знал. Везде, где читал о микроконтроллерах утверждалось, что для них есть только два альтернативных варианта, это си и ассемблер.

Добавлено спустя 5 минут 29 секунд:
Vadim писал(а):Смысл существования байта как раз в том и состоит, что байт это 8 бит, а не 5 или 11. :)
Если в самом байте не используется несколько бит, то это не значит, что их там нет. Они просто не используются. ;) И явление это довольно распространённое. Например в былые времена в кодировке цвета.


Вспомните времена зарождения цифровой техники. Среди первых ЭВМ встречались с 4-х, 6-и, 8-и, 14-и и т.д. битными байтами. Причём это было реализовано физически в железе, а не как отказ от использования каких-то битов 8-битного байта. Байт равный 8-и битам это , так сказать, просто одна из множества ветвей эволюции ЭВМ пока-что не зашедшая в тупик :)
Поэтому я хотел убедиться, не осталось ли на свете ЭВМ, получивших какое-либо распространение в настоящее время с байтом отличным от 8-и бит. И я так понял, что таких нет.
R1DDLE
новенький
 
Сообщения: 26
Зарегистрирован: 08.12.2009 19:00:24

Re: Как отключить RTL?

Сообщение Vadim » 16.12.2009 15:13:44

R1DDLE писал(а):Среди первых ЭВМ встречались с 4-х, 6-и, 8-и, 14-и и т.д. битными

Я помню у американцев были такие устройства. Только 4, 6 и т.п. бит они называли не "байт", а "символ". :) Если почитать историю, то впервые термин "байт" был применён Бухгольцем при проектировании компьютера IBM и означало это слово "пучок проводов, в количестве 6 штук". :D Однако поскольку "шестиштучные" байты в серию не пошли, а пошли именно "восьмиштучные", то и байт стали подразумевать как 8 бит, не больше, не меньше. Так что отчасти Вы правы, но историческая правда именно в восьми битах. :)
Vadim
долгожитель
 
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Re: Как отключить RTL?

Сообщение R1DDLE » 16.12.2009 20:01:43

Vadim писал(а):... но историческая правда именно в восьми битах. :)

Я это и имел ввиду, что альтернативы были, но так исторически сложилось. У Вас получилось лучше сформулировать :)
R1DDLE
новенький
 
Сообщения: 26
Зарегистрирован: 08.12.2009 19:00:24

Re: Как отключить RTL?

Сообщение SII » 17.12.2009 18:17:45

Впервые 8-битный байт появился в IBM System/360 (анонсирована в 1964-м). До этого действительно хаос был с разрядностью. Ну а 8 бит оказались очень удобными.
SII
новенький
 
Сообщения: 64
Зарегистрирован: 24.06.2007 17:15:09
Откуда: Зеленоград

Пред.След.

Вернуться в Free Pascal Compiler

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4

Рейтинг@Mail.ru