Gwilym Inzani
c97f75a593
Add quickcheck tests for agb_hashmap ( #769 )
...
Thought I'd add a quick property test for the hashmap. Inspired by
Jonhoo's most recent stream
- [x] no changelog update needed
2024-09-25 13:52:32 +01:00
Gwilym Inzani
d17c14c7d3
Add quickcheck tests for agb_hashmap
2024-09-25 13:44:47 +01:00
Gwilym Inzani
7202fc0119
Improve palette optimiser ( #768 )
...
Make the whole thing more consistent and better at creating optimal
palettes.
- [x] Changelog updated / no changelog update needed
2024-09-25 13:31:29 +01:00
Gwilym Inzani
62020e692f
Use btrees to make everything more consistent
2024-09-25 13:13:51 +01:00
Gwilym Inzani
afa9d47f0c
Add a changelog entry for changing how palettes are optimised
2024-09-25 13:05:52 +01:00
Gwilym Inzani
40987f8977
Slightly easier debugging
2024-09-25 12:13:28 +01:00
Gwilym Inzani
edb628d0b2
Extract method for checking palette invariants
2024-09-25 11:44:16 +01:00
Gwilym Inzani
c834e2907d
Ensure that transparent colours always come first
2024-09-25 11:40:54 +01:00
Gwilym Inzani
7b6556b381
Use a better optimisation method
2024-09-25 11:33:51 +01:00
Gwilym Inzani
db908bb2da
Explain why this works
2024-09-25 10:53:25 +01:00
Gwilym Inzani
fb186809a9
Add a really basic quickcheck
2024-09-25 10:47:17 +01:00
Gwilym Inzani
d6bc6f49b4
Upgrade xmrs which gives us s3m and mod file support ( #767 )
...
Closes #742
Turns out XMRS will do the conversion for us, which means we can 'just
support' s3m and mod file formats for free which is nice.
- [x] Changelog updated / no changelog update needed
2024-09-25 10:33:37 +01:00
Gwilym Inzani
282e070216
Use version 0.7.2
2024-09-24 21:04:51 +01:00
Gwilym Inzani
89eb11d5ef
Add changelog entry for s3m and mod format
2024-09-24 21:03:09 +01:00
Gwilym Inzani
40fd424205
Export the include_s3m and include_mod macros
2024-09-24 21:02:37 +01:00
Gwilym Inzani
a7e7455c57
Add macros for include_s3m and include_mod
2024-09-24 21:02:37 +01:00
Gwilym Inzani
2d69b2a7a4
Make agb_xm_core generic on parsing
2024-09-24 21:02:37 +01:00
Gwilym Inzani
5b9332556d
Add s3m and mod support to the desktop player
2024-09-24 21:02:36 +01:00
renovate[bot]
05b5b3e882
Update Rust crate xmrs to v0.7.2
2024-09-24 21:02:05 +01:00
Corwin
d07970a7c0
Release v0.21.0
2024-09-24 20:38:33 +01:00
Corwin
dd5ab9b475
Fix release script ( #766 )
...
Causes the release script to update build-dependencies and the desktop
tracker
- [x] no changelog update needed
2024-09-24 20:37:12 +01:00
Corwin
1f6c7157be
also update build-dependencies
2024-09-24 20:27:15 +01:00
Corwin
49ad674d93
Update dependency @types/react to v18.3.9 ( #765 )
2024-09-24 19:56:54 +01:00
renovate[bot]
6f01435498
Update dependency @types/react to v18.3.9
2024-09-24 15:27:08 +00:00
Corwin
cfe31db934
Update Javascript packages (non-major) ( #760 )
2024-09-23 22:36:40 +01:00
renovate[bot]
51d3814539
Update Javascript packages (non-major)
2024-09-23 21:26:43 +00:00
Corwin
1f6766e286
Fix the CI issues with static mut access ( #763 )
...
- [x] no changelog update needed
2024-09-23 22:25:26 +01:00
Corwin
bd27e80daa
allow improper ctypes
2024-09-22 18:29:05 +01:00
Corwin
3da5c21813
use SyncUnsafeCell rather than static muts
2024-09-22 16:22:08 +01:00
Corwin
051d9ab85d
use export name
2024-09-22 16:20:18 +01:00
Corwin
56e3de3c62
add SyncUnsafeCell implementation
2024-09-22 16:19:00 +01:00
Gwilym Inzani
18572658cb
Mark the generated entry as doc(hidden) ( #761 )
...
Should hopefully fix the currently failing build
- [x] no changelog update needed
2024-09-18 18:32:25 +01:00
Gwilym Inzani
ab46121934
Mark the generated entry as doc(hidden)
2024-09-18 18:24:23 +01:00
Gwilym Inzani
7a2ef4338c
Update Javascript packages (non-major) ( #758 )
...
This PR contains the following updates:
| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[@types/node](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node )
([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node ))
| [`20.16.2` ->
`20.16.4`](https://renovatebot.com/diffs/npm/@types%2fnode/20.16.2/20.16.4 )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
|
[@types/react](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react )
([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react ))
| [`18.3.4` ->
`18.3.5`](https://renovatebot.com/diffs/npm/@types%2freact/18.3.4/18.3.5 )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
| [styled-components](https://styled-components.com )
([source](https://redirect.github.com/styled-components/styled-components ))
| [`6.1.12` ->
`6.1.13`](https://renovatebot.com/diffs/npm/styled-components/6.1.12/6.1.13 )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
---
### Release Notes
<details>
<summary>styled-components/styled-components
(styled-components)</summary>
###
[`v6.1.13`](https://redirect.github.com/styled-components/styled-components/compare/v6.1.12...99c02f52d69e8e509c0bf012cadee7f8e819a6dd )
[Compare
Source](https://redirect.github.com/styled-components/styled-components/compare/v6.1.12...v6.1.13 )
</details>
---
### Configuration
📅 **Schedule**: Branch creation - "on tuesday" (UTC), 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.
👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config
help](https://redirect.github.com/renovatebot/renovate/discussions ) if
that's undesired.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
This PR was generated by [Mend Renovate](https://mend.io/renovate/ ).
View the [repository job
log](https://developer.mend.io/github/agbrs/agb ).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC41OS4yIiwidXBkYXRlZEluVmVyIjoiMzguNTkuMiIsInRhcmdldEJyYW5jaCI6Im1hc3RlciIsImxhYmVscyI6W119-->
2024-09-04 16:29:22 +01:00
renovate[bot]
69fe5a3c32
Update Javascript packages (non-major)
2024-09-04 01:34:42 +00:00
Gwilym Inzani
9cbf29ed98
Even more tracker commands ( #757 )
...
Adds support for some of `Retrigger` and `Sample Offset`
- [x] Changelog updated
2024-09-01 13:33:50 +01:00
Gwilym Inzani
d4a2d9357f
Change out the examples
2024-08-28 17:46:35 +01:00
Gwilym Inzani
fee2575cb7
Retrigger with volume
2024-08-28 17:38:24 +01:00
Gwilym Inzani
48f7020f2c
Should track previous retriggers for retrigger of 0
2024-08-28 17:00:19 +01:00
Gwilym Inzani
5f76fcc316
May as well support 0xE8
2024-08-28 16:48:28 +01:00
Gwilym Inzani
9fa171b712
E9 is the same as R0x
2024-08-28 16:46:08 +01:00
Gwilym Inzani
54a31934b2
Add support for retrigger command
2024-08-28 16:43:59 +01:00
Gwilym Inzani
559367f607
Add sample offset command support
2024-08-28 16:32:28 +01:00
Gwilym Inzani
ea792f4768
Print the actual effect character
2024-08-28 16:10:26 +01:00
Gwilym Inzani
6c4e83197d
Add a method to stop the tracker ( #756 )
...
I've done some horrible hacks for this in our jam games. Better to have
a first-party solution to stopping channels in the tracker.
- [x] Changelog updated
2024-08-28 15:58:02 +01:00
Gwilym Inzani
040d3d5604
Changelog entry about stopping the tracker
2024-08-28 15:49:38 +01:00
Gwilym Inzani
8cec568a5b
Add a method to stop the tracker
2024-08-28 15:48:43 +01:00
Gwilym Inzani
84a3c0b6a0
Allowing imported graphics to be exposed as pub mod ( #738 )
...
- [X] Changelog updated
This PR adds the possibility for graphics imported through
`include_background_gfx!` to be used as public modules, e.g.:
```rust
/// graphics.rs
agb::include_background_gfx!(pub background, "d77bba", tiles256 => 256 "map.aseprite");
/// main.rs
#![no_std]
#![no_main]
use agb::display::Priority;
use agb::display::tiled::RegularBackgroundSize::Background64x64;
use agb::display::tiled::{TiledMap, TileFormat};
mod graphics;
#[agb::entry]
fn main(mut gba: agb::Gba) -> ! {
let (tiled, mut vram) = gba.display.video.tiled1();
let vblank = agb::interrupt::VBlank::get();
let tileset = &graphics::background::tiles256.tiles;
vram.set_background_palettes(graphics::background::PALETTES);
let mut bg = tiled.regular(Priority::P2, Background64x64, TileFormat::EightBpp);
for y in 0..64u16 {
for x in 0..64u16 {
bg.set_tile(&mut vram, (x, y), tileset, graphics::background::tiles256.tile_settings[1]);
}
}
bg.set_visible(true);
bg.commit(&mut vram);
loop {
vblank.wait_for_vblank();
}
}
```
2024-08-28 15:02:41 +01:00
Gwilym Inzani
f25fe7f707
Add docs for pub exports of backgrounds
2024-08-28 14:55:12 +01:00
Gwilym Inzani
a0d5a2c269
Update Javascript packages (non-major) ( #746 )
...
[](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.14.12` ->
`20.16.2`](https://renovatebot.com/diffs/npm/@types%2fnode/20.14.12/20.16.2 )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
|
[@types/react](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react )
([source](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react ))
| [`18.3.3` ->
`18.3.4`](https://renovatebot.com/diffs/npm/@types%2freact/18.3.3/18.3.4 )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
|
[eslint-config-next](https://nextjs.org/docs/app/building-your-application/configuring/eslint#eslint-config )
([source](https://togithub.com/vercel/next.js/tree/HEAD/packages/eslint-config-next ))
| [`14.2.5` ->
`14.2.7`](https://renovatebot.com/diffs/npm/eslint-config-next/14.2.5/14.2.7 )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
| [next](https://nextjs.org )
([source](https://togithub.com/vercel/next.js )) | [`14.2.5` ->
`14.2.7`](https://renovatebot.com/diffs/npm/next/14.2.5/14.2.7 ) |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
| [sharp](https://sharp.pixelplumbing.com )
([source](https://togithub.com/lovell/sharp ),
[changelog](https://togithub.com/lovell/sharp/blob/main/docs/changelog.md ))
| [`0.33.4` ->
`0.33.5`](https://renovatebot.com/diffs/npm/sharp/0.33.4/0.33.5 ) |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
---
### Release Notes
<details>
<summary>vercel/next.js (eslint-config-next)</summary>
###
[`v14.2.7`](https://togithub.com/vercel/next.js/compare/v14.2.6...v14.2.7 )
[Compare
Source](https://togithub.com/vercel/next.js/compare/v14.2.6...v14.2.7 )
###
[`v14.2.6`](https://togithub.com/vercel/next.js/compare/v14.2.5...v14.2.6 )
[Compare
Source](https://togithub.com/vercel/next.js/compare/v14.2.5...v14.2.6 )
</details>
<details>
<summary>vercel/next.js (next)</summary>
###
[`v14.2.7`](https://togithub.com/vercel/next.js/compare/v14.2.6...v14.2.7 )
[Compare
Source](https://togithub.com/vercel/next.js/compare/v14.2.6...v14.2.7 )
###
[`v14.2.6`](https://togithub.com/vercel/next.js/compare/v14.2.5...v14.2.6 )
[Compare
Source](https://togithub.com/vercel/next.js/compare/v14.2.5...v14.2.6 )
</details>
<details>
<summary>lovell/sharp (sharp)</summary>
###
[`v0.33.5`](https://togithub.com/lovell/sharp/compare/v0.33.4...v0.33.5 )
[Compare
Source](https://togithub.com/lovell/sharp/compare/v0.33.4...v0.33.5 )
</details>
---
### Configuration
📅 **Schedule**: Branch creation - "on tuesday" (UTC), 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.
👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://togithub.com/renovatebot/renovate/discussions ) if
that's undesired.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
This PR was generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/ ). View the
[repository job log](https://developer.mend.io/github/agbrs/agb ).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy40NDAuNyIsInVwZGF0ZWRJblZlciI6IjM4LjU2LjAiLCJ0YXJnZXRCcmFuY2giOiJtYXN0ZXIiLCJsYWJlbHMiOltdfQ==-->
2024-08-28 14:52:41 +01:00