Commit graph

2795 commits

Author SHA1 Message Date
Gwilym Inzani 11822e5c45 Remove references to agbrs 2023-02-25 22:39:52 +00:00
Gwilym Inzani 17a8f770ed It doesn't teach you that... 2023-02-25 22:36:32 +00:00
Gwilym Inzani 17de416efd Improve hardware section as well 2023-02-25 22:35:36 +00:00
Gwilym Inzani 12e9433b8d Further improvements 2023-02-25 22:29:06 +00:00
Gwilym Inzani d3b38d9e94 Rewrite the building step 2023-02-25 22:07:58 +00:00
Gwilym Inzani 0c6f3330aa Rewrite the introduction 2023-02-25 22:03:18 +00:00
Gwilym Inzani adeb24be4d Make the book more positive 2023-02-25 21:58:00 +00:00
Gwilym Inzani ea55278c7d
Fix 256 colours (#392)
Fixes #386.

Turns out we weren't correctly setting the 256 colour mode flag
🤦. It worked fine in affine mode because those are 256 colour
mode by default, but now it'll also work for regular backgrounds.

- [x] Changelog updated / no changelog update needed
2023-02-25 18:23:38 +00:00
Gwilym Inzani 4c6fbac41f Fix remaining issues with the new API usage 2023-02-25 18:10:54 +00:00
Gwilym Inzani eb56a4a9d2 Add a changelog entry 2023-02-24 08:56:04 +00:00
Gwilym Inzani 54311727ec Fix build errors 2023-02-24 08:55:02 +00:00
Gwilym Inzani 689bfc642f Check if the tiles passed are of the correct format 2023-02-24 08:47:45 +00:00
Gwilym Inzani c6bac34294 Make the number of colours a property of the background 2023-02-24 08:44:47 +00:00
Gwilym Inzani adad443e67
Add correct lifetimes to prevent double creation (#391)
Fixes #390 

- [x] Changelog updated / no changelog update needed
2023-02-23 22:17:58 +00:00
Gwilym Kuiper 152f96e953 Consistently use 'gba 2023-02-23 21:22:53 +00:00
Gwilym Kuiper 33c65474de Add changelog entry 2023-02-23 21:20:51 +00:00
Gwilym Kuiper b90a5829b8 Fix the games 2023-02-23 21:18:29 +00:00
Gwilym Kuiper 92066f7adb Add lifetimes to timers 2023-02-23 20:46:28 +00:00
Gwilym Kuiper 2bab48b422 Add lifetimes to the mixer 2023-02-23 20:44:20 +00:00
Gwilym Kuiper 5ac408d414 Do all the video modes 2023-02-23 20:42:48 +00:00
Gwilym Kuiper ce5641f5ef Add correct lifetimes for Blend 2023-02-23 20:39:23 +00:00
Gwilym Kuiper 9757f7ed54 Add correct lifetimes to windows 2023-02-23 20:37:03 +00:00
Gwilym Kuiper 0eec7e366c Add lifetimes to ObjectController 2023-02-23 20:36:00 +00:00
Gwilym Kuiper c4fac5a779
Fix clippy lints again (#388)
Fixes a bunch of clippy lints and updates edition to 2021

- [x] Changelog updated / no changelog update needed
2023-02-07 20:44:45 +00:00
Gwilym Kuiper aeca26bdef Add changelog entry for 2021 2023-02-07 20:33:25 +00:00
Gwilym Kuiper 97dec32fa2 Fix all the clippy lints 2023-02-07 20:32:43 +00:00
Gwilym Kuiper 33dafd29c2 Update everything to 2021 2023-02-07 20:32:35 +00:00
Corwin f293f8c48d
make vector2d new const (#383) 2023-01-29 19:15:14 +00:00
Corwin 650702ed4e modify changelog 2023-01-29 19:06:00 +00:00
Corwin f0dd544394 make vector2d new const 2023-01-29 19:04:25 +00:00
Gwilym Kuiper 64bd1ad7dd
Fix landing 1 pixel above the ground in purple night (#381)
- [x] Changelog updated / no changelog update needed
2023-01-26 21:04:32 +00:00
Gwilym Kuiper 0e1843bf6c
Update Rust crate toml_edit to 0.18 (#379)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [toml_edit](https://togithub.com/ordian/toml_edit) | dependencies |
minor | `0.17` -> `0.18` |

---

### Release Notes

<details>
<summary>ordian/toml_edit</summary>

###
[`v0.18.0`](https://togithub.com/ordian/toml_edit/compare/v0.17.1...v0.18.0)

[Compare
Source](https://togithub.com/ordian/toml_edit/compare/v0.17.1...v0.18.0)

###
[`v0.17.1`](https://togithub.com/ordian/toml_edit/compare/v0.17.0...v0.17.1)

[Compare
Source](https://togithub.com/ordian/toml_edit/compare/v0.17.0...v0.17.1)

</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://app.renovatebot.com/dashboard#github/agbrs/agb).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC4xMDkuMSIsInVwZGF0ZWRJblZlciI6IjM0LjEwOS4xIn0=-->
2023-01-26 20:56:04 +00:00
Gwilym Kuiper b0314f69c5 Fix landing 1 pixel above the ground in purple night 2023-01-26 20:52:54 +00:00
GBA bot a76d44aeea Update lockfiles 2023-01-23 21:07:03 +00:00
renovate[bot] 28ce89ccc5
Update Rust crate toml_edit to 0.18 2023-01-23 21:06:03 +00:00
Gwilym Kuiper 2b91cb8773
Fix alpha not being considered when transparent_colour was absent (#377)
Previously `include_image!()` would only set transparent pixels to index
0 if a `transparent_color` was specified. However, this in unnecessary
as the transparency index is always 0.

- [X] Changelog updated / no changelog update needed
2023-01-21 20:33:02 +00:00
Eievui 09cf960121 Update CHANGELOG 2023-01-21 14:14:43 -05:00
Eievui 43279e72c3 Fix alpha not being considered when transparent_colour was absent 2023-01-21 14:12:56 -05:00
Gwilym Kuiper b76e7b9bf0 Release v0.13.0 2023-01-19 20:21:09 +00:00
Gwilym Kuiper 8789dc1dac
Derive default as now required by clippy (#376)
- [x] Changelog updated / no changelog update needed
2023-01-19 20:03:20 +00:00
Gwilym Kuiper 5b813c10d1 Derive default as now required by clippy 2023-01-15 20:49:30 +00:00
Gwilym Kuiper 01e4c6c147
Remove option to manage your own interrupts in the mixer (#361)
Simplify the audio mixer to always use the interrupt system which fixes
a soundness issue (pun intended) if you forget the mixer but not the
interrupt handler.

- [x] Changelog updated / no changelog update needed
2023-01-12 23:00:14 +00:00
Gwilym Kuiper 1cd4cc6a9e Merge remote-tracking branch 'origin/master' into remove-option-to-manage-your-own-interrupts-in-the-mixer 2023-01-12 22:30:32 +00:00
Gwilym Kuiper 7525a6f572
Make missing a vblank interrupt wait less painful (#374)
If you missed a vblank, then the next call to wait_for_vblank would
pointlessly wait rather than returning immediately. Meaning if you
missed a vblank by a few cycles, you'd be waiting for the entire next
one :(.

- [x] Changelog updated / no changelog update needed
2023-01-12 22:24:30 +00:00
Gwilym Kuiper 43aebe4092
Fix volume zero and power of 2 (#375)
Fixes #371.

If the volume was zero, the calculation for leading zeros was incorrect.
So both reduce the amount of work done for 0 volume and also count the
leading zeros correctly in the fast path.

- [x] Changelog updated / no changelog update needed
2023-01-12 22:17:16 +00:00
Gwilym Kuiper 987d7b0d2c
Add missing methods for tiled1 to allow creating backgrounds (#368)
Fixes #367

Had missed implementations to actually get the backgrounds if you were
using tiled1 mode.

- [x] Changelog updated / no changelog update needed
2023-01-12 22:14:43 +00:00
Gwilym Kuiper 009de4e660 Update test to be more relevant 2023-01-12 22:02:07 +00:00
Gwilym Kuiper 9796174a57 Add changelog entry for fixes 2023-01-12 21:55:25 +00:00
Gwilym Kuiper 8009ffea09 If volume is 0, don't actually play anything 2023-01-12 21:54:08 +00:00
Gwilym Kuiper 6ebe08e528 Fix out by 1 while calcuating leading zeros 2023-01-12 21:53:54 +00:00