Michel Heily
0f64f07133
fixes
...
Former-commit-id: bfa963ac13e76b7e3cf2eb2e23651eb3189d3cbb
Former-commit-id: 6602c3b0a22327d5ceb85063c9934b3490e1da01
2022-09-12 00:41:35 +03:00
Michel Heily
407818d32a
Deprecate InputDevice trait
...
Former-commit-id: 4d25e16d0a6a0a55a5204c28230620dba3531e08
Former-commit-id: da149cb9ebb1258693272a4e9daa615902d99e6e
2022-09-12 00:11:50 +03:00
Michel Heily
f3fac5e3b8
Implement new gdbstub target for arm7tdmi, add a small example & test as well
...
Former-commit-id: 16ba6dada28f8beb5971413acbbe153a26aa9ec3
Former-commit-id: f0661ad20245110797fd99fe16d3fb11382bb78a
2022-09-08 23:40:38 +03:00
Michel Heily
4c5d35c5d1
Clippy fixes
...
Former-commit-id: 6107b2249a5b5e42eb5add5f6a0c37c373d77147
Former-commit-id: 1387473cc566db7eb898222b319cc1bcfde886f5
2022-09-08 23:40:38 +03:00
Michel Heily
12d9edf5c4
Fix some cargo-clippy, and broken sub-crates
...
Former-commit-id: 93db7bc11bff9a48f4d66e0a378cd77ab42ca197
Former-commit-id: a6ce714c2a6a4112ff30d748c0686b1b2da41c6b
2022-09-05 00:34:00 +03:00
Michel Heily
28fb9ffa70
chore: Refactor into crates
...
Been wanting to do this for a long time.
This does impose performance issues when building with the vanilla
release profile, as cargo does not perform optimizations across crate
boundary (we care mostly about inlining).
so I added release-lto profile
Also fixed some broken stuff I found across the project, meh
Former-commit-id: 06d03263cc6245313f3ea22c715479ab6da7c4d4
Former-commit-id: f93abd10c67ea8a3b8072b47462be5eca4f3e02b
2022-09-04 23:54:44 +03:00
Michel Heily
76d9102231
arm: remove old code
...
Former-commit-id: 906a5b902726c000fcdc1a01443c6662da72b2c9
Former-commit-id: ab2dac2ae2c066758645026b6484cd1a9355831a
2021-07-03 22:29:55 +03:00
Michel Heily
ff472db249
core: debugger: Use mut references for GameBoyAdvance
...
Former-commit-id: e1490c0777537e7d8eee4e9d1fbb53f8c957fdc7
Former-commit-id: f6be5b7940c4f3d517fa564830be607321ade534
2021-06-09 01:24:31 +03:00
Michel Heily
2ec52fb722
sdl2: Add silent mode
...
Former-commit-id: b8e3a8809501f32f819b74a1e4dd094d77a4b367
Former-commit-id: 027be1f05ae9f274e6a3527d209ac5ff696d8c56
2021-06-09 00:54:09 +03:00
Michel Heily
1ca261e5c7
core: Get rid of that BoxedMemory nonsense
...
Just directly impl Bus trait for Box<[u8]>
Former-commit-id: 7b8a29972520afb7ff197708b9c2146b293a5f29
Former-commit-id: 0c528165ed899fad14b1e25995fdfe8ae004da2a
2020-10-17 16:58:52 -07:00
Michel Heily
bce4456f42
[breaking-change] Remove game ROM and bios from savestate file.
...
This breaks the API of GameBoyAdvanvce::save_state and restore_state methods.
Currently as WIP only SDL2 frontend will adjust.
Former-commit-id: 1df15c8697fef0f6adddb07a6d653947c622ba12
Former-commit-id: 2ea339dc6a0d1e7539d167c4df29694b408303da
2020-10-17 06:36:02 -07:00
Michel Heily
3c6628138c
platform: Minor fixes and adjustments from previous commit
...
Former-commit-id: b8e8f73c8202f93e4bb2a575ee3d1b3083ddabb1
Former-commit-id: 355c634b4da8fbea1d228da8fc95e37012237bbd
2020-09-30 00:47:30 +03:00
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
879374a9b0
Refactor dir rustboyadvance-core -> core
...
Former-commit-id: 5af970f6d56d321472f2b91885e41ca113390986
Former-commit-id: 748e222a36362eb5ac8909068c32f2d3f98ca536
2020-05-30 13:43:37 +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
e1ec96f9e4
Use elf-support feature in sdl2 frontend
...
Former-commit-id: 70d1718ae5a18b8ffe7d03fd2a251479224a41ac
Former-commit-id: 54ec2c969dca62644b28bd936e2a03b3786efc52
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
6161892237
sdl2: Only import things under Windows in build.rs
...
To suppress unused import warnings under Linux.
Former-commit-id: 8730aa1d753861e5179f85ee9c95c66ad0dd62bd
Former-commit-id: 505dc43254fa109cd96feee8de5f6d8e2d30abf3
2020-05-15 16:25:27 +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
fc988ba5b5
Add SDL2 binaries and use them when building locally
...
Former-commit-id: f51fad54302b9a0af416cfccdb318fede4384b6a
Former-commit-id: e8362f4552c6eab911751b7900bca0910eff1dd4
2020-04-30 19:52:34 +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