Форум PSCD.ru

Игровые приставки и Эмуляция => Ромхакинг и программирование => Тема начата: Alon от 19 июля 2013, 15:47

Название: Программирование под Sega MegaDrive / Genesis
Отправлено: Alon от 19 июля 2013, 15:47
Полагаю, что программированием и разработкой игр для 16-ти битки Sega MegaDrive / Genesis уже давно никто не занимается, так как, это скорее всего очень сложно. Но всё же время от времени появляются небольшие PD (Public Domain) ромы от энтузиастов с демонстрацие чего-либо. Но в основном на этих мелких поделках всё и заканчивается. Говорить об крупных проектах или хотя бы небольших играх не приходится. Это уж слишком редкое явление.
Предлагаю в этой теме поддержать всех начинающих и желающих сделать самостоятельно новую игру для SMD. Собрать тут различную информацию, поделится материалами и знаниями по данной тематике. Так что бы каждый, кто захочет сделать новую игру для старой игровой приставки, знал с чего ему начинать и в какую сторону смотреть.
Полагаю, что вопросы по теме так же будут вполне актуальны и найдутся те, кто смогут на них ответить.
 
От себя добавлю, нашёл небольшой пример (исходный код), написанный на ассемблере под процессор 68000 (собственно говоря, это и есть главный процессор MegaDrive). Пример представляет собой вполне традиционную надпись для начинающих программистов. Так называемую "Hello World". Тут же в примере надпись "Привет Мир" разделена словом SEGA. Получается "Hello Sega World".
 
