Skip to content

Commit

Permalink
v0.7.0-remake (#168)
Browse files Browse the repository at this point in the history
* Literally clear the repo to nothing for starters

* The screen color changes with key presses

There's enough code here that the screen color can change when you press the keys. Right now it's most all unsafe code directly in the example file. The strange thing is that llvm is making us define atomic helper functions when it's not supposed to do that, so we need to investigate more before proceeding too much.

* can't tell if this is broken or if mgba is busted on mac

* unix dumper

* don't panic

* oops

* GbaCell into its own file, also i had broken the rt irq handler.

* closer to an acceptable demo.

* make IrqFn into just an alias.

* wrap most current mmio types.

* more stuff

* Use paste to remove a whole bunch of repetition (#166)

* gba cells are "unwind safe", they can't be in a bad intermediate state, that's the point

* Once again we must thank Yandros for saving us from ourselves.

* assembly updates.

* oops

* finish video MMIO basics, no docs yet.

* small note.

* simplify asm irq handler stack usage.

* ewram support.

* more cell stuff.

* Remove the non-Zlib dependency, sorry Sp00ph :(

* add proper dma support.

* small docs improvement.

* bitmap and oam declarations

* more macros

* single bit constants will be extremely useful

* add `IntrWait`

* rename for clarity

* improvements

* use the new constant

* improve sound support

* timers

* key support

* add a prelude module.

* fix doc

* more and more assembly (mem fns will need global_asm probably)

* more comments.

* comment updates.

* readme

* more video support, and put IrqFn alias into interrupts module.

* finish working in the EABI code.

* CI config.

* funding file.

* rustc plz inline these functions when you can :3

* "rt0" is unnecessarily cryptic

* overhaul the readme.

* phrasing

Co-authored-by: Sp00ph <61327188+Sp00ph@users.noreply.github.com>
  • Loading branch information
Lokathor and Sp00ph committed Sep 27, 2022
1 parent 380b361 commit bf853b7
Show file tree
Hide file tree
Showing 95 changed files with 2,444 additions and 6,323 deletions.
4 changes: 2 additions & 2 deletions .cargo/config.toml
Original file line number Diff line number Diff line change
Expand Up @@ -5,5 +5,5 @@ target = "thumbv4t-none-eabi"
build-std = ["core"]

[target.thumbv4t-none-eabi]
rustflags = ["-Clink-arg=-Tlinker.ld"]
runner = "mgba"
runner = "mgba-qt"
rustflags = ["-Clink-arg=-Tlink_scripts/mono_boot.ld"]
4 changes: 4 additions & 0 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# These are supported funding model platforms

github: [Lokathor]

Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ on:

jobs:
build:
runs-on: ubuntu-20.04
runs-on: ubuntu-latest
strategy:
matrix:
rust:
Expand All @@ -32,10 +32,3 @@ jobs:
toolchain: ${{ matrix.rust.toolchain }}
command: build
args: --examples

- name: Check That Docs Compile
uses: actions-rs/cargo@v1
with:
toolchain: ${{ matrix.rust.toolchain }}
command: test
args: --doc
23 changes: 2 additions & 21 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,21 +1,2 @@
# Generated by Cargo
# will have compiled files and executables
/target/

# Remove Cargo.lock from gitignore if creating an executable, leave it for libraries
# More information here https://doc.rust-lang.org/cargo/guide/cargo-toml-vs-cargo-lock.html
Cargo.lock

# These are backup files generated by rustfmt
**/*.rs.bk

# The crt0.o file should, under the currently suggested build scheme, be
# recompiled every build anyway.
crt0.o

# Don't track VSCode Workspace settings
/.vscode

# Don't track IntelliJ Workspaces
/.idea
/*.ida
/target
/Cargo.lock
13 changes: 13 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
{
"rust-analyzer.checkOnSave.allTargets": false,
"rust-analyzer.checkOnSave.overrideCommand": [
"cargo",
"build",
"--quiet",
"--workspace",
"--message-format=json",
"--lib",
"--bins",
"--examples"
]
}
34 changes: 6 additions & 28 deletions Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,35 +1,13 @@
[package]
name = "gba"
description = "A crate for making GBA games with Rust."
version = "0.5.3"
authors = ["Lokathor <zefria@gmail.com>", "Thomas Winwood <twwinwood@gmail.com>"]
repository = "https://github.com/rust-console/gba"
readme = "README.md"
keywords = ["gba"]
edition = "2018"
description = "A crate for 'raw' style GBA development. If you want a 'managed' experience, try the `agb` crate instead."
version = "0.7.0"
edition = "2021"
license = "Zlib OR Apache-2.0 OR MIT"

[features]
default = []
serial = ["embedded-hal", "nb"]

[dependencies]
voladdress = { version = "0.4" }
#
embedded-hal = { version = "0.2.4", optional = true }
nb = { version = "1", optional = true }
bitfrob = "0.2.3"
voladdress = "1.0.2"

[profile.dev]
panic = "abort"

[profile.release]
panic = "abort"

#[[example]]
#name = "uart_echo"
#required-features = ["serial"]

[package.metadata.docs.rs]
default-target = "thumbv4t-none-eabi"
cargo-args = ["-Z", "build-std=core"]
rustdoc-args = ["--cfg","docs_rs"]
opt-level = 3
67 changes: 0 additions & 67 deletions LICENSE-APACHE.md

This file was deleted.

5 changes: 0 additions & 5 deletions LICENSE-MIT.md

This file was deleted.

9 changes: 0 additions & 9 deletions LICENSE-ZLIB.md

This file was deleted.

70 changes: 0 additions & 70 deletions Makefile.toml

This file was deleted.

Loading

0 comments on commit bf853b7

Please sign in to comment.