if arch_id: break if not arch_id: print("Error: file '%s' not recognized by default loaders" % args.file) sys.exit(1) if arch_id not in default_plugins.cpus: print("Error: no plugin for CPU '%s' as detected for file '%s'" % (arch_id, args.file)) sys.exit(1) load_target_file(loader, args.file) CPU_PLUGIN = __import__(default_plugins.cpus[arch_id]) project_name = args.file p = CPU_PLUGIN.PROCESSOR_ENTRY() if hasattr(p, "config"): p.config() engine.set_processor(p) if hasattr(p, "help_text"): help.set_cpu_help(p.help_text) APP.cpu_plugin = p APP.aspace = engine.ADDRESS_SPACE APP.is_ui = False engine.ADDRESS_SPACE.is_loading = True # Calc various offset based on show_bytes value APP.set_show_bytes(APP.show_bytes) # Strip suffix if any from def filename project_dir = project_name + ".scratchabit" if saveload.save_exists(project_dir): saveload.load_state(project_dir)