Skip to content

Commit

Permalink
Initial commit
Browse files Browse the repository at this point in the history
  • Loading branch information
ischeinkman committed Aug 21, 2024
1 parent cf3f8f9 commit 12cce4f
Show file tree
Hide file tree
Showing 40 changed files with 138 additions and 5,223 deletions.
14 changes: 0 additions & 14 deletions .cargo/config.toml

This file was deleted.

94 changes: 0 additions & 94 deletions CHANGELOG.md

This file was deleted.

21 changes: 1 addition & 20 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
name = "gba"
description = "A crate for 'raw' style GBA development. If you want a 'managed' experience, try the `agb` crate instead."
repository = "https://github.com/rust-console/gba"
version = "0.12.0"
version = "0.0.1"
edition = "2021"
license = "Zlib OR Apache-2.0 OR MIT"

Expand All @@ -21,26 +21,7 @@ doc_cfg = []
track_caller = []

[dependencies]
voladdress = "1.4.0"
bitfrob = "1"
critical-section = { version = "1.1.2", features = [
"restore-state-bool",
], optional = true }
bytemuck = { version = "1.16.0", optional = true }
fixed = { version = "1.27.0", default-features = false, optional = true }
bracer = "0.3.1"

[profile.dev]
opt-level = 3
incremental = false

[profile.dev.package."*"]
# this prevents `core` from having way too many debug assertions
debug-assertions = false

[profile.release]
codegen-units = 1 # increases build time, but also can increase inline opportunities
incremental = false

[package.metadata.docs.rs]
# When building the crate docs, we want to see the crate "as if" it was running
Expand Down
24 changes: 3 additions & 21 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,24 +1,6 @@
# `gba`
# `gba-cell`

# [Docs.rs Documentation](https://docs.rs/gba)

This crate is intended for working with the GBA.
Provides a global "cell" type for use in homebrew software for the Nintendo Gameboy Advance.

To build for the GBA you'll need to use `build-std` (on Nightly) with the
`thumbv4t-none-eabi` or `armv4t-none-eabi` targets. The two targets are
identical except for which instruction set (thumb or arm) is used by default. It
is suggested that you use the thumb target, unless you know what you're doing and
have a very good reason to use the arm target.

Your `.cargo/config.toml` should look something like this:

```toml
[build]
target = "thumbv4t-none-eabi"

[unstable]
build-std = ["core"]
```

If you don't use this crate on the GBA, you **MUST** disable default features and
then not use the `on_gba` cargo feature.
This allows for safely communicating between IRQ and non-IRQ code through the use of small wrapped global variables.
Loading

0 comments on commit 12cce4f

Please sign in to comment.