PDA

Просмотр полной версии : Графическая библиотека



alone
16.02.2012, 12:41
Если бы вам дали графическую библиотеку и набор утилит к ней, вы бы написали игру с её помощью? Какие функции вам нужны? Какие ограничения потерпите?

jerri
16.02.2012, 12:51
alone, Кидай уже сюда спецификацию

newart
16.02.2012, 13:58
Если бы вам дали графическую библиотеку и набор утилит к ней, вы бы написали игру с её помощью? Какие функции вам нужны? Какие ограничения потерпите?
Нет. Ибо привык уже к IF ELSE ENDIF (бейсик/php/js/...)
Вывод спрайтов и окошек это только пол дела.

---------- Post added at 13:58 ---------- Previous post was at 13:51 ----------

Но либа все равно нужна. Немножко для иного дела. В общем делай. :)

psb
16.02.2012, 15:12
нужна скорее не либа, а набор подпрограммок на все случаи жизни. типа, вывод спрайтов может быть большим квадратом ч/б, либо с атрибутами, либо по квадратикам, либо с маской, либо короткая прога, либо длинная но супер-быстрая... каждый найдет что-то подходящее себе. чем больше вариантов, тем лучше, с примерами. вот тогда это может взлететь. а если это будет просто библиотека с парой функций вывода спрайтов - я хз, в чем ее интересность...

но это просто имхо, сам юзать не буду.

Максагор
16.02.2012, 16:05
нужна скорее не либа, а набор подпрограммок на все случаи жизни

В свое время были похожие по смыслу пакеты - Supercode, Supercode 2 и New Supercode. В принципе, если появится такой набор для современных задач программирования на спектруме, было бы очень даже неплохо...

psb
16.02.2012, 16:23
да, типа тех Supercode, но на более качественном уровне. я бы даже это сравнил с метасплоитом, если конечно кто в курсе, что это и как.

Titus
16.02.2012, 16:26
А кто будет под это кодить? Есть ли реально желающие? Вы сначала об этом спросите.
Пример, Dizzy-AGE простейший движок. Кодить может даже человек почти не умеющий программировать. А нарисовать карту - человек не умеющий рисовать. При этом всего один человек с форума реально стал что-то писать (не считая тех, кто ему помогает).

newart
16.02.2012, 17:08
Пример, Dizzy-AGE простейший движок. Кодить может даже человек почти не умеющий программировать. А нарисовать карту - человек не умеющий рисовать. При этом всего один человек с форума реально стал что-то писать
Это ничего не доказывает. Это всеголишь один единственный движок да еще для ПЦ в неактуальном формате exe.

Rindex
16.02.2012, 17:16
А кто будет под это кодить? Есть ли реально желающие? Вы сначала об этом спросите.
Пример, Dizzy-AGE простейший движок. Кодить может даже человек почти не умеющий программировать. А нарисовать карту - человек не умеющий рисовать. При этом всего один человек с форума реально стал что-то писать (не считая тех, кто ему помогает).

В точку. А для Спектрума уже Диззи не будет, я об этом уже не раз говорил.

Titus
16.02.2012, 17:28
Это ничего не доказывает. Это всеголишь один единственный движок да еще для ПЦ в неактуальном формате exe.
Давайте сделаем опрос на форуме, типа 'если будет удобная библиотека с игровыми функциями, кто конкретно захочет написать под нее игру'. И посмотрим электорат желающих.

Raydac
16.02.2012, 18:15
как то выкладывалась декомпиленая библиотека от Laser Basic с описаниями и подпрограммами (http://zx.pk.ru/showthread.php?t=11615&highlight=hvg), которая вполне юзабельна для игр, вроде никто ничего с её применением не делал

newart
16.02.2012, 19:18
Давайте сделаем опрос на форуме, типа 'если будет удобная библиотека с игровыми функциями, кто конкретно захочет написать под нее игру'. И посмотрим электорат желающих.
Голосовать не будут.
Вот если ты к каждому спектрумисту лично стукнешся и попросишь проголосвать тогда да, может быть анкет 200-300 наберешь. Но все равно опрос будет отражать лишь сиюминутную ситуацию на отдельно взятом форуме.

Сегодня человек ответил да, а завтра женился и забил на спектрум.
Другой вообще про форум не ведает, сидит себе клепает игры на бейсике для себя.
Третий ответит нет, а через неделю увидит крутую игрушку на своём айфоне и не успокоится пока не сконвертит ее на спектрум.
И т.п.

Делать надо для себя прежде всего, а при обнаружении интереса к своем творению, допиливать уже до народных нужд.

---------- Post added at 19:18 ---------- Previous post was at 19:01 ----------

Короче. Хватит 3.14ть. Дайте уже либу! :)
Окошкеи там будут? А печать 42 шрифтом с цветом?
А опрос клавишь? (я порты уже все забыл)
А драйвер памяти?

