def __init__(self, tableName, tableRows=[], coreInfo={}): self.tableName = tableName self.rowsDict = OrderedDict(tableRows) self.dbFile = os.path.join(os.getcwd().replace("python", "metadata"), "systems.sqlite") self.dbFileExists = os.path.isfile(self.dbFile) if len(coreInfo) == 0: self.coreInfo = retrieveCoreInfo() else: self.coreInfo = coreInfo self.filterSystems() # This map needs to have exactly the same keys that the # prettifySystem() function creates. Otherwise there will be a key error # when the keys are indexed. This is supposed to happen though. self.defaultCoreMap = { "Nintendo Entertainment System": "nestopia_libretro", "Super Nintendo": "bsnes_mercury_balanced_libretro", "Sony PlayStation": "mednafen_psx_libretro", "Game Boy Color": "gambatte_libretro", "Game Boy Advance": "vbam_libretro", "Sega Genesis": "genesis_plus_gx_libretro", "Sega Saturn": "yabause_libretro", "Arcade": "mame_libretro", "Neo Geo": "fb_alpha_neo_libretro", "Atari Lynx": "mednafen_lynx_libretro", "Neo Geo Pocket (Color)": "mednafen_ngp_libretro", "PC Engine": "mednafen_pce_fast_libretro", "PC Engine SuperGrafx": "mednafen_supergrafx_libretro", "PC-FX": "mednafen_pcfx_libretro", "Virtual Boy": "mednafen_vb_libretro", "WonderSwan (Color)": "mednafen_wswan_libretro", "Zx Spectrum": "fuse_libretro", }
from retrieve_core_info import retrieveCoreInfo from collections import OrderedDict from updaters.updateSystemMap import SystemMapUpdater from updaters.updateFirmware import FirmwareUpdater from updaters.updateCoreMetadata import CoreMetadataUpdater from updaters.updateSystemCoreMap import SystemCoreMapUpdater from updaters.updateRomHeaderOffsets import RomHeaderOffsetUpdater from updaters.updateExtensions import ExtensionUpdater from updaters.updateDefaultCores import DefaultCoresUpdater import os if __name__ == "__main__": info = retrieveCoreInfo() romHeaders = RomHeaderOffsetUpdater(tableName="systemHeaderOffsets", coreInfo=info) romHeaders.updateTable() systemCoreMap = SystemCoreMapUpdater(tableName="systemCoreMap", coreInfo=info) systemCoreMap.updateTable() firmware = FirmwareUpdater(tableName="firmware", coreInfo=info) firmware.updateTable() systemMap = SystemMapUpdater(tableName="systemMap", coreInfo=info) systemMap.updateTable() coreMetadata = CoreMetadataUpdater(tableName="coreMetadata", coreInfo=info) coreMetadata.updateTable()