mirror of
https://github.com/86Box/86Box.git
synced 2026-02-23 01:48:21 -07:00
Merge pull request #1865 from richardg867/cleanup30
v3.0 branch cleanup, part 3
This commit is contained in:
@@ -130,7 +130,7 @@ typedef struct _pipc_ {
|
||||
acpi_t *acpi;
|
||||
pipc_io_trap_t io_traps[TRAP_MAX];
|
||||
|
||||
void *gameport, *ac97;
|
||||
void *gameport, *ac97, *sio, *hwm;
|
||||
sb_t *sb;
|
||||
uint16_t midigame_base, sb_base, fmnmi_base;
|
||||
} pipc_t;
|
||||
@@ -164,7 +164,7 @@ static void pipc_write(int func, int addr, uint8_t val, void *priv);
|
||||
|
||||
|
||||
static void
|
||||
pipc_trap_io_pact(int size, uint16_t addr, uint8_t write, uint8_t val, void *priv)
|
||||
pipc_io_trap_pact(int size, uint16_t addr, uint8_t write, uint8_t val, void *priv)
|
||||
{
|
||||
pipc_io_trap_t *trap = (pipc_io_trap_t *) priv;
|
||||
|
||||
@@ -184,6 +184,12 @@ pipc_io_trap_glb(int size, uint16_t addr, uint8_t write, uint8_t val, void *priv
|
||||
|
||||
if (*(trap->en_reg) & trap->mask) {
|
||||
*(trap->sts_reg) |= trap->mask;
|
||||
if (trap->dev->local >= VIA_PIPC_686A) {
|
||||
if (write)
|
||||
trap->dev->acpi->regs.extsmi_val |= 0x1000;
|
||||
else
|
||||
trap->dev->acpi->regs.extsmi_val &= ~0x1000;
|
||||
}
|
||||
acpi_raise_smi(trap->dev->acpi, 1);
|
||||
}
|
||||
}
|
||||
@@ -592,7 +598,7 @@ pipc_trap_update_paden(pipc_t *dev, uint8_t trap_id,
|
||||
/* Set up Primary Activity Detect I/O traps dynamically. */
|
||||
if (enable && !trap->trap) {
|
||||
trap->dev = dev;
|
||||
trap->trap = io_trap_add(pipc_trap_io_pact, trap);
|
||||
trap->trap = io_trap_add(pipc_io_trap_pact, trap);
|
||||
trap->sts_reg = &dev->acpi->regs.padsts;
|
||||
trap->en_reg = &dev->acpi->regs.paden;
|
||||
trap->mask = paden_mask;
|
||||
@@ -824,6 +830,9 @@ pipc_sb_handlers(pipc_t *dev, uint8_t modem)
|
||||
sb_dsp_setirq(&dev->sb->dsp, (irq == 11) ? 10 : irq);
|
||||
|
||||
sb_dsp_setdma8(&dev->sb->dsp, (dev->ac97_regs[0][0x43] >> 4) & 0x03);
|
||||
|
||||
/* Set up CD audio filter. This might not actually work if VIAUDIO writes to CD volume through AC97. */
|
||||
sound_set_cd_audio_filter(sbpro_filter_cd_audio, dev->sb);
|
||||
}
|
||||
|
||||
if (dev->ac97_regs[0][0x42] & 0x02) {
|
||||
@@ -953,7 +962,6 @@ pipc_write(int func, int addr, uint8_t val, void *priv)
|
||||
pipc_t *dev = (pipc_t *) priv;
|
||||
int c;
|
||||
uint8_t pm_func = dev->usb[1] ? 4 : 3;
|
||||
void *subdev;
|
||||
|
||||
if (func > dev->max_func)
|
||||
return;
|
||||
@@ -1043,8 +1051,8 @@ pipc_write(int func, int addr, uint8_t val, void *priv)
|
||||
case 0x50: case 0x51: case 0x52: case 0x85:
|
||||
dev->pci_isa_regs[addr] = val;
|
||||
/* Forward Super I/O-related registers to sio_vt82c686.c */
|
||||
if ((subdev = device_get_priv(&via_vt82c686_sio_device)))
|
||||
vt82c686_sio_write(addr, val, subdev);
|
||||
if (dev->sio)
|
||||
vt82c686_sio_write(addr, val, dev->sio);
|
||||
break;
|
||||
|
||||
case 0x54:
|
||||
@@ -1377,8 +1385,8 @@ pipc_write(int func, int addr, uint8_t val, void *priv)
|
||||
case 0x70: case 0x71: case 0x74:
|
||||
dev->power_regs[addr] = val;
|
||||
/* Forward hardware monitor-related registers to hwm_vt82c686.c */
|
||||
if ((subdev = device_get_priv(&via_vt82c686_hwm_device)))
|
||||
vt82c686_hwm_write(addr, val, subdev);
|
||||
if (dev->hwm)
|
||||
vt82c686_hwm_write(addr, val, dev->hwm);
|
||||
break;
|
||||
|
||||
case 0x80: case 0x81: case 0x84: /* 596A has the SMBus I/O base and enable bit here instead. */
|
||||
@@ -1576,6 +1584,9 @@ pipc_init(const device_t *info)
|
||||
sound_add_handler(sb_get_buffer_sbpro, dev->sb);
|
||||
|
||||
dev->gameport = gameport_add(&gameport_sio_device);
|
||||
|
||||
dev->sio = device_add(&via_vt82c686_sio_device);
|
||||
dev->hwm = device_add(&via_vt82c686_hwm_device);
|
||||
}
|
||||
|
||||
pipc_reset_hard(dev);
|
||||
|
||||
@@ -641,6 +641,8 @@ load_machine(void)
|
||||
machine = machine_get_machine_from_internal_name("p54tp4xe_mr");
|
||||
else if (! strcmp(p, "pcv240"))
|
||||
machine = machine_get_machine_from_internal_name("pcv90");
|
||||
else if (! strcmp(p, "v60n"))
|
||||
machine = machine_get_machine_from_internal_name("acerv60n");
|
||||
else if (! strcmp(p, "tsunamiatx"))
|
||||
machine = machine_get_machine_from_internal_name("s1846");
|
||||
else if (! strcmp(p, "trinity371"))
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
*
|
||||
* Copyright 2020 RichardG.
|
||||
*/
|
||||
#include <math.h>
|
||||
#include <stdarg.h>
|
||||
#include <stdio.h>
|
||||
#include <stdint.h>
|
||||
@@ -28,10 +29,12 @@
|
||||
#include <86box/hwm.h>
|
||||
|
||||
|
||||
#define CLAMP(a, min, max) (((a)< (min)) ? (min) : (((a) > (max)) ? (max) : (a)))
|
||||
#define GL518SM_RPM_TO_REG(r, d) ((r) ? CLAMP(480000 / (r * d), 1, 255) : 0)
|
||||
#define GL518SM_VOLTAGE_TO_REG(v) (((v) / 19) & 0xff)
|
||||
#define GL518SM_VDD_TO_REG(v) ((((v) * 4) / 95) & 0xff)
|
||||
#define CLAMP(a, min, max) (((a) < (min)) ? (min) : (((a) > (max)) ? (max) : (a)))
|
||||
/* Formulas and factors derived from Linux's gl518sm.c driver. */
|
||||
#define GL518SM_RPMDIV(r, d) (CLAMP((r), 1, 960000) * (d))
|
||||
#define GL518SM_RPM_TO_REG(r, d) ((r) ? CLAMP((480000 + GL518SM_RPMDIV(r, d) / 2) / GL518SM_RPMDIV(r, d), 1, 255) : 0)
|
||||
#define GL518SM_VOLTAGE_TO_REG(v) ((uint8_t) round((v) / 19.0))
|
||||
#define GL518SM_VDD_TO_REG(v) ((uint8_t) (((v) * 4) / 95.0))
|
||||
|
||||
|
||||
typedef struct {
|
||||
@@ -139,20 +142,20 @@ gl518sm_read(gl518sm_t *dev, uint8_t reg)
|
||||
ret |= GL518SM_RPM_TO_REG(dev->values->fans[1], 1 << ((dev->regs[0x0f] >> 4) & 0x3));
|
||||
break;
|
||||
|
||||
case 0x0d: /* VIN3 - AOpen System Monitor requires an approximate voltage offset of 13 at least here */
|
||||
ret = 13 + GL518SM_VOLTAGE_TO_REG(dev->values->voltages[2]);
|
||||
case 0x0d: /* VIN3 */
|
||||
ret = GL518SM_VOLTAGE_TO_REG(dev->values->voltages[2]);
|
||||
break;
|
||||
|
||||
case 0x13: /* VIN2 */
|
||||
ret = 13 + GL518SM_VOLTAGE_TO_REG(dev->values->voltages[1]);
|
||||
ret = GL518SM_VOLTAGE_TO_REG(dev->values->voltages[1]);
|
||||
break;
|
||||
|
||||
case 0x14: /* VIN1 */
|
||||
ret = 13 + GL518SM_VOLTAGE_TO_REG(dev->values->voltages[0]);
|
||||
ret = GL518SM_VOLTAGE_TO_REG(dev->values->voltages[0]);
|
||||
break;
|
||||
|
||||
case 0x15: /* VDD */
|
||||
ret = 13 + GL518SM_VDD_TO_REG(dev->values->voltages[3]);
|
||||
ret = GL518SM_VDD_TO_REG(dev->values->voltages[3]);
|
||||
break;
|
||||
|
||||
default: /* other registers */
|
||||
@@ -245,7 +248,7 @@ gl518sm_reset(gl518sm_t *dev)
|
||||
dev->regs[0x0a] = 0xdac5;
|
||||
dev->regs[0x0b] = 0xdac5;
|
||||
dev->regs[0x0c] = 0xdac5;
|
||||
dev->regs[0x0f] = 0xf8;
|
||||
dev->regs[0x0f] = 0x00;
|
||||
|
||||
gl518sm_remap(dev, dev->i2c_addr | (dev->i2c_enabled ? 0x00 : 0x80));
|
||||
}
|
||||
|
||||
@@ -28,8 +28,8 @@
|
||||
|
||||
|
||||
#define CLAMP(a, min, max) (((a) < (min)) ? (min) : (((a) > (max)) ? (max) : (a)))
|
||||
/* Formulas and factors derived from Linux's via686a.c driver. */
|
||||
#define VT82C686_RPM_TO_REG(r, d) ((r) ? CLAMP(1350000 / (r * d), 1, 255) : 0)
|
||||
/* Temperature/voltage formulas and factors derived from Linux's via686a.c driver. */
|
||||
#define VT82C686_TEMP_TO_REG(t) (-1.160370e-10*(t*t*t*t*t*t) + 3.193693e-08*(t*t*t*t*t) - 1.464447e-06*(t*t*t*t) - 2.525453e-04*(t*t*t) + 1.424593e-02*(t*t) + 2.148941e+00*t + 7.275808e+01)
|
||||
#define VT82C686_VOLTAGE_TO_REG(v, f) CLAMP((((v) * (2.628 / (f))) - 120.5) / 25, 0, 255)
|
||||
|
||||
|
||||
@@ -281,7 +281,7 @@ extern int machine_at_dataexpert386sx_init(const machine_t *);
|
||||
extern int machine_at_spc6033p_init(const machine_t *);
|
||||
extern int machine_at_wd76c10_init(const machine_t *);
|
||||
extern int machine_at_arb1374_init(const machine_t *);
|
||||
extern int machine_at_sbc_350a_init(const machine_t *);
|
||||
extern int machine_at_sbc350a_init(const machine_t *);
|
||||
extern int machine_at_flytech386_init(const machine_t *);
|
||||
extern int machine_at_mr1217_init(const machine_t *);
|
||||
extern int machine_at_pja511m_init(const machine_t *);
|
||||
@@ -314,7 +314,7 @@ extern int machine_at_cs4031_init(const machine_t *);
|
||||
|
||||
extern int machine_at_pb410a_init(const machine_t *);
|
||||
|
||||
extern int machine_at_decpc_lpv_init(const machine_t *);
|
||||
extern int machine_at_decpclpv_init(const machine_t *);
|
||||
extern int machine_at_acerv10_init(const machine_t *);
|
||||
|
||||
extern int machine_at_acera1g_init(const machine_t *);
|
||||
@@ -329,8 +329,8 @@ extern int machine_at_vect486vl_init(const machine_t *);
|
||||
extern int machine_at_d824_init(const machine_t *);
|
||||
|
||||
extern int machine_at_403tg_init(const machine_t *);
|
||||
extern int machine_at_403tg_rev_d_init(const machine_t *);
|
||||
extern int machine_at_403tg_rev_d_mr_init(const machine_t *);
|
||||
extern int machine_at_403tg_d_init(const machine_t *);
|
||||
extern int machine_at_403tg_d_mr_init(const machine_t *);
|
||||
extern int machine_at_pc330_6573_init(const machine_t *);
|
||||
extern int machine_at_mvi486_init(const machine_t *);
|
||||
|
||||
@@ -345,7 +345,7 @@ extern int machine_at_dtk486_init(const machine_t *);
|
||||
extern int machine_at_px471_init(const machine_t *);
|
||||
extern int machine_at_win471_init(const machine_t *);
|
||||
extern int machine_at_vi15g_init(const machine_t *);
|
||||
extern int machine_at_green_b_init(const machine_t *);
|
||||
extern int machine_at_greenb_init(const machine_t *);
|
||||
|
||||
extern int machine_at_r418_init(const machine_t *);
|
||||
extern int machine_at_ls486e_init(const machine_t *);
|
||||
@@ -363,10 +363,10 @@ extern int machine_at_486vipio2_init(const machine_t *);
|
||||
extern int machine_at_abpb4_init(const machine_t *);
|
||||
extern int machine_at_win486pci_init(const machine_t *);
|
||||
extern int machine_at_ms4145_init(const machine_t *);
|
||||
extern int machine_at_sbc_490_init(const machine_t *);
|
||||
extern int machine_at_tf_486_init(const machine_t *);
|
||||
extern int machine_at_sbc490_init(const machine_t *);
|
||||
extern int machine_at_tf486_init(const machine_t *);
|
||||
|
||||
extern int machine_at_pci400c_b_init(const machine_t *);
|
||||
extern int machine_at_pci400cb_init(const machine_t *);
|
||||
extern int machine_at_g486ip_init(const machine_t *);
|
||||
|
||||
extern int machine_at_itoxstar_init(const machine_t *);
|
||||
@@ -380,7 +380,7 @@ extern int machine_at_hot433_init(const machine_t *);
|
||||
extern int machine_at_atc1415_init(const machine_t *);
|
||||
extern int machine_at_actionpc2600_init(const machine_t *);
|
||||
extern int machine_at_m919_init(const machine_t *);
|
||||
extern int machine_at_spc7700p_lw_init(const machine_t *);
|
||||
extern int machine_at_spc7700plw_init(const machine_t *);
|
||||
|
||||
#ifdef EMU_DEVICE_H
|
||||
extern const device_t *at_acera1g_get_device(void);
|
||||
@@ -388,7 +388,7 @@ extern const device_t *at_vect486vl_get_device(void);
|
||||
extern const device_t *at_d824_get_device(void);
|
||||
extern const device_t *at_pcs46c_get_device(void);
|
||||
extern const device_t *at_valuepoint433_get_device(void);
|
||||
extern const device_t *at_sbc_490_get_device(void);
|
||||
extern const device_t *at_sbc490_get_device(void);
|
||||
#endif
|
||||
|
||||
/* m_at_commodore.c */
|
||||
@@ -528,19 +528,19 @@ extern const device_t *at_presario2240_get_device(void);
|
||||
/* m_at_sockets7.c */
|
||||
extern int machine_at_p5a_init(const machine_t *);
|
||||
extern int machine_at_m579_init(const machine_t *);
|
||||
extern int machine_at_ga_5aa_init(const machine_t *);
|
||||
extern int machine_at_ga_5ax_init(const machine_t *);
|
||||
extern int machine_at_5aa_init(const machine_t *);
|
||||
extern int machine_at_5ax_init(const machine_t *);
|
||||
|
||||
extern int machine_at_ax59pro_init(const machine_t *);
|
||||
extern int machine_at_mvp3_init(const machine_t *);
|
||||
extern int machine_at_ficva503a_init(const machine_t *);
|
||||
extern int machine_at_sy_5ema_pro_init(const machine_t *);
|
||||
extern int machine_at_5emapro_init(const machine_t *);
|
||||
|
||||
/* m_at_socket8.c */
|
||||
extern int machine_at_p6rp4_init(const machine_t *);
|
||||
|
||||
extern int machine_at_686nx_init(const machine_t *);
|
||||
extern int machine_at_v60n_init(const machine_t *);
|
||||
extern int machine_at_acerv60n_init(const machine_t *);
|
||||
extern int machine_at_vs440fx_init(const machine_t *);
|
||||
extern int machine_at_ap440fx_init(const machine_t *);
|
||||
extern int machine_at_mb600n_init(const machine_t *);
|
||||
|
||||
@@ -93,12 +93,24 @@
|
||||
#define AC97_PRL (1 << 14)
|
||||
|
||||
|
||||
/* New codecs should be added to the end of this enum to avoid breaking configs. */
|
||||
enum {
|
||||
AC97_CODEC_AD1881 = 0,
|
||||
AC97_CODEC_ALC100,
|
||||
AC97_CODEC_CS4297,
|
||||
AC97_CODEC_CS4297A,
|
||||
AC97_CODEC_WM9701A,
|
||||
AC97_CODEC_STAC9708,
|
||||
AC97_CODEC_STAC9721
|
||||
};
|
||||
|
||||
|
||||
typedef struct {
|
||||
const uint16_t index, value, write_mask;
|
||||
} ac97_vendor_reg_t;
|
||||
|
||||
typedef struct {
|
||||
uint32_t vendor_id, max_rate, misc_flags;
|
||||
uint32_t vendor_id, min_rate, max_rate, misc_flags;
|
||||
uint16_t reset_flags, extid_flags,
|
||||
powerdown_mask, regs[64];
|
||||
uint8_t codec_id, vendor_reg_page_max;
|
||||
@@ -112,6 +124,7 @@ extern void ac97_codec_writew(ac97_codec_t *dev, uint8_t reg, uint16_t val);
|
||||
extern void ac97_codec_reset(void *priv);
|
||||
extern void ac97_codec_getattn(void *priv, uint8_t reg, int *l, int *r);
|
||||
extern uint32_t ac97_codec_getrate(void *priv, uint8_t reg);
|
||||
extern const device_t *ac97_codec_get(int model);
|
||||
|
||||
extern void ac97_via_set_slot(void *priv, int slot, int irq_pin);
|
||||
extern uint8_t ac97_via_read_status(void *priv, uint8_t modem);
|
||||
@@ -122,15 +135,17 @@ extern void ac97_via_remap_audio_codec(void *priv, uint16_t new_io_base, uint8_t
|
||||
extern void ac97_via_remap_modem_codec(void *priv, uint16_t new_io_base, uint8_t enable);
|
||||
|
||||
|
||||
#ifdef EMU_DEVICE_H
|
||||
extern ac97_codec_t **ac97_codec, **ac97_modem_codec;
|
||||
extern int ac97_codec_count, ac97_modem_codec_count,
|
||||
ac97_codec_id, ac97_modem_codec_id;
|
||||
|
||||
#ifdef EMU_DEVICE_H
|
||||
extern const device_t ad1881_device;
|
||||
extern const device_t alc100_device;
|
||||
extern const device_t cs4297_device;
|
||||
extern const device_t cs4297a_device;
|
||||
extern const device_t stac9708_device;
|
||||
extern const device_t stac9721_device;
|
||||
extern const device_t wm9701a_device;
|
||||
|
||||
extern const device_t ac97_via_device;
|
||||
|
||||
@@ -12,11 +12,11 @@
|
||||
*
|
||||
* Authors: Sarah Walker, <http://pcem-emulator.co.uk/>
|
||||
* Miran Grca, <mgrca8@gmail.com>
|
||||
* EngiNerd <webmaster.crrc@yahoo.it>
|
||||
* EngiNerd <webmaster.crrc@yahoo.it>
|
||||
*
|
||||
* Copyright 2010-2019 Sarah Walker.
|
||||
* Copyright 2016-2019 Miran Grca.
|
||||
* Copyright 2020 EngiNerd.
|
||||
* Copyright 2020 EngiNerd.
|
||||
*/
|
||||
#include <stdarg.h>
|
||||
#include <stdint.h>
|
||||
@@ -204,7 +204,7 @@ machine_at_neat_ami_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear("roms/machines/ami286/amic206.bin",
|
||||
ret = bios_load_linear("roms/machines/ami286/AMIC206.BIN",
|
||||
0x000f0000, 65536, 0);
|
||||
|
||||
if (bios_only || !ret)
|
||||
@@ -404,8 +404,8 @@ machine_at_spc4216p_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_interleaved("roms/machines/spc4216p/7101.u8",
|
||||
"roms/machines/spc4216p/ac64.u10",
|
||||
ret = bios_load_interleaved("roms/machines/spc4216p/7101.U8",
|
||||
"roms/machines/spc4216p/AC64.U10",
|
||||
0x000f0000, 131072, 0);
|
||||
|
||||
if (bios_only || !ret)
|
||||
@@ -662,7 +662,7 @@ machine_at_spc6033p_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear("roms/machines/spc6033p/phoenix.bin",
|
||||
ret = bios_load_linear("roms/machines/spc6033p/phoenix.BIN",
|
||||
0x000f0000, 65536, 0x10000);
|
||||
|
||||
if (bios_only || !ret)
|
||||
@@ -721,11 +721,11 @@ machine_at_arb1374_init(const machine_t *model)
|
||||
|
||||
|
||||
int
|
||||
machine_at_sbc_350a_init(const machine_t *model)
|
||||
machine_at_sbc350a_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear("roms/machines/sbc_350a/350a.rom",
|
||||
ret = bios_load_linear("roms/machines/sbc350a/350a.rom",
|
||||
0x000f0000, 65536, 0);
|
||||
|
||||
if (bios_only || !ret)
|
||||
|
||||
@@ -459,11 +459,11 @@ machine_at_acerv10_init(const machine_t *model)
|
||||
|
||||
|
||||
int
|
||||
machine_at_decpc_lpv_init(const machine_t *model)
|
||||
machine_at_decpclpv_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear("roms/machines/decpc_lpv/bios.bin-5f2c71ca0a0a5135083487.bin",
|
||||
ret = bios_load_linear("roms/machines/decpclpv/bios.bin",
|
||||
0x000e0000, 131072, 0);
|
||||
|
||||
if (bios_only || !ret)
|
||||
@@ -503,7 +503,7 @@ machine_at_ali1429_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear("roms/machines/ami486/ami486.bin",
|
||||
ret = bios_load_linear("roms/machines/ali1429/ami486.BIN",
|
||||
0x000f0000, 65536, 0);
|
||||
|
||||
if (bios_only || !ret)
|
||||
@@ -640,11 +640,11 @@ machine_at_403tg_init(const machine_t *model)
|
||||
|
||||
|
||||
int
|
||||
machine_at_403tg_rev_d_init(const machine_t *model)
|
||||
machine_at_403tg_d_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear("roms/machines/403tg_rev_d/J403TGRevD.BIN",
|
||||
ret = bios_load_linear("roms/machines/403tg_d/J403TGRevD.BIN",
|
||||
0x000f0000, 65536, 0);
|
||||
|
||||
if (bios_only || !ret)
|
||||
@@ -657,11 +657,11 @@ machine_at_403tg_rev_d_init(const machine_t *model)
|
||||
|
||||
|
||||
int
|
||||
machine_at_403tg_rev_d_mr_init(const machine_t *model)
|
||||
machine_at_403tg_d_mr_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear("roms/machines/403tg_rev_d/MRBiosOPT895.bin",
|
||||
ret = bios_load_linear("roms/machines/403tg_d/MRBiosOPT895.bin",
|
||||
0x000f0000, 65536, 0);
|
||||
|
||||
if (bios_only || !ret)
|
||||
@@ -674,7 +674,7 @@ machine_at_403tg_rev_d_mr_init(const machine_t *model)
|
||||
|
||||
|
||||
int
|
||||
machine_at_pc330_6573_init(const machine_t *model) // doesn't like every CPU other than the iDX4 and the Intel OverDrive, hangs without a PS/2 mouse
|
||||
machine_at_pc330_6573_init(const machine_t *model) /* doesn't like every CPU other than the iDX4 and the Intel OverDrive, hangs without a PS/2 mouse */
|
||||
{
|
||||
int ret;
|
||||
|
||||
@@ -848,11 +848,11 @@ machine_at_vi15g_init(const machine_t *model)
|
||||
|
||||
|
||||
int
|
||||
machine_at_green_b_init(const machine_t *model)
|
||||
machine_at_greenb_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear("roms/machines/green-b/4gpv31-ami-1993-8273517.bin",
|
||||
ret = bios_load_linear("roms/machines/greenb/4gpv31-ami-1993-8273517.bin",
|
||||
0x000f0000, 65536, 0);
|
||||
|
||||
if (bios_only || !ret)
|
||||
@@ -1148,11 +1148,11 @@ machine_at_486sp3_init(const machine_t *model)
|
||||
|
||||
|
||||
int
|
||||
machine_at_pci400c_b_init(const machine_t *model)
|
||||
machine_at_pci400cb_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear("roms/machines/pci400c-b/032295.ROM",
|
||||
ret = bios_load_linear("roms/machines/pci400cb/032295.ROM",
|
||||
0x000e0000, 131072, 0);
|
||||
|
||||
if (bios_only || !ret)
|
||||
@@ -1167,7 +1167,7 @@ machine_at_pci400c_b_init(const machine_t *model)
|
||||
pci_register_slot(0x0E, PCI_CARD_NORMAL, 3, 4, 1, 2); /* 0E = Slot 2 */
|
||||
pci_register_slot(0x0D, PCI_CARD_NORMAL, 2, 3, 4, 1); /* 0D = Slot 3 */
|
||||
pci_register_slot(0x0C, PCI_CARD_NORMAL, 1, 2, 3, 4); /* 0C = Slot 4 */
|
||||
device_add(&keyboard_ps2_ami_pci_device); /* Assume AMI Megakey 1993 stanalone ('P')
|
||||
device_add(&keyboard_ps2_ami_pci_device); /* Assume AMI Megakey 1993 standalone ('P')
|
||||
because of the Tekram machine below. */
|
||||
|
||||
device_add(&ims8848_device);
|
||||
@@ -1419,11 +1419,11 @@ machine_at_ms4145_init(const machine_t *model)
|
||||
|
||||
|
||||
int
|
||||
machine_at_sbc_490_init(const machine_t *model)
|
||||
machine_at_sbc490_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear("roms/machines/sbc-490/07159589.rom",
|
||||
ret = bios_load_linear("roms/machines/sbc490/07159589.rom",
|
||||
0x000e0000, 131072, 0);
|
||||
|
||||
if (bios_only || !ret)
|
||||
@@ -1453,18 +1453,18 @@ machine_at_sbc_490_init(const machine_t *model)
|
||||
|
||||
|
||||
const device_t *
|
||||
at_sbc_490_get_device(void)
|
||||
at_sbc490_get_device(void)
|
||||
{
|
||||
return &tgui9440_onboard_pci_device;
|
||||
}
|
||||
|
||||
|
||||
int
|
||||
machine_at_tf_486_init(const machine_t *model)
|
||||
machine_at_tf486_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear("roms/machines/tf-486/tf486v10.BIN",
|
||||
ret = bios_load_linear("roms/machines/tf486/tf486v10.BIN",
|
||||
0x000e0000, 131072, 0);
|
||||
|
||||
if (bios_only || !ret)
|
||||
@@ -1490,7 +1490,7 @@ machine_at_itoxstar_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear("roms/machines/itoxstar/stara.rom",
|
||||
ret = bios_load_linear("roms/machines/itoxstar/STARA.ROM",
|
||||
0x000c0000, 262144, 0);
|
||||
|
||||
if (bios_only || !ret)
|
||||
@@ -1548,7 +1548,7 @@ machine_at_arb1479_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear("roms/machines/arb1479/1479a.rom",
|
||||
ret = bios_load_linear("roms/machines/arb1479/1479A.rom",
|
||||
0x000c0000, 262144, 0);
|
||||
|
||||
if (bios_only || !ret)
|
||||
@@ -1788,11 +1788,11 @@ machine_at_m919_init(const machine_t *model)
|
||||
|
||||
|
||||
int
|
||||
machine_at_spc7700p_lw_init(const machine_t *model)
|
||||
machine_at_spc7700plw_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear("roms/machines/spc7700p-lw/77LW13FH.P24",
|
||||
ret = bios_load_linear("roms/machines/spc7700plw/77LW13FH.P24",
|
||||
0x000e0000, 131072, 0);
|
||||
|
||||
if (bios_only || !ret)
|
||||
|
||||
@@ -45,7 +45,7 @@ machine_at_p65up5_cpknd_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear("roms/machines/p65up5/ndkn0218.awd",
|
||||
ret = bios_load_linear("roms/machines/p65up5/NDKN0218.AWD",
|
||||
0x000e0000, 131072, 0);
|
||||
|
||||
if (bios_only || !ret)
|
||||
@@ -727,7 +727,7 @@ machine_at_m729_init(const machine_t *model)
|
||||
device_add(&ali1543c_device);
|
||||
device_add(&keyboard_ps2_ami_pci_device);
|
||||
device_add(&sst_flash_29ee010_device);
|
||||
spd_register(SPD_TYPE_SDRAM, 0x3, 128);
|
||||
spd_register(SPD_TYPE_SDRAM, 0x7, 512);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
@@ -119,7 +119,7 @@ machine_at_fw6400gx_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear("roms/machines/fw6400gx/fwgx1211.rom",
|
||||
ret = bios_load_linear("roms/machines/fw6400gx/FWGX1211.ROM",
|
||||
0x000c0000, 262144, 0);
|
||||
|
||||
if (bios_only || !ret)
|
||||
|
||||
@@ -104,6 +104,7 @@ machine_at_s1857_init(const machine_t *model)
|
||||
device_add(&keyboard_ps2_ami_pci_device);
|
||||
device_add(&w83977ef_370_device);
|
||||
device_add(&intel_flash_bxt_device);
|
||||
spd_register(SPD_TYPE_SDRAM, 0x7, 256);
|
||||
|
||||
if (sound_card_current == SOUND_INTERNAL) {
|
||||
device_add(&es1371_onboard_device);
|
||||
@@ -142,6 +143,7 @@ machine_at_p6bap_init(const machine_t *model)
|
||||
device_add(&keyboard_ps2_ami_pci_device);
|
||||
device_add(&sst_flash_39sf020_device);
|
||||
spd_register(SPD_TYPE_SDRAM, 0x7, 256);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
@@ -244,6 +246,10 @@ machine_at_ambx133_init(const machine_t *model)
|
||||
device_add(&keyboard_ps2_ami_pci_device);
|
||||
device_add(&sst_flash_39sf020_device);
|
||||
spd_register(SPD_TYPE_SDRAM, 0x7, 256);
|
||||
device_add(&gl518sm_2d_device); /* fans: CPUFAN1, CPUFAN2; temperature: CPU */
|
||||
hwm_values.fans[1] += 500;
|
||||
hwm_values.temperatures[0] += 4; /* CPU offset */
|
||||
hwm_values.voltages[1] = RESISTOR_DIVIDER(12000, 10, 2); /* different 12V divider in BIOS (10K/2K?) */
|
||||
|
||||
return ret;
|
||||
}
|
||||
@@ -364,7 +370,7 @@ machine_at_gt694va_init(const machine_t *model)
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 3, 4);
|
||||
pci_register_slot(0x0D, PCI_CARD_NORMAL, 4, 1, 2, 3);
|
||||
pci_register_slot(0x0D, PCI_CARD_SOUND, 4, 1, 2, 3); /* assumed */
|
||||
pci_register_slot(0x0F, PCI_CARD_NORMAL, 3, 4, 1, 2);
|
||||
pci_register_slot(0x11, PCI_CARD_NORMAL, 2, 3, 4, 1);
|
||||
pci_register_slot(0x13, PCI_CARD_NORMAL, 1, 2, 3, 4);
|
||||
@@ -418,7 +424,6 @@ machine_at_cuv4xls_init(const machine_t *model)
|
||||
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
|
||||
device_add(&via_apro133a_device);
|
||||
device_add(&via_vt82c686b_device);
|
||||
device_add(&via_vt82c686_sio_device);
|
||||
device_add(&keyboard_ps2_ami_pci_device);
|
||||
device_add(ics9xxx_get(ICS9250_18));
|
||||
device_add(&sst_flash_39sf020_device);
|
||||
@@ -452,13 +457,11 @@ machine_at_6via90ap_init(const machine_t *model)
|
||||
pci_register_slot(0x0D, PCI_CARD_NORMAL, 1, 2, 3, 4);
|
||||
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
|
||||
device_add(&via_apro133a_device);
|
||||
device_add(&via_vt82c686b_device);
|
||||
device_add(&via_vt82c686_sio_device);
|
||||
device_add(&via_vt82c686b_device); /* fans: CPU1, CPU2; temperatures: CPU, System, unused */
|
||||
device_add(&keyboard_ps2_ami_pci_device);
|
||||
device_add(ics9xxx_get(ICS9250_18));
|
||||
device_add(&sst_flash_39sf020_device);
|
||||
spd_register(SPD_TYPE_SDRAM, 0x7, 1024);
|
||||
device_add(&via_vt82c686_hwm_device); /* fans: CPU1, CPU2; temperatures: CPU, System, unused */
|
||||
hwm_values.temperatures[0] += 2; /* CPU offset */
|
||||
hwm_values.temperatures[1] += 2; /* System offset */
|
||||
hwm_values.temperatures[2] = 0; /* unused */
|
||||
|
||||
@@ -316,7 +316,7 @@ machine_at_pat54pv_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear("roms/machines/pat54pv/pat54pv.bin",
|
||||
ret = bios_load_linear("roms/machines/pat54pv/PAT54PV.bin",
|
||||
0x000f0000, 65536, 0);
|
||||
|
||||
if (bios_only || !ret)
|
||||
|
||||
@@ -179,11 +179,11 @@ machine_at_tc430hx_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear_combined2("roms/machines/tc430hx/1007dh0_.bio",
|
||||
"roms/machines/tc430hx/1007dh0_.bi1",
|
||||
"roms/machines/tc430hx/1007dh0_.bi2",
|
||||
"roms/machines/tc430hx/1007dh0_.bi3",
|
||||
"roms/machines/tc430hx/1007dh0_.rcv",
|
||||
ret = bios_load_linear_combined2("roms/machines/tc430hx/1007DH0_.BIO",
|
||||
"roms/machines/tc430hx/1007DH0_.BI1",
|
||||
"roms/machines/tc430hx/1007DH0_.BI2",
|
||||
"roms/machines/tc430hx/1007DH0_.BI3",
|
||||
"roms/machines/tc430hx/1007DH0_.RCV",
|
||||
0x3a000, 128);
|
||||
|
||||
if (bios_only || !ret)
|
||||
@@ -285,7 +285,7 @@ machine_at_p65up5_cp55t2d_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear("roms/machines/p65up5/td5i0201.awd",
|
||||
ret = bios_load_linear("roms/machines/p65up5/TD5I0201.AWD",
|
||||
0x000e0000, 131072, 0);
|
||||
|
||||
if (bios_only || !ret)
|
||||
@@ -586,7 +586,7 @@ machine_at_i430vx_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear("roms/machines/430vx/55xwuq0e.bin",
|
||||
ret = bios_load_linear("roms/machines/430vx/55XWUQ0E.BIN",
|
||||
0x000e0000, 131072, 0);
|
||||
|
||||
if (bios_only || !ret)
|
||||
@@ -984,7 +984,7 @@ machine_at_m560_init(const machine_t *model)
|
||||
device_add(&ali1543_device);
|
||||
device_add(&keyboard_ps2_ami_pci_device);
|
||||
device_add(&sst_flash_29ee010_device);
|
||||
spd_register(SPD_TYPE_SDRAM, 0x3, 128);
|
||||
spd_register(SPD_TYPE_SDRAM, 0x3, 256);
|
||||
|
||||
return ret;
|
||||
}
|
||||
@@ -1019,7 +1019,7 @@ machine_at_ms5164_init(const machine_t *model)
|
||||
device_add(&ali1543_device);
|
||||
device_add(&keyboard_ps2_ami_pci_device);
|
||||
device_add(&sst_flash_29ee010_device);
|
||||
spd_register(SPD_TYPE_SDRAM, 0x3, 128);
|
||||
spd_register(SPD_TYPE_SDRAM, 0x3, 256);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
@@ -114,7 +114,7 @@ machine_at_p54tp4xe_mr_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear("roms/machines/p54tp4xe_mr/TRITON.BIO",
|
||||
ret = bios_load_linear("roms/machines/p54tp4xe/TRITON.BIO",
|
||||
0x000e0000, 131072, 0);
|
||||
|
||||
if (bios_only || !ret)
|
||||
@@ -131,8 +131,8 @@ machine_at_gw2katx_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear_combined("roms/machines/gw2katx/1003cn0t.bio",
|
||||
"roms/machines/gw2katx/1003cn0t.bi1", 0x20000, 128);
|
||||
ret = bios_load_linear_combined("roms/machines/gw2katx/1003CN0T.BIO",
|
||||
"roms/machines/gw2katx/1003CN0T.BI1", 0x20000, 128);
|
||||
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
@@ -135,11 +135,11 @@ machine_at_mb600n_init(const machine_t *model)
|
||||
}
|
||||
|
||||
int
|
||||
machine_at_v60n_init(const machine_t *model)
|
||||
machine_at_acerv60n_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear("roms/machines/v60n/V60NE5.BIN",
|
||||
ret = bios_load_linear("roms/machines/acerv60n/V60NE5.BIN",
|
||||
0x000e0000, 131072, 0);
|
||||
|
||||
if (bios_only || !ret)
|
||||
@@ -169,11 +169,11 @@ machine_at_vs440fx_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear_combined2("roms/machines/vs440fx/1018CS1_.bio",
|
||||
"roms/machines/vs440fx/1018CS1_.bi1",
|
||||
"roms/machines/vs440fx/1018CS1_.bi2",
|
||||
"roms/machines/vs440fx/1018CS1_.bi3",
|
||||
"roms/machines/vs440fx/1018CS1_.rcv",
|
||||
ret = bios_load_linear_combined2("roms/machines/vs440fx/1018CS1_.BIO",
|
||||
"roms/machines/vs440fx/1018CS1_.BI1",
|
||||
"roms/machines/vs440fx/1018CS1_.BI2",
|
||||
"roms/machines/vs440fx/1018CS1_.BI3",
|
||||
"roms/machines/vs440fx/1018CS1_.RCV",
|
||||
0x3a000, 128);
|
||||
|
||||
if (bios_only || !ret)
|
||||
@@ -203,11 +203,11 @@ machine_at_ap440fx_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear_combined2("roms/machines/ap440fx/1011CT1_.bio",
|
||||
"roms/machines/ap440fx/1011CT1_.bi1",
|
||||
"roms/machines/ap440fx/1011CT1_.bi2",
|
||||
"roms/machines/ap440fx/1011CT1_.bi3",
|
||||
"roms/machines/ap440fx/1011CT1_.rcv",
|
||||
ret = bios_load_linear_combined2("roms/machines/ap440fx/1011CT1_.BIO",
|
||||
"roms/machines/ap440fx/1011CT1_.BI1",
|
||||
"roms/machines/ap440fx/1011CT1_.BI2",
|
||||
"roms/machines/ap440fx/1011CT1_.BI3",
|
||||
"roms/machines/ap440fx/1011CT1_.RCV",
|
||||
0x3a000, 128);
|
||||
|
||||
if (bios_only || !ret)
|
||||
@@ -315,7 +315,7 @@ machine_at_p65up5_cp6nd_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear("roms/machines/p65up5/nd6i0218.awd",
|
||||
ret = bios_load_linear("roms/machines/p65up5/ND6I0218.AWD",
|
||||
0x000e0000, 131072, 0);
|
||||
|
||||
if (bios_only || !ret)
|
||||
|
||||
@@ -75,7 +75,7 @@ machine_at_p5a_init(const machine_t *model)
|
||||
device_add(&ali1543c_device);
|
||||
device_add(&keyboard_ps2_ami_pci_device);
|
||||
device_add(&sst_flash_39sf020_device);
|
||||
spd_register(SPD_TYPE_SDRAM, 0xF, 256);
|
||||
spd_register(SPD_TYPE_SDRAM, 0x7, 512);
|
||||
device_add(&w83781d_p5a_device); /* fans: Chassis, CPU, Power; temperatures: MB, unused, CPU */
|
||||
|
||||
return ret;
|
||||
@@ -109,18 +109,18 @@ machine_at_m579_init(const machine_t *model)
|
||||
device_add(&ali1543c_device);
|
||||
device_add(&keyboard_ps2_ami_pci_device);
|
||||
device_add(&sst_flash_29ee010_device);
|
||||
spd_register(SPD_TYPE_SDRAM, 0x3, 128);
|
||||
spd_register(SPD_TYPE_SDRAM, 0x7, 512);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
int
|
||||
machine_at_ga_5aa_init(const machine_t *model)
|
||||
machine_at_5aa_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear("roms/machines/ga-5aa/GA-5AA.F7b",
|
||||
ret = bios_load_linear("roms/machines/5aa/GA-5AA.F7b",
|
||||
0x000e0000, 131072, 0);
|
||||
|
||||
if (bios_only || !ret)
|
||||
@@ -142,18 +142,18 @@ machine_at_ga_5aa_init(const machine_t *model)
|
||||
device_add(&ali1543c_device);
|
||||
device_add(&keyboard_ps2_ami_pci_device);
|
||||
device_add(&sst_flash_29ee010_device);
|
||||
spd_register(SPD_TYPE_SDRAM, 0x3, 128);
|
||||
spd_register(SPD_TYPE_SDRAM, 0x7, 512);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
int
|
||||
machine_at_ga_5ax_init(const machine_t *model)
|
||||
machine_at_5ax_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear("roms/machines/ga-5ax/5AX.F4",
|
||||
ret = bios_load_linear("roms/machines/5ax/5AX.F4",
|
||||
0x000e0000, 131072, 0);
|
||||
|
||||
if (bios_only || !ret)
|
||||
@@ -177,7 +177,7 @@ machine_at_ga_5ax_init(const machine_t *model)
|
||||
device_add(&ali1543c_device);
|
||||
device_add(&keyboard_ps2_ami_pci_device);
|
||||
device_add(&sst_flash_29ee010_device);
|
||||
spd_register(SPD_TYPE_SDRAM, 0x3, 128);
|
||||
spd_register(SPD_TYPE_SDRAM, 0x7, 512);
|
||||
|
||||
return ret;
|
||||
}
|
||||
@@ -271,12 +271,10 @@ machine_at_ficva503a_init(const machine_t *model)
|
||||
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
|
||||
|
||||
device_add(&via_mvp3_device);
|
||||
device_add(&via_vt82c686a_device);
|
||||
device_add(&via_vt82c686a_device); /* fans: CPU1, Chassis; temperatures: CPU, System, unused */
|
||||
device_add(&keyboard_ps2_ami_pci_device);
|
||||
device_add(&via_vt82c686_sio_device);
|
||||
device_add(&sst_flash_39sf020_device);
|
||||
spd_register(SPD_TYPE_SDRAM, 0x7, 256);
|
||||
device_add(&via_vt82c686_hwm_device); /* fans: CPU1, Chassis; temperatures: CPU, System, unused */
|
||||
hwm_values.temperatures[0] += 2; /* CPU offset */
|
||||
hwm_values.temperatures[1] += 2; /* System offset */
|
||||
hwm_values.temperatures[2] = 0; /* unused */
|
||||
@@ -289,11 +287,11 @@ machine_at_ficva503a_init(const machine_t *model)
|
||||
|
||||
|
||||
int
|
||||
machine_at_sy_5ema_pro_init(const machine_t *model)
|
||||
machine_at_5emapro_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear("roms/machines/sy-5ema_pro/5emo1aa2.bin",
|
||||
ret = bios_load_linear("roms/machines/5emapro/5emo1aa2.bin",
|
||||
0x000e0000, 131072, 0);
|
||||
|
||||
if (bios_only || !ret)
|
||||
@@ -311,11 +309,9 @@ machine_at_sy_5ema_pro_init(const machine_t *model)
|
||||
pci_register_slot(0x0C, PCI_CARD_NORMAL, 4, 1, 2, 3);
|
||||
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
|
||||
|
||||
device_add(&via_mvp3_device);
|
||||
device_add(&via_mvp3_device); /* Rebranded as EQ82C6638 */
|
||||
device_add(&via_vt82c686a_device);
|
||||
device_add(&keyboard_ps2_ami_pci_device);
|
||||
// device_add(&via_vt82c686_sio_device);
|
||||
device_add(&fdc37c669_device);
|
||||
device_add(&sst_flash_39sf010_device);
|
||||
spd_register(SPD_TYPE_SDRAM, 0x7, 256);
|
||||
device_add(&via_vt82c686_hwm_device); /* fans: CPU1, Chassis; temperatures: CPU, System, unused */
|
||||
@@ -323,7 +319,5 @@ machine_at_sy_5ema_pro_init(const machine_t *model)
|
||||
hwm_values.temperatures[1] += 2; /* System offset */
|
||||
hwm_values.temperatures[2] = 0; /* unused */
|
||||
|
||||
device_add(&wm9701a_device); /* on daughtercard */
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
@@ -488,7 +488,7 @@ ps1_setup(int model)
|
||||
ps1_read, NULL, NULL, ps1_write, NULL, NULL, ps);
|
||||
|
||||
rom_init(&ps->high_rom,
|
||||
"roms/machines/ibmps1_2121/fc0000.bin",
|
||||
"roms/machines/ibmps1_2121/FC0000.BIN",
|
||||
0xfc0000, 0x40000, 0x3ffff, 0, MEM_MAPPING_EXTERNAL);
|
||||
|
||||
/* Initialize the video controller. */
|
||||
@@ -546,7 +546,7 @@ machine_ps1_m2121_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear("roms/machines/ibmps1_2121/fc0000.bin",
|
||||
ret = bios_load_linear("roms/machines/ibmps1_2121/FC0000.BIN",
|
||||
0x000e0000, 131072, 0x20000);
|
||||
|
||||
if (bios_only || !ret)
|
||||
|
||||
@@ -69,7 +69,6 @@ machine_v86p_init(const machine_t *model)
|
||||
rom = 2;
|
||||
ret = bios_load_linear("roms/machines/v86p/V86P.ROM",
|
||||
0x000f0000, 65536, 0);
|
||||
|
||||
}
|
||||
|
||||
if (bios_only || !ret)
|
||||
|
||||
@@ -330,7 +330,7 @@ machine_xt_pc4i_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear("roms/machines/pc4i/NCR_PC4i_BIOSROM_1985.bin",
|
||||
ret = bios_load_linear("roms/machines/pc4i/NCR_PC4i_BIOSROM_1985.BIN",
|
||||
0x000fc000, 16384, 0);
|
||||
|
||||
if (bios_only || !ret)
|
||||
|
||||
@@ -869,7 +869,7 @@ machine_xt_t1000_init(const machine_t *model)
|
||||
t1000.ems_port_index = 7; /* EMS disabled */
|
||||
|
||||
/* Load the T1000 CGA Font ROM. */
|
||||
loadfont("roms/machines/t1000/t1000font.rom", 2);
|
||||
loadfont("roms/machines/t1000/t1000font.bin", 2);
|
||||
|
||||
/*
|
||||
* The ROM drive is optional.
|
||||
@@ -960,8 +960,8 @@ machine_xt_t1200_init(const machine_t *model)
|
||||
t1000.is_t1200 = 1;
|
||||
t1000.ems_port_index = 7; /* EMS disabled */
|
||||
|
||||
/* Load the T1200 CGA Font ROM. */
|
||||
loadfont("roms/machines/t1200/t1000font.bin", 2);
|
||||
/* Load the T1000 CGA Font ROM. */
|
||||
loadfont("roms/machines/t1000/t1000font.bin", 2);
|
||||
|
||||
/* Map the EMS page frame */
|
||||
for (pg = 0; pg < 4; pg++) {
|
||||
|
||||
@@ -232,13 +232,13 @@ const machine_t machines[] = {
|
||||
/* Has IBM PS/2 Type 1 KBC firmware. */
|
||||
{ "[ISA] IBM PS/1 model 2121", "ibmps1_2121", MACHINE_TYPE_386SX, CPU_PKG_386SX, 0, 0, 0, 0, 0, 0, 0, MACHINE_AT | MACHINE_BUS_PS2 | MACHINE_IDE | MACHINE_VIDEO, 2048, 6144,1024, 63, machine_ps1_m2121_init, NULL },
|
||||
/* Has IBM AT KBC firmware. */
|
||||
{ "[ISA] NCR PC916SX", "pc916sx", MACHINE_TYPE_386SX, CPU_PKG_386SX, 0, 0, 0, 0, 0, 0, 0, MACHINE_AT, 1024, 16384, 128, 127, machine_at_pc916sx_init, NULL },
|
||||
{ "[ISA] NCR PC916SX", "pc916sx", MACHINE_TYPE_386SX, CPU_PKG_386SX, 0, 0, 0, 0, 0, 0, 0, MACHINE_AT, 1024, 16384, 128, 127, machine_at_pc916sx_init, NULL },
|
||||
/* Has Quadtel KBC firmware. */
|
||||
{ "[ISA] QTC-SXM KT X20T02/HI", "quadt386sx", MACHINE_TYPE_386SX, CPU_PKG_386SX, 0, 0, 0, 0, 0, 0, 0, MACHINE_AT, 1024, 16384, 128, 127, machine_at_quadt386sx_init, NULL },
|
||||
{ "[ISA] QTC-SXM KT X20T02/HI", "quadt386sx", MACHINE_TYPE_386SX, CPU_PKG_386SX, 0, 0, 0, 0, 0, 0, 0, MACHINE_AT, 1024, 16384, 128, 127, machine_at_quadt386sx_init, NULL },
|
||||
/* This has an AMIKey-2, which is an updated version of type 'H'. */
|
||||
{ "[ALi M1217] Acrosser AR-B1374", "arb1374", MACHINE_TYPE_386SX, CPU_PKG_386SX, 0, 0, 0, 0, 0, 0, 0, MACHINE_AT | MACHINE_BUS_PS2 | MACHINE_IDE, 1024, 32768,1024, 127, machine_at_arb1374_init, NULL },
|
||||
/* Has the AMIKey KBC firmware, which is an updated 'F' type. */
|
||||
{ "[ALi M1217] AAEON SBC-350A", "sbc-350a", MACHINE_TYPE_386SX, CPU_PKG_386SX, 0, 0, 0, 0, 0, 0, 0, MACHINE_AT | MACHINE_BUS_PS2 | MACHINE_IDE, 1024, 16384, 1024, 127, machine_at_sbc_350a_init, NULL },
|
||||
{ "[ALi M1217] AAEON SBC-350A", "sbc350a", MACHINE_TYPE_386SX, CPU_PKG_386SX, 0, 0, 0, 0, 0, 0, 0, MACHINE_AT | MACHINE_BUS_PS2 | MACHINE_IDE, 1024, 16384, 1024, 127, machine_at_sbc350a_init, NULL },
|
||||
/* Has an AMI KBC firmware, the only photo of this is too low resolution
|
||||
for me to read what's on the KBC chip, so I'm going to assume AMI 'F'
|
||||
based on the other known HT18 AMI BIOS strings. */
|
||||
@@ -247,9 +247,9 @@ const machine_t machines[] = {
|
||||
firmware until the board is identified. */
|
||||
{ "[ALi M1217] MR 386SX clone", "mr1217", MACHINE_TYPE_386SX, CPU_PKG_386SX, 0, 0, 0, 0, 0, 0, 0, MACHINE_AT | MACHINE_BUS_PS2 | MACHINE_IDE | MACHINE_VIDEO, 1024, 16384, 1024, 127, machine_at_mr1217_init, NULL },
|
||||
/* Has IBM PS/2 Type 1 KBC firmware. */
|
||||
{ "[ALi M6117] Acrosser PJ-A511M", "pja511m", MACHINE_TYPE_386SX, CPU_PKG_M6117, 0, 0, 0, 0, 0, 0, 0, MACHINE_AT | MACHINE_BUS_PS2 | MACHINE_IDE, 1024, 32768,1024, 127, machine_at_pja511m_init, NULL },
|
||||
{ "[ALi M6117] Acrosser PJ-A511M", "pja511m", MACHINE_TYPE_386SX, CPU_PKG_M6117, 0, 0, 0, 0, 0, 0, 0, MACHINE_AT | MACHINE_BUS_PS2 | MACHINE_IDE, 1024, 32768, 1024, 127, machine_at_pja511m_init, NULL },
|
||||
/* Has IBM PS/2 Type 1 KBC firmware. */
|
||||
{ "[ALi M6117C] Protech ProX-1332", "prox1332", MACHINE_TYPE_386SX, CPU_PKG_M6117, 0, 0, 0, 0, 0, 0, 0, MACHINE_AT | MACHINE_BUS_PS2 | MACHINE_IDE, 1024, 32768,1024, 127, machine_at_prox1332_init, NULL },
|
||||
{ "[ALi M6117] Protech ProX-1332", "prox1332", MACHINE_TYPE_386SX, CPU_PKG_M6117, 0, 0, 0, 0, 0, 0, 0, MACHINE_AT | MACHINE_BUS_PS2 | MACHINE_IDE, 1024, 32768, 1024, 127, machine_at_prox1332_init, NULL },
|
||||
/* Has an AMI KBC firmware, the only photo of this is too low resolution
|
||||
for me to read what's on the KBC chip, so I'm going to assume AMI 'F'
|
||||
based on the other known HT18 AMI BIOS strings. */
|
||||
@@ -257,7 +257,7 @@ const machine_t machines[] = {
|
||||
/* Has an unknown KBC firmware with commands B8 and BB in the style of
|
||||
Phoenix MultiKey and AMIKey-3(!), but also commands E1 and EA with
|
||||
unknown functions. */
|
||||
{ "[Intel 82335] ADI 386SX", "adi386sx", MACHINE_TYPE_386SX, CPU_PKG_386SX, 0, 0, 0, 0, 0, 0, 0, MACHINE_AT, 512, 8192, 128, 127, machine_at_adi386sx_init, NULL },
|
||||
{ "[Intel 82335] ADI 386SX", "adi386sx", MACHINE_TYPE_386SX, CPU_PKG_386SX, 0, 0, 0, 0, 0, 0, 0, MACHINE_AT, 512, 8192, 128, 127, machine_at_adi386sx_init, NULL },
|
||||
/* Has an AMI Keyboard BIOS PLUS KBC firmware ('8'). */
|
||||
{ "[Intel 82335] Shuttle 386SX", "shuttle386sx", MACHINE_TYPE_386SX, CPU_PKG_386SX, 0, 0, 0, 0, 0, 0, 0, MACHINE_AT, 512, 8192, 128, 127, machine_at_shuttle386sx_init, NULL },
|
||||
/* Uses Commodore (CBM) KBC firmware, to be implemented as identical to
|
||||
@@ -356,7 +356,7 @@ const machine_t machines[] = {
|
||||
command, so it must expect an AMIKey. */
|
||||
{ "[VLSI 82C480] HP Vectra 486VL", "vect486vl", MACHINE_TYPE_486, CPU_PKG_SOCKET1, 0, 0, 0, 0, 0, 0, 0, MACHINE_AT | MACHINE_BUS_PS2 | MACHINE_IDE | MACHINE_VIDEO, 2048, 32768, 2048, 127, machine_at_vect486vl_init, at_vect486vl_get_device },
|
||||
/* Has a standard IBM PS/2 KBC firmware or a clone thereof. */
|
||||
{ "[VLSI 82C481] Siemens Nixdorf D824", "d824", MACHINE_TYPE_486, CPU_PKG_SOCKET1, 0, 0, 0, 0, 0, 0, 0, MACHINE_AT | MACHINE_BUS_PS2 | MACHINE_IDE | MACHINE_VIDEO, 2048, 32768, 2048, 127, machine_at_d824_init, at_d824_get_device },
|
||||
{ "[VLSI 82C481] Siemens Nixdorf D824", "d824", MACHINE_TYPE_486, CPU_PKG_SOCKET1, 0, 0, 0, 0, 0, 0, 0, MACHINE_AT | MACHINE_BUS_PS2 | MACHINE_IDE | MACHINE_VIDEO, 2048, 32768, 2048, 127, machine_at_d824_init, at_d824_get_device },
|
||||
|
||||
/* 486 machines - Socket 2 */
|
||||
/* 486 machines with just the ISA slot */
|
||||
@@ -369,7 +369,7 @@ const machine_t machines[] = {
|
||||
give it an AMIKey H KBC firmware. */
|
||||
{ "[ALi M1429G] Kaimei 486", "win486", MACHINE_TYPE_486_S2, CPU_PKG_SOCKET3, 0, 0, 0, 0, 0, 0, 0, MACHINE_VLB | MACHINE_IDE, 1024, 32768, 1024, 127, machine_at_winbios1429_init, NULL },
|
||||
/* Uses an Intel KBC with Phoenix MultiKey KBC firmware. */
|
||||
{ "[SiS 461] DEC DECpc LPV", "decpc_lpv", MACHINE_TYPE_486_S2, CPU_PKG_SOCKET3, 0, 0, 0, 0, 0, 0, 0, MACHINE_AT | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL | MACHINE_VIDEO, 1024, 32768, 1024, 127, machine_at_decpc_lpv_init, NULL },
|
||||
{ "[SiS 461] DEC DECpc LPV", "decpclpv", MACHINE_TYPE_486_S2, CPU_PKG_SOCKET3, 0, 0, 0, 0, 0, 0, 0, MACHINE_AT | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL | MACHINE_VIDEO, 1024, 32768, 1024, 127, machine_at_decpclpv_init, NULL },
|
||||
/* Uses an NEC 90M002A (UPD82C42C, 8042 clone) with unknown firmware. */
|
||||
{ "[SiS 461] Acer V10", "acerv10", MACHINE_TYPE_486_S2, CPU_PKG_SOCKET3, 0, 0, 0, 0, 0, 0, 0, MACHINE_AT | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL | MACHINE_VIDEO, 1024, 32768, 1024, 127, machine_at_acerv10_init, NULL },
|
||||
/* The BIOS does not send any non-standard keyboard controller commands and wants
|
||||
@@ -383,13 +383,13 @@ const machine_t machines[] = {
|
||||
/* 486 machines - Socket 3 */
|
||||
/* 486 machines with just the ISA slot */
|
||||
/* Has AMI MegaKey KBC firmware. */
|
||||
{ "[Contaq 82C597] Green-B", "green-b", MACHINE_TYPE_486_S3, CPU_PKG_SOCKET3, 0, 0, 0, 0, 0, 0, 0, MACHINE_VLB, 1024, 65536, 1024, 127, machine_at_green_b_init, NULL },
|
||||
{ "[Contaq 82C597] Green-B", "greenb", MACHINE_TYPE_486_S3, CPU_PKG_SOCKET3, 0, 0, 0, 0, 0, 0, 0, MACHINE_VLB, 1024, 65536, 1024, 127, machine_at_greenb_init, NULL },
|
||||
/* Has a VIA VT82C42N KBC. */
|
||||
{ "[OPTi 895] Jetway J-403TG", "403tg", MACHINE_TYPE_486_S3, CPU_PKG_SOCKET3, 0, 0, 0, 0, 0, 0, 0, MACHINE_VLB, 1024, 65536, 1024, 127, machine_at_403tg_init, NULL },
|
||||
/* Has JetKey 5 KBC Firmware which looks like it is a clone of AMIKey type F. */
|
||||
{ "[OPTi 895] Jetway J-403TG Rev D", "403tg_rev_d", MACHINE_TYPE_486_S3, CPU_PKG_SOCKET3, 0, 0, 0, 0, 0, 0, 0, MACHINE_VLB, 1024, 65536, 1024, 127, machine_at_403tg_rev_d_init, NULL },
|
||||
{ "[OPTi 895] Jetway J-403TG Rev D", "403tg_d", MACHINE_TYPE_486_S3, CPU_PKG_SOCKET3, 0, 0, 0, 0, 0, 0, 0, MACHINE_VLB, 1024, 65536, 1024, 127, machine_at_403tg_d_init, NULL },
|
||||
/* Has JetKey 5 KBC Firmware which looks like it is a clone of AMIKey type F. */
|
||||
{ "[OPTi 895] Jetway J-403TG Rev D (MR BIOS)","403tg_rev_d_mr", MACHINE_TYPE_486_S3, CPU_PKG_SOCKET3, 0, 0, 0, 0, 0, 0, 0, MACHINE_VLB, 1024, 65536, 1024, 127, machine_at_403tg_rev_d_mr_init, NULL },
|
||||
{ "[OPTi 895] Jetway J-403TG Rev D (MR BIOS)","403tg_d_mr", MACHINE_TYPE_486_S3, CPU_PKG_SOCKET3, 0, 0, 0, 0, 0, 0, 0, MACHINE_VLB, 1024, 65536, 1024, 127, machine_at_403tg_d_mr_init, NULL },
|
||||
/* Has AMIKey H keyboard BIOS. */
|
||||
{ "[SiS 471] AOpen Vi15G", "vi15g", MACHINE_TYPE_486_S3, CPU_PKG_SOCKET3, 0, 0, 0, 0, 0, 0, 0, MACHINE_VLB | MACHINE_IDE, 1024, 65536, 1024, 127, machine_at_vi15g_init, NULL },
|
||||
/* This has an AMIKey-2, which is an updated version of type 'H'. */
|
||||
@@ -401,7 +401,7 @@ const machine_t machines[] = {
|
||||
|
||||
/* 486 machines which utilize the PCI bus */
|
||||
/* This has an AMIKey-2, which is an updated version of type 'H'. */
|
||||
{ "[ALi M1489] AAEON SBC-490", "sbc-490", MACHINE_TYPE_486_S3, CPU_PKG_SOCKET3, 0, 0, 0, 0, 0, 0, 0, MACHINE_PCI | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL | MACHINE_VIDEO, 1024, 65536, 1024, 255, machine_at_sbc_490_init, at_sbc_490_get_device },
|
||||
{ "[ALi M1489] AAEON SBC-490", "sbc490", MACHINE_TYPE_486_S3, CPU_PKG_SOCKET3, 0, 0, 0, 0, 0, 0, 0, MACHINE_PCI | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL | MACHINE_VIDEO, 1024, 65536, 1024, 255, machine_at_sbc490_init, at_sbc490_get_device },
|
||||
/* Has the ALi M1487/9's on-chip keyboard controller which clones a standard AT
|
||||
KBC. */
|
||||
{ "[ALi M1489] ABIT AB-PB4", "abpb4", MACHINE_TYPE_486_S3, CPU_PKG_SOCKET3, 0, 0, 0, 0, 0, 0, 0, MACHINE_PCI | MACHINE_IDE_DUAL, 1024, 65536, 1024, 255, machine_at_abpb4_init, NULL },
|
||||
@@ -418,7 +418,7 @@ const machine_t machines[] = {
|
||||
controller likely returns 'E'. */
|
||||
{ "[ALi M1489] MSI MS-4145", "ms4145", MACHINE_TYPE_486_S3, CPU_PKG_SOCKET3, 0, 0, 0, 0, 0, 0, 0, MACHINE_PCI | MACHINE_IDE_DUAL, 1024, 65536, 1024, 255, machine_at_ms4145_init, NULL },
|
||||
/* Has an ALi M5042 keyboard controller with Phoenix MultiKey/42 v1.40 firmware. */
|
||||
{ "[ALi M1489] ESA TF-486", "tf-486", MACHINE_TYPE_486_S3, CPU_PKG_SOCKET3, 0, 0, 0, 0, 0, 0, 0, MACHINE_PCI | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 1024, 65536, 1024, 255, machine_at_tf_486_init, NULL },
|
||||
{ "[ALi M1489] ESA TF-486", "tf486", MACHINE_TYPE_486_S3, CPU_PKG_SOCKET3, 0, 0, 0, 0, 0, 0, 0, MACHINE_PCI | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 1024, 65536, 1024, 255, machine_at_tf486_init, NULL },
|
||||
/* Has IBM PS/2 Type 1 KBC firmware. */
|
||||
{ "[OPTi 802G] IBM PC 330 (type 6573)", "pc330_6573", MACHINE_TYPE_486_S3, CPU_PKG_SOCKET3_PC330, 0, 25000000, 33333333, 0, 0, 2.0, 3.0, MACHINE_PCI | MACHINE_BUS_PS2 | MACHINE_IDE, 1024, 65536, 1024, 127, machine_at_pc330_6573_init, NULL },
|
||||
/* This has an AMIKey-2, which is an updated version of type 'H'. */
|
||||
@@ -433,7 +433,7 @@ const machine_t machines[] = {
|
||||
/* This has the Phoenix MultiKey KBC firmware. */
|
||||
{ "[i420TX] Intel Classic/PCI", "alfredo", MACHINE_TYPE_486_S3, CPU_PKG_SOCKET3, 0, 0, 0, 0, 0, 0, 0, MACHINE_PCI | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 2048, 131072, 2048, 127, machine_at_alfredo_init, NULL },
|
||||
/* This most likely has a standalone AMI Megakey 1993, which is type 'P', like the below Tekram board. */
|
||||
{ "[IMS 8848] J-Bond PCI400C-B", "pci400c_b", MACHINE_TYPE_486_S3, CPU_PKG_SOCKET3, 0, 0, 0, 0, 0, 0, 0, MACHINE_PCI | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 2048, 131072, 2048, 127, machine_at_pci400c_b_init, NULL },
|
||||
{ "[IMS 8848] J-Bond PCI400C-B", "pci400cb", MACHINE_TYPE_486_S3, CPU_PKG_SOCKET3, 0, 0, 0, 0, 0, 0, 0, MACHINE_PCI | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 2048, 131072, 2048, 127, machine_at_pci400cb_init, NULL },
|
||||
/* This has a standalone AMI Megakey 1993, which is type 'P'. */
|
||||
{ "[IMS 8848] Tekram G486IP", "g486ip", MACHINE_TYPE_486_S3, CPU_PKG_SOCKET3, 0, 0, 0, 0, 0, 0, 0, MACHINE_PCI | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 2048, 131072, 2048, 127, machine_at_g486ip_init, NULL },
|
||||
/* This has an AMIKey-2, which is an updated version of type 'H'. */
|
||||
@@ -460,7 +460,7 @@ const machine_t machines[] = {
|
||||
in -H, so the UMC on-chip KBC likely emulates the AMI 'H' KBC firmware. */
|
||||
{ "[UMC 8881] PC Chips M919", "m919", MACHINE_TYPE_486_S3, CPU_PKG_SOCKET3, 0, 0, 0, 0, 0, 0, 0, MACHINE_PCI | MACHINE_VLB | MACHINE_IDE_DUAL, 1024, 131072, 1024, 255, machine_at_m919_init, NULL },
|
||||
/* Has IBM PS/2 Type 1 KBC firmware. Uses a mysterious I/O port C05. */
|
||||
{ "[UMC 8881] Samsung SPC7700P-LW", "spc7700p-lw", MACHINE_TYPE_486_S3, CPU_PKG_SOCKET3, 0, 0, 0, 0, 0, 0, 0, MACHINE_PCI | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 1024, 131072, 1024, 255, machine_at_spc7700p_lw_init, NULL },
|
||||
{ "[UMC 8881] Samsung SPC7700P-LW", "spc7700plw", MACHINE_TYPE_486_S3, CPU_PKG_SOCKET3, 0, 0, 0, 0, 0, 0, 0, MACHINE_PCI | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 1024, 131072, 1024, 255, machine_at_spc7700plw_init, NULL },
|
||||
/* This has a Holtek KBC. */
|
||||
{ "[UMC 8881] Shuttle HOT-433A", "hot433", MACHINE_TYPE_486_S3, CPU_PKG_SOCKET3, 0, 0, 0, 0, 0, 0, 0, MACHINE_PCI | MACHINE_IDE_DUAL, 1024, 262144, 1024, 255, machine_at_hot433_init, NULL },
|
||||
/* Has a VIA VT82C406 KBC+RTC that likely has identical commands to the VT82C42N. */
|
||||
@@ -712,27 +712,27 @@ const machine_t machines[] = {
|
||||
|
||||
/* SiS 5571 */
|
||||
/* Has the SiS 5571 chipset with on-chip KBC. */
|
||||
{ "[SiS 5571] Rise R534F", "r534f", MACHINE_TYPE_SOCKET7, CPU_PKG_SOCKET5_7, 0, 50000000, 66666667, 2500, 3520, 1.5, 3.0, MACHINE_PCI | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 8192, 393216, 8192, 127, machine_at_r534f_init, NULL },
|
||||
{ "[SiS 5571] Rise R534F", "r534f", MACHINE_TYPE_SOCKET7, CPU_PKG_SOCKET5_7, 0, 55000000, 83333333, 2500, 3520, 1.5, 3.0, MACHINE_PCI | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 8192, 393216, 8192, 127, machine_at_r534f_init, NULL },
|
||||
/* Has the SiS 5571 chipset with on-chip KBC. */
|
||||
{ "[SiS 5571] MSI MS-5146", "ms5146", MACHINE_TYPE_SOCKET7, CPU_PKG_SOCKET5_7, 0, 50000000, 66666667, 2500, 3520, 1.5, 3.0, MACHINE_PCI | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 8192, 262144, 8192, 127, machine_at_ms5146_init, NULL },
|
||||
{ "[SiS 5571] MSI MS-5146", "ms5146", MACHINE_TYPE_SOCKET7, CPU_PKG_SOCKET5_7, 0, 50000000, 75000000, 2800, 3520, 1.5, 3.0, MACHINE_PCI | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 8192, 262144, 8192, 127, machine_at_ms5146_init, NULL },
|
||||
|
||||
/* ALi ALADDiN IV+ */
|
||||
/* Has the ALi M1543 southbridge with on-chip KBC. */
|
||||
{ "[ALi ALADDiN IV+] PC Chips M560", "m560", MACHINE_TYPE_SOCKET7, CPU_PKG_SOCKET5_7, 0, 50000000, 83333333, 2500, 3520, 1.5, 3.0, MACHINE_PCI | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 8192, 262144, 8192, 255, machine_at_m560_init, NULL },
|
||||
{ "[ALi ALADDiN IV+] PC Chips M560", "m560", MACHINE_TYPE_SOCKET7, CPU_PKG_SOCKET5_7, 0, 50000000, 83333333, 2500, 3520, 1.5, 3.0, MACHINE_PCI | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 8192, 786432, 8192, 255, machine_at_m560_init, NULL },
|
||||
/* Has the ALi M1543 southbridge with on-chip KBC. */
|
||||
{ "[ALi ALADDiN IV+] MSI MS-5164", "ms5164", MACHINE_TYPE_SOCKET7, CPU_PKG_SOCKET5_7, 0, 60000000, 66666667, 2100, 3520, 1.5, 3.0, MACHINE_PCI | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 8192, 262144, 8192, 255, machine_at_ms5164_init, NULL },
|
||||
{ "[ALi ALADDiN IV+] MSI MS-5164", "ms5164", MACHINE_TYPE_SOCKET7, CPU_PKG_SOCKET5_7, 0, 60000000, 83333333, 2100, 3520, 1.5, 3.0, MACHINE_PCI | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 8192,1048576, 8192, 255, machine_at_ms5164_init, NULL },
|
||||
|
||||
/* Super Socket 7 machines */
|
||||
/* ALi ALADDiN V */
|
||||
/* Has the ALi M1543C southbridge with on-chip KBC. */
|
||||
{ "[ALi ALADDiN V] ASUS P5A", "p5a", MACHINE_TYPE_SOCKETS7, CPU_PKG_SOCKET5_7, 0, 66666667, 124242424, 2000, 3200, 1.5, 5.5, MACHINE_AGP | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 1024,2097152, 8192, 255, machine_at_p5a_init, NULL },
|
||||
{ "[ALi ALADDiN V] ASUS P5A", "p5a", MACHINE_TYPE_SOCKETS7, CPU_PKG_SOCKET5_7, 0, 60000000, 120000000, 2000, 3520, 1.5, 5.5, MACHINE_AGP | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 1024,1572864, 8192, 255, machine_at_p5a_init, NULL },
|
||||
/* Is the exact same as the Matsonic MS6260S. Has the ALi M1543C southbridge
|
||||
with on-chip KBC. */
|
||||
{ "[ALi ALADDiN V] PC Chips M579", "m579", MACHINE_TYPE_SOCKETS7, CPU_PKG_SOCKET5_7, 0, 66666667, 124242424, 2000, 3200, 1.5, 5.5, MACHINE_AGP | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 1024,2097152, 8192, 255, machine_at_m579_init, NULL },
|
||||
{ "[ALi ALADDiN V] PC Chips M579", "m579", MACHINE_TYPE_SOCKETS7, CPU_PKG_SOCKET5_7, 0, 66666667, 100000000, 2000, 3520, 1.5, 5.5, MACHINE_AGP | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 1024,1572864, 8192, 255, machine_at_m579_init, NULL },
|
||||
/* Has the ALi M1543C southbridge with on-chip KBC. */
|
||||
{ "[ALi ALADDiN V] Gigabyte GA-5AA", "ga-5aa", MACHINE_TYPE_SOCKETS7, CPU_PKG_SOCKET5_7, 0, 66666667, 124242424, 2000, 3200, 1.5, 5.5, MACHINE_AGP | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 1024,2097152, 8192, 255, machine_at_ga_5aa_init, NULL },
|
||||
{ "[ALi ALADDiN V] Gigabyte GA-5AA", "5aa", MACHINE_TYPE_SOCKETS7, CPU_PKG_SOCKET5_7, 0, 66666667, 140000000, 1300, 3520, 1.5, 5.5, MACHINE_AGP | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 1024,1572864, 8192, 255, machine_at_5aa_init, NULL },
|
||||
/* Has the ALi M1543C southbridge with on-chip KBC. */
|
||||
{ "[ALi ALADDiN V] Gigabyte GA-5AX", "ga-5ax", MACHINE_TYPE_SOCKETS7, CPU_PKG_SOCKET5_7, 0, 66666667, 124242424, 2000, 3200, 1.5, 5.5, MACHINE_AGP | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 1024,2097152, 8192, 255, machine_at_ga_5ax_init, NULL },
|
||||
{ "[ALi ALADDiN V] Gigabyte GA-5AX", "5ax", MACHINE_TYPE_SOCKETS7, CPU_PKG_SOCKET5_7, 0, 66666667, 140000000, 1300, 3520, 1.5, 5.5, MACHINE_AGP | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 1024,1572864, 8192, 255, machine_at_5ax_init, NULL },
|
||||
|
||||
/* Apollo MVP3 */
|
||||
/* Has the VIA VT82C586B southbridge with on-chip KBC identical to the VIA
|
||||
@@ -743,10 +743,10 @@ const machine_t machines[] = {
|
||||
{ "[VIA MVP3] FIC VA-503+", "ficva503p", MACHINE_TYPE_SOCKETS7, CPU_PKG_SOCKET5_7, 0, 66666667, 124242424, 2000, 3200, 1.5, 5.5, MACHINE_AGP | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 8192,1048576, 8192, 255, machine_at_mvp3_init, NULL },
|
||||
/* Has the VIA VT82C686A southbridge with on-chip KBC identical to the VIA
|
||||
VT82C42N. */
|
||||
{ "[VIA MVP3] FIC VA-503A", "ficva503a", MACHINE_TYPE_SOCKETS7, CPU_PKG_SOCKET5_7, 0, 66666667, 124242424, 1800, 3100, 1.5, 5.5, MACHINE_AGP | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 8192, 786432, 8192, 255, machine_at_ficva503a_init, NULL },
|
||||
{ "[VIA MVP3] FIC VA-503A", "ficva503a", MACHINE_TYPE_SOCKETS7, CPU_PKG_SOCKET5_7, 0, 66666667, 124242424, 1800, 3100, 1.5, 5.5, MACHINE_AGP | MACHINE_BUS_PS2 | MACHINE_BUS_AC97 | MACHINE_IDE_DUAL | MACHINE_SOUND, 8192, 786432, 8192, 255, machine_at_ficva503a_init, NULL },
|
||||
/* Has the VIA VT82C686A southbridge with on-chip KBC identical to the VIA
|
||||
VT82C42N. */
|
||||
{ "[VIA MVP3] Soyo SY-5EMA Pro", "sy-5ema_pro", MACHINE_TYPE_SOCKETS7, CPU_PKG_SOCKET5_7, 0, 66666667, 124242424, 1800, 3100, 1.5, 5.5, MACHINE_AGP | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 8192, 786432, 8192, 255, machine_at_sy_5ema_pro_init, NULL },
|
||||
{ "[VIA MVP3] Soyo 5EMA PRO", "5emapro", MACHINE_TYPE_SOCKETS7, CPU_PKG_SOCKET5_7, 0, 66666667, 124242424, 2000, 3520, 1.5, 5.5, MACHINE_AGP | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 8192, 786432, 8192, 255, machine_at_5emapro_init, NULL },
|
||||
|
||||
/* Socket 8 machines */
|
||||
/* 450KX */
|
||||
@@ -755,7 +755,7 @@ const machine_t machines[] = {
|
||||
|
||||
/* 440FX */
|
||||
/* Has the SMC FDC73C935's on-chip KBC with Phoenix MultiKey firmware. */
|
||||
{ "[i440FX] Acer V60N", "v60n", MACHINE_TYPE_SOCKET8, CPU_PKG_SOCKET8, 0, 60000000, 66666667, 2500, 3500, 1.5, 8.0, MACHINE_PCI | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 8192, 524288, 8192, 127, machine_at_v60n_init, NULL },
|
||||
{ "[i440FX] Acer V60N", "acerv60n", MACHINE_TYPE_SOCKET8, CPU_PKG_SOCKET8, 0, 60000000, 66666667, 2500, 3500, 1.5, 8.0, MACHINE_PCI | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 8192, 524288, 8192, 127, machine_at_acerv60n_init, NULL },
|
||||
/* The base board has AMIKey-2 (updated 'H') KBC firmware. */
|
||||
{ "[i440FX] ASUS P/I-P65UP5 (C-P6ND)", "p65up5_cp6nd", MACHINE_TYPE_SOCKET8, CPU_PKG_SOCKET8, 0, 60000000, 66666667, 2100, 3500, 1.5, 8.0, MACHINE_PCI | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 8192,1048576, 8192, 127, machine_at_p65up5_cp6nd_init, NULL },
|
||||
/* The MB-8600TTX has an AMIKey 'F' KBC firmware, so I'm going to assume so does
|
||||
@@ -780,7 +780,7 @@ const machine_t machines[] = {
|
||||
/* Slot 1 machines */
|
||||
/* ALi ALADDiN V */
|
||||
/* Has the ALi M1543C southbridge with on-chip KBC. */
|
||||
{ "[ALi ALADDiN-PRO II] PC Chips M729", "m729", MACHINE_TYPE_SLOT1, CPU_PKG_SLOT1, 0, 50000000, 66666667, 1800, 3500, 1.5, 8.0, MACHINE_AGP | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 1024,2097152, 8192, 255, machine_at_m729_init, NULL },
|
||||
{ "[ALi ALADDiN-PRO II] PC Chips M729", "m729", MACHINE_TYPE_SLOT1, CPU_PKG_SLOT1, 0, 66666667, 100000000, 1800, 3500, 1.5, 8.0, MACHINE_AGP | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 1024,1572864, 8192, 255, machine_at_m729_init, NULL },
|
||||
|
||||
/* 440FX */
|
||||
/* The base board has AMIKey-2 (updated 'H') KBC firmware. */
|
||||
@@ -847,10 +847,10 @@ const machine_t machines[] = {
|
||||
{ "[VIA Apollo Pro] FIC KA-6130", "ficka6130", MACHINE_TYPE_SLOT1, CPU_PKG_SLOT1, 0, 66666667, 100000000, 1800, 3500, 1.5, 8.0, MACHINE_AGP | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 8192, 524288, 8192, 255, machine_at_ficka6130_init, NULL },
|
||||
/* Has a Winbond W83977EF Super I/O chip with on-chip KBC with AMIKey-2 KBC
|
||||
firmware. */
|
||||
{ "[VIA Apollo Pro133] ASUS P3V133", "p3v133", MACHINE_TYPE_SLOT1, CPU_PKG_SLOT1, 0, 66666667, 150000000, 1300, 3500, 1.5, 8.0, MACHINE_AGP | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 8192,1572864, 8192, 255, machine_at_p3v133_init, NULL },
|
||||
{ "[VIA Apollo Pro 133] ASUS P3V133", "p3v133", MACHINE_TYPE_SLOT1, CPU_PKG_SLOT1, 0, 66666667, 150000000, 1300, 3500, 1.5, 8.0, MACHINE_AGP | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 8192,1572864, 8192, 255, machine_at_p3v133_init, NULL },
|
||||
/* Has a Winbond W83977EF Super I/O chip with on-chip KBC with AMIKey-2 KBC
|
||||
firmware. */
|
||||
{ "[VIA Apollo Pro133A] ASUS P3V4X", "p3v4x", MACHINE_TYPE_SLOT1, CPU_PKG_SLOT1, 0, 66666667, 150000000, 1300, 3500, 1.5, 8.0, MACHINE_AGP | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 8192,2097152, 8192, 255, machine_at_p3v4x_init, NULL },
|
||||
{ "[VIA Apollo Pro 133A] ASUS P3V4X", "p3v4x", MACHINE_TYPE_SLOT1, CPU_PKG_SLOT1, 0, 66666667, 150000000, 1300, 3500, 1.5, 8.0, MACHINE_AGP | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 8192,2097152, 8192, 255, machine_at_p3v4x_init, NULL },
|
||||
|
||||
/* Slot 1/2 machines */
|
||||
/* 440GX */
|
||||
@@ -903,16 +903,16 @@ const machine_t machines[] = {
|
||||
{ "[VIA Apollo Pro] PC Partner APAS3", "apas3", MACHINE_TYPE_SOCKET370, CPU_PKG_SOCKET370, 0, 66666667, 100000000, 1800, 3500, 1.5, 8.0, MACHINE_AGP | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 8192, 786432, 8192, 255, machine_at_apas3_init, NULL },
|
||||
/* Has a Winbond W83977EF Super I/O chip with on-chip KBC with AMIKey-2 KBC
|
||||
firmware. */
|
||||
{ "[VIA Apollo Pro133] ECS P6BAP", "p6bap", MACHINE_TYPE_SOCKET370, CPU_PKG_SOCKET370, 0, 66666667, 150000000, 1300, 3500, 1.5, 8.0, MACHINE_AGP | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 8192,1572864, 8192, 255, machine_at_p6bap_init, NULL },
|
||||
{ "[VIA Apollo Pro 133] ECS P6BAP", "p6bap", MACHINE_TYPE_SOCKET370, CPU_PKG_SOCKET370, 0, 66666667, 150000000, 1300, 3500, 1.5, 8.0, MACHINE_AGP | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 8192,1572864, 8192, 255, machine_at_p6bap_init, NULL },
|
||||
/* Has the VIA VT82C686B southbridge with on-chip KBC identical to the VIA
|
||||
VT82C42N. */
|
||||
{ "[VIA Apollo Pro133A] Acorp 6VIA90AP", "6via90ap", MACHINE_TYPE_SOCKET370, CPU_PKG_SOCKET370, 0, 66666667, 150000000, 1300, 3500, MACHINE_MULTIPLIER_FIXED, MACHINE_AGP | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL | MACHINE_GAMEPORT, 16384,3145728, 8192, 255, machine_at_6via90ap_init, NULL },
|
||||
{ "[VIA Apollo Pro 133A] Acorp 6VIA90AP", "6via90ap", MACHINE_TYPE_SOCKET370, CPU_PKG_SOCKET370, 0, 66666667, 150000000, 1300, 3500, MACHINE_MULTIPLIER_FIXED, MACHINE_AGP | MACHINE_BUS_PS2 | MACHINE_BUS_AC97 | MACHINE_IDE_DUAL | MACHINE_SOUND | MACHINE_GAMEPORT, 16384,3145728, 8192, 255, machine_at_6via90ap_init, NULL },
|
||||
/* Has the VIA VT82C686B southbridge with on-chip KBC identical to the VIA
|
||||
VT82C42N. */
|
||||
{ "[VIA Apollo Pro133A] ASUS CUV4X-LS", "cuv4xls", MACHINE_TYPE_SOCKET370, CPU_PKG_SOCKET370, 0, 66666667, 150000000, 1300, 3500, 1.5, 8.0, (MACHINE_AGP & ~MACHINE_AT) | MACHINE_BUS_PS2 | MACHINE_BUS_AC97 | MACHINE_IDE_DUAL,16384,4194304, 8192, 255, machine_at_cuv4xls_init, NULL },
|
||||
{ "[VIA Apollo Pro 133A] ASUS CUV4X-LS", "cuv4xls", MACHINE_TYPE_SOCKET370, CPU_PKG_SOCKET370, 0, 66666667, 150000000, 1300, 3500, 1.5, 8.0, (MACHINE_AGP & ~MACHINE_AT) | MACHINE_BUS_PS2 | MACHINE_BUS_AC97 | MACHINE_IDE_DUAL,16384,4194304, 8192, 255, machine_at_cuv4xls_init, NULL },
|
||||
/* Has a Winbond W83977EF Super I/O chip with on-chip KBC with AMIKey-2 KBC
|
||||
firmware. */
|
||||
{ "[VIA Apollo Pro133A] BCM GT694VA", "gt694va", MACHINE_TYPE_SOCKET370, CPU_PKG_SOCKET370, 0, 66666667, 133333333, 1300, 3500, 1.5, 8.0, MACHINE_AGP | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL, 16384,3145728, 8192, 255, machine_at_gt694va_init, at_gt694va_get_device },
|
||||
{ "[VIA Apollo Pro 133A] BCM GT694VA", "gt694va", MACHINE_TYPE_SOCKET370, CPU_PKG_SOCKET370, 0, 66666667, 133333333, 1300, 3500, 1.5, 8.0, MACHINE_AGP | MACHINE_BUS_PS2 | MACHINE_IDE_DUAL | MACHINE_SOUND, 16384,3145728, 8192, 255, machine_at_gt694va_init, at_gt694va_get_device },
|
||||
|
||||
/* Miscellaneous/Fake/Hypervisor machines */
|
||||
/* Has a Winbond W83977F Super I/O chip with on-chip KBC with AMIKey-2 KBC
|
||||
|
||||
@@ -231,7 +231,7 @@ typedef struct {
|
||||
|
||||
|
||||
enum {
|
||||
CHIP_BUSLOGIC_ISA_542_1991,
|
||||
CHIP_BUSLOGIC_ISA_542_1991,
|
||||
CHIP_BUSLOGIC_ISA_542,
|
||||
CHIP_BUSLOGIC_ISA,
|
||||
CHIP_BUSLOGIC_MCA,
|
||||
@@ -1586,7 +1586,7 @@ buslogic_init(const device_t *info)
|
||||
{
|
||||
case CHIP_BUSLOGIC_ISA_542_1991:
|
||||
strcpy(dev->name, "BT-542B");
|
||||
bios_rom_name = "roms/scsi/buslogic/BT-542B_BIOS.rom";
|
||||
bios_rom_name = "roms/scsi/buslogic/BT-542B_BIOS.ROM";
|
||||
bios_rom_size = 0x4000;
|
||||
bios_rom_mask = 0x3fff;
|
||||
has_autoscsi_rom = 0;
|
||||
|
||||
@@ -45,7 +45,7 @@
|
||||
|
||||
#define LCS6821N_ROM "roms/scsi/ncr5380/Longshine LCS-6821N - BIOS version 1.04.bin"
|
||||
#define RT1000B_810R_ROM "roms/scsi/ncr5380/Rancho_RT1000_RTBios_version_8.10R.bin"
|
||||
#define RT1000B_820R_ROM "roms/scsi/ncr5380/RTBIOS82.rom"
|
||||
#define RT1000B_820R_ROM "roms/scsi/ncr5380/RTBIOS82.ROM"
|
||||
#define T130B_ROM "roms/scsi/ncr5380/trantor_t130b_bios_v2.14.bin"
|
||||
#define T128_ROM "roms/scsi/ncr5380/trantor_t128_bios_v1.12.bin"
|
||||
|
||||
|
||||
@@ -47,7 +47,7 @@
|
||||
|
||||
|
||||
#define NCR53C8XX_SDMS3_ROM "roms/scsi/ncr53c8xx/NCR307.BIN"
|
||||
#define SYM53C8XX_SDMS4_ROM "roms/scsi/ncr53c8xx/8xx_64.ROM"
|
||||
#define SYM53C8XX_SDMS4_ROM "roms/scsi/ncr53c8xx/8xx_64.rom"
|
||||
|
||||
#define HA_ID 7
|
||||
|
||||
|
||||
@@ -69,14 +69,14 @@ mt32emu_return_code mt32_check(const char* func, mt32emu_return_code ret, mt32em
|
||||
int mt32_available()
|
||||
{
|
||||
if (roms_present[0] < 0)
|
||||
roms_present[0] = (rom_present("roms/sound/mt32/mt32_control.rom") && rom_present("roms/sound/mt32/mt32_pcm.rom"));
|
||||
roms_present[0] = (rom_present("roms/sound/mt32/MT32_CONTROL.ROM") && rom_present("roms/sound/mt32/MT32_PCM.ROM"));
|
||||
return roms_present[0];
|
||||
}
|
||||
|
||||
int cm32l_available()
|
||||
{
|
||||
if (roms_present[1] < 0)
|
||||
roms_present[1] = (rom_present("roms/sound/cm32l/cm32l_control.rom") && rom_present("roms/sound/cm32l/cm32l_pcm.rom"));
|
||||
roms_present[1] = (rom_present("roms/sound/cm32l/CM32L_CONTROL.ROM") && rom_present("roms/sound/cm32l/CM32L_PCM.ROM"));
|
||||
return roms_present[1];
|
||||
}
|
||||
|
||||
|
||||
@@ -26,61 +26,75 @@
|
||||
#include <86box/snd_ac97.h>
|
||||
|
||||
|
||||
enum {
|
||||
AC97_CODEC_AD1881,
|
||||
AC97_CODEC_ALC100,
|
||||
AC97_CODEC_CS4297,
|
||||
AC97_CODEC_CS4297A,
|
||||
AC97_CODEC_WM9701A
|
||||
};
|
||||
|
||||
static const struct {
|
||||
const uint32_t vendor_id, max_rate, misc_flags; /* definitions for misc_flags in snd_ac97.h */
|
||||
const uint32_t vendor_id, min_rate, max_rate, misc_flags; /* definitions for misc_flags in snd_ac97.h */
|
||||
const uint16_t reset_flags, extid_flags, /* definitions in snd_ac97.h */
|
||||
powerdown_mask; /* bits [7:0] => register 26 bits [15:8]; bits [11:8] => register 2A bits [14:11] */
|
||||
const ac97_vendor_reg_t *vendor_regs; /* bits [11:8] of index are the page number if applicable (registers [60:6F]) */
|
||||
const device_t *device;
|
||||
} ac97_codecs[] = {
|
||||
[AC97_CODEC_AD1881] = {
|
||||
.vendor_id = AC97_VENDOR_ID('A', 'D', 'S', 0x40),
|
||||
.min_rate = 7000,
|
||||
.max_rate = 48000,
|
||||
.misc_flags = AC97_MASTER_6B | AC97_MONOOUT | AC97_PCBEEP | AC97_PHONE | AC97_VIDEO | AC97_AUXIN | AC97_POP | AC97_MS | AC97_LPBK,
|
||||
.reset_flags = (1 << AC97_3D_SHIFT), /* datasheet contradicts itself on AC97_HPOUT */
|
||||
.extid_flags = AC97_VRA,
|
||||
.powerdown_mask = 0x0bf
|
||||
.powerdown_mask = 0x0bf,
|
||||
.vendor_regs = (const ac97_vendor_reg_t[]) {{0x74, 0x0000, 0xff07}, {0x76, 0x0404, 0xdde5}, {0x78, 48000, 0x0000}, {0x7a, 48000, 0x0000}, {0}},
|
||||
.device = &ad1881_device
|
||||
},
|
||||
[AC97_CODEC_ALC100] = {
|
||||
.vendor_id = AC97_VENDOR_ID('A', 'L', 'C', 0x20),
|
||||
.max_rate = 48000,
|
||||
.misc_flags = AC97_AUXOUT | AC97_MONOOUT | AC97_PCBEEP | AC97_PHONE | AC97_VIDEO | AC97_AUXIN | AC97_POP | AC97_MS | AC97_LPBK,
|
||||
.reset_flags = (22 << AC97_3D_SHIFT),
|
||||
.extid_flags = AC97_AMAP,
|
||||
.powerdown_mask = 0x0bf
|
||||
.powerdown_mask = 0x0bf,
|
||||
.device = &alc100_device
|
||||
},
|
||||
[AC97_CODEC_CS4297] = {
|
||||
.vendor_id = AC97_VENDOR_ID('C', 'R', 'Y', 0x03),
|
||||
.max_rate = 48000,
|
||||
.misc_flags = AC97_MASTER_6B | AC97_AUXOUT | AC97_AUXOUT_6B | AC97_MONOOUT | AC97_MONOOUT_6B | AC97_PCBEEP | AC97_PHONE | AC97_VIDEO | AC97_AUXIN | AC97_MS | AC97_LPBK,
|
||||
.reset_flags = AC97_HPOUT | AC97_DAC_18B | AC97_ADC_18B,
|
||||
.extid_flags = 0,
|
||||
.powerdown_mask = 0x07f,
|
||||
.vendor_regs = (const ac97_vendor_reg_t[]) {{0x05a, 0x0301, 0x0000}, {0}}
|
||||
.vendor_regs = (const ac97_vendor_reg_t[]) {{0x5a, 0x0301, 0x0000}, {0}},
|
||||
.device = &cs4297_device
|
||||
},
|
||||
[AC97_CODEC_CS4297A] = {
|
||||
.vendor_id = AC97_VENDOR_ID('C', 'R', 'Y', 0x11),
|
||||
.max_rate = 48000,
|
||||
.misc_flags = AC97_MASTER_6B | AC97_AUXOUT | AC97_MONOOUT | AC97_PCBEEP | AC97_PHONE | AC97_VIDEO | AC97_AUXIN | AC97_MS | AC97_LPBK,
|
||||
.reset_flags = AC97_HPOUT | AC97_DAC_20B | AC97_ADC_18B | (6 << AC97_3D_SHIFT),
|
||||
.extid_flags = AC97_AMAP,
|
||||
.powerdown_mask = 0x0ff,
|
||||
.vendor_regs = (const ac97_vendor_reg_t[]) {{0x05e, 0x0000, 0x01b0}, {0x060, 0x0023, 0x0001}, {0x068, 0x0000, 0xdfff}, {0}}
|
||||
.vendor_regs = (const ac97_vendor_reg_t[]) {{0x5e, 0x0000, 0x01b0}, {0x60, 0x0023, 0x0001}, {0x68, 0x0000, 0xdfff}, {0}},
|
||||
.device = &cs4297a_device
|
||||
},
|
||||
[AC97_CODEC_STAC9708] = {
|
||||
.vendor_id = AC97_VENDOR_ID(0x83, 0x84, 0x76, 0x08),
|
||||
.misc_flags = AC97_AUXOUT | AC97_MONOOUT | AC97_PCBEEP | AC97_PHONE | AC97_VIDEO | AC97_AUXIN | AC97_MS | AC97_LPBK,
|
||||
.reset_flags = (26 << AC97_3D_SHIFT) | AC97_DAC_18B | AC97_ADC_18B,
|
||||
.extid_flags = AC97_SDAC,
|
||||
.powerdown_mask = 0x2ff,
|
||||
.vendor_regs = (const ac97_vendor_reg_t []) {{0x6c, 0x0000, 0x0003}, {0x74, 0x0000, 0x0003}, {0}},
|
||||
.device = &stac9708_device
|
||||
},
|
||||
[AC97_CODEC_STAC9721] = {
|
||||
.vendor_id = AC97_VENDOR_ID(0x83, 0x84, 0x76, 0x09),
|
||||
.misc_flags = AC97_AUXOUT | AC97_MONOOUT | AC97_PCBEEP | AC97_PHONE | AC97_VIDEO | AC97_AUXIN | AC97_MS | AC97_LPBK,
|
||||
.reset_flags = (26 << AC97_3D_SHIFT) | AC97_DAC_18B | AC97_ADC_18B,
|
||||
.extid_flags = AC97_AMAP,
|
||||
.powerdown_mask = 0x0ff,
|
||||
.vendor_regs = (const ac97_vendor_reg_t []) {{0x6c, 0x0000, 0x0000}, {0x6e, 0x0000, 0x0003}, {0x70, 0x0000, 0xffff}, {0x72, 0x0000, 0x0006}, {0x74, 0x0000, 0x0003}, {0x76, 0x0000, 0xffff}, {0x78, 0x0000, 0x3802}, {0}},
|
||||
.device = &stac9721_device
|
||||
},
|
||||
[AC97_CODEC_WM9701A] = {
|
||||
.vendor_id = AC97_VENDOR_ID('W', 'M', 'L', 0x00),
|
||||
.max_rate = 48000,
|
||||
.misc_flags = AC97_AUXOUT | AC97_MONOOUT | AC97_PCBEEP | AC97_PHONE | AC97_VIDEO | AC97_AUXIN | AC97_MS | AC97_LPBK,
|
||||
.reset_flags = AC97_DAC_18B | AC97_ADC_18B,
|
||||
.extid_flags = 0,
|
||||
.powerdown_mask = 0x03f
|
||||
.powerdown_mask = 0x03f,
|
||||
.device = &wm9701a_device
|
||||
}
|
||||
};
|
||||
|
||||
@@ -257,6 +271,13 @@ line_gain: val &= 0x9f1f;
|
||||
val &= 0x0003;
|
||||
break;
|
||||
|
||||
case 26: /* SigmaTel */
|
||||
i = 0x0003;
|
||||
if (dev->extid_flags & AC97_SDAC)
|
||||
i |= 0x000c;
|
||||
val &= i;
|
||||
break;
|
||||
|
||||
default:
|
||||
return;
|
||||
}
|
||||
@@ -271,6 +292,11 @@ line_gain: val &= 0x9f1f;
|
||||
case 0x26: /* Powerdown Control/Status */
|
||||
i = dev->powerdown_mask << 8;
|
||||
val = (val & i) | (prev & ~i);
|
||||
|
||||
/* Update status bits to reflect powerdowns. */
|
||||
val = (val & ~0x000f) | (~(val >> 8) & 0x000f);
|
||||
if (val & 0x0800) /* PR3 clears both ANL and REF */
|
||||
val &= ~0x0004;
|
||||
break;
|
||||
|
||||
case 0x28: /* Extended Audio ID */
|
||||
@@ -306,8 +332,10 @@ rate: /* Writable only if VRA/VRM is set. */
|
||||
if (!(dev->extid_flags & i))
|
||||
return;
|
||||
|
||||
/* Limit to maximum rate. */
|
||||
if (val > dev->max_rate)
|
||||
/* Limit to supported sample rate range. */
|
||||
if (val < dev->min_rate)
|
||||
val = dev->min_rate;
|
||||
else if (val > dev->max_rate)
|
||||
val = dev->max_rate;
|
||||
break;
|
||||
|
||||
@@ -433,6 +461,9 @@ ac97_codec_reset(void *priv)
|
||||
dev->regs[0x14 >> 1] = AC97_MUTE | 0x0808;
|
||||
if (dev->misc_flags & AC97_AUXIN)
|
||||
dev->regs[0x14 >> 1] = AC97_MUTE | 0x0808;
|
||||
dev->regs[0x1c] = AC97_MUTE; /* record gain */
|
||||
if (dev->reset_flags & AC97_MICPCM)
|
||||
dev->regs[0x1e] = AC97_MUTE; /* mic record gain */
|
||||
if (dev->misc_flags & AC97_LDAC)
|
||||
dev->regs[0x36 >> 1] = AC97_MUTE_L;
|
||||
if (dev->misc_flags & AC97_CDAC)
|
||||
@@ -533,6 +564,7 @@ ac97_codec_init(const device_t *info)
|
||||
memset(dev, 0, sizeof(ac97_codec_t));
|
||||
|
||||
dev->vendor_id = ac97_codecs[info->local].vendor_id;
|
||||
dev->min_rate = ac97_codecs[info->local].min_rate;
|
||||
dev->max_rate = ac97_codecs[info->local].max_rate;
|
||||
dev->extid_flags = ac97_codecs[info->local].extid_flags;
|
||||
dev->misc_flags = ac97_codecs[info->local].misc_flags;
|
||||
@@ -594,6 +626,16 @@ ac97_codec_close(void *priv)
|
||||
}
|
||||
|
||||
|
||||
const device_t *
|
||||
ac97_codec_get(int model)
|
||||
{
|
||||
if ((model >= 0) && (model < (sizeof(ac97_codecs) / sizeof(ac97_codecs[0]))))
|
||||
return ac97_codecs[model].device;
|
||||
else
|
||||
return &cs4297a_device; /* fallback */
|
||||
}
|
||||
|
||||
|
||||
const device_t ad1881_device =
|
||||
{
|
||||
"Analog Devices AD1881",
|
||||
@@ -642,6 +684,30 @@ const device_t cs4297a_device =
|
||||
NULL
|
||||
};
|
||||
|
||||
const device_t stac9708_device =
|
||||
{
|
||||
"SigmaTel STAC9708",
|
||||
DEVICE_AC97,
|
||||
AC97_CODEC_STAC9708,
|
||||
ac97_codec_init, ac97_codec_close, ac97_codec_reset,
|
||||
{ NULL },
|
||||
NULL,
|
||||
NULL,
|
||||
NULL
|
||||
};
|
||||
|
||||
const device_t stac9721_device =
|
||||
{
|
||||
"SigmaTel STAC9721",
|
||||
DEVICE_AC97,
|
||||
AC97_CODEC_STAC9721,
|
||||
ac97_codec_init, ac97_codec_close, ac97_codec_reset,
|
||||
{ NULL },
|
||||
NULL,
|
||||
NULL,
|
||||
NULL
|
||||
};
|
||||
|
||||
const device_t wm9701a_device =
|
||||
{
|
||||
"Wolfson WM9701A",
|
||||
|
||||
@@ -87,6 +87,7 @@ ac97_via_log(const char *fmt, ...)
|
||||
static void ac97_via_sgd_process(void *priv);
|
||||
static void ac97_via_update_codec(ac97_via_t *dev);
|
||||
static void ac97_via_speed_changed(void *priv);
|
||||
static void ac97_via_filter_cd_audio(int channel, double *buffer, void *priv);
|
||||
|
||||
|
||||
void
|
||||
@@ -390,8 +391,15 @@ ac97_via_sgd_write(uint16_t addr, uint8_t val, void *priv)
|
||||
*((uint16_t *) &dev->codec_shadow[modem].regs_codec[i][val & 0x7f]) = *((uint16_t *) &dev->sgd_regs[0x80]));
|
||||
|
||||
/* Update primary audio codec state if that codec was written to. */
|
||||
if (!modem && !i)
|
||||
if (!modem && !i) {
|
||||
ac97_via_update_codec(dev);
|
||||
|
||||
/* Set up CD audio filter if CD volume was written to. Setting it
|
||||
up at init prevents CD audio from working on other cards, but
|
||||
this works as the CD channel is muted by default per AC97 spec. */
|
||||
if (val == 0x12)
|
||||
sound_set_cd_audio_filter(ac97_via_filter_cd_audio, dev);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -741,7 +749,7 @@ ac97_via_get_buffer(int32_t *buffer, int len, void *priv)
|
||||
|
||||
|
||||
static void
|
||||
via_ac97_filter_cd_audio(int channel, double *buffer, void *priv)
|
||||
ac97_via_filter_cd_audio(int channel, double *buffer, void *priv)
|
||||
{
|
||||
ac97_via_t *dev = (ac97_via_t *) priv;
|
||||
double c, volume = channel ? dev->cd_vol_r : dev->cd_vol_l;
|
||||
@@ -806,9 +814,6 @@ ac97_via_init(const device_t *info)
|
||||
/* Set up playback handler. */
|
||||
sound_add_handler(ac97_via_get_buffer, dev);
|
||||
|
||||
/* Set up CD audio filter. */
|
||||
sound_set_cd_audio_filter(via_ac97_filter_cd_audio, dev);
|
||||
|
||||
return dev;
|
||||
}
|
||||
|
||||
|
||||
@@ -99,6 +99,7 @@ typedef struct {
|
||||
int64_t dac_latch, dac_time;
|
||||
|
||||
int master_vol_l, master_vol_r,
|
||||
pcm_vol_l, pcm_vol_r,
|
||||
cd_vol_l, cd_vol_r;
|
||||
|
||||
int card;
|
||||
@@ -1019,6 +1020,7 @@ es1371_outl(uint16_t port, uint32_t val, void *p)
|
||||
ac97_codec_writew(dev->codec, val >> 16, val);
|
||||
|
||||
ac97_codec_getattn(dev->codec, 0x02, &dev->master_vol_l, &dev->master_vol_r);
|
||||
ac97_codec_getattn(dev->codec, 0x18, &dev->pcm_vol_l, &dev->pcm_vol_r);
|
||||
ac97_codec_getattn(dev->codec, 0x12, &dev->cd_vol_l, &dev->cd_vol_r);
|
||||
}
|
||||
break;
|
||||
@@ -1407,7 +1409,7 @@ es1371_pci_read(int func, int addr, void *p)
|
||||
case 0x06: return 0x10; /* Supports ACPI */
|
||||
case 0x07: return 0x00;
|
||||
|
||||
case 0x08: return 0x02; /* Revision ID */
|
||||
case 0x08: return 0x08; /* Revision ID - 0x02 (datasheet, VMware) has issues with the 2001 Creative WDM driver */
|
||||
case 0x09: return 0x00; /* Multimedia audio device */
|
||||
case 0x0a: return 0x01;
|
||||
case 0x0b: return 0x04;
|
||||
@@ -1664,8 +1666,8 @@ es1371_update(es1371_t *dev)
|
||||
l >>= 1;
|
||||
r >>= 1;
|
||||
|
||||
l = (l * dev->master_vol_l) >> 15;
|
||||
r = (r * dev->master_vol_r) >> 15;
|
||||
l = (((l * dev->pcm_vol_l) >> 15) * dev->master_vol_l) >> 15;
|
||||
r = (((r * dev->pcm_vol_r) >> 15) * dev->master_vol_r) >> 15;
|
||||
|
||||
if (l < -32768)
|
||||
l = -32768;
|
||||
@@ -1694,7 +1696,7 @@ es1371_poll(void *p)
|
||||
es1371_update(dev);
|
||||
|
||||
if (dev->int_ctrl & INT_UART_EN) {
|
||||
audiopci_log("UART INT Enabled\n");
|
||||
//audiopci_log("UART INT Enabled\n");
|
||||
if (dev->uart_ctrl & UART_CTRL_RXINTEN) {
|
||||
/* We currently don't implement MIDI Input.
|
||||
But if anything sets MIDI Input and Output together we'd have to take account
|
||||
@@ -1710,7 +1712,7 @@ es1371_poll(void *p)
|
||||
dev->uart_status |= (UART_STATUS_TXINT | UART_STATUS_TXRDY);
|
||||
}
|
||||
|
||||
audiopci_log("UART control = %02x\n", dev->uart_ctrl & (UART_CTRL_RXINTEN | UART_CTRL_TXINTEN));
|
||||
//audiopci_log("UART control = %02x\n", dev->uart_ctrl & (UART_CTRL_RXINTEN | UART_CTRL_TXINTEN));
|
||||
es1371_update_irqs(dev);
|
||||
}
|
||||
|
||||
@@ -1785,14 +1787,12 @@ static void
|
||||
es1371_filter_cd_audio(int channel, double *buffer, void *p)
|
||||
{
|
||||
es1371_t *dev = (es1371_t *)p;
|
||||
int32_t c;
|
||||
double c;
|
||||
int cd = channel ? dev->cd_vol_r : dev->cd_vol_l;
|
||||
int master = channel ? dev->master_vol_r : dev->master_vol_l;
|
||||
|
||||
c = (((int32_t) *buffer) * cd) >> 15;
|
||||
c = (c * master) >> 15;
|
||||
|
||||
*buffer = (double) c;
|
||||
c = ((((*buffer) * cd) / 65536.0) * master) / 65536.0;
|
||||
*buffer = c;
|
||||
}
|
||||
|
||||
|
||||
@@ -1858,7 +1858,7 @@ es1371_init(const device_t *info)
|
||||
ac97_codec_id = 0;
|
||||
/* Let the machine decide the codec on onboard implementations. */
|
||||
if (!info->local)
|
||||
device_add(&cs4297a_device);
|
||||
device_add(ac97_codec_get(device_get_config_int("codec")));
|
||||
|
||||
es1371_reset(dev);
|
||||
|
||||
@@ -1884,6 +1884,34 @@ es1371_speed_changed(void *p)
|
||||
}
|
||||
|
||||
|
||||
static const device_config_t es1371_config[] =
|
||||
{
|
||||
{
|
||||
.name = "codec",
|
||||
.description = "CODEC",
|
||||
.type = CONFIG_SELECTION,
|
||||
.selection = {
|
||||
{
|
||||
.description = "Crystal CS4297",
|
||||
.value = AC97_CODEC_CS4297
|
||||
}, {
|
||||
.description = "Crystal CS4297A",
|
||||
.value = AC97_CODEC_CS4297A
|
||||
}, {
|
||||
.description = "SigmaTel STAC9708",
|
||||
.value = AC97_CODEC_STAC9708
|
||||
}, {
|
||||
.description = "SigmaTel STAC9721",
|
||||
.value = AC97_CODEC_STAC9721
|
||||
}
|
||||
},
|
||||
.default_int = AC97_CODEC_CS4297A
|
||||
}, {
|
||||
"", "", -1
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
const device_t es1371_device =
|
||||
{
|
||||
"Ensoniq AudioPCI (ES1371)",
|
||||
@@ -1891,11 +1919,11 @@ const device_t es1371_device =
|
||||
0,
|
||||
es1371_init,
|
||||
es1371_close,
|
||||
NULL,
|
||||
es1371_reset,
|
||||
{ NULL },
|
||||
es1371_speed_changed,
|
||||
NULL,
|
||||
NULL
|
||||
es1371_config
|
||||
};
|
||||
|
||||
const device_t es1371_onboard_device =
|
||||
|
||||
@@ -779,9 +779,9 @@ cs423x_init(const device_t *info)
|
||||
/* Initialize ISAPnP. */
|
||||
dev->pnp_card = isapnp_add_card(NULL, 0, cs423x_pnp_config_changed, NULL, NULL, NULL, dev);
|
||||
|
||||
/* Initialize SBPro codec first to get the correct CD audio filter for the default
|
||||
context, which is SBPro. The WSS codec is initialized later by cs423x_reset */
|
||||
/* Initialize SBPro codec. The WSS codec is initialized later by cs423x_reset */
|
||||
dev->sb = device_add(&sb_pro_compat_device);
|
||||
sound_set_cd_audio_filter(sbpro_filter_cd_audio, dev->sb); /* CD audio filter for the default context */
|
||||
|
||||
/* Initialize RAM, registers and WSS codec. */
|
||||
cs423x_reset(dev);
|
||||
|
||||
@@ -1615,7 +1615,6 @@ sb_pro_compat_init(const device_t *info)
|
||||
|
||||
sb->mixer_enabled = 1;
|
||||
sound_add_handler(sb_get_buffer_sbpro, sb);
|
||||
sound_set_cd_audio_filter(sbpro_filter_cd_audio, sb);
|
||||
|
||||
sb->mpu = (mpu_t *) malloc(sizeof(mpu_t));
|
||||
memset(sb->mpu, 0, sizeof(mpu_t));
|
||||
|
||||
@@ -43,9 +43,9 @@
|
||||
#endif
|
||||
|
||||
#define BIOS_ATIKOR_PATH "roms/video/ati28800/atikorvga.bin"
|
||||
#define BIOS_ATIKOR_4620P_PATH_L "roms/machines/spc4620p/31005h.u8"
|
||||
#define BIOS_ATIKOR_4620P_PATH_H "roms/machines/spc4620p/31005h.u10"
|
||||
#define BIOS_ATIKOR_6033P_PATH "roms/machines/spc6033p/phoenix.bin"
|
||||
#define BIOS_ATIKOR_4620P_PATH_L "roms/machines/spc4620p/31005h.u8"
|
||||
#define BIOS_ATIKOR_4620P_PATH_H "roms/machines/spc4620p/31005h.u10"
|
||||
#define BIOS_ATIKOR_6033P_PATH "roms/machines/spc6033p/phoenix.BIN"
|
||||
#define FONT_ATIKOR_PATH "roms/video/ati28800/ati_ksc5601.rom"
|
||||
#define FONT_ATIKOR_4620P_PATH "roms/machines/spc4620p/svb6120a_font.rom"
|
||||
#define FONT_ATIKOR_6033P_PATH "roms/machines/spc6033p/svb6120a_font.rom"
|
||||
|
||||
@@ -45,19 +45,19 @@
|
||||
#define BIOS_GD5402_ONBOARD_PATH "roms/machines/cmdsl386sx25/c000.rom"
|
||||
#define BIOS_GD5420_PATH "roms/video/cirruslogic/5420.vbi"
|
||||
#define BIOS_GD5422_PATH "roms/video/cirruslogic/cl5422.bin"
|
||||
#define BIOS_GD5426_DIAMOND_A1_ISA_PATH "roms/video/cirruslogic/diamond5426.bin"
|
||||
#define BIOS_GD5428_DIAMOND_B1_VLB_PATH "roms/video/cirruslogic/Diamond SpeedStar PRO VLB v3.04.bin"
|
||||
#define BIOS_GD5426_DIAMOND_A1_ISA_PATH "roms/video/cirruslogic/diamond5426.vbi"
|
||||
#define BIOS_GD5428_DIAMOND_B1_VLB_PATH "roms/video/cirruslogic/Diamond SpeedStar PRO VLB v3.04.bin"
|
||||
#define BIOS_GD5428_ISA_PATH "roms/video/cirruslogic/5428.bin"
|
||||
#define BIOS_GD5428_MCA_PATH "roms/video/cirruslogic/SVGA141.ROM"
|
||||
#define BIOS_GD5428_PATH "roms/video/cirruslogic/vlbusjapan.BIN"
|
||||
#define BIOS_GD5429_PATH "roms/video/cirruslogic/5429.vbi"
|
||||
#define BIOS_GD5430_DIAMOND_A8_VLB_PATH "roms/video/cirruslogic/diamondvlbus.bin"
|
||||
#define BIOS_GD5430_DIAMOND_A8_VLB_PATH "roms/video/cirruslogic/diamondvlbus.bin"
|
||||
#define BIOS_GD5430_PATH "roms/video/cirruslogic/pci.bin"
|
||||
#define BIOS_GD5434_DIAMOND_A3_ISA_PATH "roms/video/cirruslogic/Diamond Multimedia SpeedStar 64 v2.02 EPROM Backup from ST M27C256B-12F1.BIN"
|
||||
#define BIOS_GD5434_PATH "roms/video/cirruslogic/gd5434.bin"
|
||||
#define BIOS_GD5434_DIAMOND_A3_ISA_PATH "roms/video/cirruslogic/Diamond Multimedia SpeedStar 64 v2.02 EPROM Backup from ST M27C256B-12F1.BIN"
|
||||
#define BIOS_GD5434_PATH "roms/video/cirruslogic/gd5434.BIN"
|
||||
#define BIOS_GD5436_PATH "roms/video/cirruslogic/5436.vbi"
|
||||
#define BIOS_GD5440_PATH "roms/video/cirruslogic/BIOS.BIN"
|
||||
#define BIOS_GD5446_PATH "roms/video/cirruslogic/5446BV.VBI"
|
||||
#define BIOS_GD5446_PATH "roms/video/cirruslogic/5446bv.vbi"
|
||||
#define BIOS_GD5446_STB_PATH "roms/video/cirruslogic/stb nitro64v.BIN"
|
||||
#define BIOS_GD5480_PATH "roms/video/cirruslogic/clgd5480.rom"
|
||||
|
||||
|
||||
@@ -54,7 +54,7 @@
|
||||
#include <86box/vid_svga_render.h>
|
||||
|
||||
|
||||
#define BIOS_ROM_PATH "roms/video/et4000/et4000.bin"
|
||||
#define BIOS_ROM_PATH "roms/video/et4000/ET4000.BIN"
|
||||
#define KOREAN_BIOS_ROM_PATH "roms/video/et4000/tgkorvga.bin"
|
||||
#define KOREAN_FONT_ROM_PATH "roms/video/et4000/tg_ksc5601.rom"
|
||||
#define KASAN_BIOS_ROM_PATH "roms/video/et4000/et4000_kasan16.bin"
|
||||
|
||||
@@ -30,11 +30,11 @@
|
||||
#include <86box/vid_svga.h>
|
||||
#include <86box/vid_svga_render.h>
|
||||
|
||||
#define BIOS_037C_PATH "roms/video/oti/bios.bin"
|
||||
#define BIOS_067_AMA932J_PATH "roms/machines/ama932j/oti067.bin"
|
||||
#define BIOS_067_M300_08_PATH "roms/machines/olivetti_m300_08/EVC_BIOS.ROM"
|
||||
#define BIOS_067_M300_15_PATH "roms/machines/olivetti_m300_15/EVC_BIOS.ROM"
|
||||
#define BIOS_077_PATH "roms/video/oti/oti077.vbi"
|
||||
#define BIOS_037C_PATH "roms/video/oti/bios.bin"
|
||||
#define BIOS_067_AMA932J_PATH "roms/machines/ama932j/OTI067.BIN"
|
||||
#define BIOS_067_M300_08_PATH "roms/machines/m30008/EVC_BIOS.ROM"
|
||||
#define BIOS_067_M300_15_PATH "roms/machines/m30015/EVC_BIOS.ROM"
|
||||
#define BIOS_077_PATH "roms/video/oti/oti077.vbi"
|
||||
|
||||
|
||||
enum {
|
||||
|
||||
@@ -599,7 +599,7 @@ static void *paradise_pvga1a_ncr3302_init(const device_t *info)
|
||||
paradise_t *paradise = paradise_init(info, 1 << 18);
|
||||
|
||||
if (paradise)
|
||||
rom_init(¶dise->bios_rom, "roms/machines/ncr_3302/c000-wd_1987-1989-740011-003058-019c.bin", 0xc0000, 0x8000, 0x7fff, 0, MEM_MAPPING_EXTERNAL);
|
||||
rom_init(¶dise->bios_rom, "roms/machines/3302/c000-wd_1987-1989-740011-003058-019c.bin", 0xc0000, 0x8000, 0x7fff, 0, MEM_MAPPING_EXTERNAL);
|
||||
|
||||
return paradise;
|
||||
}
|
||||
|
||||
@@ -40,15 +40,15 @@
|
||||
#define ROM_ORCHID_86C911 "roms/video/s3/BIOS.BIN"
|
||||
#define ROM_DIAMOND_STEALTH_VRAM "roms/video/s3/Diamond Stealth VRAM BIOS v2.31 U14.BIN"
|
||||
#define ROM_AMI_86C924 "roms/video/s3/S3924AMI.BIN"
|
||||
#define ROM_METHEUS_86C928 "roms/video/s3/928.vbi"
|
||||
#define ROM_METHEUS_86C928 "roms/video/s3/928.VBI"
|
||||
#define ROM_SPEA_MIRAGE_86C801 "roms/video/s3/V7MIRAGE.VBI"
|
||||
#define ROM_SPEA_MIRAGE_86C805 "roms/video/s3/86c805pspeavlbus.BIN"
|
||||
#define ROM_MIROCRYSTAL8S_805 "roms/video/s3/S3_805VL_ATT20C491_miroCRYSTAL_8s_ver1.4.BIN"
|
||||
#define ROM_MIROCRYSTAL10SD_805 "roms/video/s3/MIROcrystal10SD_VLB.VBI"
|
||||
#define ROM_MIROCRYSTAL20SV_964_VLB "roms/video/s3/S3_964VL_BT485_27C256_miroCRYSTAL_20sv_ver1.2.bin"
|
||||
#define ROM_MIROCRYSTAL20SV_964_PCI "roms/video/s3/mirocrystal.VBI"
|
||||
#define ROM_MIROCRYSTAL20SD_864_VLB "roms/video/s3/Miro20SD.BIN"
|
||||
#define ROM_PHOENIX_86C80X "roms/video/s3/805.vbi"
|
||||
#define ROM_MIROCRYSTAL20SV_964_VLB "roms/video/s3/S3_964VL_BT485_27C256_miroCRYSTAL_20sv_ver1.2.bin"
|
||||
#define ROM_MIROCRYSTAL20SV_964_PCI "roms/video/s3/mirocrystal.VBI"
|
||||
#define ROM_MIROCRYSTAL20SD_864_VLB "roms/video/s3/Miro20SD.BIN"
|
||||
#define ROM_PHOENIX_86C80X "roms/video/s3/805.VBI"
|
||||
#define ROM_PARADISE_BAHAMAS64 "roms/video/s3/bahamas64.bin"
|
||||
#define ROM_PHOENIX_VISION864 "roms/video/s3/86c864p.bin"
|
||||
#define ROM_DIAMOND_STEALTH64_964 "roms/video/s3/964_107h.rom"
|
||||
@@ -67,7 +67,7 @@
|
||||
#define ROM_MIROVIDEO40SV_ERGO_968_PCI "roms/video/s3/S3_968PCI_TVP3026_miroVideo40SV_PCI_1.04.BIN"
|
||||
#define ROM_SPEA_MERCURY_P64V "roms/video/s3/S3_968PCI_TVP3026_SPEAMecuryP64V_ver1.01.BIN"
|
||||
#define ROM_NUMBER9_9FX_771 "roms/video/s3/no9motionfx771.BIN"
|
||||
#define ROM_PHOENIX_VISION968 "roms/video/s3/1-DSV3968P.BIN"
|
||||
#define ROM_PHOENIX_VISION968 "roms/video/s3/1-DSV3968P.BIN"
|
||||
|
||||
enum
|
||||
{
|
||||
|
||||
@@ -73,11 +73,11 @@ video_cards[] = {
|
||||
{ "cl_gd5420_isa", &gd5420_isa_device },
|
||||
{ "cl_gd5422_isa", &gd5422_isa_device },
|
||||
{ "cl_gd5426_isa", &gd5426_isa_device },
|
||||
{ "cl_gd5426_diamond_a1_isa", &gd5426_diamond_speedstar_pro_a1_isa_device },
|
||||
{ "cl_gd5426_diamond_a1_isa", &gd5426_diamond_speedstar_pro_a1_isa_device },
|
||||
{ "cl_gd5428_isa", &gd5428_isa_device },
|
||||
{ "cl_gd5429_isa", &gd5429_isa_device },
|
||||
{ "cl_gd5434_isa", &gd5434_isa_device },
|
||||
{ "cl_gd5434_diamond_a3_isa", &gd5434_diamond_speedstar_64_a3_isa_device },
|
||||
{ "cl_gd5434_diamond_a3_isa", &gd5434_diamond_speedstar_64_a3_isa_device },
|
||||
{ "compaq_cga", &compaq_cga_device },
|
||||
{ "compaq_cga_2", &compaq_cga_2_device },
|
||||
{ "compaq_ega", &cpqega_device },
|
||||
@@ -101,14 +101,14 @@ video_cards[] = {
|
||||
{ "wd90c30", ¶dise_wd90c30_device },
|
||||
{ "plantronics", &colorplus_device },
|
||||
{ "pgc", &pgc_device },
|
||||
{ "radius_isa", &radius_svga_multiview_isa_device },
|
||||
{ "rtg3106", &realtek_rtg3106_device },
|
||||
{ "stealthvram_isa", &s3_diamond_stealth_vram_isa_device },
|
||||
{ "radius_isa", &radius_svga_multiview_isa_device },
|
||||
{ "rtg3106", &realtek_rtg3106_device },
|
||||
{ "stealthvram_isa", &s3_diamond_stealth_vram_isa_device },
|
||||
{ "orchid_s3_911", &s3_orchid_86c911_isa_device },
|
||||
{ "ami_s3_924", &s3_ami_86c924_isa_device },
|
||||
{ "ami_s3_924", &s3_ami_86c924_isa_device },
|
||||
{ "metheus928_isa", &s3_metheus_86c928_isa_device },
|
||||
{ "px_86c801_isa", &s3_phoenix_86c801_isa_device },
|
||||
{ "px_s3_v7_801_isa", &s3_spea_mirage_86c801_isa_device },
|
||||
{ "px_s3_v7_801_isa", &s3_spea_mirage_86c801_isa_device },
|
||||
{ "sigma400", &sigma_device },
|
||||
{ "tvga8900b", &tvga8900b_device },
|
||||
{ "tvga8900d", &tvga8900d_device },
|
||||
@@ -123,7 +123,7 @@ video_cards[] = {
|
||||
{ "wy700", &wy700_device },
|
||||
{ "ibm1mbsvga", &gd5428_mca_device },
|
||||
{ "et4000mca", &et4000_mca_device },
|
||||
{ "radius_mc", &radius_svga_multiview_mca_device },
|
||||
{ "radius_mc", &radius_svga_multiview_mca_device },
|
||||
{ "mach64gx_pci", &mach64gx_pci_device },
|
||||
{ "mach64vt2", &mach64vt2_device },
|
||||
{ "et4000w32p_revc_pci", &et4000w32p_revc_pci_device },
|
||||
@@ -140,31 +140,31 @@ video_cards[] = {
|
||||
{ "stealth32_pci", &et4000w32p_pci_device },
|
||||
{ "stealth64v_pci", &s3_diamond_stealth64_964_pci_device },
|
||||
{ "elsawin2kprox_964_pci", &s3_elsa_winner2000_pro_x_964_pci_device },
|
||||
{ "mirocrystal20sv_pci", &s3_mirocrystal_20sv_964_pci_device },
|
||||
{ "mirocrystal20sv_pci", &s3_mirocrystal_20sv_964_pci_device },
|
||||
{ "bahamas64_pci", &s3_bahamas64_pci_device },
|
||||
{ "px_vision864_pci", &s3_phoenix_vision864_pci_device },
|
||||
{ "stealthse_pci", &s3_diamond_stealth_se_pci_device },
|
||||
{ "px_trio32_pci", &s3_phoenix_trio32_pci_device },
|
||||
{ "px_trio32_pci", &s3_phoenix_trio32_pci_device },
|
||||
{ "stealth64d_pci", &s3_diamond_stealth64_pci_device },
|
||||
{ "n9_9fx_pci", &s3_9fx_pci_device },
|
||||
{ "px_trio64_pci", &s3_phoenix_trio64_pci_device },
|
||||
{ "elsawin2kprox_pci", &s3_elsa_winner2000_pro_x_pci_device },
|
||||
{ "mirovideo40sv_pci", &s3_mirovideo_40sv_ergo_968_pci_device },
|
||||
{ "n9_9fx_771_pci", &s3_9fx_771_pci_device },
|
||||
{ "mirovideo40sv_pci", &s3_mirovideo_40sv_ergo_968_pci_device },
|
||||
{ "n9_9fx_771_pci", &s3_9fx_771_pci_device },
|
||||
{ "px_vision968_pci", &s3_phoenix_vision968_pci_device },
|
||||
{ "spea_mercury64p_pci", &s3_spea_mercury_p64v_pci_device },
|
||||
{ "n9_9fx_531_pci", &s3_9fx_531_pci_device },
|
||||
{ "spea_mercury64p_pci", &s3_spea_mercury_p64v_pci_device },
|
||||
{ "n9_9fx_531_pci", &s3_9fx_531_pci_device },
|
||||
{ "px_vision868_pci", &s3_phoenix_vision868_pci_device },
|
||||
{ "px_trio64vplus_pci", &s3_phoenix_trio64vplus_pci_device },
|
||||
{ "px_trio64vplus_pci", &s3_phoenix_trio64vplus_pci_device },
|
||||
{ "trio64v2dx_pci", &s3_trio64v2_dx_pci_device },
|
||||
{ "virge325_pci", &s3_virge_325_pci_device },
|
||||
{ "stealth3d_2000_pci", &s3_diamond_stealth_2000_pci_device },
|
||||
{ "stealth3d_3000_pci", &s3_diamond_stealth_3000_pci_device },
|
||||
{ "stealth3d_2000_pci", &s3_diamond_stealth_2000_pci_device },
|
||||
{ "stealth3d_3000_pci", &s3_diamond_stealth_3000_pci_device },
|
||||
{ "virge375_pci", &s3_virge_375_pci_device },
|
||||
{ "stealth3d_2000pro_pci", &s3_diamond_stealth_2000pro_pci_device },
|
||||
{ "stealth3d_2000pro_pci", &s3_diamond_stealth_2000pro_pci_device },
|
||||
{ "virge385_pci", &s3_virge_385_pci_device },
|
||||
{ "virge357_pci", &s3_virge_357_pci_device },
|
||||
{ "stealth3d_4000_pci", &s3_diamond_stealth_4000_pci_device },
|
||||
{ "stealth3d_4000_pci", &s3_diamond_stealth_4000_pci_device },
|
||||
{ "trio3d2x", &s3_trio3d2x_pci_device },
|
||||
#if defined(DEV_BRANCH) && defined(USE_MGA)
|
||||
{ "mystique", &mystique_device },
|
||||
@@ -185,18 +185,18 @@ video_cards[] = {
|
||||
{ "cl_gd5424_vlb", &gd5424_vlb_device },
|
||||
{ "cl_gd5426_vlb", &gd5426_vlb_device },
|
||||
{ "cl_gd5428_vlb", &gd5428_vlb_device },
|
||||
{ "cl_gd5428_diamond_b1_vlb", &gd5428_diamond_speedstar_pro_b1_vlb_device },
|
||||
{ "cl_gd5428_diamond_b1_vlb", &gd5428_diamond_speedstar_pro_b1_vlb_device },
|
||||
{ "cl_gd5429_vlb", &gd5429_vlb_device },
|
||||
{ "cl_gd5430_vlb", &gd5430_diamond_speedstar_pro_se_a8_vlb_device },
|
||||
{ "cl_gd5430_vlb", &gd5430_diamond_speedstar_pro_se_a8_vlb_device },
|
||||
{ "cl_gd5434_vlb", &gd5434_vlb_device },
|
||||
{ "metheus928_vlb", &s3_metheus_86c928_vlb_device },
|
||||
{ "mirocrystal8s_vlb", &s3_mirocrystal_8s_805_vlb_device },
|
||||
{ "mirocrystal10sd_vlb", &s3_mirocrystal_10sd_805_vlb_device },
|
||||
{ "mirocrystal8s_vlb", &s3_mirocrystal_8s_805_vlb_device },
|
||||
{ "mirocrystal10sd_vlb", &s3_mirocrystal_10sd_805_vlb_device },
|
||||
{ "px_86c805_vlb", &s3_phoenix_86c805_vlb_device },
|
||||
{ "px_s3_v7_805_vlb", &s3_spea_mirage_86c805_vlb_device },
|
||||
{ "px_s3_v7_805_vlb", &s3_spea_mirage_86c805_vlb_device },
|
||||
{ "stealth64v_vlb", &s3_diamond_stealth64_964_vlb_device },
|
||||
{ "mirocrystal20sv_vlb", &s3_mirocrystal_20sv_964_vlb_device },
|
||||
{ "mirocrystal20sd_vlb", &s3_mirocrystal_20sd_864_vlb_device },
|
||||
{ "mirocrystal20sv_vlb", &s3_mirocrystal_20sv_964_vlb_device },
|
||||
{ "mirocrystal20sd_vlb", &s3_mirocrystal_20sd_864_vlb_device },
|
||||
{ "bahamas64_vlb", &s3_bahamas64_vlb_device },
|
||||
{ "px_vision864_vlb", &s3_phoenix_vision864_vlb_device },
|
||||
{ "stealthse_vlb", &s3_diamond_stealth_se_vlb_device },
|
||||
@@ -204,19 +204,19 @@ video_cards[] = {
|
||||
{ "stealth64d_vlb", &s3_diamond_stealth64_vlb_device },
|
||||
{ "n9_9fx_vlb", &s3_9fx_vlb_device },
|
||||
{ "px_trio64_vlb", &s3_phoenix_trio64_vlb_device },
|
||||
{ "spea_miragep64_vlb", &s3_spea_mirage_p64_vlb_device },
|
||||
{ "spea_miragep64_vlb", &s3_spea_mirage_p64_vlb_device },
|
||||
{ "px_vision968_vlb", &s3_phoenix_vision968_vlb_device },
|
||||
{ "px_vision868_vlb", &s3_phoenix_vision868_vlb_device },
|
||||
{ "ht216_32", &ht216_32_standalone_device },
|
||||
{ "tgui9400cxi_vlb", &tgui9400cxi_device },
|
||||
{ "tgui9440_vlb", &tgui9440_vlb_device },
|
||||
{ "virge357_agp", &s3_virge_357_agp_device },
|
||||
{ "stealth3d_4000_agp", &s3_diamond_stealth_4000_agp_device },
|
||||
{ "trio3d2x_agp", &s3_trio3d2x_agp_device },
|
||||
{ "velocity100_agp", &velocity_100_agp_device },
|
||||
{ "stealth3d_4000_agp", &s3_diamond_stealth_4000_agp_device },
|
||||
{ "trio3d2x_agp", &s3_trio3d2x_agp_device },
|
||||
{ "velocity100_agp", &velocity_100_agp_device },
|
||||
{ "voodoo3_2k_agp", &voodoo_3_2000_agp_device },
|
||||
{ "voodoo3_3k_agp", &voodoo_3_3000_agp_device },
|
||||
{ "", NULL }
|
||||
{ "", NULL }
|
||||
};
|
||||
|
||||
|
||||
|
||||
@@ -75,7 +75,7 @@
|
||||
#include <86box/vid_svga.h>
|
||||
#include <86box/vid_svga_render.h>
|
||||
|
||||
#define ROM_TGUI_9400CXI "roms/video/tgui9440/9400CXI.vbi"
|
||||
#define ROM_TGUI_9400CXI "roms/video/tgui9440/9400CXI.VBI"
|
||||
#define ROM_TGUI_9440 "roms/video/tgui9440/BIOS.BIN"
|
||||
#define ROM_TGUI_96xx "roms/video/tgui9660/Union.VBI"
|
||||
|
||||
|
||||
@@ -35,7 +35,7 @@
|
||||
#define TVGA9000B_ID 0x23
|
||||
#define TVGA8900CLD_ID 0x33
|
||||
|
||||
#define ROM_TVGA_8900B "roms/video/tvga/tvga8900B.VBI"
|
||||
#define ROM_TVGA_8900B "roms/video/tvga/tvga8900b.vbi"
|
||||
#define ROM_TVGA_8900CLD "roms/video/tvga/trident.bin"
|
||||
#define ROM_TVGA_9000B "roms/video/tvga/tvga9000b.bin"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user