Commit graph

2385 commits

Author SHA1 Message Date
Gwilym Inzani 9c27e9ca4d Add section about agb-hashmap in the readme 2023-04-23 17:48:55 +01:00
Gwilym Inzani f667804cf8 Add section in readme about miri 2023-04-23 17:47:15 +01:00
Gwilym Inzani db0eab7589 Add miri test step 2023-04-23 17:46:00 +01:00
Gwilym Inzani 4ade408d30 Avoid the really slow test under miri 2023-04-23 17:43:30 +01:00
Gwilym Inzani d80e3f876e Extract agb hashmap to its own crate 2023-04-23 17:39:00 +01:00
Corwin 0ed84d699a
Remove alloc error handler (#417)
* Increases minimum nightly version

- [x] No changelog update needed
2023-04-23 14:00:34 +01:00
Corwin da61ba78ae
remove alloc error handler 2023-04-23 12:50:15 +01:00
Corwin e26a9c2c24
Merge remote-tracking branch 'upstream/master' into new-objects 2023-04-22 00:46:41 +01:00
Corwin 7e1f996d90
correct doc test 2023-04-22 00:40:06 +01:00
Corwin 6417570a51
add docs 2023-04-21 17:14:51 +01:00
Gwilym Inzani 06db23d574
New include gfx macro (#414)
Replaces `include_gfx!` with `include_background_gfx!` which is much
nicer since it doesn't require the external toml file. See the example
repos for how much better it is :).

Also adds support for aseprite files in `include_background_gfx` and
uses that ability where we still have the original files.

- [x] Changelog updated / no changelog update needed
2023-04-18 21:14:28 +01:00
Corwin 15411aaec5
Move mixer frame (#416)
Some cracking maybe

- [x] No changelog update needed
2023-04-18 20:42:16 +01:00
Gwilym Inzani 1e0102d615 Also update the combo rom 2023-04-18 20:29:45 +01:00
Corwin f3c4593a51
move mixer frame 2023-04-18 20:25:31 +01:00
Gwilym Inzani 6575a067b5 Fix documentation compilation 2023-04-18 20:07:08 +01:00
Corwin 542e683dc8
Purple night fixes (#415)
A few changes to the purple night to make it so much better!
* Fixes player positioning to be in the centre, no more drastic change
of position when changing directions, and you don't go all the way into
walls.
* Fixes rounding of collision to round rather than floor, this means the
left and right walls are more equivalent.
* Fixes the "jitter" between objects and backgrounds where objects would
move by a pixel, but the background wouldn't.
- In general we're more careful to do all display changes at once rather
than throughout the frame.
  - Note that for future games this is the correct way of doing things.
* Fixes slime collision boxes to match the extent of the animation.
* Use more i32 rather than u16, we're not running out of memory!
* Fixes memory leak caused by dying (previously you could only die a
certain number of times before the game crashes).
* Moved sound to be during vblank
- This is a negative change but resolves some cracking issues. I can't
see why this should be the case, further work may be required here.

- [x] No changelog update needed
2023-04-18 00:27:13 +01:00
Corwin e601374207
pull out common part of loop 2023-04-18 00:12:20 +01:00
Corwin 3f9fdd7c37
just use equals like before 2023-04-17 23:53:55 +01:00
Corwin f67ffac227
prioritise audio and deprioritise objects 2023-04-17 23:48:48 +01:00
Corwin a5c1d62cad
pointless capacity 2023-04-17 23:48:26 +01:00
Corwin 8bef214797
fix jitter 2023-04-17 23:48:15 +01:00
Corwin a249404063
fix player collision mask 2023-04-17 23:48:00 +01:00
Corwin 692890b6d6
fix jitter between objects and background 2023-04-17 23:34:09 +01:00
Corwin c970ab9362
fix positioning issues due 2023-04-17 23:31:05 +01:00
Gwilym Inzani bace62b8e3 Don't use nightly only function 2023-04-14 21:16:12 +01:00
Gwilym Inzani 293bb15c7b Don't need this any more now I'm finished debugging 2023-04-13 22:46:03 +01:00
Gwilym Inzani eb4476043c Add changelog entry 2023-04-13 22:35:33 +01:00
Gwilym Inzani 45343efe52 Update lockfiles 2023-04-13 22:33:59 +01:00
GBA bot 753f59e0e0 Allow importing aseprite backgrounds directly 2023-04-13 22:33:26 +01:00
Gwilym Inzani 498236d064 Remove tile size 2023-04-13 22:18:13 +01:00
Gwilym Inzani 11891e574f Remove some features from syn 2023-04-13 22:15:53 +01:00
Gwilym Inzani 875a0fbb65 Remove unneeded stuff from image-converter 2023-04-13 22:14:44 +01:00
Gwilym Inzani f53cd9b25a Write some terrible documentation 2023-04-13 22:06:06 +01:00
Gwilym Inzani eac350b391 Replace example usage with the new macro 2023-04-13 22:01:37 +01:00
Gwilym Inzani 65877b1d32 Delete this file now 2023-04-13 21:53:28 +01:00
Gwilym Inzani cb127c7924 New include_gfx macro 2023-04-13 21:53:13 +01:00
Gwilym Inzani 63ca9b3cdb
Publish should publish gbafix (#411)
Publishes agb-gbafix in addition to everything else on a release. Also
uses the fact that cargo publish no longer returns early.

- [x] Changelog updated / no changelog update needed
2023-04-12 15:12:25 +01:00
Gwilym Inzani 0e006bd3d5 Update publish justfile command to accept arguments 2023-04-12 15:12:00 +01:00
Gwilym Inzani 6431896aee
Use .take() rather than replace(..., None) (#412)
Fixes clippy lint
2023-04-12 14:13:16 +01:00
Gwilym Inzani 5f59a01c21 Use .take() rather than replace(..., None) 2023-04-12 13:49:22 +01:00
Gwilym Inzani f677ff1840 Fix clippy lints 2023-04-11 22:30:47 +01:00
Gwilym Inzani 63995995ac Make publishing a bit smarter 2023-04-11 22:29:23 +01:00
Gwilym Inzani 70979fc7da Publish gbafix 2023-04-11 21:54:48 +01:00
Corwin fc5ce97db4
Release v0.14.0 2023-04-11 21:28:22 +01:00
Corwin fd79611dc3
update lock files 2023-04-11 21:27:09 +01:00
Corwin 79e43ccb8b
Interrupt soundness (#408)
Makes interrupt sound, albeit unsafe.
Also makes allocator not pause interrupts (and therefore not interrupt
safe!!!)

- [x] Changelog updated
2023-04-11 21:09:36 +01:00
Gwilym Inzani 7d9e7318a3
Custom gbafix (#410)
Start internally using a custom gbafix implementation which will help
remove the need for `arm-none-eabi-binutils`.

Effectively does objcopy + gbafix in one.

Also replaced all the references to `gbafix` in the docs to instead use
`agb-gbafix`.

- [x] Changelog updated / no changelog update needed
2023-04-11 21:03:09 +01:00
Corwin aea64e974f
change of language 2023-04-11 20:59:45 +01:00
Gwilym Inzani 0d9cc6c1f7 Replace references to gbafix with agb-gbafix 2023-04-11 20:09:05 +01:00
Gwilym Inzani 8af41a9b3c Add required fields for publishing 2023-04-09 18:40:33 +01:00