public CpuInstanceBuilder(uint resetAddr, uint intAddr) { m_Importer = new ApiImporter(); ImporterSystem.Add(m_Importer); m_ResetAddr = resetAddr; m_InterruptAddr = intAddr; m_Peripherals = new List <Peripheral>(); }
public static void Build(BuilderSettings settings, IEnumerable <string> importerArgs) { TextImporter.ParseImporterArgs(importerArgs.ToArray()); ImporterSystem.Add(new InstructionDataImporter(), new LinkerImporter(), new RawFileImporter(), new StringFileImporter()); foreach (PeripheralImporter peripheralImporter in Peripheral.GetPeripheralImporters()) { //Pretend we are starting the CPU to register all external Importers. peripheralImporter.GetPeripherals(new List <Peripheral>()); } if (settings.InputFiles == null) { return; } foreach (string f in settings.InputFiles) { string original = Path.GetFullPath(f); string file = original; if (!File.Exists(file)) { EventManager <ErrorEvent> .SendEvent( new FileNotFoundEvent( Path.GetFullPath(file), true ) ); continue; } foreach ((string stepName, BuildSteps step) in settings.InstanceBuildSteps) { Logger.LogMessage( LoggerSystems.Console, $"Running Build Step '{stepName}'" ); string newFile = step(original, file); if (settings.CleanBuildOutput && file != original) { File.Delete(file); } Logger.LogMessage( LoggerSystems.Console, $"'{file}' => '{newFile}'" ); file = newFile; } Logger.LogMessage(LoggerSystems.Console, $"Steps Completed! File: '{original}' => '{file}'"); } }
public SIMDIntrinsics() { m_Importer = new ApiImporter(); ImporterSystem.Add(m_Importer); m_Start = 0xFFFF9000; }