| CARVIEW |
Select Language
HTTP/2 200
date: Mon, 29 Dec 2025 18:08:05 GMT
content-type: text/html; charset=utf-8
vary: X-PJAX, X-PJAX-Container, Turbo-Visit, Turbo-Frame, X-Requested-With,Accept-Encoding, Accept, X-Requested-With
etag: W/"570898368d4269ba9a298d8f6a01dc28"
cache-control: max-age=0, private, must-revalidate
strict-transport-security: max-age=31536000; includeSubdomains; preload
x-frame-options: deny
x-content-type-options: nosniff
x-xss-protection: 0
referrer-policy: no-referrer-when-downgrade
content-security-policy: default-src 'none'; base-uri 'self'; child-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/; connect-src 'self' uploads.github.com www.githubstatus.com collector.github.com raw.githubusercontent.com api.github.com github-cloud.s3.amazonaws.com github-production-repository-file-5c1aeb.s3.amazonaws.com github-production-upload-manifest-file-7fdce7.s3.amazonaws.com github-production-user-asset-6210df.s3.amazonaws.com *.rel.tunnels.api.visualstudio.com wss://*.rel.tunnels.api.visualstudio.com github.githubassets.com objects-origin.githubusercontent.com copilot-proxy.githubusercontent.com proxy.individual.githubcopilot.com proxy.business.githubcopilot.com proxy.enterprise.githubcopilot.com *.actions.githubusercontent.com wss://*.actions.githubusercontent.com productionresultssa0.blob.core.windows.net/ productionresultssa1.blob.core.windows.net/ productionresultssa2.blob.core.windows.net/ productionresultssa3.blob.core.windows.net/ productionresultssa4.blob.core.windows.net/ productionresultssa5.blob.core.windows.net/ productionresultssa6.blob.core.windows.net/ productionresultssa7.blob.core.windows.net/ productionresultssa8.blob.core.windows.net/ productionresultssa9.blob.core.windows.net/ productionresultssa10.blob.core.windows.net/ productionresultssa11.blob.core.windows.net/ productionresultssa12.blob.core.windows.net/ productionresultssa13.blob.core.windows.net/ productionresultssa14.blob.core.windows.net/ productionresultssa15.blob.core.windows.net/ productionresultssa16.blob.core.windows.net/ productionresultssa17.blob.core.windows.net/ productionresultssa18.blob.core.windows.net/ productionresultssa19.blob.core.windows.net/ github-production-repository-image-32fea6.s3.amazonaws.com github-production-release-asset-2e65be.s3.amazonaws.com insights.github.com wss://alive.github.com wss://alive-staging.github.com api.githubcopilot.com api.individual.githubcopilot.com api.business.githubcopilot.com api.enterprise.githubcopilot.com; font-src github.githubassets.com; form-action 'self' github.com gist.github.com copilot-workspace.githubnext.com objects-origin.githubusercontent.com; frame-ancestors 'none'; frame-src viewscreen.githubusercontent.com notebooks.githubusercontent.com; img-src 'self' data: blob: github.githubassets.com media.githubusercontent.com camo.githubusercontent.com identicons.github.com avatars.githubusercontent.com private-avatars.githubusercontent.com github-cloud.s3.amazonaws.com objects.githubusercontent.com release-assets.githubusercontent.com secured-user-images.githubusercontent.com/ user-images.githubusercontent.com/ private-user-images.githubusercontent.com opengraph.githubassets.com marketplace-screenshots.githubusercontent.com/ copilotprodattachments.blob.core.windows.net/github-production-copilot-attachments/ github-production-user-asset-6210df.s3.amazonaws.com customer-stories-feed.github.com spotlights-feed.github.com objects-origin.githubusercontent.com *.githubusercontent.com; manifest-src 'self'; media-src github.com user-images.githubusercontent.com/ secured-user-images.githubusercontent.com/ private-user-images.githubusercontent.com github-production-user-asset-6210df.s3.amazonaws.com gist.github.com github.githubassets.com; script-src github.githubassets.com; style-src 'unsafe-inline' github.githubassets.com; upgrade-insecure-requests; worker-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/
server: github.com
content-encoding: gzip
accept-ranges: bytes
set-cookie: _gh_sess=4ZyZ0ucx6sssEjEnpTy00ZnWVcHQF2z5x2NzvG6DIpx9uH5OiDEMwoi7YQ5j4xPLzvM6ZQNRqKYhM3HEDfRDgEV5xiFhLXtDP3VfnIAM9UGwi2H5%2Fcd18J4Yn3gKnmGMKyyPajve39vYnGkOo5MRhNQTQ9kucsH4nzKTZsGSobRhvMU%2FdYO1owC5PQKNElyiHcnBHA6cNFE26yYtj8OP3BUDhoT1cZQCO%2FQBe553eo1BRc9USOKUBvtAdBe5VkIqQ3DlJPKH%2Bn7vMzK4jvpl3w%3D%3D--lSA8338NeqNqliHN--9kulVIj%2FfMHZ8N4%2F7evpng%3D%3D; Path=/; HttpOnly; Secure; SameSite=Lax
set-cookie: _octo=GH1.1.1250657580.1767031685; Path=/; Domain=github.com; Expires=Tue, 29 Dec 2026 18:08:05 GMT; Secure; SameSite=Lax
set-cookie: logged_in=no; Path=/; Domain=github.com; Expires=Tue, 29 Dec 2026 18:08:05 GMT; HttpOnly; Secure; SameSite=Lax
x-github-request-id: 8660:36A2E5:66266B4:7A3330F:6952C385
GitHub - delwink/libstdgb: C library of useful Game Boy operations
Skip to content
Navigation Menu
{{ message }}
-
Notifications
You must be signed in to change notification settings - Fork 2
C library of useful Game Boy operations
License
delwink/libstdgb
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
libstdgb
========
A C library of useful Game Boy operations.
This library is designed to provide you a simple C interface to the hardware of
the Game Boy hand-held gaming console. It's for the original Game Boy only:
while the code will still run on the Color and Advance models, this library
does not aim to provide interfaces to the features of those devices, such as
color displays.
It also includes complementary post-processing tools designed to make it easy
to organize your Game Boy binary file and formats efficiently on the ROM so you
can spend more time making progress and less time fighting binary formats.
Dependencies
------------
| Program/Library | Purpose |
|-------------------------|-------------------------------------------------|
| Small Device C Compiler | C compiler used to generate binary instructions |
| CPython 3 | Used for post-processing tools |
| Wand for Python 3 | Used for converting images to Game Boy format |
On Debian-based systems, these can be installed as follows:
# apt-get install sdcc python3 python3-wand
Notice
------
libstdgb is made using the Small Device C Compiler (SDCC). SDCC has many
versions which output code of varying quality. You should not expect a complete
project to have the same binary size when compiled on different systems.
The version on which this software was tested is not a perfectly optimized
compiler either. For this reason, some of the code will instead be written in
Game Boy assembly language for simple routines that can be easily perfected in
assembly language. This is necessary for a few reasons:
- By writing in assembly language, the output code is predictable (exactly)
- Binary size is a big concern in Game Boy programming; the smaller the better
- For some functions, a program might not be able to tolerate a slow procedure
- For instance, copying tile maps to VRAM cannot take longer than VBlank
Hacking
-------
Match the style you see in the code. Do not use spaces for indentation.
If you would like to contribute, [send your diff to Delwink][1], or use
GitHub's pull request system.
License
-------
libstdgb is libre software: you are free to use, modify, and redistribute it
under the terms of version 0.6 of the Copyfree Open Innovation License. See
[COPYING](COPYING) for details.
[1]: mailto:contribute@delwink.com
About
C library of useful Game Boy operations
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published
You can’t perform that action at this time.