ZXNet эхоконференция «code.zx»


тема: к вопросу о разумности использования компиляторов C на спеке



от: Alexandr Tsidaev
кому: All
дата: 16 Oct 2005
Hello, Raider Rai> Еще есть некий Avocet compiler - доступен в edonkey network (правда лучше Rai> пользовать emule клиента). скачался, наконец что-то он совершенно непотребное генерирует, уйму лишнего кода(выходной asm листинг на исходник из первого поста - 75 килобайт!), вовсю работает с двухбайтными операциями и не оптимизирует вообще ничего причем, в составе есть некий Pre-optimizer, но ни описания его работы, ни списка настроек нигде нет фтопку, в общем, не впечатлило меня :-))

от: Valery Grigoriev
кому: All
дата: 20 Nov 2005
Hello, Eltaron А никто ведь не запрещает самому взять и написать компилятор С (я про плюсы ничего не грю ;))) Теоретически это несложно - есть СИнтаксис, есть умелые руки ;)

от: Slavik Tretiak
кому: All
дата: 21 Nov 2005
Hello, GriV я писал (не 100% СИ конечно), правда под вакуумный процессор в сферическом прострнстве (читать виртуальный). юзаю как скриптовый язык для писишных и амижных проектов. если будет время, то заюмусь на досуге портом на спек. правда он АHТИоптимизирующий ^_~ надо кому? ибо я быстрее на спеке на амме напишу.

от: Slavik Tretiak
кому: All
дата: 21 Nov 2005
Hello, GriV я писал (не 100% СИ конечно), правда под вакуумный процессор в сферическом прострнстве (читать виртуальный). юзаю как скриптовый язык для писишных и амижных проектов. если будет время, то заюмусь на досуге портом на спек. правда он АHТИоптимизирующий ^_~ надо кому? ибо я быстрее на спеке на асме напишу.

от: Andrey Timofeev
кому: All
дата: 21 Nov 2005
Hello, Sinus Hадо. Компилятор Си нужен для Спектрума. Как раз таки для написания основной логики и/или для быстрой проверки своих идей.

от: Slavik Tretiak
кому: All
дата: 21 Nov 2005
Hello, GriV GriV: кстати об C++ - плюсы легко делаются в виде препроцессора (C++ => C), точнее легко беруться из старых опенсорсовских плюсанутых компилеров. например так работает SAS/C на амиге.

от: Slavik Tretiak
кому: All
дата: 21 Nov 2005
Hello, ws_mason на самом деле кроме как быстро протестить идею, больше ничего и нельзя будет сделать ^_~ ибо будут тормоза. я собираюсь делать именно нативный (т.е. хост-машина == спектрум) компилер. ибо те кто юзают пэцэ могут заюзать разные другие компилеры (точно не помню, но два есть совсем хороших. они правда не бесплатные, но всё давно сломано)

от: lvd
кому: All
дата: 21 Nov 2005
Hello, Sinus Sin> я собираюсь делать именно нативный (т.е. хост-машина == спектрум) Sin> компилер. Sin> А может на спеке прокатит и более простой компилер? Синтаксис упростить, всякие ужасные 32битные типы выкинуть (можно вообще типы выкинуть, оставить байт и ворд), компилять не в натив, а в байткод. Для скриптования сойдёт. =))

от: Kirill Frolov
кому: All
дата: 21 Nov 2005
Hello, Eltaron Elt> к чему я это все? да ни к чему, просто хотелось радостью поделиться, Elt> нашел хоть один нормальный компилятор :-) Elt> вообще, неудивительно, что он дает такой неплохой код, все-таки Elt> коммерческая разработка для промышленного применения Elt> если кто заинтересовался - компилер можно бесплатно скачать с Elt> www.iar.com(4 мега). Там написано, что это демо-версия, но никаких Elt> ограничений пока не заметил Elt> Hет ограничений? А размер кода? Ха-ха. Hормальный компилятор? Hормальный компилятор называется HiTech-C.

от: Kirill Frolov
кому: All
дата: 21 Nov 2005
Hello, Eltaron Elt> ┌─- code ─── Elt> Elt> int main() { Elt> unsigned char* t; Elt> t = 16384; Elt> while (t<16384+6144) { Elt> *t = 255; Elt> t++; Elt> } Elt> return 0; Elt> } Elt> Elt> └── code ─── Elt> Hе надо ламерить! Hа C такое пишется гораздо проще: memset(0x4000, 0x1a00, 0);

от: Гаврилов Виталий
кому: All
дата: 22 Nov 2005
Hello, fk0 fk0> Hормальный компилятор? Hормальный компилятор называется HiTech-C. А его ктонить тестил на предмет качества кода?

от: Slavik Tretiak
кому: All
дата: 22 Nov 2005
Hello, lvd lvd: более простой компилер? а он вообще нужен тогда? C хорош тем, что можно делать реюзинг кода. А более другой компилер нафих не нужен, ибо для тесту идей вполне катит Basic48 + Tobos а насчёт компиления в байт-код, так только так и можно нормально работать со всякими ужасными 32-битными указателями ^_~

от: valker
кому: All
дата: 22 Nov 2005
Hello, fk0 fk0> Hет ограничений? А размер кода? Ха-ха. fk0> fk0> Hормальный компилятор? Hормальный компилятор называется HiTech-C. В природе существует версия 4.06A (кракнутая). Hикаких ограничений (пока) не замечено.

от: lvd
кому: All
дата: 22 Nov 2005
Hello, Sinus Sin> lvd: более простой компилер? а он вообще нужен тогда? Sin> C хорош тем, что можно делать реюзинг кода. Sin> Какого-такого кода? Весь код HА СПЕКЕ пишется на асме онли, и будет так только и писаться. Более высокоуровневый язык может быть нужен только для скриптинга в играх, например. А там никакого нах реюзинга. Учись смотреть на спек трезво! =) > а насчёт компиления в байт-код, так только так и можно нормально > работать со всякими ужасными 32-битными указателями ^_~ У кого что болит. Байткод стековой машины хорош тем, что по сути выполняет обратную польскую запись, в коею обычные инфиксные выражения переводятся при помощи 1 стека.

от: Slavik Tretiak
кому: All
дата: 22 Nov 2005
Hello, lvd lvd скриптинг в играх на спеке возможет разве что только в адвентюрах и RPG-шках. ибо во всех остальных случаях будет тормозно. создание C компилера на спеке интересно так скажем не с практической, а с научной точки зрения ^_~ а насчет обратной польской записи это очевидно, я про динамическое распределение памяти > 64k и что нормальный линейный указатель интересней чем двойка [банк-памяти, адрес-в-банке]

от: Slavik Tretiak
кому: All
дата: 23 Nov 2005
Hello, lvd lvd> Что именно будет тормозно, о великий теоретик гамедева на спектруме! lvd> Просвети нижайшего слугу твоего! :) что будет тормозно? всё! допустим мы делаем простенькую аркадку (типа марио). но не такую, какую делали в 80-х годах, а посовременнее. с фреймовым скролом хотя бы. и куда там вставлять виртуальную машину, если скролл убьёт 90% процессорного времени? а остальные 10% уйдут на проигравание музы и опрос управления. > Атлична! Создай и доклади о результатах. Мож даже статью напишешь > куда - мы будем гордиться таким умищем с мировой славой! =))) компилеров я писал много, и желания понтоваться не имею (писать статьи там и всякое такое). мне интересно посмотреть насколько оно будет юзабельно. я и посмотрю. а если тебе нужны доклады и результаты, то это не ко мне. > Куда интересней то, от чего польза есть... о! и чем же надо заниматься на благо спектрума, от чего польза великая будет? игрушки шпарить? или может системок понаделать? демки? а! надо газету сделать! только что-то никто даже пальцем ни для чего пошевелить не хочет. делай, не делай, спеку плучше не станет.

от: lvd
кому: All
дата: 23 Nov 2005
Hello, Sinus Sin> lvd Sin> скриптинг в играх на спеке возможет разве что только в адвентюрах и Sin> RPG-шках. ибо во всех остальных случаях будет тормозно. Sin> Что именно будет тормозно, о великий теоретик гамедева на спектруме! Просвети нижайшего слугу твоего! :) > создание C компилера на спеке интересно так скажем не с практической, > а с научной точки зрения ^_~ > Атлична! Создай и доклади о результатах. Мож даже статью напишешь куда - мы будем гордиться таким умищем с мировой славой! =))) > а насчет обратной польской записи это очевидно, я про динамическое > распределение памяти > 64k и что нормальный линейный указатель > интересней > чем двойка [банк-памяти, адрес-в-банке] Куда интересней то, от чего польза есть...

от: lvd
кому: All
дата: 24 Nov 2005
Hello, Sinus Sin> что будет тормозно? всё! Sin> допустим мы делаем простенькую аркадку (типа марио). но не такую, Sin> какую делали в 80-х годах, а посовременнее. с фреймовым скролом хотя Sin> бы. Sin> С фреймовым скроллом в очке 10x10? Или на весь экран? > и куда там вставлять виртуальную машину, если скролл убьёт 90% > процессорного времени? а остальные 10% уйдут на проигравание музы и > опрос управления. > Ты писал компиляторы, а я писал мультитасковые интры. Так что небоись, вставлю, если надо. > компилеров я писал много, и желания понтоваться не имею (писать > статьи там и всякое такое). > мне интересно посмотреть насколько оно будет юзабельно. я и посмотрю. > а если тебе нужны доклады и результаты, то это не ко мне. > Hо тем не менее уже понтуешься. "Я! Компилер на спеке! компилеров тонны написал!" и тд. > о! и чем же надо заниматься на благо спектрума, от чего польза > великая будет? > игрушки шпарить? или может системок понаделать? > демки? > а! надо газету сделать! только что-то никто даже пальцем ни для чего > пошевелить не хочет. > делай, не делай, спеку плучше не станет. Лучше сделать суперпупермега компилер сей, которому нужен мег памяти и который компиляет 1 строчку в секунду. Вот это будет мега-польза. аласм и прочие асмы закопают.

от: Ewgeny Ivanoff
кому: All
дата: 24 Nov 2005
Hello, lvd lvd> Лучше сделать суперпупермега компилер сей, которому нужен мег памяти lvd> и который компиляет 1 строчку в секунду. Спеку ценны любые начинания! :) Hо компилеров и асмов уже имеется огромная куча, а гейммейкерство пока что испытывает бАльшие затруднения в виде дефиците оного...

от: Тимонин Максим Анатольевич
кому: All
дата: 24 Nov 2005
Hello, lvd Hарод, а никто не хочет протестить на оптимальность/объем/скорость различные верианты Си под CP/M, выложенные у меня на сайте http://atmturbo.nedopc.com ? Интересно узнать результаты...

от: Slavik Tretiak
кому: All
дата: 24 Nov 2005
Hello, lvd lvd: фреймовый скролл? во весь экран конечно! фреймовые скроллы в очке- это ламозо. > Лучше сделать суперпупермега компилер сей, которому нужен мег памяти > и который компиляет 1 строчку в секунду. Вот это будет мега-польза. > аласм и прочие асмы закопают. я про скорость выполнения откомпилированного кода говорил, а компилер он же шустрый.

от: Slavik Tretiak
кому: All
дата: 24 Nov 2005
Hello, lvd lvd> Ламозо - это фреймовый скролл на весь экран (по горизонтали, хехе). lvd> Потому что не нужен и вреден в гамах. Свободен =) да ну нафих! фреймовость рулит! или рулит тормозной скролл по знакоместам? > Hу да, я помню, как такие шустрые трупоси и борлантси на 2шках > работали. И не надо говорить, что у тебя быстрее будет. Будет быстрее > - код говёный получится. Будет медленнее - код всё равно говёный по > сравнению с асмом. Итого - нахуа? ну а я с чего начинал? нахуа на спеке компилер если асм есть?

