From 50ec61ba37f5bea14ef0fc4bc5505a9f400cb61c Mon Sep 17 00:00:00 2001 From: kichikuou Date: Sun, 21 Jul 2024 10:38:45 +0900 Subject: [PATCH] Implement vmMsgSkip HLL functions Reusing the functions for MsgSkip. --- CMakeLists.txt | 1 - src/hll/MsgSkip.c | 37 +++++++++++++++++++++++++++++++++++++ src/hll/vmMsgSkip.c | 39 --------------------------------------- src/meson.build | 1 - 4 files changed, 37 insertions(+), 41 deletions(-) delete mode 100644 src/hll/vmMsgSkip.c diff --git a/CMakeLists.txt b/CMakeLists.txt index 362b830..7e67612 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -190,7 +190,6 @@ target_sources(xsystem4 PRIVATE src/hll/vmKey.c src/hll/vmMapLoader.c src/hll/vmMsgLog.c - src/hll/vmMsgSkip.c src/hll/vmMusic.c src/hll/vmSound.c src/hll/vmSprite.c diff --git a/src/hll/MsgSkip.c b/src/hll/MsgSkip.c index bad8826..37bf752 100644 --- a/src/hll/MsgSkip.c +++ b/src/hll/MsgSkip.c @@ -146,3 +146,40 @@ HLL_LIBRARY(MsgSkip, HLL_EXPORT(GetFlag, MsgSkip_GetFlag), HLL_EXPORT(GetNumofMsg, MsgSkip_GetNumofMsg), HLL_EXPORT(GetNumofFlag, MsgSkip_GetNumofFlag)); + +HLL_QUIET_UNIMPLEMENTED(, void, vmMsgSkip, Init, void *imainsystem); + +static int vmMsgSkip_EnumHandle(void) +{ + return flags ? 1 : 0; +} + +static int vmMsgSkip_Open(struct string *fname, possibly_unused int option) +{ + return MsgSkip_Init(fname); +} + +static void vmMsgSkip_Close(possibly_unused int handle) +{ + msgskip_save(); +} + +static int vmMsgSkip_Query(possibly_unused int handle, int msgnum) +{ + int r = MsgSkip_GetFlag(msgnum); + // vmMsgSkip does not have an explicit set function. + MsgSkip_SetFlag(msgnum); + return r; +} + +HLL_LIBRARY(vmMsgSkip, + HLL_EXPORT(Init, vmMsgSkip_Init), + HLL_EXPORT(EnumHandle, vmMsgSkip_EnumHandle), + HLL_EXPORT(Open, vmMsgSkip_Open), + HLL_EXPORT(Close, vmMsgSkip_Close), + HLL_EXPORT(Query, vmMsgSkip_Query), + HLL_EXPORT(SetEnable, MsgSkip_SetEnable), + HLL_EXPORT(SetState, MsgSkip_SetState), + HLL_EXPORT(GetEnable, MsgSkip_GetEnable), + HLL_EXPORT(GetState, MsgSkip_GetState) + ); diff --git a/src/hll/vmMsgSkip.c b/src/hll/vmMsgSkip.c deleted file mode 100644 index 8763481..0000000 --- a/src/hll/vmMsgSkip.c +++ /dev/null @@ -1,39 +0,0 @@ -/* Copyright (C) 2024 kichikuou - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, see . - */ - -#include "hll.h" - -HLL_WARN_UNIMPLEMENTED(, void, vmMsgSkip, Init, void *imainsystem); -//int vmMsgSkip_EnumHandle(void); -//int vmMsgSkip_Open(struct string *pIString, int nOption); -//void vmMsgSkip_Close(int hMsgSkip); -//int vmMsgSkip_Query(int hMsgSkip, int nMsgNum); -//void vmMsgSkip_SetEnable(int nEnable); -HLL_QUIET_UNIMPLEMENTED(, void, vmMsgSkip, SetState, int state); -//int vmMsgSkip_GetEnable(void); -//int vmMsgSkip_GetState(void); - -HLL_LIBRARY(vmMsgSkip, - HLL_EXPORT(Init, vmMsgSkip_Init), - HLL_TODO_EXPORT(EnumHandle, vmMsgSkip_EnumHandle), - HLL_TODO_EXPORT(Open, vmMsgSkip_Open), - HLL_TODO_EXPORT(Close, vmMsgSkip_Close), - HLL_TODO_EXPORT(Query, vmMsgSkip_Query), - HLL_TODO_EXPORT(SetEnable, vmMsgSkip_SetEnable), - HLL_EXPORT(SetState, vmMsgSkip_SetState), - HLL_TODO_EXPORT(GetEnable, vmMsgSkip_GetEnable), - HLL_TODO_EXPORT(GetState, vmMsgSkip_GetState) - ); diff --git a/src/meson.build b/src/meson.build index 84021f7..60816bf 100644 --- a/src/meson.build +++ b/src/meson.build @@ -144,7 +144,6 @@ xsystem4 = [version_h, 'hll/vmKey.c', 'hll/vmMapLoader.c', 'hll/vmMsgLog.c', - 'hll/vmMsgSkip.c', 'hll/vmMusic.c', 'hll/vmSound.c', 'hll/vmSprite.c',