PDA

Просмотр полной версии : Чего мешает быть счасливым? (О средствах разработки)



shade
03.03.2005, 14:58
Этот thread я положил в результате небольшой дискусси в разделе "ZX ассемблер (и не только?) с библиотеками (http://zx.pk.ru/showthread.php?t=321)".

Вопрос такой - отсутствие каких средств разработки (или может быть, какие недостатки у существующих средств) на ZX помешали Вам (и до сих пор не дают, противные) реализовать "программу своей мечты"?

Например: "Хочу 3D-бродилку, да вот нет проги, чтобы могла эффективно 3D-каркасы разрабатывать"
или
"написал бы крутой графический движок, отдал бы и было бы всем <счастье, даром и никто бы не ушел обиженный>(c), да вот нет средств профилировки/оптимизации, а побитно я ее до морковкиного заговенья буду оптимизировать"
...
ну, идея, думаю, понятна... :-)

bugsy
03.03.2005, 16:07
редактор асма хотим офигительный. хотя мне сейчас существующее особо не мешает, но всё равно не удобно...

Proteus
03.03.2005, 18:26
(c), да вот нет средств профилировки/оптимизации, а побитно я ее до морковкиного заговенья буду оптимизировать



Ага... ещё прогу для удалённой отладки, через порт принтера))))

psndcj
04.03.2005, 08:01
Нет не то что нормального линкера - это вообще не известно, что такое 8( в результате - сборка любого серьезного проекта превращается в жуткое страдание...

только не надо разным кодерам писать о том, что у них все зашибись и проблему я сам из пальца высосал - в наших демах Melange, DetroYT, WeeD в памяти места остается не больше сектора, а если бы я делал как все, через макросы и прочее, то вы бы вообще ничего не увидели...

shade
04.03.2005, 13:29
редактор асма хотим офигительный. хотя мне сейчас существующее особо не мешает, но всё равно не удобно...

Мннн.... отлично, но можно чуть-чуть поподробнее, что именно поможет офигеть от редактора? :-)
И чем, например, лучший с Вашей точки зрения существующий, "не канает"? :-)

bugsy
04.03.2005, 14:56
Мннн.... отлично, но можно чуть-чуть поподробнее, что именно поможет офигеть от редактора? :-)
И чем, например, лучший с Вашей точки зрения существующий, "не канает"? :-)

форум-то читаем, мужчина?
http://zx.pk.ru/showthread.php?t=83

Vitamin
04.03.2005, 19:56
только не надо разным кодерам писать о том, что у них все зашибись и проблему я сам из пальца высосал - в наших демах Melange, DetroYT, WeeD в памяти места остается не больше сектора, а если бы я делал как все, через макросы и прочее, то вы бы вообще ничего не увидели...
я, как кодер, могу заявить- проблему нехватки памяти знаю не по наслышке :)
особенно хреново когда используется верхняя память (там- хоть конем пляши), а вот с нижней напряг. например, в QHTV один участок памяти в 9 секторов юзается аж в 9-10 разных ипостасях.
но! остается проблема неоптимального кода и прочих резервов. с одной стороны, хорошо когда памяти много. но когда ее мало, начинаешь буквально построчно искать что бы сократить. в частности, у меня оставался довольно большой кусок непаханной целины- оболочка, написаная чуть ли не на заре моей кодерской деятельности :) не так давно настал и ее черед оптимизации. проблемы полезли потом- как эту оптимизированную оболочку слепить с кодом. ладно бы там просто области памяти "поплыли", это полбеды. настоящий геморрой начинается после смены формата вызовов процедур (регистры типа по другому распиханы) и смены значения процедур (процедура поменяла свои входные условия).
вот такие проблемы смены интерфейсов и форматов порождают довольно много проблем. нужно средство чтоб их решить! вот.

Proteus
04.03.2005, 22:18
я, как кодер, могу заявить- проблему нехватки памяти знаю не по наслышке :)


А комп.-то у тебя какой ?

