Code Monkey home page Code Monkey logo

gba-multi-boot-cable's Introduction

GBA MULTIBOOT LOADER

Template repository to get started executing multiboot payloads on a Nintendo GameBoy Advance. Most of this code was taken from https://github.com/cartr/MSMCcable. I just cleaned it up, updated the gba-multi-cable to compile with more recent version of Arduino. I also updated/created a set of Makefiles to make everything compile correctly.

See below for description of each directory and the projects within it.

Folder descriptions

2ndloader

Small GBA program to load a larger GBA program faster using the GBA's UART mode. This loader is loaded initially via GBA's multiboot protocol using the gbl tool.

gba-multi-cable

Small Arduino program that interacts with gbl to first load 2ndloader, then loads the "real" payload over the UART interface.

template_mb

Example GBA program that can be bulit and uploaded using the tools.

main.c, multi.c, serxfer.c

Simple linux program to interact with gba-multi-cable and 2ndloader

Building everything

To build everything, you will need some dependencies:

  • platformio for the gba-multi-cable project
    • pip install platformio
  • devkitpro for the 2ndloader and template_mb projects
  • standard linux utilities
    • make
    • gcc
    • perl

Once everything is installed, simply call make to build everything. If it was successful, call make burn to burn the gba-multi-cable project to the arduino Nano. (the arduino must be plugged into the PC). PlatformIO should auto detect the serial port. After that wire up your multiboot cable, then you can use the tool:

./gbl -p/dev/ttyUSB0 template_mb/template_mb.gba

Wiring

Below is a table for wiring up a multi-boot cable. Note the colors may differ for your particular cable.

GBA function GBA Color (?) Arduino pin
SI red 8
SO yellow 9
SD brown 10
SC white 11
VCC blue NC
GND green GND
LED NC 13

License

See each folder for it's individual license. The original repository also contains license information here

gba-multi-boot-cable's People

Contributors

connorrigby avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.