1
Ромхакинг и программирование / SGDK
« : 08 Сентябрь 2022, 18:39:25 »
спасибо за ответ!
а я правильно понимаю что эти команды это аналог стандартных malloc(); calloc();realloc(); free() ? то есть стандартные библиотеки си в CGDK работать не будут вообще, и стеф все переписал?
раз уж вы затронули тему настройки и сборки проекта. У меня тут тоже прям гора вопросов. которые я не знаю как правильно сформулировать, чтобы хотя бы начать поиск информации.
значит поставил я сгдк по этому туториалу https://www.ohsat.com/tutorial/megapong/megapong-2/ на VScode. там есть спец плагин gencode, все очень удобно включается, но я совершенно не понимаю как это все работает в связке.
моя цель понять общие правила работы с фреймворками(сдгк ведь считается фреймворком? или это просто библиотека?), исходным кодом, и вообще как проекты настраиваются в популярных IDE. Есть ли общие правила для всех IDE или для каждой IDE все индивидуально? допустим в VScode добавляет в проект какие то папки с файлами настройки .vscode в которых я наощупь прописал пути. Но в других семплах для сгдк ,которые я скачивал для обучения, нет ничего подобного. ну или лежат какие то фалы настройки вообще в другом месте и в другом формате. как тут разобраться?
Я начал смотреть как программы компилируются. и чето прям все не то что надо. по си справочники про это говорят как то вскользь , делают упор на самом языке.
вот на хабре нашел общую информацию
что есть прекомпайлер , котом компайлер в ассемблер, потом подключается линковщик, после собирается файл. Где это все относительно сгдк смотреть? а есть еще какие то сборщики. вот что делает make.exe в сгдк? почему он создает libmd с расширением .a? если это статическая библиотека под виндоус она же должна иметь расширение . lib?
как вообще это гуглить? у меня полный сумбур в голове. Я раньше разбирался в юнити там все просто было, там одно средство и одни правила поведения.
Вот например компилятор. Есть расширение с\с++ для VScode, без него не будет возможности программировать под си. в настройках этого расширения нужно принудительно указать компилятор из большой визуал студии. (да я поставил еще и саму студию 19 лол).
и все вроде бы идет нормально. но тут я читаю форумы и люди пишут что Стэф использует какой то свой компилятор. Бдыщь. ну правильно думаю, нужен же компилятор под 68к, ан нет он использует какойто стандартный gcc старой версии. но он же для для х86? он что поставляется вместе с сгдк? а как он тогда прописывается в VScode у меня же в настройках стоит от визуал студии?
еще в VScode есть терминал. там можно выбирать профиль терминала. то есть получается для каждого компилятора свои терминал? их можно как-то настраивать. с сгдк у меня работает только профиль gen code просто если я выбираю какой-нибудь повершелл, компиляция не проходит сыпет ошибками.
кароче вот такой сумбур. Мне в идеале нужна информация понятная нубу, чтобы я, допустим, получил исходники без инструкции по сборке, смог подобрать компиляторы и прочие средства и смог их правильно скомпилировать через любую доступную иде. просто пошлите меня по адресу че курить кароч по этой теме)
Добавлено позже:
например, как мне взять эти тулзы и настроить их с VScode под виндоус? там нет четкой инструкции. что делать в такой ситуации?
В memory.c есть динамическое выделение памяти, которую также использует сам SGDK, там есть MEM_getFree(), чтобы узнать свободное место и MEM_alloc() вернёт NULL, если не получилось выделить. Также можно узнать о нехватке памяти, не проверяя возврат MEM_alloc()
а я правильно понимаю что эти команды это аналог стандартных malloc(); calloc();realloc(); free() ? то есть стандартные библиотеки си в CGDK работать не будут вообще, и стеф все переписал?
раз уж вы затронули тему настройки и сборки проекта. У меня тут тоже прям гора вопросов. которые я не знаю как правильно сформулировать, чтобы хотя бы начать поиск информации.
значит поставил я сгдк по этому туториалу https://www.ohsat.com/tutorial/megapong/megapong-2/ на VScode. там есть спец плагин gencode, все очень удобно включается, но я совершенно не понимаю как это все работает в связке.
моя цель понять общие правила работы с фреймворками(сдгк ведь считается фреймворком? или это просто библиотека?), исходным кодом, и вообще как проекты настраиваются в популярных IDE. Есть ли общие правила для всех IDE или для каждой IDE все индивидуально? допустим в VScode добавляет в проект какие то папки с файлами настройки .vscode в которых я наощупь прописал пути. Но в других семплах для сгдк ,которые я скачивал для обучения, нет ничего подобного. ну или лежат какие то фалы настройки вообще в другом месте и в другом формате. как тут разобраться?
Я начал смотреть как программы компилируются. и чето прям все не то что надо. по си справочники про это говорят как то вскользь , делают упор на самом языке.
вот на хабре нашел общую информацию
что есть прекомпайлер , котом компайлер в ассемблер, потом подключается линковщик, после собирается файл. Где это все относительно сгдк смотреть? а есть еще какие то сборщики. вот что делает make.exe в сгдк? почему он создает libmd с расширением .a? если это статическая библиотека под виндоус она же должна иметь расширение . lib?
как вообще это гуглить? у меня полный сумбур в голове. Я раньше разбирался в юнити там все просто было, там одно средство и одни правила поведения.
Вот например компилятор. Есть расширение с\с++ для VScode, без него не будет возможности программировать под си. в настройках этого расширения нужно принудительно указать компилятор из большой визуал студии. (да я поставил еще и саму студию 19 лол).
и все вроде бы идет нормально. но тут я читаю форумы и люди пишут что Стэф использует какой то свой компилятор. Бдыщь. ну правильно думаю, нужен же компилятор под 68к, ан нет он использует какойто стандартный gcc старой версии. но он же для для х86? он что поставляется вместе с сгдк? а как он тогда прописывается в VScode у меня же в настройках стоит от визуал студии?
еще в VScode есть терминал. там можно выбирать профиль терминала. то есть получается для каждого компилятора свои терминал? их можно как-то настраивать. с сгдк у меня работает только профиль gen code просто если я выбираю какой-нибудь повершелл, компиляция не проходит сыпет ошибками.
кароче вот такой сумбур. Мне в идеале нужна информация понятная нубу, чтобы я, допустим, получил исходники без инструкции по сборке, смог подобрать компиляторы и прочие средства и смог их правильно скомпилировать через любую доступную иде. просто пошлите меня по адресу че курить кароч по этой теме)
Добавлено позже:
Чили-Вилли выложил свой набор для разработки:
https://segaxtreme.net/threads/my-current-devkit-for-md-cd-32x.25273/
например, как мне взять эти тулзы и настроить их с VScode под виндоус? там нет четкой инструкции. что делать в такой ситуации?