4 dépôts
Mechanisms for managing the temporal execution rate of emulated systems through clock throttling and frame skipping.
Distinct from Processor Speed Controllers: Unlike candidates, this specifically targets the balance between emulation accuracy and host performance.
Explore 4 awesome GitHub repositories matching operating systems & systems programming · Execution Speed Controls. Refine with filters or upvote what's useful.
MAME is a vintage hardware emulation platform designed to recreate the circuitry of arcade games, computers, and consoles to run original software on modern devices. It functions as a retro gaming preservation framework for managing, verifying, and archiving ROM sets and disk images to ensure long-term software accessibility. The project features a system debugging tool for inspecting emulated memory, CPU registers, and execution flow via breakpoints and disassembly. It also includes a Lua-based automation layer that exposes core system state and hardware controls for custom behavior and anal
Controls frame skipping, clock throttling, and processor allocation to balance performance and accuracy.
Runs emulated games at accelerated speeds to skip through slow sections during active play sessions.
PyBoy est un émulateur Game Boy programmable et un framework de simulation matérielle écrit en Python. Il fonctionne comme un moteur d'émulation qui permet aux utilisateurs d'exécuter des logiciels portables originaux tout en fournissant une interface programmatique pour contrôler, sonder et automatiser l'exécution des jeux. Le projet est spécifiquement conçu comme un environnement d'apprentissage par renforcement, exposant les états et contrôles de l'émulateur pour faciliter l'entraînement d'agents d'intelligence artificielle. Il se distingue en fournissant des outils pour le mapping de zones de jeu et l'extraction de représentations d'écran 2D simplifiées et de cartes de collision pour soutenir l'IA. Le système couvre un large éventail de capacités, incluant l'émulation matérielle cycle-précise, les opérations de lecture/écriture mémoire directes et un système de callback pour les hooks d'exécution. Il prend en charge l'extraction de données de jeu en temps réel, telles que les positions des sprites et les symboles mémoire, et inclut un mode d'exécution headless pour accélérer la vitesse de simulation en contournant le rendu graphique et audio. L'émulateur fournit également des utilitaires pour la persistance d'état via la sérialisation de snapshots, la simulation d'entrée pour les agents autonomes et des outils pour l'analyse mémoire et la modification de données ROM.
Implements mechanisms to manage the temporal execution rate of the emulated system via multipliers.
Ce projet est un environnement éducatif basé sur le web conçu pour simuler l'architecture de processeur 8 bits et l'exécution en langage assembleur. Il fonctionne comme une machine virtuelle qui traduit le code assembleur symbolique en instructions machine, permettant aux utilisateurs d'observer le cycle fetch-decode-execute et son impact sur l'état du système en temps réel. Le simulateur se distingue par une interface réactive qui lie les affichages visuels des registres et de la mémoire directement à l'état du processeur sous-jacent. Il incorpore un assembleur en deux passes qui gère la résolution des étiquettes symboliques et le mappage des adresses mémoire, fournissant un moyen structuré d'organiser et de naviguer dans les programmes assembleur. Les utilisateurs peuvent contrôler la fréquence d'horloge du processeur virtuel, leur permettant de rythmer l'exécution des instructions pour une observation et un débogage détaillés. L'application fournit une suite complète d'outils pour surveiller les drapeaux internes du processeur, les valeurs des registres et le contenu de la mémoire. Elle prend en charge un formatage de données flexible pour la mémoire et les registres, permettant aux valeurs d'être visualisées en notation hexadécimale ou décimale. L'environnement est construit comme une application basée sur navigateur, facilitant l'étude des concepts informatiques de bas niveau et de la logique des systèmes embarqués sans nécessiter de matériel externe.
Allows users to adjust the clock frequency of the virtual processor to control execution speed.