938 lines
25 KiB
C#
938 lines
25 KiB
C#
using System;
|
|
using System.Diagnostics;
|
|
using UnityEngine;
|
|
|
|
namespace Comio.BD15070_4
|
|
{
|
|
// Token: 0x02000519 RID: 1305
|
|
public class BoardCtrl15070_4 : BoardCtrlBase
|
|
{
|
|
// Token: 0x060029C4 RID: 10692 RVA: 0x00122E71 File Offset: 0x00122071
|
|
public BoardCtrl15070_4(Board15070_4.InitParam initParam)
|
|
: base(initParam.BoardNodeId)
|
|
{
|
|
this._construct(initParam);
|
|
}
|
|
|
|
// Token: 0x060029C5 RID: 10693 RVA: 0x00122E88 File Offset: 0x00122088
|
|
public bool IsError()
|
|
{
|
|
object cs = this.Cs;
|
|
bool flag2;
|
|
lock (cs)
|
|
{
|
|
flag2 = this._isError();
|
|
}
|
|
return flag2;
|
|
}
|
|
|
|
// Token: 0x060029C6 RID: 10694 RVA: 0x00122ECC File Offset: 0x001220CC
|
|
public void ClearError()
|
|
{
|
|
object cs = this.Cs;
|
|
lock (cs)
|
|
{
|
|
this._errorNo = ErrorNo.Begin;
|
|
base.ClearErrorRegisteredCommand();
|
|
}
|
|
}
|
|
|
|
// Token: 0x060029C7 RID: 10695 RVA: 0x00122F14 File Offset: 0x00122114
|
|
public ErrorNo GetErrorNo()
|
|
{
|
|
object cs = this.Cs;
|
|
ErrorNo errorNo;
|
|
lock (cs)
|
|
{
|
|
errorNo = this._errorNo;
|
|
}
|
|
return errorNo;
|
|
}
|
|
|
|
// Token: 0x060029C8 RID: 10696 RVA: 0x00122F58 File Offset: 0x00122158
|
|
public override bool CheckFirmVersion(byte boardVersion, byte fileVersion)
|
|
{
|
|
return new FirmInfo
|
|
{
|
|
Revision = boardVersion
|
|
}.CheckFirmVersionSame(fileVersion);
|
|
}
|
|
|
|
// Token: 0x060029C9 RID: 10697 RVA: 0x00122F6C File Offset: 0x0012216C
|
|
public override bool ReqHalt()
|
|
{
|
|
object cs = this.Cs;
|
|
bool flag2;
|
|
lock (cs)
|
|
{
|
|
flag2 = this._reqHalt();
|
|
}
|
|
return flag2;
|
|
}
|
|
|
|
// Token: 0x060029CA RID: 10698 RVA: 0x00122FB0 File Offset: 0x001221B0
|
|
public override bool IsHalted()
|
|
{
|
|
object cs = this.Cs;
|
|
bool flag2;
|
|
lock (cs)
|
|
{
|
|
flag2 = this._isHalted();
|
|
}
|
|
return flag2;
|
|
}
|
|
|
|
// Token: 0x060029CB RID: 10699 RVA: 0x00122FF4 File Offset: 0x001221F4
|
|
public override void Reset()
|
|
{
|
|
object cs = this.Cs;
|
|
lock (cs)
|
|
{
|
|
this._reset();
|
|
}
|
|
}
|
|
|
|
// Token: 0x060029CC RID: 10700 RVA: 0x00123034 File Offset: 0x00122234
|
|
public void SetLedData(byte ledPos, LedData data)
|
|
{
|
|
object cs = this.Cs;
|
|
lock (cs)
|
|
{
|
|
this._setLedData(ledPos, data);
|
|
}
|
|
}
|
|
|
|
// Token: 0x060029CD RID: 10701 RVA: 0x00123078 File Offset: 0x00122278
|
|
public void SetLedDataMulti(Color32 data, byte speed)
|
|
{
|
|
object cs = this.Cs;
|
|
lock (cs)
|
|
{
|
|
this._setLedDataMulti(data, speed);
|
|
}
|
|
}
|
|
|
|
// Token: 0x060029CE RID: 10702 RVA: 0x001230BC File Offset: 0x001222BC
|
|
public void SetLedDataMultiFade(Color32 data, byte speed)
|
|
{
|
|
object cs = this.Cs;
|
|
lock (cs)
|
|
{
|
|
this._setLedDataMultiFade(data, speed);
|
|
}
|
|
}
|
|
|
|
// Token: 0x060029CF RID: 10703 RVA: 0x00123100 File Offset: 0x00122300
|
|
public void SetLedDataMultiFet(Color32 data)
|
|
{
|
|
object cs = this.Cs;
|
|
lock (cs)
|
|
{
|
|
this._setLedDataMultiFet(data);
|
|
}
|
|
}
|
|
|
|
// Token: 0x060029D0 RID: 10704 RVA: 0x00123144 File Offset: 0x00122344
|
|
public void SetLedDataUpdate()
|
|
{
|
|
object cs = this.Cs;
|
|
lock (cs)
|
|
{
|
|
this._setLedDataUpdate();
|
|
}
|
|
}
|
|
|
|
// Token: 0x060029D1 RID: 10705 RVA: 0x00123184 File Offset: 0x00122384
|
|
public void SetLedDataAllOff()
|
|
{
|
|
object cs = this.Cs;
|
|
lock (cs)
|
|
{
|
|
this._setLedDataAllOff();
|
|
}
|
|
}
|
|
|
|
// Token: 0x060029D2 RID: 10706 RVA: 0x001231C4 File Offset: 0x001223C4
|
|
public bool IsWithoutResponse()
|
|
{
|
|
return this._isWithoutResponse();
|
|
}
|
|
|
|
// Token: 0x060029D3 RID: 10707 RVA: 0x001231CC File Offset: 0x001223CC
|
|
public ushort GetLedInterval()
|
|
{
|
|
return this._getLedInterval();
|
|
}
|
|
|
|
// Token: 0x060029D4 RID: 10708 RVA: 0x001231D4 File Offset: 0x001223D4
|
|
public static BoardNo GetDefBoardNo()
|
|
{
|
|
return BoardCtrl15070_4.BoardNo;
|
|
}
|
|
|
|
// Token: 0x060029D5 RID: 10709 RVA: 0x001231DC File Offset: 0x001223DC
|
|
public override void Initialize()
|
|
{
|
|
object cs = this.Cs;
|
|
lock (cs)
|
|
{
|
|
this._initialize();
|
|
}
|
|
}
|
|
|
|
// Token: 0x060029D6 RID: 10710 RVA: 0x0012321C File Offset: 0x0012241C
|
|
public override void Terminate()
|
|
{
|
|
object cs = this.Cs;
|
|
lock (cs)
|
|
{
|
|
}
|
|
}
|
|
|
|
// Token: 0x060029D7 RID: 10711 RVA: 0x00123258 File Offset: 0x00122458
|
|
public override void Execute()
|
|
{
|
|
object cs = this.Cs;
|
|
lock (cs)
|
|
{
|
|
this._execute();
|
|
}
|
|
}
|
|
|
|
// Token: 0x060029D8 RID: 10712 RVA: 0x00123298 File Offset: 0x00122498
|
|
public override void ExecThread()
|
|
{
|
|
object cs = this.Cs;
|
|
lock (cs)
|
|
{
|
|
this._execThread();
|
|
}
|
|
}
|
|
|
|
// Token: 0x060029D9 RID: 10713 RVA: 0x001232D8 File Offset: 0x001224D8
|
|
public override void NotifyBaseError(BoardCtrlBase.BaseErrorNo baseErrorNo)
|
|
{
|
|
object cs = this.Cs;
|
|
lock (cs)
|
|
{
|
|
switch (baseErrorNo)
|
|
{
|
|
case BoardCtrlBase.BaseErrorNo.BaseErrorNoTimeout:
|
|
this._setError(ErrorNo.Timeout);
|
|
break;
|
|
case BoardCtrlBase.BaseErrorNo.BaseErrorNoReportError:
|
|
this._setError(ErrorNo.ReportError);
|
|
break;
|
|
case BoardCtrlBase.BaseErrorNo.BaseErrorNoRecvError:
|
|
this._setError(ErrorNo.RecvError);
|
|
break;
|
|
case BoardCtrlBase.BaseErrorNo.BaseErrorNoComError:
|
|
this._setError(ErrorNo.Timeout);
|
|
break;
|
|
case BoardCtrlBase.BaseErrorNo.BaseErrorNoSumError:
|
|
this._setError(ErrorNo.SumError);
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
|
|
// Token: 0x060029DA RID: 10714 RVA: 0x0012335C File Offset: 0x0012255C
|
|
private void _construct(Board15070_4.InitParam initParam)
|
|
{
|
|
this._initParam = initParam;
|
|
this._mode = BoardCtrl15070_4.Mode.Init;
|
|
this._loop = false;
|
|
this._resetOn = false;
|
|
this._errorNo = ErrorNo.Begin;
|
|
this._getBoardStatusCommand = new GetBoardStatusCommand();
|
|
this._setTimeoutCommand = new SetTimeoutCommand();
|
|
this._getBoardInfoCommand = new GetBoardInfoCommand();
|
|
this._getProtocolVersionCommand = new GetProtocolVersionCommand();
|
|
this._resetCommand = new ResetCommand();
|
|
this._getEepRomCommand = new GetEEPRomCommand();
|
|
this._setEepRomCommand = new SetEEPRomCommand();
|
|
this._setDcCommand = new SetDcCommand();
|
|
this._setDcUpdateCommand = new SetDcUpdateCommand();
|
|
this._setLedGs8BitMultiCommand = new SetLedGs8BitMultiCommand();
|
|
this._setLedFetCommand = new SetLedFetCommand();
|
|
this._setLedGsUpdateCommand = new SetLedGsUpdateCommand();
|
|
this._ioCtrl = new IoCtrl(this);
|
|
this._modeTimer = new Stopwatch();
|
|
if (33 > this._initParam.LedInteval)
|
|
{
|
|
this._initParam.LedInteval = 33;
|
|
}
|
|
this._initWork();
|
|
base.InitAndRegisterCommand(this._getBoardInfoCommand);
|
|
base.InitAndRegisterCommand(this._getBoardStatusCommand);
|
|
base.InitAndRegisterCommand(this._getProtocolVersionCommand);
|
|
base.InitAndRegisterCommand(this._resetCommand);
|
|
base.InitAndRegisterCommand(this._setTimeoutCommand);
|
|
base.InitAndRegisterCommand(this._getEepRomCommand);
|
|
base.InitAndRegisterCommand(this._setEepRomCommand);
|
|
base.InitAndRegisterCommand(this._setDcCommand);
|
|
base.InitAndRegisterCommand(this._setDcUpdateCommand);
|
|
base.InitAndRegisterCommand(this._setLedGs8BitMultiCommand);
|
|
base.InitAndRegisterCommand(this._setLedFetCommand);
|
|
base.InitAndRegisterCommand(this._setLedGsUpdateCommand);
|
|
this._eepRomCheckAdress = BoardCtrl15070_4.EepRomAddress.Enable;
|
|
this._eepRom = new BoardCtrl15070_4.EepRom[8];
|
|
for (int i = 0; i < 8; i++)
|
|
{
|
|
this._eepRom[i] = new BoardCtrl15070_4.EepRom
|
|
{
|
|
Check = BoardCtrl15070_4.EepRomCheck.None,
|
|
ReadData = 0,
|
|
WriteData = 0,
|
|
WriteCount = 0
|
|
};
|
|
}
|
|
Gs8BitMulti gs8BitMulti = default(Gs8BitMulti);
|
|
gs8BitMulti.Start = 0;
|
|
gs8BitMulti.End = 10;
|
|
gs8BitMulti.Skip = 1;
|
|
gs8BitMulti.Color.r = 63;
|
|
gs8BitMulti.Color.g = 63;
|
|
gs8BitMulti.Color.b = 63;
|
|
gs8BitMulti.Color.a = byte.MaxValue;
|
|
this._dcParam = gs8BitMulti;
|
|
}
|
|
|
|
// Token: 0x060029DB RID: 10715 RVA: 0x0012359C File Offset: 0x0012279C
|
|
private void _initWork()
|
|
{
|
|
this._resetOn = false;
|
|
this._errorNo = ErrorNo.Begin;
|
|
}
|
|
|
|
// Token: 0x060029DC RID: 10716 RVA: 0x001235AC File Offset: 0x001227AC
|
|
private void _initialize()
|
|
{
|
|
this._initWork();
|
|
this._ioCtrl.Initialize();
|
|
this._loop = false;
|
|
this._mode = BoardCtrl15070_4.Mode.Init;
|
|
}
|
|
|
|
// Token: 0x060029DD RID: 10717 RVA: 0x001235CD File Offset: 0x001227CD
|
|
private bool _isError()
|
|
{
|
|
return this._errorNo > ErrorNo.Begin;
|
|
}
|
|
|
|
// Token: 0x060029DE RID: 10718 RVA: 0x001235D8 File Offset: 0x001227D8
|
|
private void _setError(ErrorNo no)
|
|
{
|
|
if (this._isHalted() || BoardCtrl15070_4.Mode.StartHalt == this._mode)
|
|
{
|
|
return;
|
|
}
|
|
if (!this._isError())
|
|
{
|
|
this._errorNo = no;
|
|
this._mode = BoardCtrl15070_4.Mode.Error;
|
|
}
|
|
}
|
|
|
|
// Token: 0x060029DF RID: 10719 RVA: 0x00123604 File Offset: 0x00122804
|
|
private bool _reqHalt()
|
|
{
|
|
if (this._isHalted())
|
|
{
|
|
return true;
|
|
}
|
|
if (this._mode != BoardCtrl15070_4.Mode.StartHalt)
|
|
{
|
|
this._mode = BoardCtrl15070_4.Mode.StartHalt;
|
|
return true;
|
|
}
|
|
return false;
|
|
}
|
|
|
|
// Token: 0x060029E0 RID: 10720 RVA: 0x00123625 File Offset: 0x00122825
|
|
private bool _isHalted()
|
|
{
|
|
return this._mode == BoardCtrl15070_4.Mode.Halt;
|
|
}
|
|
|
|
// Token: 0x060029E1 RID: 10721 RVA: 0x00123634 File Offset: 0x00122834
|
|
private void _reset()
|
|
{
|
|
if (!this._resetOn)
|
|
{
|
|
this._errorNo = ErrorNo.Begin;
|
|
base.ClearErrorRegisteredCommand();
|
|
if (this.IsHalted())
|
|
{
|
|
this._resetOn = true;
|
|
}
|
|
else if (this._mode != BoardCtrl15070_4.Mode.StartHalt)
|
|
{
|
|
this._resetOn = true;
|
|
this._mode = BoardCtrl15070_4.Mode.StartHalt;
|
|
}
|
|
if (this._resetOn)
|
|
{
|
|
this.InitBoard = false;
|
|
}
|
|
}
|
|
}
|
|
|
|
// Token: 0x060029E2 RID: 10722 RVA: 0x0012368F File Offset: 0x0012288F
|
|
private void _setLedData(byte ledPos, LedData data)
|
|
{
|
|
this._ioCtrl.SetLedData(ledPos, data);
|
|
}
|
|
|
|
// Token: 0x060029E3 RID: 10723 RVA: 0x0012369E File Offset: 0x0012289E
|
|
private void _setLedDataMulti(Color32 data, byte speed)
|
|
{
|
|
this._ioCtrl.SetLedDataMulti(data, speed);
|
|
}
|
|
|
|
// Token: 0x060029E4 RID: 10724 RVA: 0x001236AD File Offset: 0x001228AD
|
|
private void _setLedDataMultiFade(Color32 data, byte speed)
|
|
{
|
|
this._ioCtrl.SetLedDataMultiFade(data, speed);
|
|
}
|
|
|
|
// Token: 0x060029E5 RID: 10725 RVA: 0x001236BC File Offset: 0x001228BC
|
|
private void _setLedDataMultiFet(Color32 data)
|
|
{
|
|
this._ioCtrl.SetLedDataMultiFet(data);
|
|
}
|
|
|
|
// Token: 0x060029E6 RID: 10726 RVA: 0x001236CA File Offset: 0x001228CA
|
|
private void _setLedDataUpdate()
|
|
{
|
|
this._ioCtrl.SetUpdateGs();
|
|
}
|
|
|
|
// Token: 0x060029E7 RID: 10727 RVA: 0x001236D7 File Offset: 0x001228D7
|
|
private void _setLedDataAllOff()
|
|
{
|
|
this._ioCtrl.SetLedDataAllOff();
|
|
}
|
|
|
|
// Token: 0x060029E8 RID: 10728 RVA: 0x001236E4 File Offset: 0x001228E4
|
|
private bool _isWithoutResponse()
|
|
{
|
|
return this._initParam.WithoutResponse;
|
|
}
|
|
|
|
// Token: 0x060029E9 RID: 10729 RVA: 0x001236F1 File Offset: 0x001228F1
|
|
private ushort _getLedInterval()
|
|
{
|
|
return this._initParam.LedInteval;
|
|
}
|
|
|
|
// Token: 0x060029EA RID: 10730 RVA: 0x001236FE File Offset: 0x001228FE
|
|
private void _md_init()
|
|
{
|
|
this.Initialize();
|
|
base.InitBase();
|
|
this._mode = BoardCtrl15070_4.Mode.InitBoardInitReset;
|
|
}
|
|
|
|
// Token: 0x060029EB RID: 10731 RVA: 0x00123713 File Offset: 0x00122913
|
|
private void _md_initBoard_InitReset()
|
|
{
|
|
if (base.ExecCommand(this._resetCommand))
|
|
{
|
|
this._modeTimer.Reset();
|
|
this._modeTimer.Start();
|
|
this._mode = BoardCtrl15070_4.Mode.InitBoardGetBoardInfo;
|
|
this._resetCommand.Reset();
|
|
}
|
|
}
|
|
|
|
// Token: 0x060029EC RID: 10732 RVA: 0x0012374C File Offset: 0x0012294C
|
|
private void _md_initBoard_GetBoardInfo()
|
|
{
|
|
if (base.ExecCommand(this._getBoardInfoCommand))
|
|
{
|
|
this.BoardSpecInfo.BoardNo = this._getBoardInfoCommand.getBoardNo();
|
|
this.BoardSpecInfo.FirmInfo.Revision = this._getBoardInfoCommand.getFirmRevision();
|
|
if (!this.BoardSpecInfo.BoardNo.IsEqual(BoardCtrl15070_4.BoardNo))
|
|
{
|
|
this._setError(ErrorNo.Timeout);
|
|
return;
|
|
}
|
|
this.BoardSpecInfoRecv = true;
|
|
this._mode = BoardCtrl15070_4.Mode.InitBoardGetProtocolVersion;
|
|
}
|
|
}
|
|
|
|
// Token: 0x060029ED RID: 10733 RVA: 0x001237C8 File Offset: 0x001229C8
|
|
private void _md_initBoard_GetProtocolVersion()
|
|
{
|
|
if (base.ExecCommand(this._getProtocolVersionCommand))
|
|
{
|
|
this.BoardSpecInfo.FirmInfo.FirmAppli = this._getProtocolVersionCommand.isAppliMode();
|
|
this.BoardSpecInfo.FirmInfo.Major = this._getProtocolVersionCommand.getMajor();
|
|
this.BoardSpecInfo.FirmInfo.Minor = this._getProtocolVersionCommand.getMinor();
|
|
this._mode = BoardCtrl15070_4.Mode.InitBoardReset;
|
|
}
|
|
}
|
|
|
|
// Token: 0x060029EE RID: 10734 RVA: 0x0012383B File Offset: 0x00122A3B
|
|
private void _md_initBoard_SetTimeoutInfinite()
|
|
{
|
|
if (base.ExecCommand(this._setTimeoutCommand))
|
|
{
|
|
this._resetCommand.set();
|
|
this._mode = BoardCtrl15070_4.Mode.InitBoardReset;
|
|
}
|
|
}
|
|
|
|
// Token: 0x060029EF RID: 10735 RVA: 0x0012385D File Offset: 0x00122A5D
|
|
private void _md_initBoard_Reset()
|
|
{
|
|
if (base.ExecCommand(this._resetCommand))
|
|
{
|
|
this._modeTimer.Reset();
|
|
this._modeTimer.Start();
|
|
this._mode = BoardCtrl15070_4.Mode.InitBoardWaitReset;
|
|
}
|
|
}
|
|
|
|
// Token: 0x060029F0 RID: 10736 RVA: 0x0012388C File Offset: 0x00122A8C
|
|
private void _md_initBoard_WaitReset()
|
|
{
|
|
if (this._modeTimer.ElapsedMilliseconds >= 1000L)
|
|
{
|
|
this._mode = BoardCtrl15070_4.Mode.InitBoardGetEepRom;
|
|
this._eepRomCheckAdress = BoardCtrl15070_4.EepRomAddress.Enable;
|
|
for (int i = 0; i < 8; i++)
|
|
{
|
|
this._eepRom[i].Check = BoardCtrl15070_4.EepRomCheck.None;
|
|
this._eepRom[i].ReadData = 0;
|
|
this._eepRom[i].WriteData = 0;
|
|
this._eepRom[i].WriteCount = 0;
|
|
}
|
|
this._getEepRomCommand.SetEEPDataAdress((byte)this._eepRomCheckAdress);
|
|
}
|
|
}
|
|
|
|
// Token: 0x060029F1 RID: 10737 RVA: 0x00123924 File Offset: 0x00122B24
|
|
private void _md_initBoard_GetEEPRom()
|
|
{
|
|
if (base.ExecCommand(this._getEepRomCommand))
|
|
{
|
|
this._eepRom[(int)this._eepRomCheckAdress].ReadData = this._getEepRomCommand.GetEEPData();
|
|
if (this._eepRom[(int)this._eepRomCheckAdress].ReadData != this._eepRom[(int)this._eepRomCheckAdress].WriteData)
|
|
{
|
|
if (this._eepRom[(int)this._eepRomCheckAdress].WriteCount >= 3)
|
|
{
|
|
this._setError(ErrorNo.EepWriteError);
|
|
return;
|
|
}
|
|
this._eepRom[(int)this._eepRomCheckAdress].Check = BoardCtrl15070_4.EepRomCheck.Ng;
|
|
this._setEepRomCommand.Reset();
|
|
this._setEepRomCommand.SetEEPData((byte)this._eepRomCheckAdress, this._eepRom[(int)this._eepRomCheckAdress].WriteData);
|
|
this._mode = BoardCtrl15070_4.Mode.InitBoardSetEepRom;
|
|
return;
|
|
}
|
|
else
|
|
{
|
|
this._eepRom[(int)this._eepRomCheckAdress].Check = BoardCtrl15070_4.EepRomCheck.Ok;
|
|
this._eepRomCheckAdress++;
|
|
if (this._eepRomCheckAdress >= BoardCtrl15070_4.EepRomAddress.End)
|
|
{
|
|
this._mode = BoardCtrl15070_4.Mode.InitBoardSetDc;
|
|
this._setDcCommand.setDc(this._dcParam);
|
|
return;
|
|
}
|
|
this._getEepRomCommand.Reset();
|
|
this._getEepRomCommand.SetEEPDataAdress((byte)this._eepRomCheckAdress);
|
|
}
|
|
}
|
|
}
|
|
|
|
// Token: 0x060029F2 RID: 10738 RVA: 0x00123A6A File Offset: 0x00122C6A
|
|
private void _md_initBoard_SetEEPRom()
|
|
{
|
|
if (base.ExecCommand(this._setEepRomCommand))
|
|
{
|
|
this._mode = BoardCtrl15070_4.Mode.InitBoardGetEepRom;
|
|
BoardCtrl15070_4.EepRom[] eepRom = this._eepRom;
|
|
BoardCtrl15070_4.EepRomAddress eepRomCheckAdress = this._eepRomCheckAdress;
|
|
eepRom[(int)eepRomCheckAdress].WriteCount = eepRom[(int)eepRomCheckAdress].WriteCount + 1;
|
|
}
|
|
}
|
|
|
|
// Token: 0x060029F3 RID: 10739 RVA: 0x00123A9E File Offset: 0x00122C9E
|
|
private void _md_initBoard_SetDc()
|
|
{
|
|
if (base.ExecCommand(this._setDcCommand))
|
|
{
|
|
this._mode = BoardCtrl15070_4.Mode.InitBoardSetDcUpdate;
|
|
}
|
|
}
|
|
|
|
// Token: 0x060029F4 RID: 10740 RVA: 0x00123AB6 File Offset: 0x00122CB6
|
|
private void _md_initBoard_SetDcUpdate()
|
|
{
|
|
if (base.ExecCommand(this._setDcUpdateCommand))
|
|
{
|
|
this._setLedGs8BitMultiCommand.setAllOff();
|
|
this._mode = BoardCtrl15070_4.Mode.InitBoardSetGsOff;
|
|
}
|
|
}
|
|
|
|
// Token: 0x060029F5 RID: 10741 RVA: 0x00123AD9 File Offset: 0x00122CD9
|
|
private void _md_initBoard_SetGsOff()
|
|
{
|
|
if (base.ExecCommand(this._setLedGs8BitMultiCommand))
|
|
{
|
|
this._setLedFetCommand.setColorOff();
|
|
this._mode = BoardCtrl15070_4.Mode.InitBoardSetFetOff;
|
|
}
|
|
}
|
|
|
|
// Token: 0x060029F6 RID: 10742 RVA: 0x00123AFC File Offset: 0x00122CFC
|
|
private void _md_initBoard_SetFetOff()
|
|
{
|
|
if (base.ExecCommand(this._setLedFetCommand))
|
|
{
|
|
this._mode = BoardCtrl15070_4.Mode.InitBoardSetGsUpdate;
|
|
}
|
|
}
|
|
|
|
// Token: 0x060029F7 RID: 10743 RVA: 0x00123B14 File Offset: 0x00122D14
|
|
private void _md_initBoard_SetGsUpdate()
|
|
{
|
|
if (base.ExecCommand(this._setLedGsUpdateCommand))
|
|
{
|
|
this._mode = BoardCtrl15070_4.Mode.InitBoardGetBoardStatus;
|
|
}
|
|
}
|
|
|
|
// Token: 0x060029F8 RID: 10744 RVA: 0x00123B2B File Offset: 0x00122D2B
|
|
private void _md_initBoard_GetBoardStatus()
|
|
{
|
|
if (base.ExecCommand(this._getBoardStatusCommand))
|
|
{
|
|
this._setTimeoutCommand.setTimeout(this._initParam.Timeout);
|
|
this._mode = BoardCtrl15070_4.Mode.InitBoardSetTimeout;
|
|
}
|
|
}
|
|
|
|
// Token: 0x060029F9 RID: 10745 RVA: 0x00123B58 File Offset: 0x00122D58
|
|
private void _md_initBoard_SetTimeout()
|
|
{
|
|
this.InitBoard = true;
|
|
this._mode = BoardCtrl15070_4.Mode.Exec;
|
|
this._loop = true;
|
|
}
|
|
|
|
// Token: 0x060029FA RID: 10746 RVA: 0x00123B70 File Offset: 0x00122D70
|
|
private void _md_exec()
|
|
{
|
|
this._ioCtrl.Execute();
|
|
}
|
|
|
|
// Token: 0x060029FB RID: 10747 RVA: 0x00123B7D File Offset: 0x00122D7D
|
|
private void _md_error()
|
|
{
|
|
if (this._errorNo == ErrorNo.Begin)
|
|
{
|
|
this._mode = BoardCtrl15070_4.Mode.Init;
|
|
this._loop = true;
|
|
}
|
|
}
|
|
|
|
// Token: 0x060029FC RID: 10748 RVA: 0x00123B98 File Offset: 0x00122D98
|
|
private void _md_startHalt()
|
|
{
|
|
this._resetCommand.set();
|
|
if (base.ExecCommand(this._resetCommand) || this._resetCommand.GetComState() == ComState.Def.Timeout)
|
|
{
|
|
this._modeTimer.Reset();
|
|
this._modeTimer.Start();
|
|
this._mode = BoardCtrl15070_4.Mode.StartHaltWaitReset;
|
|
}
|
|
}
|
|
|
|
// Token: 0x060029FD RID: 10749 RVA: 0x00123BEF File Offset: 0x00122DEF
|
|
private void _md_startHalt_WaitReset()
|
|
{
|
|
if (this._modeTimer.ElapsedMilliseconds >= 1000L)
|
|
{
|
|
base.InitBase();
|
|
this._mode = BoardCtrl15070_4.Mode.Halt;
|
|
}
|
|
}
|
|
|
|
// Token: 0x060029FE RID: 10750 RVA: 0x00123C12 File Offset: 0x00122E12
|
|
private void _md_halt()
|
|
{
|
|
if (this._resetOn)
|
|
{
|
|
this._mode = BoardCtrl15070_4.Mode.Init;
|
|
this._resetOn = false;
|
|
this._loop = true;
|
|
}
|
|
}
|
|
|
|
// Token: 0x060029FF RID: 10751 RVA: 0x00003598 File Offset: 0x00002798
|
|
private void _execute()
|
|
{
|
|
}
|
|
|
|
// Token: 0x06002A00 RID: 10752 RVA: 0x00123C34 File Offset: 0x00122E34
|
|
private void _execThread()
|
|
{
|
|
do
|
|
{
|
|
this._loop = false;
|
|
switch (this._mode)
|
|
{
|
|
case BoardCtrl15070_4.Mode.Init:
|
|
this._md_init();
|
|
break;
|
|
case BoardCtrl15070_4.Mode.InitBoardInitReset:
|
|
this._md_initBoard_InitReset();
|
|
break;
|
|
case BoardCtrl15070_4.Mode.InitBoardGetBoardInfo:
|
|
this._md_initBoard_GetBoardInfo();
|
|
break;
|
|
case BoardCtrl15070_4.Mode.InitBoardGetProtocolVersion:
|
|
this._md_initBoard_GetProtocolVersion();
|
|
break;
|
|
case BoardCtrl15070_4.Mode.InitBoardSetTimeoutInfinite:
|
|
this._md_initBoard_SetTimeoutInfinite();
|
|
break;
|
|
case BoardCtrl15070_4.Mode.InitBoardReset:
|
|
this._md_initBoard_Reset();
|
|
break;
|
|
case BoardCtrl15070_4.Mode.InitBoardWaitReset:
|
|
this._md_initBoard_WaitReset();
|
|
break;
|
|
case BoardCtrl15070_4.Mode.InitBoardGetBoardStatus:
|
|
this._md_initBoard_GetBoardStatus();
|
|
break;
|
|
case BoardCtrl15070_4.Mode.InitBoardSetTimeout:
|
|
this._md_initBoard_SetTimeout();
|
|
break;
|
|
case BoardCtrl15070_4.Mode.InitBoardGetEepRom:
|
|
this._md_initBoard_GetEEPRom();
|
|
break;
|
|
case BoardCtrl15070_4.Mode.InitBoardSetEepRom:
|
|
this._md_initBoard_SetEEPRom();
|
|
break;
|
|
case BoardCtrl15070_4.Mode.InitBoardSetDc:
|
|
this._md_initBoard_SetDc();
|
|
break;
|
|
case BoardCtrl15070_4.Mode.InitBoardSetDcUpdate:
|
|
this._md_initBoard_SetDcUpdate();
|
|
break;
|
|
case BoardCtrl15070_4.Mode.InitBoardSetGsOff:
|
|
this._md_initBoard_SetGsOff();
|
|
break;
|
|
case BoardCtrl15070_4.Mode.InitBoardSetFetOff:
|
|
this._md_initBoard_SetFetOff();
|
|
break;
|
|
case BoardCtrl15070_4.Mode.InitBoardSetGsUpdate:
|
|
this._md_initBoard_SetGsUpdate();
|
|
break;
|
|
case BoardCtrl15070_4.Mode.Exec:
|
|
this._md_exec();
|
|
break;
|
|
case BoardCtrl15070_4.Mode.Error:
|
|
this._md_error();
|
|
break;
|
|
case BoardCtrl15070_4.Mode.StartHalt:
|
|
this._md_startHalt();
|
|
break;
|
|
case BoardCtrl15070_4.Mode.StartHaltWaitReset:
|
|
this._md_startHalt_WaitReset();
|
|
break;
|
|
case BoardCtrl15070_4.Mode.Halt:
|
|
this._md_halt();
|
|
break;
|
|
}
|
|
}
|
|
while (this._loop);
|
|
}
|
|
|
|
// Token: 0x04003B64 RID: 15204
|
|
private const uint ResetWait = 1000U;
|
|
|
|
// Token: 0x04003B65 RID: 15205
|
|
private static BoardNo BoardNo = new BoardNo("15070-04");
|
|
|
|
// Token: 0x04003B66 RID: 15206
|
|
private const int EepromWriteRetryMax = 3;
|
|
|
|
// Token: 0x04003B67 RID: 15207
|
|
private Board15070_4.InitParam _initParam;
|
|
|
|
// Token: 0x04003B68 RID: 15208
|
|
private BoardCtrl15070_4.Mode _mode;
|
|
|
|
// Token: 0x04003B69 RID: 15209
|
|
private bool _loop;
|
|
|
|
// Token: 0x04003B6A RID: 15210
|
|
private bool _resetOn;
|
|
|
|
// Token: 0x04003B6B RID: 15211
|
|
private ErrorNo _errorNo;
|
|
|
|
// Token: 0x04003B6C RID: 15212
|
|
private GetBoardStatusCommand _getBoardStatusCommand;
|
|
|
|
// Token: 0x04003B6D RID: 15213
|
|
private SetTimeoutCommand _setTimeoutCommand;
|
|
|
|
// Token: 0x04003B6E RID: 15214
|
|
private GetBoardInfoCommand _getBoardInfoCommand;
|
|
|
|
// Token: 0x04003B6F RID: 15215
|
|
private GetProtocolVersionCommand _getProtocolVersionCommand;
|
|
|
|
// Token: 0x04003B70 RID: 15216
|
|
private ResetCommand _resetCommand;
|
|
|
|
// Token: 0x04003B71 RID: 15217
|
|
private GetEEPRomCommand _getEepRomCommand;
|
|
|
|
// Token: 0x04003B72 RID: 15218
|
|
private SetEEPRomCommand _setEepRomCommand;
|
|
|
|
// Token: 0x04003B73 RID: 15219
|
|
private SetDcCommand _setDcCommand;
|
|
|
|
// Token: 0x04003B74 RID: 15220
|
|
private SetDcUpdateCommand _setDcUpdateCommand;
|
|
|
|
// Token: 0x04003B75 RID: 15221
|
|
private SetLedGs8BitMultiCommand _setLedGs8BitMultiCommand;
|
|
|
|
// Token: 0x04003B76 RID: 15222
|
|
private SetLedFetCommand _setLedFetCommand;
|
|
|
|
// Token: 0x04003B77 RID: 15223
|
|
private SetLedGsUpdateCommand _setLedGsUpdateCommand;
|
|
|
|
// Token: 0x04003B78 RID: 15224
|
|
private IoCtrl _ioCtrl;
|
|
|
|
// Token: 0x04003B79 RID: 15225
|
|
private Stopwatch _modeTimer;
|
|
|
|
// Token: 0x04003B7A RID: 15226
|
|
private BoardCtrl15070_4.EepRom[] _eepRom;
|
|
|
|
// Token: 0x04003B7B RID: 15227
|
|
private BoardCtrl15070_4.EepRomAddress _eepRomCheckAdress;
|
|
|
|
// Token: 0x04003B7C RID: 15228
|
|
private Gs8BitMulti _dcParam;
|
|
|
|
// Token: 0x02000C97 RID: 3223
|
|
private enum Mode
|
|
{
|
|
// Token: 0x0400705F RID: 28767
|
|
Init,
|
|
// Token: 0x04007060 RID: 28768
|
|
InitBoardInitReset,
|
|
// Token: 0x04007061 RID: 28769
|
|
InitBoardGetBoardInfo,
|
|
// Token: 0x04007062 RID: 28770
|
|
InitBoardGetProtocolVersion,
|
|
// Token: 0x04007063 RID: 28771
|
|
InitBoardSetTimeoutInfinite,
|
|
// Token: 0x04007064 RID: 28772
|
|
InitBoardReset,
|
|
// Token: 0x04007065 RID: 28773
|
|
InitBoardWaitReset,
|
|
// Token: 0x04007066 RID: 28774
|
|
InitBoardGetBoardStatus,
|
|
// Token: 0x04007067 RID: 28775
|
|
InitBoardSetTimeout,
|
|
// Token: 0x04007068 RID: 28776
|
|
InitBoardGetEepRom,
|
|
// Token: 0x04007069 RID: 28777
|
|
InitBoardSetEepRom,
|
|
// Token: 0x0400706A RID: 28778
|
|
InitBoardSetDc,
|
|
// Token: 0x0400706B RID: 28779
|
|
InitBoardSetDcUpdate,
|
|
// Token: 0x0400706C RID: 28780
|
|
InitBoardSetGsOff,
|
|
// Token: 0x0400706D RID: 28781
|
|
InitBoardSetFetOff,
|
|
// Token: 0x0400706E RID: 28782
|
|
InitBoardSetGsUpdate,
|
|
// Token: 0x0400706F RID: 28783
|
|
InitBoardSetLedCount,
|
|
// Token: 0x04007070 RID: 28784
|
|
WaitAutoSend,
|
|
// Token: 0x04007071 RID: 28785
|
|
Exec,
|
|
// Token: 0x04007072 RID: 28786
|
|
Error,
|
|
// Token: 0x04007073 RID: 28787
|
|
StartHalt,
|
|
// Token: 0x04007074 RID: 28788
|
|
StartHaltWaitReset,
|
|
// Token: 0x04007075 RID: 28789
|
|
Halt
|
|
}
|
|
|
|
// Token: 0x02000C98 RID: 3224
|
|
private enum EepRomAddress
|
|
{
|
|
// Token: 0x04007077 RID: 28791
|
|
Enable,
|
|
// Token: 0x04007078 RID: 28792
|
|
Fet0,
|
|
// Token: 0x04007079 RID: 28793
|
|
Fet1,
|
|
// Token: 0x0400707A RID: 28794
|
|
Fet2,
|
|
// Token: 0x0400707B RID: 28795
|
|
DcRed,
|
|
// Token: 0x0400707C RID: 28796
|
|
DcGreen,
|
|
// Token: 0x0400707D RID: 28797
|
|
DcBlue,
|
|
// Token: 0x0400707E RID: 28798
|
|
Out15,
|
|
// Token: 0x0400707F RID: 28799
|
|
End
|
|
}
|
|
|
|
// Token: 0x02000C99 RID: 3225
|
|
private enum EepRomCheck
|
|
{
|
|
// Token: 0x04007081 RID: 28801
|
|
None,
|
|
// Token: 0x04007082 RID: 28802
|
|
Ok,
|
|
// Token: 0x04007083 RID: 28803
|
|
Ng,
|
|
// Token: 0x04007084 RID: 28804
|
|
End
|
|
}
|
|
|
|
// Token: 0x02000C9A RID: 3226
|
|
private struct EepRom
|
|
{
|
|
// Token: 0x04007085 RID: 28805
|
|
public BoardCtrl15070_4.EepRomCheck Check;
|
|
|
|
// Token: 0x04007086 RID: 28806
|
|
public byte ReadData;
|
|
|
|
// Token: 0x04007087 RID: 28807
|
|
public byte WriteData;
|
|
|
|
// Token: 0x04007088 RID: 28808
|
|
public byte WriteCount;
|
|
}
|
|
}
|
|
}
|