コード例 #1
0
 private void Setup(ISnesData data)
 {
     Running         = true;
     streamProcessor = new BsnesImportStreamProcessor();
     taskManager     = CreateWorkerTaskManager();
     importer        = CreateTraceLogImporter(data);
 }
コード例 #2
0
    public BsnesTraceLogImporter(ISnesData?snesData)
    {
        this.snesData    = snesData;
        romSizeCached    = this.snesData?.GetRomSize() ?? 0;
        romMapModeCached = this.snesData?.RomMapMode ?? default;

        InitStats();
        InitObjectPool();
    }
コード例 #3
0
ファイル: SnesData.cs プロジェクト: Dotsarecool/DiztinGUIsh
    // input can be any length, and will be padded, using spaces, to the right size for SNES header
    public static void SetCartridgeTitle(this ISnesData @this, string utf8CartridgeTitle)
    {
        var rawShiftJisBytes    = ByteUtil.GetRawShiftJisBytesFromStr(utf8CartridgeTitle);
        var paddedShiftJisBytes = ByteUtil.PadCartridgeTitleBytes(rawShiftJisBytes);

        // the BYTES need to be 21 in length. this is NOT the string length (which can be different because of multibyte chars)
        Debug.Assert(paddedShiftJisBytes.Length == RomUtil.LengthOfTitleName);

        @this.Data.RomBytes.SetBytesFrom(paddedShiftJisBytes, @this.CartridgeTitleStartingOffset);
    }
コード例 #4
0
 public void Run(ISnesData data)
 {
     Setup(data);
     try
     {
         Main();
         taskManager.StartFinishing();
         taskManager.WaitForAllTasksToComplete();
     }
     finally
     {
         Shutdown();
     }
 }
コード例 #5
0
 public static int ImportUsageMap(byte[] usageMap, ISnesData data)
 {
     return(new BsnesUsageMapImporter {
         usageMap = usageMap, snesData = data
     }.Run());
 }
コード例 #6
0
 protected virtual BsnesTraceLogImporter CreateTraceLogImporter(ISnesData data)
 {
     // multi-threaded version
     // return new BsnesTraceLogImporter(data, streamProcessor.CancelToken.Token, taskManager);
     return(new BsnesTraceLogImporter(data));
 }
コード例 #7
0
 protected override BsnesTraceLogImporter CreateTraceLogImporter(ISnesData data)
 {
     // single-threaded version
     return(new BsnesTraceLogImporter(data));
 }