Separated main code from UI and PLATform support code, plus other generally small fixes here and there.

This commit is contained in:
waltje
2017-10-10 03:07:29 -04:00
parent e88899bb3c
commit bd89e66b7b
47 changed files with 924 additions and 872 deletions

View File

@@ -9,10 +9,11 @@
* Implementation of the IDE emulation for hard disks and ATAPI
* CD-ROM devices.
*
* Version: @(#)hdc_ide.c 1.0.10 2017/10/05
* Version: @(#)hdc_ide.c 1.0.11 2017/10/09
*
* Authors: Sarah Walker, <http://pcem-emulator.co.uk/>
* Miran Grca, <mgrca8@gmail.com>
*
* Copyright 2008-2017 Sarah Walker.
* Copyright 2016,2017 Miran Grca.
*/
@@ -30,7 +31,7 @@
#include "../device.h"
#include "../cdrom/cdrom.h"
#include "../scsi/scsi.h"
#include "../win/win.h"
#include "../ui.h"
#include "hdc.h"
#include "hdc_ide.h"
#include "hdd.h"
@@ -1297,7 +1298,7 @@ uint32_t ide_read_data(int ide_board, int length)
}
else
{
StatusBarUpdateIcon(SB_HDD | hdd[ide->hdd_num].bus, 0);
ui_sb_update_icon(SB_HDD | hdd[ide->hdd_num].bus, 0);
}
}
}
@@ -1645,7 +1646,7 @@ void callbackide(int ide_board)
ide_irq_raise(ide);
StatusBarUpdateIcon(SB_HDD | hdd[ide->hdd_num].bus, 1);
ui_sb_update_icon(SB_HDD | hdd[ide->hdd_num].bus, 1);
return;
case WIN_READ_DMA:
@@ -1692,12 +1693,12 @@ void callbackide(int ide_board)
ide_next_sector(ide);
ide->atastat = BUSY_STAT;
idecallback[ide_board]=6LL*IDE_TIME;
StatusBarUpdateIcon(SB_HDD | hdd[ide->hdd_num].bus, 1);
ui_sb_update_icon(SB_HDD | hdd[ide->hdd_num].bus, 1);
}
else
{
ide_irq_raise(ide);
StatusBarUpdateIcon(SB_HDD | hdd[ide->hdd_num].bus, 0);
ui_sb_update_icon(SB_HDD | hdd[ide->hdd_num].bus, 0);
}
}
}
@@ -1750,7 +1751,7 @@ void callbackide(int ide_board)
ide->blockcount = 0;
}
StatusBarUpdateIcon(SB_HDD | hdd[ide->hdd_num].bus, 1);
ui_sb_update_icon(SB_HDD | hdd[ide->hdd_num].bus, 1);
return;
case WIN_WRITE:
@@ -1771,12 +1772,12 @@ void callbackide(int ide_board)
ide->atastat = DRQ_STAT | READY_STAT | DSC_STAT;
ide->pos=0;
ide_next_sector(ide);
StatusBarUpdateIcon(SB_HDD | hdd[ide->hdd_num].bus, 1);
ui_sb_update_icon(SB_HDD | hdd[ide->hdd_num].bus, 1);
}
else
{
ide->atastat = READY_STAT | DSC_STAT;
StatusBarUpdateIcon(SB_HDD | hdd[ide->hdd_num].bus, 0);
ui_sb_update_icon(SB_HDD | hdd[ide->hdd_num].bus, 0);
}
return;
@@ -1810,12 +1811,12 @@ void callbackide(int ide_board)
ide_next_sector(ide);
ide->atastat = BUSY_STAT;
idecallback[ide_board]=6LL*IDE_TIME;
StatusBarUpdateIcon(SB_HDD | hdd[ide->hdd_num].bus, 1);
ui_sb_update_icon(SB_HDD | hdd[ide->hdd_num].bus, 1);
}
else
{
ide_irq_raise(ide);
StatusBarUpdateIcon(SB_HDD | hdd[ide->hdd_num].bus, 0);
ui_sb_update_icon(SB_HDD | hdd[ide->hdd_num].bus, 0);
}
}
}
@@ -1844,12 +1845,12 @@ void callbackide(int ide_board)
ide->atastat = DRQ_STAT | READY_STAT | DSC_STAT;
ide->pos=0;
ide_next_sector(ide);
StatusBarUpdateIcon(SB_HDD | hdd[ide->hdd_num].bus, 1);
ui_sb_update_icon(SB_HDD | hdd[ide->hdd_num].bus, 1);
}
else
{
ide->atastat = READY_STAT | DSC_STAT;
StatusBarUpdateIcon(SB_HDD | hdd[ide->hdd_num].bus, 0);
ui_sb_update_icon(SB_HDD | hdd[ide->hdd_num].bus, 0);
}
return;
@@ -1866,7 +1867,7 @@ void callbackide(int ide_board)
ide->pos=0;
ide->atastat = READY_STAT | DSC_STAT;
ide_irq_raise(ide);
StatusBarUpdateIcon(SB_HDD | hdd[ide->hdd_num].bus, 1);
ui_sb_update_icon(SB_HDD | hdd[ide->hdd_num].bus, 1);
return;
case WIN_FORMAT:
@@ -1883,7 +1884,7 @@ void callbackide(int ide_board)
ide->atastat = READY_STAT | DSC_STAT;
ide_irq_raise(ide);
/* StatusBarUpdateIcon(SB_HDD | hdd[ide->hdd_num].bus, 1); */
/* ui_sb_update_icon(SB_HDD | hdd[ide->hdd_num].bus, 1); */
return;
case WIN_DRIVE_DIAGNOSTICS: