diff --git a/Visual Studio Projects/Simh.sln b/Visual Studio Projects/Simh.sln
index e5745852..e48fc6bb 100644
--- a/Visual Studio Projects/Simh.sln
+++ b/Visual Studio Projects/Simh.sln
@@ -105,6 +105,10 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "VAX8600", "VAX8600.vcproj",
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SSEM", "SSEM.vcproj", "{48DA6BA8-23E1-4F0D-959C-48C8576494DA}"
EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "alpha", "alpha.vcproj", "{14C5D369-E4A1-4DA2-B23C-B49367874F7B}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sigma", "sigma.vcproj", "{7DDB6DF6-3837-4DE3-80D7-63181195021F}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
@@ -259,6 +263,14 @@ Global
{48DA6BA8-23E1-4F0D-959C-48C8576494DA}.Debug|Win32.Build.0 = Debug|Win32
{48DA6BA8-23E1-4F0D-959C-48C8576494DA}.Release|Win32.ActiveCfg = Release|Win32
{48DA6BA8-23E1-4F0D-959C-48C8576494DA}.Release|Win32.Build.0 = Release|Win32
+ {14C5D369-E4A1-4DA2-B23C-B49367874F7B}.Debug|Win32.ActiveCfg = Debug|Win32
+ {14C5D369-E4A1-4DA2-B23C-B49367874F7B}.Debug|Win32.Build.0 = Debug|Win32
+ {14C5D369-E4A1-4DA2-B23C-B49367874F7B}.Release|Win32.ActiveCfg = Release|Win32
+ {14C5D369-E4A1-4DA2-B23C-B49367874F7B}.Release|Win32.Build.0 = Release|Win32
+ {7DDB6DF6-3837-4DE3-80D7-63181195021F}.Debug|Win32.ActiveCfg = Debug|Win32
+ {7DDB6DF6-3837-4DE3-80D7-63181195021F}.Debug|Win32.Build.0 = Debug|Win32
+ {7DDB6DF6-3837-4DE3-80D7-63181195021F}.Release|Win32.ActiveCfg = Release|Win32
+ {7DDB6DF6-3837-4DE3-80D7-63181195021F}.Release|Win32.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/Visual Studio Projects/alpha.vcproj b/Visual Studio Projects/alpha.vcproj
new file mode 100644
index 00000000..8bde73ea
--- /dev/null
+++ b/Visual Studio Projects/alpha.vcproj
@@ -0,0 +1,338 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Visual Studio Projects/sigma.vcproj b/Visual Studio Projects/sigma.vcproj
new file mode 100644
index 00000000..33cb31c4
--- /dev/null
+++ b/Visual Studio Projects/sigma.vcproj
@@ -0,0 +1,354 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/alpha/alpha_cpu.c b/alpha/alpha_cpu.c
index e531bb24..6cc6544b 100644
--- a/alpha/alpha_cpu.c
+++ b/alpha/alpha_cpu.c
@@ -1785,7 +1785,7 @@ t_stat cpu_fprint_one_inst (FILE *st, uint32 ir, t_uint64 pc, t_uint64 ra, t_uin
uint32 op;
t_value sim_val;
-static const h_fmt[64] = {
+static const int h_fmt[64] = {
0, 0, 0, 0, 0, 0, 0, 0,
H_MRF, H_MRF, H_MRF, H_MRF, H_MRF, H_MRF, H_MRF, H_MRF,
H_IOP, H_IOP, H_IOP, H_IOP, H_FOP, H_FOP, H_FOP, H_FOP,
diff --git a/alpha/alpha_defs.h b/alpha/alpha_defs.h
index ef21f152..4ea2a7c8 100644
--- a/alpha/alpha_defs.h
+++ b/alpha/alpha_defs.h
@@ -35,7 +35,7 @@
#include
#if defined (__GNUC__)
-#define INLINE inline
+#define INLINE
#else
#define INLINE
#endif
diff --git a/sigma/sigma_mt.c b/sigma/sigma_mt.c
index 73ce4be2..bcd419ed 100644
--- a/sigma/sigma_mt.c
+++ b/sigma/sigma_mt.c
@@ -132,7 +132,7 @@ t_stat mtr_svc (UNIT *uptr);
t_stat mt_reset (DEVICE *dptr);
t_stat mt_attach (UNIT *uptr, char *cptr);
t_stat mt_detach (UNIT *uptr);
-t_stat mt_flush_buf (uptr);
+t_stat mt_flush_buf (UNIT *uptr);
t_stat mt_map_err (UNIT *uptr, t_stat r);
int32 mt_clr_int (uint32 dva);
void mt_set_rwi (uint32 un);
@@ -639,6 +639,7 @@ t_stat mt_detach (UNIT* uptr)
{
uint32 un = uptr - mt_dev.units;
+if (!(uptr->flags & UNIT_ATTABLE)) return SCPE_NOATT;
uptr->UST = 0;
sim_cancel (uptr + MT_REW);
return sim_tape_detach (uptr);