summaryrefslogtreecommitdiff
path: root/src/main.c
blob: 59f411789893cc64df7f98475c9a5b14bb670596 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#include "apple.h"
#include "video/interface.h"
#include <ncurses.h>
#include <unistd.h>
#include "cpu/6502.h"


int main() {

	AppleOn();
	
	DisplayInit();

	FILE *Log = fopen("log/log.raw", "w+");
	int Time = 0;
	
	while(1) {
		// Computing
		CallInstructionTable();
		// Logging
		fprintf(Log,
				"%04x : %04x : %02x : %02x : %02x : %c%c_%c%c%c%c%c : %02x\n",
				Time, PC, acc, X, Y,
				getFlag(flag_N) ? 'N':'.' ,
				getFlag(flag_V) ? 'V':'.' ,
				getFlag(flag_B) ? 'B':'.' ,
				getFlag(flag_D) ? 'D':'.' ,
				getFlag(flag_I) ? 'I':'.' ,
				getFlag(flag_Z) ? 'Z':'.' ,
				getFlag(flag_C) ? 'C':'.' ,
				S);
		fflush(Log);
		// Display information
		PrintInfo();
		// Logging
		Time++;
	}

	DisplayClose();

	return 0;
}