GB Studio Extended Nominal Player Adaptation/Interface

gbsenpai

gbsenpai - GB Studio Extended Nominal Player Adaptation/Interface - is a project to port the GB Studio player to additional, non-GB/GBC platforms, with support for potential enhancements.

GB Studio v2 color sample running within gbsenpai.

Proof of concept video

Compatibility

gbsenpai should be currently compatible with source exports made in GB Studio v2.0.0-beta5. Support for older or newer versions is not guaranteed; v3alpha is currently unsupported.

Porting your game

First, you need to prepare your game's source code.

  1. Create a directory, for example "source_sample". This will be your "game directory".
  2. Open GB Studio. From the menu, run Game -> Advanced -> Export project source.
  3. There should now be a "build/src" directory in your project folder. From there, copy the following files to your "game directory":
    • all files from src/data,
    • all files from src/music,
    • include/banks.h,
    • include/data_ptrs.h.

In addition, you will need:

  • a reasonably recent version of Python 3.x.

From here, the instructions differ depending on port.

GBA

The GBA port is currently based on the devkitARM toolchain created by the devkitPro organization, alongside the libtonc library.

  1. Edit Makefile.gba. In particular:
    • Set GAME_DIR to your game directory name,
    • Set GAME_CGB to true if your game targets the GBC, and to false otherwise.
  2. Run make -f Makefile.gba.
  3. Enjoy. (Hopefully. I've only tested this on Linux...)

License

gbsenpai is licensed under the terms of the MIT license, similar to the original GB Studio engine.

Similar Resources

Implement a universal video player based on FFmpeg

qiaopcmusic 实现一个万能视频播放器 添加依赖方式: To get a Git project into your build: Step 1. Add the JitPack repository to your build file Add it in your root build.

Oct 15, 2021

FFmpeg powered audio player in node.js

sange FFmpeg powered audio player in node.js prerequisites node.js cmake sudo apt install cmake c++ compiler sudo apt install g++ gcc ffmpeg sudo apt

Nov 25, 2022

Poppy Music Player

Poppy Music Player poppy is a simple music player that is controlled by process signals. Build Before anything: meson setup build cd build Compiling n

Apr 26, 2022

RTSP Wasm Player

RTSP Wasm Player

RTSP Wasm Player Overview # RTSP WebSocket Proxy RTSP/Webcam/File FFmpeg open Packets WebSocket # WS Wasm Player WebSocket Packets Wasm FFm

Nov 27, 2022

Kodi is an award-winning free and open source software media player and entertainment hub for digital media

Kodi is an award-winning free and open source software media player and entertainment hub for digital media

website • docs • community • add-ons Welcome to Kodi Home Theater Software! Kodi is an award-winning free and open source software media player and en

Dec 1, 2022

Free and open-source media player written in C++

Liquid Media Player Free and open-source media player written in C++. Currently in development. Build Guide Windows Install the MSYS2 Building Platfor

Sep 20, 2022

Console based Streaming Music Player [W.I.P]

🎵 quanta It's a command line music player that can streams same music to multiple devices, hence creating a surround sound system. Or just use it as

Jan 27, 2022

Windows graphical interface for yt-dlp, designed as a simple YouTube downloader

Windows graphical interface for yt-dlp, designed as a simple YouTube downloader

ytdlp-interface This is a Windows graphical interface for yt-dlp, that is designed as a simple YouTube downloader. It doesn't download playlists, and

Nov 29, 2022

Video game library manager with support for wide range of 3rd party libraries and game emulation support, providing one unified interface for your games.

Video game library manager with support for wide range of 3rd party libraries and game emulation support, providing one unified interface for your games.

An open source video game library manager and launcher with support for 3rd party libraries like Steam, GOG, Origin, Battle.net and Uplay. Includes game emulation support, providing one unified interface for your games.

Dec 2, 2022
Comments
  • Makefile.gba:174: *** target pattern contains no '%'.  Stop.

    Makefile.gba:174: *** target pattern contains no '%'. Stop.

    Hello, I got this message when I tried to use the make -f Makefile.gba script

    newerror

    What should I do? Or do I have to edit anything in Makefile.gba to solve this?

  • Issue with GBA rom compilation from GB Studio 2b5

    Issue with GBA rom compilation from GB Studio 2b5

    Hi,

    I have been using this excellent tool to compile my gb studio game to work on the GBA. It was working great but I decided to update the game to take advantage of the widescreen capabilities.

    It has since stopped being able to compile the rom. I am sure it is something I have done but I wonder if someone can help be debug the issue.

    The output from the commandline + debug flag to get all the output is attached.

    I have tried multiple computers, reinstalling the devkit on multiple computers - this is all on Windows however.

    Here is the last few lines of the output

    c:/devkitpro/devkitarm/bin/../lib/gcc/arm-none-eabi/12.1.0/../../../../arm-none-eabi/bin/ld.exe: music_bank_41.o:C:/gbsenpai-main/sample_cgb/music_bank_41.c:6: multiple definition ofmusic_track_110__Data'; music_bank_38.o:C:/gbsenpai-main/sample_cgb/music_bank_38.c:6: first defined here

    collect2.exe: error: ld returned 1 exit status

    Reaping losing child 0x8000d0200 PID 642

    make[1]: *** [/opt/devkitpro/devkitARM/gba_rules:25: /c/gbsenpai-main/sample_cgb.elf] Error 1

    Removing child 0x8000d0200 PID 642 from chain.

    Reaping losing child 0x8000aeed0 PID 464

    make: *** [Makefile.gba:179: build_sample_cgb] Error 2

    Removing child 0x8000aeed0 PID 464 from chain.`

    When I look at the gba_rules... it appears to be failing when trying to create the elf, then the gba file - I have checked the permissions on the folders of devkitpro and the gbsenpai and I am running as the administrator.

    Any help is appreciated. GBSenpai-DebugOutput-TimeKnights-2022-08-11.txt

  • No rule to make target 'banks.h', needed by 'inject_get_bank.h'.  Stop.

    No rule to make target 'banks.h', needed by 'inject_get_bank.h'. Stop.

    Hello, I encountered this error while trying to make a GBA ROM

    image

    I've followed the tutorial in README and the GB Studio Central article, but still found this.

Related tags
🎥 mpv is a free (as in freedom) media player for the command line.
🎥 mpv is a free (as in freedom) media player for the command line.

mpv is a free (as in freedom) media player for the command line. It supports a wide variety of media file formats, audio and video codecs, and subtitle types.

Nov 25, 2022
An Open Source PSVita/TV MP4 player with 1080p playback and subtitle support
An Open Source PSVita/TV MP4 player with 1080p playback and subtitle support

Vita-Media-Player An Open Source PSVita/TV MP4 player with 1080p playback and subtitle support 1080i output supported on the PSTV natively and on the

Nov 25, 2022
Video player for 3ds
Video player for 3ds

Video player for 3DS Patch note v1.0.1 Added allow skip frames option v1.0.0 Initial release Summary Video player for 3DS Performance 256x144(144p)@30

Nov 21, 2022
TIP (translate it, please) is a plugin for VLC media player that helps you to study languages by watching videos.

vlc-tip-plugin TIP (translate it, please) is a plugin for VLC media player that helps you to study languages by watching videos. Features The plugin a

Oct 11, 2022
Jellyfin Desktop Client based on Plex Media Player
Jellyfin Desktop Client based on Plex Media Player

Desktop client using jellyfin-web with embedded MPV player. Supports Windows, Mac OS, and Linux. Media plays within the same window using the jellyfin-web interface unlike Jellyfin Desktop. Supports audio passthrough. Based on Plex Media Player.

Nov 30, 2022
A simple but powerful multimedia player library designed for Qt Quick.

QtMediaPlayer A simple but powerful multimedia player library designed for Qt Quick. Features Full-featured multimedia player Cross-platform: support

Nov 11, 2022
Yakuza Arcade Machine Player - play Virtua Fighter 5: Final Showdown on PC, using Yakuza 6 files.
Yakuza Arcade Machine Player - play Virtua Fighter 5: Final Showdown on PC, using Yakuza 6 files.

Yakuza Arcade Machines Player Yakuza Arcade Machines Player is a launcher that allows you to run Virtua Fighter 5: Final Showdown, standalone and nati

Nov 26, 2022
A clone of Media Player Classic reimplemented in Qt.
A clone of Media Player Classic reimplemented in Qt.

Media Player Classic Qute Theater A clone of Media Player Classic reimplemented in Qt. Media Player Classic Home Cinema (mpc-hc) is considered by many

Nov 26, 2022
🤟Super fast H.264/H.265 FLV player
🤟Super fast H.264/H.265 FLV player

??Super fast H.264/H.265 FLV player

Nov 26, 2022
simple mp4 player based on rockchip rv1109 platform

mp4player RV1109平台上实现一个简单的 mp4 播放器,主要是本人使用的开发板QT无法播放mp4,应该是没有编译qst所致,因而想利用rockchip平台自有的 功能实现一个简单的播放器。 base目录包含一些基础框架实现,包含信号,线程,时间等,线程和消息泵的实现非常非常简单,因而不

Jul 17, 2022