GB BASIC - Alpha
A downloadable tool for Windows and Linux
GB BASIC is a Fantasy Console that generates GameBoy compatible ROM.
This page contains binaries of the alpha versions. Read the following articles for more about this software:
Roadmap
We are getting closer to this project's formal launch. There are only two beta versions on the schedule, the overall progress is estimatedly 90% complete.
90% - Overall progress
100% - Prototype progress (DONE):
- A working parser and a compiler
- A runtime that supports a number of programming interfaces
100% - Alpha 1 progress (DONE):
- A working assets processing pipeline flow
- Code, tiles, map, palette editors
- A built-in emulator
- A ROM exporter
- Migrated examples
- A Linux port
100% - Alpha 2 progress (DONE):
- Implement font, actor, scene editors
- Implement asset pipelines to process those real user made assets
100% - Alpha 3 progress (DONE):
- Implement an audio tracker and editor
- Implement an asset pipeline to process those real user made assets
- Fill in the reference manual
100% - Alpha 4 progress (DONE):
- Add `select case/case*/else/end select` statement for multi-conditional selection
- Improve the stack operation functions
- Add trigger and projectile modules
- Add a point&click controller
- Improve the actor module
- Improve the API and modules
- Add a global search view to the code editor
- Add support for dual code editors as side by side
- Improve usability of the editors
- A lot of bugfix
- Update the examples
- Update the reference manual
67% - Beta 1 progress (WIP):
- Improve usability of the map, scene and other editors
- Improve the GUI, image and other modules
- Optimize performance of the VM
- Add more examples
- Update the reference manual to its stable version
- Port the project to other operating systems
0% - Beta 2 progress (TODO):
- Improve usability of the editors
- Improve the API and modules
- Add more customization options
- Add more exporters
More versions (TBD)?
The Steam page is open, wishlist now to get notified once it's available to download.
Stick around on X for future updates if you are interested in GB BASIC, leave a message below if you got an idea or question. You can also support my development by getting my other projects listed on my homepage.
Status | Prototype |
Category | Tool |
Platforms | Windows, Linux |
Rating | Rated 5.0 out of 5 stars (7 total ratings) |
Author | Tony Wang |
Tags | fantasy-console, Game Boy, Game engine |
Download
Click download now to get access to the following files:
Comments
Log in with itch.io to leave a comment.
Does it support 32-bit computer because my laptop is only 32 bit
Which specific OS and CPU? The alpha version does not support 32-bit, but maybe I would make one in the beta version.
Microsoft Window 10 family
Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz, 2712 MHz, 2 core(s), 4 logical processor(s) sorry if I answer you late I don't have my laptop with me before today ps sorry for my bad english I'm French Canadian and I'm bad in English
I see, thanks for the info, will make 32-bit binaries in the next version. No worry about that :)
Thank you, I can't wait š
Looks like an interesting project that'll make GB development more accessible than ever. Do you plan on stopping with the original Game Boy compatability-wise or is GBC part of the equation?
The project supports both the Classic (GB/DMG) and Colored (GBC) devices, as well as an additional Extended mode. Overall, GB and GBC are the primary focuses of GB BASIC, allowing users to set the cartridge type for each project. The extended features are tailored specifically for custom emulators, and you can check out the specific extended functionalities at https://paladin-t.github.io/kits/gbb/extensions.html. It is feasible to differentiate from GB, GBC, and extended devices within a single project by checking them in the code.
GB BASIC Alpha 4 is available now.
Very good development environment, is there a date for the next version?
Sorry for the late reply, but a new Alpha 4 version is available now!
Thanks, it's a lot of fun to work with this development environment
this is so cool
Did the elephant come from GB studio?
They both came from the GBDK-2020 example: https://github.com/gbdk-2020/gbdk-2020/blob/develop/gbdk-lib/examples/cross-platform/metasprites/res/sprite.png
ah ha! I thought it was the same! That makes sense, thank you for the reply!
Yup, yup. Iāve been getting a lot from the GB homebrew community.
I find this very a very interesting project.
I canāt wait to see how this fantasy console works!
I like a lot this kind of tools :)
very cool project. Canāt wait to be able to use it once you release the Mac version
This is very cool
Interesting project!
GB BASIC Alpla 3 is available now.
looks cool. thank for creating such good software
Is there a potential for this to work on Mac at some point? Would be an insta-buy from me
Yes, I plan to introduce it to MacOS in beta 1.
I bought Bitty Engine from steam and am toying with it. It seems like a great tool. If that is any indication of what your plans are here I am pumped. I have used another tool for GB development and had a blast. Really looking forward to seeing where this goes!
Hi again! I'm interested in using this tool for the Game Boy Showdown 2023 Jam, so I wanted to know if you think it's feasible to make a game in Alpha 1, or if Alpha 2 would be released before the Jam's start date?
(Obviously, no rush. Quality development takes time! I understand.)
It depends on the features you would like to include in your game. The current alpha 1 version can be used to paint tiles, maps, and to write code, I think thereās no problem with really really simple games, it is yet not capable for making music, actor and scene, besides, the runtime is lacking in completeness. Iāll improve editors in alpha 2, 3, then move on to improving the runtime in alpha 4. As the version stage implies, Iād rather claim it feature-complete for generic development until all the alpha stages are complete.
Thanks for your interest and understanding!
Very interesting! Any plans for link cable compatability?
Yes, thereās a link cable example, which is called ā30. Serial.gbbā.
Oh, awesome! I'll definitely take a look. :) Do you have a Discord server?
Ah not yet, everything is so primitive for the moment.
No problem! If you do make one, please let me know! I'm very very interested in this.
Another question: does GB BASIC support strings? :)
Of course.
It supports string partially, i.e.
print "pi=%d", 22/7
andlabel #0 "hello"
, the string are constant literals, this is enough for text representation. As a constrained platform, gb is not very good at dynamic allocating, so it doesnāt support assigning string to variable, concating, etc.Actually the runtime part is based on the GBVM project, their capability are quite similar.
Interesting! I like this idea!
Will be keeping an eye on this! I wonder if you could use a combination of GBDK and BCX. Basically (ha!) using the C compiler and libraries already available with the power of BCX to translate BASIC to C.
Haha, the work flow is compiling BASIC directly to ROM, neither C or BCX would involve in. But yea, weāll see what power could be borrowed from C and others.
Ooh, excited for the development of this!
Very interesting project!