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
f65e22cc41
core/gpu: Fix bitmap mode displaying invalid sprites
...
fixes #107
Former-commit-id: 4b307c80f0519a5034dad1188d285cb44a2c8eeb
Former-commit-id: 8879aababad1aef0690adb0a88cdeb36368c024a
2020-05-30 13:41:10 +03:00
Michel Heily
dc59d7f71f
core/gpu: Optimize VRAM accesses all over the place
...
Former-commit-id: a14fc75968c5ce6016acc88fe2cc24eaac8b305b
Former-commit-id: 41f3142ea586c981cd5ccc7eb5a69f49bdcc591d
2020-05-30 13:13:25 +03:00
Michel Heily
71074c9c87
core/gpu: Implement forced blanking
...
fixes #102
Former-commit-id: 8d0557a63121eab20f7299d75c4c7e577d5f5612
Former-commit-id: 668c728b5ebd6103bf9d15115cb3912ea8c6f4b6
2020-05-26 18:06:02 +03:00
Michel Heily
441f5ad906
Refactor IRQ signaling
...
Use Rc<Cell> instead of passing `&mut irqs` all around.
The runtime impact is two additional size_t's per each holder of the
shared pointer.
Former-commit-id: afd3188c31608ebcf062256a7ad51575dbc90d8b
Former-commit-id: 22e0e01953968cee592b5408677e557059669c31
2020-05-26 01:49:25 +03:00
Michel Heily
91515b6b10
core/gpu: Ignore top bit when reading colors from the palette
...
According to CowBite, the top bit is supposed to be ignored.
fixes #99
Former-commit-id: 28a43311726f9ce5ef26c77687fedecc33b286e0
Former-commit-id: df0b025ed6d51e36bcffd4c91250858167b42f40
2020-05-23 01:55:40 +03:00
Michel Heily
d2f4b55f21
core/gpu: Remove irrelevant comment
...
Former-commit-id: d1c8efd0aefe18dbb71dc8417e09d65019f3d3c2
Former-commit-id: a9b97120e5ae524d1b9fdc9c6296477ff014f938
2020-05-20 22:38:25 +03:00
Michel Heily
9607b16e4f
core/gpu: Add a test for the gpu state machine.
...
This test also caught a bug where hblank flag from the last
vblank-hblank would linger on the next HDraw.
Former-commit-id: b8916badc4bd874d9493229299150f6b2f00f5ed
Former-commit-id: 8ada7ccf3e65e7272d9bb828101520f1589cb4c4
2020-05-20 22:35:53 +03:00
Michel Heily
b60ad3114c
core: Decouple SysBus from Gpu and re-implement Gpu::update
...
Former-commit-id: 6ca6989192f0925f4d2eb0e5029a2bcf66869ee9
Former-commit-id: 562d89f627a9e3a9153a7a0db6830fd9b5875967
2020-05-20 21:23:44 +03:00
Michel Heily
564f1dcb39
bugfix: Properly handle VCOUNT interrupt edge case for line 227.
...
fixes #97
Former-commit-id: 6e1cd347e82edfd6eca2b89e6e2a86e68e39d580
Former-commit-id: e9aeb8cc4dd503cfb3da4552e5618de5e982039b
2020-05-20 19:54:27 +03:00
Michel Heily
948bac03a2
Fix copy-paste bug from previous commit
...
Former-commit-id: 849acd1852bbe3126a6dde0f21c9754b364e24cb
Former-commit-id: 31e837d620cb0858aec4ddf3c133c254bbc1f1b7
2020-05-19 19:30:35 +03:00
Michel Heily
309ae2f795
core: Handle 8bit writes to video memory
...
fixes #96
Former-commit-id: efdb6c0af0ef6ee2a74042b8725306103703fcfe
Former-commit-id: 1f0e7f7135649ab13c4adcb72bc5e9b432a4905f
2020-05-18 21:11:49 +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