Максагор
16.02.2012, 19:26
Правильно. Именно поэтому надо не спрашивать народ, нужна ли графическая библиотека, а брать и делать ее, раз душа просит...

psb
16.02.2012, 19:42
а брать и делать ее, раз душа просит...
с другой стороны, если все хором скажут "нам не надо", зачем браться?;)

alone
16.02.2012, 19:48
Не "пара процедур", а готовая рыба проекта с "insert your code here".
Пишется на sjasmplus, линкуется с SDCC.
Вывод картинок, тайлов, букв, спрайтов 16x16, восстановление фона под спрайтами, играние музыки (pt3) и звуковых эффектов (afx).
Под экран 320x200, 16 цветов с палитрой.

Titus
16.02.2012, 19:50
Под экран 320x200, 16 цветов с палитрой.
А т.е. это еще и не под Спектрум)

newart
16.02.2012, 19:52
Под экран 320x200, 16 цветов с палитрой.
Сам дурак.

Vitamin
16.02.2012, 19:52
Был опыт выкладывания библиотеки оконного интерфейса. С кучей процедур, комментариев и примерами. Пользователей было 1.5 человека.

newart
16.02.2012, 19:55
Был опыт выкладывания библиотеки оконного интерфейса. С кучей процедур, комментариев и примерами. Пользователей было 1.5 человека.
Слабый маркетинг. ;)

Максагор
16.02.2012, 20:26
Не "пара процедур", а готовая рыба проекта с "insert your code here".
Пишется на sjasmplus, линкуется с SDCC.
Вывод картинок, тайлов, букв, спрайтов 16x16, восстановление фона под спрайтами, играние музыки (pt3) и звуковых эффектов (afx).
Под экран 320x200, 16 цветов с палитрой.

Во, классно. Я как раз под TASiS всерьез планирую таки написать графическую оболочку. Вот и пригодятся процедуры вывода спрайтов/окошек... Правда, я думал делать под мультиколорный эеран 640x200, но...

---------- Post added at 19:24 ---------- Previous post was at 19:24 ----------


Был опыт выкладывания библиотеки оконного интерфейса. С кучей процедур, комментариев и примерами

Где? Когда?

---------- Post added at 19:26 ---------- Previous post was at 19:24 ----------


Сам дурак

Я понимаю твои чувства, но так тоже не надо. А Диме можно посоветовать, чтобы дела пакет процедур под разные режимы - ZX, 320х200, 640Х200, text и т.д..

jerri
16.02.2012, 20:32
Vitamin, уж не zxwin ли?
где сами авторы писали что релизить не будут пока не наиграются

alone
16.02.2012, 20:50
Пакетов процедур было уже миллион. Никто ими не пользовался, кроме авторов. А под 6912 есть библиотека от Mojon'ов.

Protom
16.02.2012, 21:14
... А под 6912 есть библиотека от Mojon'ов.

Где на это можно посмотреть?

baxter
16.02.2012, 22:05
под TASiS всерьез планирую таки написать графическую оболочку
ЗдОрово! Интересно будет посмотреть.

Vitamin
16.02.2012, 22:32
Слабый маркетинг.
Сильный пофигизм


Где? Когда?
http://zx.pk.ru/showpost.php?p=36677&postcount=5


Vitamin, уж не zxwin ли?
где сами авторы писали что релизить не будут пока не наиграются
Какие "авторы"? Свою либу я писал сам целиком и полностью. Называется GuiLib

Максагор
17.02.2012, 00:00
Вау! :eek: Макс! неужели ты решил отойди от своих политических дел и наконец-таки уделить внимание спектруму :D Потрясно!

Ну, от политики не отошел, зато в ином плане жизнь несколько упорядочилась. А мартовские выборы пройдут, так еще больше появится.


Это потому что разрешайка побольше? :rolleyes:

И поэтому тоже. А еще потому, что так легче совмещать новую графику и вывод окошек в тексте 80х25. А еще потому, что мне сей режим дюже нравиццо!

А вообще совсем Спекки не бросал. Правда в основном игрался. Хотя потихоньку продолжал вылизывать дистрибутив TASiS, и даже написал пару программулек, правда которые никуда не выкладывал. Самая значительная из них - плеер TSFM-модулей.

