Merge pull request #3722 from jriwanek-forks/cleanups
Assorted Cleanups and fixes
This commit is contained in:
@@ -33,6 +33,10 @@
|
|||||||
#include <86box/plat.h>
|
#include <86box/plat.h>
|
||||||
#include <86box/sound.h>
|
#include <86box/sound.h>
|
||||||
|
|
||||||
|
#define MCD_DEFAULT_IOPORT 0x310
|
||||||
|
#define MCD_DEFAULT_IRQ 5
|
||||||
|
#define MCD_DEFAULT_DMA 5
|
||||||
|
|
||||||
#define RAW_SECTOR_SIZE 2352
|
#define RAW_SECTOR_SIZE 2352
|
||||||
#define COOKED_SECTOR_SIZE 2048
|
#define COOKED_SECTOR_SIZE 2048
|
||||||
|
|
||||||
@@ -244,6 +248,8 @@ mitsumi_cdrom_in(uint16_t port, void *priv)
|
|||||||
ret |= FLAG_NOSTAT;
|
ret |= FLAG_NOSTAT;
|
||||||
pclog("Read port 1: ret = %02x\n", ret | FLAG_UNK);
|
pclog("Read port 1: ret = %02x\n", ret | FLAG_UNK);
|
||||||
return ret | FLAG_UNK;
|
return ret | FLAG_UNK;
|
||||||
|
case 2:
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -394,10 +400,10 @@ mitsumi_cdrom_out(uint16_t port, uint8_t val, void *priv)
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case CMD_GET_VER:
|
case CMD_GET_VER:
|
||||||
dev->cmdbuf[1] = 1;
|
dev->cmdbuf[0] = 1;
|
||||||
dev->cmdbuf[2] = 'D';
|
dev->cmdbuf[1] = 'D';
|
||||||
dev->cmdbuf[3] = 0;
|
dev->cmdbuf[2] = 0;
|
||||||
dev->cmdbuf_count = 4;
|
dev->cmdbuf_count = 3;
|
||||||
break;
|
break;
|
||||||
case CMD_EJECT:
|
case CMD_EJECT:
|
||||||
cdrom_stop(&cdrom);
|
cdrom_stop(&cdrom);
|
||||||
@@ -419,6 +425,8 @@ mitsumi_cdrom_out(uint16_t port, uint8_t val, void *priv)
|
|||||||
case 1:
|
case 1:
|
||||||
mitsumi_cdrom_reset(dev);
|
mitsumi_cdrom_reset(dev);
|
||||||
break;
|
break;
|
||||||
|
case 2:
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -432,10 +440,10 @@ mitsumi_cdrom_init(UNUSED(const device_t *info))
|
|||||||
dev = malloc(sizeof(mcd_t));
|
dev = malloc(sizeof(mcd_t));
|
||||||
memset(dev, 0x00, sizeof(mcd_t));
|
memset(dev, 0x00, sizeof(mcd_t));
|
||||||
|
|
||||||
dev->irq = 5;
|
dev->irq = MCD_DEFAULT_IRQ;
|
||||||
dev->dma = 5;
|
dev->dma = MCD_DEFAULT_DMA;
|
||||||
|
|
||||||
io_sethandler(0x310, 2,
|
io_sethandler(MCD_DEFAULT_IOPORT, 3,
|
||||||
mitsumi_cdrom_in, NULL, NULL, mitsumi_cdrom_out, NULL, NULL, dev);
|
mitsumi_cdrom_in, NULL, NULL, mitsumi_cdrom_out, NULL, NULL, dev);
|
||||||
|
|
||||||
mitsumi_cdrom_reset(dev);
|
mitsumi_cdrom_reset(dev);
|
||||||
|
|||||||
@@ -141,12 +141,12 @@ static uint8_t ide_ter_pnp_rom[] = {
|
|||||||
0x1c, 0x41, 0xd0, 0x06, 0x00, /* compatible device PNP0600 */
|
0x1c, 0x41, 0xd0, 0x06, 0x00, /* compatible device PNP0600 */
|
||||||
0x31, 0x00, /* start dependent functions, preferred */
|
0x31, 0x00, /* start dependent functions, preferred */
|
||||||
0x22, 0x00, 0x08, /* IRQ 11 */
|
0x22, 0x00, 0x08, /* IRQ 11 */
|
||||||
0x47, 0x01, 0xe8, 0x01, 0xe8, 0x01, 0x01, 0x08, /* I/O 0x168, decodes 16-bit, 1-byte alignment, 8 addresses */
|
0x47, 0x01, 0xe8, 0x01, 0xe8, 0x01, 0x01, 0x08, /* I/O 0x1E8, decodes 16-bit, 1-byte alignment, 8 addresses */
|
||||||
0x47, 0x01, 0xee, 0x03, 0xee, 0x03, 0x01, 0x01, /* I/O 0x36E, decodes 16-bit, 1-byte alignment, 1 address */
|
0x47, 0x01, 0xee, 0x03, 0xee, 0x03, 0x01, 0x01, /* I/O 0x3EE, decodes 16-bit, 1-byte alignment, 1 address */
|
||||||
0x30, /* start dependent functions, acceptable */
|
0x30, /* start dependent functions, acceptable */
|
||||||
0x22, 0xb8, 0x1e, /* IRQ 3/4/5/7/9/10/11/12 */
|
0x22, 0xb8, 0x1e, /* IRQ 3/4/5/7/9/10/11/12 */
|
||||||
0x47, 0x01, 0xe8, 0x01, 0xe8, 0x01, 0x01, 0x08, /* I/O 0x168, decodes 16-bit, 1-byte alignment, 8 addresses */
|
0x47, 0x01, 0xe8, 0x01, 0xe8, 0x01, 0x01, 0x08, /* I/O 0x1E8, decodes 16-bit, 1-byte alignment, 8 addresses */
|
||||||
0x47, 0x01, 0xee, 0x03, 0xee, 0x03, 0x01, 0x01, /* I/O 0x36E, decodes 16-bit, 1-byte alignment, 1 address */
|
0x47, 0x01, 0xee, 0x03, 0xee, 0x03, 0x01, 0x01, /* I/O 0x3EE, decodes 16-bit, 1-byte alignment, 1 address */
|
||||||
0x30, /* start dependent functions, acceptable */
|
0x30, /* start dependent functions, acceptable */
|
||||||
0x22, 0xb8, 0x1e, /* IRQ 3/4/5/7/9/10/11/12 */
|
0x22, 0xb8, 0x1e, /* IRQ 3/4/5/7/9/10/11/12 */
|
||||||
0x47, 0x01, 0x00, 0x01, 0xf8, 0xff, 0x08, 0x08, /* I/O 0x100-0xFFF8, decodes 16-bit, 8-byte alignment, 8 addresses */
|
0x47, 0x01, 0x00, 0x01, 0xf8, 0xff, 0x08, 0x08, /* I/O 0x100-0xFFF8, decodes 16-bit, 8-byte alignment, 8 addresses */
|
||||||
@@ -164,12 +164,12 @@ static uint8_t ide_qua_pnp_rom[] = {
|
|||||||
0x1c, 0x41, 0xd0, 0x06, 0x00, /* compatible device PNP0600 */
|
0x1c, 0x41, 0xd0, 0x06, 0x00, /* compatible device PNP0600 */
|
||||||
0x31, 0x00, /* start dependent functions, preferred */
|
0x31, 0x00, /* start dependent functions, preferred */
|
||||||
0x22, 0x00, 0x04, /* IRQ 10 */
|
0x22, 0x00, 0x04, /* IRQ 10 */
|
||||||
0x47, 0x01, 0x68, 0x01, 0x68, 0x01, 0x01, 0x08, /* I/O 0x1E8, decodes 16-bit, 1-byte alignment, 8 addresses */
|
0x47, 0x01, 0x68, 0x01, 0x68, 0x01, 0x01, 0x08, /* I/O 0x168, decodes 16-bit, 1-byte alignment, 8 addresses */
|
||||||
0x47, 0x01, 0x6e, 0x03, 0x6e, 0x03, 0x01, 0x01, /* I/O 0x3EE, decodes 16-bit, 1-byte alignment, 1 address */
|
0x47, 0x01, 0x6e, 0x03, 0x6e, 0x03, 0x01, 0x01, /* I/O 0x36E, decodes 16-bit, 1-byte alignment, 1 address */
|
||||||
0x30, /* start dependent functions, acceptable */
|
0x30, /* start dependent functions, acceptable */
|
||||||
0x22, 0xb8, 0x1e, /* IRQ 3/4/5/7/9/10/11/12 */
|
0x22, 0xb8, 0x1e, /* IRQ 3/4/5/7/9/10/11/12 */
|
||||||
0x47, 0x01, 0x68, 0x01, 0x68, 0x01, 0x01, 0x08, /* I/O 0x1E8, decodes 16-bit, 1-byte alignment, 8 addresses */
|
0x47, 0x01, 0x68, 0x01, 0x68, 0x01, 0x01, 0x08, /* I/O 0x168, decodes 16-bit, 1-byte alignment, 8 addresses */
|
||||||
0x47, 0x01, 0x6e, 0x03, 0x6e, 0x03, 0x01, 0x01, /* I/O 0x3EE, decodes 16-bit, 1-byte alignment, 1 address */
|
0x47, 0x01, 0x6e, 0x03, 0x6e, 0x03, 0x01, 0x01, /* I/O 0x36E, decodes 16-bit, 1-byte alignment, 1 address */
|
||||||
0x30, /* start dependent functions, acceptable */
|
0x30, /* start dependent functions, acceptable */
|
||||||
0x22, 0xb8, 0x1e, /* IRQ 3/4/5/7/9/10/11/12 */
|
0x22, 0xb8, 0x1e, /* IRQ 3/4/5/7/9/10/11/12 */
|
||||||
0x47, 0x01, 0x00, 0x01, 0xf8, 0xff, 0x08, 0x08, /* I/O 0x100-0xFFF8, decodes 16-bit, 8-byte alignment, 8 addresses */
|
0x47, 0x01, 0x00, 0x01, 0xf8, 0xff, 0x08, 0x08, /* I/O 0x100-0xFFF8, decodes 16-bit, 8-byte alignment, 8 addresses */
|
||||||
|
|||||||
@@ -37,17 +37,17 @@ typedef struct mo_type_t {
|
|||||||
#define KNOWN_MO_TYPES 10
|
#define KNOWN_MO_TYPES 10
|
||||||
static const mo_type_t mo_types[KNOWN_MO_TYPES] = {
|
static const mo_type_t mo_types[KNOWN_MO_TYPES] = {
|
||||||
// 3.5" standard M.O. disks
|
// 3.5" standard M.O. disks
|
||||||
{248826, 512 },
|
{ 248826, 512 },
|
||||||
{ 446325, 512 },
|
{ 446325, 512 },
|
||||||
{ 1041500, 512 },
|
{ 1041500, 512 },
|
||||||
{ 310352, 2048},
|
{ 310352, 2048 },
|
||||||
{ 605846, 2048},
|
{ 605846, 2048 },
|
||||||
{ 1063146, 2048},
|
{ 1063146, 2048 },
|
||||||
// 5.25" M.O. disks
|
// 5.25" M.O. disks
|
||||||
{ 573624, 512 },
|
{ 573624, 512 },
|
||||||
{ 314568, 1024},
|
{ 314568, 1024 },
|
||||||
{ 904995, 512 },
|
{ 904995, 512 },
|
||||||
{ 637041, 1024},
|
{ 637041, 1024 },
|
||||||
};
|
};
|
||||||
|
|
||||||
typedef struct mo_drive_type_t {
|
typedef struct mo_drive_type_t {
|
||||||
@@ -60,7 +60,7 @@ typedef struct mo_drive_type_t {
|
|||||||
#define KNOWN_MO_DRIVE_TYPES 22
|
#define KNOWN_MO_DRIVE_TYPES 22
|
||||||
static const mo_drive_type_t mo_drive_types[KNOWN_MO_DRIVE_TYPES] = {
|
static const mo_drive_type_t mo_drive_types[KNOWN_MO_DRIVE_TYPES] = {
|
||||||
{"86BOX", "MAGNETO OPTICAL", "1.00", { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }},
|
{"86BOX", "MAGNETO OPTICAL", "1.00", { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }},
|
||||||
{ "FUJITSU", "M2512A", "1314", { 1, 1, 0, 0, 0, 0, 0, 0, 0 } },
|
{ "FUJITSU", "M2512A", "1314", { 1, 1, 0, 0, 0, 0, 0, 0, 0, 0 }},
|
||||||
{ "FUJITSU", "M2513-MCC3064SS", "1.00", { 1, 1, 1, 1, 0, 0, 0, 0, 0, 0 }},
|
{ "FUJITSU", "M2513-MCC3064SS", "1.00", { 1, 1, 1, 1, 0, 0, 0, 0, 0, 0 }},
|
||||||
{ "FUJITSU", "MCE3130SS", "0070", { 1, 1, 1, 1, 1, 0, 0, 0, 0, 0 }},
|
{ "FUJITSU", "MCE3130SS", "0070", { 1, 1, 1, 1, 1, 0, 0, 0, 0, 0 }},
|
||||||
{ "FUJITSU", "MCF3064SS", "0030", { 1, 1, 1, 1, 0, 0, 0, 0, 0, 0 }},
|
{ "FUJITSU", "MCF3064SS", "0030", { 1, 1, 1, 1, 0, 0, 0, 0, 0, 0 }},
|
||||||
@@ -165,8 +165,10 @@ typedef struct mo_t {
|
|||||||
|
|
||||||
extern mo_t *mo[MO_NUM];
|
extern mo_t *mo[MO_NUM];
|
||||||
extern mo_drive_t mo_drives[MO_NUM];
|
extern mo_drive_t mo_drives[MO_NUM];
|
||||||
|
#if 0
|
||||||
extern uint8_t atapi_mo_drives[8];
|
extern uint8_t atapi_mo_drives[8];
|
||||||
extern uint8_t scsi_mo_drives[16];
|
extern uint8_t scsi_mo_drives[16];
|
||||||
|
#endif
|
||||||
|
|
||||||
#define mo_sense_error dev->sense[0]
|
#define mo_sense_error dev->sense[0]
|
||||||
#define mo_sense_key dev->sense[2]
|
#define mo_sense_key dev->sense[2]
|
||||||
|
|||||||
Reference in New Issue
Block a user