Commit graph

2679 commits

Author SHA1 Message Date
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
Gwilym Inzani 845e3d027a Remove pointless import 2023-10-07 20:27:36 +01:00
Gwilym Inzani 426890e856 Don't manually implement hash_one 2023-10-07 20:26:10 +01:00
Gwilym Inzani 53685b0410 Release v0.17.1 2023-10-05 22:18:04 +01:00
Gwilym Inzani 2a6234bab7 Add a changelog entry for 0.17.1 2023-10-05 22:14:25 +01:00
Gwilym Inzani f6fdcc8991
Update Cargo.toml files so docs.rs is happy (#492)
docs.rs is unhappy. I've updated the cargo-args so that it builds
correctly. Tested locally and it works with this change.

- [x] no changelog update needed
2023-10-04 16:51:19 +01:00
Gwilym Inzani c280316fa2 Update Cargo.toml files so docs.rs is happy 2023-10-04 16:36:46 +01:00
Gwilym Inzani cc6807fcd2 Update agb-tracker for dpl 2023-10-03 22:58:38 +01:00
Gwilym Inzani 3dddf9761d Ensure the tracker gets updated too 2023-10-03 22:48:06 +01:00
Gwilym Inzani f3e3b6a244 Update agb-tracker to version 0.17 2023-10-03 22:47:30 +01:00
Gwilym Inzani b6916d7e74 Release v0.17.0 2023-10-03 22:33:10 +01:00
Gwilym Inzani c6e98ea2dd Update lockfiles 2023-10-03 22:23:24 +01:00
Corwin a909edd3d1
Corrected position of fix (#488) 2023-09-28 22:48:14 +01:00
Corwin 3cebb5c3e8
fix.. again.. 2023-09-28 22:37:28 +01:00