Merge remote-tracking branch 'origin/master' into version/4.1

This commit is contained in:
OBattler
2023-10-10 00:23:30 +02:00
36 changed files with 1153 additions and 400 deletions

View File

@@ -340,6 +340,7 @@ extern const machine_filter_t machine_chipsets[];
extern const machine_t machines[];
extern int bios_only;
extern int machine;
extern void * machine_snd;
/* Core functions. */
extern int machine_count(void);
@@ -371,16 +372,25 @@ extern void machine_close(void);
extern int machine_has_mouse(void);
extern int machine_is_sony(void);
extern uint8_t machine_get_p1_default(void);
extern uint8_t machine_get_p1(void);
extern void machine_set_p1_default(uint8_t val);
extern void machine_set_p1(uint8_t val);
extern void machine_and_p1(uint8_t val);
extern void machine_init_p1(void);
extern uint8_t machine_handle_p1(uint8_t write, uint8_t val);
extern uint32_t machine_get_gpio_default(void);
extern uint32_t machine_get_gpio(void);
extern void machine_set_gpio_default(uint32_t val);
extern void machine_set_gpio(uint32_t val);
extern void machine_and_gpio(uint32_t val);
extern void machine_init_gpio(void);
extern uint32_t machine_handle_gpio(uint8_t write, uint32_t val);
extern uint32_t machine_get_gpio_acpi_default(void);
extern uint32_t machine_get_gpio_acpi(void);
extern void machine_set_gpio_acpi(uint32_t gpio_val);
extern void machine_set_gpio_acpi_default(uint32_t val);
extern void machine_set_gpio_acpi(uint32_t val);
extern void machine_and_gpio_acpi(uint32_t val);
extern void machine_init_gpio_acpi(void);
extern uint32_t machine_handle_gpio_acpi(uint8_t write, uint32_t val);
@@ -613,6 +623,7 @@ extern int machine_at_exp8551_init(const machine_t *);
extern int machine_at_gw2katx_init(const machine_t *);
extern int machine_at_thor_init(const machine_t *);
extern int machine_at_mrthor_init(const machine_t *);
extern uint32_t machine_at_endeavor_gpio_handler(uint8_t write, uint32_t val);
extern int machine_at_endeavor_init(const machine_t *);
extern int machine_at_ms5119_init(const machine_t *);
extern int machine_at_pb640_init(const machine_t *);
@@ -637,6 +648,7 @@ extern int machine_at_p55t2p4_init(const machine_t *);
extern int machine_at_m7shi_init(const machine_t *);
extern int machine_at_tc430hx_init(const machine_t *);
extern int machine_at_infinia7200_init(const machine_t *);
extern int machine_at_cu430hx_init(const machine_t *);
extern int machine_at_equium5200_init(const machine_t *);
extern int machine_at_pcv90_init(const machine_t *);
extern int machine_at_p65up5_cp55t2d_init(const machine_t *);

View File

