Commit Graph

9 Commits

Author SHA1 Message Date
1076d02638 interrupt: first-pass implementation of interrupts
Only manual and V-blank interrupts work, for now. This implements
enough to make the EI and DI parts of Blargg's Interrupt test pass.
2018-09-20 20:55:51 -07:00
b22fc6f44a cpu: pass blargh instr tests 3,5,6,8,9 2018-09-03 21:57:55 -07:00
c4ded6d077 cpu: get blarg CPU instruction test 6 passing
Its been too long since a checkin, but here's some of the
improvements:

- Support for diffing with other emulators
- Better disassmbed output
- New CPU instructions implemented
- Lots of CPU fixes
2018-08-26 22:57:35 -07:00
f659af54e1 gbdb,video: improve logging
Add more runtime toggles and add the ability to log to a file for
faster runs and better searchability.
2018-07-22 16:15:10 -07:00
53cd4ab7e5 video: first signs of life
The video code now writes out a bmp file per-frame. With this patch
applied, the Nintendo logo is rendered in each frame.

There is still plenty of work to be done. Pretty much everything is
hardcoded to make the bootrom work.
2018-07-20 20:08:15 -07:00
ea2ea1e293 gbdb,cpu,video: reduce number of calls to cycle functions
Instead of calling cpu_cycle() and video_cycle() once per emulated
cycle, call cpu_cycle() once per emulated instruction. This should not
have any obvious effects on the emulation (as currently written),
because all of the memory reads and writes are done in the first
"cycle" of the instruction.

This patch results in a substantial performance gain (>100%, if I
recall correctly).
2018-07-09 02:38:50 +00:00
213c08fa18 gbdb: remove some conditionals from mem_read()
By reading directly from a "RAM" array, and copying in the cart data
over the old bootrom.

Also, some other fixups because I'm too lazy to properly split patches
for a personal project.
2018-07-09 02:34:24 +00:00
ee318b348d video: fix writes 2018-02-19 06:51:48 +00:00
e5acc3088c treewide: restucture source tree per project
Signed-off-by: Max Regan <mgregan2@gmail.com>
2017-05-10 22:40:12 -07:00