Corwin
a2c127b72b
pull out allocator_api feature
2024-05-14 22:38:42 +01:00
Gwilym Inzani
ae2eb5b448
Use the correct padding
2024-05-14 21:38:11 +01:00
Gwilym Inzani
94729e45ec
Handle failure to allocate QR code on panic
2024-05-14 21:36:55 +01:00
Gwilym Inzani
8c2e079ec2
Mark the fact that it was a double panic in the fatal message
2024-05-12 14:08:03 +01:00
Gwilym Inzani
642c3c1b79
Better comments around the panic handler
2024-05-12 14:06:42 +01:00
Gwilym Inzani
18b25e242e
Handle this in both panic handlers
2024-05-12 14:06:41 +01:00
Gwilym Inzani
9fe526d0bc
Prevent a double panic
2024-05-12 14:06:14 +01:00
Gwilym Inzani
8ede32ea7b
Mark the test as no_run rather than rust
2024-04-30 20:53:06 +01:00
Gwilym Inzani
37e9fe5066
Add a set_next method on OamIterator
2024-04-30 20:39:50 +01:00
Corwin
fe972850e3
Allow customisation of the backtrace website ( #647 )
2024-04-23 20:38:46 +01:00
Corwin
a65f6402be
fix url to point to us
2024-04-23 20:30:40 +01:00
Corwin
1c9e829bd1
have website not be an option
2024-04-23 20:09:35 +01:00
Gwilym Inzani
4243592f63
Make backtraces optional ( #648 )
...
You probably don't want backtraces if you're doing multiboot and in a
few other cases.
Also #646 broke the build if you didn't use the `testing` feature, so
I've updated the `justfile` so that a CI run checks that agb builds
correctly both without the `testing` feature and without the `backtrace`
feature. The `backtrace` feature implies the testing feature to make
things a bit simpler.
- [x] Changelog updated
2024-04-21 20:07:02 +01:00
Corwin
2560f2e15e
exclusive range
2024-04-21 16:31:41 +01:00
Gwilym Inzani
580afa9335
Make the backtrace feature optional
2024-04-20 20:28:10 +01:00
Corwin
91da2c926a
allow customisation of the backtrace website
2024-04-20 14:52:08 +01:00
Corwin
4419dfb0b5
Split mgba log if too big ( #646 )
...
- [x] Changelog updated
2024-04-20 00:21:11 +01:00
Corwin
7044c08100
large logs get split into multiple prints
2024-04-20 00:09:20 +01:00
Corwin
e1a8b04616
add bounds check
2024-04-19 23:59:58 +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
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
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
0d609f6d4a
satisfy linter
2024-04-06 02:36:02 +01:00
Gwilym Inzani
37ecd48a40
Add a message about the fact that the game crashed
2024-04-03 11:16:34 +01:00
Gwilym Inzani
fe78711736
Alphabet should be static
2024-04-03 10:58:25 +01:00
Gwilym Inzani
e21d06994f
Add some tests which showed issues with the decoder
2024-04-03 10:58:06 +01:00
Gwilym Inzani
51de2ffa60
Don't need to import this macro
2024-04-02 23:38:43 +01:00
Gwilym Inzani
e0d68eec15
Correctly render in release mode
2024-04-02 23:31:02 +01:00
Gwilym Inzani
e5a8b39924
Print some extra useful information
2024-04-02 23:19:09 +01:00
Gwilym Inzani
6c9c23f79e
Change what's being printed slightly
2024-04-02 22:37:23 +01:00
Gwilym Inzani
e36145552f
gwilym_encode the stack trace and generate a qr code for debugging
2024-04-02 22:24:58 +01:00
Gwilym Inzani
3f374f3e9c
Print the entire backtrace
2024-04-01 14:05:22 +01:00
Gwilym Inzani
7708398981
Basic implementation of backtraces on panic
2024-04-01 13:05:39 +01:00
Gwilym Inzani
6fdd961b61
Kerning support ( #588 )
...
Some fonts look a bit weird if you don't do kerning.
@corwinkuiper can you check if I've done the correct thing for object
font rendering? I'm not entirely sure... Although it does render
correctly in my tests :D
- [x] Changelog updated / no changelog update needed
2024-03-29 15:17:18 +00:00
Corwin
184b11ed81
use static rather than const
2024-03-29 14:41:08 +00:00
Gwilym Inzani
2833045322
Add kerning support to the font rendering
2024-03-27 11:01:26 +00:00
Gwilym Inzani
232e5670d4
Say hello in japanese for the object_text_render example
2024-03-27 09:44:40 +00:00
Gwilym Inzani
fa1de1fab7
Should be static
2024-03-27 09:30:41 +00:00
Gwilym Inzani
f4efaf67a4
Add a japanese text rendering example
2024-03-27 09:26:11 +00:00
Gwilym Inzani
a61fe79a6f
Allow any character supported by the font
2024-03-27 09:21:06 +00:00
Gwilym Inzani
dc8a6e3884
Add a japanese font to the examples ready for testing
2024-03-27 09:09:40 +00:00
Gwilym Inzani
b25302f133
Add required doc comments
2024-03-13 14:28:48 +00:00
Gwilym Inzani
3c28324e83
Make the DMA module public
2024-03-13 14:24:14 +00:00
Corwin
9e63b2c46c
Release v0.19.1
2024-03-06 19:11:47 +00:00
Gwilym Inzani
7ebebb2942
Fix out by one in infinite scroll
2024-03-06 15:42:48 +00:00
Corwin
78146bc963
fix the incorrect copying of map tiles issue
2024-03-06 12:40:53 +00:00
Gwilym Inzani
66ec762855
Release v0.19.0
2024-03-06 09:33:58 +00:00
Gwilym Inzani
90fe94424f
Add a doc entry for into_inner
2024-03-06 09:02:40 +00:00
Gwilym Inzani
569a1c0425
Add an into_inner() function on infinite scrolled map
2024-03-06 08:59:29 +00:00
Gwilym Inzani
42eadde631
Also add default implementation for InitOnce
2024-02-28 10:09:12 +00:00
Gwilym Inzani
941eb4ade1
Add missing default implementations
2024-02-28 09:55:55 +00:00
Gwilym Inzani
4ebab07d47
Manually copy the value when you set up hblank
2024-02-27 20:40:20 +00:00
Gwilym Inzani
23550e579a
More .into()
2024-02-21 14:27:48 +00:00
Gwilym Inzani
b357acbba8
Don't need this .into() either
2024-02-21 13:01:03 +00:00
Gwilym Inzani
74451f819c
More impl Into<Vector2D<_>> and fix compile errors
2024-02-21 12:59:02 +00:00
Gwilym Inzani
4ef08a1273
Add an example of doing circular windows
2024-02-21 12:39:03 +00:00
Gwilym Inzani
a0700b3a51
Move the id storage to the window itself
2024-02-21 12:13:00 +00:00
Gwilym Inzani
a3f772c7a3
Split the examples into 2 different ones
2024-02-21 12:03:46 +00:00
Gwilym Inzani
de0c4ca4f4
Allow recolouring of the background using DMA
2024-02-21 11:56:49 +00:00
Gwilym Inzani
edcd37c203
transfer should have a lifetime on the item you're passing in
2024-02-21 11:33:09 +00:00
Gwilym Inzani
de15538d42
Add basic dma effect stuff
2024-02-21 11:28:20 +00:00
Gwilym Inzani
43718773d7
Don't use DMA outside of the eeprom case
2024-02-21 11:28:20 +00:00
Gwilym Inzani
0975530e5c
Remove unnecessary imports ( #567 )
...
Fix for latest clippy / nightly upgrade
- [x] no changelog update needed
2024-02-20 22:27:00 +00:00
Gwilym Inzani
8e25f011b4
Remove unnecessary imports
2024-02-20 22:15:31 +00:00
Constantin
1d0a25bc43
Expose hflip, vflip, priority, position
2024-02-17 16:28:43 +01:00
Constantin
da84131de6
Add priority set / get and set_visible / is_visible to maps
2024-02-16 11:21:27 +01:00
Corwin
90be23a192
remove block counting to no longer attempt to detect memory leaks
...
remove checking blocks
Signed-off-by: Corwin <corwin@kuiper.dev>
2024-02-13 21:18:14 +00:00
Corwin
844f3b29d3
Remove global alloc support from the bump allocator
...
Signed-off-by: Corwin <corwin@kuiper.dev>
2024-02-13 21:18:14 +00:00
Gwilym Inzani
ff235a75f3
rustc_hash isn't needed in agb itself any more
2024-02-09 21:58:42 +00:00
Gwilym Inzani
bd4ae7d2fb
px_offset_x and px_offset_y were unused
2024-02-09 21:38:43 +00:00
Gwilym Inzani
3f607b379a
Release v0.18.1
2024-02-06 22:36:11 +00:00
Gwilym Inzani
fec06e0c69
Include pause and resume in the example
2024-02-03 21:09:37 +00:00
Gwilym Inzani
d8110243f4
Add pausing and resuming for sound channels
2024-02-03 21:09:37 +00:00
Gwilym Inzani
ade1ba5718
Also include the docs in the agb lib itself
2024-02-03 20:22:06 +00:00
Constantin
b03268f363
Added macro doc
2024-02-03 13:40:59 +01:00
Corwin
7c752b2e97
fix ewram name
2024-01-13 14:34:59 +00:00
Corwin
e13d844f1f
use cloned rather than a map that clones
2024-01-13 10:31:00 +00:00
Corwin
1132bc2383
use addr_of_mut rather than mut reference
2024-01-13 10:30:44 +00:00
Corwin
7a6043839e
add docs for priority
2023-12-09 20:48:46 +00:00
Gwilym Inzani
35c601d4e9
Ensure that the affine background example looks consistent
2023-12-05 20:33:00 +00:00
Gwilym Inzani
7c6eaf324b
Release v0.18.0
2023-10-31 20:35:14 +00:00
Gwilym Inzani
fbd138a0cf
Add a symlink for the readme to the agb directory
...
This is an attempt to make the readme show up on crates.io
2023-10-31 20:04:18 +00:00
Gwilym Inzani
c47bef8983
Add clear and draw wide point functions to bitmap4 ( #505 )
...
- Adds a proper clear and draw wide point functions to bitmap4 for
consistency.
- I must save the bitmap modes from being removed
2023-10-24 21:57:02 +01:00
Gwilym Inzani
85a8540d44
Add missing #[cfg(test)]
2023-10-24 20:22:43 +01:00
xokz
fdab4a3e6f
Update bitmap4.rs
2023-10-23 17:28:22 -04:00
xokz
fe90d4d8d7
Update bitmap4.rs
2023-10-23 17:26:20 -04:00
Brandon Atkinson
2f1ad07e43
allow TileSetting palette to be set
2023-10-18 23:28:13 -06: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
eff075f50b
Remove the need for a linker script and move multiboot to a feature
2023-10-18 12:08:12 +01:00
Corwin
41e192eff2
set interrupt handler to its own section
2023-10-18 00:17:24 +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