mirror of
https://github.com/dborth/fceugx.git
synced 2024-12-26 16:41:55 +01:00
86 lines
1.7 KiB
C
86 lines
1.7 KiB
C
#include "share.h"
|
|
#include "fceugx.h"
|
|
|
|
static uint8 GunSight[]={
|
|
0,0,0,0,0,0,1,0,0,0,0,0,0,
|
|
0,0,0,0,0,0,2,0,0,0,0,0,0,
|
|
0,0,0,0,0,0,1,0,0,0,0,0,0,
|
|
0,0,0,0,0,0,2,0,0,0,0,0,0,
|
|
0,0,0,0,0,0,0,0,0,0,0,0,0,
|
|
0,0,0,0,0,0,3,0,0,0,0,0,0,
|
|
1,2,1,2,0,3,3,3,0,2,1,2,1,
|
|
0,0,0,0,0,0,3,0,0,0,0,0,0,
|
|
0,0,0,0,0,0,0,0,0,0,0,0,0,
|
|
0,0,0,0,0,0,2,0,0,0,0,0,0,
|
|
0,0,0,0,0,0,1,0,0,0,0,0,0,
|
|
0,0,0,0,0,0,2,0,0,0,0,0,0,
|
|
0,0,0,0,0,0,1,0,0,0,0,0,0,
|
|
};
|
|
static uint8 FCEUcursor[11*19]=
|
|
{
|
|
1,0,0,0,0,0,0,0,0,0,0,
|
|
1,1,0,0,0,0,0,0,0,0,0,
|
|
1,2,1,0,0,0,0,0,0,0,0,
|
|
1,2,2,1,0,0,0,0,0,0,0,
|
|
1,2,2,2,1,0,0,0,0,0,0,
|
|
1,2,2,2,2,1,0,0,0,0,0,
|
|
1,2,2,2,2,2,1,0,0,0,0,
|
|
1,2,2,2,2,2,2,1,0,0,0,
|
|
1,2,2,2,2,2,2,2,1,0,0,
|
|
1,2,2,2,2,2,2,2,2,1,0,
|
|
1,2,2,2,2,2,1,1,1,1,1,
|
|
1,2,2,1,2,2,1,0,0,0,0,
|
|
1,2,1,0,1,2,2,1,0,0,0,
|
|
1,1,0,0,1,2,2,1,0,0,0,
|
|
1,0,0,0,0,1,2,2,1,0,0,
|
|
0,0,0,0,0,1,2,2,1,0,0,
|
|
0,0,0,0,0,0,1,2,2,1,0,
|
|
0,0,0,0,0,0,1,2,2,1,0,
|
|
0,0,0,0,0,0,0,1,1,0,0,
|
|
};
|
|
|
|
void FCEU_DrawGunSight(uint8 *buf, int xc, int yc) {
|
|
if (GCSettings.crosshair) {
|
|
int x, y;
|
|
int c, d;
|
|
|
|
for (y = 0; y < 13; y++)
|
|
for (x = 0; x < 13; x++) {
|
|
uint8 a;
|
|
a = GunSight[y * 13 + x];
|
|
if (a) {
|
|
c = (yc + y - 7);
|
|
d = (xc + x - 7);
|
|
if (c >= 0 && d >= 0 && d < 256 && c < 240) {
|
|
if (a == 3)
|
|
buf[c * 256 + d] = 0xBF - (buf[c * 256 + d] & 0x3F);
|
|
else
|
|
buf[c * 256 + d] = a - 1;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
void FCEU_DrawCursor(uint8 *buf, int xc, int yc)
|
|
{
|
|
int x,y;
|
|
int c,d;
|
|
|
|
if(xc<256 && yc<240)
|
|
for(y=0;y<19;y++)
|
|
for(x=0;x<11;x++)
|
|
{
|
|
uint8 a;
|
|
a=FCEUcursor[y*11+x];
|
|
if(a)
|
|
{
|
|
c=(yc+y);
|
|
d=(xc+x);
|
|
if(d<256 && c<240)
|
|
buf[c*256+d]=a+127;
|
|
}
|
|
}
|
|
}
|