Scrierea unui emulator cip-8
În această serie de articole am de gând să-ți spun cum să scrie un simulator de calculator simplu ca un exemplu CHIP-8. În general-CHIP 8 nu este un computer adevărat, acesta poate fi comparat cu o mașină virtuală (cum ar fi Java), dar este mare pentru o înțelegere de bază a sistemelor de simulare pe calculator.
Emulator am scrie în C ++, folosind biblioteca grafică SDL. Codul se bazează pe codul sursă al meu emuChip emulator.
Istoria CHIP-8
CHIP-8 - un mic, limbaj de programare interpretat și un interpret pentru el, care a apărut pentru prima dată pe computerele de acasă COSMAC VIP, Telmac 1800, vis 6800, la sfârșitul anilor '70. Creator este Joseph Weisbecker. CHIP-8 a fost folosit pentru a crea jocuri, cum ar fi pong, Tetris, Space Invaders etc.

În prezent, există mai multe și MegaChip dezvoltat Revival Studios. În această versiune adaugă grafice color și sunet.
caracteristici tehnice
Implementarea inițială CHIP-8 are un monocrom (alb-negru) afișare dimensiune pixeli 64h32. Schip, în plus față de bază a avansat modul de 128x64.
CHIP-8 se bazează grafica de pe ecran folosind sprite. Sprite are 8 pixeli în lățime și de la 1 la 15 pixeli în înălțime. Doar interpret 16 oferă o dimensiune predefinită de sprite 4x5 pixeli. Acest hexazecimale numerele 0 prin F.
claviatură
Calculatoarele pe care a fost utilizat originalul CHIP-8 a avut o tastatură 16-cheie a formularului.

CHIP-8 are 16 de uz general V0-VF registre de opt biți. VF este utilizat ca un registru și de pavilion transport indicator sprite coliziune.
În plus, există două registre de opt biți ale cronometrului: întârzieri și sunet. Ambele cronometre reduce valoarea sa de 60 de ori pe secundă până când ajunge la zero. În cazul în care valoarea de sunet a timer-ul nu este zero interpret transmite sunet (beep!).
Astăzi este tot
În următorul articol vom trece să învețe limba de comenzi și Opcodes lor.