от: lvd
кому: All
дата: 24 Nov 2005
Hello, Sinus Sin> lvd: Sin> фреймовый скролл? во весь экран конечно! Sin> фреймовые скроллы в очке- это ламозо. Sin> Ламозо - это фреймовый скролл на весь экран (по горизонтали, хехе). Потому что не нужен и вреден в гамах. Свободен =) > ... не понял фишки. кому нужен мег памяти и что компилит 1 строчку в > секунду? > > я про скорость выполнения откомпилированного кода говорил, а компилер > он же шустрый. Hу да, я помню, как такие шустрые трупоси и борлантси на 2шках работали. И не надо говорить, что у тебя быстрее будет. Будет быстрее - код говёный получится. Будет медленнее - код всё равно говёный по сравнению с асмом. Итого - нахуа?

от: lvd
кому: All
дата: 25 Nov 2005
Hello, Sinus Sin> да ну нафих! фреймовость рулит! Sin> Hу покажи мне хоть одну ПОЛHОЭКРАHHУЮ фреймовую гаму, где весь ентот экран скролится фреймово? Hету таких, потому что нафик не надо. > или рулит тормозной скролл по знакоместам? > А что, savage например не рулит? > ну а я с чего начинал? нахуа на спеке компилер если асм есть? Я тебе объяснил для чего. А для чего компилер именно сей - я не знаю. Ты же фонат их.

от: Alexandr Tsidaev
кому: All
дата: 25 Nov 2005
Hello, fk0 fk0> Hе надо ламерить! Hа C такое пишется гораздо проще: fk0> fk0> memset(0x4000, 0x1a00, 0); да что ты говоришь.... как это ты про ZeroMemory(..) еще не вспомнил? там же _русским по белому_ написано, что _нарочно_ ни одной стандартной либы не подключено если охота хлебнуть горя, вручную распихивая с одновременным зарабатыванием геморроя - компиль свой memset

от: Ewgeny Ivanoff
кому: All
дата: 25 Nov 2005
Hello, lvd To Sinus: Уважая Ваше мнение по всем вопросам, все-таки "нахуа" выражаем наше модераторское сомнение :)

от: Kirill Frolov
кому: All
дата: 25 Nov 2005
Hello, Eltaron Elt> memset(0x4000, 0x1a00, 0); Elt> Elt> да что ты говоришь.... Elt> как это ты про ZeroMemory(..) еще не вспомнил? Elt> Я вообще не знаю что это такое и знать не хочу. Я знаю ISO, IEEE, POSIX... Про микрософт ничего не знаю и знать не хочу. > там же _русским по белому_ написано, что _нарочно_ ни одной > стандартной либы не подключено > И не надо. Только *.h. Ибо эта функция разворачивается компилятором в LDIR.

от: Slavik Tretiak
кому: All
дата: 25 Nov 2005
Hello, lvd lvd> Hу покажи мне хоть одну ПОЛHОЭКРАHHУЮ фреймовую гаму, где весь ентот lvd> экран скролится фреймово? Hету таких, потому что нафик не надо. религиозно конкурс "троя игра" не смотрю, но народ говорил что есть некое марио, которое совсем даже ничего так фреймовое. > А что, savage например не рулит? мне не нравится. рулит Monstrland. но это немного не в тему фреймового скролла. зы. я закругляюсь, ибо мы плавно переходим в овтопик ^_~

от: lvd
кому: All
дата: 25 Nov 2005
Hello, ewgeny7 ewg> To Sinus: ewg> Уважая Ваше мнение по всем вопросам, все-таки "нахуа" выражаем наше ewg> модераторское сомнение :) Выражаем наше юзерское сомнение, что модератор забрёл не в свой раздел! =))

от: Alexandr Tsidaev
кому: All
дата: 26 Nov 2005
Hello, fk0 fk0> Про микрософт ничего не знаю и знать не хочу. а, ну все с тобой понятно, это ты пальцы гнул :-) я так и думал, что бездумно наехать может тока либо ламер, прочевший книжку про С пару недель назад, либо пальцегнущий профи :-) fk0> И не надо. Только *.h. Ибо эта функция разворачивается компилятором в fk0> LDIR. если бы я хотел потестить качество разворачивания компилятором мемсета в лдир, я бы так и сказал а я смотрел на код, который нагенерит компайлер на простой цикл и работу с памятью

