1: DECLARE SUB SaveScreen (f$) 2: DECLARE SUB LoadPal (f$) 3: SCREEN 13: CLS 4: DIM SHARED Pal(1256) AS LONG 5: Horz = POINT(1): Vert = POINT(0) 6: PSET (Vert, Horz), 2 7: C = 1 8: FILES "*.pa2" 9: INPUT "Palette name"; f$ 10: IF INSTR(f$, ".") = 0 THEN f$ = f$ + ".pa2" 11: CLS 12: LoadPal f$ 13: 1 d$ = INKEY$ 14: IF d$ = "" THEN 15: a = INT(RND * 4) 16: IF a = 0 THEN a$ = CHR$(0) + "M" 17: IF a = 1 THEN a$ = CHR$(0) + "K" 18: IF a = 2 THEN a$ = CHR$(0) + "P" 19: IF a = 3 THEN a$ = CHR$(0) + "H" 20: ELSE a$ = d$ 21: END IF 22: IF a$ = "" THEN GOTO 1 23: RANDOMIZE TIMER + a - VAL(DATE$) + VAL(TIME$) 24: IF a$ = CHR$(0) + "M" AND Vert < 319 THEN Vert = Vert + 1 25: IF a$ = CHR$(0) + "K" AND Vert > 0 THEN Vert = Vert - 1 26: IF a$ = CHR$(0) + "P" AND Horz < 199 THEN Horz = Horz + 1 27: IF a$ = CHR$(0) + "H" AND Horz > 0 THEN Horz = Horz - 1 28: IF a$ = CHR$(27) THEN SaveScreen "One.BSV" 29: IF POINT(Horz, Vert) = Horz THEN GOTO 1 30: IF a$ = "" THEN END 31: 'IF C < 240 THEN C = C + 1 ELSE C = 2 32: C = Horz * 1.299999999# 33: 'PSET (Vert - 1, Horz - 1), C 34: 'PSET (Vert - 1, Horz + 1), C 35: PSET (Vert + 1, Horz + 1), C 36: PSET (Vert + 1, Horz - 1), C 37: PSET (Vert, Horz + 1), C 38: PSET (Vert, Horz - 1), C 39: PSET (Vert + 1, Horz), C 40: PSET (Vert - 1, Horz), C 41: IF Horz < 199 AND Vert < 319 THEN PSET (Vert, Horz), C ELSE GOTO 1 42: GOTO 1 43: 44: SUB LoadPal (f$) 45: OPEN f$ FOR INPUT AS #1 46: q = 1 47: DO UNTIL EOF(1) 48: INPUT #1, Pal(q) 49: q = q + 1 50: LOOP 51: PALETTE USING Pal(1) 52: CLOSE 1 53: END SUB 54: 55: SUB SaveScreen (f$) 56: DEF SEG = &HA000 57: BSAVE f$, 0, 64000 58: END SUB 59: |