212 Commits

Author SHA1 Message Date
Konrad Beckmann
0a93f7752f Control volume correctly 2020-12-27 16:21:48 +01:00
Konrad Beckmann
04b704a1d4 Improve menus 2020-12-27 16:21:44 +01:00
Konrad Beckmann
2cabf8a6d8 Clear audio buffer while OSD menu is showing 2020-12-27 16:21:40 +01:00
Konrad Beckmann
97058dd5ef nes: Enable OSD menu 2020-12-27 16:21:36 +01:00
Konrad Beckmann
0b5784d963 nes: Detect PAL/NTSC correctly 2020-12-27 16:21:32 +01:00
Konrad Beckmann
179ba9bc6b Fix loading of nes roms 2020-12-27 16:20:44 +01:00
Thomas Roth
003c1eeb62 Fix build issues 2020-12-27 16:20:38 +01:00
Thomas Roth
c05d489231 Remove unused rom_info.h dependency 2020-12-27 16:20:26 +01:00
Thomas Roth
8bb62c2af8 Working NES and GB switching 2020-12-27 16:20:14 +01:00
Thomas Roth
2b9430e946 Working NES and GB switching 2020-12-27 16:20:05 +01:00
Konrad Beckmann
cba0ad229a Hook in backlight/brightness control in settings 2020-12-27 16:20:01 +01:00
Konrad Beckmann
4b3ab433f5 Backlight support using DAC 2020-12-27 16:19:57 +01:00
Konrad Beckmann
b12048899e Generate and include git hash in BSOD 2020-12-27 16:19:50 +01:00
Konrad Beckmann
c539baff52 Add BSOD 2020-12-27 16:19:45 +01:00
Konrad Beckmann
1374269566 Lots of stuff, menu working better than before 2020-12-27 16:19:40 +01:00
Konrad Beckmann
fd69b060dc Remove hacks that are not needed anymore 2020-12-27 16:19:36 +01:00
Konrad Beckmann
b0a76c4526 memset gamepad state to 0 2020-12-27 16:19:31 +01:00
Konrad Beckmann
0cde4b2941 Fix heap usage 2020-12-27 16:19:26 +01:00
Konrad Beckmann
9f554e4e69 Add MPU protected redzone for the stack 2020-12-27 16:19:15 +01:00
Konrad Beckmann
c8b70b33d3 Implement _sbrk, allocate 16KB heap in RAM 2020-12-27 16:19:08 +01:00
Konrad Beckmann
b400da4967 Add rg_alloc tracker and enable it by default 2020-12-27 16:19:02 +01:00
Thomas Roth
da2df65684 Working GB ROM selection 2020-12-27 16:18:04 +01:00
Konrad Beckmann
d4854c7310 Add initial GUI hack 2020-12-27 16:17:27 +01:00
Konrad Beckmann
95252992b8 Fix nes NN blit function
Also add possibility to choose between 307 and 320
pixels wide upscaling.
2020-12-18 13:48:36 +01:00
Jan Dumon
fe182651b0 fixed pointer in call to OSPI_WriteBytes 2020-12-14 20:33:42 +01:00
Jan Dumon
2ba0693124 protect the nullpointer redzone with the MPU
An additional region is configured in the MPU to cause memory faults
when the processor tries to access the nullpointer redzone.
2020-12-14 11:36:09 +01:00
Konrad Beckmann
da93267953 Fix broken memcpy implementation
Related to #13
2020-12-12 13:43:30 +01:00
Konrad Beckmann
181ce5b894 Build with D_FORTIFY_SOURCE=1
This also adds a naive memcpy implementation to work around
bounds checks. This is done because of symbols coming from
the ld script that don't have the correct length.

If anyone knows how to fix this properly, PRs are always welcome!