Vitamin
04.03.2005, 22:50
А комп.-то у тебя какой ?
ответ см. в треде "опиши свой пэцэ" :)
эмуляторщик я. обычная конфигурация- 512 пентагон. потому как исходников куча. а 32 кило в нижней памяти они при любой конфигурации существуют. хоть на эмуле хоть на реале

Robus
05.03.2005, 02:52
Вопрос такой - отсутствие каких средств разработки (или может быть, какие недостатки у существующих средств) на ZX помешали Вам (и до сих пор не дают, противные) реализовать "программу своей мечты"?




Большое отсутствие средств ...

Когда-то мне нужно было набить текст к интро, в окошки ... Каждое окно должно было быть разных размеров, что бы получился хороший стиль ... Так я сделал собственный редактор, в котором можно подгрузить совершенно любой шрифт, с совершенно любой кодировкой. Шрифт может быть разных размеров по Х в каждом символе. После я его юзал вечно ... Постоянно не хватало памяти для работы с TASM'мом, другие асмы вообще отпадали, поскольку они не могли откомпилировать метки, указывающие на метку, которая лежит после данной строчки, вообщем много-проходность ... Редакторы под асмы просто корявые, да ещё и глючные. Однако, признаюсь, был один асм, помоему ZXASM, но могу ошибаться, где был велеколепный редактор, но та же проблема с невозможностью компилинга моих работ. Так же графический редактор ... Как-то Viator писал собственный редактор, мне он очень понравился, но Speccy он забросил, хотя я с ним иногда вижусь, поскльку жывём в Киеве ... Да и сами асмы не удобные, поэтому я написал собственный асм - ASAM, где решил все свои неудобства. Всякие макросы, анализ компиляции, метки любой длины, хотя не больше 256-ти символов, но будем считать, что это можно назвать любой длины ... Плюс у меня можно сразу же создавать монолоадер. А вообще-то, за всю мою Coder'скую историю, если чего не хватает, то я просто быстренько садился и писал то что нужно. Поэтому у меня есть и музыкальный редактор, в котором писал Dreamer c Bars'ом, и текстовые редакторы и куча всякой всячины, всего и не упомнишь. Вот сейчас делаю демку, нужно было написать удобный конвертер в спрайты, только малеьнкая особенность, нужно мультиколорные спрайты с двумя экранами. Конечно же таким прог нет, вот я и написал примерно за пару часов то, что нужно. Теперь у меня колекция компактных спрайтов с любыми параметрами, плюс ещё конвертер из BMP, с учётом градация яркости, то бишь с рендерингом, вроде так это по умному называется ... Кстати, нет ещё просматривалки scr'ов. Хотя есть что-то, но каждый из них где-то имеет минусы, то крохотная картинка в разрешалке 640х480, то написана прога исключительно под FAR. Вообщем так я в свой конвертер вставил функцию листалки, только указываешь ей координаты файла, а там она уже сама всё сделает, да ещё по быстренькому считает все остальные файлы из каталога ... Да и эмуляторов нет человеческих, в каждом куча недостатков, то экран на 60 герц, и из-за это плавное движение скролов превращается в тихий ужас. То есть 50 герц, так музыка не синхронезеирована, начинает цифровка обгонять прерывания. То звук работает, то какая-то полоса пролетает по экрану, что означает, что автор эмуля не ждёт окончание луча, а вешается на таймер ... Это заставило меня написать свой эмуль, только он не дописан, где-то неправильно какую-то команду проэмулировал, но 90% эмулит как часы (советские) - (шутка) ... Так что нужд уйма ...

By Rob F. / Entire Group ...

SMT
05.03.2005, 03:30
Да и эмуляторов нет человеческих, в каждом куча недостатков, то экран на 60 герц, и из-за это плавное движение скролов превращается в тихий ужас. То есть 50 герц, так музыка не синхронезеирована, начинает цифровка обгонять прерывания. То звук работает, то какая-то полоса пролетает по экрану, что означает, что автор эмуля не ждёт окончание луча, а вешается на таймер ... Это заставило меня написать свой эмуль, только он не дописан, где-то неправильно какую-то команду проэмулировал, но 90% эмулит как часы
а где можно посмотреть? не нужно, чтобы он эмулировал всё. достаточно, чтобы посмотреть только один любой скролл. просто никогда раньше такого не видел на пц.

Robus
05.03.2005, 05:20
а где можно посмотреть? не нужно, чтобы он эмулировал всё. достаточно, чтобы посмотреть только один любой скролл. просто никогда раньше такого не видел на пц.

Да, вообщем-то, это не проблема, оставь свой меил, и я тебе отошлю эмулятор ... Только он в сыром виде, звуковую карту ищет по стандарту, и если не найдёт, то виснет, так что я или звук отключу или убедись, что у тебя SB стандартный. И ещё одна особенность, он загружает четыре TRD'шника в память, после чего эмулирует их ИМЕННО ПОРТАМИ, поэтому тебе придётся мучаться, предварительно сохранив в TRD то, что тебе нужно, а после запускать эмулятор ... Так, что жду email, или напиши мне - RobusAsmCoder@ukr.net

By Rob F. / Entire Group ...

SMT
05.03.2005, 07:33
на мыло написал. пока не совсем понял, что значит "эмуляция портами", но, надеюсь, увижу - разберусь. главное, чтобы эмулятор не использовал извратное программирование VGA-регистров. Radeon9600PRO+lcd этого не переносят :(

GriV
05.03.2005, 08:46
что средства разработки отсуствуют в чистом виде.

Ассемблеры есть, он толку от них если что и как втыкается в эти асмы непонятно? Да, на асме много можно писать, но далеко не всё.
Где С? (я уж про С++ молчу), где Pascal?
Где на них оптимизирующие компиляторы? Где наборы библиотек для работы с всем и вся? Хорошо хоть можно универсальный драйвер памяти найти!
Пока нет языков выского уровня, не будет серьёзного ПО.

AlexCrush
05.03.2005, 11:38
Пока нет языков выского уровня, не будет серьёзного ПО.
Абсолютно согласен. Без С - никуда....

elf/2
05.03.2005, 12:07
Кстати, нет ещё просматривалки scr'ов. Хотя есть что-то, но каждый из них где-то имеет минусы, то крохотная картинка в разрешалке 640х480, то написана прога исключительно под FAR.
ну почему только под FAR, xGfx может работать везде где используется gfllib. например в xnView (www.xnview.org)

shade
05.03.2005, 13:17
форум-то читаем, мужчина?
http://zx.pk.ru/showthread.php?t=83

Ничего против этого опросника или пипла, на него отвечающего не имею. :-) Но - начал читать, и потонул в куче однострочных эмоций :-$
... иногда очень трудно вытащить описание конкретных недостающих features... Да и не ожидал я такого там. :-)
Поэтому и спросил напрямик в этом thread-e - "Чего изволите-с?"
Specific Product Requirements/Feature Requests - вот светлый, но пока не очень близкий итог этого опросника. :-)

Но - спасибо - соберусь с силами и-таки прочитаю вСе в указанном (как я понимаю из comment-а, сугубо мужском), форуме :-)

shade
05.03.2005, 13:19
Абсолютно согласен. Без С - никуда....
Помнится, еще лет 8 назад уже был компилятр С на ZX... Помер, болезный?

shade
05.03.2005, 13:23
вот такие проблемы смены интерфейсов и форматов порождают довольно много проблем. нужно средство чтоб их решить! вот.

Обычное решение - абстаркция на языке более высокого уровня, чем ассемблер. Но, судя по более поздним комментам, нормального, например, С -таки нету...
За компилятор, что-ли, садиться?!!!! Вот не ожидал...

Corpsegrinder
06.03.2005, 12:23
Есть хайсофт си, есть кросплатформенные компиляторы в коды z80 тот же gcc можно настроить, чтобы компилировал. Так что Кому надо - скомпилируют, вот только кому это надо? все привыкли к асму.

