Commit graph

17 commits

Author SHA1 Message Date
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 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
MishMish 1a382b4cee Update README.md
Former-commit-id: e1ff263d66abf91ebedc7863148b9203466f424d
2020-02-17 23:57:51 +02:00
Michel Heily eda3d3e3e7 feat(flash): Implement Flash save type
Pokemon games now boot and save.
Fixes #7


Former-commit-id: c60cda3352cc5117c88d4aec272c4e9d2662d21d
2020-01-26 02:18:27 +02:00
Michel Heily a47cb18cda core/arm7tdmi/arm/: Fix wrong calculation of op1 in DATA_PROCESSING instruction when RN==R15
The docs state: "If a register is used to specify the shift amount the PC will be 12 bytes ahead"
I probably misread that when implementing DataProcessing instructions,
and because of that added 4 bytes to (op1+8) when shift amount was specified by a rotated immediate.

Fixes #6 (and probably tons of other bugs too!)


Former-commit-id: 129f0951a6381221314c23a468c3da8b31435a30
2020-01-18 23:46:47 +02:00
Michel Heily 8755013ec6 tests: Wrap gba-suite by jsmolka
Former-commit-id: 511f08470520c712b3b5a5bd9e33ac590939c315
2020-01-17 01:33:21 +02:00
Michel Heily 2cd8dc1f75 docs: Add license badge
Former-commit-id: f4b7902a9a83be93173d0c1d9387692b14481754
2020-01-12 02:08:19 +02:00
Michel Heily a00800ea8d docs: update README.md
Former-commit-id: 5d729faa3f30a88402fd58810375ebe624e8277d
2020-01-12 02:04:44 +02:00
Michel Heily 49a3bc6fd0 feat: Add temporary project icon
Former-commit-id: 05da47f328f076045f4b27f521c72e03648ede77
2020-01-12 01:30:35 +02:00
Michel Heily 4a73d80ace docs: Remove outdated gifs
Former-commit-id: 4a220d546deea05993509fd8dd9e157564c7a1e5
2020-01-12 01:29:14 +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 2bd8b56bc6 Fix that DAMN bug.
Long story short, I've been hunting this bug for a while now.
While passing armwresteler tests, I still had an emulation bug which
causeed libgcc's iprintf to produce bugged strings.

In order to find it, I've used https://github.com/fleroviux/NanoboyAdvance/
And patched it to produce a formatted log of every step of the execution
of iprintf:
{OPCODE} {PC} {R0} {R1} ... {R14} {FLAGS}
Did the same on my emulator and searched for differences.

Found out the a "CMP r3, #0x0" instruction turned off the carry flag
when it shouldn't. Found this sad function, the check I'm using for
carry flag is meaningless when done on signed integers. :sigh:


Former-commit-id: 871d2581921796dae9bf4f5fdaa45c6ad46aebec
2019-11-06 00:49:59 +02:00
MishMish c9df623d36 Update README.md
Former-commit-id: 03b224b7de9735a1ed43dd7460fe5fa9ece147b4
2019-07-03 02:23:36 +03:00
Michel Heily 2238c7a72f Add demo gif to README.md
Former-commit-id: 05ec55725c04cd4d4ca08471ea88b1b6b1b11e08
2019-06-28 15:32:21 +03:00
Michel Heily 5245f0780c Update README.md 2019-06-28 13:05:48 +03:00
Michel Heily 8324c1ed50 Initial commit 2019-06-24 16:36:20 +03:00