Patreon: https://www.patreon.com/sgdk
Github: https://github.com/stephane-d/sgdk
O SGDK é um kit de desenvolvimento gratuito, permitindo o desenvolvimento de software em C Language para o Sega Mega Drive . Ele contém a própria biblioteca de desenvolvimento (com as fontes de código) e algumas ferramentas personalizadas usadas para compilar recursos. O SGDK usa o Compilador GCC (M68K-ELF Target) e o LIBGCC para gerar uma imagem ROM. Os binários (GCC 6.3) são fornecidos para o sistema operacional Windows por conveniência, mas você precisa instalá -lo sozinho para outros sistemas operacionais. Observe que o SGDK também requer Java (as ferramentas personalizadas exigem); portanto, você precisa instalar o Java no seu sistema.
A biblioteca SGDK e as ferramentas personalizadas são distribuídas sob a licença do MIT (consulte o arquivo License.txt). O GCC Compiler e LibGCC estão sob licença GNU (GPL3) e qualquer software construído a partir dele (como a biblioteca SGDK) está sob a licença de exceção da biblioteca de tempo de execução do GCC (consulte o arquivo copying.runtime)
Primeiro, você precisa saber que o SGDK usa o idioma C (a montagem também é possível, mas não é necessária), por isso é altamente recomendável estar familiarizado com a programação C antes de tentar se desenvolver com o SGDK. Aprender a linguagem C ao mesmo tempo em que a programação de 'Sega Mega Drive' é definitivamente muito difícil e você acabará chegando a lugar algum. Também é importante ter, pelo menos, um conhecimento básico do hardware Sega Mega Drive (especificamente do sistema de vídeo).
AND -0 - Awesome Mega Drive Development Referências:
https://github.com/and-0/awesome-megadrive
Raster Scroll - Guia gráfico de Sega Mega Drive:
https://rasterscroll.com/mdgraphics/
Mega Cat Studios - Guia gráfico Sega Mega Drive:
https://megacatstudios.com/blogs/reto-development/sega-genesis-mega-drive-vdp-graphics-guide-v1-2a-03-14-17
O blog de Sik dedicado à programação da MD Assembly, mas explique muitas coisas (e de uma maneira legal) sobre o hardware Sega Mega Drive:
https://plutiedev.com
Um bom artigo de Rodrigo Copetti explicando a arquitetura Mega Drive:
https://www.copetti.org/projects/consols/mega-drive-gênese
Manual de software Genesis, que contém absolutamente tudo o que você precisa saber sobre o Sega Mega Drive:
https://segaretro.org/images/a/a2/genesis_software_manual.pdf
Então, quando você se sentir pronto, pode ir além e finalmente instalar o SGDK :)
Você pode encontrar instruções e tutoriais de instalação sobre como usar o SGDK no wiki:
https://github.com/stephane-d/sgdk/wiki
O SGDK vem com documentação doxygen (gerado a partir de arquivos de cabeçalho .h) que fornece descrições sobre estruturas e funções SGDK. Você pode encontrá -lo na pasta 'doc' (abra seu doc/html/files.html local no seu navegador).
É importante saber que o SGDK depende fortemente de recursos que são compilados através da ferramenta Rescomp . Você deve ler o arquivo rescomp.txt para entender que tipo de recursos você pode usar e como declará -los . Em seguida, você pode olhar para a pasta 'amostra' do SGDK e, em particular, a amostra sonora que é uma boa vitrine de uso do SGDK em geral (funções e recursos).
Você pode encontrar muitos tutoriais on -line sobre o SGDK, mas tenha cuidado, alguns estão desatualizados ou às vezes apenas errados.
Eu realmente recomendo a partir do wiki, que fornece o básico para começar, mas se você precisar de tutoriais visuais e mais completos, poderá experimentar um deles:
Tutoriais de programação MD da OHSAT:
https://www.ohsat.com/tutorial/mdmisc/creating-graphics-for-md/
Tutoriais muito completos e visuais do Danibus (apenas espanhol):
https://danibus.wordpress.com/
Aqui está uma lista de ferramentas úteis para ajudá -lo a criar seus ativos:
ASESPRITE
Graphics Gale
Pro Motion
Grafx2
Quantizer da paleta: ferramenta poderosa para converter sua imagem com restrições de paleta de paleta
16Tile: editor de mapa de ladrilhos específicos do SGDK
Ladrilho: editor de mapas de ladrilhos, suportado pela ferramenta de compilador de recursos SGDK
LDTK: Editor de mapas de ladrilhos novos, mas poderosos (também suporta formatos de azulejos)
OGMO: Outro editor de mapa de ladrilho agradável e simples
Incorporação da paleta: uma ferramenta que permite alterar facilmente o índice de paleta de ladrilhos e a prioridade
Deflemask: Music Tracker apoiando vários sistemas como o Sega Mega Drive
Forno: novo rastreador de música apoiando muitos sistemas
Wavossaur: Editor de som de onda (somente Windows)
Audacity: Wave Sound Editor (todos os sistemas operacionais)
Os drivers de som do SGDK podem não atender às suas necessidades, por isso é importante saber que existem algumas alternativas:
MDSDRV: Suporte de driver de som poderoso FM e PSG SFX, reprodução de PCM arremessado ...
ECHO: Outro driver de som que suporta FM e PSG SFX e funcionando 100% na CPU Z80.
Minimusic: um minúsculo driver de som Z80 para mega drive que corre totalmente da RAM Z80 e não acessa o slot do cartucho.
Se você precisar de ajuda ou suporte com o SGDK, poderá participar do servidor SGDK Discord:
https://discord.gg/xmnbwqs
Você também pode ir ao fórum spritesmind, dedicado ao desenvolvimento da Sega Mega Drive e tem uma seção específica para o SGDK:
http://gendev.spritesmind.net/forum/
Os usuários do Unix/Linux devem experimentar este script muito simples, permitindo que você use o SGDK do vinho facilmente:
https://github.com/franticware/sgdk_wine
Há também uma nova solução proposta por Daniel Valdivieso para usar o SGDK com o VSCode sob qualquer sistema operacional usando vinho:
https://github.com/v4ld3r5/sgdk_vscode_template
Outra ótima alternativa é usar o ambiente completo do MARSDEV , desenvolvido por Andy Grind: https://github.com/andwn/marsdev, ele suporta todos os sistemas operacionais, fornece compatibilidade do SGDK e suporte 32X; portanto, verifique se verifique.
Os usuários do Macosx também têm acesso ao SGDK com o GENDEV para macOS do projeto Sonic3D:
https://github.com/sonic3d/gendev-macos
Uma maneira moderna de instalá -lo em qualquer ambiente é usar o Docker.
Para baixar a imagem base sgdk
:
docker pull ghcr.io/stephane-d/sgdk docker tag ghcr.io/stephane-d/sgdk sgdk
Ou construa:
docker build -t ghcr.io/stephane-d/sgdk-m68k-gcc:latest -f deps/gcc.Dockerfile deps/ docker build -t sgdk .
E então para compilar o Env local, como samples
, por exemplo:
cd sample/game/sonic docker run --rm -v "$PWD":/src sgdk
Notas:
$PWD
não funcionará no Windows, %CD%
deve ser usado.
Para evitar escrever arquivos ./out
como root, execute o comando Docker como Usuário atual: docker run --rm -v "$PWD":/src -u $(id -u):$(id -g) sgdk
Você também pode experimentar a solução alternativa do Doragasu Docker, que usa um compilador Linux nativo (muito mais rápido): https://gitlab.com/doragasu/docker-sgdk
Sim, você está lendo corretamente, graças a Matthew Nimmo, você pode agora usar o SGDK da AWS ^^ Aqui está o link para o blog dele que explica como fazer isso: https://community.aws/content/2hzinsywwx8cyeaifkquutvoyqj/how--to- Build-Retro-Games-in-AWS-Using-Sega-Genese-Desenvolvimento-Kit-SGDK
Você pode encontrar um modelo do Visual Studio na pasta 'vStudio' para facilitar a integração do SGDK com vs. Ou, para levá -lo ainda mais longe, você também pode instalar a extensão VS feita por Zerasul:
https://marketplace.visualstudio.com/items?itemname=zerrasul.genesis-code
O SGDK é completamente gratuito, mas você pode apoiá -lo no Patreon: https://www.patreon.com/sgdk
Doragasu para o mecanismo multitarefa (com base na implementação SIK), megawifi, suporte de salvamento flash e outras adições agradáveis.
SIK para a implementação da base multitarefa e para toda a sua fonte de informação técnica não valiosa Plutidev Sega Mega Drive.
Willy por fazer quase todo o suporte de alegria / controlador no SGDK (e na amostra de teste de alegria ^^).
Astrofra para a amostra de donuts Starfield e o readme renovado;)
Gigli para construir e fornecer o GCC 6.3 para Windows.
Gunpog por fazer o logotipo SGDK 'fofo'.
Adrian Spoz por fazer o logotipo SGDK 'Profesionnal'.
Vojtěch Salajka para o script, permitindo usar o SGDK facilmente do vinho (Linux/Unix, mas também pode funcionar no OSX).
Daniel Valdivieso para outra solução baseada em vinho para usar o SGDK no Multi-OS (incluindo um modelo VSCode).
Andy Grind para o projeto MARSDEV, permitindo usar o SGDK em qualquer sistema operacional e também suportar 32x dev.
Kubilus para a porta GENDEV Linux do SGDK.
Sonic3D para a porta GENDEV OSX do SGDK.
Vladimir Kryvian para suporte e modelo do Visual Studio.
Steve Schnepp para suporte do Docker.
Andreas Dietrich para as amostras Nice Wobbler & Scaling Effect.
CLBR para várias contribuições.
Jgyllinsky por fornecer / melhorar os lotes de construção.
Nolddor para correções / contribuições.
Starling13 para correções.
DavidGF por suas contribuições (otimização da LTO de montagem aprimorada).
Shiningbzh / Jeremy e Kentosama por sua preciosa ajuda nos testes.
Vetea e estúdio vetea Discord Pessoas em geral por seu apoio e bondade.
Todos aqueles que esqueci e geralmente todas as pessoas ajudam fornecendo apoio, relatando bugs, adicionando amostras e apoiando o SGDK de qualquer maneira!
É claro que agradeço a todos os meus Patreon por seu apoio contínuo, mas quero dedicar um agradecimento muito especial e quente por doação generosa de:
Bitmap Bureau (equipe de crise Xeno)
Neofid Studios (equipe de Demônios da Asteborg)
Dmitry (DI)
Rajen Savjani
Sabe-se que esses projetos são baseados na SGDK (Lista não exaustiva) :
Tanzer por Mega Cat Studios
Masiaka por resistência
Crise Xeno pelo Bitmap Bureau
Demônios dos estúdios de Asteborg Neofid
2048 por Atamurad
Abbaye des Morts (L ') Porto não oficial de MD por Lua-observador
Arte de Leonbli (o) por resistência
Porta MD não oficial bárbaro por Z-Team
Demônios de Asteborg por Neofid Studio
Devwill também md por Amaweks
Smarties fatais feitos para o GGJ 2016
Tela cheia NICCC 2000 por resistência
IK+ Deluxe não oficial da porta MD por Z-Team
Irena do White Ninja Studio
Omega explosão por Nendo
Perlin & Pinpin por lagarto
REPARO DIREITO 2 de Super Megabyte Feito para o GGJ 2020
Retorne ao Gênesis Porta MD não oficial por Z-Team
Estrada para Valhalla por recompensa/banana e resistência
Espiral (o) por resistência
TCK by GGS Studio Creation
Tetris MD Porta MD não oficial por Nero Jin
Thundercats MD de Rolando Fernández Benavidez.
Viajar por resistência
Wacky Willy Weiner Salsage Surfer feito para o GGJ 2017