Но так, конечно, дисквалифицировался сильно. Поэтому один проект этот не потяну. Поэтому хочу сколотить команду под это дело (идругие дела). В частности, веду переговоры с Сергеем Баганов (Prusak) - пока по другой iS-фиговине - универсальном копировщике подо все виды FAT12/16/32 (+ CD-FS) и другие файловые системы (TR-DOS, iS-DOS, CP/M) вне зависимости от типа носителей - хоть HDD, хоть FDD, хоть SD-карточка, хоть.... Для чего будут предусмотрены подгружаемые внешние дрова для работы с устройствами на низком уровне и описатели файловых систем.

Затем причешу до состояния выпуска в свет бета-версию TASiS v6.00 - там уже очень много сделано для работы подгружаемых графических библиотек. Только кое-что доделать надо. А под это все можно уже и оболочку писать. В общем, работы море. И один точно не справлюсь. Тебя бы тоже хотел пригласить в группу - ибо графика у тебя дюже хорошая получается. Уж если ты так и не выпустил ZX-Doors, то может быть iS-Doors/iS-Windows совместно склепаем? ;)

---------- Post added at 23:00 ---------- Previous post was at 22:58 ----------



Цитата:
Сообщение от Максагор Посмотреть сообщение
Где? Когда?
http://zx.pk.ru/showpost.php?p=36677&postcount=5


А есть популярно изложенное описалово сего продукта? Я бы с удовольствием прочел...

Vadim
17.02.2012, 06:30
В частности, веду переговоры с Сергеем Баганов (Prusak) - пока по другой iS-фиговине - универсальном копировщике подо все виды FAT12/16/32 (+ CD-FS) и другие файловые системы (TR-DOS, iS-DOS, CP/M) вне зависимости от типа носителей

А не задача ли это _операционной системы_? Зачем нужна ОСь, если файловые операции будет делать некая прога, с подгружаемыми модулями? На ПЦ, например, CD-ROM хоть и имеет совсем иную FS, нежели FAT12/16/32 в ms-dos (например), тем не менее в ms-dos мы видим файлы, как "родные". CP/M дискеты читаются/пишутся на ПЦ аналогично - запускается драйвер и _все_ программы в ОСи понимают дискету с CP/M. Намёк ясен?

Andrew771
17.02.2012, 11:38
Делать надо для себя прежде всего, а при обнаружении интереса к своем творению, допиливать уже до народных нужд.
присоединяюсь. Только допиливание под народные нужды не всегда интересно. :)
Если же делать библиотеку, то лучше отдельные процедуры на асме, в PC-шном формате txt.

Vitamin
17.02.2012, 11:53
А есть популярно изложенное описалово сего продукта? Я бы с удовольствием прочел...
Сайт в дауне, выкладываю сюда. Описания как такового нет, есть много комментариев в коде и разжеванный пример.

Максагор
17.02.2012, 16:09
Намёк ясен?

Нет, не ясен. Есть задачи невыполнимые, а есть даже и выполнимые, но не оптимальные. Видеть "прозрачно" иные ФС из-под любой OS не обязательно возможно. Например, причем здесь MS-DOS? Вот, в MS-DOS тоже для чтения TR-DOS-дисков отдельные копировщики делают, и никакой прозрачности. Все равно ты мне такую "другую" ОС на Спекки не предоставишь. Не, сожно, конечно, написать драйвера (и даже такой драйвер для максимально прозрачной работы с дисками TR-DOS есть), вот только если это будет один универсальный драйвер, он будет занимать дохренища места при небольшом общем поле памяти в Спектруме, в отличие от 640Кб в MS-DOS. Или же делать отдельные дрова под каждую ФС и внешнее устройство свой подгружаемый резидентный драйвер, которые все вместе опять займут кучу места в ОЗУ. Нет уж, проще написать обычную исполняемую программу, которая сама по мере необходимости будет подгружать нужные модули с дровами и описанием ФС, повесить ее на горячую клавишу и получать удовольствие. Тем более. что обычное копирование по F5 тоже происходит посредством внешней утилиты. Так что тут ничего не изменится.
Уточняю - речь идет именно о копировании, а не о работе с файлами как будто в родной системе (т.е. с запуском). Потому что это часто невозможно - например в заголовках файлов в MS-DOS теряется такая важная для спектрума информация как стартовый адрес исполняемого файла. Ну и др.

newart
17.02.2012, 16:46
Сайт в дауне, выкладываю сюда. Описания как такового нет, есть много комментариев в коде и разжеванный пример.


Compiler: Alasm4.46
Вот и ответ. Буржуи точно отметаются. Да и из наших уже большинство переползло на sj asm.

