Sean Maas
11740f8100
fix some funky palette issues
2019-08-15 22:54:36 -04:00
Sean Maas
279710e9da
fix more pipelining derpos
2019-08-15 20:27:00 -04:00
Sean Maas
890e0ee8ab
add FPS counter
2019-08-14 23:57:51 -04:00
Sean Maas
60116e58ba
split memory_transfer into multiple files + minor fixes
2019-08-14 23:28:42 -04:00
Sean Maas
b73a1b5666
apply pipelining to ALU instrs on PC that don't change its value
...
aka finally get commercial games booting!
2019-08-13 22:19:11 -04:00
Sean Maas
b293ef2ab0
manually supply the 'encryObj' string
2019-08-12 17:25:53 -04:00
Sean Maas
9390459a29
the CPUs have separate DISPSTAT registers you absolute derpo
2019-08-11 23:35:33 -04:00
Sean Maas
f1f017409f
get RTC value from system time and fix RTC status bit being set to bad
2019-08-11 13:58:01 -04:00
Sean Maas
f63eca6e50
secure area loading and other related things
2019-08-10 18:46:23 -04:00
Sean Maas
cc5b0b6639
implement division registers, rework dma transfers
2019-08-04 17:13:01 -04:00
Sean Maas
d29f10d028
implement basic RTC functionality
...
aka just reading a fixed date and time. the date i used is the day
i got noodle :)
2019-07-31 13:39:24 -04:00
Sean Maas
e1712a44de
make cart transfers start to resemble an actual implementation
2019-07-30 21:26:48 -04:00
Sean Maas
c71cac2af5
code comments and partial refactor
...
this was supposed to be a huge refactor and optimization, but i lost
motivation halfway through. once commercial games boot i'll probably
come back to this.
2019-07-30 21:25:48 -04:00
Sean Maas
70ad7fb6f5
add object sprite flipping
2019-07-21 21:03:10 -04:00
Sean Maas
de4619e912
return FFs for GBA slot reads
2019-07-21 14:47:48 -04:00
Sean Maas
ef10f9f893
barebones object rendering
2019-07-21 14:31:26 -04:00
Sean Maas
82954676b7
properly handle writes to the fifo error bit
...
and now the firmware finally boots!
2019-07-20 01:31:46 -04:00
Sean Maas
32c687e8e8
fix swp
2019-07-20 00:18:42 -04:00
Sean Maas
6565110cee
oops. timers count up, not down
2019-07-19 20:14:07 -04:00
Sean Maas
c0d83f34c3
spi improvements + implement clz, ldms/stms instructions
2019-07-19 18:04:40 -04:00
Sean Maas
ee73f0a03e
fix read-only bits of ipcsync being writeable
...
dorp
2019-07-18 22:35:59 -04:00
Sean Maas
671e5a7533
finally implement fifo
...
also fixed irqs to allow setting irf even when irqs are disabled.
this bug and the last one were preventing my previous fifo attempts
from working.
2019-07-18 18:06:00 -04:00
Sean Maas
9b7f3d344f
rework irq system to fix issues with irqs triggered by i/o writes
2019-07-17 20:48:34 -04:00
Sean Maas
5255c6dd72
a mess of things to make the firmware almost work
...
timers, crappy fake rom transfers, and other stuff.
remind me at some point to make my code not a trashy mess.
2019-07-17 19:19:24 -04:00
Sean Maas
e8b1fa3c29
add firmware SPI read command
...
also refactored some things
2019-07-14 18:38:32 -04:00
Sean Maas
628ba28dcd
improve the i/o system
...
to allow reading/writing multiple registers at once, and partial
reads/writes that don't start at the LSB. the mask stuff is kinda
weird but it means i don't need an entry in the switch statement
for every single byte of every register, so yeah.
2019-07-09 15:50:32 -04:00
Sean Maas
02a7c65379
some branch fixes and some other stuff
2019-07-04 18:37:01 -04:00
Sean Maas
c747797aa6
preparation for trying to boot the firmware
...
(obviously doesn't work yet)
2019-07-04 14:50:38 -04:00
Sean Maas
1ff1462917
fix thumb irq return address
2019-07-03 01:36:00 -04:00
Sean Maas
94f1b03737
fix the last couple alu mistakes
2019-07-01 17:25:19 -04:00
Sean Maas
a61f49fe57
writeback fixes
2019-06-30 22:38:31 -04:00
Sean Maas
3ce20d1123
handle special shift cases
2019-06-30 01:14:27 -04:00
Sean Maas
77d59faae6
misc stuff
2019-06-28 23:12:53 -04:00
Sean Maas
936ba8537b
add scrolling support for text layers
2019-06-28 18:55:37 -04:00
Sean Maas
32f9e05fe6
implement tile flipping for text layers
2019-06-28 16:48:49 -04:00
Sean Maas
b2c5e10eed
new wxwidgets ui
2019-06-27 18:13:44 -04:00
Sean Maas
f66e814f9b
fix layer transparency issues
2019-06-25 01:44:49 -04:00
Sean Maas
5a4d240778
separate ext palettes for each engine
...
wow mega derp
2019-06-25 01:15:11 -04:00
Sean Maas
d2c4dca063
add extended palette support
2019-06-24 23:26:36 -04:00
Sean Maas
76b374487f
fix non-verbose mode on windows
...
micosoft pls
2019-06-23 21:23:55 -04:00
Sean Maas
c63b716b22
fix visual studio's whiny complaints
2019-06-23 20:47:25 -04:00
Sean Maas
b9e18ec910
basic 256 color bitmap support + optimizing text layer
2019-06-23 18:33:51 -04:00
Sean Maas
a782cd171e
basic tile/text layer support
2019-06-22 18:37:17 -04:00
Sean Maas
b22dd17f79
render per-scanline instead of per-dot
2019-06-22 16:08:39 -04:00
Sean Maas
16ca2aa0d7
implement basic mode 0 dma transfers
2019-06-22 04:01:54 -04:00
Sean Maas
20c510190a
add wramcnt, extkeyin registers
...
x and y keys probably won't do much until the fifo is implemented
2019-06-22 01:35:34 -04:00
Sean Maas
63f7ce0f84
basic direct color bitmap layer support
2019-06-20 21:49:42 -04:00
Sean Maas
c0a5e7176b
skeleton for bg layers
...
dunno how efficient this is. it'll probabaly end up changing a lot.
2019-06-20 20:44:55 -04:00
Sean Maas
1e2421a146
add barebones switch build
...
yeah, i could use the UI from melonDS and NoiES, but that code is a
bit of a mess. i'm thinking of just starting from scratch and
rewriting it. until then though, here's an absolute bare minimum
build so we can see how performance is on the switch.
2019-06-20 01:55:43 -04:00
Sean Maas
d245918cf8
interpreter bugfixes
2019-06-19 22:00:34 -04:00