{"id":18191153,"url":"https://github.com/issotm/gb-boilerplate","last_synced_at":"2025-04-09T09:08:55.592Z","repository":{"id":45774076,"uuid":"153696326","full_name":"ISSOtm/gb-boilerplate","owner":"ISSOtm","description":"A minimal, customizable, ready-to-compile boilerplate for Game Boy RGBDS projects.","archived":false,"fork":false,"pushed_at":"2025-01-17T11:13:56.000Z","size":67,"stargazers_count":73,"open_issues_count":0,"forks_count":9,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-04-02T08:12:57.539Z","etag":null,"topics":["asm","assembly","gameboy","gameboy-color","gbdev","rgbds"],"latest_commit_sha":null,"homepage":"","language":"Assembly","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"zlib","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ISSOtm.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE-gb-boilerplate","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-10-18T22:42:44.000Z","updated_at":"2025-03-26T22:49:35.000Z","dependencies_parsed_at":"2023-11-24T12:30:40.247Z","dependency_job_id":"e784aab7-f77d-4218-841e-dcfc706e07f0","html_url":"https://github.com/ISSOtm/gb-boilerplate","commit_stats":null,"previous_names":[],"tags_count":0,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ISSOtm%2Fgb-boilerplate","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ISSOtm%2Fgb-boilerplate/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ISSOtm%2Fgb-boilerplate/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ISSOtm%2Fgb-boilerplate/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ISSOtm","download_url":"https://codeload.github.com/ISSOtm/gb-boilerplate/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248008630,"owners_count":21032556,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["asm","assembly","gameboy","gameboy-color","gbdev","rgbds"],"created_at":"2024-11-03T05:03:16.745Z","updated_at":"2025-04-09T09:08:55.569Z","avatar_url":"https://github.com/ISSOtm.png","language":"Assembly","funding_links":[],"categories":[],"sub_categories":[],"readme":"# gb-boilerplate\n\nA minimal, customizable, ready-to-compile boilerplate for Game Boy RGBDS projects.\n\n## Downloading\n\nYou can simply clone the repository using Git, or if you just want to download this, click the `Clone or download` button up and to the right of this. This repo is also usable as a GitHub template for creating new repositories.\n\n## Setting up\n\nMake sure you have [RGBDS](https://github.com/rednex/rgbds), at least version 0.4.0, and GNU Make installed. Python 3 is required for the PB16 compressor bundled as a usage example, but that script is optional.\n\n## Customizing\n\nEdit `project.mk` to customize most things specific to the project (like the game name, file name and extension, etc.).\nEverything has accompanying doc comments.\n\nEverything in the `src` directory is the source, and can be freely modified however you want.\nAny `.asm` files in that directory (and its sub-directories, recursively) will be individually assembled, automatically.\nIf you need some files not to be assembled directly (because they are only meant to be `INCLUDE`d), you can either rename them (typically, to `.inc`), or move them outside of `src` (typically, to a directory called `include`).\n\nThe file at `src/assets/build_date.asm` is compiled individually to include a build date in your ROM.\nAlways comes in handy.\n\nIf you want to add resources, I recommend using the `src/assets` directory.\nAdd rules in the Makefile; an example is provided for compressing files using PB16 (a variation of [PackBits](https://wiki.nesdev.com/w/index.php/Tile_compression#PackBits)).\n\n## Licensing\n\nYou must keep LICENSE-gb-boilerplate in your repository, but it will not affect the rest of your project (i.e. your files).\nAttribution in the README is appreciated, for instance like this:\n```\nThis project uses the [gb-boilerplate](https://github.com/ISSOtm/gb-boilerplate) template by ISSOtm, under the zlib license.\n```\n\n## Compiling\n\nSimply open you favorite command prompt / terminal, place yourself in this directory (the one the Makefile is located in), and run the command `make`.\nThis should create a bunch of things, including the output in the `bin` directory.\n\nPass the `-s` flag to `make` if it spews too much input for your tastes.\nPäss the `-j \u003cN\u003e` flag to `make` to build more things in parallel, replacing `\u003cN\u003e` with however many things you want to build in parallel; your number of (logical) CPU cores is often a good pick (so, `-j 8` for me), run the command `nproc` to obtain it.\n\nIf you get errors that you don't understand, try running `make clean`.\nIf that gives the same error, try deleting the `assets` directory.\nIf that still doesn't work, try deleting the `bin` and `obj` directories as well.\nIf that still doesn't work, feel free to ask for help.\n\n## See also\n\nIf you want something less barebones, already including some \"base\" code, check out [gb-starter-kit](https://github.com/ISSOtm/gb-starter-kit).\n\nPerhaps [a gbdev style guide](https://gbdev.io/guides/asmstyle) may be of interest to you?\n\nI recommend the [BGB](https://bgb.bircd.org) emulator for developing ROMs on Windows and, via Wine, Linux and macOS (64-bit build available for Catalina).\n[SameBoy](https://github.com/LIJI32/SameBoy) is more accurate, but has a more lackluster interface outside of macOS.\n\n### Libraries\n\n- [Variable-width font engine](https://github.com/ISSOtm/gb-vwf)\n- [Structs in RGBDS](https://github.com/ISSOtm/rgbds-structs)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fissotm%2Fgb-boilerplate","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fissotm%2Fgb-boilerplate","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fissotm%2Fgb-boilerplate/lists"}