DimkaM
17.02.2012, 17:21
Да и из наших уже большинство переползло на sj asm.
у меня ушло около часа на перенос в сясм. У более продвинутых кодеров быстрее получится.

---------- Post added at 17:21 ---------- Previous post was at 17:09 ----------

К сожалению пришлось отказатся от gui_либы, в пользу текстмода.
Но из неё я взял много идей по построению gui(tui в моём случае)

Vitamin
17.02.2012, 17:26
Вот и ответ. Буржуи точно отметаются. Да и из наших уже большинство переползло на sj asm.
Выкладываю я значит свое поделие в sj asm, а через 10 лет некто newnewart говорит, что никто не юзает, потому что "большинство переползло на %asmname%". Даты написания посмотри, умник.


у меня ушло около часа на перенос в сясм. У более продвинутых кодеров быстрее получится.
Ч.т.д.


К сожалению пришлось отказатся от gui_либы, в пользу текстмода.
Но из неё я взял много идей по построению gui(tui в моём случае)
На самом деле, я писал свое поделие по мотивам supreme gui от delirium tremens. Поскольку к тому времени ее исходы не были открыты, писалось все с нуля. Даже ничего не дизассемблировал.

newart
17.02.2012, 17:33
у меня ушло около часа на перенос в сясм. У более продвинутых кодеров быстрее получится.
А у менее продвинутых или вообще не продвинутых?

---------- Post added at 17:33 ---------- Previous post was at 17:32 ----------


Даты написания посмотри, умник.
На календарь посмотри.

Vitamin
17.02.2012, 17:39
На календарь посмотри.
А ты много своих исходов перевел в формат современных ассемблеров? А если DimkaM выложит свой вариант перевода ты прямо кинешься чего-то писать?
Лучше не увеличивай энтропию, эксперт йопт.

DimkaM
17.02.2012, 18:12
А у менее продвинутых или вообще не продвинутых?менее некуда, я тогда только начал изучать асм
DimkaM выложитНе выложу, собирающегося варианта не осталось. Может быть найду исходники некоей тулзы (http://zx.pk.ru/showpost.php?p=435178&postcount=52) так и не доделанной.
Задумка была слишком высокомерная
Я взял дрова SD/hdd у савелия, библиотеку fatfs у Чана, GUI библиотеку у Витамина. Перемешал(не взбалтывая) всё это добро. И получился резидент типа "ОпенФайл/СейвФайл", который вызывается из юзерских прог. Патч для АртСтудии занял 56байт, что то еще патчить времени пока нету.
Собстно его нужно тестить, пока всё довольно сыро/нестабильно/некрасиво.АртСтудия реально работала с фатами.

newart
17.02.2012, 18:30
А ты много своих исходов перевел в формат современных ассемблеров?
Зачем?
Они не предполагают повторное использование. Игры/софт и либы это не одно и тоже.

---------- Post added at 18:30 ---------- Previous post was at 18:26 ----------


А если DimkaM выложит свой вариант перевода ты прямо кинешься чего-то писать?
Как знать.
Но выложить то мало, надо еще документировать.

Vitamin
17.02.2012, 18:52
Зачем?
Они не предполагают повторное использование. Игры/софт и либы это не одно и тоже.
Типичный подход быдлокодера.


Но выложить то мало, надо еще документировать.
А что подразумевается под документацией?

newart
17.02.2012, 19:12
Типичный подход быдлокодера.
Тогда у нас 99% софта писали быдло кодеры.
А ты его юзал, значит ты быдло юзер. :)

Vitamin
17.02.2012, 19:32
Тогда у нас 99% софта писали быдло кодеры.
А я бы снизил цифру. Иначе по твоей логике 99% программистов начинают каждую программу с чистого листа. А это далеко не так.


А ты его юзал, значит ты быдло юзер.
Логика хромает на все ложноножки.

Юзеру пох на качество кода. Единственное, что его касается- критические ошибки в софте, частота и качество выхода новых версий и некоторые потребительские качества. Как показывает практика, быдлокодерство сильно бъет по всем этим показателям, давая лишь иллюзию быстрого выхода на рынок (ага, первой версии).

newart
17.02.2012, 20:07
А я бы снизил цифру. Иначе по твоей логике 99% программистов начинают каждую программу с чистого листа. А это далеко не так.
По твоему они начинают ее с использования чужого кода?

jerri
17.02.2012, 20:14
Vitamin, вот здесь (http://en.wikipedia.org/wiki/Therac-25) про настоящий быдлокод.

Vitamin
17.02.2012, 20:24
По твоему они начинают ее с использования чужого кода?
В том числе. А также использует свои старые наработки (наборы процедур, библиотеки и т.д.) (С) К.О.


Vitamin, вот здесь про настоящий быдлокод.
Дык, ассемблер же. Писать на нем программы такого класса- преступление.

http://kholeg.wordpress.com/2006/11/20/они-пишут-правильную-вещь

Жаль, язык не указан. Но сомневаюсь, что это ассемблер.

jerri
17.02.2012, 20:33
Vitamin, дело не в ассемблере
ассемблер лишь изменяет скорость разработки.
дело в непродуманном реиспользовании ПО от одного устройства для другого ПО без переработки кода.

Vitamin
17.02.2012, 20:38
Vitamin, дело не в ассемблере
ассемблер лишь изменяет скорость разработки.
дело в непродуманном реиспользовании ПО от одного устройства для другого ПО без переработки кода.
И в нем тоже. Одно дело проанализировать 1-2тыс строк платформозависимого кода на предмет реиспользования, а другое- проанализировать 100тыс ассемблерного кода с равномерно размазанными по нему платформозависимыми фрагментами.

jerri
17.02.2012, 20:46
Vitamin, новые технологии они такие новые. 30 лет назад было несколько другое железо и совсем не такие требования к ПО.
поэтому глупо жаловаться что 30 лет назад программу реального времени писали не С#

Vitamin
17.02.2012, 20:49
Vitamin, новые технологии они такие новые. 30 лет назад было несколько другое железо и совсем не такие требования к ПО.
поэтому глупо жаловаться что 30 лет назад программу реального времени писали не С#
Зато был С. И были реалтаймовые ОС не на ассемблере.

jerri
17.02.2012, 20:59
Vitamin, PDP-11 это БК-0010
похвально конечно писать под него на С но видимо что-то их остановило
может быть то что на момент разработки Therac (http://computingcases.org/case_materials/therac/supporting_docs/levenson/Therac%20History.html) его еще не было в таком свободном распространении (http://en.wikipedia.org/wiki/C_%28programming_language%29)

Vitamin
17.02.2012, 21:13
Vitamin, PDP-11 это БК-0010
похвально конечно писать под него на С но видимо что-то их остановило
может быть то что на момент разработки Therac его еще не было в таком свободном распространении
С момента появления Си до момента первого летального случая прошло 13 лет. А до момента практического использования Therac-25 - 10 лет. Все это, а также многое другое, хорошо описано в разделе Root causes вышеупомянутой статьи.

DimkaM
17.02.2012, 21:20
Если бы вам дали графическую библиотеку Кинь ссылку в личку плиз. Я люблю чужой код юзатьь.

jerri
17.02.2012, 21:29
Vitamin, про С в вики написано разработка по 1973 год
про тераки - сказано что разработка велась с середины 70х
и явно что разработка такого устройства длилась не один год
и врядли программа писалась в самый последний момент.

---------- Post added at 21:29 ---------- Previous post was at 21:28 ----------

но давай не будем флудом тему засыпать

alone
17.02.2012, 21:49
АртСтудия реально работала с фатами.
Хочу это видеть!

DimkaM
18.02.2012, 12:08
Хочу это видеть!
всё утро пытался запустить. патч на Артстудию заново накладывал, не заработало.
Оказалось Savelij убрал бейсик из нулевой паги пзу.
Исходники на работе должны быть, завтра поправлю.

DimkaM
19.02.2012, 17:02
Пишется на sjasmplus, линкуется с SDCC.
Я думаю довольно интересная сдк выйдет, если будет достаточный функционал.

---------- Post added at 17:02 ---------- Previous post was at 17:00 ----------


Хочу это видеть!
Считай, что я наврал.
Часть исходников в z88dk компилил, а щас уже и непомню что там как компилится, на IAR давно пересел.

Vitamin
19.02.2012, 18:08
Считай, что я наврал.
А не ты ли недавно скриншот выкладывал?

DimkaM
19.02.2012, 19:12
Выкладывал, видимо это всё что осталось от тулзы.щас какойто косяк с записью. грузит, а сейвить не хочет.
http://zx.pk.ru/attachment.php?attachmentid=29379&d=1316531020

moroz1999
19.02.2012, 22:15
Графической библиотеки самой по себе мало. Нужен саппорт.
Кратко говоря, современные программеры приучены экономить время - появился вопрос, набрал его в гугле, почитал инфу, выбрал решение, реализовал его по своему вкусу или приручил готовое.
Что же на спектруме? Попробуйте набрать в гугле что-нибудь посложнее, чем "ZX-spectrum память 128" и убедитесь сами - на самую базу нужно убить чертову кучу времени.
Когда я не так давно игрался с классическим чанки-режимом, я думал, что всё будет просто - найду исходник, адаптирую под sjasm и вот он, профит.
Ан нет! Вот здесь допили кусок, который автору было лень вписать самому, здесь пофикси баги, а здесь разберись в каком-нибудь бородатом *****коде, который сам автор не знал, зачем приделал.
Это всё не мотивирует ни разу - порог вхождения в разработку повышается на пустом месте, а мы потом удивляемся, как это мало новых программистов появляется на платформе.
Исходники в текущем виде - бесполезный хлам для 90% заинтересованных людей.
Мало того, что нужно взять какой-нибудь незнакомый экзотический ассемблер со своим не совсем скажем интуитивно понятным интерфейсом, найти нужный файл из 100500 на дискетке, так оно еще и имеет шансы не взлететь после компиляции.
И кто будет этим заниматься кроме нескольких мегагуру?

Как оно должно быть:
1. Имеем процедуру/библиотеку, готовую к использованию, разделенную на модули и вычищенную от специфической логики.
2. Имеем краткий туториал на каждую фичу.
3. Имеем на каждую фичу отдельный компилируемый через bat-файл пример.

Тогда да, кто-нибудь даже воспользуется. А если вывалить гору слабопонятного кода без отдельных примеров - мало у кого хватит желания в этом ковыряться, сколь бы гениальной ни была разработка.

alone
19.02.2012, 22:35
Ищо раз повторяюсь, будет готовая рыба. Не взлететь оно не сможет, все нужные тулзы будут в комплекте.

Vadim
20.02.2012, 06:55
в MS-DOS тоже для чтения TR-DOS-дисков отдельные копировщики делают, и никакой прозрачности.

Делает кто? Те кто не смогли написать драйвер, так ведь? А написали кривенькие программки едва едва рабочие. А драйвер написать можно было бы. Я для Q-DOS написал такой, и параметры trdos блоков (адрес загрузки кодов и стартовый адрес бейсика) не теряются при этом. Так что ответ не принимается. Никакие 640К для этого не нужны. Всё делается в нормальной ОС, средствами драйвера, который и эмулирует нужную нам среду. Это _реально_ и не нереализуемо. А реализуемо и причем тривиально.

---------- Post added at 08:49 ---------- Previous post was at 08:45 ----------


Или же делать отдельные дрова под каждую ФС и внешнее устройство свой подгружаемый резидентный драйвер, которые все вместе опять займут кучу места в ОЗУ. Нет уж, проще написать обычную исполняемую программу, которая сама по мере необходимости будет подгружать нужные модули с дровами и описанием ФС, повесить ее на горячую клавишу и получать удовольствие. Тем более. что обычное копирование по F5 тоже происходит посредством внешней утилиты. Так что тут ничего не изменится.

Судя по ответу могу резюмировать, что тазик - не ось. А некий *****код, который нахх никому не нужен, бесполезен. Даже базовые функции (работа с файлами) он реализовать не может. Надо нам драйвер чужой системы и всё. Тупик. Надо 640К. Уж признай, что тазик - говна кусок?

---------- Post added at 08:55 ---------- Previous post was at 08:49 ----------


Потому что это часто невозможно - например в заголовках файлов в MS-DOS теряется такая важная для спектрума информация как стартовый адрес исполняемого файла. Ну и др.

Это если мозги не включить, то да, теряется.

Sayman
20.02.2012, 06:58
тут надо отметить такой моменит - в чём разница загрузки драйверов осью для разных фс и девайсов и загрузкой модулей (которые суть - драйвера только для отдельного камандера) всё тех же фс и девайсов для отдельного камандера? память сожрётся что так что так. однако. имея в средствах оси вминяемый механизм для работы с драйверами, можно реализовать загрузку не всех подряд драйверов, а только тех, что что нужны сейчас. ведь можно при запусске системы пройтись по дискам (например) и определить какая фс где находится. фат, изфс, цпм, значит три драйыера будут погружены. если считаете что дрова будут чрезмерно большие, это только на свои руки пинять можно.

например в заголовках файлов в MS-DOS теряется такая важная для спектрума информация
эта проблема решается выбором одного из двух путей - либо конверсия файла в/из хобетты средствами драйвера, либоб запись заголовка трдос файлов в атрибуты файла на фс фат (как вариант, хотя и не совсем красивый).

Vadim
20.02.2012, 07:39
Драйвер более сложен, чем прямая программа типа копировщика. Т.к. он должен быть универсален. На ПЦ, в ms-dos, для работы с CP/M дискетами было написано 2 пакета. Именно в виде драйвера. И они прекрасно работают. Т.е. дискты ЦПМ читаются и из командной строки и из под нортона. Я это воспринимаю как правильный подход. Именно так и надо. Нет, конечно я понимаю, что блоки на дискетах трдос имеют некие параметры, которые отсутствуют в других ФС, но эта задача решаема.

DimkaM
20.02.2012, 12:01
http://elm-chan.org/fsw/ff/00index_e.html
Компилится IAR'ом ewz80 на ура.
В z88dk тоже компилится с некоторой доводкой(приведение типов в нескольких местах неправильно компилится).
Чем не драйвер.
используется как минимум здесь (http://forum.nedopc.com/viewtopic.php?p=18560#p18560).
На форуме, помоему, кто то заюзал под CPM

Это я к чему, если сабж(ГрафЛиба) будет сделан так же грамотно, то я как минимум пятнашки\тетрис попытаюсь на нём сделать.

moroz1999
20.02.2012, 15:18
Модераторы, срежьте, пожалуйста, оффтоп в отдельную тему, пока стандартный шизопонос не захлестнул обсуждение.

---------- Post added at 13:18 ---------- Previous post was at 13:14 ----------


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

Andrew771
20.02.2012, 17:39
Набор процедур на асме в html (каждая процедура - отдельный html), с описанием входных и выходных параметров.

moroz1999
20.02.2012, 22:59
Набор процедур на асме в html (каждая процедура - отдельный html), с описанием входных и выходных параметров.Яростно плюсую такую подачу материала. На каждую процедуру по возможности нужен примитивный изолированный пример.

alone
21.02.2012, 11:12
Изолированность невозможна. Для вывода спрайтов вам нужен генератор спрайтов. Для стирания спрайтов вам нужно копирование фона в буфер. Для копирования фона в буфер вам нужен сборщик с нумерацией страниц. Для вывода картинки вам нужен конвертор картинки и тот же сборщик. По отдельности все эти процедуры бесполезны.

krt17
21.02.2012, 20:12
http://www.z88dk.org/wiki/doku.php?id=library:sprites:sp1
В приципе уже было и буржуи даже пишут под это но подход alone'а будет более востребован у наших имхо. Сори если уже проскакивало.

alone
21.03.2012, 15:18
Графическая библиотека готова. Сейчас идёт написание примеров.

Автор библиотеки - Shiru (мой там только вывод спрайтов).

alone
23.03.2012, 22:17
Всё выложено тут (кроме игры ещё примеры на спрайты, тайлы и клавиатуру): http://zx.pk.ru/showthread.php?t=18587

Smalovsky
28.01.2016, 20:44
Так это для SDCC... Если бы для бейсика.
Я всё ищу нормальную библиотеку под бейсик. В SUPERCODE одни только скроллинги области экрана, в Mega Basic вроде спрайты есть и вроде по прерываниям работают, но нельзя убрать у них след затирания фона, а если использовать SPUT_, то спрайт накладывается на фон с текущими для бейсика атрибутами(да и потом фон нужно восстанавливать при перерисовке).
В принципе, хватило бы функций печати блоков из памяти по знакоместам и спрайтов работающих от прерываний, что бы они они могли накладываться по OR или XOR и восстанавливать фон. Можно и вывод текста в окна добавить.

Lethargeek
29.01.2016, 00:08
Smalovsky, да забей ты на допотопные бейсики, учи ассемблер, начинай как раз с графических процедур
даже самый неэффективный (для понятности) машинный код и быстрее, и в наши дни под эмулем отлаживается удобнее

Alex Rider
29.01.2016, 00:38
Я всё ищу нормальную библиотеку под бейсик.
Собственно, дело гиблое. Во-первых, чем универсальная библиотека, тем она тормознее и толще (места под спрайты и, собственно, код остается меньше). Во-вторых, какой бы универсальной не была библиотека, тебе все равно захочется чего-то, что она не умеет.
Кроме того, BASIC - ну очень неудобный язык программирования, что-то реально серьезное на нем написать крайне сложно. Если уж так не хочется с него слезать, но хочется работать со спрайтами - попробуй Laser Basic, он специально под это заточен.
Но даже sdcc с графическими библиотеками уделает Laser Basic как по скорости, так и по количеству умещаемому в память функционала. Если умеешь Pascal, рекомендую посмотреть в сторону ZXDev - Олег сделал там более-менее адекватную среду с библиотеками на паскалеподобных языках.

Smalovsky
29.01.2016, 13:51
учи ассемблер, начинай как раз с графических процедур
даже самый неэффективный (для понятности) машинный код и быстрее, и в наши дни под эмулем отлаживается удобнее
Ассемблер слишком тяжёлая артиллерия для прикладного программирования. Ещё можно допустить его применение для кодовых вставок или процедур.
Я же хочу отдыхать на спеке - это же ведь хобби. Вкалывать у меня итак есть над чем.

- - - Добавлено - - -


Но даже sdcc с графическими библиотеками
Какие есть графические библиотеки под спек на sdcc?
В z88dk есть графическая библиотека, и то она выводит монохромные спрайты.

Lethargeek
29.01.2016, 16:11
Ассемблер слишком тяжёлая артиллерия для прикладного программирования.
Предрассудок. В кросс-ассемблере с простейшими макросредствами писать проще и удобнее, чем на бейсиках.


Я же хочу отдыхать на спеке - это же ведь хобби. Вкалывать у меня итак есть над чем.
Ну никто же не заставляет оптимизировать, пиши тупо и прямолинейно, абы работало. А на бейсик только время потратишь зря.

Alex Rider
29.01.2016, 19:41
Какие есть графические библиотеки под спек на sdcc?
Я не шибко дружу с разработкой для ZX на C. Вот этот товарищ (http://zx-pk.ru/member.php?u=3055) фанатеет Обероном, но в качестве промеждуточного звена компиляции использует sdcc и активно пишет для него библиотеки. Аккуратно, "фанатеет" тут не для красного словца, будет сильно агитировать тебя перейти на Оберон и его zxdev (http://zx-pk.ru/showthread.php?t=18472). Что-то можно найти на его форуме (http://zx.oberon2.ru/forum/viewforum.php?f=10) (иногда многабукаф).

s_kosorev
29.01.2016, 19:51
Предрассудок. В кросс-ассемблере с простейшими макросредствами писать проще и удобнее, чем на бейсиках.
вот кстати интересно, можно ли макросредствами создать себе достаточно комфортную среду для работы к примеру с локальными переменными, в частности именоваными
работу с аргументами через стек к примеру, пусть оверхед но все быстрее чем бейсики

Smalovsky
30.01.2016, 04:00
Нашел одну графическую библиотеку:
https://code.google.com/archive/p/zxhigfx/
Не могу скачать. Может, кто-нибудь скачает и сделает ее доступной?

Black Cat / Era CG
30.01.2016, 04:28
Не могу скачать.
Может так?
http://storage.googleapis.com/google-code-archive-source/v2/code.google.com/zxhigfx/source-archive.zip

drbars
30.01.2016, 06:24
Smalovsky, ты лучше попроси готовые процедуры под свои задачи, поможем.

Alcoholics Anonymous
30.01.2016, 08:42
Какие есть графические библиотеки под спек на sdcc?


Все это может быть составлен с SDCC через z88dk:

https://drive.google.com/file/d/0B6XhJJ33xpOWUDB0TVBMV1pCa1k/view?usp=sharing

И исходный код здесь:

nirvanap_demo (http://z88dk.cvs.sourceforge.net/viewvc/z88dk/z88dk/libsrc/_DEVELOPMENT/EXAMPLES/zx/demo_nirvanap/)
sp1_demo (http://z88dk.cvs.sourceforge.net/viewvc/z88dk/z88dk/libsrc/_DEVELOPMENT/EXAMPLES/zx/demo_sp1/)
tritone_demo (http://z88dk.cvs.sourceforge.net/viewvc/z88dk/z88dk/libsrc/_DEVELOPMENT/EXAMPLES/zx/demo_tritone/)

Smalovsky
30.01.2016, 11:48
Может так?
http://storage.googleapis.com/google...ce-archive.zip
Там оказалась только векторная графика -
Код функций (http://zxhigfx.googlecode.com/svn/zxhigfx.h)

Oleg N. Cher
31.01.2016, 20:37
Вот этот товарищ (http://zx-pk.ru/member.php?u=3055) фанатеет Обероном, но в качестве промеждуточного звена компиляции использует sdcc и активно пишет для него библиотеки.Не пишет. Только портирует.


будет сильно агитировать тебя перейти на Оберон и его zxdev (http://zx-pk.ru/showthread.php?t=18472).Очень вы мне нужны шобы я вас агитировал :-)


Какие есть графические библиотеки под спек на sdcc?В поставке ZXDev есть библиотека Laser - полная реализация графических возможностей Laser Basic. Её можно использовать из Си (SDCC). Без Оберона.

Библиотека MegaBasic, реализующая возможности Mega Basic, там тоже намечена, но только намечена. Пара процедур. Нужно доработать.