Commit graph

18 commits

Author SHA1 Message Date
Michel Heily ba2eff82ac platform/android: Big re-write of native interface
Mainly convert mainloop and audio thread into native code for
performance increase. (Calling into JNI every frame was costy)

The code was cleaned up quite a bit, but I may have introduced new bugs
in this process :<


Former-commit-id: fdbc21b5ab39f3d2e36647fd1177dc9a84a16980
Former-commit-id: ac765dbee8c994e1b69cc694846511837c2685b9
2020-09-30 00:27:00 +03:00
Michel Heily c131e73ce1 Support controll remove/add events for SDL2 frontend
Former-commit-id: b0e97f9c9b3f0b32140f1425159088270be6a433
Former-commit-id: b158c5c4ac491561f33f71d2bcd5cf069d55b343
2020-05-23 11:45:25 +03:00
Michel Heily bccb31c142 Remove 'reqwest' dependency from sdl2 frontend
It was useless and lengthened the build time


Former-commit-id: 44b9c836d9b75142ef4bdb3602ede3f87b03f08f
Former-commit-id: 4c737704103654673366a7a83bf9b7614df40416
2020-05-21 23:18:20 +03:00
Michel Heily 8e1ba1117c core: More RTC work
Former-commit-id: be2955b08d65c547d206d637ae499dbad892a87a
Former-commit-id: 19f0e4e6f9c598c35fb8172d93a1519f921eb27f
2020-05-21 23:18:20 +03:00
Tibor Nagy 7646c2d6de sdl2: Clear Sdl2Video canvas before drawing onto it
Resizing the window could leave artifacts from the previous frame on
the canvas that is not overwritten by the self.canvas.copy(...) call.


Former-commit-id: c5479c3e9346a25f2d5e7a7f7b8198a71d16e16a
Former-commit-id: a2cc07de426ed1eca5437e30f4a15278065d856c
2020-05-13 22:17:44 +03:00
Tibor Nagy b980c7aa7d sdl2: Add window icon
Former-commit-id: 920d73c22836099234db2c1fe096f2d4268174e0
Former-commit-id: e2d6902830e3887255e0d816c056f199f1dc453b
2020-05-13 22:17:44 +03:00
Tibor Nagy bdf99282da sdl2: Window needs to be redrawn when restoring it from the taskbar
Fixes regression introduced by d0c525d80c3a09680cb9dfa056030db3ac6b7ce3 [formerly fc575f9f12e3782aa08f13aebdadbac50e98b2c5] [formerly fe172bedc6bf70b1022f419986585981bc9f3642]


Former-commit-id: 0f4c3ef3c12f794429ca9f498ca7314835375cc4
Former-commit-id: 9a8e5eb676e3e307af8cd5982d4d50204418c34d
2020-05-13 22:17:44 +03:00
Michel Heily 13c3e74973 sdl2: Allow toggling frame limiter with right stick
Former-commit-id: 1207b84dbd6162986e5ce790e13e1e2c0b125ebf
Former-commit-id: c7fe6ef3e5ec66fc63e5193e294bfb9d7f469afe
2020-05-12 08:09:33 +03:00
Tibor Nagy 0ae9ef14c3 Fix busy waiting in wait_for_rom() by using a blocking event iterator
Also move the redraw code into a closure to be able to call it from
two places. By the result of this waiting for ROMs no longer consumes
100% of a CPU core.


Former-commit-id: bc86ade197221eb8d357af91a3b59f4eb165adc5
Former-commit-id: 521f361872964d77b88097d7baa6a4b6b713224e
2020-05-12 08:07:13 +03:00
Michel Heily 10bed1087a Add analogue stick support for controllers in SDL2
Former-commit-id: b3ccff53ded59930a0fe997f1bbbf83fd5e356d8
Former-commit-id: c3c286d1fccf6d9fc5478cd9f6b13d6a7d670b4b
2020-05-11 20:26:26 +03:00
Tibor Nagy 59111ee062 Implement controller support for the SDL2 frontend
Former-commit-id: 60c49c399631cda7ff069e47718544ffdc93f9b8
Former-commit-id: abe52243473054ba8042a5874cefcdcfa504974a
2020-05-11 20:26:11 +03:00
Tibor Nagy b2928de614 Use positional keyboard mapping instead of symbolic in the SDL2 frontend
Former-commit-id: 778b79f4afd5d290399e518f9b1a45470c5ad3a9
Former-commit-id: 58b2e0dd75acbe01fe0f4e73c0fa73af8caa88c2
2020-05-04 21:23:33 +03:00
Michel Heily 27a7cb14cf Prettify sdl2 main loop
Former-commit-id: dc925873f8a27bc8f50392659fad3cb07adde82e
Former-commit-id: 50ca19536687bd058c906168b28a86a95c6a42d5
2020-05-01 18:36:41 +03:00
Michel Heily ef3f39defc Refactor rustboyadvance-core crate directory structure
Former-commit-id: 1aad71d283f7ec5a0f0328f9b683f51e459ae56f
Former-commit-id: 42bb30d300c17bace976d106f6da1aca8c0d7643
2020-05-01 18:13:11 +03:00
Michel Heily a56f515563 sdl2 UI improvements, Auto download Normmatt BIOS
Former-commit-id: 9a8bb7f68ba7638e758b01cef17654b6057b1db3
Former-commit-id: 83dc923063d75a167662474446f9fa7eb0ee836b
2020-05-01 17:56:26 +03:00
Michel Heily 884f39ca8f Refactor workspace structure
Former-commit-id: d6ab90563fa209b431661086f9ec2672bda02a96
2020-04-11 16:06:34 +03:00
Michel Heily 8b6d356924 Add new project icon
Derived from rusts' lovely public domain mascot, Ferris the crab!

The design is based from https://rustacean.net/assets/rustacean-flat-happy.svg


Former-commit-id: cac7eb31b5913a9a536c55f474018db0c2d7e2a8
2020-04-10 16:45:55 +03:00
Michel Heily b21cd1e3d9 Refactor project workspace and fix build
Former-commit-id: 8e264cdbc9e5290654c29e6893a121bce73c29c9
2020-04-10 00:53:41 +03:00