(http://pscd.ru/forum/uploads/monthly_07_2013/post-5-0-52350200-1374237946.png)
 
Данный код hello.asm на Assembler не так велик всего около 300 строк. Плюс ещё небольшая библиотека gen.h. Как раз хороший пример для начинающих программистов, что бы понять, как всё это работает.
 
Скачать sours code "Hellow World" на асемблере.

 
Скачать пример скомпилированный ром, который можно запустить на эмулятори SMD или же записать на Flash картридж и проверить на работоспособность на реальной железной 16-ти битки.
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: Gamerbes от 20 июля 2013, 13:52
Я знаю что есть конструктор текстовых квестов для Sega.
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: admin от 22 июля 2013, 10:53
Для создания игр для Sega MegaDrive без программирования существует несколько конструкторов (программ / сред разработки). Самыми старыми из них являются GINCS v0.52 (http://pscd.ru/info/1593-gincs-v052.html) и Genesis RPG Creator 0.20 alpha (http://pscd.ru/info/1599-genesis-rpg-creator-020-alpha-konstruktor-dlya-sozdaniya-rpg-dlya-smd.html).
GINCS – конструктор для создание текстовых новел (квестов).
Genesis RPG Creator – конструктор для создания РПГ, правда программа так и не была доведена до ума. Но кое-что сделать в ней можно.
Так же имеется GINCS Visual Studio. (http://pscd.ru/news/1769-obnovlenie-gincs-visual-studio-150-teper-on-zagovoril.html) Эта так сказать графическая оболочка с усовершенствованным GINCS внутри.
Возможно в ближайшем будущем появится программа BOSS. Она будет позволять создавать игры для SMD.
Узнать больше информации по движкам для SEGA можно из статьи Движок игры для Sega MegaDrive / Genesis (http://pscd.ru/news/1543-dvizhok-igry-dlya-sega-megadrive-genesis.html).
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: Greengh0st от 24 июля 2013, 01:35
Не это для такого как я сложно, в вот запилить игру с сюжетом и картинками можно было бы, но нужен хороший художник))
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: Greengh0st от 24 июля 2013, 01:36
Я бы может даже сел как нить за сценарий)))
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: admin от 24 июля 2013, 12:39
Если хочешь сделать свою игру для Sega Mega Drive, то я сначала бы рекомендовал бы подождать программу BOOS от 3DSchumacher и посмотреть на что она будет способна. Просто GINCS v0.52 (http://pscd.ru/info/1593-gincs-v052.html) не совсем идеален даже его усовершенствованная версия от 3DSchumacher. Но сюжет в любом случае можешь уже начинать писать. Так же помимо хорошего художника тебе потребуется композитор (музыкант).
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: Greengh0st от 25 июля 2013, 00:06
Можно сделать примитив, на листочке бумаги а4 рисуя все что тебе нужно))) И делать фотки))
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: admin от 26 июля 2013, 10:23
Может кому-то будет полезно:
Программа для создания SMD игр GINCS Visual Studio обновилась до версии 1.6.0 (http://pscd.ru/news/1782-programma-dlya-sozdaniya-smd-igr-gincs-visual-studio-obnovilas-do-versii-160.html)
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: admin от 31 июля 2013, 10:15
Новый проект Sacred Line: Genesis (http://pscd.ru/news/1786-novaya-igra-sacred-line-genesis-dlya-sega-genesis-v-razrabotke.html) создаваемый при помощи среды разработки Sega игр GINCS Visual Studio (http://pscd.ru/news/1782-programma-dlya-sozdaniya-smd-igr-gincs-visual-studio-obnovilas-do-versii-160.html).
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: Slik от 01 августа 2013, 12:06
Цитата: admin от 31 июля 2013, 10:15Новый проект Sacred Line: Genesis (http://pscd.ru/news/1786-novaya-igra-sacred-line-genesis-dlya-sega-genesis-v-razrabotke.html) создаваемый при помощи среды разработки Sega игр GINCS Visual Studio (http://pscd.ru/news/1782-programma-dlya-sozdaniya-smd-igr-gincs-visual-studio-obnovilas-do-versii-160.html).
Страшненькая игра в плане графики получается. Надеюсь в последующих версиях графику улучшат, а то какой-то квест для Nes получается.
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: admin от 14 августа 2013, 12:42
Простенькая новая игра для SMD. Так же имеется её исходный код, думаю, он будет полезен тем, кто собрался делать свою игру для SEGA.
Новая игра Crazy Driver: Genesis для Sega MegaDrive (http://pscd.ru/news/1794-novaya-igra-crazy-driver-genesis-dlya-sega-megadrive.html)
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: Greengh0st от 15 августа 2013, 13:47
А когда Хеймдалля доделаем?
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: Slik от 20 августа 2013, 18:18
Было бы неплохо, если бы кто-то написал продолжение легендарных игр типа Earthworm Jim (http://pscd.ru/games/smd/esmd/305-earthworm-jim.html), Road Rash (http://pscd.ru/games/smd/rsmd/758-road-rash-3.html), MK (http://pscd.ru/games/smd/msmd/596-mortal-kombat.html), Sonic (http://pscd.ru/games/smd/ssmd/836-sonic-the-hedgehog.html), Dune (http://pscd.ru/games/smd/dsmd/298-dune-the-battle-for-arrakis.html) и т.п. Причём не хак, а именно с нуля и на Sega MegaDrive / Genesis, а не на недоконсоли нового поколения (которые вроде бы и не компьютер ПК, но уже и не традиционная игровая приставка). Вот это бы было очень интересно.
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: Greengh0st от 20 августа 2013, 20:50
Ну вот доделаем игру и портанем её на сегу может быть)) если программер захочет))
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: admin от 22 августа 2013, 11:24
Демо ролик Wolfenstein 3D Sega (http://pscd.ru/news/1809-demo-wolfenstein-3d-dlya-sega-megadrive.html), игры написанной полностью на ассемблере.
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: admin от 23 августа 2013, 10:17
Цитата: admin от 22 августа 2013, 11:24Демо ролик Wolfenstein 3D Sega (http://pscd.ru/news/1809-demo-wolfenstein-3d-dlya-sega-megadrive.html), игры написанной полностью на ассемблере.
Стал доступным ром файл игры Wolfenstein 3D Genesis (http://pscd.ru/news/1812-dostupen-demonstracionnyy-rom-wolfenstein-3d-sega.html) демонстрирующий возможности движка. В демо реализованы уже многие аспекты игры, осталось дело за малым.
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: admin от 03 сентября 2013, 14:38
Сапёр для SEGA (http://pscd.ru/forum/index.php?/topic/58-sapyor-dlia-sega/) написанный нашими умельцами.
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: admin от 21 октября 2013, 21:31
Думаю многим будет интересно и пригодится: Исходный код игры Silent Hill: Genesis (http://pscd.ru/news/1889-ishodnyy-kod-igry-silent-hill-genesis.html) для GINCS Visual Studio 1.8.0 (http://pscd.ru/news/1886-studiya-dlya-sozdaniya-sega-igr-gincs-visual-studio-180.html).
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: admin от 18 ноября 2013, 12:40
Исходные коды игр Barbarian и Crazy Car (http://pscd.ru/news/1922-neskolko-novyh-igr-dlya-smd-i-scd.html) для SMD
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: SPOT от 29 ноября 2013, 20:37
Было бы очень интересно и полезно, если бы вы рассказали, как создать игру для Sega Mega Drive. Какие устройства для этого нужны, знания, программы для создания Sega игр и многое другое.  
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: TTEMMA от 12 декабря 2013, 21:46
Цитата: SPOT от 29 ноября 2013, 20:37Было бы очень интересно и полезно, если бы вы рассказали, как создать игру для Sega Mega Drive. Какие устройства для этого нужны, знания, программы для создания Sega игр и многое другое.  
Я точно не уверен, но скорей всего самое минимальное, это знание Assembler и Basic
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: admin от 13 декабря 2013, 10:42
(http://pscd.ru/uploads/posts/2013-12/1386923810_16-bit-basic.jpg)
Новая среда разработки Sega игр 16-bit Basic (http://pscd.ru/news/1960-16-bit-basic-novyy-beysik-dlya-sozdaniya-sega-megadrive-genesis-igr.html), в качестве языка программирования, как понятно из названия, будет использоваться Бейсик.
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: Diablo от 13 декабря 2013, 10:58
Цитата: admin от 13 декабря 2013, 10:42 
(http://pscd.ru/uploads/posts/2013-12/1386923810_16-bit-basic.jpg)
Новая среда разработки Sega игр 16-bit Basic (http://pscd.ru/news/1960-16-bit-basic-novyy-beysik-dlya-sozdaniya-sega-megadrive-genesis-igr.html), в качестве языка программирования, как понятно из названия, будет использоваться Бейсик.
 
Отличная новость :wub: , теперь создавать игры для Sega MegaDrive будет не так сложно :) . Нужно что бы ещё NESBasic сделали нормальный.  А этот как можно назвать SMD BASIC, Sega Basic, MegaDrive Basic, Genesis Basic. Где вы только эти новости берёте? Ведь я погуглил, про это даже в зарубежной "прессе" нечего нет.
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: admin от 01 января 2014, 20:48
(http://pscd.ru/forum/uploads/monthly_01_2014/post-1-0-32020900-1388602085.jpg)
Как выглядит интерфейс и код в 16-bit Basic (http://pscd.ru/news/1960-16-bit-basic-novyy-beysik-dlya-sozdaniya-sega-megadrive-genesis-igr.html).
 
REM Simple "Hello World" Test app
 
start:
 
LoadTiles systemfont,75,48
 
let xpos=12
let ypos=10
 
cls
 
locate ypos,12
 
Print "Hello World"
 
systemfont:
     DATAFILE font.bin,BIN
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: ConsoleWalkthrough75 от 02 января 2014, 11:48
Alon, можешь рассказать, как ты скомпилил билд с исходника и можешь ли ты пожалуйста скинуть какую-нибудь книгу по ассемблеру, где именно рассказывается о создании игры на SEGA? Просто я тоже хочу создавать игры на SEGA...
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: admin от 02 января 2014, 19:11
ConsoleWalkthrough75, Позвольте узнать, что за игру вы хотите сделать? Быть может для её реализации учить ассемблер и вовсе ненужно.
Боюсь что книг, где именно рассказывается о создании игры на SEGA, нет в природе и за её приделами.
Рекомендую вам ознакомиться со статьёй Движок игры для Sega MegaDrive / Genesis (http://pscd.ru/news/1543-dvizhok-igry-dlya-sega-megadrive-genesis.html). И приглядеться к BasiEgaXorz.
Хочу заметить, что создание игры с использованием ассемблера не простая задача и требует определённых знаний и навыком.
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: Alon от 03 января 2014, 09:45
Цитата: ConsoleWalkthrough75 от 02 января 2014, 11:48Alon, можешь рассказать, как ты скомпилил билд с исходника и можешь ли ты пожалуйста скинуть какую-нибудь книгу по ассемблеру, где именно рассказывается о создании игры на SEGA? Просто я тоже хочу создавать игры на SEGA...
Я то же хочу научиться делать игры на Sega MegaDrive, поэтому и создал данную тему, что бы новичкам было проще начать делать игры для приставок. Я предложил здесь собрать различную информацию по поводу создания игр для консолей в частности для SMD.  Что бы вы понимали, я только учусь. А тут на сайте имеются люди, которые по лучше меня разбираются в данной теме.
Скомпилировать исходник написанный на Ассемблере вы можете любым компилятором предназначенным для этого.
Думаю, что такой книги не существует, тем более на русском языке (По крайней мере, я её не встречал). Возможно, есть какие-то краткие документы.
Прочтите любую книгу по программированию на ASM. Потом попробуйте освоить оттуда пару примеров. И в программирование для 16-ти битки у тебя не должно будет возникнуть никаких вопросов. Главное будет разобраться, какая команда за что отвечает.
Вы знаете какие-то языки программирования, писали ли, что-то для других систем?
Я думаю если у вас возникнут какие-либо конкретные вопросы по созданию игры для Сега МегаДрай, здесь найдутся люди которые смогут ответить на ваши вопросы.
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: ConsoleWalkthrough75 от 03 января 2014, 12:25
Alon (http://pscd.ru/forum/index.php?/user/5-alon/), спасибо за программу, которую Вы написали BasiEgaXorz. Там язык BASIC, а BASIC я уже изучаю 3 года, спасибо =)
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: Alon от 03 января 2014, 12:48
Цитата: ConsoleWalkthrough75 от 03 января 2014, 12:25Alon (http://pscd.ru/forum/index.php?/user/5-alon/), спасибо за программу, которую Вы написали BasiEgaXorz. Там язык BASIC, а BASIC я уже изучаю 3 года, спасибо =)
Не вводите других читателей данного форума в заблуждение, я не писал программу BasiEgaXorz, я даже на знаком с её автором. Про данную программу для простого создания игр для 16 bit SMD написал Админ.
Если у вас уже такой большой опыт программирования на ЯП Басик, я думаю у вас не возникнет большой сложности в создании игр на данной среде разработки. Так, что я жду от вас новых игр для SegaMegaDrive, надеюсь, вы не забросите столь увлекательное занятие. И в скором времени представите нам новые интересные игры. Теперь я буду ждать новостей от вас. Не забудь те, поделится с нами результатами своих трудов и мыслями по данному поводу.
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: Protub от 28 мая 2016, 18:08
Если ещё для кого-то актуален ответ на такой вопрос,как архитектура приставки Sega Mega Drive и и картриджей к ней,то пишите в ЛС,у меня накопилось много всякого не сортированного материала по этой теме,могу выслать,если кому нужно,на электронку...
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: Protub от 28 мая 2016, 21:49
Почти всё взято  >>ОТСЮДА<< (http://tv-games.ru/media/open/megadrive_docs.html) .
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: IgorAlmaty от 27 марта 2017, 22:12
Получается учить нужно бэйсик, а про асамблер можно забыть?
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: Alon от 27 марта 2017, 23:08
Цитата: IgorAlmaty от 27 марта 2017, 22:12Получается учить нужно бэйсик, а про асамблер можно забыть?
Ну асм тоже может пригодиться :)
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: Raizel от 28 марта 2017, 01:25
Ребята, вы, наверное, шутите... Ассемблер, на сегодняшний день, является самым быстрым и самым сложным для изучения языком программирования. Я сам немного программирую, но программ, написанных на одном только ассемблере, я не видел. В добавок ко всему, кто-то считает бейсик достойной заменой асму? Ха!
Мой вам совет, не страдайте фигнёй, а изучайте лучше Си. На нём можно написать что угодно. Если у вас талант программиста, со знанием Си вас возьмут работать куда угодно, ибо это универсальный язык.
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: Alon от 28 марта 2017, 13:15
Цитата: Raizel от 28 марта 2017, 01:25Ребята, вы, наверное, шутите... Ассемблер, на сегодняшний день, является самым быстрым и самым сложным для изучения языком программирования. Я сам немного программирую, но программ, написанных на одном только ассемблере, я не видел. В добавок ко всему, кто-то считает бейсик достойной заменой асму? Ха!
Мой вам совет, не страдайте фигнёй, а изучайте лучше Си. На нём можно написать что угодно. Если у вас талант программиста, со знанием Си вас возьмут работать куда угодно, ибо это универсальный язык.
А кто-то говорил о игре / программе на одном асме?
 

Цитата: Alon от 27 марта 2017, 23:08Ну асм тоже может пригодиться :)
Это значит, что какие-то функции придётся делать используя АСМ. Например, звук, модификация VDP, да, в принципе, всё что угодно.
Но для этого нужны соответствующие знания.
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: Protub от 05 июля 2017, 14:58
Немного знаний...))))
 
http://www.igorkov.org/pdf/Z80-Central-Processor-Unit.pdf
http://www.twirpx.com/file/14128/
http://gigabaza.ru/download/135129.html
http://tv-games.ru/media/load/igrovie_pristavki_remont-a74c940ce3aaf8e090cb1b0e07625ffc.html
https://www.zophar.net/fileuploads/2/10614uauyw/Genesis_ROM_Format.txt
 
Приятного чтения.)))
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: Protub от 05 июля 2017, 17:20
Упс,поправил одну ссылку.
http://tv-games.ru/media/open/igrovie_pristavki_remont.html
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: Alon от 05 июля 2017, 17:56
Цитировать8:  I/0 support: (this is 16 bytes long)
J = Joypad                4 = Team Play
6 = 6-button Joypad       0 = Joystick for MS
K = Keyboard              R = Serial RS232C
P = Printer               T = Tablet
B = Control Ball          V = Paddle Controller
F = Floppy Disk Drive     C = CD-ROM
L = Activator             M = Mega Mouse

F = Floppy Disk Drive
P = Printer
Я ещё могу представить как выглядел флопик для SMD, но как принтер))
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: Protub от 09 июля 2017, 14:52
https://www.youtube.com/watch?v=ZtRlppmgfvM&list=PLfRwLZxhWvQeALABmmdOkEPZo6YZ6RJ7O -вот,ещё немного информации,может кому-нибудь понравится.)
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: noob от 10 июля 2017, 09:57
Цитата: Protub от 09 июля 2017, 14:52вот,ещё немного информации,может кому-нибудь понравится.)
 
Некоторая информация предоставленная тобой действительно интересная. Но многое мне не понятно. Мог бы ты более подробно рассказывать о том, на что даёшь ссылку, что бы зря не переходить.
Что это за последнее видео, чего в нём полезного?
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: Protub от 10 июля 2017, 23:06
Цитата: noob от 10 июля 2017, 09:57 

Цитата: Protub от 09 июля 2017, 14:52вот,ещё немного информации,может кому-нибудь понравится.)
 
Некоторая информация предоставленная тобой действительно интересная. Но многое мне не понятно. Мог бы ты более подробно рассказывать о том, на что даёшь ссылку, что бы зря не переходить.
Что это за последнее видео, чего в нём полезного?
 
Почему бы и нет,могу.В основном информация,предоставленная мною будет понятна и полезна ромхакерам и низкоуровневым программистам потому,что такие вещи,как ассм,требуют знания "железа",под которое пишется программа.По первой ссылке рассматривается работа процессора Z80,используемого в приставке,как вспомогательного,по второй и третьей ссылкам литература(на выбор,кому какой автор понравится больше) с информацией по работе процессора Motorolla 68000,который является основным процессором приставки,а,так же ассм под него.По четвёртой ссылке(которую я потом подправил в следующем посте) хорошая книга по ремонту и объяснению принципов работы некоторых приставок,что может быть так же полезно для программистов,а так же тех,кто занимается ремонтом приставок.По пятой ссылке хорошо рассматривается ROM-формат файлов прошивок картриджей приставки Sega MegaDrive.Ну и видео...в нём показывается как создавать программы под приставки Sega MegaDrive и Sega CD...правда на английском,поэтому учите язык.))))
Ну,это я вкратце так,а,вообще,каждый найдёт для себя что-нибудь полезное во всём этом.)))
Название: Re: Программирование под Sega MegaDrive / Genesis
Отправлено: Protub от 08 марта 2018, 13:29
Вот,нашёл ещё одну книгу,которая может оказаться полезной тем,кто интересуется программированием на ассемблере под процессоры серии 68000,компании Motorola.Напомню,что процессор Motorola 68000 является центральным процессором всех версий приставки Sega Mega Drive.
https://yadi.sk/i/im7-G07g3T9hNQ -ссылка на место хранения данного мануала.