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

@@ -12,10 +12,11 @@
* based design. Most cards were WD1003-WA2 or -WAH, where the
* -WA2 cards had a floppy controller as well (to save space.)
*
* Version: @(#)hdd_mfm_at.c 1.0.5 2017/10/05
* Version: @(#)hdd_mfm_at.c 1.0.6 2017/10/09
*
* Authors: Sarah Walker, <http://pcem-emulator.co.uk/>
* Fred N. van Kempen, <decwiz@yahoo.com>
*
* Copyright 2008-2017 Sarah Walker.
* Copyright 2017 Fred N. van Kempen.
*/
@@ -29,7 +30,7 @@
#include "../io.h"
#include "../pic.h"
#include "../timer.h"
#include "../win/win.h"
#include "../ui.h"
#include "hdc.h"
#include "hdd.h"
@@ -462,7 +463,7 @@ mfm_readw(uint16_t port, void *priv)
mfm->callback = 6LL*MFM_TIME;
timer_update_outstanding();
} else {
StatusBarUpdateIcon(SB_HDD|HDD_BUS_MFM, 0);
ui_sb_update_icon(SB_HDD|HDD_BUS_MFM, 0);
}
}
}
@@ -562,7 +563,7 @@ do_callback(void *priv)
mfm->reset = 0;
StatusBarUpdateIcon(SB_HDD|HDD_BUS_MFM, 0);
ui_sb_update_icon(SB_HDD|HDD_BUS_MFM, 0);
return;
}
@@ -596,7 +597,7 @@ do_callback(void *priv)
mfm->pos = 0;
mfm->status = STAT_DRQ|STAT_READY|STAT_DSC;
irq_raise(mfm);
StatusBarUpdateIcon(SB_HDD|HDD_BUS_MFM, 1);
ui_sb_update_icon(SB_HDD|HDD_BUS_MFM, 1);
break;
case CMD_WRITE:
@@ -621,9 +622,9 @@ do_callback(void *priv)
mfm->status |= STAT_DRQ;
mfm->pos = 0;
next_sector(mfm);
StatusBarUpdateIcon(SB_HDD|HDD_BUS_MFM, 1);
ui_sb_update_icon(SB_HDD|HDD_BUS_MFM, 1);
} else {
StatusBarUpdateIcon(SB_HDD|HDD_BUS_MFM, 0);
ui_sb_update_icon(SB_HDD|HDD_BUS_MFM, 0);
}
irq_raise(mfm);
break;
@@ -637,7 +638,7 @@ do_callback(void *priv)
mfm->pos = 0;
mfm->status = STAT_READY|STAT_DSC;
irq_raise(mfm);
StatusBarUpdateIcon(SB_HDD|HDD_BUS_MFM, 1);
ui_sb_update_icon(SB_HDD|HDD_BUS_MFM, 1);
break;
case CMD_FORMAT:
@@ -657,7 +658,7 @@ do_callback(void *priv)
mfm->status = STAT_READY|STAT_DSC;
irq_raise(mfm);
StatusBarUpdateIcon(SB_HDD|HDD_BUS_MFM, 1);
ui_sb_update_icon(SB_HDD|HDD_BUS_MFM, 1);
break;
case CMD_DIAGNOSE:
@@ -734,7 +735,7 @@ mfm_init(device_t *info)
timer_add(do_callback, &mfm->callback, &mfm->callback, mfm);
StatusBarUpdateIcon(SB_HDD|HDD_BUS_MFM, 0);
ui_sb_update_icon(SB_HDD|HDD_BUS_MFM, 0);
return(mfm);
}
@@ -754,13 +755,14 @@ mfm_close(void *priv)
free(mfm);
StatusBarUpdateIcon(SB_HDD|HDD_BUS_MFM, 0);
ui_sb_update_icon(SB_HDD|HDD_BUS_MFM, 0);
}
device_t mfm_at_wd1003_device = {
"WD1003 AT MFM/RLL Controller",
DEVICE_ISA | DEVICE_AT, 0,
DEVICE_ISA | DEVICE_AT,
0,
mfm_init, mfm_close, NULL,
NULL, NULL, NULL, NULL, NULL
};