Commit Graph

37 Commits

Author SHA1 Message Date
profi200 83215f5417
Added CODEC headset detection/selction reg and bit defines. 2021-11-05 17:53:41 +01:00
profi200 d7103833d5
Unorganized commit collecting many changes from the last months incoming. Yeah, i should have split this. 2021-11-04 15:47:59 +01:00
profi200 54387dad34
Use SELECT + Y for screenshots.
Bump copyright dates and add missing copyright notices.
2021-01-10 14:29:58 +01:00
profi200 a719aa2864
Moved lots of code out of main.c/cleanup. 2020-12-19 22:30:43 +01:00
profi200 29413979fa
Fixed the oversaturation in the output by using a lower gamma. This is roughly tuned for launch day o3DS. If you want the previous colors back set inGamma to 2.2 and outGamma to 1.21.
Make path creation faster in case it already exists.
2020-12-03 18:23:13 +01:00
profi200 48def49f8b
Use relative paths where possible. 2020-11-29 22:52:13 +01:00
profi200 31bbcbfe25
Added some filter options to the config. 2020-11-28 17:18:58 +01:00
profi200 dd68d381ac
Added basic config file support (thanks to benhoyt for his inih lib). 2020-11-23 02:45:47 +01:00
profi200 5f25739286
Enabled more debugging techniques by default in debug builds.
Added more Arm intrinsics.
ARM7 stub now waits for REG_VCOUNT == 126 (same as after BIOS intro).
Enable ROM mirroring for all 8 Mbit games instead of just Classic NES Series.
Other misc. changes.
2020-11-22 01:47:58 +01:00
profi200 5316c8938d
Avoid errors when the last ROM launch dir doesn't exist anymore.
Other small fixes.
2020-10-25 23:01:30 +01:00
profi200 c87769a06e
Added returning to the last dir a ROM was launched from on next boot. Fixes #21. 2020-10-25 22:00:44 +01:00
profi200 179ea504d0
Added a basic screenshot feature dumping the GPU input texture by pressing Y. Fixes #19. 2020-10-24 21:53:08 +02:00
profi200 07f6f01d92
Added game database search code (and a debug menu for it).
Mimic ROM "open bus" (not 100% accurate) and ROM mirroring. Fixes #20.
Implemented some useful ARM instruction intrinsics.
2020-10-24 21:52:14 +02:00
profi200 8fdc74a3c4
Added a temporary workaround to prevent panics if booted from bootloaders with broken screen init. 2020-09-25 00:59:45 +02:00
profi200 ef79b4343d
Use anonymous structs instead of void for public kernel API. 2020-09-14 16:24:03 +02:00
profi200 b8f4d5cd53
More cleanup and bug fixes. 2020-09-12 14:50:24 +02:00
profi200 02e9fa9830
Refactor. Moved code outside of the hardware drivers that doesn't belong there. 2020-09-08 16:13:58 +02:00
profi200 f028745f52
First public release of my tiny kernel. 2020-09-05 17:20:38 +02:00
profi200 7c3e572fc5
Don't turn the backlight off on 2DS. 2020-07-04 15:12:08 +02:00
profi200 e34c042abe
Don't ignore power button held events. 2020-07-02 23:28:09 +02:00
profi200 7879ce1597
Added a extremely basic and buggy file browser.
More documentation and bug fixes.
2020-07-01 23:55:27 +02:00
profi200 9002291e8a
Basic save type detection based on code from GBARunner2 (thanks Gericom).
Note: Some EEPROM types are definitely broken right now.
2020-06-13 16:13:58 +02:00
profi200 aecbee03e7
Split CFG11 and PDN into separate headers. Also (nearly) completed them.
Reimplemented filesystem access for ARM11.
Moved ROM loading to ARM11.
2020-06-13 00:49:30 +02:00
profi200 4316ad5c85
Bump color quality. Also removes output dithering. 2020-06-08 13:58:14 +02:00
profi200 2e8f7d92a5
Automatically enumerate IPC cmds.
Actually power off bottom screen backlight instead of dimming it to basically off.
2020-06-07 19:50:26 +02:00
profi200 391bc4d05d
Moved lgy.h to include/hardware.
Define size symbols instead of calculating asm stub size at runtime.
Workaround poor optimization when passing GbaRtc struct by value.
2020-05-31 18:18:26 +02:00
profi200 efefa7b3db
Moved save type selection to ARM11. Save size is now auto calculated. 2020-05-30 15:20:29 +02:00
profi200 237fb25c19
Implemented basic error checking/error messages.
Use single buffering for the console.
Now turns off bottom screen backlight.
2020-05-29 15:54:19 +02:00
profi200 70f518b92f
Moved some GX/LCD regs to their own headers + more reg/bit definitions. 2020-05-17 20:15:43 +02:00
profi200 63f03cd824
Force LgyFb to insert 16 pixels of padding horizontally. Makes tiled output finally work. 2020-05-14 16:27:11 +02:00
profi200 51115a9785
Added Circle-Pad controls. Costs about 30 µs frame time.
Note: No calibration support yet. If your Circle-Pad is in bad shape or came out of the factory with drift this will certainly break.
2020-05-05 23:27:34 +02:00
profi200 7aeb539266
Added variable framerate code to sync GBA mode and LCD framerate. 2020-05-03 22:43:19 +02:00
profi200 01ec92240b
Finally renders using the GPU but LgyFb tiled output is broken. 2020-04-29 18:50:52 +02:00
profi200 3fc02d32ef
Added broken GPU rendering. 2020-04-29 18:19:55 +02:00
profi200 93abc0958f
Added VRAM allocator (thanks to libctru).
Overhaul of gfx.c.
2020-04-24 20:22:10 +02:00
profi200 602ec58777
Fixed screen init once and for all.
Some gfx code cleanup.

Note: The screen init fix requires the same changes in other homebrew FIRMs to work properly. Particularly waiting for MCU events.
2020-04-17 15:50:42 +02:00
profi200 c3b57bda29
Initial commit. 2020-04-15 23:50:52 +02:00