summaryrefslogtreecommitdiff
path: root/os/js/fsv.c
diff options
context:
space:
mode:
authorKonstantin Kirik (snegovick) <snegovick@uprojects.org>2025-12-28 12:27:31 +0300
committerKonstantin Kirik (snegovick) <snegovick@uprojects.org>2025-12-28 12:27:31 +0300
commit78ee7d5717807e6ac779293d0d3c78341de6130a (patch)
treea43e3b0f61318ac45e6d907c7cc5bad2c6d7f497 /os/js/fsv.c
parentbdaf46cf45bbb59261da245d548a179d95a42768 (diff)
Move existing boards into subdits split per arch
Diffstat (limited to 'os/js/fsv.c')
-rw-r--r--os/js/fsv.c198
1 files changed, 0 insertions, 198 deletions
diff --git a/os/js/fsv.c b/os/js/fsv.c
deleted file mode 100644
index 9832ce3b..00000000
--- a/os/js/fsv.c
+++ /dev/null
@@ -1,198 +0,0 @@
-#include "u.h"
-#include "../port/lib.h"
-#include "mem.h"
-#include "io.h"
-#include "dat.h"
-#include "fns.h"
-
-#include <draw.h>
-#include <memdraw.h>
-#include "screen.h"
-
-extern Video *vid;
-extern Memimage gscreen;
-
-static Vctlr* init(Vctlr* vctlr, int x, int y, int d);
-static int setcolour(ulong p, ulong r, ulong g, ulong b);
-static void enable(void);
-static void disable(void);
-static void move(int cx, int cy);
-static void load(Cursor *c);
-static int isloaded(void);
-
-extern void* memcpy(void*, void*, int);
-extern void cursorupdate0(void);
-
-Vctlr FSV = {
- "FSV", /* name */
- init, /* init */
- 0, /* page */
- setcolour, /* setcolor */
-
- enable, /* enable cursor fn */
- disable, /* disable cursor fn */
- move, /* move cursor fn */
- load, /* load cursor fn */
- isloaded, /* is cursor loaded? */
- 0, /* deprecated */
-
- 1024, /* screen width (x) */
- 768, /* screen height (y) */
- 3, /* depth */
-
- 0, /* hidecount */
- 0, /* loaded */
-};
-
-static int lastx=-1;
-static int lasty=-1;
-
-static Vctlr*
-init(Vctlr* vctlr, int x, int y, int d)
-{
- USED(vctlr,x,y,d);
-
- return &FSV;
-}
-
-static int
-setcolour(ulong p, ulong r, ulong g, ulong b)
-{
- if(gscreen.ldepth == 0)
- return 0; /* can't change mono screen colormap */
- else{
- vid->addr = p << 24;
- vid->color = r << 24;
- vid->color = g << 24;
- vid->color = b << 24;
- return 1;
- }
-}
-
-static ulong backingstore[64];
-static Memdata backingstoredata = {
- nil,
- backingstore
-};
-
-static ulong backingnocursor[64];
-static Memdata backingnocursordata = {
- nil,
- backingnocursor
-};
-
-static ulong backwithcursor[64];
-static Memdata backwithcursordata = {
- nil,
- backwithcursor
-};
-
-static Memimage backingnocursormem = {
- {0,0,16,16},
- {0,0,16,16},
- 3,
- 0,
- &backingnocursordata,
- 0,
- 16/4,
- 0,
- 0,
-};
-static Memimage backingmem = {
- {0,0,16,16},
- {0,0,16,16},
- 3,
- 0,
- &backingstoredata,
- 0,
- 16/4,
- 0,
- 0,
-};
-
-static void
-disable(void)
-{
- if(FSV.hidecount++)
- return;
- if(lastx < 0 || lasty < 0)
- return;
-
- memimagedraw(&gscreen, Rect(lastx,lasty,lastx+16,lasty+16),
- &backingnocursormem, Pt(0,0), memones, Pt(0,0));
-}
-
-static void
-enable(void)
-{
- uchar *p;
- uchar mask;
- uchar *cset;
- int i;
-
- if(--FSV.hidecount > 0)
- return;
- FSV.hidecount = 0;
-
- if(lastx < 0 || lasty < 0)
- return;
-
- memimagedraw(&backingmem,Rect(0,0,16,16),&gscreen,Pt(lastx,lasty),memones,
- Pt(0,0));
-
- memcpy(backingnocursor,backingstore,256);
- p = (uchar*)backingmem.data->data;
-
- cset = FSV.cursor.set;
-
- for(i=0;i<32;i++) {
- mask = ~cset[i];
-
- if(!(mask&(1<<7))) *p = 0xff;
- ++p;
- if(!(mask&(1<<6))) *p = 0xff;
- ++p;
- if(!(mask&(1<<5))) *p = 0xff;
- ++p;
- if(!(mask&(1<<4))) *p = 0xff;
- ++p;
- if(!(mask&(1<<3))) *p = 0xff;
- ++p;
- if(!(mask&(1<<2))) *p = 0xff;
- ++p;
- if(!(mask&(1<<1))) *p = 0xff;
- ++p;
- if(!(mask&(1<<0))) *p = 0xff;
- ++p;
- }
-
- memimagedraw(&gscreen,Rect(lastx,lasty,lastx+16,lasty+16),&backingmem,Pt(0,0),
- memones,Pt(0,0));
-}
-
-static void
-move(int cx, int cy)
-{
- if(!FSV.loaded)
- return;
-
- disable();
- cursorupdate0();
- lastx = cx;
- lasty = cy;
- enable();
-}
-
-
-static void
-load(Cursor *curs)
-{
- FSV.cursor = *curs;
- FSV.loaded=1;
-}
-
-static int
-isloaded(void)
-{
- return FSV.loaded;
-}