Patreon: https://www.patreon.com/sgdk
Github: https://github.com/stephane-d/sgdk
SGDK هي مجموعة تطوير مجانية تتيح تطوير البرامج بلغة C لمحرك SEGA Mega . أنه يحتوي على مكتبة التطوير نفسها (مع مصادر التعليمات البرمجية) وبعض الأدوات المخصصة المستخدمة لتجميع الموارد. يستخدم SGDK برنامج التحويل البرمجي لجامعة GCC (هدف M68K-ELL) و LIBGCC لإنشاء صورة ROM. يتم توفير الثنائيات (GCC 6.3) لنظام التشغيل Windows OS للراحة ، ولكن تحتاج إلى تثبيته بنفسك لأنظمة التشغيل الأخرى. لاحظ أن SGDK تتطلب أيضًا Java (تتطلب أدوات مخصصة ذلك) ، لذلك تحتاج إلى تثبيت Java على نظامك.
يتم توزيع مكتبة SGDK والأدوات المخصصة بموجب ترخيص MIT (انظر ملف الترخيص. تقع برنامج التحويل البرمجي GCC و LIBGCC تحت رخصة GNU (GPL3) وأي بناء برامج منه (كمكتبة SGDK) يخضع لترخيص استثناء مكتبة وقت تشغيل GCC (انظر Copying.Runtime File)
أولاً ، تحتاج إلى معرفة أن SGDK تستخدم لغة C (التجميع ممكن أيضًا ، ولكن ليس ضروريًا) ، لذلك يوصى بشدة أن تكون على دراية ببرمجة C قبل محاولة التطوير مع SGDK. إن تعلم لغة C في نفس الوقت حيث أن تعلم برمجة "Sega Mega Drive" أمر صعب للغاية ، ولن ينتهي بك الأمر إلى أي مكان. من المهم أيضًا أن يكون لديك ، على الأقل ، معرفة أساسية بأجهزة Sega Mega Drive (على وجه التحديد نظام الفيديو).
و -0 - مراجع تطوير Mega Drive Awesome:
https://github.com/and-0/awesome-megadrive
Scroll Scroll - Sega Mega Drive Graphics Guide:
https://rasterscroll.com/mdgraphics/
Mega Cat Studios - دليل رسومات Sega Mega Drive:
https://megacatstudios.com/blogs/retro-development/sega-genesis-mega-drive-vdp-graphics-guide-v1-2a-03-14-17
مدونة SIK مخصصة لبرمجة تجميع MD ولكن اشرح الكثير من الأشياء (وبطريقة لطيفة) حول أجهزة Sega Mega Drive:
https://plutiedev.com
مقال جميل من رودريغو كوبتي يشرح بنية محرك الأقراص الضخمة:
https://www.copetti.org/projects/consoles/mega-drive-genesis
دليل برامج Genesis الذي يحتوي على كل ما تحتاج لمعرفته حول محرك Sega Mega:
https://segaretro.org/images/a/a2/genesis_software_manual.pdf
ثم عندما تشعر بالاستعداد ، يمكنك المضي قدمًا وأخيراً تثبيت SGDK :)
يمكنك العثور على تعليمات التثبيت والبرامج التعليمية حول كيفية استخدام SGDK على الويكي:
https://github.com/stephane-d/sgdk/wiki
يأتي SGDK مع وثائق doxygen (التي تم إنشاؤها من ملفات رأس .H) والتي توفر أوصافًا حول هياكل ووظائف SGDK. يمكنك العثور عليه في مجلد "Doc" (افتح Doc/HTML/Files.html في متصفحك المحلي).
من المهم أن تعرف أن SGDK تعتمد اعتمادًا كبيرًا على الموارد التي يتم تجميعها من خلال أداة rescomp . يجب عليك قراءة ملف rescomp.txt لفهم نوع الموارد التي يمكنك استخدامها وكيفية إعلانها . ثم يمكنك إلقاء نظرة على مجلد "العينة" من SGDK ، وعلى وجه الخصوص ، عينة Sonic التي تعد عرضًا جيدًا لاستخدام SGDK بشكل عام (وظائف وموارد).
يمكنك العثور على الكثير من البرامج التعليمية عبر الإنترنت حول SGDK ولكن كن حذرًا ، بعضها قديم أو في بعض الأحيان خطأ.
أوصي حقًا بالبدء من الويكي الذي يوفر الأساسيات للبدء ، ولكن إذا كنت بحاجة إلى مزيد من البرامج التعليمية المرئية وأكثر اكتمالًا ، فيمكنك تجريب أي من هذه المحاولة:
دروس برمجة MD من OHSAT:
https://www.ohsat.com/tutorial/mdmisc/creating-graphics-for-md/
برامج تعليمية كاملة ومرئية من دانيبوس (الإسبانية فقط):
https://danibus.wordpress.com/
فيما يلي قائمة بالأدوات المفيدة لمساعدتك في إنشاء أصولك:
Asesprite
رسومات عاصفة
ترقية
Grafx2
Palette Quantizer: أداة قوية لتحويل صورتك مع قيود لوحة اللوحة
16tile: محرر خريطة Tile Sgdk محدد
TILE: محرر خريطة البلاط ، بدعم من SGDK Resource Compiler Tool
LDTK: محرر خريطة بلاط جديد ولكنه قوي (دعم تنسيقات البلاط أيضًا)
OGMO: محرر خريطة بلاط لطيف آخر لطيف وبسيط
Palette Merger: أداة تسمح بسهولة بتغيير مؤشر لوحة البلاط وأولويتها
deflemask: تعقب الموسيقى يدعم عدة أنظمة مثل Sega Mega Drive
الفرن: تعقب الموسيقى الجديد يدعم العديد من الأنظمة
Wavosaur: محرر صوت الموجة (Windows فقط)
الجرأة: محرر صوت الموجة (كل OS)
قد لا تناسب برامج تشغيل الصوت SGDK احتياجاتك ، لذا من المهم معرفة وجود بعض البدائل:
MDSDRV: يدعم برنامج تشغيل الصوت القوي FM و PSG SFX ، تشغيل PCM Plageable ...
صدى: برنامج تشغيل صوت آخر يدعم FM & PSG SFX ويعمل 100 ٪ على وحدة المعالجة المركزية Z80.
MIMINORUSIC: برنامج تشغيل صوتي Z80 صغير لـ Mega Drive الذي يعمل تمامًا خارج Z80 RAM ولا يصل إلى فتحة الخرطوشة.
إذا كنت بحاجة إلى مساعدة أو دعم مع SGDK ، فيمكنك الانضمام إلى SGDK Discord Server:
https://discord.gg/xmnbwqs
يمكنك أيضًا الذهاب إلى منتدى SpritesMind الذي يكرس لتطوير 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 الكاملة التي طورتها Andy Grind: https://github.com/andwn/marsdev وهي تدعم جميع أنظمة ، ويوفر توافق SGDK بالإضافة إلى دعم 32x ، لذلك تأكد من التحقق من ذلك.
يمكن لمستخدمي MacOSX أيضًا الوصول إلى SGDK مع Gendev لـ 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
الملفات كجذر ، قم بتنفيذ أمر Docker كمستخدم حالي: docker run --rm -v "$PWD":/src -u $(id -u):$(id -g) sgdk
يمكنك أيضًا تجربة حل Doragasu Docker البديل الذي يستخدم برنامج التحويل البرمجي Linux الأصلي (أسرع بكثير): https://gitlab.com/doragasu/docker-sgdk
نعم أنت تقرأ بشكل صحيح ، بفضل ماثيو نيمو ، يمكنك حتى الآن استخدام SGDK من AWS ^^ إليك الرابط إلى مدونته التي تشرح كيفية القيام بذلك: Build-rero-in-in-us-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 Support وغيرها من الإضافات الرائعة.
SIK لتنفيذ قاعدة المهام متعددة المهام ، ولجميع مصدر المعلومات الفنية PluTidev Sega Mega غير المهمة.
بارد ويلي لجعل كل ما يقرب من دعم الفرح / وحدة التحكم في SGDK (وعينة اختبار الفرح ^^).
Astrofra لعينة Starfield Donut و README المجددة ؛)
Gligli لبناء وتوفير GCC 6.3 لنظام التشغيل Windows.
البونبوج لصنع شعار SGDK "لطيف".
Adrian Spoz لجعل شعار SGDK 'profesionnal.
vojtěch salajka للنص الذي يسمح باستخدام SGDK بسهولة من النبيذ (Linux/Unix ولكن قد يعمل على OSX أيضًا).
Daniel Valdivieso لحل آخر قائم على النبيذ لاستخدام SGDK على Multi-OS (بما في ذلك قالب VSCode).
Andy Grind لمشروع Marsdev يسمح باستخدام SGDK على أي نظام تشغيل ودعم أيضًا 32x Dev.
Kubilus لمنفذ Gendev Linux of SGDK.
Sonic3d لمنفذ Gendev OSX من SGDK.
فلاديمير كريفيان لدعم الاستوديو المرئي والقالب.
ستيف شنب لدعم Docker.
Andreas Dietrich لعينات التأثير اللطيف للتأثير.
CLBR لمختلف المساهمات.
Jgyllinsky لتوفير / تحسين دفعات البناء.
Nolddor للإصلاحات / المساهمات.
starling13 للإصلاحات.
DavidGF لمساهماتها (تحسين التجميع LTO التحسين).
Shiningbzh / Jeremy و Kentosama لمساعدتهم الثمينة في الاختبار.
Vetea و Studio Vetea Discord بشكل عام لدعمهم ولطفهم.
كل أولئك الذين نسيتهم وعموما جميع الأشخاص الذين يساعدون من خلال تقديم الدعم ، والإبلاغ عن الأخطاء ، وإضافة العينات ودعم SGDK بأي شكل من الأشكال!
بالطبع ، أشكر كل ما عندي من Patreon على دعمهم المستمر ولكني أريد أن أتعامل مع شكر خاص ودفء للغاية على التبرع السخي من:
مكتب نقطية (فريق Xeno Crisis)
استوديوهات Neofid (شياطين فريق Astorborg)
ديمتري (دي)
راجين سافجاني
من المعروف أن هذه المشاريع تستند إلى SGDK (قائمة غير شاملة) :
Tanzer by Mega Cat Studios
ماساكا بالمقاومة
أزمة Xeno من مكتب Bitmap
شياطين استوديوهات أستيبورغ نيوفيد
2048 بواسطة Atamurad
Abbaye des Morts (L ') منفذ MD غير رسمي بواسطة Moon-Hatcher
فن Leonbli (The) عن طريق المقاومة
ميناء MD غير الرسمي البربري بواسطة Z-Team
شياطين أستيبورغ من قبل Neofid Studio
Devwill أيضًا MD بواسطة Amaweks
Smarties المميتة التي صنعت لـ GGJ 2016
ملء الشاشة NICCC 2000 بالمقاومة
IK+ Deluxe MD Port من قبل T-Team
إيرينا بواسطة White Ninja Studio
أوميغا انفجار من نيندو
Perlin & Pinpin بواسطة Lizardrive
يمين 2 إصلاح من قبل Super Megabyte صنع ل GGJ 2020
العودة إلى سفر التكوين ميناء MD غير رسمي بواسطة Z-Team
طريق إلى فالهالا من Bounty/Banana والمقاومة
حلزوني () بالمقاومة
TCK بواسطة إنشاء استوديو GGS
Tetris MD منفذ MD غير رسمي بواسطة Nero Jin
Thundercats MD بقلم رولاندو فيرناديز بينافيديز.
السفر بالمقاومة
Wacky Willy Weiner Sausage Surfer صنع لـ GGJ 2017