Commit graph

3091 commits

Author SHA1 Message Date
Gwilym Inzani 66e55890e2 Only need 1 lifetime here 2024-04-13 15:56:00 +01:00
renovate[bot] 0b63284c7b
Update Rust crate addr2line to 0.22 2024-04-11 10:29:52 +00:00
Corwin 27ad5d1184
Add controller support (#630)
Simple use of gamepad apis to add controller support.
2024-04-10 20:38:54 +01:00
Corwin 99789c369d
Update dependency typescript to v5.4.5 (#629) 2024-04-10 18:33:52 +01:00
Corwin 4e4e323002
format ts files 2024-04-10 18:31:24 +01:00
Corwin c29a9a4a2b
add controller support 2024-04-10 18:30:12 +01:00
renovate[bot] b6dc67dd24
Update dependency typescript to v5.4.5 2024-04-10 16:36:12 +00:00
Corwin 5f37e9f442
Update dependency @types/node to v20.12.7 (#628) 2024-04-09 22:30:35 +01:00
renovate[bot] fe7fae1c04
Update dependency @types/node to v20.12.7 2024-04-09 21:24:31 +00:00
Corwin 2bacef161b
Use portable atomics and other similar libraries (#565)
I tried switching out our statics to use the standard portable atomics,
critical section, and once cell crates.
One of the save test fails in release mode for me, not sure why but
these tests failing always suggests magic is going on.

- [x] Changelog updated / no changelog update needed
2024-04-09 22:23:40 +01:00
Corwin 413a889488
add changelog entry 2024-04-09 22:17:31 +01:00
Corwin a0895635ab
use portable atomic from agb 2024-04-09 22:08:55 +01:00
Corwin c632eb4ea3
type use of rng 2024-04-09 22:03:33 +01:00
Corwin 32eb34f226
fix panic renderer 2024-04-09 21:58:49 +01:00
Corwin d6b32e511d
pub them in external mod 2024-04-09 21:57:26 +01:00
Corwin 7ade79e132
update other projects 2024-04-09 21:52:54 +01:00
Corwin fb247aa8f2
move single file module out of directory 2024-04-09 21:52:04 +01:00
Corwin 10575f28a6
delay cell 2024-04-09 21:52:04 +01:00
Corwin 9fbd420089
add test that atomic read / write works 2024-04-09 21:52:04 +01:00
Corwin 2b4c4459e0
use portable atomics and other similar libraries 2024-04-09 21:52:00 +01:00
Gwilym Inzani 11b51e0a75
Workspaces (#626)
We can put everything except 'agb' and the 'agb-tracker' crates in a
workspace for hopefully easier management :)

- [x] no changelog update needed
2024-04-09 21:45:59 +01:00
Gwilym Inzani b963065ad6 Update the justfile 2024-04-09 21:06:21 +01:00
Gwilym Inzani 7a059b2142 This is called agb-debug 2024-04-09 21:06:16 +01:00
Gwilym Inzani 36cdc9e28d Don't need this workspace any more 2024-04-09 21:06:08 +01:00
Gwilym Inzani 65388e01f5 Fix more clippy lints in the emulator 2024-04-09 20:56:19 +01:00
Gwilym Inzani 08ad8765de Fix clippy lint and fmt in the emulator 2024-04-09 20:55:21 +01:00
Gwilym Inzani 52ddd97a2e Switch to cargo workspaces for every crate we support 2024-04-09 20:54:12 +01:00
Corwin 0dab252379
RFC: Remove Cargo lockfiles (#621)
Maintaining the lockfiles has proven to be an annoyance with regular
"update lockfiles" commits. We don't actually care what's in the
lockfiles.

The problem is that they're not kept in sync with each other. We really
want a workspace to have one lockfile for the whole project, but
limitations is workspaces means this is not currently possible.
2024-04-09 20:51:28 +01:00
Corwin c8abf33c8f
remove update lockfiles workflow 2024-04-09 20:43:31 +01:00
Corwin b7ec8a77d5
ignore Cargo lockfiles 2024-04-09 20:42:11 +01:00
Corwin bf3e708f6f
remove all lockfiles 2024-04-09 20:42:09 +01:00
Corwin 6c60b770b5
Implement signed for our fix num (#578)
* Integrates num_traits more closely.
* Implements signed for our num, and the vector2d / rect abs now can use
our fixnum.
* This is potentially breaking.
2024-04-09 20:41:00 +01:00
Corwin 7d0e05c9b5
update changelog 2024-04-09 20:33:26 +01:00
Corwin 57681f1084
use num traits for and implement signed 2024-04-09 20:26:15 +01:00
Corwin cddb85df05
use num traits 2024-04-09 20:26:15 +01:00
Gwilym Inzani e8aed8e376
Backtraces (#590)
Implements a very basic backtrace and the ability to format them

If you run the panic example and press A, you get:

```
[ERROR] GBA Debug: [failed]
[ERROR] GBA Debug: debug data: ce3-1ee7-1fb7-24d-1ad
[FATAL] GBA Debug: Error: panicked at src/memory_mapped.rs:101:24:
index out of bounds: the len is 240 but the index is 240
```

which you can then prettify with:

```
> agb-addr2line ../target/thumbv4t-none-eabi/debug/examples/panic 0ce3-1f57-2027-024d-01ad
0:	rust_begin_unwind <agb>/lib.rs:321
1:	core::panicking::panic_nounwind <core>/panicking.rs:151
2:	core::panicking::assert_failed_inner <core>/panicking.rs:321
3:	agb::memory_mapped::MemoryMapped2DArray<T,_,_>::set <agb>/memory_mapped.rs:101
	(inlined by) agb::display::bitmap3::Bitmap3::draw_point <agb>/display/bitmap3.rs:31
4:	main /home/gwilym/Projects/agb/agb/examples/panic.rs:15
```

- [ ] Changelog updated / no changelog update needed
2024-04-09 20:25:15 +01:00
Corwin 646b7947e9
Enforce functions (#625) 2024-04-09 20:22:28 +01:00
Gwilym Inzani 5f8c1a4634
Update peaceiris/actions-mdbook action to v2 (#617)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[peaceiris/actions-mdbook](https://togithub.com/peaceiris/actions-mdbook)
| action | major | `v1` -> `v2` |

---

### Release Notes

<details>
<summary>peaceiris/actions-mdbook (peaceiris/actions-mdbook)</summary>

###
[`v2`](https://togithub.com/peaceiris/actions-mdbook/compare/v1...v2)

[Compare
Source](https://togithub.com/peaceiris/actions-mdbook/compare/v1...v2)

</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:eyJjcmVhdGVkSW5WZXIiOiIzNy4yNjkuMiIsInVwZGF0ZWRJblZlciI6IjM3LjI2OS4yIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIn0=-->
2024-04-09 20:18:02 +01:00
Gwilym Inzani c77ed7fa56 Update the justfile target 2024-04-09 20:15:33 +01:00
Gwilym Inzani 966fda443a Rename agb-addr2line to agb-debug 2024-04-09 20:13:20 +01:00
Gwilym Inzani eca511bc83 Add a changelog entry for the new backtraces 2024-04-09 20:09:52 +01:00
Corwin 754435ad1e
show mobile controls on a small screen (#624) 2024-04-09 12:48:21 +01:00
Corwin dcd632d3e6
Update dependency @types/node to v20.12.6 (#623)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[@types/node](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node)
([source](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node))
| [`20.12.5` ->
`20.12.6`](https://renovatebot.com/diffs/npm/@types%2fnode/20.12.5/20.12.6)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/20.12.6?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fnode/20.12.6?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fnode/20.12.5/20.12.6?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/20.12.5/20.12.6?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### 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:eyJjcmVhdGVkSW5WZXIiOiIzNy4yNjkuMiIsInVwZGF0ZWRJblZlciI6IjM3LjI2OS4yIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIn0=-->
2024-04-09 12:47:01 +01:00
Corwin eb30a7a825
prefer regular functions over named arrow functions 2024-04-09 12:46:13 +01:00
Corwin 12316dbe6a
show mobile controls on a small screen 2024-04-09 12:15:11 +01:00
renovate[bot] 8b396fc576
Update dependency @types/node to v20.12.6 2024-04-09 07:21:24 +00:00
Corwin abd5e44ede
Press to start on mobile (#622) 2024-04-09 02:46:10 +01:00
Corwin bbdcdfeb95
readd hover border on help links 2024-04-09 02:38:22 +01:00
Corwin f6c703060f
Update dependency @types/react to v18.2.75 (#618) 2024-04-09 02:34:13 +01:00
Corwin 73d4346964
nicer height calculation 2024-04-09 02:32:36 +01:00