DEFINT A-Z DECLARE FUNCTION chroma (a, b, c, i) DECLARE FUNCTION tint (a, b, c, i) DECLARE FUNCTION hue (a, b, c, i) DECLARE FUNCTION max (a, b, c) DECLARE SUB clookup (r, g, b, i, j) '$DYNAMIC 'setpal library DECLARE SUB putpixel (BYVAL x, BYVAL y, BYVAL c, BYVAL p) DECLARE SUB rectangle (BYVAL x, BYVAL y, BYVAL w, BYVAL h, BYVAL c, BYVAL p) DECLARE SUB setmodex () DECLARE SUB setpal (pal()) DECLARE SUB setfont (f()) DECLARE SUB printstr (s$, BYVAL x, BYVAL y, BYVAL p) DECLARE SUB textcolor (BYVAL f, BYVAL b) DECLARE SUB setdiskpages (buf(), BYVAL l, BYVAL b) DECLARE SUB storepage (fil$, BYVAL i, BYVAL p) DECLARE SUB loadpage (fil$, BYVAL i, BYVAL p) DIM SHARED vgapal(767), txt(1024), ptr& DIM buf(16000) DEF SEG = VARSEG(vgapal(0)) BLOAD "master.pal", VARPTR(vgapal(0)) textcolor 15, 1 setmodex setpal vgapal() setdiskpages buf(), 200, 0 'loadpage "temp.scr" + CHR$(0), 1, 0 'a$ = INPUT$(1) 'loadpage "temp.scr" + CHR$(0), 0, 0 page = 9 OPEN "bitmaps\fishgame.bmp" FOR BINARY AS #1 GET #1, 11, ptr& ptr& = ptr& + 1 FOR j = 0 TO 199 FOR i = 0 TO 319 GET #1, ptr&, temp ptr& = ptr& + 1 b = temp AND 255 GET #1, ptr&, temp ptr& = ptr& + 1 g = temp AND 255 GET #1, ptr&, temp ptr& = ptr& + 1 r = temp AND 255 clookup r, g, b, i, 199 - j NEXT i NEXT j storepage "casino.all" + CHR$(0), page, 0 a$ = INPUT$(1) CLOSE #1 SCREEN 7: SCREEN 0: CLS SYSTEM REM $STATIC FUNCTION chroma (a, b, c, i) chroma = max(ABS(vgapal(i) * 4 - a), ABS(vgapal(i + 1) * 4 - b), ABS(vgapal(i + 2) * 4 - c)) END FUNCTION SUB clookup (r, g, b, i, j) final1 = 0 final2 = 0 cc = 0 ci = 0 ldif1 = 1000 ldif2 = 1000 WHILE cc < 256 dif1 = chroma(r, g, b, ci) IF dif1 < ldif1 THEN final1 = cc: ldif1 = dif1 'dif2 = hue(r, g, b, ci) 'IF dif2 < ldif2 THEN final2 = cc: ldif2 = dif2 cc = cc + 1 ci = ci + 3 WEND 'IF ldif1 < 60 AND ((i + j) AND 1) = 1 THEN putpixel i, j, final2, 0 ELSE putpixel i, j, final1, 0 'putpixel i, j, final2, 0 putpixel i, j, final1, 0 END SUB FUNCTION hue (a, b, c, i) hue = ABS(vgapal(i) * 4 - a) + ABS(vgapal(i + 1) * 4 - b) + ABS(vgapal(i + 2) * 4 - c) END FUNCTION FUNCTION max (a, b, c) IF a > b THEN high = a ELSE high = b IF c > high THEN high = c max = high END FUNCTION