Merge branch 'master' into metal

This commit is contained in:
tildearrow 2024-04-15 17:39:36 -05:00
commit 622eff327d
8 changed files with 26 additions and 8 deletions

View file

@ -255,11 +255,6 @@ jobs:
rmdir orig
rm Furnace-*-Darwin.dmg
if [ -e new/Furnace.app/Contents/Resources/bin/furnace ]; then
rm -v new/Furnace.app/Contents/Resources/bin/furnace
rmdir new/Furnace.app/Contents/Resources/bin
fi
echo "copying extra stuff"
cp -v ../LICENSE new/LICENSE.txt
cp -v ../res/releaseReadme/stable-mac.txt new/README

View file

@ -122,6 +122,12 @@ option(WITH_DEMOS "Install demo songs" ON)
option(WITH_INSTRUMENTS "Install instruments" ON)
option(WITH_WAVETABLES "Install wavetables" ON)
option(SHOW_OPEN_ASSETS_MENU_ENTRY "Show option to open built-in assets directory (on supported platforms)" OFF)
if (APPLE)
option(FORCE_APPLE_BIN "Force enable binary installation to /bin" OFF)
else()
# not Apple - not needed
set(FORCE_APPLE_BIN OFF)
endif()
set(DEPENDENCIES_INCLUDE_DIRS extern/IconFontCppHeaders src/icon)
@ -1174,7 +1180,9 @@ if (NOT ANDROID OR TERMUX)
endforeach()
install(FILES res/logo.png RENAME furnace.png DESTINATION ${CMAKE_INSTALL_DATADIR}/icons/hicolor/1024x1024/apps)
else()
install(TARGETS furnace RUNTIME DESTINATION bin)
if (NOT APPLE OR FORCE_APPLE_BIN)
install(TARGETS furnace RUNTIME DESTINATION bin)
endif()
endif()
set(CPACK_PACKAGE_NAME "Furnace")

View file

@ -278,6 +278,7 @@ Available options:
| `WITH_INSTRUMENTS` | `ON` | Install demo instruments on `make install` |
| `WITH_WAVETABLES` | `ON` | Install wavetables on `make install` |
| `SHOW_OPEN_ASSETS_MENU_ENTRY` | `OFF` | Show option to open built-in assets directory (on supported platforms) |
| `FORCE_APPLE_BIN` | `OFF` | Enable installation of binaries (when doing `make install`) to PREFIX/bin on Apple platforms |
(\*) `ON` if system-installed JACK detected, otherwise `OFF`

Binary file not shown.

View file

@ -298,7 +298,7 @@ namespace
out_glyph_info->Height = (int)ft_bitmap->rows;
out_glyph_info->OffsetX = Face->glyph->bitmap_left;
out_glyph_info->OffsetY = -Face->glyph->bitmap_top;
out_glyph_info->AdvanceX = (float)FT_CEIL(slot->advance.x);
out_glyph_info->AdvanceX = (float)FT_CEIL(slot->advance.x-((LoadFlags&FT_LOAD_NO_HINTING)?31:0));
out_glyph_info->IsColored = (ft_bitmap->pixel_mode == FT_PIXEL_MODE_BGRA);
return ft_bitmap;

View file

@ -543,7 +543,7 @@ bool DivEngine::loadFTM(unsigned char* file, size_t len, bool dnft, bool dnft_si
tchans = reader.readI();
if (tchans<0 || tchans>=DIV_MAX_CHANS) {
if (tchans>=DIV_MAX_CHANS) {
logE("invalid channel count! %d",tchans);
lastError = "invalid channel count";
delete[] file;

View file

@ -134,6 +134,7 @@ const char* aboutLine[]={
"NeoWar",
"Nerreave",
"niffuM",
"Nikku4211",
"<nk>",
"Notakin",
"nwcr",

View file

@ -216,6 +216,19 @@ void FurnaceGUI::initSystemPresets() {
CH(DIV_SYSTEM_SNES, 1.0f, 0, "")
}
);
SUB_ENTRY(
"Super Game Boy", {
CH(DIV_SYSTEM_GB, 1.0f, 0, "customClock=4295455"),
CH(DIV_SYSTEM_SNES, 1.0f, 0, "")
},
"tickRate=61.44697015935724"
);
SUB_ENTRY(
"Super Game Boy 2", {
CH(DIV_SYSTEM_GB, 1.0f, 0, ""),
CH(DIV_SYSTEM_SNES, 1.0f, 0, "")
}
);
ENTRY(
"Mattel Intellivision", {
CH(DIV_SYSTEM_AY8910, 1.0f, 0, "chipType=3")