Skip to content

Commit 1bf36b6

Browse files
committed
Merge branch 'dev'
2 parents 77b254a + 8c3f2de commit 1bf36b6

File tree

231 files changed

+34021
-2704
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

231 files changed

+34021
-2704
lines changed

BUILDING.md

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,9 @@
11
# Building Retro-Go
22

33
## Prerequisites
4-
You will need a working installation of [esp-idf](https://docs.espressif.com/projects/esp-idf/en/release-v4.3/esp32/get-started/index.html#get-started-get-prerequisites). Versions 4.1 to 4.4 are supported.
4+
You will need a working installation of [esp-idf](https://docs.espressif.com/projects/esp-idf/en/release-v4.3/esp32/get-started/index.html#get-started-get-prerequisites). Versions 4.2 to 5.2 are supported.
55

6-
Version 5.0 is also mostly supported, but you will have to build with `--no-networking` and there are
7-
some performance issues.
8-
9-
_Note: As of retro-go 1.35, I use 4.3.3. Version 4.1.x was used for 1.20 to 1.34 versions._
6+
_Note: As of retro-go 1.35, I use 4.3. Version 4.1 was used for 1.20 to 1.34 versions._
107

118
### ESP-IDF Patches
129
Patching esp-idf may be required for full functionality. Patches are located in `tools/patches` and can be applied to your global esp-idf installation, they will not break your other projects/devices.
@@ -34,6 +31,8 @@ There are generally two active git branches on retro-go:
3431
For a smaller build you can also specify which apps you want, for example the launcher + DOOM only:
3532
1. `./rg_tool.py build-fw launcher prboom-go`
3633

34+
Note that the app named `retro-core` contains the following emulators: NES, PCE, G&W, Lynx, and SMS/GG/COL. As such, these emulators cannot be selected individually. The reason for the bundling is simply size, together they account for a mere 700KB instead of almost 3MB when they were built separately.
35+
3736

3837
## Build, flash, and monitor individual apps for faster development:
3938
It would be tedious to build, move to SD, and flash a full .fw all the time during development. Instead you can:

CHANGELOG.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,12 @@
1+
# Retro-Go 1.41 (2024-??-??)
2+
- MSX: Added fMSX emulator
3+
- COL: Added virtual keyboard so that more games work
4+
- COL: Fixed savestates not working
5+
- All: Improved scaling; you can now zoom to any size you want!
6+
- All: Eliminated battery icon flicker
7+
- All: Added overclock option in the debug menu (need feedback before making it permanent)
8+
9+
110
# Retro-Go 1.40 (2024-02-27)
211
- NES: Added sound emulation to mapper 19 (Pacman Championship Edition)
312
- NES: Added 2KB CHR support to mapper 64 (Rolling Thunder)

README.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,8 @@ Some emulators support loading a BIOS. The files should be placed as follows:
7474
- GB: `/retro-go/bios/gb_bios.bin`
7575
- GBC: `/retro-go/bios/gbc_bios.bin`
7676
- FDS: `/retro-go/bios/fds_bios.bin`
77+
- MSX: In folder `/retro-go/bios/msx/` put: `MSX.ROM` `MSX2.ROM` `MSX2EXT.ROM` `MSX2P.ROM` `MSX2PEXT.ROM` `FMPAC.ROM` `DISK.ROM` `MSXDOS2.ROM` `PAINTER.ROM` `KANJI.ROM`
78+
7779

7880
## Game & Watch
7981
The roms must be packed with [LCD-Game-Shrinker](https://github.com/bzhxx/LCD-Game-Shrinker) and a tutorial can be [found here](https://gist.github.com/DNA64/16fed499d6bd4664b78b4c0a9638e4ef).
@@ -174,6 +176,7 @@ Instructions moved to [BUILDING.md](BUILDING.md).
174176
- The DOOM engine is a port of [PrBoom 2.5.0](http://prboom.sourceforge.net/).
175177
- The Genesis emulator is a port of [Gwenesis](https://github.com/bzhxx/gwenesis/) by bzhxx.
176178
- The Game & Watch emulator is a port of [lcd-game-emulator](https://github.com/bzhxx/lcd-game-emulator) by bzhxx.
179+
- The MSX emulator is a port of [fMSX](https://fms.komkon.org/fMSX/) by Marat Fayzullin.
177180
- PNG support is provided by [lodepng](https://github.com/lvandeve/lodepng/).
178181
- PCE cover art is from [Christian_Haitian](https://github.com/christianhaitian).
179182
- Some icons from [Rokey](https://iconarchive.com/show/seed-icons-by-rokey.html).
@@ -183,5 +186,5 @@ Instructions moved to [BUILDING.md](BUILDING.md).
183186

184187
# License
185188
Everything in this project is licensed under the [GPLv2 license](COPYING) with the exception of the following components:
186-
- components/retro-go (Retro-Go's framework, zlib)
189+
- fmsx/components/fmsx (MSX Emulator, custom non-commercial license)
187190
- handy-go/components/handy (Lynx emulator, zlib)

assets/es-theme-gbz35-master.zip

3.21 MB
Binary file not shown.

base.cmake

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,6 @@ macro(rg_setup_compile_options)
1111
${ARGV}
1212
)
1313

14-
if(NOT ";${ARGV};" MATCHES ";-O[0123gs];")
15-
# Only default to -O3 if not specified by the app
16-
component_compile_options(-O3)
17-
endif()
18-
1914
if(RG_ENABLE_NETPLAY)
2015
component_compile_options(-DRG_ENABLE_NETWORKING -DRG_ENABLE_NETPLAY)
2116
elseif(RG_ENABLE_NETWORKING)

components/retro-go/CMakeLists.txt

Lines changed: 18 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -21,23 +21,33 @@ component_compile_options(
2121
-Wno-unused-function
2222
)
2323
set_source_files_properties(
24-
rg_audio.c rg_display.c
24+
rg_audio.c rg_display.c rg_utils.c rg_surface.c
2525
PROPERTIES COMPILE_FLAGS
26-
-O3
26+
-O2
2727
)
2828

29-
if(RG_ENABLE_NETPLAY)
30-
component_compile_options(-DRG_ENABLE_NETWORKING -DRG_ENABLE_NETPLAY)
31-
elseif(RG_ENABLE_NETWORKING)
32-
component_compile_options(-DRG_ENABLE_NETWORKING)
29+
if (IDF_VERSION_MAJOR EQUAL 5)
30+
if(RG_ENABLE_NETPLAY OR RG_ENABLE_NETWORKING)
31+
message(WARNING "Retro-Go's networking isn't compatible with esp-idf 5.x")
32+
endif()
33+
else()
34+
if(RG_ENABLE_NETPLAY)
35+
component_compile_options(-DRG_ENABLE_NETWORKING -DRG_ENABLE_NETPLAY)
36+
elseif(RG_ENABLE_NETWORKING)
37+
component_compile_options(-DRG_ENABLE_NETWORKING)
38+
endif()
3339
endif()
3440

3541
if(RG_ENABLE_PROFILING)
3642
component_compile_options(-DRG_ENABLE_PROFILING)
3743
endif()
3844

39-
if(RG_PROJECT_VERSION)
40-
component_compile_options(-DRG_PROJECT_VERSION="${RG_PROJECT_VERSION}")
45+
if(RG_BUILD_VERSION)
46+
component_compile_options(-DRG_BUILD_VERSION="${RG_BUILD_VERSION}")
47+
endif()
48+
49+
if(RG_BUILD_TYPE)
50+
component_compile_options(-DRG_BUILD_TYPE=${RG_BUILD_TYPE})
4151
endif()
4252

4353
set(RG_TARGET "RG_TARGET_${RG_BUILD_TARGET}")

0 commit comments

Comments
 (0)