Compare commits

...
5 Commits
Author SHA1 Message Date
kichikuou a395366cf8 Version 2.16.1 2025-08-28 13:00:30 +09:00
kichikuou e416fc20d3 CI: Disable portmidi on mingw32
mingw-w64-i686-portmidi is no longer provided.
2025-08-28 12:47:02 +09:00
kichikuou 7d03fc6757 sactlog: Hold log text in UTF-8 2025-08-28 12:24:49 +09:00
kichikuou e3b8c90611 sactlog: Draw text using gfx_drawString()
This fixes #71. It was a regression by commit ec071d4.
2025-08-28 11:41:51 +09:00
kichikuou 361ca89016 Windows: #undef min / max in portab.h 2025-06-20 08:11:35 +09:00
12 changed files with 45 additions and 41 deletions
+3 -2
View File
@@ -15,7 +15,9 @@ jobs:
- sys: ucrt64
package: "xsystem35-64bit"
cmake_args: ""
deps: "cjson:p"
deps: >-
cjson:p
portmidi:p
defaults:
run:
shell: msys2 {0}
@@ -31,7 +33,6 @@ jobs:
SDL2_ttf:p
SDL2_mixer:p
libwebp:p
portmidi:p
${{ matrix.deps }}
- name: Checkout
+11 -7
View File
@@ -1,31 +1,35 @@
# Changelog
## 2.16.0 - 2024-06-13
## 2.16.1 - 2025-08-28
- Fixed text rendering issue in SACT log (#71)
- Windows: The 32-bit version no longer supports the portmidi MIDI backend
## 2.16.0 - 2025-06-13
- Fixed map tile color issue in Graymerca (#67)
- Windows: Implemented number input dialog for the `NI` command (#68)
- Android: Added "Clear Save Files" launcher menu command
## 2.15.1 - 2024-05-14
## 2.15.1 - 2025-05-14
- Fixed a text rendering issue in Rance 5D (#66)
## 2.15.0 - 2024-04-21
## 2.15.0 - 2025-04-21
- Fixed color palette bug introduced in v2.14.2.
- Fixed uncancellable message waiting mode.
- Android: "Install from ZIP" button is moved to the top-right option menu.
- Android: Improved extraction logic of track numbers from audio file names.
## 2.14.3 - 2024-04-01
## 2.14.3 - 2025-04-01
- Fixed build for big endian architectures.
## 2.14.2 - 2024-03-09
## 2.14.2 - 2025-03-09
- Android: Back button to exit the game (#50)
- Improved touch input usability in ママトト (#64)
## 2.14.1 - 2024-02-07
## 2.14.1 - 2025-02-07
- Fixed font selection and text decoration not working in selection menus.
- Fixed a graphic issue in DALK intro.
## 2.14.0 - 2024-01-09
## 2.14.0 - 2025-01-09
- New supported games: 俺の下であがけ and 楽園行.
- Windows: On Windows 10 version 1903 or above, now xsystem35 can handle
Japanese filenames correctly even if the system locale is not Japanese.
+1 -1
View File
@@ -5,7 +5,7 @@ set(CMAKE_C_STANDARD 99)
enable_testing()
set(CMAKE_EXPORT_COMPILE_COMMANDS TRUE)
set(XSYSTEM35_VERSION "2.16.0")
set(XSYSTEM35_VERSION "2.16.1")
include(CheckSymbolExists)
include(FetchContent)
+2 -2
View File
@@ -16,8 +16,8 @@ android {
defaultConfig {
minSdkVersion 21
targetSdkVersion 34
versionCode 35
versionName "2.16.0" + gitRevision()
versionCode 36
versionName "2.16.1" + gitRevision()
externalNativeBuild {
cmake {
arguments "-DANDROID_APP_PLATFORM=android-19", "-DANDROID_STL=c++_static"
+1 -1
View File
@@ -281,7 +281,7 @@ struct _sact {
// バックログ
bool logging;
List *log;
List *log; // UTF-8 strings
};
typedef struct _sact sact_t;
+17 -19
View File
@@ -36,12 +36,13 @@
#include "nact.h"
#include "sact.h"
#include "sprite.h"
#include "drawtext.h"
#include "utfsjis.h"
#include "gfx.h"
#include "ags.h"
#include "font.h"
#define LOGMSG_LINES 6
static const char *logmsg_utf8[LOGMSG_LINES] = {
static char *logmsg[LOGMSG_LINES] = {
"\n",
"※バックログ操作方法※",
"[ESC]またはマウス右クリックでゲームに戻る",
@@ -56,7 +57,7 @@ static const char *logmsg_utf8[LOGMSG_LINES] = {
PageUP/Downで1ページ送り
*/
#define FONTSIZEINDEX 10
#define INDEX_FONTSIZE 10
#define FONTSIZE 20
#define LOGLINENUM (main_surface->h / FONTSIZE)
static int curline;
@@ -68,6 +69,10 @@ static void draw_log() {
char pinfo[256];
List *node;
#ifdef __EMSCRIPTEN__
load_mincho_font();
#endif
SDL_Surface *hline = SDL_CreateRGBSurfaceWithFormat(0, main_surface->w, 3, 32, SDL_PIXELFORMAT_RGB888);
SDL_FillRect(hline, NULL, SDL_MapRGB(hline->format, 255, 255, 255));
SDL_SetSurfaceBlendMode(hline, SDL_BLENDMODE_BLEND);
@@ -80,8 +85,8 @@ static void draw_log() {
// ページ位置情報
len = snprintf(pinfo, sizeof(pinfo) -1, "%d/%d", curline, list_length(sact.log));
dt_setfont(FONT_GOTHIC, FONTSIZEINDEX);
dt_drawtext_col(main_surface, main_surface->w - FONTSIZEINDEX *len /2, 0, pinfo, 255, 255, 255);
ags_setFont(FONT_GOTHIC, INDEX_FONTSIZE);
gfx_drawString(main_surface->w - INDEX_FONTSIZE * len / 2, 0, pinfo, 255);
// 表示始め位置
node = list_nth(sact.log, list_length(sact.log) - curline);
@@ -93,11 +98,11 @@ static void draw_log() {
SDL_BlitSurface(hline, NULL, main_surface, &(SDL_Rect){0, y + FONTSIZE/2, main_surface->w, 3});
} else {
if (cur < 6) {
dt_setfont(FONT_MINCHO, FONTSIZE);
ags_setFont(FONT_MINCHO, FONTSIZE);
} else {
dt_setfont(FONT_GOTHIC, FONTSIZE);
ags_setFont(FONT_GOTHIC, FONTSIZE);
}
dt_drawtext_col(main_surface, 0, y, str, 255, 255, 255);
gfx_drawString(0, y, str, 255);
}
y += FONTSIZE;
cur--;
@@ -113,13 +118,7 @@ bool sblog_start(void) {
if (sact.version < 120)
return false;
static char *logmsg[LOGMSG_LINES];
if (!logmsg[0]) {
for (int i = 0; i < LOGMSG_LINES; i++)
logmsg[i] = fromUTF8(logmsg_utf8[i]);
}
// 説明文章を追加
// Append instruction text
for (int i = 0; i < LOGMSG_LINES; i++)
sact.log = list_append(sact.log, logmsg[i]);
@@ -138,10 +137,9 @@ void sblog_end(void) {
SDL_FreeSurface(back);
// 説明文章を削除
// Remove instruction text
for (i = 0; i < LOGMSG_LINES; i++) {
node = list_last(sact.log);
sact.log = list_remove(sact.log, node->data);
sact.log = list_remove(sact.log, logmsg[i]);
}
}
+1 -1
View File
@@ -533,7 +533,7 @@ static void append_to_log(char *msg) {
static void sactlog_newline() {
if (sact.logging) {
if (sact.msgbuf2[0] == '\0') return;
sact.log = list_append(sact.log, strdup(sact.msgbuf2));
sact.log = list_append(sact.log, toUTF8(sact.msgbuf2));
sact.msgbuf2[0] = '\0';
}
}
-2
View File
@@ -21,8 +21,6 @@
#include <stdlib.h>
#ifdef _WIN32
#include <windows.h>
#undef max
#undef min
#else // _WIN32
#include <errno.h>
#include <fcntl.h>
+9
View File
@@ -28,6 +28,15 @@
#include <stdint.h>
#include "config.h"
#ifdef _WIN32
# ifdef min
# undef min
# endif
# ifdef max
# undef max
# endif
# define NOMINMAX
#endif
#define min(x,y) ((x) < (y) ? (x) : (y))
#define max(x,y) ((x) > (y) ? (x) : (y))
-2
View File
@@ -17,8 +17,6 @@
*
*/
#include <windows.h>
#undef min
#undef max
#include <stdio.h>
#include <signal.h>
#include "win/console.h"
-2
View File
@@ -18,8 +18,6 @@
*/
#include <windows.h>
#include <commctrl.h>
#undef min
#undef max
#include <SDL_syswm.h>
#include "menu.h"
#include "gfx_private.h"
-2
View File
@@ -17,8 +17,6 @@
*
*/
#include <windows.h>
#undef min
#undef max
#include <time.h>
#include <SDL_syswm.h>
#include "system.h"