Думаю правильным решением было бы предложеное AlCo: интегрировать к асемблер текстовый редактор, можно пойти ещё дальше - возможность загрузки любых плугинов - граф. редактор, редактор спрайтов, которые бы выкладывались на рам-диске и оттуда грузились при компиляции.

Proteus
06.03.2005, 14:44
Помнится, еще лет 8 назад уже был компилятр С на ZX... Помер, болезный?
Была контора которая пачками языки выпускали. Был форт, паскаль, Си и т.д. Но было всё сделано до отвращения дерьмово. Мало того что сами языки плохо реализованы, больше всего жизнь отравлял способ редактирования. Чтобы им пользоваться нормально надо было хотя бы редактор хоть немного приличный сделать... Там из-за самой ерундовой проги на паскале можно было пол дня провозиться.

shade
07.03.2005, 14:38
Есть хайсофт си, есть кросплатформенные компиляторы в коды z80 тот же gcc можно настроить, чтобы компилировал. Так что Кому надо - скомпилируют, вот только кому это надо? все привыкли к асму.
Насколько я видел из остальных комментариев, видимо все-таки кому-то нужно... А можно поподробнее - про кроссплатформенные? Да, и если можно, инфу ("ссылочку на ...") о том, как настраивать gcc?

Как мне вспоминается, мельком, было недовольство от компиляторов С по поводу того, что параметры функций передаются через стек... что, мягко говоря, никак не помогает эффективности, да и размеру, скомпилированных программ. Хотя - в стандарте С вроде бы нет требования именно к такому способу передачи...
Да и вообще... Оптимизация кода для Z80 - несколько отдельная песня...


Думаю правильным решением было бы предложеное AlCo: интегрировать к асемблер текстовый редактор, можно пойти ещё дальше - возможность загрузки любых плугинов - граф. редактор, редактор спрайтов, которые бы выкладывались на рам-диске и оттуда грузились при компиляции.

Да, абсолютно согласен, интегрированная среда вроде тех, что есть на PC - рулит! Но хотелось бы добавить, что если бы эта среда не была бы ориентирована только на ассемблер... это бы никому не связало руки :-)

shade
07.03.2005, 14:40
Была контора которая пачками языки выпускали. Был форт, паскаль, Си и т.д. Но было всё сделано до отвращения дерьмово. Мало того что сами языки плохо реализованы, больше всего жизнь отравлял способ редактирования. Чтобы им пользоваться нормально надо было хотя бы редактор хоть немного приличный сделать... Там из-за самой ерундовой проги на паскале можно было пол дня провозиться.

Гмм... преимущества редактора, интегрированного с компилятором языка очевидны. Но и недостатки - тоже. Наверное, стоило бы их, все-таки "развести" (не на бабки :-) ), чтобы не мешали людям выбирать лучшее из обоих категорий, а?

