Michel Heily
778274b5ae
refactor: split "plat" binaries into separate crates
...
Former-commit-id: 73554b0128e036279f7ac895acb57d8f89cb1c96
2020-02-23 00:30:38 +02:00
Michel Heily
c50ab1ecd8
feat: Add basic gdbserver feature
...
Initially I began implementing the gdb protocol on my own, but I then found a
nice work-in-progress crate on https://github.com/daniel5151/gdbstub
that suited my needs.
Former-commit-id: f77557cbbd8652c2ed05ac439efc1956d8e99729
2020-02-21 22:12:58 +02:00
Michel Heily
84004ddb5c
windows: Add file icon to build targets
...
Former-commit-id: 2dae2e7818d86ddf9470afafd0404f0e7e021718
2020-02-12 22:18:58 +02:00
dependabot-preview[bot]
3a488e4487
build(deps): bump ansi_term from 0.11.0 to 0.12.1
...
Bumps [ansi_term](https://github.com/ogham/rust-ansi-term ) from 0.11.0 to 0.12.1.
- [Release notes](https://github.com/ogham/rust-ansi-term/releases )
- [Commits](https://github.com/ogham/rust-ansi-term/compare/v0.11.0...v0.12.1 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Former-commit-id: 702534f36b62f34f48c13c64e0db1d195206c215
2020-02-07 17:10:21 +02:00
dependabot-preview[bot]
66d7f0f7f2
build(deps): bump zip from 0.5.3 to 0.5.4
...
Bumps [zip](https://github.com/mvdnes/zip-rs ) from 0.5.3 to 0.5.4.
- [Release notes](https://github.com/mvdnes/zip-rs/releases )
- [Commits](https://github.com/mvdnes/zip-rs/commits )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Former-commit-id: 2c546f001f0e53ab6936f382ba9a9a40698337dd
2020-02-07 17:10:14 +02:00
dependabot-preview[bot]
6c879136f1
build(deps): bump colored from 1.8.0 to 1.9.2
...
Bumps [colored](https://github.com/mackwic/colored ) from 1.8.0 to 1.9.2.
- [Release notes](https://github.com/mackwic/colored/releases )
- [Changelog](https://github.com/mackwic/colored/blob/master/CHANGELOG.md )
- [Commits](https://github.com/mackwic/colored/compare/v1.8.0...v1.9.2 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Former-commit-id: 1b24d07dd253bedd15df2eba727118cbb01ef44b
2020-02-07 17:05:13 +02:00
dependabot-preview[bot]
194b9a0b2a
build(deps): bump time from 0.1.42 to 0.2.6
...
Bumps [time](https://github.com/time-rs/time ) from 0.1.42 to 0.2.6.
- [Release notes](https://github.com/time-rs/time/releases )
- [Commits](https://github.com/time-rs/time/commits/v0.2.6 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Former-commit-id: 9a9533684df743a5441be6ed0d0cd40633189c6b
2020-02-07 17:02:24 +02:00
dependabot-preview[bot]
9d383fa2c5
build(deps): bump num from 0.2.0 to 0.2.1
...
Bumps [num](https://github.com/rust-num/num ) from 0.2.0 to 0.2.1.
- [Release notes](https://github.com/rust-num/num/releases )
- [Changelog](https://github.com/rust-num/num/blob/master/RELEASES.md )
- [Commits](https://github.com/rust-num/num/compare/num-0.2.0...num-0.2.1 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Former-commit-id: ba192b84e744980c2edb3969f94b25fc0974a1bb
2020-02-07 17:01:55 +02:00
dependabot-preview[bot]
26f016182b
build(deps): bump bitflags from 1.1.0 to 1.2.1
...
Bumps [bitflags](https://github.com/bitflags/bitflags ) from 1.1.0 to 1.2.1.
- [Release notes](https://github.com/bitflags/bitflags/releases )
- [Changelog](https://github.com/bitflags/bitflags/blob/master/CHANGELOG.md )
- [Commits](https://github.com/bitflags/bitflags/compare/1.1.0...1.2.1 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Former-commit-id: 741a46a69dddb03d423776d760c933dab4076426
2020-02-07 17:01:35 +02:00
dependabot-preview[bot]
2a9f2270da
build(deps): bump rustyline from 5.0.6 to 6.0.0
...
Bumps [rustyline](https://github.com/kkawakam/rustyline ) from 5.0.6 to 6.0.0.
- [Release notes](https://github.com/kkawakam/rustyline/releases )
- [Commits](https://github.com/kkawakam/rustyline/compare/v5.0.6...v6.0.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Former-commit-id: 138a28066ed7d421ac4d6cf54b5710f45bc02c4b
2020-02-07 16:59:55 +02:00
dependabot-preview[bot]
70eaedcc77
build(deps): bump sdl2 from 0.32.2 to 0.33.0
...
Bumps [sdl2](https://github.com/Rust-SDL2/rust-sdl2 ) from 0.32.2 to 0.33.0.
- [Release notes](https://github.com/Rust-SDL2/rust-sdl2/releases )
- [Changelog](https://github.com/Rust-SDL2/rust-sdl2/blob/master/changelog.md )
- [Commits](https://github.com/Rust-SDL2/rust-sdl2/commits )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Former-commit-id: 3a2416ac596acb7f59ac94ff375fd02c9c60b1b4
2020-02-07 16:57:39 +02:00
Michel Heily
17560eeb0c
fix: Completly refactor GPU scanline composition code.
...
This change fixes #9 and emulates:
- Correct layer ordering
- Correct emulation of blending sfx
- Correct emulation of the object window (BIOS boot animation is now fixed)
Former-commit-id: caf46fe4b62cc54e6f2c02a8001da552f8e6b54a
2020-02-07 16:11:16 +02:00
Michel Heily
8f4e42d6d4
feat(logger): Add a logger to the project
...
Former-commit-id: aa0579884951857a136904b3147eaa553117e68e
2020-01-31 16:15:29 +02:00
Michel Heily
c20ac9cdf8
core: cartridge: Try to detect and print the backup type
...
In preparation for backup impl
Former-commit-id: 75efbbaea82ba30899787b46b8eaca834622493c
2020-01-17 16:11:43 +02:00
Michel Heily
dc1cd84225
feat/savestates: Implement savestates for plat/sdl2
...
Former-commit-id: e61193e0c9a937dd3b4b7e7e748d9a9b1e170e44
2020-01-16 20:18:32 +02:00
Michel Heily
d887602266
feat/savestates: Add serde and bincode traits to the project
...
Former-commit-id: b4699586bba03b8fcfc718ea08363a7067d31e20
2020-01-16 19:49:13 +02:00
Michel Heily
12ebcf44a2
refactor: Make debugger into a cargo feature
...
Former-commit-id: 50f28963d5f7c7b04a0ecd4be82ddd61bd59a39b
2020-01-13 01:11:58 +02:00
Michel Heily
49a3bc6fd0
feat: Add temporary project icon
...
Former-commit-id: 05da47f328f076045f4b27f521c72e03648ede77
2020-01-12 01:30:35 +02:00
Michel Heily
b00fbfb38c
gpu: refactor: Big refactor preparations
...
1) Decouple SysBus from Gpu
2) Split Gpu rendering function into separate modules
3) Cleanup
Former-commit-id: 0435ad1c9c1de72ed50769fabfea7c5f33b670e0
2019-12-29 23:44:34 +02:00
Michel Heily
d8545dd8cd
sdl2: Use callbacks with ring buffer instead of audio queue.
...
Better latencies, and also fast-forward (aka Turbo mode) sounds normal
this way.
Former-commit-id: d1075087e847c765a871157a7973c897575ef4d7
2019-12-28 17:03:59 +02:00
Michel Heily
a01e3ed9cd
Make sdl2 run as default for "cargo run"
...
Former-commit-id: 11c411582fa10e8391d1a9ce528e876b3da7cb22
2019-12-27 13:12:03 +02:00
Michel Heily
c9e80f4f60
Remove dead code
...
Former-commit-id: 5d5768ca6b73060197d9bacda61cba4c03804ad0
2019-12-27 12:41:36 +02:00
Michel Heily
c2ac3c5a10
Improve DMA code
...
Former-commit-id: 8fdb6195ceb323aebd8a26da98fe286d89ef8363
2019-12-27 12:37:32 +02:00
Michel Heily
38e504515b
rba-sdl2: Trying spin_sleep crate
...
Former-commit-id: 1c6a36a1a61be3949080a8c86915235aaf25d0e5
2019-12-20 19:02:33 +02:00
Michel Heily
3c7a734270
Add minifb based binary, currently it has better performance than the SDL2.
...
SDL2 rendering is really bottlenecking currently..
Former-commit-id: 8e04b799f248209a138990b2389e740b0d1d9f0f
2019-12-20 16:31:26 +02:00
Michel Heily
04d2edfc01
Refactor "backend" concept
...
See plat/sdl2
Former-commit-id: 5f7c9625467003d5b73307959095eb5365db523e
2019-12-20 15:11:26 +02:00
Yonatan Goldschmidt
60c77869df
Add cpal
extern crate
...
I really hope all these additions to Cargo.lock are actually its deps...
Former-commit-id: 7c85f330ea3c27f8ebae7020dc4a46d7d557affd
2019-12-20 15:11:26 +02:00
Michel Heily
c117cbe924
Make the debugger work again, but currently breakpoints are not supported.
...
Added memory write command and the ability to pause the debugger with Ctrl-C
Former-commit-id: 83d141fa191dadefb84f7c9de163631a69af8324
2019-11-12 18:22:00 +02:00
Michel Heily
3a1d5c10ce
Fix many bugs, refactor many things..
...
Passing: Armwrestler, cpu_test by Dead_Body
Former-commit-id: 80d815d110c5341515dd01c476a0d7e25ecb66a8
2019-11-09 01:06:24 +02:00
Michel Heily
7cc1a50d12
Support zip files and add --no-framerate-limit
...
Former-commit-id: 62a7122fb0b3e832eeb3cbf347a0966e4cd32d50
2019-09-11 21:26:40 +03:00
Michel Heily
639993edd7
Add blending and mosaic SFX, and cleanup code.
...
Former-commit-id: b9f0ccaf1820da61f49ebeb2af5beff5cccd722f
2019-08-13 22:15:36 +03:00
Michel Heily
c7dd713605
The big ioregs refactoring.
...
This commit refactors the ioregs:
* Use bitfield crate to implement the GPU ioregs.
* IoRegs are stored in their own variables bindings (i.e, Gpu related ioregs are now fields of the Gpu struct)
- This optimize performance quiet alot from my testings - since every scanline was accessing deseralizing ioregs from sysbus. (Getting constant 59fps now)
* For now, comment out DMA model
Also, cleaned the code up to eliminate rustc warnings.
Former-commit-id: 9077695c446ebd1a71783acfdd9819245aa02d7a
2019-08-03 00:24:15 +03:00
Michel Heily
7e9c0e31da
Add minifb backend - Armwrestler now plays !
...
Former-commit-id: d72ea9139e04624322cf3bc4a8ab330f6bb133a4
2019-07-20 23:02:18 +03:00
Michel Heily
1084be52b8
WIP mode0 rendering
...
Former-commit-id: 6bce375f9373bbddf4522da5ecc2ea3584373847
2019-07-15 19:23:16 +03:00
Michel Heily
efb5d361d6
Add PaletteView command for the debugger.
...
Former-commit-id: c4e0250eea700cfbcbb9f904cde7b6bc055d3e05
2019-07-06 16:04:43 +03:00
Michel Heily
cbddeffd91
arm: Implement MSR_REG and fix some prefetching errors
...
Former-commit-id: 177b8966159ed86472b0d4d031363df72d46807a
2019-07-02 16:53:29 +03:00
Michel Heily
967ccca8dd
Mega commit - model CPU pipelining.
...
I except many bugs to arise..
Former-commit-id: bcc6ea57af803f783b0dd548b50956b3ccda2b1a
2019-06-29 22:23:12 +03:00
Michel Heily
a70b92d5a4
Rename project
2019-06-27 13:15:46 +03:00
Michel Heily
e5d93f689f
Work..
...
Refactor disassembler to a struct.
Implement more commands;
2019-06-27 13:15:34 +03:00
Michel Heily
fc28d89097
Implement a few debugger commands
2019-06-27 13:15:34 +03:00
Michel Heily
107e34aca1
Start debugger repl
2019-06-27 13:15:34 +03:00
Michel Heily
9330c53957
Start modeling CPU
...
Wrote a shallow skeleton of a CPU Core.
Finally made the disassembler a clap subcommand.
2019-06-27 13:15:19 +03:00
Michel Heily
addea1efa0
Merge both packages
2019-06-24 22:02:00 +03:00
Michel Heily
094cbb5f29
Refactor disassembler binary into arm7tdmi package
2019-06-24 21:45:25 +03:00
Michel Heily
377f350e12
Start arm disassembler
2019-06-24 16:36:20 +03:00
Michel Heily
8324c1ed50
Initial commit
2019-06-24 16:36:20 +03:00