From b20967daecda3e949759476d1b679a096b4b7d45 Mon Sep 17 00:00:00 2001 From: Neil Date: Sat, 12 Jun 2021 20:36:23 -0700 Subject: [PATCH] Under version-control. --- 3dland.bas | 314 ++++++++++++ 3dland.bas.d | 2 + 3dland.exe | Bin 0 -> 42306 bytes 3dland.exe.d | 1 + 3dobject.bas | 266 ++++++++++ 3dobject.bas.d | 2 + 3dobject.exe | Bin 0 -> 42420 bytes 3dobject.exe.d | 1 + asciitur.bas | 683 ++++++++++++++++++++++++++ asciitur.bas.d | 1 + asciitur.exe | Bin 0 -> 41142 bytes asciitur.exe.d | 1 + feuru.bas | 1283 ++++++++++++++++++++++++++++++++++++++++++++++++ feuru.bas.d | 1 + index.d | 3 + index.html | 149 ++++++ noschool.bas | 481 ++++++++++++++++++ noschool.bas.d | 1 + noschool.exe | Bin 0 -> 63998 bytes noschool.exe.d | 1 + pop.bas | 100 ++++ pop.bas.d | 2 + pop.exe | Bin 0 -> 42292 bytes pop.exe.d | 1 + scrworms.bas | 60 +++ scrworms.bas.d | 1 + scrworms.exe | Bin 0 -> 36946 bytes scrworms.exe.d | 1 + ufovisit.bas | 377 ++++++++++++++ ufovisit.bas.d | 1 + ufovisit.exe | Bin 0 -> 45170 bytes ufovisit.exe.d | 1 + 32 files changed, 3734 insertions(+) create mode 100644 3dland.bas create mode 100644 3dland.bas.d create mode 100644 3dland.exe create mode 100644 3dland.exe.d create mode 100644 3dobject.bas create mode 100644 3dobject.bas.d create mode 100644 3dobject.exe create mode 100644 3dobject.exe.d create mode 100644 asciitur.bas create mode 100644 asciitur.bas.d create mode 100644 asciitur.exe create mode 100644 asciitur.exe.d create mode 100644 feuru.bas create mode 100644 feuru.bas.d create mode 100644 index.d create mode 100644 index.html create mode 100644 noschool.bas create mode 100644 noschool.bas.d create mode 100644 noschool.exe create mode 100644 noschool.exe.d create mode 100644 pop.bas create mode 100644 pop.bas.d create mode 100644 pop.exe create mode 100644 pop.exe.d create mode 100644 scrworms.bas create mode 100644 scrworms.bas.d create mode 100644 scrworms.exe create mode 100644 scrworms.exe.d create mode 100644 ufovisit.bas create mode 100644 ufovisit.bas.d create mode 100644 ufovisit.exe create mode 100644 ufovisit.exe.d diff --git a/3dland.bas b/3dland.bas new file mode 100644 index 0000000..35fe728 --- /dev/null +++ b/3dland.bas @@ -0,0 +1,314 @@ +'''''''''''''''' +' Let's see if we can make us some 3D graphics! In Basic, Hehe. + +DECLARE FUNCTION maxval% (v1%, v2%, limit%) +DECLARE FUNCTION minval% (v1%, v2%, v3%) +DECLARE SUB hline (x1%, x2%, y%, c%) +DECLARE FUNCTION min% (v1%, v2%, v3%) +DECLARE FUNCTION max% (v1%, v2%, v3%) +DECLARE SUB pal () +DECLARE SUB pixel (x%, y%, c%) + +DEFINT A-Z 'set default var type to int 'cos it's my fav. +'$STATIC 'use static arrays +CLS 'clear the screen. duh +SCREEN 13 'initialize screen mode 13 (0x013 (19) 4 real) + +CONST SCRX = 320 'sort of like #define so I can use SCRX/Y instead +CONST SCRY = 200 'of the actual #'s in case the width changes, etc. +CONST CLRS = 255 'ditto w/ color depth +CONST HLFX = 160 'half the screen width +CONST HLFY = 100 'half screen height (both use lots, should save calc.) +CONST PI = 3.141592654# 'close enuf +CONST VIEWRANGE = 16 'how far before fade to blackness +CONST MSZE = 16 'size of the map (x & y are = ) +CONST MHGT = 4 'height of random mountains (TEMP) +CONST MININT = -32768 'lowest possible integer +CONST CONTRAST = 20 'multiplied by light values +CONST AMBIENT = 50 'added to light values + +LOCATE 1, 1: COLOR 200: PRINT "Loading" + +' make lookup-tables +DIM sine(0 TO 255) AS SINGLE +DIM cosine(0 TO 255) AS SINGLE +FOR i = 0 TO 255 + sine(i) = SIN(i) * PI / 200 'Convert rad to "hex" + cosine(i) = COS(i) * PI / 200 'Convert rad to "hex" +NEXT i +'Note to self: REMEMBER I'm using "hexians" (256) NOT degrees (360) + +'Layout of the landscape. . . just some random sample data for now! +DIM land(1 TO MSZE, 1 TO MSZE) AS INTEGER 'array containing landscape +RANDOMIZE TIMER 'use timer to seed random + '# generator +FOR x = 1 TO MSZE + FOR y = 1 TO MSZE + land(x, y) = INT(RND * MHGT) 'fill w/ random data + NEXT y +NEXT x + +'make a variable to hold edge buffers +TYPE edge + ls AS INTEGER + rs AS INTEGER +END TYPE +DIM edge(0 TO SCRY) AS edge + +'. . . and make an gradiant green palette +OUT &H3C8, 0 ' tell port whole palette is coming (otherwise # of color) +FOR i = 0 TO 255 + OUT &H3C9, 0 'red + OUT &H3C9, INT(i / 4) 'green + OUT &H3C9, 0 'blue + 'Hahaha! I'll never use THIS command again, + 'PALETTE i, INT(i / 4) * 256 +NEXT i + +' Initialize the player variale to hold info on player position +TYPE spot + x AS INTEGER 'x runs horizontally to player (pitch) + y AS INTEGER 'y runs out from player (roll) + z AS INTEGER 'z runs up and down (yaw) aka altitude + 'I know these are not std. but they fit better w/ the flat map +END TYPE +DIM pov AS spot +DIM currentpoint AS spot ' used w/i the program loop +pov.x = 8 +pov.y = -8 +pov.z = 7 + +'temp +DIM points(1 TO MSZE, 1 TO MSZE) AS spot'uses x and y as screen co-ords & z as + 'distance +DIM ver(1 TO 3) AS spot 'vertex: used for drawing polygons, x + 'and y are co-ords & z is color +DIM tmp(1 TO 3) AS spot 'used w/ ver for sorting + +BEEP +CLS + +DO + a$ = INKEY$ + SELECT CASE a$ + CASE "a": pov.x = pov.x + 1: CLS + CASE "d": pov.x = pov.x - 1: CLS + CASE "w": pov.y = pov.y + 1: CLS + CASE "s": pov.y = pov.y - 1: CLS + CASE "e": pov.z = pov.z + 1: CLS + CASE "c": pov.z = pov.z - 1: CLS + CASE CHR$(27): SYSTEM + END SELECT + FOR x = 1 TO MSZE + FOR y = 1 TO MSZE + 'in front of us + rely = y - pov.y + relx = x - pov.x + relz = land(x, y) - pov.z + IF rely > 0 AND ABS(relx) <= rely AND ABS(relz) <= rely THEN + points(x, y).y = HLFY - relz * HLFY / rely + points(x, y).x = HLFX - relx * HLFX / rely + 'a^3 = b^3 + c^3 + d^3 to find z (pixel dist.) + points(x, y).z = (ABS(relz) ^ 3 + ABS(rely) ^ 3 + ABS(relx) ^ 3) ^ (1 / 3) + ELSE points(x, y).z = -1 + IF points(x, y).y < 0 OR points(x, y).y > SCRY OR points(x, y).x < 0 OR points(x, y).x > SCRX OR points(x, y).z > VIEWRANGE THEN points(x, y).z = -1 + END IF + NEXT y + NEXT x + + FOR y = MSZE - 1 TO 1 STEP -1 + FOR x = MSZE - 1 TO 1 STEP -1 + 'if the current point has not been flagged as offscreen, out of FOV, or not w/i range of VIEWRANGE (z=-1) + IF points(x, y).z >= 0 THEN + 'seperate into two triangles + FOR p = 0 TO 1 + 'get points of tri. + IF p = 0 THEN + ver(1).x = points(x, y).x: ver(1).y = points(x, y).y: ver(1).z = points(x, y).z + ver(2).x = points(x, y + 1).x: ver(2).y = points(x, y + 1).y: ver(2).z = points(x, y + 1).z + ver(3).x = points(x + 1, y + 1).x: ver(3).y = points(x + 1, y + 1).y: ver(3).z = points(x + 1, y + 1).z + ELSE + 'sides 1 & 3 are reversed so will be + 'in same rotational order (this could + 'be more efficient - swap lables) + ver(3).x = points(x, y).x: ver(3).y = points(x, y).y: ver(3).z = points(x, y).z + ver(1).x = points(x + 1, y + 1).x: ver(1).y = points(x + 1, y + 1).y: ver(1).z = points(x + 1, y + 1).z + 'side 2 is other corner of square + ver(2).x = points(x + 1, y).x: ver(2).y = points(x + 1, y).y: ver(2).z = points(x + 1, y).z + END IF + + 'translate tri. so ver[1] is origin + 'of tmp, w/ V2 & V3 as vectors + tmp(2).x = ver(2).x - ver(1).x + tmp(2).y = ver(2).y - ver(1).y + tmp(3).x = ver(3).x - ver(1).x + tmp(3).y = ver(3).y - ver(1).y + + 'if we are facing the polygon (uses + 'vectors to find if c.clockwise) + IF tmp(2).x * tmp(3).y < tmp(3).x * tmp(2).y THEN + 'sort ver[] tp-bt + GOSUB sort + + 'find tri. height + dy = ver(1).y - ver(3).y + + 'delta-y for short side 1 + dy1 = ver(1).y - ver(2).y + + 'slope of long side + m! = (ver(3).x - ver(1).x) / dy + + 'find width at middle + midwidth = ver(2).x - (ver(1).x + (m! * dy1)) + + 'if long side is on the left + 'IF midwidth > 1 THEN + 'if width is big enough to see + IF ABS(midwidth) > 1 THEN + 'if height is big enough to see + IF dy > 1 THEN + 'delta-y of short side 2 + dy2 = ver(2).y - ver(3).y + 'slope of short side 1 (clause prevents div by 0) + IF ABS(dy1) > 0 THEN m1! = (ver(2).x - ver(1).x) / dy1 + 'slope of short side 2 (clause prevents division by 0) + IF ABS(dy2) > 0 THEN m2! = (ver(3).x - ver(2).x) / dy2 + 'calculate the color + 'colr = points(x, y).y - points(x + 1, y + 1).y + 30'VIEWRANGE - ver(1).z + 20 + IF p = 0 THEN + colr = (land(x, y + 1) - (land(x, y) + land(x + 1, y + 1)) / 2) * CONTRAST + AMBIENT + ELSE + colr = ((land(x, y) + land(x + 1, y + 1)) / 2 - land(x + 1, y)) * CONTRAST + AMBIENT + END IF + FOR h = 0 TO dy + ypos = ver(1).y - h + IF h <= dy1 THEN + LINE (ver(1).x + (m! * h), ypos)-(ver(1).x + (m1! * h), ypos), colr + 'xa = ver(1).x + (m! * h) + 'xb = ver(1).x + (m1! * h) + 'x1 = minval(xa, xb, 0) + 'x2 = maxval(xa, xb, SCRX) + 'hline x1, x2, ypos, colr + ELSE + LINE (ver(1).x + (m! * h), ypos)-(ver(2).x + (m2! * (h - dy1)), ypos), colr + 'xa = ver(1).x + (m! * h) + 'xb = ver(2).x + (m2! * h) + 'x1 = minval(xa, xb, 0) + 'x2 = maxval(xa, xb, SCRX) + 'hline x1, x2, ypos, colr + END IF + NEXT h + END IF + END IF + 'END IF + + 'if long side is on the right + 'IF midwidth < -1 THEN + 'END IF + + 'else is too thin to see + 'LINE (ver(1).x, ver(1).y)-(ver(2).x, ver(2).y), 255'VIEWRANGE - ver(1).z + 'LINE (ver(2).x, ver(2).y)-(ver(3).x, ver(3).y), 255'VIEWRANGE - ver(1).z + 'LINE (ver(3).x, ver(3).y)-(ver(1).x, ver(1).y), 255'VIEWRANGE - ver(1).z + END IF + NEXT p + END IF + NEXT x + NEXT y +LOOP + +sort: +'assign tmp the values of ver +FOR i = 1 TO 3 + tmp(i).x = ver(i).x + tmp(i).y = ver(i).y + tmp(i).z = ver(i).z +NEXT i + +'order them top to bottom [1st pnt] +flag = max(tmp(1).y, tmp(2).y, tmp(3).y) +'used to skip 3rd calculation +topflag = flag +'assign values to the first vertex +ver(1).x = tmp(flag).x: ver(1).y = tmp(flag).y: ver(1).z = tmp(flag).z +'make y lowest possible # 4 further compares +tmp(flag).y = MININT + +'order top-bottom 2 (prev. top is now -32768) +flag = max(tmp(1).y, tmp(2).y, tmp(3).y) +'add to flag to find which of 3 is not used +topflag = topflag + flag +'assign values to the 2nd vertex +ver(2).x = tmp(flag).x: ver(2).y = tmp(flag).y: ver(2).z = tmp(flag).z + +'use topflag to find last point in order +SELECT CASE topflag + CASE 3 'used 1 & 2 + flag = 3 + CASE 4 'used 1 & 3 + flag = 2 + CASE 5 'used 2 & 3 + flag = 1 + CASE ELSE 'just in case + BEEP + flag = 1 +END SELECT +'assign values to the 3rd vertex +ver(3).x = tmp(flag).x: ver(3).y = tmp(flag).y: ver(3).z = tmp(flag).z + +RETURN + +SUB hline (x1, x2, y, c) +FOR i = x1 TO x2 + pixel i, y, c +NEXT i +END SUB + +'''''''''''''''' +' Returns 1, 2, or 3, depending on which value: 1st, 2nd, or 3d is largest +FUNCTION max (v1, v2, v3) +r = 0 +IF v1 >= v2 AND v1 >= v3 THEN r = 1 +IF v2 >= v1 AND v2 >= v3 THEN r = 2 +IF v3 >= v2 AND v3 >= v1 THEN r = 3 +max = r +END FUNCTION + +'''''''''''''''' +' Returns the largest of the three values passed to it w/i limit +FUNCTION maxval (v1, v2, limit) +r = 0 +IF v1 >= v2 THEN r = v1 +IF v2 >= v1 THEN r = v2 +IF r > limit THEN r = limit +maxval = r +END FUNCTION + +'''''''''''''''' +' Returns the smallest of the three values passed to it w/i limit +FUNCTION minval (v1, v2, limit) +r = 0 +IF v1 <= v2 THEN r = v1 +IF v2 <= v1 THEN r = v2 +IF r < limit THEN r = limit +minval = r +END FUNCTION + +'This SUB does the same thing as PSET only by writing directly to the video +'memory which *should* be much faster (Muahahaha!) +' +SUB pixel (x, y, c) +DEF SEG = &HA000 'A000h is where the video mem. starts in mode + '13h, which we're using +IF x < 0 OR x > SCRX THEN EXIT SUB 'make sure x is on the screen +IF y < 0 OR y > SCRY THEN EXIT SUB 'make sure y is on the screen + '(We do NOT want to be writing directly into + 'memory somewhere we're not supposed to!) +IF c < 0 OR c > CLRS THEN EXIT SUB 'make sure c is w/i the color palette +y& = y 'needed to prevent overflow (where's an + 'unsigned int when you need it?) +POKE y& * SCRX + x, c 'put c into the right spot offset from A000h + '(pixels go lt-rt, tp-bt in a linear fashion) +END SUB + diff --git a/3dland.bas.d b/3dland.bas.d new file mode 100644 index 0000000..705fe25 --- /dev/null +++ b/3dland.bas.d @@ -0,0 +1,2 @@ +3D Landscape - ADSWEC Controls; a good example of what a 3D engine looks like +without important stuff like clipping and rotation. diff --git a/3dland.exe b/3dland.exe new file mode 100644 index 0000000000000000000000000000000000000000..a658ae18827cc03bc3b4ad575ef560eb994fca4c GIT binary patch literal 42306 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 literal 0 HcmV?d00001 diff --git a/3dland.exe.d b/3dland.exe.d new file mode 100644 index 0000000..eaf8ee8 --- /dev/null +++ b/3dland.exe.d @@ -0,0 +1 @@ +Compiled. diff --git a/3dobject.bas b/3dobject.bas new file mode 100644 index 0000000..16ef1a3 --- /dev/null +++ b/3dobject.bas @@ -0,0 +1,266 @@ +'default integer type +DEFINT A-Z + +'screen mode 13h +SCREEN 13 + +'set palette +'. . . and make an gradiant green palette +OUT &H3C8, 0 ' tell port whole palette is coming (otherwise # of color) +FOR i = 0 TO 255 + OUT &H3C9, 10 'red + OUT &H3C9, INT(i / 4) 'green + OUT &H3C9, 50 'blue +NEXT i + +'define program constants +'CONST SCRX = 320 unused +'CONST SCRY = 200 +'CONST CLRS = 255 +CONST HLFX = 160 +CONST HLFY = 100 +CONST PI = 3.141592654# +CONST FACES = 11 +CONST SHAPES = 0 + +'trig lookup-tables +DIM sine(255) AS SINGLE: DIM cosine(255) AS SINGLE +FOR i = 0 TO 255 + sine(i) = SIN(i * PI / 128) + cosine(i) = COS(i * PI / 128) +NEXT i + +'data types: +'integer vector (for initial shape data) +TYPE vec3it + x AS INTEGER + y AS INTEGER + z AS INTEGER +END TYPE +'real vector +TYPE vec3t + x AS SINGLE + y AS SINGLE + z AS SINGLE +END TYPE +'a face +TYPE face3t + 'object vertices + ov1 AS vec3it + ov2 AS vec3it + ov3 AS vec3it + 'world verteces + wv1 AS vec3t + wv2 AS vec3t + wv3 AS vec3t +END TYPE +'an object +TYPE objt + p AS vec3t 'position + r AS vec3it 'rotation +END TYPE +'a pixel point +TYPE vec2it + x AS INTEGER + y AS INTEGER +END TYPE +'a triangle on-screen +TYPE face2t + v1 AS vec2it + v2 AS vec2it + v3 AS vec2it +END TYPE + +'make a 12-polygon shape +DIM shape(0 TO SHAPES, 0 TO FACES) AS face3t 'holds shape's form (obj spc) +DIM obj(0 TO SHAPES) AS objt 'holds shape's pos (wrld spc) +'make the viewer +DIM pov AS objt +'make a variable to hold mapped 2d drawing data +DIM tri AS face2t + +'load the shape's data + 'base (-y) +DATA -10,-10,-10, -10,-10,10, 10,-10,-10 +DATA -10,-10,10, 10,-10,10, 10,-10,-10 + 'front (-z) +DATA -10,-10,-10, 10,-10,-10, -10,10,-10 +DATA -10,10,-10, 10,-10,-10, 10,10,-10 + 'left (-x) +DATA -10,-10,-10, -10,10,-10, -10,-10,10 +DATA -10,-10,10, -10,10,-10, -10,10,10 + 'top (+y) +DATA 10,10,10, -10,10,-10, 10,10,-10 +DATA 10,10,10, -10,10,10, -10,10,-10 + 'back (+z) +DATA 10,10,10, 10,-10,10, -10,10,10 +DATA -10,10,10, 10,-10,10, -10,-10,10 + 'right (+x) +DATA 10,10,10, 10,10,-10, 10,-10,10 +DATA 10,-10,10, 10,10,-10, 10,-10,-10 +FOR i = 0 TO FACES + READ shape(0, i).ov1.x 'read first vertex position + READ shape(0, i).ov1.y + READ shape(0, i).ov1.z + READ shape(0, i).ov2.x 'read second vertex position + READ shape(0, i).ov2.y + READ shape(0, i).ov2.z + READ shape(0, i).ov3.x 'read third vertex position + READ shape(0, i).ov3.y + READ shape(0, i).ov3.z +NEXT i +'read shape's starting position +'imput strating pov position +pov.p.x = 20 +pov.p.y = 30 +pov.p.z = -70 + +DO +'draw the shapes +FOR j = 0 TO SHAPES 'go through @ shape + FOR i = 0 TO FACES 'go through @ face + obj(j).r.y = (obj(j).r.y + 1) MOD 256 + 'transform @ point from object to world space + rx = obj(j).r.x 'extra 2-letter vars are for + ry = obj(j).r.y 'simplification only + rz = obj(j).r.z + + vx = shape(j, i).ov1.x + vy = shape(j, i).ov1.y + vz = shape(j, i).ov1.z + shape(j, i).wv1.x = ((vx * cosine(ry) - vz * sine(ry)) - pov.p.x)' * sine(pov.r.y) + shape(j, i).wv1.y = vy - pov.p.y + shape(j, i).wv1.z = ((vx * sine(ry) + vz * cosine(ry)) - pov.p.z)' * cosine(pov.r.y) + + vx = shape(j, i).ov2.x + vy = shape(j, i).ov2.y + vz = shape(j, i).ov2.z + shape(j, i).wv2.x = ((vx * cosine(ry) - vz * sine(ry)) - pov.p.x)' * sine(pov.r.y) + shape(j, i).wv2.y = vy - pov.p.y + shape(j, i).wv2.z = ((vx * sine(ry) + vz * cosine(ry)) - pov.p.z)' * cosine(pov.r.y) + + vx = shape(j, i).ov3.x + vy = shape(j, i).ov3.y + vz = shape(j, i).ov3.z + shape(j, i).wv3.x = ((vx * cosine(ry) - vz * sine(ry)) - pov.p.x)' * sine(pov.r.y) + shape(j, i).wv3.y = vy - pov.p.y + shape(j, i).wv3.z = ((vx * sine(ry) + vz * cosine(ry)) - pov.p.z)' * cosine(pov.r.y) + + 'map the world-space coords into a 2d triangle + tri.v1.x = HLFX + (shape(j, i).wv1.x / shape(j, i).wv1.z * HLFX) + tri.v1.y = HLFY - (shape(j, i).wv1.y / shape(j, i).wv1.z * HLFY) + + tri.v2.x = HLFX + (shape(j, i).wv2.x / shape(j, i).wv2.z * HLFX) + tri.v2.y = HLFY - (shape(j, i).wv2.y / shape(j, i).wv2.z * HLFY) + + tri.v3.x = HLFX + (shape(j, i).wv3.x / shape(j, i).wv3.z * HLFX) + tri.v3.y = HLFY - (shape(j, i).wv3.y / shape(j, i).wv3.z * HLFY) + + 'check if clockwise (backface culling) + x1 = tri.v2.x - tri.v1.x 'make (x1, y1) & (x2, y2) + x2 = tri.v3.x - tri.v1.x 'normalized + y1 = tri.v2.y - tri.v1.y + y2 = tri.v3.y - tri.v1.y + IF x1 * y2 < x2 * y1 THEN + 'order the vertices top-bottom + IF tri.v1.y > tri.v2.y THEN + tmp = tri.v1.y + tri.v1.y = tri.v2.y + tri.v2.y = tmp + tmp = tri.v1.x + tri.v1.x = tri.v2.x + tri.v2.x = tmp + END IF + IF tri.v1.y > tri.v3.y THEN + tmp = tri.v1.y + tri.v1.y = tri.v3.y + tri.v3.y = tmp + tmp = tri.v1.x + tri.v1.x = tri.v3.x + tri.v3.x = tmp + END IF + IF tri.v2.y > tri.v3.y THEN + tmp = tri.v2.y + tri.v2.y = tri.v3.y + tri.v3.y = tmp + tmp = tri.v2.x + tri.v2.x = tri.v3.x + tri.v3.x = tmp + END IF + + 'find the color of the face + colr = 255 - shape(j, i).wv1.z + + ''fill in the 2d triangle + 'dx = tri.v3.x - tri.v1.x + 'dy = tri.v3.y - tri.v1.y + 'dx1 = tri.v2.x - tri.v1.x + 'dy1 = tri.v2.y - tri.v1.y + 'dx1 = tri.v3.x - tri.v2.x + 'dy1 = tri.v3.y - tri.v2.y + ' + 'sdx = SGN(dx) 'sign of dy is always positive + 'sdx1 = SGN(dx1) 'since they've been sorted top to + 'sdx2 = SGN(dx2) 'bottom: sdy = 1; ady = dy + ' + 'adx = ABS(dx) + 'adx1 = ABS(dx1) + 'adx2 = ABS(dx2) + ' + 'px = tri.v1.x + 'px1 = tri.v1.x + 'x = 0 + 'x1 = 0 + 'x2 = 0 + 'IF dy > adx THEN 'the line is tall + ' FOR h = 0 TO dy + ' x = x + adx + ' IF x > dy THEN px = px + sdx: x = x - dy + ' NEXT h + 'ELSE 'the line is wide + 'END IF + + 'wireframe + IF colr >= 0 AND colr <= 255 THEN + LINE (tri.v1.x, tri.v1.y)-(tri.v2.x, tri.v2.y), colr + LINE (tri.v2.x, tri.v2.y)-(tri.v3.x, tri.v3.y), colr + LINE (tri.v3.x, tri.v3.y)-(tri.v1.x, tri.v1.y), colr + END IF + END IF 'end backface cull + NEXT i +NEXT j +a$ = INKEY$ +SELECT CASE a$ + CASE CHR$(27) + SYSTEM + CASE CHR$(13) + SYSTEM + CASE "w" 'forward + pov.p.z = pov.p.z + 1 + CASE "s" 'back + pov.p.z = pov.p.z - 1 + CASE "a" 'strafe left + pov.p.x = pov.p.x - 1 + CASE "d" 'strafe right + pov.p.x = pov.p.x + 1 + CASE "e" 'jump + pov.p.y = pov.p.y + 1 + CASE "c" 'crouch + pov.p.y = pov.p.y - 1 + CASE "f" 'yaw left + pov.r.y = pov.r.y + 1 + CASE "h" 'yaw right + pov.r.y = pov.r.y - 1 + CASE "e" 'roll left + pov.r.z = pov.r.z + 1 + CASE "t" 'roll right + pov.r.z = pov.r.z - 1 + CASE "r" 'pitch forward + pov.r.x = pov.r.x - 1 + CASE "f" 'pitch backward + pov.r.x = pov.r.x + 1 +END SELECT +t! = TIMER: DO: LOOP UNTIL TIMER > t! + .01 +CLS +LOOP + diff --git a/3dobject.bas.d b/3dobject.bas.d new file mode 100644 index 0000000..3d6bcf1 --- /dev/null +++ b/3dobject.bas.d @@ -0,0 +1,2 @@ +3D Wireframe Box - ADSWEC Controls; can you figure out the fastest way to cause +an interger overflow? diff --git a/3dobject.exe b/3dobject.exe new file mode 100644 index 0000000000000000000000000000000000000000..472eddf039a96e5e9bd5277f3ab4967a83bf9714 GIT binary patch literal 42420 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 drR w +END SUB diff --git a/asciitur.bas.d b/asciitur.bas.d new file mode 100644 index 0000000..c23f167 --- /dev/null +++ b/asciitur.bas.d @@ -0,0 +1 @@ +ASCII Turtle - awful ASCII art. diff --git a/asciitur.exe b/asciitur.exe new file mode 100644 index 0000000000000000000000000000000000000000..47ff5f7908e6dfc6e345462f7ffc780c5360d7a6 GIT binary patch literal 41142 zcmcG13s@9Kws3X#&@&9Hk#E3~F}o?tj1k z`+Ml_dYn2{b*k#rsZ*z#)w!RdH3%UR9Yms7p)`a0BHW>Hd#>(ZXuCISyEkgPH)y-F zwB4E7?hI}BYHjxlZTC`b_hRh};Z(Q;N>Ov+9sUm&=|P0h8NXB!E&}}XgW`kYr^JWF zPmGC*)k9b<2EyqPq7d@K??^uy6-zD$IpQ~6u}<*^)Qn2~N~JIifv;-M>)$*LK?tQv zF#0mB8R;A7BJlAv!Dq^%uZa3eJ>mmZHKM3@(k}p{iHyIV!M~#7H7JLFUZpSB*2h+m z=*X(3X?z61ze*HP-M>eCKFPm8T6M3Yvfw|W;qu`6SXNgaJK|!$I8~=)E;zaq?7{N> zs^BpGO^Sa_lUPqLLI|=5We8+a>&@yVOt_v^FJ^dhB0n5bcBZ^_)^CW)XHdBvmje+- zxvqi61Z<$sBP7<-nrKvZ=EQ#Fr1j8fM(TtOQF6flKmdOp=|%n9NN-7jx*3D?m4C+d zd=C=C>kzy+K2e*K!=DU*>X^|9Gis1GP19z^UvDfs1EnZKdN%kucqEpifB|DXRm+@X z>dRXzevQ~>$5rYy|AdO7wWO~~j~WrL zmYrdn^;B>fN*E|_Kea2i+lv2!R769bO@RJ-$v-|0Q9yVSvd0A zw_zM_M}{%{Ze&pKG%`?p2=ZYujRADOi$&o^Sq(t|@`JH}PW!vqWU64ilS8B_Fqt$e z!9@TB1rRkd4Cd($#%O&2{RPrjp24jrl}g#s`G&qte+Iq5H9g$fl>8bvxg#r1Ko=^f z&8TVGkrhqT^c3!FR;_FnJm^_0;L}}D%_2|%u|i)t1EPXskiJYEhxAF>7h-Ejg43H* z3K3}_xEcf=+?Fz9tiIyY*mzO@x%z5s!a(O#b}wNI)t8sP600Np478=5y7mL7D;t9y zogB2{wb+x*vAi0c{34cDpp$1}c@haqeVvSHE^qI4`m5y$1JDW1#h$tzdrW~FM)IG> zp8j{$VXWE}%O<*GS?JN_r#sa;VjZb7uae0u^{LnTICYpS!Cp?+#|}WR6ip$l`g$yz z(iQ9I?yq9iJh;F2x^IJf!0R3a_ps#lBnx2Gy%5wF%g;ir8qH!;$XR>@stf)ymcQu# z9H3U(P2(yq$5tw4RVrsS(5hK5WKU*rP#)_ND9;nJ5le$q9(9;J!4Cbs@-V9W8>-x{ za~=DLI29h%U$yL5AUahvy}v5Kej)=MdmMcle(Kuvs`xJWqqu7W4YWZgL!3*i*2=>Y z?8g?NQwa4RIwnUaqtK}gpvJLKbTS^D+5%2C@e3&FDkjW7@j2w5xF2pC++}c=qspCx zRc#>3vN)K;;y4Br(;nWy%!07$3(I3!w*e^)|8i!HRTn=+r}GICO?b%X+&DoyAjD-#v8_( zlsJH}sP*`<8xj15@dmYtE`d;_DS;5A;aA=bN|l0A`GuotLvUJn>_#Enfps}ab=8Dv z+<}}iC^h5F13B-b)N0a5R#R`sqBl7w4f!IY!bw9Rkf1WB#KM@F-842DLN|GQIv5;n z{2OgOZ(JUFqs{(C+toKNx4rRA3XGPDGw3bAHno}(CUtbKXMX^uoAFJN``CDN&7HI9 z8M|pxHSzW=giAz9V=Uzh^hSy93zT}5I}+HWNtPQj3!k#6cR*!zdgR9CK^jkakj50p zv&f(_i-bvzVPwMIlz0?xdg zUy2G;{3cWoE)i9j!zUuccqzO6S|h6VQ;H_Cdh**lfDc3NsovaEO@90gWPs+_fx;zd z7{%jGXvB}9+~y%w0R!bK)R{-9!fAsLH5qC%*%WLZksAZeBMPI^JQ84#n@3cIVE@MD7%HXC40_?c$ z^)P)%jTM4S8xlH>5KY0xpd+X$xMTzo1-;hNT{D4e3O8y<+|8PTVX(y?(KH38nnH1< zH3=6>+a2E<10kOMFA26Oc!lX!`Dxt%{i;l3gkGpe3XcCgu#qnv(|F>M>HIqA(cbyT zG(}>a&@;vXKYRx1oOl{D8)c$C)lXjz)1{t;d6Sc7Rsao;5=A4$X9V)}I4NZ~Om2MF zgzg2ZgtPk6z)nr(8ojug+>mGCWR`B3sh2yEH=VyGHV)9Ufd>(d)j?1Lvf5Ao_F>e0 zYy$s<3h)4X5=~=$2o?PAC&0vgV1mA$zJQRH|9pgx9|_a);)ps7`XPU4EU=NMnabyM zm1QvT?g!S;K-;8exo$VOU(h`-YoK4!QK*!j9qmu+qZ90X%fn?;!u=OaiRzpDr1l?wVY35gPn`Xa;rE7U zX5H(1QX8ST-~V~slUkh=R{fyxU_t!-u`yE22R}=5Kg|Eur_K6TDGvNUEC1d{|)iV|EjLdKkH5Z zzf1Rjhkx1Mw{|a@*gu~|4<3Io?C^XLdC}iz$EOmoq>v#cQmHjC4acL$kDzbGV;j*) z1v<6PpASIC-X%_M^*?1N%g$)E^72;KyH(d*VVn!g;~=^Ep_A+UPaT;44g`+?FTwJk zNv@~p{V+wt%ZBK3yN=Z&BtI5_Uaoq%>e?{KM|NFBII4UL=_(>n+~vT}PH?lX~kqQXnp<`4N%Jq;0M7B2IrGXBflktP^!*o5_JX(nyTR z^EfRHB?4YYEI)Z*y51&BKF(J--=mq&tvx_rEKgcX2NE-2Hh5GY)T_Vt>_W zPHo)#fyn3w5^E~w;5|Ps`7r~X{B$8XJDkhZW`LAf5GpZsGcv091FH<`oD6;pDv(#p zG5a413(MnR0aBrwC5$O=1>q7g=L(b+G6YlO&F+_xGnhndq71PqG)gVETZa4!rc>vr z+VWN$6CgtCS`#5LU4F$1V6YmZ%P(62Sje&l!wU6uc`JV7rI{$E!lI^|v_dAHr5a9w zVcAxy7UJ$kc<^eyc(tQ=wSYI#a+-wo2t7+*p_s+ACbb))^hB^?7OW>M-;W%(mx9~oN!zsbucFI%_lgRz(!c&>MrUtS)v zV(p5u74<6+dSrM@-j%MP3CqTNuj%9QZ`Sxd zqrW-h=Zs%GK4p9c{Pv7rF+LEU^y}8?WO483iQV?r!Ir3OlNZW7@D`yuym>nj{+g=R6e7YS5;M2 zXTSrNoDH;=LCB_^%*2b1PPX(rO{I!q|9V2>`haczz@{@I^GJAMoNxgP9K$#Hv9nK9YVaslV13RT8jG7W1>ji*RwC3%gjiHLo?)M<(o_b+>l007 z2qOlom|&ntI`lHVha`Gi>Hdhf(~!PG&r~jh8ftfq(c*TkSS8a#LBsSFtC&gy0sI1M zpNs+eif|x1s$2y^c!dEtqfxDgN@0+Sop?3NY1Ls#^kl}k6HiD$^57jv{O`cAW*1{n z7t+qtp-9j;PltnM!FgJV1ex>n5@bx{(~vOJc{&6M!O{~zWD-cK1Ojq>Bp-LUcJ zK7g7u6|W20vaG+)Yhi4FVl6lt^lSByl+agBiiT-+zS)&zm}_<|-ZjSTdKS8p>p2r+{vmZuRyM7b z+v;MI20#aNDkS=3L=@F)Q^o(-DO=#`e@DJKe}leaQuLdk#?l~uyJ#HLyVW7ldJ*#A zpmdsOSmtn$7w7Rc>MoFQlXGQcu34Lvy`E0A>C&-+E0F)$=hP)gpefE0xT<5HRieT%{5CE$248Muo zv>7KpT(xj+OQGL2XZIG8uSCMYVg6}!ZMb_asZF?8-hS{2S(Nj5E7g+$B3I5@aH$kM zxnW%9nk+3W16M(rw6hs~j5Z!d_#!CaL*NNcVB!ZrC7H~yZatMa7pkM5!+;JjfNku5 zm->miv%>Tf>#Pn3Zx!nf%ioY^b4r!t)x)!br$FvbKR%sw(O#K z0y;jGGRH%TxlTi}es1Cd#uS+WWP@^8fp#{htwA3{Copcien1DAQ#2H0Fh|d%%w;S? zL?IP_k<*L15XM~(D#dtaZA^3g05i-C=h~V9tl7ehs6KLza-{v=>7-~$kcfu`n!u8MSmoO%Z7sL(R8c9Pw@Oe1+JHQXk8qZ{8 zg6=eq0fP8RtzGgx;bU#4Sp7jg(|mQH%hul9881@M%yc@V2i^js2sG}dfFoq0EoB9a ze<3K*1``@)ZwYoSh*^KgkcHu?4UYwV#SV0AEYix~4@aip_hsnhE)8(xCp4!%V%B8$ zzmvZ~P@epVVK3GAYnn8t-eUUS;b8XqHB-3**eFwJWGYjb$~jB}9S=M%v4J)c1W}pF zR4!yNlb+2aR_-Dy6Pftyj;ob(8Cq%;m=fiGl%~XFrs5@LS><-7au-wa3b=MMmAe^z z#V#h*!Rsr_!MWSxe1YN6oQKh(r3*6CAI)C0Y$aN@WbGo9wR8b`Fz&&XOEw@E$dT-& zMTeDkqat~pQI;HT>Px_y>b)r59?)To*3I!V!Wd%v`u}VS)Y<$1FbDtxlf#Vx@pefM zDRc~RgWSoQNy503pG^|RoIEs1P@JrtBv26n}K&L)wBSJaZ8LL+=TfAuDg4Fpb^OBQ*{g!F7CgWKUxID%GNO61+ z!YY}G9tl^2fcJG97K}g>zNZT}IWb3kPiHnQmUs)yUdoY*?Xo0#yUaK|ETHR;MY#mj z^;mUc*CGMx*p&*tROmWyA>cI!QH=ueuk-;k1sq``Fox;V3~Zmgg|u|}H)^@%MxfrB z@*z5P1i6&gcdLQX{{>ckvIR%xRtaMzp8{FxmG8o3=^4i^mPH3%RbJH}{17$?s$nCB z{t(H-;_VlJA7|5iIl8{ZHmJ1gpQFb`@1B+1Yn%yLkB=5vE-KJ9PnKqy>Djh1t%Ujc zcd;^LTqrSmQJ8-~FKQ1@=U1Y?ihMp2Qfv))-y~;p--jk`4S`y&vS(^Y#Mhu_YmH-0 zkVxO`1)fibJt^0#XyVju5dZ#)E8<}5iCz_+KI^ASv<&}Fv*`;LV-*xO#S>--()0Mvs<+z7t>E(H3b~Z^NG#EM<>1+b#3%?Q$g>xlBbr|RKgR?|{Kns__S%eI!oVb|rQxm7oow{)9qf>Qp zew#|^Y7IbFCP7XdC^#8mL?hrnjxCI)|UYT;CTmrgC4+O>3K>B<3)F!_}<;OuTf z9*ewwoZU?bTxn^@;1*eKLWT(|A6m6&Wx_4_ty>8R35yr6T=7ua;-v}85|%AnHf7ne zM%()`>^3wq5UCzDjG^087zrVwc}0QNK~f?mz)Q8s*M3tnY2#gkwzp{Iy;~ z1N)uO3*+@LP#uIt4ur*cbgLk-ns^TM#vrc60#W`3sf>}}kXF(Ze>E9KC`|B84R?|(+ZeNg)#4;7bh2d{ZvwqdZVrY%=7rum zAeE#0_xwt$7H=JD--EnQ!(ER~1fu63C15jEEqC>O#I#wpu&rp-9zqpys4^DztY#q4 zIhE7LV`04y+6+Auwk8%T9UXr?p@SXKffgyMIJp?MmbfC}7S)>6SkMg&(2lXxAr8ip zfC#L%`oqzwusHN@nuZ0@!-&qwdowd*q9Soor(27mMLSfF~s3$CF<$pM(co+=KUmE$zs8(b@dTEEs34%n2n*I9qz| zMQ1Yk&l+27Ji%|07B$wf{_*_ zqur<%{gSv!*eSCd0<~xs%FTRq^^){CiWwnD6`%@uD{c3}`jkCM#dDmq+a4VM!0WM_ zV}6)^D0*Blk|~s+G=s~$hLGOykRdaeh!lIgqUf;{iH*R1f`A<)e909`{{R&b7}3}} zMy&}PJI?Q!wCLxe>!X366ErPD^U?g&`R4id3+RI8LimNae$+4PSM;k~$VIqF7gdak z&8N_*)GO#p_)TM^X-AXfv!L? z&`$MIE=r`t;`w2La*8n9ul5eQ+#*h8P7T*6WaMa-a2dT9VDenJf^gf#M;>}oJ8|QHYqt}!NNt0m!vISwL1OLjCDCVkDx~oLrf)#?)$Om z61qwJ3GE?1LXQxS5jnzNj|HJTc0?`j`;Zv{$$;80R%{U}VCgdxl_5^k7WG9seF@eo?BTU+yB#BmZi`}LJC=yJJk7QvEm2x|DmRggBv zB`-7vC#M@HC$BPUlQWGG!giPfo&%E+PI`+Xe&by{&s*bt6Y#dA?AOtl@x$()#|OGq zs1+{BB*HT6X9zbZQ?R`$(q%eJy`SZKzqMJ~&y6m2HvbdDI=WwS!ycrEAWBOeEfK^t zu&KMZ?XxH(EQ(!#wJ9(g=0@;mk#V|BmK+HMWc6cl(r_){}Snn!{Q zKTKPpXFpmPp|?RXT7F!suXsV1a8d7sg;wtG`R9-!9cXC9G<=5Ty|K>z+}{g{-3F20 zh75z2k#&Xr_oZX`nkck#_js^L8AxnW+0NMhj`@4(!iW~0Z36wAaf~@xZ&EnAsqVBD zrk>KT*mlVOC0)z+Onbsv{-(b4E3i`O4ifbhZ|NGl^JLviD7H7f{4y(P$l1a229V!% zN#HX*^$2LnO~2AfuV3hs5|y)zGoD{8g1%i+p_`^ufQr7?(nFSCPJ%&gO7Vs#@<#Oh z5<;IuD`puV90k_{I5h}s`SJ#x1h1C%m!W_8@r#hqRDH{%s|GE;VwMnBe!0AXZD8t` zRU)K=8y0CKI6zh|1uZ|;*H_Y5$uBQ!Ex!!TK`txXw>|JLHUl>2bD&{^)hTH7Wvp6; zI@RTEc(WntjG>pU6@GvyQ0Oyi#Vpt$FwhW8vbABHtp!GdWCE5qa9U=ZT!9EIB(1b1 zrXzFL&i6D%a`p?#dQi>{oF*Y!Nz4mGg|Q#YE?$k==>hsLDZ2Ulf(aGlrC8A2X_+Gd zpfb=hO`68;M}7opZ8Ad}e=2+!XQF~kq60zFI1xs&)Sfx`ix zKj4d|Koy4?aWXX|(?`-iO(9Mgx)ur)Js;`cev5$_{zC@UkecIffwHzqlM5IE0D~_{ zBikk|-ofO+Y*fM^E}UWhE?gq$8YQcly8bPB}6`rI%9UbC4(HDIU!?GG%=`IxT8?pp#Z zEwMg_8*;eJv=#gh2v|`8!P!F7Rsj2%t?V%V2KdJAt;UV;GH%1}6ypN?nr@84 zK}zf%XY?NuG`7%qQSf&zCV@`9Z0KNEK8P<|Sx4#RS3yF4RbZMPkqNq{hhv3lO-ZrA zVNDO~ji_nvkT9+(NhXYGdRQhXAVQ#;9+HLS=kZ@f6v&z$Y2})d-_V|cWwFfiy{u^- z^hGd<;}-&J9x?{w+882CRClVFv4%az`yti=b#Y}w%?>Y5o(1X##z>|w;4{%?gI_?$ zZUQV|K$q<7*gVJqa}P3uDne;a_6Ln>veG02p7bM^QD*1Ip`6ByvSwZ>y<1`5FbBxm z$}WW>J}_%6;+IFl4ru&!J{TFsvaNg|G6cNryz#O@Mzt2)8vKbnynJ^sKdU`9&JdXF zzl)BQ!_zOR;im#BeZdemTNbyJ!n&S0J{*dJ48#iu*gd}_8Lz0U`vFNTJf&nB1 zUO2rZ_}t(CKfXNWN#3?_;WnJy8_&J=*=MhDzW6}-m`Taown+dOUUG*(1`<4oh6(fI z;^KDpUiJEmw-#^Ry7kE$U3O1-Lqa-|ZzOk&!l!Q8xwm-l&Mm3P6Hid`u;MU~-n@P& ze@IA3kyK)wA1tNef|obGxTB-vw^QKq_*1sVg(hy@nixuNP4UnN!a=Mn#=;#=KZ*|s zde;wG_~OBNZ+;-)(Z#e!)Wh(AA+9*iM?dUGTefV$*gg0VirOY_i@NJqgodW1NZEVJ z1C5swDmC9d<&(g@<$=}-LB8?;?IbyS6klRuaiVlf`KeSXTOZq!LM_^wqEdPBJ+_rr zg(Pg1;=yPO)&~(3;Et1;TS}j@^~tAxTd);c%adLenykXte6K%c ztCV1?ul>MJX(?(Ho>prUw-wVg-e<+-DTdZ4x+gv~4*WnxAO2zqpQi#CJ_X0!6OY~V zDcDl*m0zmrJ@xhap}JCjQf+{Ic-7;j2lOoX^ZK{oI9y||AMn%ARPg742mez~J+)(t zuY3yJeesa-#uq_vPk|d_#Q3!dk3kI|OVE1#dlT_^NJ!l4^%o~RI6Havg9$!*dHiv4 zyYEf^)YgQlUO(g{W#`KeI-hj;>K`a|hr8pwAR#d^IWaMzz?*)z)P3&e2dt!n!4qERq4))pz-or}wHYz$0YKjPl&xE~ zjMh(0(=Y(;!UI^!*5bSIp^5Qvd+(ty#3uoG3Jn|_;{*JONr2x+U+9>jc>MYL7fmC` zf~Ii~@WLlR2N;EyfbW3^{9PjOu)F0H3mTj(W8I3SidITvISo490 z{M0v|pvgjZ!tKisoS0inTmi#Nap2wQ#h?+ zSjTyK#dh$!&zCFb|8%gawXZ!X!XfMR!3->>%_r{IZPYTC#s4pJB ziz$lo`nO!&x@~(%+zyUbh2iubf5MX&!T@9xU$RHS#D0XPByLZ{(wQeegus`$-RmE_ z_}-sVz5dX>Kc)Jc!h3(1U*3C-`UgFsUjJaos2@Znd<{s?L{E7jYxjNrpTiH(qwpR$ z-_x7k{j>N1+AUQF>hFad^-JXf{Jwb48;zFFQ|^#3U%c0kCmXm%%ZmjrxJK(6=JR{t z&?vkoToTak!iRxT6TOm6iKh{EaAfA9U;KPTCIy!J_kDsE!+h4TB?)78&d+(MlaiLzn zhnoS*_4$h>r8_)5>7hk%ZR#KWtC-)~6NI+QZGH^gCPQww&<} zcQ3va>GGzR@c14CSifP$nmYf`p+oZ#m~cwAp^9d5BjJzK5KBn=RvDAp(&!Pz7I)J zecmWu4jT*Dzzo~AY0DbRJJ@saKQ3p795?Wf8nRuAA6UVD@A%I1W4>p;kB9w#Y&?&D zu(1dSF&~S}j33~0QJ&*G{(&)BI+I*&kSAX$q|E2dN7Xu3_FP?y-8Ma{c%UBilh_ax zYzSMCBES-Z?|6j}(&v6-ijAW;E%E7j?4VD`eY^sz$dpH!Ey`RcO z&Kv9?Tko-f2Yq*!9HRl$&$LJABK(wfU{k=haQ`+TdmgfN*MeEkMSBz>kue*$C|`%F zspF@po@(-Bdng>SMP_L2<26*zaWD`$t$X_k1R8Ps@grcUtI)?s3b3E3TMzX&O66SzOpFB)5Cgj%G&bVvM-%=*Z!sTX0xsE`#5UN#)DBm)-5)G=$@n zS?j+_dHuCXsdrPFNl(hVL*w+a3Cr(IiEU#(yEfg^Lb!b>smc3r3mqSAA+9C^vF*^5 zE$pBmzb}o0_qD2&=5DKU_kmG^?0M)~3mo5invnW8C^58rfv>p_!SBm1ZtDe+O zPyc;7Eg7)?LrWY)slJx*rOcRwRwn(El-DP&oUh5L@Ugdp$ZRI_2?ek>oFmTjA5(hz z&9ZOj&Y!XIBVWI{FQuon|CrL#ZxAv=D)W3%lzQAjaFbUdPYqDP%Tl#RmnrV+H&}s$ z^ZlPvj@DEA^LjdNuva9W2fMHM2h61h|0uVmQw|0mzm5bu@Y#`U`|%4@4|D+C{;9wq z_*amyjDH?>A7NAISCPmxk!@wq9Y0T1`}HiWCVN&?D|%Q5%W=sv103`9Y*3c|CQ@ki z!o=Gpm}+rh5BIS=rV$6rj!;L5i{Hg}+|=3TMclb~v$<1w#r?&;UQZsz@y-S?xF(wg z8wVRq@5!)@8ENAz%-dR&5d z;tCOgp%LJA2k1GcBON5WR|-*vD@ z1yxQCG)_t$Yn+g*F-@c;^S2YFNN1DFqqdl62}Dc;)5||PZ}_2u`pREN;&MVdV+deNpjXOr!X`6h1Aa{QU;8vRymb&rkuQZylz~^SL()p)&g!;V1C+mWyr*kNFRd1PmK$ZZy8c7eVg%<6?Vckt=b5h; zf`M>hcU9VHTH@+ER)Y6^0>pctA}lT%hkw>Mt|M@=%u#rRtP;2o!H6g-+nsMmtQ7(nXP3Y zXiuc4VySr}xE@;_blayRWhQc< zS!as|`QQ@~$_hnaEwp|LR1Mw}8F4A5Z|<$!ebH+nm;WJEE+mS#xA32c5tx=(TZ`P23km6=8S50=G_(B?U(r`-*p9&+(9D3iFt55p@CAGsx zJ}eM}2auhBkw=%dLxlN7rWQs^X*<&nV~GzXJmU=pSjayaU{g@{@6bOPVQ}E$&-aZl zuo{EIA-hAPC^$%DB%=sr+7A(MDnykEwJ8n-)~5=GPU{_mFbd3}1xlSQFrrEMg>HXf zCeUYhXmcl)h)Ose#&0jP(;Twje zNg9&(BNpoJNgMpnl1M`nWBi9g33Y6`i_IF=AKV?9OcuyWuDKByyU6fJ(O2vXbzWn8 zSqIc_H`GsljFMNo;Ug6!RqcxSzU6zW&;2>BaW75|B|IMi#+&$!ht>XV?)|%Z*vo)6 zz?n7-Q-chf*IM&?VcPm_DC9DR%^wEw4;w0iz{f%R5--Aj`fo$aPwOiqrh0NU{hGyw zM_BB_;|nAsiE%K!`U(JHwa__ie;tlsTO~|zXsH&g87No^=-EG^NZTb_S7eLCM>@yC z2mu+o{?I)fB%;|9c=`|~K06}iNg5t7hGt|sZaQvCGys_#ko)A)93dpb7cA8zXH>@X z$?bP}o40^}a7TbEV(LHTbA7gJ|Mx|_pV1W%`u*CdsXlIZ26MYrgqxF^&(ml!cOx_< z=70KwQByO3_c6fua!M~tRi#V;V6X%|gAS9!(Pr#|7>O5tiFx6_WP_tDFkZB^Hg}eA zGp0)2IeMy(Cr+P=N#gB3q=WbI#uLa>ZeWmS^7z-0x2Z`t9KVuSWvP!<=1Qf`T$>FO z;pW`DoYE_vLc$9(?C&sl1je{xlrdg3Y5*d7s*eq>5WfGE@|8ehh|{NHhG_HlY7^P~ z{oKCXeQGJyJzP-oV}|D~oSzx@0pNb|c0S(4ex3a<#!M@F2@jI_62AZ*;fF^~u{31b zBd$Z1-`Scjo_VeoIvgGgd1e<`pah`_h6pwZ#|ITvce`A(0Ft-I*cuk)El@Be<1wku z%UP7vzUvwX23Egj_D+P?cBWXPPfFRr?DdD&PNrD;ut-vE5%FSDdl6aM4hJjw7*tUo zTWO1gLt1ouET4sR7FvyH_yERu5K{RU;L9R?F%9(X7}&z9D2uIh#en#D#v+WfY6oKy zE;8C-`>Fuaqa8(Y+Sh`hK^$U?!^{bKiJWYKptU3l_5=8hM51i_( zVoz65wacoWUqU8yRQb{P?EFhrsV`mYXSpi;O`fo0{^;a0k@!UV2Ov|qVk|ewsxWR% zmcGITIfDh<1r@)q2EO#<5c4;{kpmjmE~jIkFC^Kp(l&lBX_(}Kj}pCWcA)-uEIWEh zu!*#eD{TYY>PEP`BhK&-o$}a8J|bfs{2vLv>=b{5Fc6L1^qCC!)Ce3evRT9uy~VAu(8Xd=wg5MCl?#qPQ_3`e#G zFsPC2ItXVt!f@BWU^(rFPqnq#u7VAsfPNULQ=1-PH_=I(6a^XL5}MkiH28tXKrx#X z5lbeNFH!0C!*`PSsh_i(WY2QOlX`z`YBbm=b=C=g8K{%lo*0j{9;ETO;5SgGFv;qd zs2>@q)0loQya&!D!tglGrXJ;YJJk-1IzQ7?rqyeLLyK%`L z(%H)PN}3Bt7l>9;I+=$v!m++5A}#gdg4)3s$N^t0po2p-VDsMt20%3U^7A;bJA$YF zU>uy20s}-iF7+dIdRbEKt}*%;SivqxauibhtDkXMQaf7GdP#mNAuVC^xe66Z#UCQ0 z2V!>X;GAJL4K|R&qdjNQr@03IGO$3T!}u+C@BvIXlc4sP4t74JPf`!Y6#hr1c8#T$ zwhSo>Dfl`TAnt?y%kCosL}PZ+n8Kgf35>%stTarqPN0S@4KnNcVb%c(CF^<@H3S}J zNXVcZ=GBCm8aA&M%?t)&SG(B>r5CL0Wu;$R*OR3egxG|OTy>x)Z#Gzg?OA2z?ZPV= zyylKUS!Su@v25TUs4j3p}0SrXTUXpMmC92S_aT12v%8(rob z#m{F9N%@@6z(E8RV$@2sK>9qvG&q+7hDwu@ie;t==Ig~t^#*m)=|W|K-72>(C9O+k z7LLC5WjTE3psWo{olb&cDaXM$$C#{r@!GO^&w3NiBpOu@&<0f!| z7O>q4u>9073+jajAZ=d^X2B<*IXU=@3ajdzgs~*aO}AO-wpJNitL1xJ!V201V$i1$ zl)f=nA6uHJM*P!vz*m|$BbwiNr~5{2791gs=byM^2*3jvMsmP_sV5&!Q}R3Q@29$q zN_|Pny2+C^8kL;SrOMV;hn`$FnNR#UY_l{Y!h8V<=G)n3=jl{roF=O47}FF{UC->9 zP;rK-tYa$9F_ra<-l9&8PUVjw=V|!3-uksiWK9~d2K5Kcfl3Dl(-r~=^p&(uUkZMZ z$JILhe!T`BiNWv)4$%RF(n7cbhbwXTI2=A+r!N7-NXBnQxqy1mIAiT`g8U(O0KT5+ zxY}%Q{(Ez4bE^X~HlK*r!N&>t2?)#=!6FfO@a9vvGv&Zhm35QjuQy*U2y%b%>^Z2o zKj4IKn+TNRNpb&l{IQO14jQ07)&g4;1c*CW7^wNu@5Bpma0Ha+Sp>$z!D*rq>G=OW zha&Gi3|Xz{O0E7BAC9b!>RKorkz5Ez1u1-JQXN*UIR4Bgo~p*@BU9_?L%MJ{?V}Un zNYV(G;W>h7g!7W>S9EZE%&k78GmeExsw+I_0!R~5faxa8YLE`s2+mw$7}MY3by#QW zS_{o|;cvM@r}tEV5nIW>Djgg6BODSijsdIcQu>cNedQ}UVFCb2X9y+&LMRP959>%= z=y*F6b|Khm!?Z7|-_ilrg(u&K^P^L-Njlh!zpgWllNuXNJOjbtR2x6|Ssu6#>R|49 zTc?(vdPV2@0M2j%@A$LMKti9iLioHWR7in&eAhx-9nJ!GU{0Ewo%BI`ieUym?53^Q zAIqL`d}~!7(0RUNV^#lI$M<}Mw*?HpDg)4*Vb5vRNc>8L^UJ?3ML3}`GqDF-NVV4M%W>emQj{zRk!54*Ita_;`DMc!yXoX-* zitrIUv^cpiBv~+mtoAsT*FdwVnGUBTpCeG}LipCjtAB)0xWfN-605h7?9|yQ<+D@Y zI=Yj2?}N|Z{8j2#f4(3t58HjZCG~1qxB2YS<1fFrp#1XCn8-ED5k!!cqMVk;x-8J_=0xr+RdEm<|7KgWl z#*#0=5t6#c{ySz zrX%LFn8+Bvm>V zm{*u;<{joC<=>ckrkQDHt}{K1lObZ2u|ct+vC*;m*oR|NW0%LSjm?YgoMDgPqs~V) zMaZIuqQ~nF&nS85@rTYo{NfzftdkFX^uWHj!w+tY51&0{cH!(b#BL&FVxHz!P&@G= zF>TyQVq(Zb4LmO+{A28 z=n;EW4Uq~rj(~#=DUXwo%nC2~9)$-Dh(6MhhsQ~e-Nd9nWq!VcdFY5fbqbiBC8(d}sMBn78+z0$f# zVO>I7SIexcN$VJnU8S%LX^NF4LxjCp&De!KM-{x^#2RE4o?t?UOkKM?1St z2JRw-$z(R^(%V0^$jQh8a~{;?`Ty_JLyEgIv^Lofl5tCZ#;nK9Zt5>6}@t_=!Tq&N^*byhzPjJ|r+Qp9v>uTjO4Fs8FrR^W%d0w>uR`MN= zR-ykGVecHVu2xt#(bgp(a+1~w9s-6JCj^|`mn@Ye=o3|hb}LD4gzrlF83XW%BAU6# zo)#uE7oj&mpb6T=c~MY8$=;Z79GMw=_hAImk}_1ek$^+(>^j=qttr$fIc3AkFEJOP z!bSb&Zv#80W}OtpmeVcv77%tK&m`1F_9a{js8?Q5w%P9F-))CSaXSQg+hHMYhk4Ep zgGx|-OhlYfwqeRct5`0gJu@Uajwu<2mXXhcBS54up?jNXJKtOzze+h!3m@$1&K3uS zW(iIXL}~>hK}&&vOLFV8pwH=`-33=12A`553uMOd&w=7AV74f*PnEJ^nMG`bF6M z<+@))>~LtJV8 z`?bEiM32KnpWr2WBqqAn*=iUggb2@nOhjH#*7}LX(AR>7g4%){LEXFgKS(qk=llxF z<)h3+WcdnhhMDK3s^3>xZYrS0S=psMY&wjH)P1o~=_Q^@d-5gIVW{~TRpuduQOBBz}HI6g1<53XgHq~B#dS3)-+^IBduvNIM{35rRc6kC+DEZTM6eq+JEO|OTFCU zmYe7!$VLhzOEMj-`_a9$a?1WB!FgOnu#w&JJv+QKve_hqGcW%Mn7@caGZ7?aQi%DPax*^c`ZMb6Tk?-}V8ul-g z5ByySq#CRX=+J7X9O-3Ip@4!+E(I!ZyFzc);vJ`z~kG8HrNlC^`=Z z&&jB&(V(hoRFxygz?s?FwQz{0^?qcZjcmxt4cnYI3Q%^MZ4){U08crenN3UJ4WoHW zm_f|~Di}CBigC-Oq)v`x1db#XsW8-H?N2tv4Gb{g#$K03S`+Pq?LmlwUbzCRmu5_%DYnG*IwO z@46zf!c6?j1eU!D&Atizn?o4#zNC%(*R zFoi}72Kj{V3zv#KK=V%xk3!#zqR|tt=06(|E=%7`(9-JPcQeEBKFk zr6hL(F~NWpU=o-|JUBObXpqymMuL%%iIu+~;ln#kfg2hVE4GmDo8j~-9M%&^_{3H{ zy@f=LYqVv}<*hXtBm+eJSe0Opl7CEHyvnM#kmm0ilsueJ+yK?X6u}w7$w}y`UV(w1 zL13zH$ZM38RR`GGveW+vL=kUF8Y&-=yc8+B1ZP8`@MRavPeW6>z!v9T!bo(L+7b@D zX|tr<8}3%wg+I0O0jt6j>Lfq+{JoQ4Q3b+8l@~`o6f36@&&@YLcIfm>UhGDNZI#lJ zj7))+y>J56|2_D`0k-Q2B<ZtW)~CeUW#4iXIm$S3VupO^eShYWbY}AWBp{v@-?2- z%uq9`xqVRy=cbC5K*i+yRz(dqUvmh}?aBsQKUfjmbhJX%+hF<_btxAs?|L@7sxW(~ z#T)|oKbLUPQ`?}U8bRfu#)RWnMIgwQG0JsH$2sOK+Xkmz8%~IF;pObI)-tZV1O73< zIuPA}49$0*->0nl*stY#iefhswy0_ZP21vd zI4=JD{gPB3iD|if8Eock8)-{tV8BLMz(z74^f-}fJoJf1`1Ae2CcooAy%#-sjpihC zpJ~31^MYyqcE%Aj%S~0~R3qWltn7O`Tp;dnf!+=W?S#A8E$C)HO8gDi)L!0k=Xs+7 z>i7ZM3Ki~jG*>wUxIoJe_A^lt z_`=Hs^vQKJrWw8tfWvnvRyHK*J!$GwgJ1g($qCDkB`;NbLJ|6E$tAB7+n?Nf?f2M@ z7Gq3*eqG89e|P{Dcggaq{qn#?pqsikh{*@>QUjr>=l}llpFq=v!vjBF>GWZvT7Qde zI;C*miUz0f#Y<5r8;r5wf(VeW;<0Hcws}ElpLY36QU2IPpuf56{}Y=x;%lQAyvgGt zQ0s}go+3biQY94uT%$oZ?!cPqvv)52w&(GUpWyY=(Px*sjB#TtJn5yU8ABf!e!TiG zQ{`RoWrk5VhX3irN?BUgvxhNc*N(QZ&-{nGG0gM7edx2iXTBN0FvVXzM0S`9zQ8b; z`gbo+Jy0qRd0!&qA&HK=M{5k{%p;{1loEw9t-qVqDm5l@4JD*f@I4uPjbBU6PW2+w zZXaz}w5s~-qaJ94UQ~BY_CO=FW>?rK2|kYv@CDzu!juR*8uLp}iKPFSa(p&!1AI6J zq5tNVy%e?FlgH{!5e>dZh{_T+8ohZu^1%-u2YE5wxnvIXWqtJN>l$w`TARh<#aF;O zS-?8lG}SU98poFu1E<_OhMgFYO$KDk0ZN>iwy!CzH# zVu%5^AqZmjr;RkExqyBD6$kF=?H)k;(?r&f-9)mhW$b#oKFy8HJ4D6aN&C~>FvE1( zuGofbO}6iCmp+vu_T4aV1LmlKg&t()FpMn~Kt^{2O`Wluy%7NX}(~T3F zx49k7UIqx?Uq~f(xr9Ji3f;i8Y}%jU3vX4=0^Z)99$eLl5~;jf9Y&Eyp++JKjNLn}s^5{oKH9y$!fZ32n4L-3@IA zEr^?MhSYoyCvkg;m+_K1h~k#v@I|TME6#wq_bLrcRY>wS)_>gDY?xEB4^PY?LS)ux z6J_4XH-t-5Sn(L#IvqX2R+zjhA#p1B!CZ>}v`5IufQV8jf2oIGC5a~?o8hQ+z@uQ; zDUk{0q%OQ-^{pKXC`bF!5)pa^DSRyT1urFD1vTRepF0sXD3<$fGjeEjvl1LZ^X#2G^@qH3(I8e@9qh z3@uf{kl&wn2c(az0oFt(^%YXgr3GN);~bbkpm9z6(_PlI;S6aIc8+D&%VwtaPRj3_ zly!U3u7PWP`OYqDTF*-_JG*d|*d;P>oB_e`rB|I#&{RFRnEc);>3vhuZcoV?0CN>< zdLLL5K~Bzr7o7vl#i5|nLFbreYu4bT^kH+p3*DDh&!qg`Nm+f9cHNe;`q%mNOiAyZ zlGZmR>$Ww&$C};?mVH0V2Mm^o^ue)N!z$I-XHD<1ruF^|DK7l&N$CTY{6S>N2L%jN;#ENWa;L(B`P!ftEf?fq z(t4(3^@1pL(P^R`eDh`KtBtl6wx3G79h5&1ls*`=Yj|9i%NW@Fz2mZ%iCq@c+>A&L zc-e>(#8WoQZIqov=7lB0FnFl$scvXptDhCrE1(fH(bn|}TiTudOO&GnNK(jQo?tJU zDKQ4nS|C#_&j|d(@Fn-hLFCTji|%A+W$|4@B53aLA`$D|Fbi<=nL|P!Od+5ApZ2Z= zDykz**M0PZ<{^TD59n@C35JIzYLD9ZNCG68L`9=BlBjXAdCX?BnFP8;H$>WHHV92} zVjh}=%}$6j<4#O=G&AmykVH(Y#1M>Vf-*)$S53E95pmKWBE4VTuB+X4L$iB0duBNU zr@Ef^ue$Z!`s=@c)%}Y{c+0u^986NuNv}GTGMgo8U~iwtH(f2%+y(A?q^YH}ySFg$ z0T`0I!?FCN^Mu@%Yzi3Yi=*(Hs(JhKM%qs-1ZSX6wN(p z`!*=@J$+&!{Skidot$vTT^J@FtIj)f-IyJ~B4O_Nd2L#;_W5{e;oZ`#1;yP>kN0@R z;Mju&W7o8q7ppNpes8{CEQ%~>H810f)CDbOvEW;;=lzYkm-l zwLi75bu$hHWpQrr8(VEDKjS~ysliz9v90aptk8ds>&mQnJvv?+_cLgL!N?t6z1YQQ zObqYQaOuV9vL^f>{?<;e4(~(z(vCtNuJ(}zER)gOIb03NalJ^epYCWKVe#Meydi{Gp`}nqWwgmy_PUp4P}WfP`st1!sDv zoWr`Lb9^tXs@DmvrfQ_&a2!a53%6@bhf>ya`GvZ-^M19>LyIppH6f*tTh4q9^9{^@ znE5N1{~+`8ng0;;>E|UCoX4WggRv_+_iszlA}EKpi#v4Cn^)8ybh^)cI4t=v|GE3j z$L%Ef5Vj$H{*jJ!p2RDm;J{L-SCgMoksUU{Mh?`K=jgVJh-nYC9&~=I+ZlZeY{9%} zQ9J(~hJs_7>4zGx+Q01lUic!W8TP208<327GN$<_G;4#s1Nmj$ou`E3v0W=@foD9z zuGl}vc7Fy+XX&M9H_G|@W4kEtUDfNH?-7nrO*7ui4-)J>$EbT+ke*JDem)B9Q0C+ZzU!?k?%+=| z>8F|A&qjLRbS8YY)9qa0NjvBb;@6qyu^)m@gE=016TI1;Z_xW_`0n@6F%Xy!d;w8$ zxnmo_Mz727N#`Jt#a!F=rqq60qB$`K=2Y_&S0=87tyCdtby8i@=Si1!Tl7f=qKqj^-B60-BZE?;c5I9eYO5BLxX;s{wPAVdI`V74OPuJ8$) zXKqo9WdxM^SJl?&ln=^R#Z(@b9!vQ^5>noO1F=6*`<$LFGZKW{2q9OC%zNYzl&8{c zAy-G!nx(07NR7~~-a_MqTv~!&1#cuJ3*FvJb#%F8iWHCHmCYM%-JF%%^imzoq8Vds z*XnQz)|*~aTdph~JNJ@XQ2V_JHPcD*9=bW}bz0_DAI%>tvuR;MWz$Q$K8qms6X5Cx zK9Z6$J-^LQ_!Bh+>m=2W@&f7*?FTI2;Aw96F5V)buu=?K!-cMUJ7iD%OX=PS>|JnO zy7H==kkR4wYk&AuO~$#XA+S5$d!nsl+TKrRanm6AnZHj zWI7**^E(gKfu`91(Y>y5$r5Rp^R)};hthf-{dUnZe9c8E94mn;a(OFFuwHiT%tPs? zaPs0}dI45^E)<5Bw&}tzST9S%nl3;y>s);S2~8IYF42{T(!D*dOi%SA{8k6x$jA$( zGr$vTN6i*vn#y0#P9u+;B`U|<|(o56r>93|& zrO)NsjAH5wsb|Jt89y$a=C&C}#os;gzPL8ySE`SB8i!>&&apRJN9d~i;x1P=al|Ff zOPZK8J!whO&y#8mB>5P=%KD}8jZJir|EAN(9;Hmrre7N=WUhLgMuhw6^*+Q~er@zd zf$fblo4wj{SCuU5zG!7x^d8qMN!PEpoiW(13DyieJhTFDM;|`%B94l@$X_cxzw)EW z*geowPgex)s8>J2&k>~Ike#d=d67U;;a18!rO6Tom%-Z6_i91;{3uChvYQ^~O%z2% zxZojNtV6|l{3^lqJ0eRJEYE_~0Y&8a`map5Xuxg1;zp;*Yk01^amr%`$srkJ0w2kb z<~v9y=^?#D2UDq;++6Nqu7rD;dzbr=`;7ZDCviQTK|4Xyt>weCVU^kq+KpPH=2p#E zF-6>76uJeKST4RM{z`mL+#%M9 z4Pvu+Qamqqio7aPHA*#3m8qJc%2vIpx=qXy?-mz{%f+9Ih2mOq7Jna~&p*MxuWC}c zRb$n2)sLww)W27MqgJ%Dy>pb1XAZfu&O`2j`!O6o;s2LMk6)Q`S=@mfVk@DCb~ez% zI~#D2%I5W4mFWcJ#i|AxX7XN@>FAB5^0*3=VF~3?C{zi7?RpBmiWb48l@Jx-y#x1ivg*K^pzm)zhJNBF3chlj6%!+|eo2m)wZLj(2KBpUUfucZ>efA zD6vU?v0;9(Io=rLxV)d}-MJci;M<;6ygl0^%M=k{iR;Auo6A@6lD;SjF@*MtRk;|*w}qa6RL1o^ieZ%fa+VbqKos$UwF2b1eUjH7&WW=gx?NA3I8) zZsQ9^Qfrk6i3Ot&YLL@7M`>;wFNMp=azw-lvnlI(vLgy&X%;BtMigif6dkZzyKSEo zR-{V%9A+lBg*_Ox$dg$k(33=Yv|&c32^Jn5+hV1&(u&Hx=8j^~BGLm{&0jbWZ7%+y zQS_LQ6j3hXvK`vGs z=bsZtK8j)lcwYi0|6=h3??+w&S^ha7z*_;G*luUV1_8EsMk)ksF|5}EVPk-Xf-RB} z2!xHbAPDp9J12p)`hUValY+MZ%(L$tWf=8W4;V%&YfcE*rm$jz0NW@=DgosRI560z4jydEq#pt{MQR9yjR6`8HbvGMlB4a`fx$Ly z@L(ImNQHonNiIP|5(a1}*c6#25H{9=o5vxTSKm1X*6RM4moLYn66SdCH9_j>J4YEt z{nZ1~X{vP zlvyGKY|1nf$Rrg}Gz4slOfw{5%NQ7J(+3Z>L`EtEY)o@_mjdlVnnQkb3&gQHD`}^?-Edz+js(c(5_eK`8ABlU#zprih}xy%gki zTajsoBy5ug2HVWRgH4&-LyR^>ItXNviYOWaHbtfxlCUXSE5AMn)RLG74>lts6#_OU zxda()4A4+aQjuu_VPh=_!o2#L*(uMYxYn>~22DN7b1U{lsS0%2o-hGLS6OcMwjYe5j^)pw4f1niG_ z`Su}Yl1xeuQcvGG$}sA$9*|bFR=!mRVUlwO4>qPD2*o6s z*c7dmUmq+BP&u&owjdAA0A3BK&VtD_wg0;{y1zl)-`E}C2>ri+y7me7=!{Sebp7>j z*#1Akw(nu=(Z4UavapThoadQGura3eJj}z<(>U|;cCS!3X0>QM`c!S>%w3JsR-9{` zmV3?{ZE=2b498!eS^g#6MDenklA(K1#@w|3WCU3noz(>-B`tjW_Xd^fS}Za2hy0 z+&H)iaFgM%uZlE&_0=r;aVGsX6sF9`ZE(Zk=;yky2}N#)LxuA9tn|CvB)C*K`c>#C zIQqTkL^%3^Dn3Le)8Odmrv|w3aA|P#IGC|;>2N=S%Yd5>mk38U{Ls&nXTVK@n+a!z zGs006u^pYvhQn4fx()seInI;UMRLEI2wL)S7 1 THEN GOTO 9 +oldboat = 0 +boat = 1 +PRINT "you trade your boat for a new one" +SLEEP +GOTO 9 +CASE "go n" +IF boat = 1 THEN GOTO 11 +PRINT "you can't swim!!!" +SLEEP +GOTO 9 +CASE "go e" +GOTO 8 +CASE "go w" +PRINT "you can't swim!!!" +SLEEP +GOTO 9 +CASE "go s" +GOTO 10 +CASE "menu" +menu +GOTO 9 +CASE "talk to man" +PRINT "Hi" +SLEEP +GOTO 9 +CASE "" +GOTO 9 +CASE ELSE +PRINT "no way!" +SLEEP +CLS +GOTO 9 +END SELECT + + + + + +10 CLS +m +PSET (15, 335), 14 +PSET (16, 336), 14 +PSET (16, 335), 14 +PSET (15, 336), 14 +LOCATE 1, 1 +IF oldboat <> 1 THEN PRINT "you are on a beach, there is a man with an old boat full of holes sitting on the sand, there is a boat dock, exit is n" +INPUT do$ +SELECT CASE do$ +CASE "help" +help +GOTO 10 +CASE "" +CLS +GOTO 10 +CASE "go up" +PRINT "you can't fly" +SLEEP +GOTO 10 +CASE "look brochure" +PRINT "you don't need to" +SLEEP +GOTO 10 +CASE "go n" +GOTO 9 +CASE "go e" +PRINT "you try again and again, but you do not succeed in breaking down the wall" +SLEEP +GOTO 10 +CASE "go w" +IF oldboat = 1 THEN PRINT "the boat has holes in it" +PRINT "you don't know how to swim, so you decide not to jump into the water" +SLEEP +GOTO 10 +CASE "go s" +PRINT "there is a fence" +SLEEP +GOTO 10 +CASE "menu" +menu +GOTO 10 +CASE "" +GOTO 10 +CASE "talk to man" +IF dollar = 0 THEN +PRINT "Leave me alone." +ELSE +oldboat = 1 +dollar = 0 +PRINT "you buy his boat." +END IF +SLEEP +GOTO 10 +CASE "buy boat" +IF oldboat = 1 OR dollar = 0 THEN +PRINT "your current financial situation won't allow it" +ELSE +dollar = 0 +oldboat = 1 +PRINT "you buy his boat with 1$" +END IF +SLEEP +GOTO 10 +CASE "give man dollar" +IF oldboat = 1 OR dollar = 0 THEN +PRINT "your current financial situation won't allow it" +ELSE +dollar = 0 +oldboat = 1 +PRINT "you trade your dollar for his boat" +END IF +SLEEP +GOTO 10 +CASE "give man money" +dollar = 0 +oldboat = 1 +PRINT "you trade your dollar for his boat" +SLEEP +GOTO 10 +CASE ELSE +PRINT "no way!" +SLEEP +CLS +GOTO 10 +END SELECT + + + + + +11 CLS +m +PSET (15, 315), 14 +PSET (16, 316), 14 +PSET (16, 315), 14 +PSET (15, 316), 14 +LOCATE 1, 1 +PRINT "you are in the water" +INPUT do$ +SELECT CASE do$ +CASE "help" +help +GOTO 11 +CASE "go n" +GOTO 12 +CASE "go e" +PRINT "you aren't allowed on the nudist beach" +SLEEP +GOTO 11 +CASE "go s" +PRINT "that man in the shop is probably pretty mad at you for that bad trade you did, you don't want to go back" +SLEEP +GOTO 11 +CASE "go up" +PRINT "your boat isn't magic!" +SLEEP +GOTO 11 +CASE "go w" +PRINT "there is a shark warning for that area, you decide to stay away!" +SLEEP +GOTO 11 +CASE "menu" +menu +GOTO 11 +CASE "" +GOTO 11 +CASE ELSE +PRINT "no way!" +SLEEP +GOTO 11 +END SELECT + + + +12 CLS +m +PSET (15, 305), 14 +PSET (16, 306), 14 +PSET (16, 305), 14 +PSET (15, 306), 14 +LOCATE 1, 1 +PRINT "you are in the water" +INPUT do$ +SELECT CASE do$ +CASE "help" +help +GOTO 12 +CASE "go n" +GOTO 13 +CASE "go e" +PRINT "a building is in the way" +SLEEP +GOTO 12 +CASE "go s" +GOTO 11 +CASE "go up" +PRINT "your boat isn't magic!" +SLEEP +GOTO 12 +CASE "go w" +PRINT "stay close to the shore: for safety" +SLEEP +GOTO 12 +CASE "menu" +menu +GOTO 12 +CASE "" +GOTO 12 +CASE ELSE +PRINT "no way!" +SLEEP +GOTO 12 +END SELECT + + + + + + +13 CLS +m +PSET (15, 295), 14 +PSET (16, 296), 14 +PSET (16, 295), 14 +PSET (15, 296), 14 +LOCATE 1, 1 +PRINT "you are in the water" +INPUT do$ +SELECT CASE do$ +CASE "help" +help +GOTO 13 +CASE "go n" +PRINT "if you want to go home take an airplane" +SLEEP +GOTO 13 +CASE "go e" +GOTO 14 +CASE "go s" +GOTO 12 +CASE "go up" +PRINT "your boat isn't magic!" +SLEEP +GOTO 13 +CASE "go w" +PRINT "stay close to the shore: for safety" +SLEEP +GOTO 13 +CASE "menu" +menu +GOTO 13 +CASE ELSE +PRINT "no way!" +SLEEP +GOTO 13 +END SELECT + + + + +14 CLS +m +PSET (25, 295), 14 +PSET (26, 296), 14 +PSET (26, 295), 14 +PSET (25, 296), 14 +LOCATE 1, 1 +PRINT "you are in the water" +INPUT do$ +SELECT CASE do$ +CASE "help" +help +GOTO 14 +CASE "go n" +PRINT "if you want to go home take an airplane" +SLEEP +GOTO 14 +CASE "go e" +GOTO 15 +CASE "go s" +PRINT "a building is in the way" +SLEEP +GOTO 14 +CASE "go up" +PRINT "your boat isn't magic!" +SLEEP +GOTO 14 +CASE "go w" +GOTO 13 +CASE "menu" +menu +GOTO 14 +CASE ELSE +PRINT "no way!" +SLEEP +GOTO 14 +END SELECT + + + + +15 CLS +m +PSET (35, 295), 14 +PSET (36, 296), 14 +PSET (36, 295), 14 +PSET (35, 296), 14 +LOCATE 1, 1 +PRINT "you are in the water" +INPUT do$ +SELECT CASE do$ +CASE "help" +help +GOTO 15 +CASE "" +GOTO 15 +CASE "go n" +PRINT "if you want to go home take an airplane" +SLEEP +GOTO 15 +CASE "go e" +PRINT "that way is a designated swimming area: no boats allowed" +SLEEP +GOTO 15 +CASE "go s" +GOTO 16 +CASE "go up" +PRINT "your boat isn't magic!" +SLEEP +GOTO 15 +CASE "go w" +GOTO 14 +CASE "menu" +menu +GOTO 15 +CASE ELSE +PRINT "no way!" +SLEEP +GOTO 15 +END SELECT + + + + + +16 CLS +PRINT "you tie your boat to a post" +SLEEP +17 CLS +m +PSET (35, 305), 14 +PSET (36, 306), 14 +PSET (36, 305), 14 +PSET (35, 306), 14 +LOCATE 1, 1 +PRINT "you are on a beach, the building is to the west, there is a boat dock, exits are n, w" +INPUT do$ +SELECT CASE do$ +CASE "help" +help +GOTO 17 +CASE "" +CLS +GOTO 17 +CASE "go up" +PRINT "you can't fly" +SLEEP +GOTO 17 +CASE "look brochure" +PRINT "you don't need to" +SLEEP +GOTO 17 +CASE "go n" +CLS +PRINT "you untie your boat and hop in!" +SLEEP +GOTO 15 +CASE "go e" +PRINT "you can't swim" +SLEEP +GOTO 17 +CASE "go w" +GOTO 18 +CASE "go s" +PRINT "you can't swim!!!" +SLEEP +GOTO 17 +CASE "menu" +menu +GOTO 17 +CASE "" +GOTO 17 +CASE ELSE +PRINT "no way!" +SLEEP +CLS +GOTO 17 +END SELECT + + + + + + + +18 CLS +m +PSET (25, 305), 14 +PSET (26, 306), 14 +PSET (26, 305), 14 +PSET (25, 306), 14 +LOCATE 1, 1 +PRINT "you are beside a door that leads into the building" +IF ggone <> 1 THEN PRINT "there is a guard at the door; he has an intimidating air about him" +INPUT do$ +SELECT CASE do$ +CASE "help" +help +GOTO 18 +CASE "" +CLS +GOTO 18 +CASE "go up" +PRINT "you can't fly" +SLEEP +GOTO 18 +CASE "look brochure" +PRINT "you don't need to" +SLEEP +GOTO 18 +CASE "go n" +PRINT "you can't swim!" +SLEEP +GOTO 18 +CASE "play with jello" +IF ggone = 0 THEN +ggone = 1 +PRINT "you see beads of sweat gather on the guard's head," +SLEEP +PRINT "suddenly he breaks out laughing," +SLEEP +PRINT "a man steps out the door and says to the guard:" +PRINT "YOU'RE FIRED" +SLEEP +PRINT "the man goes inside, and the guard walks off, taking your jello with him" +SLEEP +ELSE +PRINT "you don't have it any more" +SLEEP +END IF +GOTO 18 +CASE "go e" +GOTO 17 +CASE "go w" +IF ggone = 1 THEN GOTO 19 +PRINT "even though it seems like the guard is not looking, you know he is" +SLEEP +GOTO 18 +CASE "go s" +PRINT "you can't go on the nudist beach" +SLEEP +GOTO 18 +CASE "menu" +menu +GOTO 18 +CASE "" +GOTO 18 +CASE ELSE +PRINT "no way!" +SLEEP +CLS +GOTO 18 +END SELECT + + + + + + + + +19 CLS +m +PSET (25, 305), 14 +PSET (26, 306), 14 +PSET (26, 305), 14 +PSET (25, 306), 14 +LOCATE 1, 1 +PRINT "you are inside of the building, a man is sitting at his desk but he does not notice you, there _seems_ to be only one way out, e" +INPUT do$ +SELECT CASE do$ +CASE "help" +help +GOTO 19 +CASE "give man bomb" +IF bomb <> 1 THEN PRINT "no way!" +IF bomb <> 1 THEN GOTO 19 +GOTO 21 +CASE "" +CLS +GOTO 19 +CASE "go up" +PRINT "a roof is in the way!" +SLEEP +GOTO 19 +CASE "look brochure" +PRINT "you don't need to" +SLEEP +GOTO 19 +CASE "go n" +PRINT "you hit your head on the wall" +SLEEP +GOTO 19 +CASE "go e" +GOTO 18 +CASE "go w" +PRINT "you try, but the wall won't budge" +SLEEP +GOTO 19 +CASE "go s" +PRINT "you walk into the wall, but instead of hitting your head, the wall opens into a secret room" +SLEEP +GOTO 20 +CASE "menu" +menu +GOTO 19 +CASE "" +GOTO 19 +CASE ELSE +PRINT "no way!" +SLEEP +CLS +GOTO 19 +END SELECT + + + + + +20 CLS +m +PSET (25, 305), 14 +PSET (26, 306), 14 +PSET (26, 305), 14 +PSET (25, 306), 14 +LOCATE 1, 1 +PRINT "you are in a small, dark room, there is a desk in the middle with a map. There is a strange button on the desk. You see a bomb on the floor" +INPUT do$ +SELECT CASE do$ +CASE "help" +help +GOTO 20 +CASE "" +CLS +GOTO 20 +CASE "go up" +PRINT "a roof is in the way!" +SLEEP +GOTO 20 +CASE "look brochure" +PRINT "you don't need to" +SLEEP +GOTO 20 +CASE "go n" +GOTO 19 +CASE "look bomb" +IF bomb = 1 THEN PRINT "it has been activated" +IF bomb <> 1 THEN PRINT "you do not know what it is doing here; it looks like it is set off by movement" +SLEEP +GOTO 20 +CASE "go e" +PRINT "no secret entrance in this wall" +SLEEP +GOTO 20 +CASE "take bomb" +PRINT "you stuff it into your pocket" +bomb = 1 +SLEEP +GOTO 20 +CASE "go w" +PRINT "you try, but the wall won't budge" +SLEEP +GOTO 20 +CASE "go s" +PRINT "you walk into the wall, BONK!" +SLEEP +GOTO 20 +CASE "menu" +menu +GOTO 20 +CASE "" +GOTO 20 +CASE "look map" +PRINT "this is a map, on which there is a big X and a large circle. the X is marked *where to hit*, the circle *explosion radius* there is a note scrowled on the side thet says: launch nuclear missiles as planed on specified dates," +PRINT "proceed as planned with operation escargot blue" +SLEEP +CLS +PRINT "oh no, you think to yourself, they want to blow up that critical target! I must stop them!" +SLEEP +GOTO 20 +CASE "push button" +PRINT "you don't know what it does!" +SLEEP +GOTO 20 +CASE ELSE +PRINT "no way!" +SLEEP +CLS +GOTO 20 +END SELECT + + + + + + +21 CLS +PRINT "You give the bomb to the man, he says: thank you, what is it?" +SLEEP +PRINT "before you answer, you run out of the building to the airport and get on a plane, just as it's about to lift off" +SLEEP +PRINT "as you are flying you look out the window at the island" +SLEEP +PRINT "a small explosion occors, which triggers several larger ones" +SLEEP +'sounds from M$'s gorillas.bas! +FOR i = 1 TO 4 +PLAY "T160O0L32EFGEFDC" +NEXT i +FOR i = 1 TO 400 +s = INT(RND * 3) +e = INT(RND * 6) +CIRCLE (320, 240), i, 4, s, e, .7 +NEXT i +FOR i = 1 TO 4 +PLAY "T160O0L32EFGEFDC" +NEXT i +FOR i = 1 TO 400 +s = INT(RND * 3) +e = INT(RND * 6) +CIRCLE (300, 210), i, 4, s, e, .7 +NEXT i +FOR i = 1 TO 4 +PLAY "T160O0L32EFGEFDC" +NEXT i +FOR i = 1 TO 400 +s = INT(RND * 3) +e = INT(RND * 6) +CIRCLE (340, 290), i, 4, s, e, .7 +NEXT i +PLAY "t120o1l16b9n0baan0bn0bn0baaan0b9n0baan0bo2l16e-9n0e-d-d-n0e-n0e-n0e-d-d-d-n0e-9n0e-d-d-n0e-o2l16g-9n0g-een0g-n0g-n0g-eeen0g-9n0g-een0g-o2l16b9n0baan0g-n0g-n0g-eeen0o1b9n0baan0b" +PRINT "you have saved eliminated the awful menace! what a feat" +SLEEP +DO +menu +LOOP +END SUB + +SUB story +SCREEN 12 +CLS +PRINT "You flip through your junk-mail, looking for someplace to go on vacation. . ." +SLEEP 3 +PRINT "A brochure catches your eye:" +SLEEP 3 +PRINT "Feuru - a small tropical island, perfect to escape pollution and cold. . . ect." +SLEEP 3 +PRINT "You book reservations to the luxury hotel, and buy a plane ticket. . ." +SLEEP 3 +PRINT "you set off, not knowing what awaits you. . ." +PRINT +PRINT "when you start you will have a brochure and 1 dollar" +PRINT +PRINT "press c to continue" +DO +LOOP WHILE INKEY$ <> "c" +CLS +SCREEN 13 +menu +END SUB + diff --git a/feuru.bas.d b/feuru.bas.d new file mode 100644 index 0000000..a62083b --- /dev/null +++ b/feuru.bas.d @@ -0,0 +1 @@ +Annoying Adventure Game - set on the tropical island of Feuru. diff --git a/index.d b/index.d new file mode 100644 index 0000000..9864894 --- /dev/null +++ b/index.d @@ -0,0 +1,3 @@ +This dusty diskette from ages past comes up and I go to the library and +read it; it's my old QBasic programmes. Remember when muti-player meant +you sit around the same computer and use different controls? diff --git a/index.html b/index.html new file mode 100644 index 0000000..1ae6d34 --- /dev/null +++ b/index.html @@ -0,0 +1,149 @@ + + + + + +http://neil.chaosnet.org/code/qbasic/ + + + + + + + + + + + + + +

[ Mælström ]

+

+This dusty diskette from ages past comes up and I go to the library and +read it; it's my old QBasic programmes. Remember when muti-player meant +you sit around the same computer and use different controls? +

+ +
+ +
+[ Dir ] + +
+Programming. +
+ +
+[ File ] +
3dland.bas (15 KB)
+
+3D Landscape - ADSWEC Controls; a good example of what a 3D engine looks like +without important stuff like clipping and rotation. +
+ +
+[ File ] +
3dland.exe (41 KB)
+
+Compiled. +
+ +
+[ File ] + +
+3D Wireframe Box - ADSWEC Controls; can you figure out the fastest way to cause +an interger overflow? +
+ +
+[ File ] +
3dobject.exe (41 KB)
+
+Compiled. +
+ +
+[ File ] + +
+ASCII Turtle - awful ASCII art. +
+ +
+[ File ] +
asciitur.exe (40 KB)
+
+Compiled. +
+ +
+[ File ] +
feuru.bas (20 KB)
+
+Annoying Adventure Game - set on the tropical island of Feuru. +
+ +
+[ File ] +
noschool.bas (10 KB)
+
+Battleship-Style UFO Game - dish out some DFA. +
+ +
+[ File ] +
noschool.exe (62 KB)
+
+Compiled. +
+ +
+[ File ] +
pop.bas (2 KB)
+
+Balloon Animation - why laser pointers and land mines should be banned from +public parks. +
+ +
+[ File ] +
pop.exe (41 KB)
+
+Compiled. +
+ +
+[ File ] + +
+Wormish Animation - a screen-saver wanna-be. +
+ +
+[ File ] +
scrworms.exe (36 KB)
+
+Compiled. +
+ +
+[ File ] + +
+UFO Attack - senseless, wanton animated destruction. +
+ +
+[ File ] +
ufovisit.exe (44 KB)
+
+Compiled. +
+ +
-- +π
+

From http://neil.chaosnet.org/code/qbasic/.

+ + + diff --git a/noschool.bas b/noschool.bas new file mode 100644 index 0000000..b6d6899 --- /dev/null +++ b/noschool.bas @@ -0,0 +1,481 @@ +DEFINT A-Z +DECLARE SUB pause (timeval!) +DECLARE SUB win () +DECLARE SUB die () +DECLARE SUB f1 () +DECLARE SUB f3 () +DECLARE SUB main () +DECLARE SUB chrage (z) +DECLARE SUB intro () +DECLARE SUB framework () +DECLARE SUB shot () +DECLARE SUB palett () +DECLARE SUB e1 () +DECLARE SUB e2 () +DECLARE SUB e3 () +DECLARE SUB e4 () +DECLARE SUB SCHOOL () +DATA 196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,180 +DATA 000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179 +DATA 196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,180 +DATA 000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179 +DATA 196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,180 +DATA 000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179 +DATA 196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,180 +DATA 000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179 +DATA 196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,180 +DATA 000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179 +DATA 196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,180 +DATA 000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179 +DATA 196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,180 +DATA 000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179 +DATA 196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,180 +DATA 000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179 +DATA 196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,180 +DATA 000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179 +DATA 196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,197,196,180 +DATA 000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179,000,179 + +'inputs + +DIM SHARED crt(1 TO 20, 1 TO 22) AS INTEGER + +CLS +SCREEN 13 +intro +main + +SUB chrage (z) +CLS +SCREEN 12 +WIDTH 80, 60 +IF z = 1 THEN +LOCATE 1, 1 +word$ = "ANALIZING SURFACE . . ." +FOR p = 1 TO LEN(word$) +LOCATE 1, p +PRINT MID$(word$, p, 1) +PLAY "o1t255l20b" +pause .01 +IF INKEY$ <> "" THEN GOTO 9 +NEXT p +LOCATE 3, 1 +word$ = "Welcome to Earth." +FOR p = 1 TO LEN(word$) +PRINT MID$(word$, p, 1); +PLAY "o1t255l20b" +pause .01 +IF INKEY$ <> "" THEN GOTO 9 +NEXT p +LOCATE 5, 1 +word$ = "You are controlling the UFO. Target the school's grid coordinates before nuclear counterstrikes target you! Arbitrary proximity sensors will tell you how close each shot is. Good luck . . . " +FOR p = 1 TO LEN(word$) +PRINT MID$(word$, p, 1); +PLAY "o1t255l20b" +pause .01 +IF INKEY$ <> "" THEN GOTO 9 +NEXT p + +9 +'IF z = 1 THEN +FOR h = 1 TO 20 +FOR i = 1 TO 22 +READ crt(h, i) +NEXT i +NEXT h +END IF + +'output + +FOR n = 1 TO 20 +FOR o = 1 TO 22 +LOCATE 10 + n, 1 + o +PRINT CHR$(crt(n, o)) +'IF z = 1 THEN pause .00005 +NEXT o +NEXT n + +FOR l = 1 TO 10 +LOCATE 9, l * 2 + 2 +PRINT CHR$(64 + l) +NEXT l + +FOR n = 1 TO 10 +LOCATE 10 + n * 2, 1 +PRINT n - 1 +NEXT n + +END SUB + +SUB die +SCREEN 13 +CIRCLE (200, 100), 50, 4, , , .5 +PAINT (200, 100), 4, 4 +CIRCLE (200, 100), 25, 5, , , .7 +PAINT (200, 100), 5, 5 +rocket$ = "c4u1l1d4r4u4l4r4c7r10f2g2l10" +FOR i = 1 TO 200 +PSET (i, 100), 4 +DRAW "X" + VARPTR$(rocket$) +PAINT (i, 100), 4, 4 +pause .01 +NEXT i +FOR t = 1 TO 120 +CIRCLE (200 + t, 100), t / 3 + 50, 4 +NEXT t +FOR i = 1 TO 63 +c = 64 - i +PALETTE 4, c +NEXT i +CLS +SCREEN 12 +COLOR 15 +LOCATE 1, 1 +PRINT "YOU HAVE BEEN HIT!!!" +SLEEP +SYSTEM +END SUB + +SUB e1 +'184,-3,-4,-5,64 + +FOR i = 1 TO 400 +x = INT(RND * 60) + 131 +y = INT(RND * 25) + 176 +PSET (x, y), 65 +NEXT i + +FOR i = 1 TO 20 +a = INT(RND * 220) + 51 +b = INT(RND * 30) + 171 +debris$ = "c184r3d3l2c183d2r1l1u4" +PSET (a, b), 185: DRAW "X" + VARPTR$(debris$) +NEXT i + +FOR i = 1 TO 100 +c = INT(RND * 220) + 51 +d = INT(RND * 30) + 171 +debris$ = "c183r1d1l2c184d1r3" +PSET (c, d), 185: DRAW "X" + VARPTR$(debris$) +NEXT i + +FOR i = 1 TO 500 +e = INT(RND * 220) + 51 +f = INT(RND * 30) + 171 +PSET (e, f), 64 +NEXT i + +END SUB + +SUB e2 + +LINE (57, 2)-(57, 13), 49 +LINE (63, 2)-(63, 13), 49 +LINE (56, 3)-(56, 10), 50 +LINE (64, 3)-(64, 10), 50 +LINE (55, 6)-(55, 7), 51 +LINE (65, 6)-(65, 7), 51 + +DIM pic(55 TO 65, 2 TO 13) AS INTEGER +GET (55, 2)-(65, 13), pic + +LINE (57, 2)-(57, 13), 0 +LINE (63, 2)-(63, 13), 0 +LINE (56, 3)-(56, 10), 0 +LINE (64, 3)-(64, 10), 0 +LINE (55, 6)-(55, 7), 0 +LINE (65, 6)-(65, 7), 0 + +FOR p = 0 TO 170 +PUT (155, p), pic, XOR +PUT (155, p), pic, XOR +NEXT p + +END SUB + +SUB e3 +'185,184,183,182 +FOR r = 0 TO 30 +CIRCLE (250, 200), r + 20, 185 - r / 10, 0, 2 +CIRCLE (220, 200), r + 15, 185 - r / 10, 1, 2 +CIRCLE (170, 190), r + 15, 185 - r / 10, 0, 3 +CIRCLE (140, 185), r + 5, 185 - r / 10, 1, 3 +CIRCLE (100, 185), r + 20, 185 - r / 10, .5, 3 +CIRCLE (60, 200), r + 5, 184 - r / 10, .5, 4 +NEXT r +e1 +END SUB + +SUB e4 + +LINE (150, 0)-(170, 155), 0, BF +'49,50,51,46,45,44 + +'15,64,183,184,185 + +FOR i = 1 TO 63 STEP 10 +a = 64 - i +PALETTE 15, a +PALETTE 64, a +PALETTE 65, a +PALETTE 181, a +PALETTE 182, a +PALETTE 183, a +PALETTE 184, a +PALETTE 185, a +PALETTE 45, a +PALETTE 46, a +pause .005 +NEXT i +PALETTE 15, 0 +PALETTE 64, 0 +PALETTE 65, 0 +PALETTE 181, 0 +PALETTE 182, 0 +PALETTE 183, 0 +PALETTE 184, 0 +PALETTE 185, 0 +PALETTE 45, 0 +PALETTE 46, 0 + +END SUB + +SUB f1 +FOR i = 1 TO 50 +x = INT(RND * 60) + 131 +y = INT(RND * 25) + 176 +PSET (x, y), 65 +NEXT i + +FOR i = 1 TO 50 +e = INT(RND * 80) + 111 +f = INT(RND * 10) + 171 +PSET (e, f), 64 +NEXT i + +END SUB + +SUB f3 +FOR r = 0 TO 100 +CIRCLE (200, 200), r / 3, 185 - r / 34, 0, 2 +CIRCLE (140, 200), r / 3, 185 - r / 34, 1, 3 +CIRCLE (170, 200), r / 3, 185 - r / 34, 0, 3 +NEXT r + +END SUB + +SUB framework +LINE (60, 175)-(260, 200), 0, BF +LINE (160 - 100, 200)-(160 - 20, 180), 184, BF +LINE (160 - 20, 200)-(160 + 20, 175), 183, BF +LINE (160 + 20, 200)-(160 + 100, 180), 184, BF + +FOR i = 1 TO 20 STEP 9 +FOR o = 1 TO 75 STEP 7 +LINE (60 + o, 180 + i)-(65 + o, 185 + i), 65, BF +NEXT o +NEXT i + +FOR i = 1 TO 20 STEP 9 +FOR o = 1 TO 75 STEP 7 +LINE (255 - o, 180 + i)-(260 - o, 185 + i), 65, BF +NEXT o +NEXT i + +END SUB + +SUB intro +CIRCLE (100, 100), 30, 2 +PAINT (100, 100), 1, 2 + +FOR i = 1 TO 80 +CIRCLE (200 - i, 200 - i), 10 - i / 10, 4, , , .5 +PAINT (200 - i, 200 - i), 4, 4 + +CIRCLE (200 - i, 200 - i), 5 - i / 20, 5, , , .5 +PAINT (200 - i, 200 - i), 5, 5 + +pause .001 + +CIRCLE (200 - i, 200 - i), 10 - i / 10, 0, , , .5 + +IF INKEY$ <> "" THEN GOTO 8 +NEXT i + +8 +CLS +END SUB + +SUB main +z = 1 +chrage (z) +z = 0 +chrage (z) + +RANDOMIZE TIMER + +acr = INT(RND * 10) +across$ = CHR$(acr + 97) +down = INT(RND * 10) + +acr = INT(RND * 10) +yacross$ = CHR$(acr + 97) +ydown = INT(RND * 10) + +DO +LOCATE 5, 5 +PRINT "Enter Letter" +DO +l$ = INKEY$ +IF LEN(l$) <> 1 THEN l$ = " " +IF l$ = CHR$(27) OR l$ = CHR$(13) OR l$ = "q" THEN SYSTEM +l$ = LCASE$(l$) +LOOP UNTIL ASC(l$) >= 97 AND ASC(l$) <= 106 +LOCATE 7, 5 +PRINT "Enter Number" +DO +n$ = INKEY$ +IF LEN(n$) <> 1 THEN n$ = " " +IF n$ = CHR$(27) OR n$ = CHR$(13) OR n$ = "q" THEN SYSTEM +LOOP UNTIL ASC(n$) >= 48 AND ASC(n$) <= 57 + +dist = INT(SQR(ABS(ASC(l$) - ASC(across$)) ^ 2 + ABS(VAL(n$) - down) ^ 2)) + 48 +IF dist >= 58 THEN dist = 45 +crt((VAL(n$) + 1) * 2, 2 * (ASC(l$) - 96) + 1) = dist + +IF l$ = across$ AND VAL(n$) = down THEN SCREEN 13: SCHOOL: SLEEP 1: shot: framework: e1: e2: e3: e4: win: SYSTEM ELSE SCREEN 13: SLEEP 1: shot: f1: e2: f3: e4: SCREEN 12: chrage (z) + +'LOCATE 1, 1: PRINT across$: PRINT down + +LOCATE 45, 5 +COLOR 12 +PRINT "Automatic anti-UFO weapons systems are now firing at you! Please wait." +pause .5 +LOCATE 45, 5 +PRINT " " +pause .1 +LOCATE 45, 5 +COLOR 12 +PRINT "Automatic anti-UFO weapons systems are now firing at you! Please wait." +pause .5 +LOCATE 45, 5 +PRINT " " + +k = INT(RND * 10): l$ = CHR$(k + 97) +n = INT(RND * 10) +IF l$ = yacross$ AND n = ydown THEN die + +k = INT(RND * 10): l$ = CHR$(k + 97) +n = INT(RND * 10) +IF l$ = yacross$ AND n = ydown THEN die + +k = INT(RND * 10): l$ = CHR$(k + 97) +n = INT(RND * 10) +IF l$ = yacross$ AND n = ydown THEN die + +k = INT(RND * 10): l$ = CHR$(k + 97) +n = INT(RND * 10) +IF l$ = yacross$ AND n = ydown THEN die + +LOOP +END SUB + +DEFSNG A-Z +SUB pause (timeval) +w = TIMER + timeval +DO +LOOP UNTIL TIMER > w +END SUB + +DEFINT A-Z +SUB SCHOOL +LINE (160 - 100, 200)-(160 - 20, 180), 184, BF +LINE (160 - 20, 200)-(160 + 20, 175), 183, BF +LINE (160 + 20, 200)-(160 + 100, 180), 184, BF + +FOR i = 1 TO 20 STEP 9 +FOR o = 1 TO 75 STEP 7 +LINE (60 + o, 180 + i)-(65 + o, 185 + i), 0, BF +NEXT o +NEXT i + +FOR i = 1 TO 20 STEP 9 +FOR o = 1 TO 75 STEP 7 +LINE (255 - o, 180 + i)-(260 - o, 185 + i), 0, BF +NEXT o +NEXT i + +PSET (151, 177), 15 +PSET (152, 176), 15 +PSET (152, 178), 15 +PSET (151, 179), 15 + +PSET (155, 177), 15 +PSET (154, 178), 15 +PSET (155, 179), 15 + +PSET (157, 176), 15 +PSET (157, 177), 15 +PSET (157, 178), 15 +PSET (157, 179), 15 + +PSET (158, 178), 15 +PSET (159, 178), 15 +PSET (159, 179), 15 + +PSET (161, 177), 15 +PSET (161, 178), 15 +PSET (161, 179), 15 +PSET (163, 177), 15 +PSET (163, 178), 15 +PSET (163, 179), 15 +PSET (162, 177), 15 +PSET (162, 179), 15 + +PSET (165, 177), 15 +PSET (165, 178), 15 +PSET (165, 179), 15 +PSET (167, 177), 15 +PSET (167, 178), 15 +PSET (167, 179), 15 +PSET (166, 177), 15 +PSET (166, 179), 15 + +PSET (169, 176), 15 +PSET (169, 177), 15 +PSET (169, 178), 15 +PSET (169, 178), 15 +PSET (169, 179), 15 + +COLOR 7 +man$ = "e3f3h3u3r2l4r2e2h2g2f2" +PSET (300, 200) +DRAW "X" + VARPTR$(man$) +PSET (310, 200) +DRAW "x" + VARPTR$(man$) +END SUB + +SUB shot +'40-43 +'49,50,51,46,45,44 +LINE (158, 0)-(158, 200), 46 +LINE (159, 0)-(159, 200), 45 +LINE (160, 0)-(160, 200), 44 +LINE (161, 0)-(161, 200), 45 +LINE (162, 0)-(162, 200), 46 +END SUB + +SUB win +LOCATE 20, 21 +COLOR 7 +LINE (300, 187)-(270, 160) +PRINT "Way cool man!" +SLEEP +CLS +COLOR 14 +LOCATE 1, 1 +SCREEN 12 +PRINT "THE SCHOOL HAS BEEN ELIMINATED - GOOD WORK, RETURN TO BASE!" +SLEEP +END SUB + diff --git a/noschool.bas.d b/noschool.bas.d new file mode 100644 index 0000000..6aadf35 --- /dev/null +++ b/noschool.bas.d @@ -0,0 +1 @@ +Battleship-Style UFO Game - dish out some DFA. diff --git a/noschool.exe b/noschool.exe new file mode 100644 index 0000000000000000000000000000000000000000..3c24c2714e8a16fedfe3275594d9890cfcbbd24f GIT binary patch literal 63998 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"lD~;(3CWmg?dXUmWAWhZ0l%M4S5Ts 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 literal 0 HcmV?d00001 diff --git a/noschool.exe.d b/noschool.exe.d new file mode 100644 index 0000000..eaf8ee8 --- /dev/null +++ b/noschool.exe.d @@ -0,0 +1 @@ +Compiled. diff --git a/pop.bas b/pop.bas new file mode 100644 index 0000000..b4dd03b --- /dev/null +++ b/pop.bas @@ -0,0 +1,100 @@ +DECLARE SUB pause (time!) +DECLARE SUB fire () +DECLARE SUB laser () +DECLARE SUB pop () +DECLARE SUB icbm () +DECLARE SUB trees () +DECLARE SUB baloons () +CLS +SCREEN 12 +trees +baloons +laser +pop +fire +SYSTEM + +SUB baloons +FOR q = 1 TO 100 +CIRCLE (q, 100), 10, 4, , , 2 +LINE (0 + q, 110)-(-100 + q * 2, 150 + q / 10), 7 +pause .05 +CIRCLE (q, 100), 10, 0, , , 2 +LINE (q, 110)-(-100 + q * 2, 150 + q / 10), 0 +NEXT q +CIRCLE (0 + q, 100), 10, 4, , , 2 +LINE (q, 110)-(-100 + q * 2, 150 + q / 10), 7 +END SUB + +SUB fire +FOR noo = 1 TO 3 +PLAY "T160O0L32EFGEFDC" +FOR n = 1 TO 6 +FOR q = 1 TO 60 'hight of flame +a = SIN(n + q / 10) * 10 +FOR b = 1 TO q / 6 'width of flame +PSET (100 + (noo * 20) + a + b, 480 - 60 + q), 4 +NEXT b +NEXT q +pause .001 +FOR q = 1 TO 60 'hight of flame +a = SIN(n + q / 10) * 10 +FOR b = 1 TO q / 6 'width of flame +PSET (100 + (noo * 20) + a + b, 480 - 60 + q), 0 +NEXT b +NEXT q +NEXT n +NEXT noo +FOR i = 1 TO 3 +PLAY "T160O0L32EFGEFDC" +NEXT i +FOR f = 1 TO 650 +CIRCLE (190, 480), f, 4 +pause .000001 +NEXT f +END SUB + +SUB laser +FOR b = 1 TO 15 +LINE (640, 300)-(100, 100), b +pause .005 +NEXT b +LINE (640, 300)-(100, 100), 0 +END SUB + +SUB pause (time) +t = TIMER + time +DO: LOOP WHILE TIMER < t +END SUB + +SUB pop +FOR i = 1 TO 3 +PLAY "T160O0L32EFGEFDC" +NEXT i +FOR r = 1 TO 20 +CIRCLE (100, 100), r, 4 +pause .0001 +NEXT r +FOR r = 1 TO 380 +CIRCLE (100, 100 + r), 20 + r / 10, 4 +PAINT (100, 100 + r), 4, 4 +pause .00001 +PAINT (100, 100 + r), 0, 0 +NEXT r +CIRCLE (100, 100 + r - 1), 20 + r / 10, 0 +FOR i = 1 TO 3 +PLAY "T160O0L32EFGEFDC" +NEXT i +END SUB + +SUB trees +DRAW "bm0,430" +FOR t = 0 TO 11 +tree$ = "c2g10r5g10r5g10r5g10r50h10r5h10r5h10r5h10bd40r2d1c6d4l4u5c2r2bu40" +DRAW "br50X" + VARPTR$(tree$) +NEXT t +CIRCLE (190, 480), 10, 5, , , .5 +PAINT (190, 478), 5, 5 +pause .5 +END SUB + diff --git a/pop.bas.d b/pop.bas.d new file mode 100644 index 0000000..a346eda --- /dev/null +++ b/pop.bas.d @@ -0,0 +1,2 @@ +Balloon Animation - why laser pointers and land mines should be banned from +public parks. diff --git a/pop.exe b/pop.exe new file mode 100644 index 0000000000000000000000000000000000000000..2edae5a62795952f8566a164dcb1fd9e86a62341 GIT binary patch literal 42292 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�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 KOxyW?{`?OsE8{Ex literal 0 HcmV?d00001 diff --git a/pop.exe.d b/pop.exe.d new file mode 100644 index 0000000..eaf8ee8 --- /dev/null +++ b/pop.exe.d @@ -0,0 +1 @@ +Compiled. diff --git a/scrworms.bas b/scrworms.bas new file mode 100644 index 0000000..472151e --- /dev/null +++ b/scrworms.bas @@ -0,0 +1,60 @@ +DECLARE FUNCTION around! (spot!) +CLS +SCREEN 12 +RANDOMIZE TIMER +TYPE coor +x AS INTEGER +y AS INTEGER +END TYPE +DIM newspot(6) AS coor +FOR c = 1 TO 15 +PALETTE c, c * 3 +NEXT c +newspot(1).x = 200 +newspot(1).y = 200 +newspot(2).x = 200 +newspot(2).y = 200 +newspot(3).x = 200 +newspot(3).y = 200 +newspot(4).x = 200 +newspot(4).y = 200 +newspot(5).x = 200 +newspot(5).y = 200 + +DO +i = i + 1 +IF INKEY$ <> "" THEN SYSTEM +CIRCLE (newspot(1).x, newspot(1).y), 1, i MOD 15 +CIRCLE (newspot(2).x, newspot(2).y), 1, i MOD 15 +CIRCLE (newspot(3).x, newspot(3).y), 1, i MOD 15 +CIRCLE (newspot(4).x, newspot(4).y), 1, i MOD 15 +CIRCLE (newspot(5).x, newspot(5).y), 1, i MOD 15 +oldspot = newspot(1).x +newspot(1).x = newspot(1).x + around(oldspot) +oldspot = newspot(1).y +newspot(1).y = newspot(1).y + around(oldspot) +oldspot = newspot(2).x +newspot(2).x = newspot(2).x + around(oldspot) +oldspot = newspot(2).y +newspot(2).y = newspot(2).y + around(oldspot) +oldspot = newspot(3).x +newspot(3).x = newspot(3).x + around(oldspot) +oldspot = newspot(3).y +newspot(3).y = newspot(3).y + around(oldspot) +oldspot = newspot(4).x +newspot(4).x = newspot(4).x + around(oldspot) +oldspot = newspot(4).y +newspot(4).y = newspot(4).y + around(oldspot) +oldspot = newspot(5).x +newspot(5).x = newspot(5).x + around(oldspot) +oldspot = newspot(5).y +newspot(5).y = newspot(5).y + around(oldspot) +LOOP + +FUNCTION around (spot) +a = INT(RND * 3) - 1 +IF spot < 100 THEN a = 200 +IF spot > 300 THEN a = -200 +around = a +END FUNCTION + diff --git a/scrworms.bas.d b/scrworms.bas.d new file mode 100644 index 0000000..287e52b --- /dev/null +++ b/scrworms.bas.d @@ -0,0 +1 @@ +Wormish Animation - a screen-saver wanna-be. diff --git a/scrworms.exe b/scrworms.exe new file mode 100644 index 0000000000000000000000000000000000000000..41e82742397c9ff762eaf2cca136b119406584eb GIT binary patch literal 36946 zcmeFZdt6l4y*Rq|dou&WfH*!v21Oi=C=w71B2LR=6wqko82cvJBI|Ns1dy9IvwtAdB~ zi8QtD=0)H#^2RXUDSKT;xmPUqt??=tT(RqaE2?3TM}Yz8R*M(T*bc&bRLvi*(3* z;*!^YrI@{h6&lbM@yU{ka65 zgo4651wd%dj?|o7sKXmjhc~ivk(2RrXvaTi5k$T9zal_MK+KwJMWs9FR$mi#YrRHdOENzl~L1triz z-V$h^Qm7-%B6KHh245QN$?7yz1+Db28GbsPVK{9D|I?ui8K^4r-!nWhoMAX^2LHrR zhD=lit@^Je{Bk(MaM}$1mqQt{P}RJD&#-zp!*JRRe)Uj>d8i6{;a^K|3}+Zlo54GV zGR#L++5etl&2Wa{v>E)Gp$yrm3VQ8dOL%5D!*JRR{+Xc+xu|Nv6qa38T?L| zfu%R~$@n&s*N8B~hi0RL@f*qXeD^NI2S0>ZI|Na42O|5XyoUFsMEmB*+5C>lQ1Ede z-~dcH^q71VJ5n{vYn)N}fdxym{E>4U6G};D`AkcDOFMH?H4KNyH~Ezh zwP5ngG`lUSwCjTKk*oDuWx@|J(fw$ zqMJW=u16P@1SPeZpG)hHe9zY;v)H+9Ugsic%%nQ<23&{db?!UN)X<%& zJLl4I;qy9605#-3H7!*J8crT%{G^PT+R2YKd%ow}AeK##t)y6`wUa07J}`DmQ#YMI zc@*H*c9tIz(|r!n*bO+|o3_**d-L8ri;A_A3Vvpq`gzg4y}Aepn|C-fm6l+#^ zmDFLluvmJa`B+(x=WwUzh;0*>lLvh*D<0Da+(|5PFL@4ky|;XV^+V3tszTdB&rHKh zrU|Ra5Z!A>$*ny%TF$FKC0~>EFZ>u%!|zSR^HEV@!2tmsWKfdU{QL>j{N=K4{vD2% zLY4(T)u^H9AG|96(M<9zefrpn(p5^!dGaealP6OzH#7Vqy4p@NmL;^?l20r4B2Qyd zhurJR1k7uNmdnd3-#mfzN2N7|URA8*llkI-=|>uugE3C}hVI;%2ID;GSn}BtB_C2e zwk@11Go3~f!1rK1hRo-vVoE$!c)bRuih7EwRK^!3! z0i1;@0xDyxjK*&v<25NE$8b%emo4)Q%07=01RIUB5or?EY0_~O(yD+Tq*c1>z1KX4C?g!`2>Q|XY)*4+>FbvlS*tlTmyq@MTs(mrRd;K{u?)HIatwFsXYEv z1HyqgeLN~Hm&h;kPx*{qW6}mG&;})nSJZ;lRXl^wVP}|O@VNnJ=)7iM*^TBS-OaJR z$~@({BNCINjs$=Krv-qF!$3y>$TtL(bPQS`R!LHv_Zc-QEE~SMn+ZY^+V#S4((1z0s#mMC{gi7{x>{e+yQ_mV?C zevBNCLI~2yS&W?NL2}}j4wFNDDxkacJko5tL(jQkdX_@Z|2sV&xjq$9^N~lIkCye3 zy}(W|5=^t8X2s4hlECZeE+t=6KBAJZ_58Ehx1hPMtdBtIS?&Rccp=ytegHr4lmG5% zq>wW-n^enI$t_!W(LfrU1l!erPtUoVo&)JTK0VNUq)aUDq{oFQom zOX)R?|9K<_JibpgEx9$R0|pfg2R7-Lx;8!2PCHqTZ7KcS5oh>wmz+kxb8FcG08uXz zG!hLPlOIUI{}}XqlcW_ckVZW65e4aYv*M~jH!M%2jz#idaB9Fr3&03|Y!J@~l&&%y zlR}cNb^mh^=MN0vltElKSpcdh3;^P!j`Y-gorq;Xgfs$(2wx_=;3Jp%4WTx< zRedr)xz(MTK^ImgWYRcNrziQEoS9F@2f7tX8V92!`jL-Z3rIc~w#+i;t-HAKg@NIo zSXERg_uQp4aS$kde*kL(I;DKlwE_HIKi)D>f=5r5p}?J)w4fkk1hQLQ^mz*Hq_iv| z4uM>ZLvqpVu$5uYhkY8Rg~gfXn@%K96lF&)N<@r6V5n!%+o%TZM~BhpC^h1th{q%T zJ7Rsr?;=)5eHk@oYXbSwIDO1P;UL#3xB>9;Oza!_)B@g`tL4f8sP83C> z(P%Q6A|fK9qM}BR9vvMWJ#O5%xVX5{d_5Z#+_PwbB;#Kg><6f<{v%-oqVbLW!3nR8>N&yATh_lF7h#Qu1~v}to6oHjRg z+T65hbLW!3w7Jt#=T3WY?hh00iT&{egrWr$Z9>r_QFJu<8ySsE(MX8?VZuGJKb~MR zMMs#TN1CEXo1&x1-{@%5$Y@hU^bZs6iT&|}sHkX5RP^Ym=&@1J(d2JzbkykRC`3|2lV~=RKa*JuHH!xG z4-@W*{qY2&(Hv?thZ)V`Mzfjxg`16GW@D)NhY9z@{&<2u&VS^wf0x+JduX$?pqqb& zrlrhA{yMUQ9^)pe(Hi+%kVTEy9}*G-8b^RwY0TcABfJMT^8LRVN)Skb=)Byg)My*~ z?N-SG&kV_&RHvFr%;Yh!z}Km4W#)RWSK0Yn?yOhQ9l`7t+t}!yz@1cjE+Qj;1-;^k(Tk z&GIJa80iUYy1wb^rsFl{yFk5)tDjmsru(exVz|n=`oq_T_0-pCPT?k*KDJVK0O1^$VIDWRC zPn1p(p<=Xl(Ke1#!)zj_irvlcsjMxL%W3aW@a*y0#Uh>v45U&`UGD|i{^ZuZSyayr zxlL!q6=)e?%c~aA&^-6>~SA@JgsiBfo&fp^bbF8y42cFJx_DO*qGvTvvS+S+}(9 zG_x^j{Ij&g?|PQTzp!0ghF`SG*57iK)=uQHKEt`KA271z*PImEz+XiaFbQ9U6AjwKFevAZCuInG>eB@J0~p_o-^}z0+j#Jqq*$}O%HhHL@TBNoHLU6b2JgJT;xs|n zr`WsO#@3NhU99jsXV66M_n6-1Y@SK6=TG9Yfs^MwhXut-Bu6sRlcvY|6Q{>0ZC$jy>L{oIz65_`**m;%F&$fAlqw1LST9^S#0zCXEJ z0rgFN>=7vh-VL!wjMo<^`GqhW@Ci-s)Tht#)+3G({G}#MX+5HTU;Z8Cm}K+ZuP03; znSsN-zx7C2FF|0u&Lq6Ysb^Y!WeF;@nt}TO z-E122>ZLu84JVEbCVG0Czl$A+?REY+2*l>7UqKT>MO%;L zsP~hK<97m5RIATn(o4NTN_Ehxzx7C-UR4H1Llu_~(^(>arkbG2|MWBsN6D$(XlE}X zD~GXFwp>R~v9jeRQt)-H;xs8rS9TqNWqu;jQbAGNVyCKRdQRAqmZI3Bw#22N@*;o> z7CTR>Hln}!_q0}D`9D$ol`@t|xP=xw-?t?_fnv|w5bYu5T8(0{Epav3 zSwIw+7j23;%KI`9V@^(Jjo@nP4E`E z{}|cG$8u9FjeHjOAMmtue}R}n?t}SFiajs+Sk)kMW!8eIDaa;@s$!`4L)Bqa7AQN9 zx=nTp0JOUR991O{fbd~}d}?{IQee-6!QIHO2B8282nN^k;uWwi|D8xfYvP=gg8wtl zZ5l*wi-urfrl@L;st%#5jg;HOP;QGr@m8Ve;0$VSIHV7By|+qetqdib zI7$Yn$8gUWyik*YF4>Y#X_i`UrDj{gzF{v&t|KV&f;a%f@?jLaW>C9QsYbqr5c81Ci`u7%}V;S~QL zB8cu8$MoU1C*Xf-x+=Q-stKQpk(Y{cAs@^O%QqA!Mdal_UwU(Q#EwF+1mOutH8Q3U zim@0eoQLE~D?z*MpRXf)6%ZCo*rt8}*vqe4V5P9`HKGG{$|5|!{t91YEzIkBr-5%{ zDE!mu)sv(x2lv3fNnXB)7TQ1vLZZy_Zw6_pdxd8Cl3V^}FiOGkNTL*yT45=n$}?f4 zIr(%5N)1(j7Rr<%4v(bV@KW%@$XF*m_S|7-9&G1^;cS}@%T|hN?seQx#uU6q%2tlN z#pd3!P}wR_xEiUjf*`C-RX+tndqGbtL!mO1gjM(`S+3X%;!n$6q+;;?OukuFLdDm= zhVMuDJ$~kTagQIEsa9+P3Z8;V(#tf+%`in^6`p4|))!0Z_JX|p;$=iu!hyJCLMYu{*WG?M?VA>15a;Kon~p` z)ak}!(s;0sTxhxAHf7NjpT*z!0ib5_abQsSjAYU*pTjgd#;pVc2AOqoDJ$pDuNmv5 zS$O)?eEZ>Hof$>Jngl~u@qZO+FRY5B(yvPvhY`yfJ^`~7spj~GT+$4Y z6ke-gFVzc;R**-ic_qF9pQF;-9P@%DhEX~69b&HP4f|QVDUxdOmv_>n4F@qHrZl6=+Tly#P&4rel10=4e=>;|mM$_<)=` znv$d3meJG;tb1+1{WvXKek!^jW#yCd*QLt7N7?;_tm6NhabtfgTefs#e+m1&0@UUe z?bWmzB=_I^t9+=ZId|1^P+~$fEOhcsyj?4jZ_B41BCP}MAt(j=OW4^t>^cUUQMtks zWRCBE#CNr_+jusz%Sr`5nsN(`Ijp7u|85oR&`0tOS&@&+XK=12-`>WorLj-jCbtZu zE!K;)C)dHc0O9hvNO~}@P+m*h(xH7F6X0b5A(@&VFxELo%Ha>Wj!_j$0_jbX$jA6I zjCcoAx?IVZM*%Z14|}vl%M0XHG;^i_7VVO|L)n-mnVE)k-a<*D3>e8kf@x8NX*NC6 zN=b1I9P5TadS*1`fKW75{+-as0Y|W3b7w-21eUooR*}g;x+sQdXSwoz&B^Si&|;-P zj;^@h9W6gjSFEH-^FL0fTY>tJbgKn4*w82P${)sT2&_=tKu04qRW)>fFBx|6JuvZ^DQioql?4lr7zArOLwOn1^9Ca7Xuz=u%JJ8J{O$U4!Y1 zy{K#?ero`F8Gne#Hr&brZ-J|j-eB(ss-QU#$HvCW%7)vx9PvddQs`O_mpU0uEpX=MMq|-={Eb z>R4%XyfTMJj;{Ew29~;ugXz-eER@qvD9K5#lbc|$zYi0yGRpnPnJ*&1<9wt(A}{G_@fXT7srmH754ZP}s_Cu_+WCO|ct1dez&hxj z-w&`ro&0tD>2ifB_lrc2gI5ofD{Ol&08#?U!caK|SeBsbMbKPr^3jSVJr$4lJ>*^% zXz|N)-JE*?4I4uHEm*vY30Qv7)@`67>B0+@AE`A5V>-wM#Z~jeiwo{J< zVAC8|{;M9)%g8;;mO(<-J23qyq#Ba7igkUB3jz#+-H9y9xdN{;00Bm45eEBMimdgW z3~B91XqKS?1nm#;f|A?~i%KWW%vfqK8X8oy7r+Ps7K;I6EUY2DybQfh2AL6hVZmTJ z59`6$JEJ>PZe$ivuR^*+y-LPOaO;t8fJtyHjO=LmhcV5vjr=(3V{3UQXb!(%5tt84 z2Y?+LGZ5TMQ2b=_yCinT#Q4dN#*%PV?6`?jCz9{s-z9pyJ@)C?Vm&k*uh~wqnyn4~ z&wvti6CXR0gS#nUXwb*ixQYnBz`db4%`NO|T)5lMVn z>O!uJO-n7|6gSbNUDnpnfzSNQLhQ+{I|JOiv@~kA1txC9yQ7_)>o~0%--TiMt{Lq8 z$EkN&X*9$~>A0K*0OsSyXN+?~8Vl1Z`K;b@iK8W>+*T$)>p@e)mWx-7Y^tF#2hyL$ zc`S>#k153!prqS@&%EQ1zaYxHGtLenyFWZY`Zw@dcZ1-(5@=9x-ALyb{`Qb=OCP1# zG!FU|e2_u{pTWlNpaD(bGiN_UjzNxF9;j2Wl73g_LQa#~Jy2I=mSr*L_%aPjb+q(J zpY<+M^zacq{$QWmu zPUA~B7;7F=E{EGj6_ZZ~v$KTT1)w_jO$65R+aO7KEV*1#x1rnlDcO;EkF|tL(!hV= zuW1l+@@bGPh346}RUF4JjB;!*UQR?;R0xWdCOIbE`V-OFEuT(4Ca+?*zhd2T_QRM` zh2K(dlTEQmkPpWnawJSMAjbpX9VI#@yueQeab*fD$3TRZ`V$dkLVNrLcfwCZ4R&rV zVKM~?{@pY@aV@i-f6*V!Y|LCIqL<4Oy`l?0&D0q1M(w4Gv0j4<{}&@?(|8$jieB_G zUdgDTd+`I1&l}>x%NVcGg%>ig^5XtY-ZmGIdQVzA7#cY8x!IDwH1SuCQOH2f3< zX-@-Q!FcNZg-oH<4yD|uZ8`f2(N8b`5SBYj`k}ILV4{uNJ_O4|{Tg+via%5@#Td_m zT+IXPutl-$G@)GyP`530uFM2#U=6Hg2~@xtV%zx&8)x1%ow8M#+3KkjekCHgP5{wN zPR$h$&v2(EQk(fC3jYGROe;jQP}+2*VRA0Iau6Pcd{wx(>HHi6?f6c%=8C|CS0_>O zOp?iNY$%qZV2jxTyv+QB5dLvdo(TZzw@?%Oe>B*gKHd?Rl8YRF1F1_6y(oN`r$sGq z?`r~)#bsL|syntYDI93(4_gx{o4jGPO`GjVP913feC|V!`MVB&?>$-WUmosX(921md7UDlA z{KCQChj*5s`2I)OyKtVWa9c6B7YsO_o=Ud(n? zfET-6MV}z!Stng_T7B5RP$Q##j<%9CtNKU%1?>t8DGP2c%zh53*4;+cu$xbZ86wfU zx#E&HK{9?ke2cQ>Y?9_V4e}0sk=8DNtl~>I!DJLjD}AMg%BL@WFNf<Zt z5Sj{MBcu12acvZgE8eS_@n53k>((u2K8VpBY?6_BvsAI?*M#B82Z(KN>Zx>f0-c3B&CdQ}MYH?@xQAcDUJpBv?U!7Szdt0u zJTrtw&XHA9X<%PW#tvL>mITP>wj|Ic3jSIHx3gBM2OrYZo48q%%)tzcAcG7bssJnD z3+A#2*MQ4u%oyijGp0I>@bP^kKNaSaQfQw#?f^nb9nI&P&okF$7RWNz6-yIkiFT(N zX_YFJ;YD0@G6GIvUjS6P3ADx=Y0VTum#TX-+b_VcE?i`kero~thHg3Q%6t&4z+7_O zikQ!D7s%)2WusTX$UP}v=+Bcs-<3$aI$Tnyb<0=X^I2Dn?p$=JdJ6q6RHcD`kf!#8 z`Nop~jM*d_;U|%k4M1p5qHlcF6ng&>uKTddIigXZ5lF3#!b54EghU!mSEB%Bd4mC# ze49HQ)-`&d>+P78)eLB%o&XX7m$M`TNrfPBEXfFw7GxNtOoGY)9;NevO-fT)2u=21 z>IbHWEMbq~iJBuk`RtzMzVUO$fmh+2@u+tt(Y^xbqxj$GANo7d@Be4NAD$=rVT@RX zEp2bywjHrpVc0@%LnszTN-$)DVFIByV-&Dy>y~jPb?0w5l}+9GYc4-kwp4P%F33q8 zR(ntTmNV5$+2UP4Wn)T!iS}gvn%l$RdTrjOoAc8AYe0u}C1|lHl0((6IN$=noQ8_k zIb{C1GS`4!d%Uiqc8;yO!l|RHFsF{t1arLh_ zqKKi9+BHX*B&`Jo~O|F`AZ%Sc-qiV>TH7QG&Zd1c<=H&U4?Vwd@CMwXK)tu)%v6RASDM`0r;CWj78x_Rm zfm+e_pa2qI-|~&hEULY;ME!(t!O6!w35&RZkFZLf%*EW|z~^{jKtAcolwqi+bxKs$ z9v)8);DmtA7lU0Ea>>>wxmkk4=xI*sX3j8Yv?9=cLtpKo20@K#{&1nOZV#weK7>`4 zTWIVUPzL;QefY3eW(1L(PCB1dhd%-1Q9iNs4%>>$jKJA}^_WisgZUad8Pu|`a&*w_5SjM&v2#~xeMkgAG32a zU^@td`B55?DW((=_tFB8xWJ|@_vXtj$;U{~$>4a;nEu4MP1$tG-6*#ymoAo%Cbtg5 zxJ`?|3_gRdG%cl9$W8YqEE!5zM$3)6g5IX9KuPsCsMu~!v2SimWk8R-r46Rk=DJ|G zj)dD%shTy5?7!_K|ooy0Sl>YSHUr+X&rZ!b9f1|z_E8+@}D)d=tohd0+bPj|=% z7jcF72Mu}QdBf+@E+h!xGI%^W7qLm(lepw7$zx~CoAL7*Dai;s(uGadQapZj19colhQ$~n%J z>7hkwOe}w$gT*l-scwIFqN{JR#O;rHu!g1&?|lH-aa^Fd`nRxax#3H=yR@cX=9|kz)^xYv`<>1BkFU`cWLp`efp5^lV-ZKq(0|^dkvJUf3jrW z%Yt0E_c9_M;@$&P1I!gBNDI45%otqUv#h#d>|^h-R#MW$#q0n5Z-5$ z_Wo5u@mtF7$^J4esm?EHq@dB#C@&pJmb!Q+ z$XD=rdQ&4=P6g+PV1I>r8oH0Rjx!u)nHhk&o5O%Yz9lDf# z!e#i@13fBpmA2J-uSPo~E1_`DnIw(SY}9G)Rfb(Y%@L6!qDERq1;3+&S+mp9Gv;K@ z4SI@A-uWm^Hd?E2@Cmx;Na_n5IEHn-{a#7Tz0P7}F$luP410);(mlk?n|f;yDK+S0 zMjAtJtX{pbZt9J7)s+cj&S}^q#-4BPFzDKzq5-+jWBNV!5ZH&ZZ6Cf?u7Pa5)%M|5 zA{rA1G(+;)JW|4P$E5aebV&L1(xroohhQ0iEdYSmVUu%k?YLK^`UZ3%$(0HGw8UM> z1{n@EGEhpZA;6jkgCKP#*V%WJ(kU*~){?7hg74&W1`<>3Ct_L2~MSHL7AHRc-=V*cVhQR0MIzc`OPE_9S2%pM(#e3tf zlQ=8vFm1dyTF)EFZRVpmA!biFPU!J`>FL>Zo%5W?$a1nZtQzJy4~~v7ekigKBz4&H z^YCd@lbC!q`PjbEh~E=|`?`gB%RN_0itTw=>{|}|8f;FXWJ7{&2{tE~NT%;OYUeYY z2R5wgPOj?LT=fmE>RGP3i*pT(aRTo_269MnHo;WFr@P&zt1vVno0G#=7>U_OQE3*k z(JgX;+~CqROL1&J;U_Z~M_5vaZ;GKqUz}*Fw<#zb=o-s>0-vR$0)H$Icpvm*N32ADL{%nu=zx->fs5Zow^gRqQIIn(5i*(r zCP*>`sbt~oikmh`V+a?~!ATJ!e3Hd-+*(+j;f3~T+Me&Q{d?DKO#)9;H%&<+NTK6M zauxy=lA$F*ruQ8r+utgIFgIXJ1>HndCEICiv^@*Vf1+z3QGzJY z(8ZBp*hbq^v=$)kVpb5$sfLE8g+}cY6s2Q)D5aur$KTe6 z;}J_F=Zy}ISTe%zjN%Y|#2&G%r-K99dc^WO822Q$V|-kIVCYv8Hd|v;lmwYP^TC?} z_Yd0f>RZJiCyZV@8b(jP$MP%}IPOVZ58A)LXUWIZQEEK!gQi7X-oj0Oj|Diw)WzJQ zz-NRR1aXwd<8GCF4D=IM+NW>f`)+|VMo9+v-uEgss80d$!Y|tB#JdLlm zT$bzULpJyC?I4Ie%XN3q^{y{a%lTC1_l5MUsayDRj&9KzTHM-2d>f~H7C4l2jWFFF ztE>}E)RWfDT+KLO!ehI17V*zr!HJRocfm{Xv-mBvbQ`38V5NXF21$kY1l0g!%pk&I zp9T8%y-e?!>l;sO4Le_^0Rc2lJ}3boY1hki8T(N6%QS%jT{KCQO&hp{vSlN;2=)lz zJe8`=T=LmX=af9h7>|jx=kpv|%WpD$3qsZ=(`Bv_BA0`LKv(pB3@bw}2b6;zmgrn1 zYMz4IHL^qyURJZ%fiEF`M9MB*i&_bq)dqeMN96^MRhkw9qKyA=@EOmnrQ^O)D$ev= zu;*{4@V(}_Q%m<#@_eFn{WN` zMe29u?C&>KRO;zlAbsnIm;YcH1?hhv>EqJJXT;8#kQq03VwUZpN%JN@{J{JvzmMNE zwPIRjf_u6rQGRgqL)LkT4=2nYw;(cmd`@icgoUFP#Vww=#P&$i(g&A~wvWj(=Z`3e zc{J)VOX2jQh~jC>N0v-=4bo+>LQ2M*(6y#z=0Ifr*fr6Q+`rhG8)M&4plJan5FS_< z$O||EPX(S1JQMhBU|rzZ!1}<3fGe;u@Vh{H;5mf$e=Nf2+0C@#U7v`GV-#>9BQnC) z@EOq#!&KAuZ3&(~Hm7atRSF8T?? zI+_&5XniX1f72;V5;M+AQ5n}I^B$BjD9v0OmEm$G)_@@u3_XW49t93X~dfjv($Ira3N` z6f(!G)dVCE&x{>peme{qfnH~3^ZBjnYyuQYfCKij3+wVj{icW;v&Zdl9=9mHJ& zLE*AjjgU=$Wr*9ch=$#c^9a*PX1~X>n$uD@b2#kA3p^YQfX_;ZCTtP?8TS#RYUqN>Do)+ALi`UELEHWTeFZst$lFU z8VEFY$8h&wZFdbYl2xDM#KCm-~+n&oD0vy&&*Ky3HwWIP1KLC56sU7-I zucq;~f9$2w>?20aNc^9-OR%Yv@Pj=>H3deksht=uQ6Rgk00+nyAb4b#BCou7f%`Ww%>lv|H9?uyV*;5 zV*A(tj!@g6$J4{tKq$Sg>rYM|V$#F6y#a%S!DG*D!XNgPQd zu+KkndsXQR{7=M{1WLEPeL-w*pX;`_W5b~TgY8Wo0J~1m;vwO?_mec(P93{pfQc91PcxNp zYu~}Yz2&)qGu0~|xDO)#V+yxig%#^F&$lJSU;-WfuoFaa9-Dfl2fY;K$^@@t=Oix@ z)Y!%4{q)+0J<1+fG8|ER*tKSid!&RtLqPN%0Y`T`Vu3G}c)MmPTi`*m26e$&6aype7H3`Ag0{TGI?M8Z5f*-htb#@RiGabAD1|B-&uDur+} zhG_WKIet+tA+c->VQk7q%**mz$K|)Tm9OWKliH@c?`23ZMZOJ67|1njP55CF42roqJ18);lqEzjn(s_zn z7YziZ^B+^|MpStrz)|ZAKwLV%k6K6df)#Bx(72w;nhg&6&(fjvY#?_%9m>uIH+=XO zgZwpIid5c?TQnG|lZbOQh#Mktt_EQa&YAs@_*cKnk|=?CSCp7P$|v9Ilc?`Oy-M7t z%fJO1g5W@X1}p>QxL+TBB!t2u z&oVLTn!F)2xm#}R`MF8%l^f)n5O9Ps*Bv3m@9MJLD4!z!L(1;g=IoBxe}E}2c_Bx5 zA&06AZ{Rml2o|(pN)w}Y?1u*fFdhN6wvgdt2H;uW6?Eta_aT;lH~F1#!*2fM0EHWR4(_#p{}MQbKn^t|*Hyx$5@fuvrT(#+|Dg+4YJf4h z(m@^`Hid&3Y?re`)3d?11sw9zv-v+xL=UxK&{&;+t9a#ckt{Vs5Pj=HdN;rhM4*O~ z2-g8L1-TGhd(&z1zjzHFy67z=?sVT?#Ls>&oh=&)o+6TY(_#C5FsohrLf?T@;0WzI z&cbz9E1M7)>wM_~?9%xVND;~pvxCZ!Yyp3vZEQy_WBm%jEo^Jxe<9Lj(ZNRt2B76&%yXWF8PBtp~&;P5zSP zbz4_*t9>vXMYP|?l`ch)H`R0&NVhc2Gjxbx8O4H z#ez;2@IO`utTn;IGR63f0WI}W{j@;x*-Gn^RHgMd6#g}6A>l|T>_!_YRx(1}en;)5 z@at$RiJ>K9KB#;kb`zxvu&31`b=+*S;(3PZX?tose8j^CMLlJK zBPmRMJTH*=5cr6P4~}YShGUJt0ee}olDESJjlWznIK=%=QewC-Skhh4Tipz~!LrjppX&^F6jT)SLD<9Kwz+NK&~SedHRelnZbEh9Nl8$Wf1T zzBFJ92En5Hm#^gGRSv4BopYhco1QO7gHRG(aU6Ccuv9j3$#4v-n1b8x;v1^hQALIL zK~%abJx~^1wT^;r65|`<8^B3^DbvU_atz7=AQen%$2jO}1&`}5dq(|@JM$@67M=m6 z0u&`5?YTTun0y8t%D=t0WG7qkO~om<^+j-(+)BYZ_YE9As9Hl+KSRayPf^uRQ9Y2> z^Np7UNAl0)FNc>SLN@P=b!Gkr7$bM^#K#e?I9D=Nqyqfc6`5Nhm)Zm?@iP?QgIjqN zz{yyjqSCGFDQTiZOt(suWOU2|g*M>$NUbM*>XJTqH_Q2n%k(6brJ6|$CGB{ZcD_Sm zK#`As?IVq}s#M(;%-7?829C2YVJ|Fh z?*tQTa_fEri!XtzJd3|U`y*LU7?bcxBwL41t?AoMJZwF9S-)?#bu24ehtI3&+fF=e zL3jp9ie-JXc?0X4l`s}UmfMUkEi;UQ&=n>)foEIKz@o)R5)cAxp;-V4Cm=WPfV4BR z)lT6kxU|e#3WpBzDLk5le@ej;6K@Tn_8M5wzvaQn71bJVHBx(l?8(T%?2Tpf_O&x0 zTM!pOGTv7BW`Ru_zj_-2;fi~ddl?P8Dmgd?^L{tHz#n_}dvkWj4((bYFXR|s$YEZ{ z;rtKv1ruPux&(^~If3@5pPV&=ZYCScSZz({oeR)*gu-mWZyzHk&P3#IJp;S+2w%#4 z2B+KxS8!J-+h`o`B}bYDuk#vGE{@^Nini8lj*(C29Ye}Qqx`!j^cB2PVhjDQas zT4n!hba0`D%h;Oo?Vh$I4X^7fhNUzla6&Tp(m>ndOFIVpO4^|kkjuYiGsZUZ1MGjn zGn)G?JTtkU!E-F#8r{f`rv30d#h!~Hry!%~wN~=(U_&M~^1W>R)J7h0s~|j%`|n9j z2ik*HmIJqgZ{m_Cv+|?#j!!2N%MCeB;7%wNHDGF3E)m&-zIl!O6*g*0Bj3$F3Qw9# zf#(!16`rZw!YQOYjfQwm*6Ya3cC$}6*?{SK=txLqR z5voPU*`ku)J&OPM{{&?vrVV*r^Q%mHM+z2(b|hrbs4 z%Z$l&sg3*&;SjApTiy{!b=$TJasyaa&*!FAzalU_ZpgS6{S{Z zh!9Q_A@eM8BeDns2TzH6&x`S&gCF91mKcJwl&)GNR=*+a=&-@vgzKmj&Jtr0lCSMp zjvnBGCN(g&>&2JSSIodx=`>e|gNvwcsOlFs^MisZ20U{1{fhF9x5UV%^}@x3EqoYp zh@Xm%@GfEVndGynnsuE}2I&3IQ>jPz=O7a9?b2f{G2Q%mmXY`dc%i0XR?}2;F?GwK zWXu&zlIYzw%3`UIHbI>Awu>GYE0(BCV`(AsGB?g?T zU4OQS2X*H*he3C5bG={@vlc&n`9P&`uu{N(LkAWK2UiRDPpFBMO8XPE!Xgr4RiY6% za7u*6!j)(UegoQ=xmq}N$_f0c1RNOw0Zf|({GaH+WL?5Qt zOXjRsq|jHvgs*9EFsnyZUwI8`NN+wvTuI0>2)=H5MIt~2Ln;D|?@by(LibEpz^;3> zh8o-8s!2H8kj?j83@)PZK1x2H2xav5MW!W~0D0h!JYWn6Yx`_u&zC?{Pg~EK`(Xvi z7Tw_Pn;klwV7QYI>Mk^Zo1;ZuO5}EO6(1Z70rWTEVvNieAq?^Q$w-)sr}f(_&pK~G z>UD6Jv&}C;K}?-3Fs?X1gzC^=*Z6(WwH7>PYYjDu z|Ccwl{PisDX}-|h*L=uxC@%cV?Hez!ENmWa<%(IG^#2M&$}vCz zSP4pK0?+E6=1a|k%||>(0H5dlJ;<9oh=;}xivT+XWP(Oka0*g;NNbY@?^K3ESb^i) zz#%Bz+5KjxrFbZQW`fAO)_;dKuuu)ka4eYIQ>?bbJ#?hA6tEJ^Bwg|)0vY(4FXamG z8u)$+Iuo#UXZL`LP!HeeuFrBpjzO?Ekc|G-ARX2DW@Z+`II1e;T^$>yX>%RR=47F= zMLliYT=Ws;ISN3GcF9rK(3VQaH}KKSY?5x@A2cL zb3y92!#&(beJO{?GwqNsXdC ziGas?WF&lN5j3|HmuVEDgE$!12@s;-n^o+Om0yjPuby6mfS&#Ws~6h2ExFE<4GQP( zMheb^!JKw|PJxpgs4E$Nfa-2!ouS}!Bf36k@eNu%-Q6exm`K1x|8X#H^2pUx=eju1 zeKJ;o>@lE(6Tu^H&TUwVi$h&-*G#rJaTYTNQN`fqLP5c=pI(hZcoD^{C_fy%@-Ny! zCrvya~Hp;Z0c^Tlk#Er-+1#p z)m>lb9M@Anj&f#o*PESUcfIJes54%4-Hwz@uG>*kh&t)To_aI!*StJePBp{5pOIjS z!RG?y4WVxMe*JX!>t{3k9M!FWFO<6I#k-iL5IrZOro0Ht5|8VU8vkMthY4`_4?x|S z*H8Dnes=2JSiCh*-l=2mRzjV2xvTu!>o9o7zJ4}y5h9WUej1uT0m2tsE<%2F+HhWJ zf~zT%pwlq|UBd}L?wnzycd2t4^?HvX^=8!U7d^+p!)f1P`^omFZ;+y|mbVMd#G(7- z$>ZcyNSqq}VoOs?6QJ)=7$kKmt`o5M)6fD>=;vTd{XY-H1+al4hhj_pR|j1t5z%>Y zjmyRhvzYQe5gb?h%rF)%B$oFjIv*wdaQ_cmbrT$ry{AC~7bKMX(9y`R7)R&O@V6ZT1V;>?W)(r^9!OV1>$kNBnvDe#LUO#>8 z^{?7q|0>ghUN`U-v^;LmKX35$v+E;YmzR$1Iizin#&>6raXBrof3rGLk1t<87D=HS z{h3+RQs{=&kxKG0_tHrB(kS;*i~IjB>{{TOIEe16jQaDqCKghmWqxrP(UvvKHOeT6J4(yM0l2srq%Te5*jJsJqt0C%zR$6Rs31 zl~}Fh`_D~+)cyK>xxbrx@0l|*XJ*cvnK?6aW=8jt89hZ8<=f|~82(3QOclW+AfDD zcHLGoqub$$J^tlg*k#__g^T(;q1Yaox<|ltnq}l38w9Im*q-9gc*~$YC3H1d|2;*} zMMUngLWFkT^G7UL>ayoes3Jo4toux7QSMm}1rw3#?M^~CC1!4d{!9lUf5xsQDtWr_ zW5Z!=t<#6$B3*J(yiEC+xKwkK@KrTi~RH@0%p4cSS>pw$_3|k=72&bSe>QFQKJ@QvK8W9NS zN`k?*Y-k8+b=smJo{rb>4RPw@^s5^IgIqPA-{^k5?a{X6^vDe1&Y|V3O~Hp$&6rWL zob_$RYIXGQ9x?!Sr?-_TQqf|F!yj!sk?a$fQm$g;y-pd9agvm?2x(vR{6Jt*I4>w* zv@dN=?6;PILOk=_qoHHY54EUl@v_l(ja@0k+cxH6J$Bm0Gh?n^Gs_Pv%H}QXvtZ7N z_c%TG2ktWWE|IyaQ_H6D&A;0bYMepssD|-K<_j>8M9sl(D2-o)B2jEKKAN9@%J*v5^ zIgZQsyr{XTnGkvrU-WxK=(}<|6{7K%0KXnCvyL56^Z9%IP<{wgZW!R_(HF@u+Zmz7w`1f?EjXafpB>G zW&7%Ptv`M^w4}{T$or{=n(^oMT&D1TgSWj_y-~f68Yli^)|H=PS``09;r<_##)J&7 zS@!IQ7djoK?`^h-9Zm5aq3dHCEr)>f1?ZF|Jpcbp|DPQA0h!h8rJC; zSKD+CH zqJVr*GN}Hul&RaX8Vw=|ZdehNUyP?4(M+XM?{>{yAZ4hS&w{m&G*m<%qH_#mYZF9`$jy{U*6l-&( zHRsxoi>he8`D?k7)^cU7qNED7_5{au<+NN+?oqN54F#6SVib%~fCT6<`1_@qg~ z^fuwV!|t$Kp%$^jvcNg@hKZq~x)f{EMMdeU4ffKBGEvv=zbkx~)@`V24*>!2?w1^g zFec17Y-4K^Wc@C&OmOUHNjd0U@x$VY!1sZ9!WmiG%+)7a?fUB(aMy9RH!1 z8_uBqgu6nG{BFtGaH(ObMXO45jwatl;|rxGl~{DhjVkw-B-M3^%%jv%Aq=A|%^@XY z-zG42x;8wf>L9w5S2xst)RovSJ4D~*4?u+g-cX4-F6_J>T{7Zr(ps%B!yFA>?3ga) zTV$=(u#O0<#jwCcJ8HC(<(hEcFW<#z$w?gK8hYOfG0%w4`Y5oS;p=F9fiQK)nv-`EqcxTQ1 zi++&HJk@fgrE}3wiXt=ik<*H5m)eKdc7{L?*2V6rCR%d{{xODfpVGSbYyI!fdn&NSEJ?fVHYM(*c{ z*aNdkFS6n@F(=o1DyOny2)^+MqLWOlEs>);UeyWQ7EFKDMO)O-X=-6QDWl$sunJMW0<+Ev^I4Ud0x~mQPnG!2E*HBCa1)y_#L`S$9u<1iHDp zF%!tz-=wDq7WSVEi9QSaZI^{-gy}M2fkIfL-BT3SM#hSnvx~%fmAH%L=_#|K z&u$l7y9CEB;m9tbZdXj}`tQ+eFR-?SuI`DGE#%f?jL;}JVcr2FChPaw6%FQ8;|ta{ z3%e552DFb+$>;Dt z^2zS4vUFQp^t}{$b$oK)hp^-zB25Y?gF}R8U};Z@)jlraSh@t#3h6Syf<5)}BViX{ za}(1p!0aSpK7r2Rs*|yZkOl%Dn1zvi)P*%#oqiu30t$dB_LG2o&^a8nLm~yF_863M zSJ*KtrZ%NWJA@nn`y&jH7yv8V$@4?b6g7C`=5U9SW13QYfk~kUlJpea0kHDv#KRhx zkU)_o-+^=h?dcRNDeZ^CoO2hz*qOvK*s?E`=t8%i`6;40`d&IVP+Jcxt+h%p^W&CJ zVbMq8KZ*Ikg_|%RvYF6Y5Q7C}9My13MSnFhy<}`p;+jfeU9=~p2xh=$yGG+4N&d<3 zFggepbDlKzJ+PU?rYS8Uu?Y%`Dt5liB8v?%g>W@oHD{;0yimyJ=FVHR&^?+FMrHw z+$41EN#+eY74hA?h|3EiT<>h!_-9ktOnK;L5*E3IgekX@u&&#QsmVTb5MU92MF1ub zg81feg_D=Wyy^8DtC?o%*|pdcZNHrM%~2D;sh#%bPks> z0(U12H~AI4jn6{~V(u%3&q;RNH1-rj;N*Lki6ML~V?BpuX9o#C5jk^4IA%NVE+;!U z0;~l%tLDRZ)ZeOWY`38N;BP&62QuT@FXMQOE=h0W;MT*e`FVdFeWW;gNb$+Ak*A42 z%!VBgyBzj75K;6=agxJ@z{Wit7$tacYYp@3fmv&qj)Cobo4i}{Ov!Xv$pS@5B9=z+ zH~C_N8WWZAYq}S;F;#2X5?J?2~P#i;=h*h4|&TaFiRc(9V4CslmbEk zVD~Xq6n2o(B||{*lbyF6C)FocdBk#bFf5q)73y&83;HycF2ejETY}1#rFLH1>vh(- ziwNG`pAh#3;;uvIM(SWBsBK9c^rh9dBsH49F+5pwbxe_W?PW!wEep%X(N11>)(PQU znoNxz2*Tvj9!j6VFBhH=PRY=>=*-G z)ddqZ994gRT?4WO5lPkUitS$XN%wPJDIb%)zD)9K)z*pr5?$Yha(Cf&;65^7*ZMZt z)DN_QPd#C;pm@HjBq^vQO zhj`^a4zc^#;Sq0X=8jrKTJ*Pgd~x`~uBxi98S$*d3h*He#tH@@iKY=;;im$2XIn}J z(^UaUijw)t=vMI)$|k`vRpt1(doYwy#t3PQFkdbt1lf{Q4!0zXFFgI+L`y)ZDYvaw z^SAkZcMH|G)z#(hbHp}Z&EMeNO~ieIxYdmKfiKT|T=fIxsvNcm;$h9zqQ}h7YcJWb z(gGV7B&%JmH7aw8#7a+U;VYl2ro$NTdO; z?j@!=uA9z^P;eL(j_byMcl7ggIs)H;^azK7ymGo@fnI7_3;652`g*zD+N|{PrIfx7 z+!+oo?0w)1*5AL|rM^)vIssFtFG5W0X2n}rA$Juv-YFv%9rDW2M>}q|6+C3L1B(y7lFS`7AF;!R;0^veMjIuU?WvU=f_AlnO7Cu3Bo!+P7dh6Rf|*hZhD#}kD;(D`1^cOtMqbNZF(jsTWrTm67;!r=D2wq* zd~rr>;2v|2xQ7;*cu`6Z+HUbC`p0L`L%whyX-1D0IV;8Li)oFnV@%1Izu{`RLsEKG zNUy6Ku}d7%fnyGXF+_LFQEF@1dB%Cp2t$?Vr(Xu&UXWKqNR`0ur>rDLQL-BOTV-{} zdCpH+t%tSUpW@fdgCc!x7Kg3czeAT8(MG>6%oT=>v`q9(UwFbfvDSy!*qWf`E$790>3K;! z@eApFq@i7UmsXWt*if^fj`lzU?*n#On=#M|$Y#jp=+-gNw@VWFIn42Pl*mP^F~+tu zAv?Jo88_H+gG%NrLXMIPK>X7Am?Q*ZnjnL7q-@GjiVbu&st=8OpSMtbtK3&@C3V0{ z4eiBD1@u0`m;VQjwjHOnR%Y4bljI!(X~wWjnx?P^ns_$I8|RZgFyOG7gQdT3Y4qjj zX8QT7@`)b^1wKn%DDe#sk%cM(MLHDhRF^KamD@3ZDq#*gKlP!_$-|598LZb4N z%QjuDJ_?ysCr@AtLdT%{#f?Gls}r)%zA6~)8CXg#{(#0y;w{&HXrQs%#3Situ-evR zLyyD&8w|Gjoa2V$hI#=WPz}_pqOYx-sIFS2z-ag?dMdGr?CPF{eK5lC4K?UE!x+2* zR-`l}UW}&?MjS;SM8vjx4H+j6qI{w?-|Nq>yoO?sJ{r*SuRJe0d|&6Hui@KVDPF=j zFT6v^Y`xK*sWjaQ>UH0u&!?*V9UFD-LyfPNf%5)56@DOHQew&2%Ftl3S7py&v0LSU zV6jVObg-zY92+dMmHSz2JvfZ@bnPt<_hh}bOYsI-JCS$dfxsP4*Tm$3IVeS;EH2))ZodQF^I51moD1mD)wA=apd=gGXkn&%v#r42|2Hc))m*(W>n6O8B$Uo$dGhOE!A|zG}S71VAKX0zYh@- z*+B{HNAHt%{Y0X2jS`9raeP^9g3|chiY~G96~@RFTx^oe*lmR(Hr&|RRY|O4-$xfH z!nK}Q>O`3Hq+c2swQ}tsE)%hQD-r<)sn@76K1vo2SsQ-lqIMA501e@9KEmWu5P$Qr zNN0sHZ6A!0#k2g)gY-L|&f4Q!$KS-6p3r9$!wb$j$-cKkgZW_U&xc1pu?mf%T>_eT zj`sdTd~^iS6*|p!2t!HP;SGJCI2*8cg(jOJ_I6!Gf-+I69M#uu($#!D|BBO+sLYrR0l-Eo`>57?)*s^=82%RX%6-c~ zb<>JtXo!lcy>UQii)y@avBxZ({k8W~i|SL0;!_JlwFRou>J8`Z2UioV!ea^}_0H^Rf3&Fz~t_-hBcW2?;dN*vi!_50*k%ECeZ?^Erm3K!% zmI8SwE}T1ydZE70iVHJf_|w$@AiR2D3<}i?+hL{tk-zJYX3N*_qP)J)HTsUda%!+^ zffqVGNCOW_4zKr)E0|=#Q~9@G*G(U^uQ&%C>EHv6tn1Y_SAWq*IXJO0 zQthg0o4wv61>4*hDAykvy@|9$|8J`Qb|pYH4#_+?hq$JTLfgXG2eF8If+#FtYZEbX zaG;fSwLM;;0Ess#YaW=#)U48FR_)s zQ@i&1p!aC;N>pBV+aag|Kf3-zCao0S-LF)+x8MFQ{rAbRqIF+C3HUXD`}*yF*l%Ay zy3ExcnVbUWs6$nwrX;4Nr_9i;$Tly_x0rR4 zW~Qc($8m@=@t(g#moP4E90}4+$;mM+)#vDzSn@K>+4*_8OnpucQEF!{HyD@Xr5q`Xe-%k+r#oJhM)ZqFQbsqXG$<@|&6d zs9*V|f5Xabli5UKrC5xH%zR^(F2|6!)Vz$0LAjV-L%E~4$07vWb>&?r4Bb9|dGt&SEU&$p&4muj6 zuYA1P^t=KvrCH(u9}?kH3|aZQCC2<*9m>RLCJaA*mDykd$Y9VAC7+_t%gWCk;>$3d z$pGR84vC3=dBjLCv5vmH`~p$&le1Bj$hOxEt0>%P0Qq_J&9usdk|r##%g)o0V4ju- zQS&+3c?KQfcyNjZyoCiPIz2+j$}-Xv5Dow0c;wS-FJg|_Uv;FKgi2#HS_;f0s4S6+ z1{!GMoJ3ysyf0qi2H&=d{(chs+4Kt#~^&rrZ}ykaof?OjPKPGL>a%D(j4gyR+nQAyziLf`(P z-2bh93hu*T09CZR1aO}~p1cLzCr zFaW4iyHQRoH3gw?rN5_>t74defrGy3(b!MB|9{_ztU#qws8l_f-2`^&dyuWKY<)$F z3J-dkMHggtFsZ2WdIKwJym5>|rcltE$du9@2_*RDy@i)PJ@?IC(h| zMob9V(xdgA$8paBPfaT11?V5p#U>~lA`2paQN6)VP<_D`vxD$_lbx=bu3Cco3z*)e z@SvRhrNf32B_cz9Do8#%oPASujFkfph#!tsmjO7~6>uVj&&bHaqM+44FPbo-iME56P&M}=*JJr%=fuS z@a|-K@Dxz^TJZDQ$>f!1CX?~FL$F(HB<^_JWw2Q}htR)!o*A{E9I^B|#r-sQJ?7n1Sh#iME>l zZKEqJL0`6fAu31jw&b>aY^%ZO^{WHX3=IB8D#*_vS9 zz6DcAI6JJUhG@l0rB(48s;tdgIDj6pUciWeg<2L3!CeNcL!l$4q*oI1aKl;Q_9Nj? zl=nA#5v|omtO(zWO9xCS@{d{82MOviu_f1mONi>l?(EB zL=DM6``sc#HgKj`0s8V9Wye16D{Azak5jE~E% zMEz;_*Tb(4KUOwv)Y4JrQ6;06EpRL>UhK`hzN}yN){N8RzsTq|;j^-h6I&)#%ub(^ zJIy$4#k5D$x+e8X(oO%%jJ-4LGp@{NnDJ%Vzh*IWyUpD<_dr=q+2OJ)bMMTh?E34! F{{ge!w2}Y- literal 0 HcmV?d00001 diff --git a/scrworms.exe.d b/scrworms.exe.d new file mode 100644 index 0000000..eaf8ee8 --- /dev/null +++ b/scrworms.exe.d @@ -0,0 +1 @@ +Compiled. diff --git a/ufovisit.bas b/ufovisit.bas new file mode 100644 index 0000000..30a980b --- /dev/null +++ b/ufovisit.bas @@ -0,0 +1,377 @@ +DECLARE SUB pause (time!) +DECLARE SUB lafin () +DECLARE SUB opening () +DECLARE SUB stars () +DECLARE SUB resetstars () +DECLARE SUB photon () +DECLARE SUB dematerialize () +DECLARE SUB city () +DECLARE SUB fire () +DECLARE SUB materialize () +SCREEN 9 +CLS +stars +city +materialize +fire +photon +resetstars +dematerialize +SYSTEM + +SUB city +FOR q = 1 TO 15 +PSET (30, 350 - q * 3) +PSET (34, 350 - q * 3) +PSET (38, 350 - q * 3) +PSET (42, 350 - q * 3) +PSET (46, 350 - q * 3) +PSET (50, 350 - q * 3) +NEXT q +FOR q = 1 TO 9 +PSET (57, 350 - q * 5) +PSET (65, 350 - q * 5) +PSET (73, 350 - q * 5) + +NEXT q +FOR q = 1 TO 18 +PSET (80, 350 - q * 3) +PSET (84, 350 - q * 3) +PSET (88, 350 - q * 3) +PSET (92, 350 - q * 3) +PSET (96, 350 - q * 3) +PSET (100, 350 - q * 3) +PSET (104, 350 - q * 3) +NEXT q +PSET (84, 293) +FOR q = 1 TO 2 +PSET (88, 293 + 3 - q * 3) +NEXT q +FOR q = 1 TO 3 +PSET (92, 293 + 3 - q * 3) +NEXT q +FOR q = 1 TO 4 +PSET (96, 293 + 3 - q * 3) +NEXT q +FOR q = 1 TO 5 +PSET (100, 293 + 3 - q * 3) +NEXT q +FOR q = 1 TO 6 +PSET (104, 293 + 3 - q * 3) +NEXT q +FOR q = 1 TO 15 +PSET (109, 355 - q * 5 - 3) +PSET (117, 355 - q * 5 - 3) +PSET (125, 355 - q * 5 - 3) +NEXT q + +FOR q = 1 TO 35 +PSET (150, 350 - q * 3) +PSET (151, 350 - q * 3) +PSET (153, 350 - q * 3) +PSET (156, 350 - q * 3) +PSET (160, 350 - q * 3) +NEXT q +FOR q = 145 TO 165 +PSET (q, 243) +NEXT q +FOR q = 135 TO 175 +PSET (q, 240) +NEXT q +FOR q = 143 TO 167 +PSET (q, 237) +NEXT q +FOR q = 1 TO 10 +PSET (155, 235 - q) +NEXT q + +FOR q = 1 TO 30 +PSET (230, 350 - q * 3) +PSET (234, 350 - q * 3) +PSET (238, 350 - q * 3) +PSET (242, 350 - q * 3) +PSET (246, 350 - q * 3) +PSET (250, 350 - q * 3) +NEXT q +FOR q = 1 TO 18 +PSET (257, 350 - q * 5) +PSET (265, 350 - q * 5) +PSET (273, 350 - q * 5) +NEXT q + +FOR q = 1 TO 15 +PSET (330, 350 - q * 3) +PSET (334, 350 - q * 3) +PSET (338, 350 - q * 3) +PSET (342, 350 - q * 3) +PSET (346, 350 - q * 3) +PSET (350, 350 - q * 3) +NEXT q +FOR q = 1 TO 9 +PSET (357, 350 - q * 5) +PSET (365, 350 - q * 5) +PSET (373, 350 - q * 5) +NEXT q + +FOR q = 1 TO 18 +PSET (390, 350 - q * 3) +PSET (394, 350 - q * 3) +PSET (398, 350 - q * 3) +PSET (402, 350 - q * 3) +PSET (406, 350 - q * 3) +PSET (410, 350 - q * 3) +PSET (414, 350 - q * 3) +NEXT q +FOR q = 1 TO 11 +PSET (419, 355 - q * 5 - 3) +PSET (427, 355 - q * 5 - 3) +PSET (435, 355 - q * 5 - 3) +NEXT q + +FOR q = 1 TO 18 +PSET (480, 350 - q * 3) +PSET (484, 350 - q * 3) +PSET (488, 350 - q * 3) +PSET (492, 350 - q * 3) +PSET (496, 350 - q * 3) +PSET (500, 350 - q * 3) +PSET (504, 350 - q * 3) +NEXT q +PSET (484, 293) +FOR q = 1 TO 2 +PSET (488, 293 + 3 - q * 3) +NEXT q +FOR q = 1 TO 3 +PSET (492, 293 + 3 - q * 3) +NEXT q +FOR q = 1 TO 4 +PSET (496, 293 + 3 - q * 3) +NEXT q +FOR q = 1 TO 5 +PSET (500, 293 + 3 - q * 3) +NEXT q +FOR q = 1 TO 6 +PSET (504, 293 + 3 - q * 3) +NEXT q +FOR q = 1 TO 15 +PSET (509, 355 - q * 5 - 3) +PSET (517, 355 - q * 5 - 3) +PSET (525, 355 - q * 5 - 3) +NEXT q + +FOR q = 1 TO 30 +PSET (550, 350 - q * 3) +PSET (554, 350 - q * 3) +PSET (558, 350 - q * 3) +PSET (562, 350 - q * 3) +PSET (566, 350 - q * 3) +PSET (570, 350 - q * 3) +NEXT q +FOR q = 1 TO 18 +PSET (577, 350 - q * 5) +PSET (585, 350 - q * 5) +PSET (593, 350 - q * 5) +NEXT q + +END SUB + +SUB dematerialize +SLEEP 1 +FOR z = 1 TO 50 +COLOR 0 +a% = INT(RND * 30) + 1 +PSET (300 + a%, 30) +b% = INT(RND * 28) + 1 +PSET (301 + b%, 31) +c% = INT(RND * 28) + 1 +COLOR 0 +PSET (301 + c%, 29) +pause .005 +NEXT z +COLOR 0 +LINE (300, 30)-(330, 30) +LINE (301, 31)-(329, 31) +COLOR 0 +LINE (301, 29)-(329, 29) + +END SUB + +SUB fire +FOR a = 1 TO 31 +COLOR 4 +PSET (299 + a, 30) +pause .005 +NEXT a + +FOR i = 2 TO 15 +COLOR i +LINE (316, 32)-(40, 350) +pause .002 +NEXT i + +COLOR 4 +FOR s = 1 TO 100 +CIRCLE (40, 350), s +pause .00001 +NEXT s + +COLOR 0 +LINE (316, 32)-(40, 350) + +FOR a = 1 TO 100 +CIRCLE (40, 350), a +pause .00001 +NEXT a + +COLOR 15 +LINE (300, 30)-(330, 30) + +FOR a = 1 TO 31 +COLOR 4 +PSET (299 + a, 30) +pause .005 +NEXT a + +FOR i = 2 TO 15 +COLOR i +LINE (316, 32)-(150, 250) +pause .002 +NEXT i + +COLOR 4 +FOR s = 1 TO 100 +CIRCLE (150, 250), s +pause .00001 +NEXT s + +COLOR 0 +LINE (316, 32)-(150, 250) + +FOR a = 1 TO 100 +CIRCLE (150, 250), a +pause .00001 +NEXT a + +COLOR 15 +LINE (300, 30)-(330, 30) + +FOR a = 1 TO 31 +COLOR 4 +PSET (299 + a, 30) +pause .005 +NEXT a + +FOR i = 2 TO 15 +COLOR i +LINE (316, 32)-(410, 350) +pause .002 +NEXT i + +COLOR 4 +FOR s = 1 TO 100 +CIRCLE (410, 350), s +pause .00001 +NEXT s + +COLOR 0 +LINE (316, 32)-(410, 350) + +FOR a = 1 TO 100 +CIRCLE (410, 350), a +pause .00001 +NEXT a + +COLOR 15 +LINE (300, 30)-(330, 30) + +FOR a = 1 TO 31 +COLOR 4 +PSET (299 + a, 30) +pause .005 +NEXT a + +FOR i = 2 TO 15 +COLOR i +LINE (316, 32)-(570, 300) +pause .002 +NEXT i + +COLOR 4 +FOR s = 1 TO 100 +CIRCLE (570, 300), s +pause .00001 +NEXT s + +COLOR 0 +LINE (316, 32)-(570, 300) + +FOR a = 1 TO 100 +CIRCLE (570, 300), a +pause .00001 +NEXT a + +COLOR 15 +LINE (300, 30)-(330, 30) + +END SUB + +SUB materialize +SLEEP 1 +FOR z = 1 TO 50 +COLOR 15 +a% = INT(RND * 30) + 1 +PSET (300 + a%, 30) +b% = INT(RND * 28) + 1 +PSET (301 + b%, 31) +c% = INT(RND * 28) + 1 +COLOR 3 +PSET (301 + c%, 29) +pause .005 +NEXT z +COLOR 15 +LINE (300, 30)-(330, 30) +LINE (301, 31)-(329, 31) +COLOR 3 +LINE (301, 29)-(329, 29) + +END SUB + +SUB pause (time) +t = TIMER + time +DO: LOOP WHILE TIMER < t +END SUB + +SUB photon +FOR o = 1 TO 350 +COLOR 14 +CIRCLE (315, 33 + o), 2 +pause .00004 +COLOR 0 +CIRCLE (315, 33 + o), 2 +NEXT o +COLOR 4 +FOR i = 1 TO 400 +CIRCLE (315, 400), i +pause .00001 +NEXT i +COLOR 0 +FOR i = 1 TO 400 +CIRCLE (315, 400), i +pause .00001 +NEXT i +END SUB + +SUB resetstars +COLOR 15 +FOR s = 1 TO 50 +PSET (INT(RND * 640), (INT(RND * 230) + 120)) +NEXT s +END SUB + +SUB stars +COLOR 15 +FOR s = 1 TO 200 +PSET (INT(RND * 640), (INT(RND * 350))) +NEXT s +END SUB + diff --git a/ufovisit.bas.d b/ufovisit.bas.d new file mode 100644 index 0000000..9c47b0d --- /dev/null +++ b/ufovisit.bas.d @@ -0,0 +1 @@ +UFO Attack - senseless, wanton animated destruction. diff --git a/ufovisit.exe b/ufovisit.exe new file mode 100644 index 0000000000000000000000000000000000000000..43ae470b88ede53958bfe2be0da555ff00b784fd GIT binary patch literal 45170 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 K-9r4o{r@kqCc1+F literal 0 HcmV?d00001 diff --git a/ufovisit.exe.d b/ufovisit.exe.d new file mode 100644 index 0000000..eaf8ee8 --- /dev/null +++ b/ufovisit.exe.d @@ -0,0 +1 @@ +Compiled.