Robus
07.03.2005, 20:21
на мыло написал. пока не совсем понял, что значит "эмуляция портами", но, надеюсь, увижу - разберусь. главное, чтобы эмулятор не использовал извратное программирование VGA-регистров. Radeon9600PRO+lcd этого не переносят :(

Прости, но у меня какраз программирование VGA регистров !!! Но у меня именно Radeon 9600 pro и он без проблем их кушает, поскольку эти регистры являются стандартом. Хотя признаюсь, что современные видеокарты да же Radeon'ы урезают, то есть как всегда деньги дерут те же, а возможностей меньше, но на таких картах работают проги только под виндой, а 90% досовских игр превращаются в набор перекошенной хрени, то есть IBM даёт о себе знать, то есть о своей никчемности ...

Итак, это эмулятор моего Wild Speccy ссылка на него вот: http://www.entire.nm.ru/coding/wild-eml.zip В этом архиве лежат четыре TRD, в которых множество всяких прог, они рабочие, для тестирования. И вообще этот эмуль сугубо тестовый, написанный ещё в 1999-ом году. Там стоит эмуляция не только Z80, но и микроконтроллера Cygnal, который я добавил примерно в 2003-ем году. Эмуль работает только с четыримя файлами в каталоге TRD, куда и можете записать всё что угодно.

Эта ссылка: http://www.entire.nm.ru/coding/wild-eml-clr.zip на то же самое только в четырёх TRD'шках лежат по одному boot'у, что бы архив был маленький !!!

EXE'шник там один, как и стоит быть программе, всё запаковано в нём собственным пакером, наисан он на ассемблере, правда не собственном. Красная линия на бордюре в момент работы эмулятора будет означать тактовку процика эмуляции Z80, со всеми прибамбасами типа видео и звука. Если у вас звуковуха не стандартная, то есть не DOS'овскай, то, увы, вы ничего не услышите, но и не зависнит !!! Кстати, может кто знает как напрямую програмить AC97 ? Я разбирался. но нашёл только прямой порт, то есть в реальном времени делаешь в порт OUT, а он идёт на ЦАП, ну и мы слышим изрыгание из динамиков. Но в большем я не разобрался ... Хотя эти идиоты могли так урезать звук, что теперь винда шуршит OUT'ом на порт, эмулируя DMA, тогда я пас, в таком идиотизме я учавствовать не хочу ... Так что, качайте ... =)

Надеюсь вы понимаете, что видео инитится под 50 герц, а точнее под 51, что бы все мониторы понимали, и другие варианты я рассматривать да же не собираюсь, поскльку смотреть дему в которой косится скрол просто противно ... Максимум я пойму 100 герц, где первый кадр отображает наш великий Speccy, а второй просто чёрный эран, иначе будет та же парафия с дребезном изображения ...

Proteus
07.03.2005, 22:06
Гмм... преимущества редактора, интегрированного с компилятором языка очевидны. Но и недостатки - тоже. Наверное, стоило бы их, все-таки "развести" (не на бабки :-) ), чтобы не мешали людям выбирать лучшее из обоих категорий, а?

Ну и развели бы.. Если бы его там небыло а прога из строки компилировалась (хотя для меня бы это не привычно было на спектруме) было бы лучше. Чем то уродтво, которое тока жизнь отравляло

shade
09.03.2005, 12:19
Прости, но у меня какраз программирование VGA регистров !!! ... ... и т.д.

Я оччень звиняюсь, крутые парни :-), но возможно стоит вынести дискусиию о специфике программирования видеокарт под эмуляторами... хмм... в какой-нибудь более спечифичный :-) thread, а?

Может быть я и неправ, awaiting reaction from dear moderator... (аууу...)

TomCaT
01.01.2007, 10:14
Кто знает, какой это компилятор все переменные хранит по 16 бит, обменивается с памятью только через HL и потому вынужден регулярно EX DE,HL пихать в коде (см. CAULDRON 1 disasm)?

caro
01.01.2007, 10:17
Кто знает, какой это компилятор все переменные хранит по 16 бит, обменивается с памятью только через HL и потому вынужден регулярно EX DE,HL пихать в коде (см. CAULDRON 1 disasm)?Например SMALL C так делает.
Тем более что его исходная версия была сделана под процессор I8080.

TomCaT
01.01.2007, 10:19
ага...
как бы это сразу в C и дизасмить... конечно, кода там немного, тем более несложный... а все же, нельзя ли?

caro
01.01.2007, 10:24
ага...
как бы это сразу в C и дизасмить... конечно, кода там немного, тем более несложный... а все же, нельзя ли?Задача конечно решаемая, только кто это будет делать?

TomCaT
01.01.2007, 11:23
ммм...

если решаемая, то будет сделана... закон природы такой ;)

а кто -- это уже даже не столько важно

rajdee
01.01.2007, 18:29
Думаю правильным решением было бы предложеное AlCo: интегрировать к асемблер текстовый редактор, можно пойти ещё дальше - возможность загрузки любых плугинов - граф. редактор, редактор спрайтов, которые бы выкладывались на рам-диске и оттуда грузились при компиляции.
Смотрите ZX-ASM, там присутствует практически все вышеописанное .
Я в свое время предлагал AlCo написать компилятор, например alasm, в виде модуля к acedit, но его это, на тот момент, не заинтересовало.

