Enable SA1123 and fix noncompliance
"Do not place regions within elements"
This commit is contained in:
parent
d9d6ed76f4
commit
b2a3477f52
|
@ -2217,7 +2217,6 @@ namespace BizHawk.Client.EmuHawk
|
|||
//Figure out how these work.
|
||||
//NOTE:
|
||||
//This is a Three Line Checker
|
||||
#region "The Three Line Adds"
|
||||
else if (RAMAddress.StartsWith("8022") == true)
|
||||
{
|
||||
// 802 Should be Changed to 020
|
||||
|
@ -2268,7 +2267,7 @@ namespace BizHawk.Client.EmuHawk
|
|||
blnUnhandled = true;
|
||||
return;
|
||||
}
|
||||
#endregion
|
||||
// (end three line)
|
||||
// 15) Special Codes
|
||||
// -Master Code-
|
||||
// address to patch AND $1FFFFFE Should be Changed to address to patch
|
||||
|
|
|
@ -154,89 +154,92 @@ namespace BizHawk.Emulation.Cores.Computers.AmstradCPC
|
|||
|
||||
public void SyncState(Serializer ser)
|
||||
{
|
||||
ser.BeginSection("NEC-UPD765");
|
||||
|
||||
#region FDD
|
||||
|
||||
ser.Sync(nameof(FDD_FLAG_MOTOR), ref FDD_FLAG_MOTOR);
|
||||
void SyncFDDState(Serializer ser1)
|
||||
{
|
||||
ser1.Sync(nameof(FDD_FLAG_MOTOR), ref FDD_FLAG_MOTOR);
|
||||
|
||||
for (int i = 0; i < 4; i++)
|
||||
{
|
||||
ser.BeginSection("HITDrive_" + i);
|
||||
DriveStates[i].SyncState(ser);
|
||||
ser.EndSection();
|
||||
ser1.BeginSection("HITDrive_" + i);
|
||||
DriveStates[i].SyncState(ser1);
|
||||
ser1.EndSection();
|
||||
}
|
||||
|
||||
ser.Sync(nameof(DiskDriveIndex), ref _diskDriveIndex);
|
||||
ser1.Sync(nameof(DiskDriveIndex), ref _diskDriveIndex);
|
||||
// set active drive
|
||||
DiskDriveIndex = _diskDriveIndex;
|
||||
}
|
||||
|
||||
#endregion
|
||||
void SyncRegisterState(Serializer ser1)
|
||||
{
|
||||
ser1.Sync("_RegMain", ref StatusMain);
|
||||
ser1.Sync("_Reg0", ref Status0);
|
||||
ser1.Sync("_Reg1", ref Status1);
|
||||
ser1.Sync("_Reg2", ref Status2);
|
||||
ser1.Sync("_Reg3", ref Status3);
|
||||
}
|
||||
|
||||
#region Registers
|
||||
void SyncControllerState(Serializer ser1)
|
||||
{
|
||||
ser1.Sync(nameof(DriveLight), ref DriveLight);
|
||||
ser1.SyncEnum(nameof(ActivePhase), ref ActivePhase);
|
||||
#if false
|
||||
ser1.SyncEnum(nameof(ActiveDirection), ref ActiveDirection);
|
||||
#endif
|
||||
ser1.SyncEnum(nameof(ActiveInterrupt), ref ActiveInterrupt);
|
||||
ser1.Sync(nameof(CommBuffer), ref CommBuffer, false);
|
||||
ser1.Sync(nameof(CommCounter), ref CommCounter);
|
||||
ser1.Sync(nameof(ResBuffer), ref ResBuffer, false);
|
||||
ser1.Sync(nameof(ExecBuffer), ref ExecBuffer, false);
|
||||
ser1.Sync(nameof(ExecCounter), ref ExecCounter);
|
||||
ser1.Sync(nameof(ExecLength), ref ExecLength);
|
||||
ser1.Sync(nameof(InterruptResultBuffer), ref InterruptResultBuffer, false);
|
||||
ser1.Sync(nameof(ResCounter), ref ResCounter);
|
||||
ser1.Sync(nameof(ResLength), ref ResLength);
|
||||
ser1.Sync(nameof(LastSectorDataWriteByte), ref LastSectorDataWriteByte);
|
||||
ser1.Sync(nameof(LastSectorDataReadByte), ref LastSectorDataReadByte);
|
||||
ser1.Sync(nameof(LastByteReceived), ref LastByteReceived);
|
||||
|
||||
ser.Sync("_RegMain", ref StatusMain);
|
||||
ser.Sync("_Reg0", ref Status0);
|
||||
ser.Sync("_Reg1", ref Status1);
|
||||
ser.Sync("_Reg2", ref Status2);
|
||||
ser.Sync("_Reg3", ref Status3);
|
||||
|
||||
#endregion
|
||||
|
||||
#region Controller state
|
||||
|
||||
ser.Sync(nameof(DriveLight), ref DriveLight);
|
||||
ser.SyncEnum(nameof(ActivePhase), ref ActivePhase);
|
||||
//ser.SyncEnum(nameof(ActiveDirection), ref ActiveDirection);
|
||||
ser.SyncEnum(nameof(ActiveInterrupt), ref ActiveInterrupt);
|
||||
ser.Sync(nameof(CommBuffer), ref CommBuffer, false);
|
||||
ser.Sync(nameof(CommCounter), ref CommCounter);
|
||||
ser.Sync(nameof(ResBuffer), ref ResBuffer, false);
|
||||
ser.Sync(nameof(ExecBuffer), ref ExecBuffer, false);
|
||||
ser.Sync(nameof(ExecCounter), ref ExecCounter);
|
||||
ser.Sync(nameof(ExecLength), ref ExecLength);
|
||||
ser.Sync(nameof(InterruptResultBuffer), ref InterruptResultBuffer, false);
|
||||
ser.Sync(nameof(ResCounter), ref ResCounter);
|
||||
ser.Sync(nameof(ResLength), ref ResLength);
|
||||
ser.Sync(nameof(LastSectorDataWriteByte), ref LastSectorDataWriteByte);
|
||||
ser.Sync(nameof(LastSectorDataReadByte), ref LastSectorDataReadByte);
|
||||
ser.Sync(nameof(LastByteReceived), ref LastByteReceived);
|
||||
|
||||
ser.Sync(nameof(_cmdIndex), ref _cmdIndex);
|
||||
ser1.Sync(nameof(_cmdIndex), ref _cmdIndex);
|
||||
// resync the ActiveCommand
|
||||
CMDIndex = _cmdIndex;
|
||||
|
||||
ActiveCommandParams.SyncState(ser);
|
||||
ActiveCommandParams.SyncState(ser1);
|
||||
|
||||
ser.Sync(nameof(IndexPulseCounter), ref IndexPulseCounter);
|
||||
//ser.SyncEnum(nameof(_activeStatus), ref _activeStatus);
|
||||
//ser.SyncEnum(nameof(_statusRaised), ref _statusRaised);
|
||||
ser1.Sync(nameof(IndexPulseCounter), ref IndexPulseCounter);
|
||||
#if false
|
||||
ser1.SyncEnum(nameof(_activeStatus), ref _activeStatus);
|
||||
ser1.SyncEnum(nameof(_statusRaised), ref _statusRaised);
|
||||
#endif
|
||||
|
||||
ser.Sync(nameof(CMD_FLAG_MT), ref CMD_FLAG_MT);
|
||||
ser.Sync(nameof(CMD_FLAG_MF), ref CMD_FLAG_MF);
|
||||
ser.Sync(nameof(CMD_FLAG_SK), ref CMD_FLAG_SK);
|
||||
ser.Sync(nameof(SRT), ref SRT);
|
||||
ser.Sync(nameof(HUT), ref HUT);
|
||||
ser.Sync(nameof(HLT), ref HLT);
|
||||
ser.Sync(nameof(ND), ref ND);
|
||||
ser.Sync(nameof(SRT_Counter), ref SRT_Counter);
|
||||
ser.Sync(nameof(HUT_Counter), ref HUT_Counter);
|
||||
ser.Sync(nameof(HLT_Counter), ref HLT_Counter);
|
||||
ser1.Sync(nameof(CMD_FLAG_MT), ref CMD_FLAG_MT);
|
||||
ser1.Sync(nameof(CMD_FLAG_MF), ref CMD_FLAG_MF);
|
||||
ser1.Sync(nameof(CMD_FLAG_SK), ref CMD_FLAG_SK);
|
||||
ser1.Sync(nameof(SRT), ref SRT);
|
||||
ser1.Sync(nameof(HUT), ref HUT);
|
||||
ser1.Sync(nameof(HLT), ref HLT);
|
||||
ser1.Sync(nameof(ND), ref ND);
|
||||
ser1.Sync(nameof(SRT_Counter), ref SRT_Counter);
|
||||
ser1.Sync(nameof(HUT_Counter), ref HUT_Counter);
|
||||
ser1.Sync(nameof(HLT_Counter), ref HLT_Counter);
|
||||
|
||||
ser.Sync(nameof(SectorDelayCounter), ref SectorDelayCounter);
|
||||
ser.Sync(nameof(SectorID), ref SectorID);
|
||||
ser1.Sync(nameof(SectorDelayCounter), ref SectorDelayCounter);
|
||||
ser1.Sync(nameof(SectorID), ref SectorID);
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region Timing
|
||||
|
||||
ser.Sync(nameof(LastCPUCycle), ref LastCPUCycle);
|
||||
ser.Sync(nameof(StatusDelay), ref StatusDelay);
|
||||
ser.Sync(nameof(TickCounter), ref TickCounter);
|
||||
ser.Sync(nameof(DriveCycleCounter), ref DriveCycleCounter);
|
||||
|
||||
#endregion
|
||||
void SyncTimingState(Serializer ser1)
|
||||
{
|
||||
ser1.Sync(nameof(LastCPUCycle), ref LastCPUCycle);
|
||||
ser1.Sync(nameof(StatusDelay), ref StatusDelay);
|
||||
ser1.Sync(nameof(TickCounter), ref TickCounter);
|
||||
ser1.Sync(nameof(DriveCycleCounter), ref DriveCycleCounter);
|
||||
}
|
||||
|
||||
ser.BeginSection("NEC-UPD765");
|
||||
SyncFDDState(ser);
|
||||
SyncRegisterState(ser);
|
||||
SyncControllerState(ser);
|
||||
SyncTimingState(ser);
|
||||
ser.EndSection();
|
||||
}
|
||||
|
||||
|
|
|
@ -309,27 +309,23 @@ namespace BizHawk.Emulation.Cores.Computers.AmstradCPC
|
|||
ProcessBlockID5A(data);
|
||||
break;
|
||||
|
||||
#region Depreciated Blocks
|
||||
|
||||
// ID 16 - C64 ROM Type Data Block
|
||||
// ID 16 - (deprecated) C64 ROM Type Data Block
|
||||
case 0x16:
|
||||
ProcessBlockID16(data);
|
||||
break;
|
||||
// ID 17 - C64 Turbo Tape Data Block
|
||||
// ID 17 - (deprecated) C64 Turbo Tape Data Block
|
||||
case 0x17:
|
||||
ProcessBlockID17(data);
|
||||
break;
|
||||
// ID 34 - Emulation info
|
||||
// ID 34 - (deprecated) Emulation info
|
||||
case 0x34:
|
||||
ProcessBlockID34(data);
|
||||
break;
|
||||
// ID 40 - Snapshot block
|
||||
// ID 40 - (deprecated) Snapshot block
|
||||
case 0x40:
|
||||
ProcessBlockID40(data);
|
||||
break;
|
||||
|
||||
#endregion
|
||||
|
||||
default:
|
||||
ProcessUnidentifiedBlock(data);
|
||||
break;
|
||||
|
|
|
@ -36,17 +36,8 @@
|
|||
|
||||
private void Render()
|
||||
{
|
||||
if (_rasterX == _hblankEndCheckXRaster)
|
||||
_hblank = false;
|
||||
if (_rasterX == _hblankStartCheckXRaster)
|
||||
_hblank = true;
|
||||
|
||||
_renderEnabled = !_hblank && !_vblank;
|
||||
_pixelCounter = 4;
|
||||
while (--_pixelCounter >= 0)
|
||||
void PreRenderBorder()
|
||||
{
|
||||
#region PRE-RENDER BORDER
|
||||
|
||||
// check left border
|
||||
if (_borderCheckLEnable && (_rasterX == _borderL))
|
||||
{
|
||||
|
@ -61,8 +52,25 @@
|
|||
// check right border
|
||||
if (_borderCheckREnable && (_rasterX == _borderR))
|
||||
_borderOnMain = true;
|
||||
}
|
||||
|
||||
#endregion
|
||||
void PostRenderBorder()
|
||||
{
|
||||
// border doesn't work with the background buffer
|
||||
_borderPixel = _pixBorderBuffer[_pixBufferBorderIndex];
|
||||
_pixBorderBuffer[_pixBufferBorderIndex] = _borderColor;
|
||||
}
|
||||
|
||||
if (_rasterX == _hblankEndCheckXRaster)
|
||||
_hblank = false;
|
||||
if (_rasterX == _hblankStartCheckXRaster)
|
||||
_hblank = true;
|
||||
|
||||
_renderEnabled = !_hblank && !_vblank;
|
||||
_pixelCounter = 4;
|
||||
while (--_pixelCounter >= 0)
|
||||
{
|
||||
PreRenderBorder();
|
||||
|
||||
// render graphics
|
||||
if ((_srColorEnable & SrMask1) != 0)
|
||||
|
@ -190,12 +198,7 @@
|
|||
}
|
||||
}
|
||||
|
||||
#region POST-RENDER BORDER
|
||||
|
||||
// border doesn't work with the background buffer
|
||||
_borderPixel = _pixBorderBuffer[_pixBufferBorderIndex];
|
||||
_pixBorderBuffer[_pixBufferBorderIndex] = _borderColor;
|
||||
#endregion
|
||||
PostRenderBorder();
|
||||
|
||||
// plot pixel if within viewing area
|
||||
if (_renderEnabled)
|
||||
|
|
|
@ -154,89 +154,92 @@ namespace BizHawk.Emulation.Cores.Computers.SinclairSpectrum
|
|||
|
||||
public void SyncState(Serializer ser)
|
||||
{
|
||||
ser.BeginSection("NEC-UPD765");
|
||||
|
||||
#region FDD
|
||||
|
||||
ser.Sync(nameof(FDD_FLAG_MOTOR), ref FDD_FLAG_MOTOR);
|
||||
void SyncFDDState(Serializer ser1)
|
||||
{
|
||||
ser1.Sync(nameof(FDD_FLAG_MOTOR), ref FDD_FLAG_MOTOR);
|
||||
|
||||
for (int i = 0; i < 4; i++)
|
||||
{
|
||||
ser.BeginSection("HITDrive_" + i);
|
||||
DriveStates[i].SyncState(ser);
|
||||
ser.EndSection();
|
||||
ser1.BeginSection("HITDrive_" + i);
|
||||
DriveStates[i].SyncState(ser1);
|
||||
ser1.EndSection();
|
||||
}
|
||||
|
||||
ser.Sync(nameof(DiskDriveIndex), ref _diskDriveIndex);
|
||||
ser1.Sync(nameof(DiskDriveIndex), ref _diskDriveIndex);
|
||||
// set active drive
|
||||
DiskDriveIndex = _diskDriveIndex;
|
||||
}
|
||||
|
||||
#endregion
|
||||
void SyncRegisterState(Serializer ser1)
|
||||
{
|
||||
ser1.Sync("_RegMain", ref StatusMain);
|
||||
ser1.Sync("_Reg0", ref Status0);
|
||||
ser1.Sync("_Reg1", ref Status1);
|
||||
ser1.Sync("_Reg2", ref Status2);
|
||||
ser1.Sync("_Reg3", ref Status3);
|
||||
}
|
||||
|
||||
#region Registers
|
||||
void SyncControllerState(Serializer ser1)
|
||||
{
|
||||
ser1.Sync(nameof(DriveLight), ref DriveLight);
|
||||
ser1.SyncEnum(nameof(ActivePhase), ref ActivePhase);
|
||||
#if false
|
||||
ser1.SyncEnum(nameof(ActiveDirection), ref ActiveDirection);
|
||||
#endif
|
||||
ser1.SyncEnum(nameof(ActiveInterrupt), ref ActiveInterrupt);
|
||||
ser1.Sync(nameof(CommBuffer), ref CommBuffer, false);
|
||||
ser1.Sync(nameof(CommCounter), ref CommCounter);
|
||||
ser1.Sync(nameof(ResBuffer), ref ResBuffer, false);
|
||||
ser1.Sync(nameof(ExecBuffer), ref ExecBuffer, false);
|
||||
ser1.Sync(nameof(ExecCounter), ref ExecCounter);
|
||||
ser1.Sync(nameof(ExecLength), ref ExecLength);
|
||||
ser1.Sync(nameof(InterruptResultBuffer), ref InterruptResultBuffer, false);
|
||||
ser1.Sync(nameof(ResCounter), ref ResCounter);
|
||||
ser1.Sync(nameof(ResLength), ref ResLength);
|
||||
ser1.Sync(nameof(LastSectorDataWriteByte), ref LastSectorDataWriteByte);
|
||||
ser1.Sync(nameof(LastSectorDataReadByte), ref LastSectorDataReadByte);
|
||||
ser1.Sync(nameof(LastByteReceived), ref LastByteReceived);
|
||||
|
||||
ser.Sync("_RegMain", ref StatusMain);
|
||||
ser.Sync("_Reg0", ref Status0);
|
||||
ser.Sync("_Reg1", ref Status1);
|
||||
ser.Sync("_Reg2", ref Status2);
|
||||
ser.Sync("_Reg3", ref Status3);
|
||||
|
||||
#endregion
|
||||
|
||||
#region Controller state
|
||||
|
||||
ser.Sync(nameof(DriveLight), ref DriveLight);
|
||||
ser.SyncEnum(nameof(ActivePhase), ref ActivePhase);
|
||||
//ser.SyncEnum(nameof(ActiveDirection), ref ActiveDirection);
|
||||
ser.SyncEnum(nameof(ActiveInterrupt), ref ActiveInterrupt);
|
||||
ser.Sync(nameof(CommBuffer), ref CommBuffer, false);
|
||||
ser.Sync(nameof(CommCounter), ref CommCounter);
|
||||
ser.Sync(nameof(ResBuffer), ref ResBuffer, false);
|
||||
ser.Sync(nameof(ExecBuffer), ref ExecBuffer, false);
|
||||
ser.Sync(nameof(ExecCounter), ref ExecCounter);
|
||||
ser.Sync(nameof(ExecLength), ref ExecLength);
|
||||
ser.Sync(nameof(InterruptResultBuffer), ref InterruptResultBuffer, false);
|
||||
ser.Sync(nameof(ResCounter), ref ResCounter);
|
||||
ser.Sync(nameof(ResLength), ref ResLength);
|
||||
ser.Sync(nameof(LastSectorDataWriteByte), ref LastSectorDataWriteByte);
|
||||
ser.Sync(nameof(LastSectorDataReadByte), ref LastSectorDataReadByte);
|
||||
ser.Sync(nameof(LastByteReceived), ref LastByteReceived);
|
||||
|
||||
ser.Sync(nameof(_cmdIndex), ref _cmdIndex);
|
||||
ser1.Sync(nameof(_cmdIndex), ref _cmdIndex);
|
||||
// resync the ActiveCommand
|
||||
CMDIndex = _cmdIndex;
|
||||
|
||||
ActiveCommandParams.SyncState(ser);
|
||||
ActiveCommandParams.SyncState(ser1);
|
||||
|
||||
ser.Sync(nameof(IndexPulseCounter), ref IndexPulseCounter);
|
||||
//ser.SyncEnum(nameof(_activeStatus), ref _activeStatus);
|
||||
//ser.SyncEnum(nameof(_statusRaised), ref _statusRaised);
|
||||
ser1.Sync(nameof(IndexPulseCounter), ref IndexPulseCounter);
|
||||
#if false
|
||||
ser1.SyncEnum(nameof(_activeStatus), ref _activeStatus);
|
||||
ser1.SyncEnum(nameof(_statusRaised), ref _statusRaised);
|
||||
#endif
|
||||
|
||||
ser.Sync(nameof(CMD_FLAG_MT), ref CMD_FLAG_MT);
|
||||
ser.Sync(nameof(CMD_FLAG_MF), ref CMD_FLAG_MF);
|
||||
ser.Sync(nameof(CMD_FLAG_SK), ref CMD_FLAG_SK);
|
||||
ser.Sync(nameof(SRT), ref SRT);
|
||||
ser.Sync(nameof(HUT), ref HUT);
|
||||
ser.Sync(nameof(HLT), ref HLT);
|
||||
ser.Sync(nameof(ND), ref ND);
|
||||
ser.Sync(nameof(SRT_Counter), ref SRT_Counter);
|
||||
ser.Sync(nameof(HUT_Counter), ref HUT_Counter);
|
||||
ser.Sync(nameof(HLT_Counter), ref HLT_Counter);
|
||||
ser1.Sync(nameof(CMD_FLAG_MT), ref CMD_FLAG_MT);
|
||||
ser1.Sync(nameof(CMD_FLAG_MF), ref CMD_FLAG_MF);
|
||||
ser1.Sync(nameof(CMD_FLAG_SK), ref CMD_FLAG_SK);
|
||||
ser1.Sync(nameof(SRT), ref SRT);
|
||||
ser1.Sync(nameof(HUT), ref HUT);
|
||||
ser1.Sync(nameof(HLT), ref HLT);
|
||||
ser1.Sync(nameof(ND), ref ND);
|
||||
ser1.Sync(nameof(SRT_Counter), ref SRT_Counter);
|
||||
ser1.Sync(nameof(HUT_Counter), ref HUT_Counter);
|
||||
ser1.Sync(nameof(HLT_Counter), ref HLT_Counter);
|
||||
|
||||
ser.Sync(nameof(SectorDelayCounter), ref SectorDelayCounter);
|
||||
ser.Sync(nameof(SectorID), ref SectorID);
|
||||
ser1.Sync(nameof(SectorDelayCounter), ref SectorDelayCounter);
|
||||
ser1.Sync(nameof(SectorID), ref SectorID);
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region Timing
|
||||
|
||||
ser.Sync(nameof(LastCPUCycle), ref LastCPUCycle);
|
||||
ser.Sync(nameof(StatusDelay), ref StatusDelay);
|
||||
ser.Sync(nameof(TickCounter), ref TickCounter);
|
||||
ser.Sync(nameof(DriveCycleCounter), ref DriveCycleCounter);
|
||||
|
||||
#endregion
|
||||
void SyncTimingState(Serializer ser1)
|
||||
{
|
||||
ser1.Sync(nameof(LastCPUCycle), ref LastCPUCycle);
|
||||
ser1.Sync(nameof(StatusDelay), ref StatusDelay);
|
||||
ser1.Sync(nameof(TickCounter), ref TickCounter);
|
||||
ser1.Sync(nameof(DriveCycleCounter), ref DriveCycleCounter);
|
||||
}
|
||||
|
||||
ser.BeginSection("NEC-UPD765");
|
||||
SyncFDDState(ser);
|
||||
SyncRegisterState(ser);
|
||||
SyncControllerState(ser);
|
||||
SyncTimingState(ser);
|
||||
ser.EndSection();
|
||||
}
|
||||
|
||||
|
|
|
@ -251,27 +251,23 @@ namespace BizHawk.Emulation.Cores.Computers.SinclairSpectrum
|
|||
ProcessBlockID5A(data);
|
||||
break;
|
||||
|
||||
#region Depreciated Blocks
|
||||
|
||||
// ID 16 - C64 ROM Type Data Block
|
||||
// ID 16 - (deprecated) C64 ROM Type Data Block
|
||||
case 0x16:
|
||||
ProcessBlockID16(data);
|
||||
break;
|
||||
// ID 17 - C64 Turbo Tape Data Block
|
||||
// ID 17 - (deprecated) C64 Turbo Tape Data Block
|
||||
case 0x17:
|
||||
ProcessBlockID17(data);
|
||||
break;
|
||||
// ID 34 - Emulation info
|
||||
// ID 34 - (deprecated) Emulation info
|
||||
case 0x34:
|
||||
ProcessBlockID34(data);
|
||||
break;
|
||||
// ID 40 - Snapshot block
|
||||
// ID 40 - (deprecated) Snapshot block
|
||||
case 0x40:
|
||||
ProcessBlockID40(data);
|
||||
break;
|
||||
|
||||
#endregion
|
||||
|
||||
default:
|
||||
ProcessUnidentifiedBlock(data);
|
||||
break;
|
||||
|
|
|
@ -113,9 +113,6 @@
|
|||
<!-- Use string.Empty for empty strings -->
|
||||
<Rule Id="SA1122" Action="Hidden" />
|
||||
|
||||
<!-- Do not place regions within elements -->
|
||||
<Rule Id="SA1123" Action="Hidden" />
|
||||
|
||||
<!-- Do not use regions -->
|
||||
<Rule Id="SA1124" Action="Hidden" />
|
||||
|
||||
|
|
Loading…
Reference in New Issue