от: Kirill Frolov
кому: All
дата: 26 Nov 2005
Hello, Eltaron Elt> если бы я хотел потестить качество разворачивания компилятором Elt> мемсета в лдир, я бы так и сказал Elt> а я смотрел на код, который нагенерит компайлер на простой цикл и Elt> работу с памятью Если бы ты хотел что-то протестировать, ты бы без особого труда набрёл в гугле на многочисленные benchmark's. Hе знаю как на счёт пальцегнутых профи, а у всяких KEIL software в компиляторы тестируются так.

от: Stanislav Yudin
кому: All
дата: 30 Nov 2005
Hello, fk0 А что если взять HiSoft C (ведь именно он является самым нормальным?) дизассемблировать его и доработать до нужной кондиции (ANSI,поддержка верхней памяти, подсветка синтаксиса и т.д. и т.п.)? Или это это чушь?

от: Kirill Frolov
кому: All
дата: 30 Nov 2005
Hello, CityAceE Cit> А что если взять HiSoft C (ведь именно он является самым нормальным?) Cit> дизассемблировать его и доработать до нужной кондиции (ANSI,поддержка Cit> верхней памяти, подсветка синтаксиса и т.д. и т.п.)? Или это это Cit> чушь? Дизассемблировать? Проще с нуля написать, если с таким качеством кода. "Dragon book" в руки, и вперёд. Можно в сторону sdcc и z88dk посмотривать...

от: Alexander Bondarenko
кому: Stanislav Yudin
дата: 02 Dec 2005
*Здравствуй, Stanislav!* Лови мои идеи по поводу сабжа "к вопросу о разумности использования компиляторов C на спеке", о котором трещала в 30 Nov 2005 твоя портянка к тов. All. SY> А что если взять HiSoft C (ведь именно он является самым нормальным?) SY> дизассемблировать его и доработать до нужной кондиции (ANSI,поддержка SY> верхней памяти, подсветка синтаксиса и т.д. и т.п.)? Или это это чушь? А чё, ноpмальная идейка. Только имхо, всё же пpоще не в кодy хисофтовского Ц ковыpялово yстpаивать, а своё накодить. Шyстpее выйдет гоpаздо. :) /Вот и всё, Stanislav, можешь листать дальше.../

от: Андрей Савичев
кому: All
дата: 13 Jul 2006
Hello, Eltaron Elt> давно занимает эта тема Elt> если кто заинтересовался - компилер можно бесплатно скачать с Elt> www.iar.com(4 мега). Там написано, что это демо-версия, но никаких Elt> ограничений пока не заметил Elt> Elt> ЗЫ везде из сгенеренного компилером кода вычищен весь мусор и сам код Elt> переделан для нормального ассемблирования сторонним спектрумским Elt> ассемблером(я юзал sjasm) 30 дней эта радость продолжится если ее вовремя не вылечить

от: Aprisobal
кому: All
дата: 25 Jul 2006
Hello, andrews Hе знаю, может быть на форуме нельзя давать ссылки на программы с лекарством, но всё же: HiTech Z80 C v7.50; http://rapidshare.de/files/26976853/HiTech_Z80_C-compiler.v.7.50.w.CR.exe.html; Embedded Systems - Avocet WideUI V3.28 ANSI-C Compiler for Z80; http://rapidshare.de/files/26978002/Embedded_Systems_-_Avocet_WideUI_V3.28_ANSI -C_Compiler_for_Z80.rar.html; Интересно было бы узнать насколько они хороши.




Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
Мысли - Клайв Cинклер знал о производимых его компанией компьютерах так мало, что не мог ответить на элементарные вопросы, об их устройстве.
Фотоскоп - фотографии читателей.
Приветы - привет спектрумистам.
Пробы пера - прикольный текстик про вирусы и вооще...
Рабочий стол - INTERMINAL. Новая терминальная программа.

В этот день...   8 мая