TomCaT
02.01.2007, 12:01
8) Интуитивно-непонятный интерфейс, но удобный, привыкнуть можно...

Вот только та версия, что с VIRT'а, ругается на отсутствие чего-то. Регулярно. Дискета какая-то неполная, или там две одновременно нужно вставлять?

rajdee
02.01.2007, 15:23
Вот только та версия, что с VIRT'а, ругается на отсутствие чего-то. Регулярно. Дискета какая-то неполная, или там две одновременно нужно вставлять?
В последних версиях unreal, zasm ругается на отсутствие диска, для этого попробуй отключить No delays, в закладке Beta128

Знахарь
02.01.2007, 18:22
Действительно, есть основная проблема - потеря/затруднение контроля над действительно большими проектами. И удобство редактирования.
Думаю, что замах на всякие гига-мега среды разработки - не катит - делать это реально... некому. Отмечу сворачивание процедур - справедлив гнев Fk0. Такую полезную элементарщину, как закладки, чтоб по текстам быстро прыгать. Реализовать её можно было и в имеющихся недо"средах".
Но все больше про менюшки, про танковые клинья...
Про увеличение скорости компиляции за счет памяти (нахрен её 512к ? ну вот нахрен ?) если это возможно, правда это тоже не РЕАЛЬНО реализовать здесь и щаз, т.к. надо разобрать по полкам компилятор.

Рекомендую поискать BA (BestAsm) (и дать ссылку) чего-то я его не нашел, а там были идейнейшие фишки - куча маааленьких, но полезных вещей, весьма украшающих и то что есть

Vitamin
03.01.2007, 00:12
увеличение скорости компиляции за счет памяти
ALASM. Гораздо более быстрая компиляция больших проектах изза того, что части постоянно висят в памяти, а не подгружаются с диска. Да и возможность расширения памяти под метки тоже имеется (не на скорость правда влияет).


по текстам быстро прыгать
Та же многотекстовость. Разве что закладок нет (чтоб фраза не казалась выдрата из контекста).


идейнейшие фишки
Например? Мне вот в аласме не хватает возможности перехода по меткам- есть отображение списка меток, а перехода к объявлению нету...
А сворачивание процедур имхо- не для ассемблера. Здесь понятие начала и конца процедуры зачастую весьма расплывчатое. Потому что есть как преджевременные выходы (а также переходы вместо вызова и возврата- если безфлаговые еще можно както отсечь), так и многовходовые куски кода.

Знахарь
03.01.2007, 11:27
Нет, я не к сравнению BA & alasm. (известно, сам я тоже на аласме) А к улучшению существующего аласма (и/или других асмов, ни в одном ведь такого нет). Идея с + incbin - вообще очень и очень. на реале мы все пиЩЩали в своё время. И где еще есть такое? Ну, а ВА - имеет еще всякие фишки, я по памяти не скажу, но они достойны рассмотрения и реализации. Это мелочи всякие. глобализмУ там нет. Но тем не менее.

А сворачивание процедур делать ручками. Не автоматом. Сам определяй где конец, где начало. И все дела. без фанатизма :)

moroz1999
03.01.2007, 12:27
необходим нормальный редактор графики/спрайтов на PC.

bugsy
04.01.2007, 01:06
необходим нормальный редактор графики/спрайтов на PC.
я рисую в фотошопе
потом конверчу в scr
затем раскрашиваю на эмуляторе в BGE
и в конце концов с помощью специально написаной утилитки уже рипаю раскрашеные экраны в нужный мне формат спрайтов

psndcj
04.01.2007, 05:34
я рисую в фотошопе
потом конверчу в scr
затем раскрашиваю на эмуляторе в BGE
и в конце концов с помощью специально написаной утилитки уже рипаю раскрашеные экраны в нужный мне формат спрайтов
именно поэтому и нужен нормальный редактор - чтобы не приходилось по 2-3-4 раза переносить данные с писи на спек и обратно...