@@ -71,7 +71,6 @@ typedef struct sb_ct1345_mixer_t {
uint8_t index;
uint8_t regs[256];
} sb_ct1345_mixer_t;
/* SB16 and AWE32 */
@@ -147,6 +146,7 @@ typedef struct sb_t {
uint8_t pnp_rom[512];
uint16_t opl_pnp_addr;
uint16_t gameport_addr;
void *opl_mixer;
void (*opl_mix)(void*, double*, double*);

View File

@@ -81,6 +81,9 @@ extern void inital(void);
extern void givealbuffer(void *buf);
extern void givealbuffer_cd(void *buf);
#define sb_vibra16c_onboard_relocate_base sb_vibra16s_onboard_relocate_base
extern void sb_vibra16s_onboard_relocate_base(uint16_t new_addr, void *priv);
#ifdef EMU_DEVICE_H
/* AdLib and AdLib Gold */
extern const device_t adlib_device;
@@ -128,6 +131,11 @@ extern const device_t sb_pro_v2_device;
extern const device_t sb_pro_mcv_device;
extern const device_t sb_pro_compat_device;
extern const device_t sb_16_device;
extern const device_t sb_vibra16s_onboard_device;
extern const device_t sb_vibra16s_device;
extern const device_t sb_vibra16xv_device;
extern const device_t sb_vibra16c_onboard_device;
extern const device_t sb_vibra16c_device;
extern const device_t sb_16_pnp_device;
extern const device_t sb_16_compat_device;
extern const device_t sb_16_compat_nompu_device;

View File

@@ -1,3 +1,24 @@
/*
* 86Box A hypervisor and IBM PC system emulator that specializes in
* running old operating systems and software designed for IBM
* PC systems and compatibles from 1981 through fairly recent
* system designs based on the PCI bus.
*
* This file is part of the 86Box distribution.
*
* Thread API header.
*
*
*
* Authors: Sarah Walker, <https://pcem-emulator.co.uk/>
* Miran Grca, <mgrca8@gmail.com>
*
* Copyright 2008-2023 Sarah Walker.
* Copyright 2016-2023 Miran Grca.
*/
#ifndef THREAD_H
# define THREAD_H
#ifdef __cplusplus
extern "C" {
#endif
@@ -44,3 +65,5 @@ extern int thread_release_mutex(mutex_t *mutex);
#ifdef __cplusplus
}
#endif
#endif /*THREAD_H*/

View File

@@ -15,7 +15,6 @@
*
* Copyright 2022 TheCollector1995.
*/
#ifndef VIDEO_8514A_H
#define VIDEO_8514A_H
@@ -203,4 +202,5 @@ typedef struct ibm8514_t {
int ext_pitch;
int ext_crt_pitch;
} ibm8514_t;
#endif /*VIDEO_8514A_H*/

View File

@@ -16,11 +16,6 @@
* Copyright 2008-2020 Sarah Walker.
* Copyright 2016-2020 Miran Grca.
*/
#include <86box/thread.h>
#include <86box/vid_8514a.h>
#include <86box/vid_xga.h>
#ifndef VIDEO_SVGA_H
# define VIDEO_SVGA_H
@@ -58,8 +53,6 @@ typedef union {
} latch_t;
typedef struct svga_t {
ibm8514_t dev8514;
xga_t xga;
mem_mapping_t mapping;
uint8_t fast;
@@ -269,11 +262,14 @@ typedef struct svga_t {
/* Pointer to monitor */
monitor_t *monitor;
void * dev8514;
void * xga;
} svga_t;
extern int vga_on;
extern void ibm8514_poll(ibm8514_t *dev, svga_t *svga);
extern void ibm8514_poll(void *priv, svga_t *svga);
extern void ibm8514_recalctimings(svga_t *svga);
extern uint8_t ibm8514_ramdac_in(uint16_t port, void *priv);
extern void ibm8514_ramdac_out(uint16_t port, uint8_t val, void *priv);
@@ -283,7 +279,7 @@ extern void ibm8514_accel_out_pixtrans(svga_t *svga, uint16_t port, uint16_t
extern void ibm8514_short_stroke_start(int count, int cpu_input, uint32_t mix_dat, uint32_t cpu_dat, svga_t *svga, uint8_t ssv, int len);
extern void ibm8514_accel_start(int count, int cpu_input, uint32_t mix_dat, uint32_t cpu_dat, svga_t *svga, int len);
extern void xga_poll(xga_t *xga, svga_t *svga);
extern void xga_poll(void *priv, svga_t *svga);
extern void xga_recalctimings(svga_t *svga);
extern int svga_init(const device_t *info, svga_t *svga, void *priv, int memsize,

View File

@@ -14,7 +14,6 @@
*
* Copyright 2022 TheCollector1995.
*/
#ifndef VIDEO_XGA_H
#define VIDEO_XGA_H
@@ -232,4 +231,5 @@ typedef struct xga_t {
int big_endian_linear;
} xga_t;
#endif /*VIDEO_XGA_H*/