Commit graph

2750 commits

Author SHA1 Message Date
Gwilym Inzani 198afdf8ce
Update Rust crate bindgen to 0.69 (#513)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [bindgen](https://rust-lang.github.io/rust-bindgen/)
([source](https://togithub.com/rust-lang/rust-bindgen)) |
build-dependencies | minor | `0.68` -> `0.69` |

---

### Release Notes

<details>
<summary>rust-lang/rust-bindgen (bindgen)</summary>

###
[`v0.69.0`](https://togithub.com/rust-lang/rust-bindgen/blob/HEAD/CHANGELOG.md#0690-2023-11-01)

[Compare
Source](https://togithub.com/rust-lang/rust-bindgen/compare/v0.68.1...v0.69.0)

#### Added

- Added the `ParseCallbacks::header_file` callback which runs on every
filename passed to `Builder::header`.
- Added the `CargoCallbacks::new` constructor which emits a cargo-rerun
line
    for every input header file by default.
- Added the `CargoCallbacks::rerun_on_header_files` method to configure
whether
    a cargo-rerun line should be emitted for every input header file.

#### Changed

- The `--wrap-static-fns` feature was updated so function types that has
no
    argument use `void` as its sole argument.
-   `CargoCallbacks` is no longer a [unit-like
struct](https://doc.rust-lang.org/reference/items/structs.html) and the
`CargoCallbacks` constant was added to mitigate the breaking nature of
this
change. This constant has been marked as deprecated and users will have
to
    use the new `CargoCallbacks::new` method in the future.

#### Removed

#### Fixed

-   Allow compiling `bindgen-cli` with a static libclang.
- Emit an opaque integer type for pointer types that don't have the same
size
    as the target's pointer size.
- Avoid escaping Objective-C method names unless they are `Self`,
`self`,
    `crate` or `super`.

#### Security

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log [here](https://developer.mend.io/github/agbrs/agb).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4zMS41IiwidXBkYXRlZEluVmVyIjoiMzcuMzEuNSIsInRhcmdldEJyYW5jaCI6Im1hc3RlciJ9-->
2023-11-09 20:08:43 +00:00
GBA bot 7425afdf75 Update lockfiles 2023-11-01 19:22:41 +00:00
renovate[bot] f793ea4f01
Update Rust crate bindgen to 0.69 2023-11-01 19:22:02 +00:00
Gwilym Inzani 7c6eaf324b Release v0.18.0 2023-10-31 20:35:14 +00:00
Gwilym Inzani 9f2087735c
Add a symlink for the readme to the agb directory (#512)
This is an attempt to make the readme show up on crates.io

- [x] no changelog update needed
2023-10-31 20:20:15 +00:00
Gwilym Inzani fbd138a0cf Add a symlink for the readme to the agb directory
This is an attempt to make the readme show up on crates.io
2023-10-31 20:04:18 +00:00
Gwilym Inzani 95721e2b77
Update lockfiles (#509)
Build is getting slow, this seems to be a pretty good way to fix that

- [x] no changelog update needed
2023-10-26 22:40:52 +01:00
Gwilym Inzani e8eb216ff4 Update lockfiles 2023-10-26 22:27:19 +01:00
Gwilym Inzani 88eb89f821
Nicer instruments for dungeon puzzlers lament (#508)
Found some nice samples on http://legowelt.org/samples/ so decided to
put them in the dungeon puzzlers lament. Sounds a lot nicer now that I'm
not using pure square / saw waves :D

- [x] no changelog update needed
2023-10-26 21:24:15 +01:00
Gwilym Inzani 79184c9457 Delete the theme we're not using 2023-10-26 21:09:42 +01:00
Gwilym Inzani f345e6c46b Some nicer instruments for dpl 2023-10-26 21:09:26 +01:00
Gwilym Inzani 4199e22c5e
Fix the combo rom (#507)
Previously amplitude could not be played!
This will make sure that we don't mess up as easily as the old version.
2023-10-24 22:20:46 +01:00
Corwin afcce9bb1c
use a single structure for both the tile and game launch 2023-10-24 22:04:50 +01:00
Gwilym Inzani c47bef8983
Add clear and draw wide point functions to bitmap4 (#505)
- Adds a proper clear and draw wide point functions to bitmap4 for
consistency.
- I must save the bitmap modes from being removed
2023-10-24 21:57:02 +01:00
Corwin 4ad93d134e
fix the combo rom 2023-10-24 21:39:05 +01:00
Gwilym Inzani df716a9d9a
Add missing #[cfg(test)] (#506)
Linter updates caused it to start complaining.

- [x] no changelog update needed
2023-10-24 20:42:44 +01:00
Gwilym Inzani 85a8540d44 Add missing #[cfg(test)] 2023-10-24 20:22:43 +01:00
xokz fdab4a3e6f
Update bitmap4.rs 2023-10-23 17:28:22 -04:00
xokz fe90d4d8d7
Update bitmap4.rs 2023-10-23 17:26:20 -04:00
Gwilym Inzani b3693401b6
Allow TileSetting palette to be set (#502)
This PR adds the ability for a palette to be set on a TileSetting
struct. This is useful when doing more advanced palette tricks on a
background. For example, changing the palette for only a portion of a
background or manually managing screen palettes.

- [x] Changelog updated
2023-10-21 14:15:30 +01:00
Brandon Atkinson 2f1ad07e43 allow TileSetting palette to be set 2023-10-18 23:28:13 -06:00
Gwilym Inzani 1a468e7b55
Fixing up the linker scripts (#503)
* Builds upon #501 with related improvements we wanted to make.
* Fixes multiboot to work, and to work on mgba.
* Remove the need for copying the linker scripts into your repo


- [x] Changelog updated
2023-10-18 13:12:06 +01:00
Gwilym Inzani 469db44ad1 Correct the pluralisation 2023-10-18 12:28:41 +01:00
Gwilym Inzani 4ed2ea3784 Move the linkers scripts to the src directory so agb itself can change its script 2023-10-18 12:26:50 +01:00
Gwilym Inzani 721aba3c76 Remove linker script consistency checks and helpers 2023-10-18 12:09:01 +01:00
Gwilym Inzani 00631b2166 Delete all the gba.ld files 2023-10-18 12:08:25 +01:00
Gwilym Inzani eff075f50b Remove the need for a linker script and move multiboot to a feature 2023-10-18 12:08:12 +01:00
Corwin 0e0cc6f909
update changelog to include linker script changes 2023-10-18 00:48:10 +01:00
Corwin 41e192eff2
set interrupt handler to its own section 2023-10-18 00:17:24 +01:00
Gwilym Inzani 48b9eb3775 Update all the remaining linker scripts 2023-10-17 23:52:04 +01:00
Gwilym Inzani ce233f7d62 Always check the address to make sure that things work as expected 2023-10-17 23:51:40 +01:00
Gwilym Inzani 5feb67285d Add a test that multiboot works 2023-10-17 23:49:57 +01:00
Gwilym Inzani aa33a46919 Remove trailing spaces 2023-10-17 23:45:08 +01:00
Gwilym Inzani 41bda0036f Make sure mgba recognises this as a GBA rom 2023-10-17 23:44:48 +01:00
Gwilym Inzani c9c8d9e879 Don't put the entrypoint in the .text section 2023-10-17 23:22:04 +01:00
Gwilym Inzani 1c0e9f9a2a Maybe get multiboot to work? 2023-10-17 23:15:51 +01:00
Gwilym Inzani ec6774ca6b Split into regular, multiboot and common 2023-10-17 23:14:18 +01:00
Gwilym Inzani 243e810150 Rename crt0 section to entrypoint 2023-10-17 22:22:48 +01:00
Gwilym Inzani 7afa19965c Rename to entrypoint.s 2023-10-17 22:12:50 +01:00
Corwin 8091e22b10
use macro for the grabbing linker variable 2023-10-17 22:09:15 +01:00
Corwin 0b747508a8
fixup the multiboot 2023-10-17 21:54:54 +01:00
Corwin 8e547c6783
derive the data ends 2023-10-17 21:53:50 +01:00
Corwin f7434a4bf3
run linker script update script 2023-10-17 20:29:12 +01:00
jmaargh 4a13d52faf Resolve TODOs about linker symbols 2023-10-16 22:50:53 +01:00
jmaargh 7a1f554b72 Fix symbols for RAM section locations
Using the ld functions is not only more readable, but more accurate.
Previous use of the `.` variable could occasionally have off-by-one
errors.
2023-10-16 22:46:27 +01:00
jmaargh 9040844854 Reserve IWRAM space for BIOS use 2023-10-16 22:45:59 +01:00
Corwin cd6e8d1346
Fix cos term (#498)
One of the finer cosine terms was not correct. By using the num macro
(not available at the time of this functions initial writing) we can
avoid issues of incorrect constants.

Fixes #497

- [x] Changelog updated
2023-10-10 20:14:51 +01:00
Corwin 09331d1cb5
make 16 bit precision work 2023-10-09 19:16:24 +01:00
Corwin 71e680f365
update changelog 2023-10-08 15:04:57 +01:00
Corwin e894367c52
use proper implementation of cos to check against 2023-10-08 14:56:32 +01:00