Commit graph

273 commits

Author SHA1 Message Date
Gwilym Kuiper 3468fbb761 Add myself as an author for agb 2021-07-21 19:36:24 +01:00
Corwin 97cbc8c9a6
Merge pull request #90 from gwilymk/multiboot-support
Multiboot support
2021-07-19 17:53:01 +01:00
Corwin b0afeade99
Merge pull request #86 from agbrs/mgba-test-runner-cycles
Mgba test runner cycles
2021-07-13 22:30:05 +01:00
Corwin Kuiper c722c99f9e set cpu targets for asm and rust 2021-07-13 19:17:08 +01:00
Corwin Kuiper 220ddac280 use different optimisation settings 2021-07-03 22:19:02 +01:00
Corwin Kuiper 744c7a8bb4 get cycles 2021-07-03 22:18:53 +01:00
Corwin Kuiper e32a086122 Release agb v0.5.0 2021-07-03 15:51:13 +01:00
Gwilym Kuiper 7e3b983e80 Reduce duplication in crt0.s
Couldn't move the interrupt setup though :/. Not sure why
2021-06-26 23:00:10 +01:00
Gwilym Kuiper d2cad77eb9 Add multiboot support 2021-06-26 22:25:27 +01:00
Gwilym Kuiper 0b5d6f7978 Add a method to stop a playing sound 2021-06-25 22:26:00 +01:00
Gwilym Kuiper bd15a87c4d Ensure you don't hand over an already done channel 2021-06-25 22:20:18 +01:00
Gwilym Kuiper 025f4f5a91 Fix clippy lints by removing lifetimes 2021-06-25 22:18:40 +01:00
Gwilym Kuiper 90551b0ba1 Calculate the panning differently to ensure left and right ears get same amounts 2021-06-25 22:12:03 +01:00
Gwilym Kuiper 290d546248 Add lowering the volume to the example 2021-06-25 22:01:50 +01:00
Gwilym Kuiper 3c0d881a45 Allow for volume control 2021-06-25 21:57:24 +01:00
Gwilym Kuiper c81d73f8d5 Don't panic if the song has finished 2021-06-25 21:54:12 +01:00
Gwilym Kuiper 773729de98 Update example to allow you to change where the sound is coming from 2021-06-25 21:53:42 +01:00
Gwilym Kuiper 80ce5173e1 Provide a way to get the channel again 2021-06-25 21:41:35 +01:00
Gwilym Kuiper 27a470c648 Return a way to get back at the channel 2021-06-25 21:38:10 +01:00
Gwilym Kuiper 754abd58bd Return an indication as to what the sound ID is 2021-06-25 21:31:17 +01:00
Gwilym Kuiper 2409cd5538 Remove .high_priority() 2021-06-25 21:29:37 +01:00
Gwilym Kuiper 45b8480a35 Allow mutation of the SoundChannel 2021-06-25 21:27:46 +01:00
Corwin Kuiper 1b3358345e fix by showing object 2021-06-24 20:10:05 +01:00
Corwin e6a1dbae12
Merge pull request #82 from corwinkuiper/renovate/bitflags-1.x
Update Rust crate bitflags to 1.2
2021-06-21 01:18:59 +01:00
Renovate Bot 6681897494
Update Rust crate bitflags to 1.2 2021-06-21 00:13:32 +00:00
Renovate Bot d06b3518fa
Update Rust crate agb_image_converter to 0.4.0 2021-06-21 00:02:36 +00:00
Corwin Kuiper 5a00e735e9 Release agb v0.4.1 2021-06-21 00:00:27 +01:00
Corwin Kuiper d48eab29a8 Release agb v0.4.0 2021-06-20 23:55:41 +01:00
Gwilym Kuiper 574e91df2f Add sound priorities 2021-06-20 21:59:34 +01:00
Corwin 53cf1a5064
Merge pull request #67 from gwilymk/more-exciting-mixer
More exciting mixer
2021-06-20 21:49:39 +01:00
Gwilym Kuiper db4233ccee Rename mixer.rs to sw_mixer.rs 2021-06-20 21:29:44 +01:00
Corwin Kuiper ece5595d18 bump to 0.3.1 2021-06-20 21:06:57 +01:00
Corwin Kuiper 3546ce9ca4 implement clone and copy 2021-06-20 21:05:50 +01:00
Gwilym Kuiper 057467ecf8 Only do the if statement once per channel rather than once per index 2021-06-18 22:56:49 +01:00
Gwilym Kuiper ea9441f40b Don't need to go through archive.org 2021-06-18 22:29:31 +01:00
Gwilym Kuiper 11a74979eb Fix unaligned write 2021-06-18 22:29:31 +01:00
Gwilym Kuiper e88eb16c62 Calculate panning correctly 2021-06-18 22:29:31 +01:00
Gwilym Kuiper d28b885e29 Shouldn't output to the left with channel B 2021-06-18 22:29:31 +01:00
Gwilym Kuiper 898620112b Reinstate panning 2021-06-18 22:29:31 +01:00
Gwilym Kuiper bcee6be7df Fix issues discovered while testing 2021-06-18 22:29:31 +01:00
Gwilym Kuiper f82ed3d7c1 Keep track of whether a channel is done 2021-06-18 22:29:31 +01:00
Gwilym Kuiper 063af3fc40 Panning working? 2021-06-18 22:29:31 +01:00
Gwilym Kuiper 9b77ab7587 Allow controlling of playback speed 2021-06-18 22:29:31 +01:00
Gwilym Kuiper 5b1f85a619 Make the current position in the audio sample a fix point 2021-06-18 22:29:31 +01:00
Gwilym Kuiper 54e9498886 Add usize implementation for Number 2021-06-18 22:29:31 +01:00
Gwilym Kuiper a41bb0b89b Have 2 buffers for left or right control 2021-06-18 22:29:31 +01:00
Gwilym Kuiper 74f2fdbc8b Tell GBA that we want 2 channels 2021-06-18 22:29:31 +01:00
Gwilym Kuiper c5d58e83a7 Add ability for DMA2 to do something 2021-06-18 22:29:31 +01:00
Gwilym Kuiper ffd4f8e773 Extract mixer code to mixer.rs 2021-06-18 22:29:31 +01:00
Gwilym Kuiper 94d15de3f4 Move GBA hardware related stuff to hw.rs 2021-06-18 22:29:31 +01:00
Gwilym Kuiper 5d958d685c Move mixer to its own folder 2021-06-18 22:29:31 +01:00
Corwin Kuiper e77152ef1b better mul and div by integer for fixed num type 2021-06-16 19:14:22 +01:00
Corwin Kuiper de546984ba add line for objdump 2021-06-16 19:00:08 +01:00
Corwin Kuiper 517ffd6dee 0.3.0 2021-06-16 14:05:46 +01:00
Corwin Kuiper 1a2e04f4cc fix tile copier 2021-06-13 15:06:47 +01:00
Corwin Kuiper 760796b1db fix error in full map drawing 2021-06-13 12:26:16 +01:00
Gwilym Kuiper 100764b38c Add manhattan distance method 2021-06-12 21:02:31 +01:00
Corwin Kuiper 52a97594fd fix examples 2021-06-12 20:59:30 +01:00
Corwin Kuiper 4aff120c68 add customisation of default 2021-06-12 20:59:23 +01:00
Corwin Kuiper 9dedf26619 use current pressed buttons when creating new controller 2021-06-12 18:54:45 +01:00
Gwilym Kuiper 76d3f55606 Implement divassign for vector 2d 2021-06-12 15:09:54 +01:00
Corwin Kuiper da5ed768de add priority 2021-06-12 13:56:29 +01:00
Corwin Kuiper 6268c607c3 derive ordering and equation 2021-06-12 11:13:49 +01:00
Corwin Kuiper 67e20b1e72 square rooting and magnitudes 2021-06-12 11:13:40 +01:00
Corwin Kuiper 682bbc9a50 change everything to explicitly use u32 2021-06-11 20:47:46 +01:00
Corwin Kuiper b08e8d24be from tuple accepts anything that is convertable 2021-06-11 20:38:06 +01:00
Corwin f57a250c1c
Delete iwillnotletyouletmedown.gba 2021-06-08 20:13:49 +01:00
Corwin Kuiper 8b206ba40c changed to use rotation directly
as was previously written, this would not do anything as integer rotation is an identity.
2021-06-08 19:12:25 +01:00
Corwin Kuiper a5f4673806 set position with vector 2021-06-08 19:08:45 +01:00
Corwin Kuiper 4f21b40cfc make multiply and divide more generic 2021-06-08 17:18:44 +01:00
Corwin Kuiper 301a22d93a add type for making unit vector from angle 2021-06-08 17:10:27 +01:00
Corwin Kuiper 1ac9e54296 fix sin implementation 2021-06-08 17:08:05 +01:00
Corwin Kuiper 81db1b861c multiplication and division by constant 2021-06-08 16:46:13 +01:00
Corwin Kuiper 0ea0f1df3f implement base changing 2021-06-08 15:54:25 +01:00
Corwin Kuiper 527729f5ba I am aware this uses too many arguments, but it's private so I don't care too much 2021-06-08 12:34:24 +01:00
Corwin Kuiper 4aa2a18058 remove unused imports 2021-06-08 12:32:51 +01:00
Corwin Kuiper 9952771bd4 use new tuple implementation 2021-06-08 12:32:23 +01:00
Corwin Kuiper d6eff37b8a add from for tuple 2021-06-08 12:31:27 +01:00
Corwin Kuiper 2163a3b490 fix examples 2021-06-08 12:31:20 +01:00
Corwin Kuiper df954505bf update tiled functions to use new vector2d 2021-06-08 12:31:06 +01:00
Corwin Kuiper 77f6512ba9 give access to underlying coordinates 2021-06-08 12:25:10 +01:00
Corwin Kuiper 161a429320 should not be public 2021-06-08 12:23:13 +01:00
Corwin Kuiper 0283790185 a vector implementation 2021-06-08 12:22:25 +01:00
Corwin Kuiper b0329bdcea fix examples and tests 2021-06-07 13:38:18 +01:00
Corwin Kuiper c106efa8b9 change to system where drawing must provide the map 2021-06-07 13:38:11 +01:00
Corwin Kuiper 86d5c7ca35 optimise getting reference and allow for updating a specific area 2021-06-06 23:27:40 +01:00
Corwin Kuiper 6b725e90ad stop using references 2021-06-06 18:30:42 +01:00
Corwin Kuiper 900b594039 use easily optimisable division for truncate 2021-06-06 18:27:15 +01:00
Corwin Kuiper 87bace3584 let user decide whether to use slice or refcell 2021-06-06 16:35:38 +01:00
Corwin 342aac005c
Merge pull request #63 from corwinkuiper/split-object
move object out of tiled0
2021-06-06 16:18:18 +01:00
Corwin Kuiper 7e837fc3e8 move object out of tiled0 2021-06-06 15:56:01 +01:00
Gwilym Kuiper 40f7975f46 Loop if requested 2021-06-06 15:48:52 +01:00
Gwilym Kuiper 86ba309377 Add ability to set that a channel should loop 2021-06-06 15:47:57 +01:00
Gwilym Kuiper 0875e640de Handle sounds of length not exactly a multiple of SOUND_BUFFER_SIZE 2021-06-06 14:48:01 +01:00
Gwilym Kuiper 333797332e Fix the example after rebase 2021-06-06 14:21:03 +01:00
Gwilym Kuiper 3f3b34c250 Fix clippy warning 2021-06-06 14:17:08 +01:00
Gwilym Kuiper e181f7a751 Refactor to make it a bit more obvious what the write buffer is 2021-06-06 12:58:31 +01:00
Gwilym Kuiper 106e53f917 Use the new mixer in the example 2021-06-06 12:58:31 +01:00
Gwilym Kuiper f126c7f4f4 Make SoundChannel public 2021-06-06 12:58:31 +01:00
Gwilym Kuiper d7a8928955 Add should_loop option 2021-06-06 12:58:31 +01:00