forked from libretro/libretro-vecx
-
Notifications
You must be signed in to change notification settings - Fork 0
/
vecx.h
44 lines (34 loc) · 1.02 KB
/
vecx.h
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
#ifndef __VECX_H
#define __VECX_H
enum {
VECTREX_MHZ = 1500000, /* speed of the vectrex being emulated */
VECTREX_COLORS = 128, /* number of possible colors ... grayscale */
ALG_MAX_X = 33000,
ALG_MAX_Y = 41000
};
typedef struct vector_type {
long x0, y0; /* start coordinate */
long x1, y1; /* end coordinate */
/* color [0, VECTREX_COLORS - 1], if color = VECTREX_COLORS, then this is
* an invalid entry and must be ignored.
*/
unsigned char color;
} vector_t;
extern unsigned char rom[8192];
extern unsigned char get_cart(unsigned pos);
extern void set_cart(unsigned pos, unsigned char data);
extern unsigned snd_regs[16];
extern unsigned alg_jch0;
extern unsigned alg_jch1;
extern unsigned alg_jch2;
extern unsigned alg_jch3;
extern long vector_draw_cnt;
extern long vector_erse_cnt;
extern vector_t *vectors_draw;
extern vector_t *vectors_erse;
int vecx_statesz();
int vecx_serialize(char* dst, int size);
int vecx_deserialize(char* dst, int size);
void vecx_reset (void);
int vecx_emu (long cycles);
#endif