Под DOS нормального Cи нету?

Использование и разработка софта (преимущественно на ПЦ)

Moderator: Shaos

Romanich
Banned
Posts: 608
Joined: 12 Oct 2006 16:44

Post by Romanich »

fk0 wrote: DOS, 32-битность и другие buzzwords давно не актуалны.
Вся суть -- в интерфейсах.
А дело даже не в них. А в том, что мне например не нужно влезать в Win32 API, чтоб точку на экран поставить. Достаточно обратится к VideoRAM напрямую. Изучать навороченный DirectX желания нет также как нет желания изучать программирование под Windows TM
Romanich
Banned
Posts: 608
Joined: 12 Oct 2006 16:44

Post by Romanich »

А Open Watcom C рулит, да ещё как :dj:
Всё, я слазию с Паскаля переходя на Си :)
User avatar
Shaos
Admin
Posts: 24088
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

Romanich wrote:А Open Watcom C рулит, да ещё как :dj:
А тем временем вышел Open Watcom 1.7 !
Я тут за главного - если что шлите мыло на me собака shaos точка net
Romanich
Banned
Posts: 608
Joined: 12 Oct 2006 16:44

Post by Romanich »

Shaos wrote:
Romanich wrote:А Open Watcom C рулит, да ещё как :dj:
А тем временем вышел Open Watcom 1.7 !
Замечательно! буду качать! :)
иде есть? (не хочеца с красными глазами маки и батники писать...)
User avatar
Shaos
Admin
Posts: 24088
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

Romanich wrote:
Shaos wrote:
Romanich wrote:А Open Watcom C рулит, да ещё как :dj:
А тем временем вышел Open Watcom 1.7 !
Замечательно! буду качать! :)
иде есть? (не хочеца с красными глазами маки и батники писать...)
ну ты же вроде сам там иде виндовый обнаружил некоторое время назад ;)
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Lavr
Supreme God
Posts: 16689
Joined: 21 Oct 2009 08:08
Location: Россия

6) генерация исполняемого модуля с НАИМЕНЬШИМ мусором

Post by Lavr »

Возможно, я немного оффтопик в этой ветке, но пришлось мне раз проделать некий эксперимент....

Когда я разбирался с протоколами работы I-Button, попался мне в
интернете коллега, который не пожадничал dll-ку с исходным кодом.
У меня тогда стоЯл Борланд Билдер 5.0, который сходу так исходник
копилить не стал...
Путём танцев с бубнами, кастрации отдельных опции и подстановки
других опций я всёж получил свою функциональную dll-ку, но !!!
Размер её превышал имеющийся оригинал в 1.8 раза примерно.
Никакими опциями размер уменьшить не получилось.
Посколь было видно, что сорцы расточены под VC - решил попробовать
под VC 5.0 - размер dll стал толше более чем в 2 раза...
Продолжил эксперимент... под с трудом разысканным VC 4.x
размер стал примерно одинаков.
Вся серия экспериментов показала далее - чем старше версия VC,
тем толще компилит она один и тот-же исходник :lol:
Отсель вопрос - а что за мусор действительно норовят подсунуть
в исполняемый модуль в процессе компиляции ?
(все опции по отключению ненужного - всё время использовались).
User avatar
Shaos
Admin
Posts: 24088
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: 6) генерация исполняемого модуля с НАИМЕНЬШИМ мусором

Post by Shaos »

Lavr wrote:Возможно, я немного оффтопик в этой ветке, но пришлось мне раз проделать некий эксперимент....

Когда я разбирался с протоколами работы I-Button, попался мне в
интернете коллега, который не пожадничал dll-ку с исходным кодом.
У меня тогда стоЯл Борланд Билдер 5.0, который сходу так исходник
копилить не стал...
Путём танцев с бубнами, кастрации отдельных опции и подстановки
других опций я всёж получил свою функциональную dll-ку, но !!!
Размер её превышал имеющийся оригинал в 1.8 раза примерно.
Никакими опциями размер уменьшить не получилось.
Посколь было видно, что сорцы расточены под VC - решил попробовать
под VC 5.0 - размер dll стал толше более чем в 2 раза...
Продолжил эксперимент... под с трудом разысканным VC 4.x
размер стал примерно одинаков.
Вся серия экспериментов показала далее - чем старше версия VC,
тем толще компилит она один и тот-же исходник :lol:
Отсель вопрос - а что за мусор действительно норовят подсунуть
в исполняемый модуль в процессе компиляции ?
(все опции по отключению ненужного - всё время использовались).
Я в своё время исследовал оптимизирующие свойства VC 4,5,6 по сравнению с ваткомом - 5 версия уже подошла в плотную к ваткому, а 6 даже в чём то обошла - но надо опции знать и умело использовать
Я тут за главного - если что шлите мыло на me собака shaos точка net
bar
Senior
Posts: 185
Joined: 07 Aug 2006 10:18

Re: 6) генерация исполняемого модуля с НАИМЕНЬШИМ мусором

Post by bar »

Lavr wrote:Отсель вопрос - а что за мусор действительно норовят подсунуть
в исполняемый модуль в процессе компиляции ?
Вероятно, всё из-за оптимизации под более новые процессоры. Например, когда вместо `push eax; push ebx;' компилятор пишет `sub 8, ebp; mov eax, [ebp+4]; mov ebx, [ebp];'
Говорят это позволяет избавляться от зависимостей между командами, и в результате они более равномерно забивают конвееры.
Может ещё выравнивание меток на бОльшую границу используется, и соответственно в программе больше nop'ов.
Попробуй включить оптимизацию под 486 процессор, причём по размеру.
User avatar
Shaos
Admin
Posts: 24088
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Под DOS нормального Cи нету?

Post by Shaos »

Вот какой-то Orange C/C++ Compiler появился под GPL3:

http://ladsoft.tripod.com/orange_c_compiler.html

Пишут, что одни и теже бинари запускаются в WIN32 и DOS (с помощью какого-то Japheth's HXDOS extender), однако результат сборки программ под DOS ожидает 32-битного экстендера DOS32A (который совместим со старым добрым DOS4GW)

Автор: David Lindauer http://ladsoft.tripod.com/biography.html
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
askfind
Devil
Posts: 823
Joined: 04 Jan 2016 09:15
Location: Russia, S.- Peterburg

Re: Под DOS нормального Cи нету?

Post by askfind »

FreeDOS

https://www.freedos.org
FreeDOS is open source software! It doesn’t cost anything to download and use FreeDOS. You can also share FreeDOS for others to enjoy! And you can view and edit our source code, because all FreeDOS programs are distributed under the GNU General Public License or a similar open source software license.
Orange C/C++ version 6.0.45.1
Orange C/C++ version 6.0.45.1
2020-06-17 2:55pm
The Orange C/C++ Compiler is new work which includes an optimizing compiler, a tool chain, and an IDE. The compiler itself uses various standard techniques, as well as some interesting techniques mentioned in literature. This compiler has support for the various C standards through C11, and full support for C++ 14. The IDE for the compiler is a full featured C/C++ language IDE including a colorizing editor with code completion, integrated make facility, debugger, and a WIN32 resource editor. Version 6.0.45.1 was recently released on May 18, 2020. You can find the DOS or Windows setup packages on the Orange C/C++ website. The source code (GNU GPL v3) is on GitHub. We've also mirrored it at ibiblio under freedos/files/devel/c/orange/
"Ученье свет, а неученье — тьма. Дело мастера боится, и коль крестьянин не умеет сохою владеть — хлеб не родится." (С)