На форуме не было еще темы про SDL.
Находится в SVN/contrib/sdk/sources/SDL-1.2.2/
Newlib версия в SVN/contrib/sdk/sources/SDL-1.2.2_newlib
SDL
-
Last edited by maxcodehack on Thu Jan 07, 2021 6:55 pm, edited 2 times in total.
Устаревшая информация:
1. Собрать SDL:
Либо скачайте готовую отсюда https://builds.kolibrios.org/rus/data/c ... b/libSDL.a и положите в /contrib/sdk/lib
Либо:
Экспортируйте MENUETDEV, так где он у вас лежит.
Зайдите в /contrib/sdk/sources/SDL-1.2.2/src/, и выполните там:
Если при последующей сборке примера, у вас будет множество таких https://pastebin.com/mvsJjAEq ошибок, то уберите в файле MENUETDEV/include/inlines/pc.h их объявления и пересоберите SDL заново.
2. Пример
/programs/demos/SDL/SDLTest.c - это пример. В папке есть makefile, в нем нужно исправить -lc_ на имя вашей menuetlibc (просто скачайте https://builds.kolibrios.org/rus/data/p ... lib/libc.a отсюда, переименуйте в libc_.a и положите в /contrib/sdk/lib ). Затем просто make. Если все успешно, то появится бинарник
Edit:
Теперь SDL полностью портирована на newlib, (menuetlibc совсем не нужна), и пример модифицирован. Нужно собрать как написано в следующем посте, а потом собрать пример без переделки мейкфайла, потому что в этом нет необходимости
Spoiler:
Есть возможность использовать SDL на menuetlibc в newlib программах:1. Собрать SDL:
Либо скачайте готовую отсюда https://builds.kolibrios.org/rus/data/c ... b/libSDL.a и положите в /contrib/sdk/lib
Либо:
Экспортируйте MENUETDEV, так где он у вас лежит.
Зайдите в /contrib/sdk/sources/SDL-1.2.2/src/, и выполните там:
Code: Select all
make -f Makefile_test install
make -f Makefile_test clean
2. Пример
/programs/demos/SDL/SDLTest.c - это пример. В папке есть makefile, в нем нужно исправить -lc_ на имя вашей menuetlibc (просто скачайте https://builds.kolibrios.org/rus/data/p ... lib/libc.a отсюда, переименуйте в libc_.a и положите в /contrib/sdk/lib ). Затем просто make. Если все успешно, то появится бинарник
Теперь SDL полностью портирована на newlib, (menuetlibc совсем не нужна), и пример модифицирован. Нужно собрать как написано в следующем посте, а потом собрать пример без переделки мейкфайла, потому что в этом нет необходимости
Last edited by maxcodehack on Thu Jan 07, 2021 6:57 pm, edited 4 times in total.
А теперь, та дам: SDL полностью на newlib. Syscall'ы используются из menuet/os.h а все остальное newlib.
Примеры в /programs/demos/SDL и /contrib/sdk/sources/SDL-1.2.2_newlib/fire-1.0/
Саму ее можно собрать запустив compile.sh в /contrib/sdk/sources/SDL-1.2.2_newlib/src, а также через tup.
Примеры в /programs/demos/SDL и /contrib/sdk/sources/SDL-1.2.2_newlib/fire-1.0/
Саму ее можно собрать запустив compile.sh в /contrib/sdk/sources/SDL-1.2.2_newlib/src, а также через tup.
Падает программа, если вызвать SDL_Flip (пример: http://websvn.kolibrios.org/filedetails ... Test_old.c)
Строка 51
Строка 51
Сегодня буду делать Flappy Bird на SDL. Можете дать пару советов
Это происходит только когда bpp=32.maxcodehack wrote:Падает программа, если вызвать SDL_Flip (пример: http://websvn.kolibrios.org/filedetails ... Test_old.c)
Строка 51
Я до конца не понял в чём ошибка, скорее всего из-за блиттера, предоставляемого Hermes. В любом случае это исправлено обновлением гермеса(SDL 1.2.15): #9172
Изобретайте колёса каждый раз, когда хотите написать новую программу.
Адаптировал для компиляции с TCC #9202.
Изобретайте колёса каждый раз, когда хотите написать новую программу.
Видимо окончательный рабочий вариант SDL_Delay #9874
Изобретайте колёса каждый раз, когда хотите написать новую программу.
Who is online
Users browsing this forum: No registered users and 1 guest