Merge pull request #818 from 86Box/feature/external_fdc
Feature/external fdc
This commit is contained in:
@@ -49,6 +49,7 @@
|
||||
#include <86box/device.h>
|
||||
#include <86box/fdd.h>
|
||||
#include <86box/fdc.h>
|
||||
#include <86box/fdc_ext.h>
|
||||
#include <86box/nvr.h>
|
||||
#include <86box/gameport.h>
|
||||
#include <86box/keyboard.h>
|
||||
@@ -102,7 +103,8 @@ machine_at_ibm_common_init(const machine_t *model)
|
||||
|
||||
mem_remap_top(384);
|
||||
|
||||
device_add(&fdc_at_device);
|
||||
if (fdc_type == FDC_INTERNAL)
|
||||
device_add(&fdc_at_device);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -33,6 +33,7 @@
|
||||
#include <86box/device.h>
|
||||
#include <86box/fdd.h>
|
||||
#include <86box/fdc.h>
|
||||
#include <86box/fdc_ext.h>
|
||||
#include <86box/hdc.h>
|
||||
#include <86box/hdc_ide.h>
|
||||
#include <86box/machine.h>
|
||||
@@ -45,7 +46,8 @@ enum
|
||||
{
|
||||
COMPAQ_PORTABLEII = 0,
|
||||
COMPAQ_PORTABLEIII,
|
||||
COMPAQ_PORTABLEIII386
|
||||
COMPAQ_PORTABLEIII386,
|
||||
COMPAQ_DESKPRO386
|
||||
};
|
||||
|
||||
#define CGA_RGB 0
|
||||
@@ -809,9 +811,11 @@ machine_at_compaq_init(const machine_t *model, int type)
|
||||
{
|
||||
machine_at_init(model);
|
||||
|
||||
mem_remap_top(384);
|
||||
if (type != COMPAQ_DESKPRO386)
|
||||
mem_remap_top(384);
|
||||
|
||||
device_add(&fdc_at_device);
|
||||
if (fdc_type == FDC_INTERNAL)
|
||||
device_add(&fdc_at_device);
|
||||
|
||||
mem_mapping_add(&ram_mapping, 0xfa0000, 0x60000,
|
||||
read_ram, read_ramw, read_raml,
|
||||
@@ -833,6 +837,11 @@ machine_at_compaq_init(const machine_t *model, int type)
|
||||
if (gfxcard == VID_INTERNAL)
|
||||
device_add(&compaq_plasma_device);
|
||||
break;
|
||||
|
||||
case COMPAQ_DESKPRO386:
|
||||
if (hdc_current == 1)
|
||||
device_add(&ide_isa_device);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -35,6 +35,7 @@
|
||||
#include <86box/nvr.h>
|
||||
#include <86box/fdd.h>
|
||||
#include <86box/fdc.h>
|
||||
#include <86box/fdc_ext.h>
|
||||
#include <86box/gameport.h>
|
||||
#include <86box/keyboard.h>
|
||||
#include <86box/sound.h>
|
||||
@@ -1495,7 +1496,8 @@ machine_tandy1k_init(const machine_t *model, int type)
|
||||
device_add(&keyboard_tandy_device);
|
||||
keyboard_set_table(scancode_tandy);
|
||||
|
||||
device_add(&fdc_xt_device);
|
||||
if (fdc_type == FDC_INTERNAL)
|
||||
device_add(&fdc_xt_device);
|
||||
|
||||
switch(type) {
|
||||
case TYPE_TANDY:
|
||||
@@ -1524,6 +1526,7 @@ machine_tandy1k_init(const machine_t *model, int type)
|
||||
device_add_ex(&vid_device_sl, dev);
|
||||
device_add(&pssj_device);
|
||||
device_add(&eep_1000sl2_device);
|
||||
break;
|
||||
}
|
||||
|
||||
if (joystick_type != JOYSTICK_TYPE_NONE)
|
||||
|
||||
@@ -10,6 +10,7 @@
|
||||
#include <86box/device.h>
|
||||
#include <86box/fdd.h>
|
||||
#include <86box/fdc.h>
|
||||
#include <86box/fdc_ext.h>
|
||||
#include <86box/gameport.h>
|
||||
#include <86box/ibm_5161.h>
|
||||
#include <86box/keyboard.h>
|
||||
@@ -24,7 +25,9 @@ machine_xt_common_init(const machine_t *model)
|
||||
|
||||
pit_ctr_set_out_func(&pit->counters[1], pit_refresh_timer_xt);
|
||||
|
||||
device_add(&fdc_xt_device);
|
||||
if (fdc_type == FDC_INTERNAL)
|
||||
device_add(&fdc_xt_device);
|
||||
|
||||
nmi_init();
|
||||
if (joystick_type != JOYSTICK_TYPE_NONE)
|
||||
device_add(&gameport_device);
|
||||
|
||||
@@ -31,6 +31,7 @@
|
||||
#include <86box/device.h>
|
||||
#include <86box/fdd.h>
|
||||
#include <86box/fdc.h>
|
||||
#include <86box/fdc_ext.h>
|
||||
#include <86box/gameport.h>
|
||||
#include <86box/keyboard.h>
|
||||
#include <86box/lpt.h>
|
||||
@@ -53,7 +54,8 @@ machine_xt_compaq_init(const machine_t *model)
|
||||
pit_ctr_set_out_func(&pit->counters[1], pit_refresh_timer_xt);
|
||||
|
||||
device_add(&keyboard_xt_compaq_device);
|
||||
device_add(&fdc_xt_device);
|
||||
if (fdc_type == FDC_INTERNAL)
|
||||
device_add(&fdc_xt_device);
|
||||
nmi_init();
|
||||
if (joystick_type != JOYSTICK_TYPE_NONE)
|
||||
device_add(&gameport_device);
|
||||
|
||||
@@ -36,6 +36,7 @@
|
||||
#include <86box/device.h>
|
||||
#include <86box/fdd.h>
|
||||
#include <86box/fdc.h>
|
||||
#include <86box/fdc_ext.h>
|
||||
#include <86box/gameport.h>
|
||||
#include <86box/keyboard.h>
|
||||
#include <86box/lpt.h>
|
||||
@@ -116,8 +117,10 @@ machine_xt_zenith_init(const machine_t *model)
|
||||
return ret;
|
||||
|
||||
machine_common_init(model);
|
||||
|
||||
device_add(&fdc_xt_device);
|
||||
|
||||
if (fdc_type == FDC_INTERNAL)
|
||||
device_add(&fdc_xt_device);
|
||||
|
||||
lpt1_remove(); /* only one parallel port */
|
||||
lpt2_remove();
|
||||
lpt1_init(0x278);
|
||||
|
||||
Reference in New Issue
Block a user