mirror of
https://github.com/libretro/libretro-vecx.git
synced 2025-02-17 07:09:22 +00:00
47 lines
1.1 KiB
C
47 lines
1.1 KiB
C
#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 void vecx_dac_set_buffer(int16_t *buffer);
|
|
|
|
extern void vecx_snd_push(unsigned samps);
|
|
|
|
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
|