Hoe Een Emulator Te Schrijven

Inhoudsopgave:

Hoe Een Emulator Te Schrijven
Hoe Een Emulator Te Schrijven

Video: Hoe Een Emulator Te Schrijven

Video: Hoe Een Emulator Te Schrijven
Video: How to patch emulator games 2024, November
Anonim

Emulatie is een poging om een apparaat op een specifiek systeem te imiteren. Er zijn drie manieren om emulators te bouwen: dynamische en statische hercompilatie en interpretatie. Om het maximale snelheidseffect tijdens het werken te bereiken, wordt aanbevolen om alle drie de methoden te gebruiken. Laten we een voorbeeld bekijken van het schrijven van een typische processoremulator.

Hoe een emulator te schrijven
Hoe een emulator te schrijven

instructies:

Stap 1

Selecteer een programmeertaal. Het aanbevolen en waarschijnlijk het enige alternatief is C en Assembler. In C kun je code maken die naar andere platforms wordt geporteerd. Het is relatief eenvoudig te begrijpen en gemakkelijk te debuggen, maar veel langzamer dan andere. De assembler onderscheidt zich door zijn hoge werksnelheid, het maakt gebruik van processorregisters, wat bijdraagt aan de aanpassing van het programma aan het hercompilerende programma. Het is echter erg moeilijk om codes erin te volgen en op te lossen. Het is belangrijk om de gekozen taal goed te kennen en de code goed te optimaliseren voor snelheid.

Stap 2

Ken een beginwaarde toe aan de cyclische en programmateller. De cyclische teller telt het aantal klokcycli waarna de interrupt optreedt, en de software-pc toont het geheugengebied waarin de volgende opcode-instructie ligt.

Stap 3

Nadat u de opcode hebt ontvangen, trekt u het aantal klokcycli af dat nodig is om de opcode uit te voeren van de lusteller. Houd er rekening mee dat sommige commando's verschillen in aantal vinkjes, afhankelijk van de argumenten. Wijzig voor dergelijke opdrachten de teller in de runcode later.

Stap 4

Controleer na succesvolle uitvoering van de opcode of het nodig is om interrupts te activeren. Voltooi nu de taken die dringend op tijd moeten worden gesynchroniseerd.

Stap 5

Controleer elke passage van de cyclus op de noodzaak om zijn werk te voltooien. Onthoud dat het programma modulair moet zijn, aangezien de meeste computers uit modules bestaan, en een typische emulator moet, indien mogelijk, hetzelfde zijn als het originele systeem. Dit zorgt voor snellere en gemakkelijkere foutopsporing van het programma en u kunt dezelfde modules gebruiken voor verschillende emulators, omdat veel computers zijn gebaseerd op dezelfde modellen processors of videoprocessors.

Aanbevolen: