Merge remote-tracking branch 'origin/master' into qt-wacom-serial
This commit is contained in:
@@ -39,7 +39,7 @@ if(MUNT_EXTERNAL)
|
|||||||
endif()
|
endif()
|
||||||
|
|
||||||
project(86Box
|
project(86Box
|
||||||
VERSION 3.11
|
VERSION 4.0
|
||||||
DESCRIPTION "Emulator of x86-based systems"
|
DESCRIPTION "Emulator of x86-based systems"
|
||||||
HOMEPAGE_URL "https://86box.net"
|
HOMEPAGE_URL "https://86box.net"
|
||||||
LANGUAGES C CXX)
|
LANGUAGES C CXX)
|
||||||
|
|||||||
4
debian/changelog
vendored
4
debian/changelog
vendored
@@ -1,5 +1,5 @@
|
|||||||
86box (3.11.0-1) UNRELEASED; urgency=medium
|
86box (4.0) UNRELEASED; urgency=medium
|
||||||
|
|
||||||
* Bump release.
|
* Bump release.
|
||||||
|
|
||||||
-- Jasmine Iwanek <jriwanek@gmail.com> Sun, 18 Nov 2022 23:27:00 -0500
|
-- Jasmine Iwanek <jriwanek@gmail.com> Tue, 28 Feb 2023 00:02:16 -0500
|
||||||
|
|||||||
70
src/device.c
70
src/device.c
@@ -135,7 +135,7 @@ device_context_restore(void)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static void *
|
static void *
|
||||||
device_add_common(const device_t *d, const device_t *cd, void *p, int inst)
|
device_add_common(const device_t *d, const device_t *cd, void *p, void* params, int inst)
|
||||||
{
|
{
|
||||||
void *priv = NULL;
|
void *priv = NULL;
|
||||||
int c;
|
int c;
|
||||||
@@ -160,7 +160,7 @@ device_add_common(const device_t *d, const device_t *cd, void *p, int inst)
|
|||||||
device_set_context(&device_current, cd, inst);
|
device_set_context(&device_current, cd, inst);
|
||||||
|
|
||||||
if (d->init != NULL) {
|
if (d->init != NULL) {
|
||||||
priv = d->init(d);
|
priv = (d->flags & DEVICE_EXTPARAMS) ? d->init_ext(d, params) : d->init(d);
|
||||||
if (priv == NULL) {
|
if (priv == NULL) {
|
||||||
if (d->name)
|
if (d->name)
|
||||||
device_log("DEVICE: device '%s' init failed\n", d->name);
|
device_log("DEVICE: device '%s' init failed\n", d->name);
|
||||||
@@ -199,55 +199,103 @@ device_get_internal_name(const device_t *d)
|
|||||||
void *
|
void *
|
||||||
device_add(const device_t *d)
|
device_add(const device_t *d)
|
||||||
{
|
{
|
||||||
return device_add_common(d, d, NULL, 0);
|
return device_add_common(d, d, NULL, NULL, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
void *
|
||||||
|
device_add_parameters(const device_t *d, void* params)
|
||||||
|
{
|
||||||
|
return device_add_common(d, d, NULL, params, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* For devices that do not have an init function (internal video etc.) */
|
/* For devices that do not have an init function (internal video etc.) */
|
||||||
void
|
void
|
||||||
device_add_ex(const device_t *d, void *priv)
|
device_add_ex(const device_t *d, void *priv)
|
||||||
{
|
{
|
||||||
device_add_common(d, d, priv, 0);
|
device_add_common(d, d, priv, NULL, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
device_add_ex_parameters(const device_t *d, void* priv, void *params)
|
||||||
|
{
|
||||||
|
device_add_common(d, d, priv, params, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
void *
|
void *
|
||||||
device_add_inst(const device_t *d, int inst)
|
device_add_inst(const device_t *d, int inst)
|
||||||
{
|
{
|
||||||
return device_add_common(d, d, NULL, inst);
|
return device_add_common(d, d, NULL, NULL, inst);
|
||||||
|
}
|
||||||
|
|
||||||
|
void *
|
||||||
|
device_add_inst_parameters(const device_t *d, int inst, void *params)
|
||||||
|
{
|
||||||
|
return device_add_common(d, d, NULL, params, inst);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* For devices that do not have an init function (internal video etc.) */
|
/* For devices that do not have an init function (internal video etc.) */
|
||||||
void
|
void
|
||||||
device_add_inst_ex(const device_t *d, void *priv, int inst)
|
device_add_inst_ex(const device_t *d, void *priv, int inst)
|
||||||
{
|
{
|
||||||
device_add_common(d, d, priv, inst);
|
device_add_common(d, d, priv, NULL, inst);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* These four are to add a device with another device's context - will be
|
void
|
||||||
|
device_add_inst_ex_parameters(const device_t *d, void *priv, int inst, void *params)
|
||||||
|
{
|
||||||
|
device_add_common(d, d, priv, params, inst);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* These eight are to add a device with another device's context - will be
|
||||||
used to add machines' internal devices. */
|
used to add machines' internal devices. */
|
||||||
void *
|
void *
|
||||||
device_cadd(const device_t *d, const device_t *cd)
|
device_cadd(const device_t *d, const device_t *cd)
|
||||||
{
|
{
|
||||||
return device_add_common(d, cd, NULL, 0);
|
return device_add_common(d, cd, NULL, NULL, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
void *
|
||||||
|
device_cadd_parameters(const device_t *d, const device_t *cd, void *params)
|
||||||
|
{
|
||||||
|
return device_add_common(d, cd, NULL, params, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* For devices that do not have an init function (internal video etc.) */
|
/* For devices that do not have an init function (internal video etc.) */
|
||||||
void
|
void
|
||||||
device_cadd_ex(const device_t *d, const device_t *cd, void *priv)
|
device_cadd_ex(const device_t *d, const device_t *cd, void *priv)
|
||||||
{
|
{
|
||||||
device_add_common(d, cd, priv, 0);
|
device_add_common(d, cd, priv, NULL, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
device_cadd_ex_parameters(const device_t *d, const device_t *cd, void *priv, void *params)
|
||||||
|
{
|
||||||
|
device_add_common(d, cd, priv, params, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
void *
|
void *
|
||||||
device_cadd_inst(const device_t *d, const device_t *cd, int inst)
|
device_cadd_inst(const device_t *d, const device_t *cd, int inst)
|
||||||
{
|
{
|
||||||
return device_add_common(d, cd, NULL, inst);
|
return device_add_common(d, cd, NULL, NULL, inst);
|
||||||
|
}
|
||||||
|
|
||||||
|
void *
|
||||||
|
device_cadd_inst_parameters(const device_t *d, const device_t *cd, int inst, void *params)
|
||||||
|
{
|
||||||
|
return device_add_common(d, cd, NULL, params, inst);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* For devices that do not have an init function (internal video etc.) */
|
/* For devices that do not have an init function (internal video etc.) */
|
||||||
void
|
void
|
||||||
device_cadd_inst_ex(const device_t *d, const device_t *cd, void *priv, int inst)
|
device_cadd_inst_ex(const device_t *d, const device_t *cd, void *priv, int inst)
|
||||||
{
|
{
|
||||||
device_add_common(d, cd, priv, inst);
|
device_add_common(d, cd, priv, NULL, inst);
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
device_cadd_inst_ex_parameters(const device_t *d, const device_t *cd, void *priv, int inst, void* params)
|
||||||
|
{
|
||||||
|
device_add_common(d, cd, priv, params, inst);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|||||||
@@ -69,7 +69,9 @@ enum {
|
|||||||
DEVICE_AGP = 0x400, /* requires the AGP bus */
|
DEVICE_AGP = 0x400, /* requires the AGP bus */
|
||||||
DEVICE_AC97 = 0x800, /* requires the AC'97 bus */
|
DEVICE_AC97 = 0x800, /* requires the AC'97 bus */
|
||||||
DEVICE_COM = 0x1000, /* requires a serial port */
|
DEVICE_COM = 0x1000, /* requires a serial port */
|
||||||
DEVICE_LPT = 0x2000 /* requires a parallel port */
|
DEVICE_LPT = 0x2000, /* requires a parallel port */
|
||||||
|
|
||||||
|
DEVICE_EXTPARAMS = 0x40000000 /* accepts extended parameters */
|
||||||
};
|
};
|
||||||
|
|
||||||
#define BIOS_NORMAL 0
|
#define BIOS_NORMAL 0
|
||||||
@@ -118,9 +120,12 @@ typedef struct _device_ {
|
|||||||
const char *name;
|
const char *name;
|
||||||
const char *internal_name;
|
const char *internal_name;
|
||||||
uint32_t flags; /* system flags */
|
uint32_t flags; /* system flags */
|
||||||
uint32_t local; /* flags local to device */
|
uintptr_t local; /* flags local to device */
|
||||||
|
|
||||||
|
union {
|
||||||
void *(*init)(const struct _device_ *);
|
void *(*init)(const struct _device_ *);
|
||||||
|
void *(*init_ext)(const struct _device_ *, void*);
|
||||||
|
};
|
||||||
void (*close)(void *priv);
|
void (*close)(void *priv);
|
||||||
void (*reset)(void *priv);
|
void (*reset)(void *priv);
|
||||||
union {
|
union {
|
||||||
@@ -150,13 +155,21 @@ extern void device_context(const device_t *d);
|
|||||||
extern void device_context_inst(const device_t *d, int inst);
|
extern void device_context_inst(const device_t *d, int inst);
|
||||||
extern void device_context_restore(void);
|
extern void device_context_restore(void);
|
||||||
extern void *device_add(const device_t *d);
|
extern void *device_add(const device_t *d);
|
||||||
|
extern void *device_add_parameters(const device_t *d, void *params);
|
||||||
extern void device_add_ex(const device_t *d, void *priv);
|
extern void device_add_ex(const device_t *d, void *priv);
|
||||||
|
extern void device_add_ex_parameters(const device_t *d, void *priv, void *params);
|
||||||
extern void *device_add_inst(const device_t *d, int inst);
|
extern void *device_add_inst(const device_t *d, int inst);
|
||||||
|
extern void *device_add_inst_parameters(const device_t *d, int inst, void *params);
|
||||||
extern void device_add_inst_ex(const device_t *d, void *priv, int inst);
|
extern void device_add_inst_ex(const device_t *d, void *priv, int inst);
|
||||||
|
extern void device_add_inst_ex_parameters(const device_t *d, void *priv, int inst, void *params);
|
||||||
extern void *device_cadd(const device_t *d, const device_t *cd);
|
extern void *device_cadd(const device_t *d, const device_t *cd);
|
||||||
|
extern void *device_cadd_parameters(const device_t *d, const device_t *cd, void *params);
|
||||||
extern void device_cadd_ex(const device_t *d, const device_t *cd, void *priv);
|
extern void device_cadd_ex(const device_t *d, const device_t *cd, void *priv);
|
||||||
|
extern void device_cadd_ex_parameters(const device_t *d, const device_t *cd, void *priv, void *params);
|
||||||
extern void *device_cadd_inst(const device_t *d, const device_t *cd, int inst);
|
extern void *device_cadd_inst(const device_t *d, const device_t *cd, int inst);
|
||||||
|
extern void *device_cadd_inst_parameters(const device_t *d, const device_t *cd, int inst, void *params);
|
||||||
extern void device_cadd_inst_ex(const device_t *d, const device_t *cd, void *priv, int inst);
|
extern void device_cadd_inst_ex(const device_t *d, const device_t *cd, void *priv, int inst);
|
||||||
|
extern void device_cadd_inst_ex_parameters(const device_t *d, const device_t *cd, void *priv, int inst, void *params);
|
||||||
extern void device_close_all(void);
|
extern void device_close_all(void);
|
||||||
extern void device_reset_all(void);
|
extern void device_reset_all(void);
|
||||||
extern void device_reset_all_pci(void);
|
extern void device_reset_all_pci(void);
|
||||||
|
|||||||
@@ -279,7 +279,7 @@ typedef struct _machine_ {
|
|||||||
const char *name;
|
const char *name;
|
||||||
const char *internal_name;
|
const char *internal_name;
|
||||||
uint32_t type;
|
uint32_t type;
|
||||||
uint32_t chipset;
|
uintptr_t chipset;
|
||||||
int (*init)(const struct _machine_ *);
|
int (*init)(const struct _machine_ *);
|
||||||
uintptr_t pad, pad0, pad1, pad2;
|
uintptr_t pad, pad0, pad1, pad2;
|
||||||
const machine_cpu_t cpu;
|
const machine_cpu_t cpu;
|
||||||
|
|||||||
@@ -22,11 +22,11 @@
|
|||||||
#define EMU_NAME "86Box"
|
#define EMU_NAME "86Box"
|
||||||
#define EMU_NAME_W LSTR(EMU_NAME)
|
#define EMU_NAME_W LSTR(EMU_NAME)
|
||||||
|
|
||||||
#define EMU_VERSION "3.11"
|
#define EMU_VERSION "4.0"
|
||||||
#define EMU_VERSION_W LSTR(EMU_VERSION)
|
#define EMU_VERSION_W LSTR(EMU_VERSION)
|
||||||
#define EMU_VERSION_EX "3.50" /* frozen due to IDE re-detection behavior on Windows */
|
#define EMU_VERSION_EX "3.50" /* frozen due to IDE re-detection behavior on Windows */
|
||||||
#define EMU_VERSION_MAJ 3
|
#define EMU_VERSION_MAJ 4
|
||||||
#define EMU_VERSION_MIN 11
|
#define EMU_VERSION_MIN 0
|
||||||
#define EMU_VERSION_PATCH 0
|
#define EMU_VERSION_PATCH 0
|
||||||
|
|
||||||
#define EMU_BUILD_NUM 0
|
#define EMU_BUILD_NUM 0
|
||||||
@@ -42,7 +42,7 @@
|
|||||||
#define EMU_ROMS_URL "https://github.com/86Box/roms/releases/latest"
|
#define EMU_ROMS_URL "https://github.com/86Box/roms/releases/latest"
|
||||||
#define EMU_ROMS_URL_W LSTR(EMU_ROMS_URL)
|
#define EMU_ROMS_URL_W LSTR(EMU_ROMS_URL)
|
||||||
#ifdef RELEASE_BUILD
|
#ifdef RELEASE_BUILD
|
||||||
# define EMU_DOCS_URL "https://86box.readthedocs.io/en/v3.11/"
|
# define EMU_DOCS_URL "https://86box.readthedocs.io/en/v4.0/"
|
||||||
#else
|
#else
|
||||||
# define EMU_DOCS_URL "https://86box.readthedocs.io"
|
# define EMU_DOCS_URL "https://86box.readthedocs.io"
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@@ -340,6 +340,16 @@ WindowsRawInputFilter::mouse_handle(PRAWINPUT raw)
|
|||||||
else if (state.usButtonFlags & RI_MOUSE_RIGHT_BUTTON_UP)
|
else if (state.usButtonFlags & RI_MOUSE_RIGHT_BUTTON_UP)
|
||||||
buttons &= ~2;
|
buttons &= ~2;
|
||||||
|
|
||||||
|
if (state.usButtonFlags & RI_MOUSE_BUTTON_4_DOWN)
|
||||||
|
buttons |= 8;
|
||||||
|
else if (state.usButtonFlags & RI_MOUSE_BUTTON_4_UP)
|
||||||
|
buttons &= ~8;
|
||||||
|
|
||||||
|
if (state.usButtonFlags & RI_MOUSE_BUTTON_5_DOWN)
|
||||||
|
buttons |= 16;
|
||||||
|
else if (state.usButtonFlags & RI_MOUSE_BUTTON_5_UP)
|
||||||
|
buttons &= ~16;
|
||||||
|
|
||||||
if (state.usButtonFlags & RI_MOUSE_WHEEL) {
|
if (state.usButtonFlags & RI_MOUSE_WHEEL) {
|
||||||
dwheel += (SHORT) state.usButtonData / 120;
|
dwheel += (SHORT) state.usButtonData / 120;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -15,7 +15,7 @@
|
|||||||
%global romver v3.11
|
%global romver v3.11
|
||||||
|
|
||||||
Name: 86Box
|
Name: 86Box
|
||||||
Version: 3.11
|
Version: 4.0
|
||||||
Release: 1%{?dist}
|
Release: 1%{?dist}
|
||||||
Summary: Classic PC emulator
|
Summary: Classic PC emulator
|
||||||
License: GPLv2+
|
License: GPLv2+
|
||||||
@@ -117,5 +117,5 @@ popd
|
|||||||
%{_datadir}/%{name}/roms
|
%{_datadir}/%{name}/roms
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
* Fri Nov 18 2022 Robert de Rooy <robert.de.rooy[AT]gmail.com> 3.11-1
|
* Tue Feb 28 2023 Robert de Rooy <robert.de.rooy[AT]gmail.com> 4.0-1
|
||||||
- Bump release
|
- Bump release
|
||||||
|
|||||||
@@ -10,7 +10,7 @@
|
|||||||
</categories>
|
</categories>
|
||||||
<launchable type="desktop-id">net.86box.86Box.desktop</launchable>
|
<launchable type="desktop-id">net.86box.86Box.desktop</launchable>
|
||||||
<releases>
|
<releases>
|
||||||
<release version="3.11" date="2022-11-18"/>
|
<release version="4.0" date="2023-02-28"/>
|
||||||
</releases>
|
</releases>
|
||||||
<content_rating type="oars-1.1" />
|
<content_rating type="oars-1.1" />
|
||||||
<description>
|
<description>
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "86box",
|
"name": "86box",
|
||||||
"version-string": "3.11",
|
"version-string": "4.0",
|
||||||
"homepage": "https://86box.net/",
|
"homepage": "https://86box.net/",
|
||||||
"documentation": "https://86box.readthedocs.io/",
|
"documentation": "https://86box.readthedocs.io/",
|
||||||
"license": "GPL-2.0-or-later",
|
"license": "GPL-2.0-or-later",
|
||||||
|
|||||||
Reference in New Issue
Block a user