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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
|
extern u16int pc, curpc;
extern u8int rP;
extern int nrdy;
extern int p0difc;
extern int bwmod;
extern int ppux, ppuy;
extern u8int p0x, p1x, m0x, m1x, blx;
extern u16int coll;
extern u8int *rom, *rop;
extern u16int bnk[];
extern int mask;
extern u8int reg[64];
enum {
FLAGC = 1<<0,
FLAGZ = 1<<1,
FLAGI = 1<<2,
FLAGD = 1<<3,
FLAGB = 1<<4,
FLAGV = 1<<6,
FLAGN = 1<<7,
};
enum {
VSYNC,
VBLANK,
WSYNC,
RSYNC,
NUSIZ0,
NUSIZ1,
COLUP0,
COLUP1,
COLUPF,
COLUBK,
CTRLPF,
REFP0,
REFP1,
PF0,
PF1,
PF2,
RESP0,
RESP1,
RESM0,
RESM1,
RESBL,
AUDC0,
AUDC1,
AUDF0,
AUDF1,
AUDV0,
AUDV1,
GRP0,
GRP1,
ENAM0,
ENAM1,
ENABL,
HMP0,
HMP1,
HMM0,
HMM1,
HMBL,
VDELP0,
VDELP1,
VDELBL,
RESMP0,
RESMP1,
HMOVE,
HMCLR,
CXCLR,
};
enum {
PICW = 320,
PICH = 222,
HZ = 3579545,
RATE = 44100,
SAMPDIV = HZ / 3 / RATE,
};
|