Patreon: https://www.patreon.com/sgdk
Github: https://github.com/stephane-d/sgdk
SGDK - это бесплатный комплект разработки, позволяющий разработать программное обеспечение на языке C для Sega Mega Drive . Он содержит саму библиотеку разработки (с источниками кода) и некоторые пользовательские инструменты, используемые для компиляции ресурсов. SGDK использует компилятор GCC (цель M68K-ELF) и LIBGCC, чтобы генерировать изображение ПЗУ. Двоичные файлы (GCC 6.3) предоставляются для ОС Windows для удобства, но вам необходимо установить ее самостоятельно для других операционных систем. Обратите внимание, что SGDK также требует Java (это требует пользовательских инструментов), поэтому вам необходимо установить Java в вашу систему.
Библиотека SGDK и пользовательские инструменты распределены по лицензии MIT (см. Файл License.txt). Компилятор GCC и LIBGCC находятся под лицензией GNU (GPL3), а любая сборка программного обеспечения из него (как библиотека SGDK) находится в рамках лицензии на исключение библиотеки библиотеки Runtime GCC (см. Файл coping.Runtime)
Во -первых, вам необходимо знать, что SGDK использует язык C (также возможна сборка, но не обязательно), поэтому настоятельно рекомендуется быть знакомым с программированием C, прежде чем пытаться развиваться с SGDK. Изучение языка C в то же время, когда изучение программирования Sega Mega Drive 'определенно слишком сложно, и вы в конечном итоге не получите никуда. Также важно иметь, по крайней мере, базовые знания оборудования Sega Mega Drive (в частности, видеосистема).
И -0 - Потрясающие ссылки на разработку Mega Drive:
https://github.com/and-0/awesome-megadrive
Raster Scrolk - Graphics Guide: Sega Mega Drive Guide:
https://rasterscroll.com/mdgraphics/
Mega Cat Studios - Graphics Guide Sega Mega Drive:
https://megacatstudios.com/blogs/retro-development/sega-genesis-mega-rive-vdp-graphics-guide-v1-2a-03-14-17
Блог SIK посвящен программированию MD Assembly, но объясните много вещей (и в хорошем смысле) о оборудовании Sega Mega Drive:
https://plutiedev.com
Хорошая статья Родриго Копетти, объясняющая архитектуру Mega Drive:
https://www.copetti.org/projects/consoles/mega-rive-genesis
Руководство по программному обеспечению Genesis, которое содержит абсолютно все, что вам нужно знать о Sega Mega Drive:
https://segaretro.org/images/a/a2/genesis_software_manual.pdf
Затем, когда вы чувствуете себя готовым, вы можете пойти дальше и, наконец, установить SGDK :)
Вы можете найти инструкции по установке и учебные пособия о том, как использовать SGDK на вики:
https://github.com/stephane-d/sgdk/wiki
SGDK поставляется с документацией доксигена (сгенерированной из файлов заголовков .h), которая содержит описания о структурах и функциях SGDK. Вы можете найти его в папке «Док» (откройте свой локальный Doc/html/files.html в браузере).
Важно знать, что SGDK в значительной степени полагается на ресурсы , которые составлены через инструмент Repcomp . Вам следует прочитать файл rescomp.txt, чтобы понять , какие ресурсы вы можете использовать и как их объявить . Затем вы можете посмотреть на папку «Образец» от SGDK и, в частности, Sonic Sample, которая является хорошей демонстрацией использования SGDK в целом (функции и ресурсы).
Вы можете найти много учебных пособий в Интернете о SGDK, но будьте осторожны, некоторые устарели или иногда просто неправильно.
Я действительно рекомендую начать с вики, которая дает основаниям начать, но если вам нужно больше визуальных и более полных учебных пособий, вы можете попробовать любой из них:
MD программирования учебные пособия от OHSAT:
https://www.ohsat.com/tutorial/mdmisc/creating-graphics-for-md/
Очень полные и визуальные учебники от Данибуса (только испанский):
https://danibus.wordpress.com/
Вот список полезных инструментов, которые помогут вам создать ваши активы:
Аспрейт
Графика Гейл
Повышение
Grafx2
Квантователь палитры: мощный инструмент для преобразования вашего изображения с ограничениями палитры палитры
16tile: редактор карты плитки SGDK
Tiled: Редактор карты плитки, поддерживаемый инструментом компилятора ресурсов SGDK
LDTK: Новый, но мощный редактор карты плитки (также поддерживайте форматы плитки)
Ogmo: еще один хороший и простой редактор карты плитки
Слияние палитры: инструмент, позволяющий легко изменить индекс и приоритет палитры плитки
Deflemask: музыкальный трекер поддерживает несколько систем как Sega Mega Drive
Печь: новый музыкальный трекер, поддерживающий многие системы
Вавозавр: редактор звука волн (только Windows)
Audacity: Editor Wave Sound (все ОС)
Драйверы SGDK Sound могут не соответствовать вашим потребностям, поэтому важно знать, что существуют некоторые альтернативы:
MDDDRV: мощная поддержка звукового драйвера FM & PSG SFX, Pitchable PCM Playback ...
Echo: еще один звуковой драйвер, поддерживающий FM & PSG SFX и 100% на процессоре Z80.
Minimusic: крошечный звуковой драйвер Z80 для Mega Drive, который полностью работает от Z80 RAM и не доступа к слоту картриджа.
Если вам нужна помощь или поддержка с SGDK, вы можете присоединиться к серверу SGDK Discord:
https://discord.gg/xmnbwqs
Вы также можете пойти на форум SpriteMind, который посвящен разработке Sega Mega Drive и имеет конкретный раздел для SGDK:
http://gendev.spritesmind.net/forum/
Пользователи Unix/Linux должны попробовать этот очень простой скрипт, позволяя легко использовать SGDK из вина:
https://github.com/franticware/sgdk_wine
Существует также новое решение, предложенное Даниэлем Вальдивизо для использования SGDK с VSCODE под любой ОС с использованием вина:
https://github.com/v4ld3r5/sgdk_vscode_template
Еще одна отличная альтернатива - использовать полную среду Marsdev , разработанную Энди Гринд: https://github.com/andwn/marsdev. Она поддерживает все OSES, обеспечивает совместимость SGDK, а также 32 -кратную поддержку, поэтому обязательно проверьте это.
Пользователи Macosx также имеют доступ к SGDK с гендевом для MacOS из проекта Sonic3D:
https://github.com/sonic3d/gendev-macos
Современный способ установить его в любой среде - использовать Docker.
Чтобы загрузить базовое изображение sgdk
:
docker pull ghcr.io/stephane-d/sgdk docker tag ghcr.io/stephane-d/sgdk sgdk
Или построить это:
docker build -t ghcr.io/stephane-d/sgdk-m68k-gcc:latest -f deps/gcc.Dockerfile deps/ docker build -t sgdk .
А затем чтобы скомпилировать локальную ENV, например, samples
:
cd sample/game/sonic docker run --rm -v "$PWD":/src sgdk
Примечания:
$PWD
не будет работать на Windows, вместо этого необходимо использовать %CD%
.
Чтобы избежать записи файлов ./out
в качестве root, выполните команду Docker как текущий пользователь: docker run --rm -v "$PWD":/src -u $(id -u):$(id -g) sgdk
Вы также можете попробовать альтернативное решение Doragasu Docker, в котором используется собственный компилятор Linux (намного быстрее): https://gitlab.com/doragasu/docker-sgdk
Да, вы правильно читаете, благодаря Мэтью Ниммо вы можете даже сейчас использовать SGDK из AWS ^^ Вот ссылка на его блог, которая объясняет, как это сделать: https://community.aws/content/2hzinsywwx8cyaifkquutvoyqj/how-to- Build-Retro-Games-in-ws-using-sega-genesis-development-kit-sgdk
Вы можете найти шаблон Visual Studio в папке «VSTUDIO», чтобы облегчить интеграцию SGDK с VS. Или, чтобы сделать это еще дальше, вы также можете установить расширение VS, сделанное Zerasul:
https://marketplace.visualstudio.com/items?itemname=zerasul.genesis-code
SGDK полностью бесплатный, но вы можете поддержать его на Patreon: https://www.patreon.com/sgdk
Doragasu для многозадачного двигателя (на основе реализации SIK), Megawifi, поддержки Flash Save и других добавлений.
SIK для реализации многозадачной базы и для всех его нецензуемых источников технической информации Sega Mega Drive Sega Mega Drive.
Чилли -Вилли за то, чтобы сделать почти всю поддержку радости / контроллера в SGDK (и образец теста радости ^^).
Astrofra для образца пончика Starfield и обновленного Readme;)
Gligli для строительства и предоставления GCC 6.3 для Windows.
Результат для создания «милого» логотипа SGDK.
Адриан закладывает за создание логотипа «Профессионального» SGDK.
Vojtěch salajka для сценария, позволяющий легко использовать SGDK из вина (Linux/Unix, но также может работать на OSX).
Даниэль Вальдивизо для другого винного решения для использования SGDK на мульти-OS (включая шаблон VSCODE).
Энди Grind для проекта Marsdev, позволяющий использовать SGDK в любой ОС, а также поддерживает 32x Dev.
Кубилус для порта гендев -линокс в SGDK.
Sonic3d для порта Gendev OSX SGDK.
Vladimir Kryvian для поддержки Visual Studio и шаблона.
Стив Шнепп для поддержки Docker.
Андреас Дитрих для образцов хорошего масштабирования и эффекта масштабирования.
CLBR для различных вкладов.
Jgyllinsky для обеспечения / улучшения партий сборки.
Nolddor для исправлений / вкладов.
Starling13 для исправлений.
DavidGF за его вклад (улучшенная ассамблея LTO оптимизация).
Shiningbzh / Джереми и Кентосама за их драгоценную помощь в тестировании.
Vetea и Studio Vetea Discord People в целом за их поддержку и доброту.
Все те, кого я забыл, и, как правило, все люди помогают, предоставляя поддержку, сообщая об ошибках, добавляя образцы и поддерживая SGDK в любом случае!
Конечно, я благодарю всех своих патронов за их постоянную поддержку, но я хочу посвятить себя очень особенным и теплым, спасибо за щедрое пожертвование от:
Бюро растрового изображения (Кризисная команда Xeno)
Neofid Studios (Demons of Asteborg Team)
Дмитрия (ди)
Раджен Сэвжани
Известно, что эти проекты основаны на SGDK (не эксплуатационный список) :
Tanzer от Mega Cat Studios
Масиака от сопротивления
Кризис Ксено от растрового бюро
Демоны Asteborg Neofid Studios
2048 от Атамурада
Abbaye des Morts (L ') Неофициальный MD-порт от Moon-Natcher
Искусство Леонбли (The) сопротивлением
Варварский неофициальный порт MD от Z-Team
Демоны Астеборга от Neofid Studio
Devwill тоже MD от Amaweks
Фатальные умники, сделанные для GGJ 2016
Полноэкранный NICCC 2000 по сопротивлению
IK+ Deluxe Неофициальный MD-порт от Z-Team
Irena от White Ninja Studio
Omega Blast от Nendo
Perlin & Pinpin от Lizardrive
Справа 2 Ремонт от супер мегабайта сделан для GGJ 2020
Вернуться в Genesis неофициальный MD-порт от Z-Team
Дорога в Вальхаллу по наградам/банану и сопротивлению
Спираль () сопротивлением
TCK от GGS Studio Creation
Tetris MD Неофициальный порт MD от Nero Jin
Thundercats MD Роландо Фернандес Бенавидес.
Путешествие по сопротивлению
Wracky Willy Weiner Surfer Surfer для GGJ 2017