Repository navigation
Releases
Super Turbo MEGA Pac-Man v2.12 + Миграция на SGDK 2.12
Super Turbo MEGA Pac-Man v2.12
Pac-Man для Sega Mega Drive / Sega Genesis
Игра для двух игроков, включая возможность игры по сети на двух приставках
через SEGA Link Cable (Zero Tolerance Link Cable), подключаемый во второй порт.
Изменения:
- моя библиотека Link Cable Protocol (LCP) включена в проект SGDK 2.12
- исправлено что после смены персонажей если включить одиночную игру, управляем сразу и Pac-Man и Pac-Girl
- добавлена пауза в игре при нажатии на Start
- возможность смены персонажей (нажать вправо в меню '2 PLAYERS')
- игра по сети на 2-х приставках через SEGA Link Cable
- вывод последней ошибки при передаче через SEGA Link Cable (A+C)
- вывод количества ошибок при передаче через SEGA Link Cable (B+C)
- вывод количества отрисованных фреймов с начала соединения (A+X)
- сброс информации для отладки (A+B)
- при движении вниз призрак не смотрит больше в сторону
- призрак не 'ест' черешню
- отправка нажатий на контроллерах через SEGA Link Cable только при реальном нажатии
- оставлены доступными только необходимые внешние функции в библиотеке link_cable.h
- отправка через SEGA Link Cable не всего состояния игры сразу, а только при наступлении какого-либо события
Папки:
spacman-eng - проект с интерфейсом на английском
spacman-rus - проект с интерфейсом на русском
Бинарники:
spacman-eng/spacman[ENG].bin - английская версия игры с комментариями к коду на английском языке
spacman-rus/spacman[RUS].bin - русская версия игры с комментариями к коду на русском языке
Библиотека с реализацией SEGA Link Cable Protocol (LCP) - протокол для обмена данными через SEGA Link Cable:
spacman-rus/src/link_cable.h - заголовочный файл библиотеки Link Cable Protocol (LCP)
протокол для обмена данными через SEGA Link Cable двух приставок
Sega Mega Drive / Sega Genesis,
который подключается во второй порт приставок (из английской версии удален!)
spacman-rus/src/link_cable.c - реализация протокола для обмена данными через SEGA Link Cable
двух приставок Sega Mega Drive / Sega Genesis (из английской версии удален!)
Остальные файлы относительно каталогов spacman-eng или spacman-rus
src - исходные коды
res - ресурсные файлы
out - результаты сборки
Файлы для сборки из консоли:
compile.sh - сборка под Linux! Запускает сборку через wine, использует SGDK
у меня лежит тут /opt/SGDK
нужно сгенерировать /opt/SGDK/makefile_wine.gen, чтобы собралось
также нужна Java (у меня работало с OpenJDK 17)
Сборка под Linux:
./compile.sh
Собранный ROM игры будет тут:
[папка с проектом]/spacman/out/rom.bin
Как настроить среду разработки Eclipse и собрать проект из исходного кода
в Linux можно посмотреть тут:
https://youtu.be/-aXpth57_bk
в MacOS тут:
https://youtu.be/Y1cP78FogVw
в Windows тут:
https://youtu.be/pKn18b16gmI
Ресурсные файлы:
res/bg/sega.png - задний фон с логотипом SEGA (заставка)
res/bg/menu.png - задний фон с меню (выбор количества игроков и распределение персонажей)
res/bg/map.png - задний фон с картой (стены, еда, усиления)
res/sound/cherry.wav - звук поедания вишни
res/sound/comicszone.vgm - музыка во время игры из Comix Zone
res/sound/connect.wav - звук при соединении приставок через Link Cable
res/sound/contrah.vgm - музыка во время выбора количества игроков из Contra - Hard Corps
res/sound/disconnect.wav - звук при отключении приставки от другой
res/sound/eat.wav - звук поедания точки
res/sound/eatred.wav - звук поедания призрака
res/sound/fatality.vgm - музыка при GAME OVER из Mortal Kombat 3
res/sound/powerup.wav - звук при поедании усиления
res/sound/sega.wav - звук SEGA на заставке
res/sound/shadow.wav - звук, когда призрак съедобен
res/sound/sonic.vgm - музыка на заставке из Sonic
res/sound/victory.vgm - музыка при победе из Contra - Hard Corps
res/sprite/cherry.png - спрайт черешни
res/sprite/door.png - спрайт двери
res/sprite/pacgirl.png - спрайты Pac-Girl
res/sprite/pacman.png - спрайты Pac-Man
res/sprite/pause.png - спрайт PAUSE
res/sprite/red.png - спрайт призрака RED
res/sprite/sonic.png - спрайты Соника для заставки
res/font.png - шрифты для русского языка
res/resources.res - описание импортируемых ресурсов
Исходный код:
src/main.c - код игры
src/main.h - заголовочный файл игры с глобальными переменными,
константами, объявлением функций приложения
res/resources.h - заголовочный файл, описывающий импортируемые ресурсы (генерируется при сборке из res/resources.res)
Посмотреть, что такое SEGA Link Cable на примере Zero Tolerance и Super Turbo MEGA Pac-Man, можно тут:
https://youtu.be/aLk8tDrjZ50
Я использовал SGDK версию 2.12 - свободный и открытый development kit для Sega Mega Drive / Sega Genesis
https://github.com/Stephane-D/SGDK.git
И SGDK_wine - Wine wrapper скрипт, генерирующий /opt/SGDK/makefile_wine.gen
для SGDK, чтобы использовать его в Linux
https://github.com/Franticware/SGDK_wine.git
Реализация SEGA Link Cable Protocol (LCP):
Для игры был реализован SEGA Link Cable Protocol (LCP) — протокол для обмена данными через SEGA Link Cable
между двумя приставками Sega Mega Drive / Sega Genesis. Это библиотека на языке программирования C для SGDK.
Мой протокол был добавлен в виде библиотеки в проект SGDK версии 2.12. Поэтому исходный код link_cable.h и
link_cable.c были удалены из английской версии (spacman-eng) данного проекта.
Важно для сборки английской версии: Чтобы собрать английскую версию, необходимо в проекте SGDK в файле
inc/config.h установить константу MODULE_LINK_CABLE в значение 1 (по умолчанию LCP отключен).
После этого нужно пересобрать проект SGDK, запустив build_lib.bat.
Для русской версии: В версии spacman-rus я оставил исходный код link_cable.h и link_cable.c,
поэтому константа MODULE_LINK_CABLE в проекте SGDK 2.12 в inc/config.h должна быть равна 0.
Пересобирать библиотеки SGDK для русской версии не нужно.
В проект SGDK 2.12 в качестве примера работы с протоколом LCP я добавил исходный код данной игры на английском языке (с небольшими изменениями).
Он находится в папке SGDK/sample/linkcable/pacman. Отличие в том, что на заставке вместо "SEGA" будет отображаться "SGDK".
Описание игры:
1-й игрок управляет Pac-Man, за которым гоняется красный призрак.
Если призрак догонит Pac-Man — игра заканчивается.
Если Pac-Man или Pac-Girl съедят зеленую точку, призрак станет фиолетовым и начнет убегать, так как теперь его можно съесть.
2-й игрок управляет Pac-Girl. Она помогает собирать точки на уровне. При этом ни Pac-Man, ни призрак не могут съесть
Pac-Girl (она бессмертна), и она не может съесть их.
Игра завершается победой, если игроки соберут всю еду (белые и зеленые точки) на уровне.
В доме призраков через некоторое время появляется вишня — за ее поедание просто начисляются очки; чтобы выиграть, есть ее не обязательно!
В меню выбора количества игроков можно выбрать, кто каким персонажем будет управлять. Для этого в меню '2 PLAYERS' нажмите вправо,
чтобы первый игрок управлял Pac-Girl, а второй — Pac-Man, или влево, чтобы вернуть настройки по умолчанию.
BlodTor 12.11.2025
Super Turbo MEGA Pac-Man v2.1 + Link cable Protocol
Super Turbo MEGA Pac-Man v2.1
Pac-Man для игры в 2м под Sega Mega Drive / Sega Genesis
- добавлена 'пауза' в игре при нажатии на start
- возможность смены персонажей 'нажать вправо' в меню '2 PLAYERS'
- игра по сети на 2х приставках через SEGA Link cable
- вывод последней ошибки при передаче через SEGA Link cable A+C
- вывод количества ошибок при передаче через SEGA Link cable B+C
- вывод количества отресованых фреймов с начала соединения A+X
- сброс информации для отладки A+B
- при движении вниз призрак не смотрит больше в сторону
- призрак не 'ест' черешню
- посылаю что нажато на контроллерах через SEGA Link cable только если действительно что то нажато
- оставил доступными только нужные извне функции в библиотеке link_cable.h
- посылаю через SEGA Link cable не все состояние игры сразу а только при наступлении какого либо события
- русифицирована версия 2.1
папки:
spacman-eng - проект с интерфейсом на Английском
spacman-rus - проект с интерфейсом на Русском
бинарники:
spacman-eng/spacman[ENG].bin - Английская версия игры
spacman-rus/spacman[RUS].bin - Русская версия иры
остальные файлы относительно каталогов spacman-eng или spacman-rus
src - тут исходники
res - тут ресурсные файлы
out - тут результаты сборки
файлы для сборки из консоли:
compile.sh - сборка из под Linux! запускает сборку через wine использует
SGDK
у меня лежит тут /opt/SGDK
нужно сгенерировать /opt/SGDK/makefile_wine.gen чтоб собралось
также нужна java (у меня работало с OpenJDK 17)
сборка из под Linux
./compile.sh
собирать с помощью Docker (в папке /opt/SGDK должен лежать development kit для Sega Mega Drive / Sega Genesis)
cd /opt/SGDK
docker build -t sgdk .
cd [папка где лежит проект]/spacman
docker run --rm -v "$PWD":/src sgdk
собранный ROM игры будет тут
[папка где лежит проект]/spacman/out/rom.bin
ресурсные файлы:
res/bg/sega.png - задний фон с логотипом SEGA (заставка)
res/bg/menu.png - задний фон с меню (выбор количества игроков и кто кем играет)
res/bg/map.png - задний фон с картой (стены, еда, поверапы)
res/sound/cherry.wav - звук поедания вишни
res/sound/comicszone.vgm - музыка во время игры из Comix Zone
res/sound/connect.wav - звук при соединении приставок через Link cable
res/sound/contrah.vgm - музыка во время выбора количества игроков из Contra - Hard Corps
res/sound/disconnect.wav - звук при отключении приставки от другой
res/sound/eat.wav - звук поедания точки
res/sound/eatred.wav - звук поедания призрака
res/sound/fatality.vgm - музыка при GAME OVER из Mortal Kombat 3
res/sound/powerup.wav - звук при поедании поверапа
res/sound/sega.wav - звук SEGA на заставке
res/sound/shadow.wav - звук когда призрак съедобен
res/sound/sonic.vgm - музыка на заставке из Sonic
res/sound/victory.vgm - музыка при победе из Contra - Hard Corps
res/sprite/cherry.png - спрайт черешни
res/sprite/door.png - спрайт двери
res/sprite/pacgirl.png - спрайты Pac-Girl
res/sprite/pacman.png - спрайты Pac-Man
res/sprite/pause.png - спрайт PAUSE
res/sprite/red.png - спрайт призрака RED
res/sprite/sonic.png - спрайты Соника для заставки
res/font.png - шрифты для Русского языка
res/resources.res - как импортировать ресурсы
исходный код:
src/main.c - код игры
src/main.h - заголовочный файл игры с глобальными переменными,
константами, объявлением функций приложения
src/link_cable.h - заголовочный файл библиотеки Link cable Protocol (LCP)
протокол для обмена данными через SEGA Link Cable двух приставок
Sega Mega Drive / Sega Genesis
Genesis который втыкается в второй порт приставок для SGDK 1.90 (July 2023)
src/link_cable.c - реализация протокола для обмена данными через SEGA Link Cable
двух приставок Sega Mega Drive / Sega Genesis
res/resources.h - заголовочный файл описывающий импортируемые ресурсы (генерируется при сборке из res/resources.res)
Описание игры:
1 игрок управляет Pac-Man за которым гоняется 1 призрак красного цвета,
в случае если призрак догонит Pac-Man - игра закончится.
в случае если Pac-Man или Pac-Girl съедят большую зеленую точку, призрак станет
фиолетового цвета и начнет убегать от Pac-Man т.к. теперь его самого можно съесть
2 игрок управляет Pac-Girl. Она помогает собирать точки на уровне при
этом ни Pac-Man ни призрак не могут съесть Pac-Girl а она их (бессмертная)
Игра закончится победой если игроки смогут собрать всю еду (маленькие и большие точки) на уровне
В доме призраков через некоторое время появляется вишня - за нее просто дают очки
чтоб выиграть, есть не обязательно ее!
В меню выбора количества игроков можно выбрать и кто каким персонажем будет играть
при игре вдвоем. Для этого надо нажать вправо на меню '2 PLAYERS' чтоб первый игрок
управлял Pac-Girl а второй игрок Pac-Man или влево чтоб вернуть как все было
по умолчанию.
SGDK - свободный и открытый development kit для Sega Mega Drive / Sega
Genesis (Я использовал версию 1.90)
https://github.com/Stephane-D/SGDK.git
SGDK_wine - Wine wrapper скрипт генерирующий /opt/SGDK/makefile_wine.gen
для SGDK чтоб использовать его в Linux
https://github.com/Franticware/SGDK_wine.git
Gens - это Sega Mega Drive / Sega Genesis / Sega CD / Sega 32X эмулятор
для Windows и Linux.
http://www.gens.me/
spacman.bin - ROM игры Super Turbo MEGA Pac-Man для Sega Mega Drive /
Sega Genesis
BlodTor 23.03.2025
Super Turbo MEGA Pac-Man v1.05
Super Turbo MEGA Pac-Man v1.0 - Pac-Man для игры в 2м под Sega Mega Drive / Sega Genesis
папки:
spacman-eng - проект с интерфейсом на Английском
spacman-rus - проект с интерфейсом на Русском
бинарники:
spacman-eng/spacman.bin - Английская версия игры
spacman-rus/spacman [RUS].bin - Русская версия игры
остальные файлы относительно каталогов spacman-eng или spacman-rus
src - тут исходники
res - тут ресурсные файлы
out - тут результаты сборки
файлы для сборки из консоли:
compile.sh - сборка из под Linux! запускает сборку через wine использует SGDK
у меня лежит тут /opt/SGDK
нужно сгенерировать /opt/SGDK/makefile_wine.gen чтоб собралось
также нужна java (у меня работало с OpenJDK 17)
сборка из под Linux
./compile.sh
собирать с помощью Docker (в папке /opt/SGDK должен лежать development kit для Sega Mega Drive / Sega Genesis)
cd /opt/SGDK
docker build -t sgdk .
cd [папка где лежит проект]/spacman
docker run --rm -v "$PWD":/src sgdk
собранный ROM игры будет тут
[папка где лежит проект]/spacman/out/rom.bin
ресурсные файлы:
res/bg/sega.png - задний фон с логотипом SEGA (заставка)
res/bg/menu.png - задний фон с меню (выбор количества игроков)
res/bg/map.png - задний фон с картой (стены, еда, поверапы)
res/sound/cherry.wav - звук поедания вишни
res/sound/comicszone.vgm - музыка во время игры из Comix Zone
res/sound/contrah.vgm - музыка во время выбора количества игроков из Contra - Hard Corps
res/sound/eat.wav - звук поедания точки
res/sound/eatred.wav - звук поедания призрака
res/sound/fatality.vgm - музыка при GAME OVER из Mortal Kombat 3
res/sound/powerup.wav - звук при поедании поверапа
res/sound/sega.wav - звук SEGA на заставке
res/sound/shadow.wav - звук когда призрак съедобен
res/sound/sonic.vgm - музыка на заставке из Sonic
res/sound/victory.vgm - музыка при победе из Contra - Hard Corps
res/sprite/cherry.png - спрайт черешни
res/sprite/door.png - спрайт двери
res/sprite/pacgirl.png - спрайты Pac-Girl
res/sprite/pacman.png - спрайты Pac-Man
res/sprite/red.png - спрайт призрака RED
res/sprite/sonic.png - спрайты Соника для заставки
res/font.png - шрифты для Русского языка
res/resources.res - как импортировать ресурсы
исходный код:
src/main.c - код игры
src/main.h - заголовочный файл игры с глобальными переменными, константами, объявлением функций приложения
res/resources.h - заголовочный файл описывающий импортируемые ресурсы
Описание игры:
1 игрок управляет Pac-Man за которым гоняется 1 призрак красного цвета,
в случае если призрак догонит Pac-Man - игра закончится.
в случае если Pac-Man или Pac-Girl съедят большую зеленую точку, призрак станет
фиолетового цвета и начнет убегать от Pac-Man т.к. теперь его самого можно съесть
2 игрок управляет Pac-Girl. Она помогает собирать точки на уровне при этом ни Pac-Man ни
призрак не могут съесть Pac-Girl а она их (бессмертная)
Игра закончится победой если игроки смогут собрать всю еду (маленькие и большие точки) на уровне
В доме призраков через некоторое время появляется вишня - за нее просто дают очки
чтоб выиграть есть не обязательно ее!
SGDK - свободный и открытый development kit для Sega Mega Drive / Sega Genesis (Я использовал версию 1.90)
https://github.com/Stephane-D/SGDK.git
SGDK_wine - Wine wrapper скрипт генерирующий /opt/SGDK/makefile_wine.gen для SGDK чтоб использовать его в Linux
https://github.com/Franticware/SGDK_wine.git
Gens - это Sega Mega Drive / Sega Genesis / Sega CD / Sega 32X эмулятор для Windows и Linux.
http://www.gens.me/
spacman.bin - ROM игры Super Turbo MEGA Pac-Man для Sega Mega Drive / Sega Genesis
BlodTor 15.10.2023
Super Turbo MEGA Pac-Man v1.04
Super Turbo MEGA Pac-Man v1.0 - Pac-Man для игры в 2м под Sega Mega Drive / Sega Genesis
папки:
src - тут исходники
res - тут ресурсные файлы
out - тут результаты сборки
файлы для сборки из консоли:
compile.sh - сборка из под Linux! запускает сборку через wine использует SGDK
у меня лежит тут /opt/SGDK
нужно сгенерировать /opt/SGDK/makefile_wine.gen чтоб собралось
также нужна java (у меня работало с OpenJDK 17)
сборка из под Linux
./compile.sh
собирать с помощью Docker (в папке /opt/SGDK должен лежать development kit для Sega Mega Drive / Sega Genesis)
cd /opt/SGDK
docker build -t sgdk .
cd [папка где лежит проект]/spacman
docker run --rm -v "$PWD":/src sgdk
собранный ROM игры будет тут
[папка где лежит проект]/spacman/out/rom.bin
ресурсные файлы:
res/bg/sega.png - задний фон с логотипом SEGA (заставка)
res/bg/menu.png - задний фон с меню (выбор количества игроков)
res/bg/map.png - задний фон с картой (стены, еда, поверапы)
res/sound/cherry.wav - звук поедания вишни
res/sound/comicszone.vgm - музыка во время игры из Comix Zone
res/sound/contrah.vgm - музыка во время выбора количества игроков из Contra - Hard Corps
res/sound/eat.wav - звук поедания точки
res/sound/eatred.wav - звук поедания призрака
res/sound/fatality.vgm - музыка при GAME OVER из Mortal Kombat 3
res/sound/powerup.wav - звук при поедании поверапа
res/sound/sega.wav - звук SEGA на заставке
res/sound/shadow.wav - звук когда призрак съедобен
res/sound/sonic.vgm - музыка на заставке из Sonic
res/sound/victory.vgm - музыка при победе из Contra - Hard Corps
res/sprite/cherry.png - спрайт черешни
res/sprite/door.png - спрайт двери
res/sprite/pacgirl.png - спрайты Pac-Girl
res/sprite/pacman.png - спрайты Pac-Man
res/sprite/red.png - спрайт призрака RED
res/sprite/sonic.png - спрайты Соника для заставки
res/resources.res - как импортировать ресурсы
исходный код:
src/main.c - код игры
src/main.h - заголовочный файл игры с глобальными переменными, константами, объявлением функций приложения
res/resources.h - заголовочный файл описывающий импортируемые ресурсы
Описание игры:
1 игрок управляет Pac-Man за которым гоняется 1 призрак красного цвета,
в случае если призрак догонит Pac-Man - игра закончится.
в случае если Pac-Man или Pac-Girl съедят большую зеленую точку, призрак станет
фиолетового цвета и начнет убегать от Pac-Man т.к. теперь его самого можно съесть
2 игрок управляет Pac-Girl. Она помогает собирать точки на уровне при этом ни Pac-Man ни
призрак не могут съесть Pac-Girl а она их (бессмертная)
Игра закончится победой если игроки смогут собрать всю еду (маленькие и большие точки) на уровне
В доме призраков через некоторое время появляется вишня - за нее просто дают очки
чтоб выиграть есть не обязательно ее!
SGDK - свободный и открытый development kit для Sega Mega Drive / Sega Genesis (Я использовал версию 1.90)
https://github.com/Stephane-D/SGDK.git
SGDK_wine - Wine wrapper скрипт генерирующий /opt/SGDK/makefile_wine.gen для SGDK чтоб использовать его в Linux
https://github.com/Franticware/SGDK_wine.git
Gens - это Sega Mega Drive / Sega Genesis / Sega CD / Sega 32X эмулятор для Windows и Linux.
http://www.gens.me/
spacman.bin - ROM игры Super Turbo MEGA Pac-Man для Sega Mega Drive / Sega Genesis
Super Turbo MEGA Pac-Man v1.03
Super Turbo MEGA Pac-Man v1.0 - Pac-Man для игры в 2м под Sega Mega Drive / Sega Genesis
папки:
src - тут исходники
res - тут ресурсные файлы
out - тут результаты сборки
файлы для сборки из консоли:
compile.sh - сборка из под Linux! запускает сборку через wine использует SGDK
у меня лежит тут /opt/SGDK
нужно сгенерировать /opt/SGDK/makefile_wine.gen чтоб собралось
также нужна java (у меня работало с OpenJDK 17)
сборка из под Linux
./compile.sh
собирать с помощью Docker (в папке /opt/SGDK должен лежать development kit для Sega Mega Drive / Sega Genesis)
cd /opt/SGDK
docker build -t sgdk .
cd [папка где лежит проект]/spacman
docker run --rm -v "$PWD":/src sgdk
собранный ROM игры будет тут
[папка где лежит проект]/spacman/out/rom.bin
ресурсные файлы:
res/bg/sega.png - задний фон с логотипом SEGA (заставка)
res/bg/menu.png - задний фон с меню (выбор количества игроков)
res/bg/map.png - задний фон с картой (стены, еда, поверапы)
res/sound/cherry.wav - звук поедания вишни
res/sound/comicszone.vgm - музыка во время игры из Comix Zone
res/sound/contrah.vgm - музыка во время выбора количества игроков из Contra - Hard Corps
res/sound/eat.wav - звук поедания точки
res/sound/eatred.wav - звук поедания призрака
res/sound/fatality.vgm - музыка при GAME OVER из Mortal Kombat 3
res/sound/powerup.wav - звук при поедании поверапа
res/sound/sega.wav - звук SEGA на заставке
res/sound/shadow.wav - звук когда призрак съедобен
res/sound/sonic.vgm - музыка на заставке из Sonic
res/sound/victory.vgm - музыка при победе из Contra - Hard Corps
res/sprite/cherry.png - спрайт черешни
res/sprite/door.png - спрайт двери
res/sprite/pacgirl.png - спрайты Pac-Girl
res/sprite/pacman.png - спрайты Pac-Man
res/sprite/red.png - спрайт призрака RED
res/sprite/sonic.png - спрайты Соника для заставки
res/resources.res - как импортировать ресурсы
исходный код:
src/main.c - код игры
src/main.h - заголовочный файл игры с глобальными переменными, константами, объявлением функций приложения
res/resources.h - заголовочный файл описывающий импортируемые ресурсы
Описание игры:
1 игрок управляет Pac-Man за которым гоняется 1 призрак красного цвета,
в случае если призрак догонит Pac-Man - игра закончится.
в случае если Pac-Man или Pac-Girl съедят большую зеленую точку, призрак станет
фиолетового цвета и начнет убегать от Pac-Man т.к. теперь его самого можно съесть
2 игрок управляет Pac-Girl. Она помогает собирать точки на уровне при этом ни Pac-Man ни
призрак не могут съесть Pac-Girl а она их (бессмертная)
Игра закончится победой если игроки смогут собрать всю еду (маленькие и большие точки) на уровне
В доме призраков через некоторое время появляется вишня - за нее просто дают очки
чтоб выиграть есть не обязательно ее!
SGDK - свободный и открытый development kit для Sega Mega Drive / Sega Genesis (Я использовал версию 1.90)
https://github.com/Stephane-D/SGDK.git
SGDK_wine - Wine wrapper скрипт генерирующий /opt/SGDK/makefile_wine.gen для SGDK чтоб использовать его в Linux
https://github.com/Franticware/SGDK_wine.git
Gens - это Sega Mega Drive / Sega Genesis / Sega CD / Sega 32X эмулятор для Windows и Linux.
http://www.gens.me/
spacman.bin - ROM игры Super Turbo MEGA Pac-Man для Sega Mega Drive / Sega Genesis
BlodTor 30.10.2023
Super Turbo MEGA Pac-Man v1.02
Super Turbo MEGA Pac-Man v1.0 - Pac-Man для игры в 2м под Sega Mega Drive / Sega Genesis
папки:
src - тут исходники
res - тут ресурсные файлы
out - тут результаты сборки
файлы для сборки из консоли:
compile.sh - сборка из под Linux! запускает сборку через wine использует SGDK
у меня лежит тут /opt/SGDK
нужно сгенерировать /opt/SGDK/makefile_wine.gen чтоб собралось
также нужна java (у меня работало с OpenJDK 17)
сборка из под Linux
./compile.sh
собирать с помощью Docker (в папке /opt/SGDK должен лежать development kit для Sega Mega Drive / Sega Genesis)
cd /opt/SGDK
docker build -t sgdk .
cd [папка где лежит проект]/spacman
docker run --rm -v "$PWD":/src sgdk
собранный ROM игры будет тут
[папка где лежит проект]/spacman/out/rom.bin
ресурсные файлы:
res/bg/sega.png - задний фон с логотипом SEGA (заставка)
res/bg/menu.png - задний фон с меню (выбор количества игроков)
res/bg/map.png - задний фон с картой (стены, еда, поверапы)
res/sound/cherry.wav - звук поедания вишни
res/sound/comicszone.vgm - музыка во время игры из Comix Zone
res/sound/contrah.vgm - музыка во время выбора количества игроков из Contra - Hard Corps
res/sound/eat.wav - звук поедания точки
res/sound/eatred.wav - звук поедания призрака
res/sound/fatality.vgm - музыка при GAME OVER из Mortal Kombat 3
res/sound/powerup.wav - звук при поедании поверапа
res/sound/sega.wav - звук SEGA на заставке
res/sound/shadow.wav - звук когда призрак съедобен
res/sound/sonic.vgm - музыка на заставке из Sonic
res/sound/victory.vgm - музыка при победе из Contra - Hard Corps
res/sprite/cherry.png - спрайт черешни
res/sprite/door.png - спрайт двери
res/sprite/pacgirl.png - спрайты Pac-Girl
res/sprite/pacman.png - спрайты Pac-Man
res/sprite/red.png - спрайт призрака RED
res/sprite/sonic.png - спрайты Соника для заставки
res/resources.res - как импортировать ресурсы
исходный код:
src/main.c - код игры
src/main.h - заголовочный файл игры с глобальными переменными, константами, объявлением функций приложения
res/resources.h - заголовочный файл описывающий импортируемые ресурсы
Описание игры:
1 игрок управляет Pac-Man за которым гоняется 1 призрак красного цвета,
в случае если призрак догонит Pac-Man - игра закончится.
в случае если Pac-Man или Pac-Girl съедят большую зеленую точку, призрак станет
фиолетового цвета и начнет убегать от Pac-Man т.к. теперь его самого можно съесть
2 игрок управляет Pac-Girl. Она помогает собирать точки на уровне при этом ни Pac-Man ни
призрак не могут съесть Pac-Girl а она их (бессмертная)
Игра закончится победой если игроки смогут собрать всю еду (маленькие и большие точки) на уровне
В доме призраков через некоторое время появляется вишня - за нее просто дают очки
чтоб выиграть есть не обязательно ее!
SGDK - свободный и открытый development kit для Sega Mega Drive / Sega Genesis (Я использовал версию 1.90)
https://github.com/Stephane-D/SGDK.git
SGDK_wine - Wine wrapper скрипт генерирующий /opt/SGDK/makefile_wine.gen для SGDK чтоб использовать его в Linux
https://github.com/Franticware/SGDK_wine.git
Gens - это Sega Mega Drive / Sega Genesis / Sega CD / Sega 32X эмулятор для Windows и Linux.
http://www.gens.me/
spacman.bin - ROM игры Super Turbo MEGA Pac-Man для Sega Mega Drive / Sega Genesis
Super Turbo MEGA Pac-Man v1.0
Pac-Man для игры в 2м под Sega Mega Drive / Sega Genesis
папки:
src - тут исходники
res - тут ресурсные файлы
out - тут результаты сборки
файлы для сборки из консоли:
compile.sh - сборка из под Linux! запускает сборку через wine использует SGDK
у меня лежит тут /opt/SGDK
нужно сгенерировать /opt/SGDK/makefile_wine.gen чтоб собралось
также нужна java (у меня работало с OpenJDK 17)
сборка из под Linux
./compile.sh
собирать с помощью Docker (в папке /opt/SGDK должен лежать development kit для Sega Mega Drive / Sega Genesis)
cd /opt/SGDK
docker build -t sgdk .
cd [папка где лежит проект]/spacman
docker run --rm -v "$PWD":/src sgdk
собранный ROM игры будет тут
[папка где лежит проект]/spacman/out/rom.bin
ресурсные файлы:
res/bg/sega.png - задний фон с логотипом SEGA (заставка)
res/bg/menu.png - задний фон с меню (выбор количества игроков)
res/bg/map.png - задний фон с картой (стены, еда, поверапы)
res/sound/cherry.wav - звук поедания вишни
res/sound/comicszone.vgm - музыка во время игры из Comix Zone
res/sound/contrah.vgm - музыка во время выбора количества игроков из Contra - Hard Corps
res/sound/eat.wav - звук поедания точки
res/sound/eatred.wav - звук поедания призрака
res/sound/fatality.vgm - музыка при GAME OVER из Mortal Kombat 3
res/sound/powerup.wav - звук при поедании поверапа
res/sound/sega.wav - звук SEGA на заставке
res/sound/shadow.wav - звук когда призрак съедобен
res/sound/sonic.vgm - музыка на заставке из Sonic
res/sound/victory.vgm - музыка при победе из Contra - Hard Corps
res/sprite/cherry.png - спрайт черешни
res/sprite/door.png - спрайт двери
res/sprite/pacgirl.png - спрайты Pac-Girl
res/sprite/pacman.png - спрайты Pac-Man
res/sprite/red.png - спрайт призрака RED
res/sprite/sonic.png - спрайты Соника для заставки
res/resources.res - как импортировать ресурсы
исходный код:
src/main.c - код игры
src/main.h - заголовочный файл игры с глобальными переменными, константами, объявлением функций приложения
res/resources.h - заголовочный файл описывающий импортируемые ресурсы
Описание игры:
1 игрок управляет Pac-Man за которым гоняется 1 призрак красного цвета,
в случае если призрак догонит Pac-Man - игра закончится.
в случае если Pac-Man или Pac-Girl съедят большую зеленую точку, призрак станет
фиолетового цвета и начнет убегать от Pac-Man т.к. теперь его самого можно съесть
2 игрок управляет Pac-Girl. Она помогает собирать точки на уровне при этом ни Pac-Man ни
призрак не могут съесть Pac-Girl а она их (бессмертная)
Игра закончится победой если игроки смогут собрать всю еду (маленькие и большие точки) на уровне
В доме призраков через некоторое время появляется вишня - за нее просто дают очки
чтоб выиграть есть не обязательно ее!
SGDK - свободный и открытый development kit для Sega Mega Drive / Sega Genesis (Я использовал версию 1.90)
https://github.com/Stephane-D/SGDK.git
SGDK_wine - Wine wrapper скрипт генерирующий /opt/SGDK/makefile_wine.gen для SGDK чтоб использовать его в Linux
https://github.com/Franticware/SGDK_wine.git
Gens - это Sega Mega Drive / Sega Genesis / Sega CD / Sega 32X эмулятор для Windows и Linux.
http://www.gens.me/
spacman.bin - ROM игры Super Turbo MEGA Pac-Man для Sega Mega Drive / Sega Genesis