Commit graph

3442 commits

Author SHA1 Message Date
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
Corwin
548dd9ff67
fix cos function 2023-10-08 14:23:04 +01:00
Corwin
539caf7ad9
add test showing inaccuracy 2023-10-08 14:22:50 +01:00
Gwilym Inzani
5dbf13d4b9
Update Rust crate libc to 0.2.149 (#494)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [libc](https://togithub.com/rust-lang/libc) | dependencies | patch |
`0.2.148` -> `0.2.149` |

---

### Release Notes

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

###
[`v0.2.149`](https://togithub.com/rust-lang/libc/releases/tag/0.2.149)

[Compare
Source](https://togithub.com/rust-lang/libc/compare/0.2.148...0.2.149)

#### What's Changed

- libc 0.2.148 by
[@&#8203;joshtriplett](https://togithub.com/joshtriplett) in
[https://github.com/rust-lang/libc/pull/3351](https://togithub.com/rust-lang/libc/pull/3351)
- update libc-test and its libc dependency to 0.2.148 by
[@&#8203;chenx97](https://togithub.com/chenx97) in
[https://github.com/rust-lang/libc/pull/3314](https://togithub.com/rust-lang/libc/pull/3314)
- Disable 1.13 CI by [@&#8203;JohnTitor](https://togithub.com/JohnTitor)
in
[https://github.com/rust-lang/libc/pull/3358](https://togithub.com/rust-lang/libc/pull/3358)
- Add teeos libc by
[@&#8203;Sword-Destiny](https://togithub.com/Sword-Destiny) in
[https://github.com/rust-lang/libc/pull/3333](https://togithub.com/rust-lang/libc/pull/3333)
- Added SIOCSIFNAME by
[@&#8203;Brijeshkrishna](https://togithub.com/Brijeshkrishna) in
[https://github.com/rust-lang/libc/pull/3354](https://togithub.com/rust-lang/libc/pull/3354)
- copyfile apple api update by
[@&#8203;devnexen](https://togithub.com/devnexen) in
[https://github.com/rust-lang/libc/pull/3346](https://togithub.com/rust-lang/libc/pull/3346)
- Hermit updates by [@&#8203;mkroening](https://togithub.com/mkroening)
in
[https://github.com/rust-lang/libc/pull/3348](https://togithub.com/rust-lang/libc/pull/3348)
- Add the LoongArch64 HWCAP values by
[@&#8203;heiher](https://togithub.com/heiher) in
[https://github.com/rust-lang/libc/pull/3344](https://togithub.com/rust-lang/libc/pull/3344)
- Add F_PUNCHHOLE and fpunchhole_t by
[@&#8203;anacrolix](https://togithub.com/anacrolix) in
[https://github.com/rust-lang/libc/pull/3337](https://togithub.com/rust-lang/libc/pull/3337)
- Fix compatibility with Emscripten >= 3.1.44 by
[@&#8203;kleisauke](https://togithub.com/kleisauke) in
[https://github.com/rust-lang/libc/pull/3308](https://togithub.com/rust-lang/libc/pull/3308)
- freebsd adding few mmap constants related to page alignment by
[@&#8203;devnexen](https://togithub.com/devnexen) in
[https://github.com/rust-lang/libc/pull/3326](https://togithub.com/rust-lang/libc/pull/3326)
- Redox pthreads by [@&#8203;4lDO2](https://togithub.com/4lDO2) in
[https://github.com/rust-lang/libc/pull/3347](https://togithub.com/rust-lang/libc/pull/3347)
- linux MADV_COLLAPSE addition by
[@&#8203;devnexen](https://togithub.com/devnexen) in
[https://github.com/rust-lang/libc/pull/3340](https://togithub.com/rust-lang/libc/pull/3340)
- android adding few more pthread api calls. by
[@&#8203;devnexen](https://togithub.com/devnexen) in
[https://github.com/rust-lang/libc/pull/3288](https://togithub.com/rust-lang/libc/pull/3288)
- Declare `pthread_attr_setguardsize` and `pthread_attr_getstacksize`.
by [@&#8203;sunfishcode](https://togithub.com/sunfishcode) in
[https://github.com/rust-lang/libc/pull/3330](https://togithub.com/rust-lang/libc/pull/3330)
- Add missing PS Vita definitions, fix some unused ones by
[@&#8203;pheki](https://togithub.com/pheki) in
[https://github.com/rust-lang/libc/pull/3284](https://togithub.com/rust-lang/libc/pull/3284)
- Drop `armv7-apple-ios` target support by
[@&#8203;JohnTitor](https://togithub.com/JohnTitor) in
[https://github.com/rust-lang/libc/pull/3362](https://togithub.com/rust-lang/libc/pull/3362)
- backtrace definitions and support for getmntinfo and getvfsstat by
[@&#8203;0323pin](https://togithub.com/0323pin) in
[https://github.com/rust-lang/libc/pull/3368](https://togithub.com/rust-lang/libc/pull/3368)
- apple fcntl update. by
[@&#8203;devnexen](https://togithub.com/devnexen) in
[https://github.com/rust-lang/libc/pull/3365](https://togithub.com/rust-lang/libc/pull/3365)
- Added socketpair and pipe2 for Vita target by
[@&#8203;nikarh](https://togithub.com/nikarh) in
[https://github.com/rust-lang/libc/pull/3366](https://togithub.com/rust-lang/libc/pull/3366)
- Added additional Ethernet Protocol Ids for fuchsia by
[@&#8203;w1redch4d](https://togithub.com/w1redch4d) in
[https://github.com/rust-lang/libc/pull/3332](https://togithub.com/rust-lang/libc/pull/3332)
- timerfd api for freebsd 14. by
[@&#8203;devnexen](https://togithub.com/devnexen) in
[https://github.com/rust-lang/libc/pull/3341](https://togithub.com/rust-lang/libc/pull/3341)
- haiku adding pthread GNU part by
[@&#8203;devnexen](https://togithub.com/devnexen) in
[https://github.com/rust-lang/libc/pull/3364](https://togithub.com/rust-lang/libc/pull/3364)
- add execveat for glibc by
[@&#8203;SteveLauC](https://togithub.com/SteveLauC) in
[https://github.com/rust-lang/libc/pull/3372](https://togithub.com/rust-lang/libc/pull/3372)
- added support for GNU/Hurd by
[@&#8203;Vtewari2311](https://togithub.com/Vtewari2311) in
[https://github.com/rust-lang/libc/pull/3325](https://togithub.com/rust-lang/libc/pull/3325)
- Fix apple tvos support by
[@&#8203;lcruz99](https://togithub.com/lcruz99) in
[https://github.com/rust-lang/libc/pull/3370](https://togithub.com/rust-lang/libc/pull/3370)
- Remove deprecation from SA_ONSTACK; fix hexagon-unknown-linux-musl by
[@&#8203;androm3da](https://togithub.com/androm3da) in
[https://github.com/rust-lang/libc/pull/3335](https://togithub.com/rust-lang/libc/pull/3335)
- feat: add close_range for glibc by
[@&#8203;SteveLauC](https://togithub.com/SteveLauC) in
[https://github.com/rust-lang/libc/pull/3373](https://togithub.com/rust-lang/libc/pull/3373)
- Update crate version to 0.2.149 by
[@&#8203;nikarh](https://togithub.com/nikarh) in
[https://github.com/rust-lang/libc/pull/3360](https://togithub.com/rust-lang/libc/pull/3360)

#### New Contributors

- [@&#8203;Sword-Destiny](https://togithub.com/Sword-Destiny) made their
first contribution in
[https://github.com/rust-lang/libc/pull/3333](https://togithub.com/rust-lang/libc/pull/3333)
- [@&#8203;Brijeshkrishna](https://togithub.com/Brijeshkrishna) made
their first contribution in
[https://github.com/rust-lang/libc/pull/3354](https://togithub.com/rust-lang/libc/pull/3354)
- [@&#8203;anacrolix](https://togithub.com/anacrolix) made their first
contribution in
[https://github.com/rust-lang/libc/pull/3337](https://togithub.com/rust-lang/libc/pull/3337)
- [@&#8203;4lDO2](https://togithub.com/4lDO2) made their first
contribution in
[https://github.com/rust-lang/libc/pull/3347](https://togithub.com/rust-lang/libc/pull/3347)
- [@&#8203;pheki](https://togithub.com/pheki) made their first
contribution in
[https://github.com/rust-lang/libc/pull/3284](https://togithub.com/rust-lang/libc/pull/3284)
- [@&#8203;0323pin](https://togithub.com/0323pin) made their first
contribution in
[https://github.com/rust-lang/libc/pull/3368](https://togithub.com/rust-lang/libc/pull/3368)
- [@&#8203;w1redch4d](https://togithub.com/w1redch4d) made their first
contribution in
[https://github.com/rust-lang/libc/pull/3332](https://togithub.com/rust-lang/libc/pull/3332)
- [@&#8203;Vtewari2311](https://togithub.com/Vtewari2311) made their
first contribution in
[https://github.com/rust-lang/libc/pull/3325](https://togithub.com/rust-lang/libc/pull/3325)
- [@&#8203;lcruz99](https://togithub.com/lcruz99) made their first
contribution in
[https://github.com/rust-lang/libc/pull/3370](https://togithub.com/rust-lang/libc/pull/3370)

**Full Changelog**:
https://github.com/rust-lang/libc/compare/0.2.148...0.2.149

</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:eyJjcmVhdGVkSW5WZXIiOiIzNy4wLjMiLCJ1cGRhdGVkSW5WZXIiOiIzNy4wLjMiLCJ0YXJnZXRCcmFuY2giOiJtYXN0ZXIifQ==-->
2023-10-07 21:58:25 +01:00
GBA bot
c4116aeade Update lockfiles 2023-10-07 20:35:21 +00:00
renovate[bot]
994a36fdd8
Update Rust crate libc to 0.2.149 2023-10-07 20:34:42 +00:00
Gwilym Inzani
3f225a2b59
Fix clippy lint 2023/10/07 (#495)
Fix the most recent batch of clippy lints

- [x] no changelog update needed
2023-10-07 20:54:52 +01:00
Gwilym Inzani
534a357d85 Add another missing import 2023-10-07 20:39:13 +01:00
Gwilym Inzani
7454563325 Tests must come at the end 2023-10-07 20:28:09 +01:00