This is an alternate solution to #13
2020-12-12 13:38:17 +01:00
Konrad Beckmann
224af81740 Add missing entry in gw_linker.h 2020-12-11 15:33:15 +01:00
Konrad Beckmann
89abc22b27 Nullpointer redzone 2020-12-11 13:22:06 +01:00
Konrad Beckmann
b7cc8814bb Sample initial button states 2020-12-11 02:24:49 +01:00
Konrad Beckmann
a31273498b nes: Support toggling ROM cache 2020-12-11 02:11:31 +01:00
Konrad Beckmann
02c0c4ec16 gb: Fix synchronization
This restores 60 solid FPS together with nice audio.
2020-12-09 20:06:12 +01:00
Konrad Beckmann
b4411f521a gb: Fix border in jth rendering 2020-12-09 19:21:47 +01:00
Thomas Roth
cc17a98f63 Increase volume 2020-12-09 19:16:12 +01:00
Thomas Roth
16d71d29a2 GB: Fix sound-glitches 2020-12-09 19:16:12 +01:00
Konrad Beckmann
8a340529b1 Remove includes 2020-12-09 17:27:31 +01:00
Konrad Beckmann
b34ad0da0e nes: Improve NN scaling 2020-12-09 17:19:26 +01:00
Konrad Beckmann
e442572843 gb: Add bilinear and jth scaling 2020-12-09 17:17:55 +01:00
Konrad Beckmann
8d77b3d354 Add profiling macros 2020-12-08 02:24:53 +01:00
Konrad Beckmann
02d052b3bf Enable RTC to allow for profiling
Uses the internal oscillator.
Can't get the external to work for some reason. PRs welcome!
2020-12-08 01:47:56 +01:00
Konrad Beckmann
948ff8fe63 gb: Disable DCACHE for AHBRAM (framebuffer area) 2020-12-06 18:34:31 +01:00
Konrad Beckmann
fddc3f2fb2 gb: Vsync 2020-12-06 18:05:11 +01:00
Konrad Beckmann
c9a300a8be gb: Support state saving to flash 2020-12-06 17:22:32 +01:00
Konrad Beckmann
88d1366e13 gb: Add mute button 2020-12-06 16:07:18 +01:00
Konrad Beckmann
8bb7344101 Squash largeflash_snapshots
Squashed commit of the following:

commit 8bdab8b69ee37aeafedb8da7d13fb6c02c35cc04
Author: Konrad Beckmann <konrad.beckmann@gmail.com>
Date:   Sun Dec 6 15:11:47 2020 +0100

    Update submodule

commit eaaf1893e4dc8c6ec66039a99de057de60b5f2b5
Author: Konrad Beckmann <konrad.beckmann@gmail.com>
Date:   Sun Dec 6 15:11:38 2020 +0100

    Use HALF_QUAD_MODE

commit 069985bec8b78e3c54fda2ef632ce9d7e3e79eaf
Author: Konrad Beckmann <konrad.beckmann@gmail.com>
Date:   Sun Dec 6 15:11:27 2020 +0100

    Add missing file

commit d0bb4e89f1701097f4c8e6f81ac39561157e1ea8
Author: Thomas Roth <code@stacksmashing.net>
Date:   Sat Dec 5 13:59:18 2020 +0100

    Fix HALF_QUAD_MODE support

commit d87def7b63b297231b4b9419998d63f878cce8d6
Author: Thomas Roth <code@stacksmashing.net>
Date:   Sat Dec 5 13:42:27 2020 +0100

    Add support for different flash sizes

commit 85da98252194eaeb7344b7edd3b4655996e96344
Merge: c2be063 df701cd
Author: Konrad Beckmann <konrad.beckmann@gmail.com>
Date:   Sat Dec 5 01:06:47 2020 +0100

    Merge remote-tracking branch 'origin/main' into largeflash_snapshots

commit c2be0637a99b41dbbcdab8db96dd5a4fd9f917c1
Author: Thomas Roth <code@stacksmashing.net>
Date:   Fri Dec 4 23:07:48 2020 +0100

    Enable nearest-neighbor with -DBLIT_NEAREST

commit 4706648eb4a777431ab82ae9f16bec1535d97ae3
Author: Thomas Roth <code@stacksmashing.net>
Date:   Fri Dec 4 22:51:40 2020 +0100

    Vsync

commit 692bf35345b1eae52a2cc88510f785daf8c29ccb
Author: Thomas Roth <code@stacksmashing.net>
Date:   Fri Dec 4 22:25:26 2020 +0100

    Update retro-go-stm32

commit b3caa6dd3a946e8d0e799779130daaab15a0ae8b
Author: Thomas Roth <code@stacksmashing.net>
Date:   Fri Dec 4 20:27:27 2020 +0100

    Initial snapshot support (large flash only)
2020-12-06 15:28:42 +01:00
Konrad Beckmann
c516f8e90b gb: Allocate framebuffer in ITCRAM 2020-12-05 22:45:31 +01:00
Konrad Beckmann
994e23eaed Bring back configurable pixel format for LCD 2020-12-05 22:43:20 +01:00
Konrad Beckmann
d32f6ba532 memset framebuffer correctly 2020-12-05 22:39:47 +01:00
Konrad Beckmann
78698596a0 memset framebuffer to sizeof(framebuffer1) 2020-12-05 22:31:20 +01:00