Commit graph

374 commits

Author SHA1 Message Date
Matthew Berry
3471a8b34c thumb long branch 2020-09-27 20:06:47 -07:00
Matthew Berry
99bdf3ec86 thumb move/compare/add/subtract, fix thumb conditional branch bug 2020-09-27 19:55:47 -07:00
Matthew Berry
7d8e2dccef set carry flag from barrel shifter ops (arm & thumb) 2020-09-27 18:12:04 -07:00
Matthew Berry
8e6040e4c4 thumb conditional branch, fix reg rotation, thumb/arm abstraction 2020-09-27 17:51:17 -07:00
Matthew Berry
55589ea0b0 thumb move shifted register (- carry flag)
diverges from armwrestler here bc of carry flag
2020-09-27 17:00:21 -07:00
Matthew Berry
eb5d932579 thumb pc relative load 2020-09-27 16:58:22 -07:00
Matthew Berry
cbc140b7c4 basic thumb template 2020-09-27 16:14:17 -07:00
Matthew Berry
9eca952a78 arm branch exchange impl 2020-09-27 14:44:32 -07:00
Matthew Berry
e238d297cc fix register reads in data processing instrs 2020-09-27 13:54:49 -07:00
Matthew Berry
09b8876b73 early psr transfer implementation 2020-09-27 13:51:17 -07:00
Matthew Berry
4b745a075a basic single data transfer impl 2020-09-27 00:41:25 -07:00
Matthew Berry
df79b7b48b data processing logical flags, minor rotate_register patch, abstract immediate_offset 2020-09-26 21:47:00 -07:00
Matthew Berry
64c8b26fb8 update bits macro to call methods on RangeLiteral rather than Range 2020-09-26 18:08:44 -07:00
Matthew Berry
2a0aac031b fix logging and unused opcodes in lut 2020-09-25 20:57:19 -07:00
Matthew Berry
e9a1acb52a move cpsr onto new bitfield implementation 2020-09-23 08:21:56 -07:00
Matthew Berry
e94754ca06 initial minimum readme information 2020-09-17 23:55:34 -07:00
Matthew Berry
b026160553 move instr lookup to lookup table, move instrs into module across files 2020-09-16 22:54:15 -07:00
Matthew Berry
ea5322b0fa pulled out register rotation since it seems like that'll need to be abstracted 2020-09-15 22:57:01 -07:00
Matthew Berry
238076dda3 default regs, log/trace macros, print mgba-style state 2020-09-14 23:28:50 -07:00
Matthew Berry
fbacc2cf9f make bitfields macros instead of function calls 2020-09-13 17:07:14 -07:00
Matthew Berry
eafe206b06 cleanup, shifts, and some data processing w/o flags 2020-09-01 00:04:27 -07:00
Matthew Berry
2ef9b87cd6 check condition before executing instruction 2020-08-24 23:21:52 -07:00
Matthew Berry
f004c0f461 branching and basic instr pipeline 2020-08-22 15:17:58 -07:00
Matthew Berry
069a536085 initial commit: load cartridge, parse instr types 2020-08-22 00:15:30 -07:00