···77# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
8899[dependencies]
1010-agb = "0.15.0"
1010+agb = "0.16.0"
11111212[profile.dev]
1313opt-level = 3
···1717opt-level = 3
1818lto = "fat"
1919debug = true
2020-codegen-units = 1
-5
README.md
···1212You will need the following installed in order to build and run this project:
13131414* A recent version of `rustup`. See the [rust website](https://www.rust-lang.org/tools/install) for instructions for your operating system
1515-* `arm-none-eabi-binutils` for assembling and linking
1616- * Windows: [GNU Arm Embedded Toolchain](https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-rm/downloads).
1717- Make sure you select "Add path to environment variable" during the install
1818- * Debian and derivatives (e.g. Ubuntu, raspberry pi OS, linux mint): `sudo apt install binutils-arm-none-eabi`
1919- * Arch linux and derivatives: `sudo pacman -S arm-none-eabi-binutils`
20152116You will also want to install an emulator. The best support in agb is with [mgba](https://mgba.io), with
2217`println!` support via `agb::println!` but any emulator should work. You'll get the best experience if
···1414#![cfg_attr(test, reexport_test_harness_main = "test_main")]
1515#![cfg_attr(test, test_runner(agb::test_runner::test_runner))]
16161717-use agb::{display, syscall};
1818-1917// The main function must take 1 arguments and never return. The agb::entry decorator
2018// ensures that everything is in order. `agb` will call this after setting up the stack
2119// and interrupt handlers correctly. It will also handle creating the `Gba` struct for you.
2220#[agb::entry]
2321fn main(mut gba: agb::Gba) -> ! {
2424- let mut bitmap = gba.display.video.bitmap3();
2525-2626- for x in 0..display::WIDTH {
2727- let y = syscall::sqrt(x << 6);
2828- let y = (display::HEIGHT - y).clamp(0, display::HEIGHT - 1);
2929- bitmap.draw_point(x, y, 0x001F);
3030- }
3131-3232- loop {
3333- syscall::halt();
3434- }
2222+ agb::no_game(gba);
3523}