Write Code
GB BASIC is programmable in a brand new BASIC dialect. It implements a few programming paradigms.
- Imperative paradigm
-
- Non-structured programming
- Concurrent processing approach
- Declarative paradigm
-
- Data driven approach
Make Assets
GB BASIC also has everything ready-to-use for making assets.
- Tiles
- Map, Scene, and Actor
- Font
- Music and SFX
- Importers to use resources from external editors
Export ROMs
GB BASIC supports running with the built-in emulator, exporting ROMs that are runnable on various platforms.
- A real hardware handheld game console
- A regular software emulator
- A simulation based hardware clone
- An emulation based retro console
- A simulation/emulation environment with extension features
Get GB BASIC
Alpha version: itch.io
Technical Aspects
Features
Ready-to-use
Engine or console, you name it
- Programmable in BASIC, an easy to learn and fun to use programming language
- Easy to use API for graphics, input, audio, and other facilities
- Built-in libraries for scene, actor, controllers, GUI
- Built-in libraries for collision detection, persistence, RTC, etc.
- Extension feature including mouse & touch, shell command, debugging, etc.
- Handy tools for editing tiles, map, scene, actor, font, sound, etc.
- Project can be exported into real ROM
- Dozens of example projects
Specifications
As a Fantasy Console
Mostly real plus infinitesimal amount of fictional
- CPU: 4.19MHz/8.38MHz for classic/colored respectively
- Threads: up to 16 concurrent execution contexts
- Display: 160x144
- Code: BASIC, supports multiple source pages
- Gamepad: 8 buttons (D-Pad + A/B + Select/Start)
- Mouse and touch: supported by extension
- Tiles: up to 256 units per page
- Map: up to 255 tiles in one dimension per page; two layers (graphics, attributes)
- Sprite: supports 8x8 and 8x16 sprites
- Scene: up to 255 tiles in one dimension per page; four layers (map, attributes, properties, actors)
- Actor/projectile: up to 8x8 tiles per frame; up to 1024 frames per page
- Font: TrueType; up to 16px; 1bpp or 2bpp
- Audio: 4 channels; supports importing from JSON, VGM, WAV, FxHammer
- Palette: 2bit (4 colors)
- GUI: supports label
- Persistence: supported
- RTC: supported
- Serial port: supported
System Requirements
Windows | Linux | MacOS | Others | |
---|---|---|---|---|
OS | Windows 7/8/10/11 or later (32/64bit) | SteamOS/Ubuntu 14 or later (64bit) | Coming soon | TBD |
Processor | 1.5GHz | 1.5GHz | - | - |
Memory | 512 MB RAM | 512 MB RAM | - | - |
Graphics | Intel HD | Intel HD | - | - |
Storage | 80 MB available space | 80 MB available space | - | - |