X-Git-Url: http://www2.svjatoslav.eu/gitweb/?p=qbasicapps.git;a=blobdiff_plain;f=games%2Fmario%2Fsmario.bas;fp=games%2Fmario%2Fsmario.bas;h=0000000000000000000000000000000000000000;hp=b4e14325f468167beb161fcbf04d5c648b22a9da;hb=c6aaa433dedff2dd8063983c7716c0cdb296a0f9;hpb=3779e9035f2c67e36111585e10d956a3e9e3c0fa diff --git a/games/mario/smario.bas b/games/mario/smario.bas deleted file mode 100755 index b4e1432..0000000 --- a/games/mario/smario.bas +++ /dev/null @@ -1,607 +0,0 @@ -' Super Mario style game -' by Svjatoslav Agejenko 1999 - -DECLARE SUB CL () -DECLARE SUB esc () -DECLARE SUB aargh () -DECLARE SUB die () - - -DECLARE SUB dead () -DEFINT A-Z -DECLARE SUB level1 () -DECLARE SUB nait (zaz%) -DECLARE SUB wiew1 (a1%, b1%, c1%, d1%, a$) -DECLARE SUB level () -DECLARE SUB save (a$) -DECLARE SUB picedit () -DECLARE SUB wiew (a1%, b1%, c1%, d1%, a$) -DECLARE SUB intro () -DECLARE SUB inpur () -DECLARE SUB mousedriver (AX%, bx%, cx%, dx%, lb%, rb%, EX%) -DECLARE SUB tahed () - -DIM SHARED sj$ -DIM SHARED ekraan -DIM SHARED text$(1 TO 500) -DIM SHARED pikkus - - -DIM SHARED ruum(-5 TO 20, -5 TO 20) AS STRING -DIM SHARED ruum1(-5 TO 20, -5 TO 20) AS STRING -DIM SHARED maa(1 TO 11, 1 TO 10) AS STRING * 15 -DIM SHARED maa1(1 TO 10) AS INTEGER -DIM SHARED maailm AS INTEGER -DIM SHARED maailm1 AS INTEGER -DIM SHARED text5(1 TO 15) AS STRING * 15 -DIM SHARED pilv(2100) -DIM SHARED kast(202) -DIM SHARED tellis(202) -DIM SHARED poosas(1000) -DIM SHARED puu(2000) -DIM SHARED tuhi(202) -DIM SHARED munt(202) -DIM SHARED munt1(400) -DIM SHARED munt2(200) -DIM SHARED mari0(402) -DIM SHARED mari(202, 1 TO 5) -DIM SHARED koll(1 TO 230, 1 TO 10) -DIM SHARED koll1(1 TO 202, 1 TO 5) -DIM SHARED kolla(1 TO 10) -DIM SHARED kollb(1 TO 10) -DIM SHARED kollal(1 TO 10) -DIM SHARED kolled(1 TO 10) - -DIM SHARED rahaz(1 TO 5) -DIM SHARED number(100, 0 TO 11) -DIM SHARED elud - -DIM SHARED raha -DIM SHARED clra, clrb -DIM SHARED a1, b1 - -DIM SHARED prog -prog = 1 -SCREEN 13 -maailm = 1 -maailm1 = 1 -level1 -1 -ekraan = 13: zpqf = 4 - -FOR a = 0 TO 254 -OUT &H3C8, a -OUT &H3C9, 0 -OUT &H3C9, 0 -OUT &H3C9, 0 -NEXT a -OUT &H3C8, 255 -OUT &H3C9, 60 -OUT &H3C9, 60 -OUT &H3C9, 60 -LOCATE 20, 3 -COLOR 255 -PRINT "LOADING " - - -CL -wiew 0, 0, 1, 1, "pilv" -GET (1, 1)-(109, 35), pilv -CL -wiew 0, 0, 1, 1, "kast" -GET (1, 2)-(20, 21), kast -CL -wiew 0, 0, 1, 1, "tellis" -GET (1, 2)-(20, 21), tellis -CL -GET (1, 2)-(20, 21), tuhi -wiew 0, 0, 1, 1, "mario1" -GET (1, 2)-(20, 21), mari(202, 1) -CL -wiew1 0, 0, 1, 1, "mario1" -GET (3, 2)-(22, 21), mari(202, 2) -CL -wiew 0, 0, 1, 1, "mario2" -GET (1, 2)-(20, 21), mari(202, 3) -CL -wiew1 0, 0, 1, 1, "mario2" -GET (3, 2)-(22, 21), mari(202, 4) -CL -wiew 0, 0, 1, 1, "poosas" -GET (1, 1)-(60, 21), poosas -CL -wiew 0, 0, 1, 1, "puu" -GET (1, 1)-(40, 60), puu -CL -wiew 0, 0, 1, 1, "munt" -GET (1, 1)-(10, 11), munt -CL -wiew 0, 0, 1, 1, "munt1" -GET (0, 2)-(20, 11), munt1 -CL -wiew 0, 0, 1, 1, "munt2" -GET (0, 2)-(20, 11), munt2 - -CL -wiew 0, 0, 1, 1, "0" -GET (0, 2)-(10, 11), number(100, 0) -CL -wiew 0, 0, 1, 1, "1" -GET (0, 2)-(10, 11), number(100, 1) -CL -wiew 0, 0, 1, 1, "2" -GET (0, 2)-(10, 11), number(100, 2) -CL -wiew 0, 0, 1, 1, "3" -GET (0, 2)-(10, 11), number(100, 3) -CL -wiew 0, 0, 1, 1, "4" -GET (0, 2)-(10, 11), number(100, 4) -CL -wiew 0, 0, 1, 1, "5" -GET (0, 2)-(10, 11), number(100, 5) -CL -wiew 0, 0, 1, 1, "6" -GET (0, 2)-(10, 11), number(100, 6) -CL -wiew 0, 0, 1, 1, "7" -GET (0, 2)-(10, 11), number(100, 7) -CL -wiew 0, 0, 1, 1, "8" -GET (0, 2)-(10, 11), number(100, 8) -CL -GET (0, 2)-(10, 11), number(100, 10) -wiew 0, 0, 1, 1, "9" -GET (0, 2)-(10, 11), number(100, 9) - -CL -wiew 0, 0, 1, 1, "tigu" -GET (1, 2)-(20, 21), koll1(202, 1) -CL -wiew 0, 0, 1, 1, "tigu1" -GET (3, 2)-(22, 21), koll1(202, 2) -CL -wiew1 0, 0, 1, 1, "tigu" -GET (1, 2)-(20, 21), koll1(202, 3) -CL -wiew1 0, 0, 1, 1, "tigu1" -GET (3, 2)-(22, 21), koll1(202, 4) - -SCREEN 0 -SCREEN 13 -level -a1 = 50 -b1 = 50 -edasi = 0 -liig = 1 -ov1 = 1 -ov2 = 2 -raha = 0 -elud = 3 -z = 1 -nait 0 -12 -IF b1 > 0 THEN GET (a1, b1)-(a1 + 20, b1 + 20), mari0: PUT (a1, b1), mari(202, liig), OR - -FOR ox = 1 TO 10 -IF kollb(ox) < 170 AND z = 1 THEN - kollb(ox) = kollb(ox) + kollal(ox) - kolla(ox) = kolla(ox) + kolled(ox) - GET (kolla(ox), kollb(ox))-(kolla(ox) + 20, kollb(ox) + 20), koll(202, ox) - IF kolled(ox) <= 0 THEN kolll = 1 ELSE kolll = 3 - IF zz > 2 THEN kolll = kolll + 1: IF zz = 3 THEN kollal(ox) = kollal(ox) + 1 - PUT (kolla(ox), kollb(ox)), koll1(202, kolll) -END IF -NEXT ox -SOUND 0, .5 -z = z + 1 -IF z > 3 THEN z = 1 -IF z = 1 THEN -zz = zz + 1 -IF zz > 5 THEN zz = 0 -alla = alla + 1 -IF edasi > 0 THEN edasi = edasi - 1: zy = zy + 1 -IF edasi < 0 THEN edasi = edasi + 1: zy = zy + 1 -IF zy > 2 THEN zy = 1 -IF zy = 2 THEN ov1 = 1: ov2 = 2 -IF zy = 1 THEN ov1 = 3: ov2 = 4 - -FOR ox = 1 TO 10 -IF kollb(ox) < 170 THEN -IF ruum((kolla(ox) + 20) / 20, (kollb(ox) + 9) / 20) = "m" THEN kollal(ox) = -1 -IF kolla(ox) > 270 THEN kolled(ox) = -1 -IF kolla(ox) < 2 THEN kolled(ox) = 1 -IF ruum((kolla(ox) + 28) / 20, kollb(ox) / 20) = "m" THEN kolled(ox) = -1 -IF ruum((kolla(ox) + 10) / 20, kollb(ox) / 20) = "m" THEN kolled(ox) = 1 -IF kolla(ox) - 20 < a1 AND kolla(ox) + 20 > a1 AND kollb(ox) - 5 < b1 AND kollb(ox) + 20 > b1 THEN aargh: dead: GOTO 12 -END IF -NEXT ox -END IF - -IF ruum((a1 + 15) / 20, (b1 + 9) / 20) = "m" THEN alla = -1: ao = 0 -IF ruum((a1 + 25) / 20, (b1 + 9) / 20) = "m" THEN alla = -1: ao = 0 -IF ruum((a1 + 20) / 20, (b1 - 8) / 20) = "m" THEN alla = 1: ao = 20 -IF ruum((a1 + 28) / 20, (b1) / 20) = "m" THEN edasi = -1: qa = 1 -IF ruum((a1 + 10) / 20, (b1) / 20) = "m" THEN edasi = 1: qa = 1 - -IF ruum1((a1 + 20) / 20, (b1 - 8) / 20) = "o" THEN alla = 1: ruum1((a1 + 20) / 20, (b1 - 8) / 20) = "": ruum((a1 + 20) / 20, (b1 - 8) / 20) = "2": clra = ((a1 + 20) / 20) - 1: clrb = (b1 - 8) / 20: clr = 1: SOUND 50, .5 -IF ruum((a1 + 20) / 20, (b1) / 20) = "1" THEN ruum((a1 + 20) / 20, (b1) / 20) = "2": clra = ((a1 + 21) / 20) - 1: clrb = (b1) / 20: clr = 1: raha = raha + 1: nait 1: SOUND 1000, 1: SOUND 2000, 1 -ao = ao + 1 -a$ = INKEY$ -IF a$ = CHR$(0) + "H" AND ao < 10 THEN alla = -6 -IF a$ = CHR$(0) + "M" AND qa = 0 THEN edasi = edasi + 3: liig = ov1 -IF a$ = CHR$(0) + "K" AND qa = 0 THEN edasi = edasi - 3: liig = ov2 -IF a$ = CHR$(27) THEN esc -IF a$ = "+" AND qa = 0 THEN maailm = maailm + 1: level: GOTO 12 -IF qa <> 0 THEN qa = 0 -IF edasi > 5 THEN edasi = 3 -IF edasi < -5 THEN edasi = -3 -IF alla > 3 THEN alla = 3 - -IF b1 > 0 THEN PUT (a1, b1), mari0, PSET - -IF z = 1 THEN -FOR ox = 10 TO 1 STEP -1 -IF kollb(ox) < 170 THEN PUT (kolla(ox), kollb(ox)), koll(202, ox), PSET -NEXT ox -END IF - - -b1 = b1 + alla -a1 = a1 + edasi -IF clr > 0 THEN clr = 0: PUT (clra * 20, clrb * 20), tuhi, PSET -IF a1 > 280 THEN maailm = maailm + 1: level: a1 = 3 -IF a1 < 2 THEN maailm = maailm - 1: level: a1 = 279 -IF b1 > 170 THEN FOR a = 3000 TO 500 STEP -100: SOUND a, .3: NEXT a: dead -GOTO 12 - -SUB aargh -a = 1700 -b = 1900 -FOR c = 1 TO 50 -a = a + 3 -b = b - 5 -SOUND a, .2 -SOUND b, .2 -NEXT c -END SUB - -SUB CL -LINE (0, 0)-(319, 150), 0, BF -LOCATE 20, 10 + prog -prog = prog + 1 -PRINT "." -END SUB - -SUB dead -IF maailm > 1 THEN maailm = maailm - 1 - -level -a1 = 20 -b1 = 100 -elud = elud - 1 -nait 0 -END SUB - -SUB die -DIM diep(1 TO 2000) -GET (0, 0)-(150, 20), diep -LOCATE 1, 1 -PRINT "You are " -LOCATE 2, 1 -PRINT " killed! " - -FOR x = 0 TO 80 -FOR y = 0 TO 16 -IF POINT(x, y) > 0 THEN LINE (x * 5, y * 5 + 50)-(x * 5 + 4, y * 5 + 54), 4, BF -NEXT y -NEXT x -PUT (0, 0), diep, PSET - -FOR a = 1 TO 100 -x = RND * 290 + 4 -y = RND * 170 + 4 -GET (x, y)-(x + 20, y + 20), diep -x = x + RND * 4 - 2 -y = y + RND * 4 - 1 -PUT (x, y), diep, PSET -NEXT a -FOR a = 1 TO 50 -a$ = INKEY$ -NEXT a -a$ = INPUT$(1) - -FOR a = 0 TO 100 -SOUND 0, .05 -LINE (0, a)-(320, a), 4 -LINE (0, 200 - a)-(320, 200 - a), 4 -NEXT a -FOR a = 32 TO 0 STEP -1 -SOUND 0, .5 -OUT &H3C8, 4 -OUT &H3C9, a -OUT &H3C9, 0 -OUT &H3C9, 0 -NEXT a -END - -END SUB - -SUB esc -FOR b = 0 TO 20 -FOR a = b TO 200 STEP 20 -LINE (0, a)-(320, a), 0 -NEXT a -SOUND 0, .5 -NEXT b -SYSTEM - -END SUB - -SUB inpur -sj$ = "" -WHILE sj$ = "" -sj$ = INKEY$ -WEND -END SUB - -SUB intro -CLS -wiew 2, 2, 10, 1, "win.i01" -END SUB - -SUB level -IF maailm > 10 THEN -CLS -PRINT "Mission complete!" -PRINT "Game over" -END -END IF - -FOR a = 1 TO 10 -text5(a + 1) = maa(a, maailm) -NEXT a - -FOR a = 1 TO 10 -FOR b = 1 TO 15 -IF ruum(b, a - 2) = "2" THEN MID$(maa(a, maailm1), b) = " " -NEXT b -NEXT a -maailm1 = maailm - -FOR a = -3 TO 20 -FOR b = -3 TO 20 -ruum(a, b) = "" -ruum1(a, b) = "" -NEXT b -NEXT a - -FOR a = 1 TO 10 -kollb(a) = 1000 -kolled(a) = 1 -kollal(a) = 0 -NEXT a - -CLS -PAINT (1, 1), maa1(maailm) -GET (1, 2)-(20, 21), tuhi -FOR a = 2 TO 10 -FOR b = 1 TO 15 -c$ = RIGHT$(LEFT$(text5(a), b), 1) -IF c$ = "-" THEN PUT ((b - 1) * 20, (a - 2) * 20), pilv, OR -IF c$ = "." THEN PUT ((b - 1) * 20, (a - 2) * 20), poosas, OR -IF c$ = "+" THEN PUT ((b - 1) * 20, (a - 2) * 20), puu, OR -IF c$ = "$" THEN PUT ((b - 1) * 20, (a - 2) * 20), munt, OR: ruum(b, a - 2) = "1" -IF c$ = "m" THEN PUT ((b - 1) * 20, (a - 2) * 20), kast, PSET: ruum(b, a - 2) = "m" -IF c$ = "o" THEN PUT ((b - 1) * 20, (a - 2) * 20), tellis, PSET: ruum(b, a - 2) = "m": ruum1(b, a - 2) = "o" -IF c$ = " " THEN ruum(b, a) = " " - -IF c$ = "1" THEN kolla(1) = (b - 1) * 20: kollb(1) = (a - 2) * 20: GET (kolla(1), kollb(1))-(kolla(1) + 20, kollb(1) + 20), koll(202, 1) -IF c$ = "2" THEN kolla(2) = (b - 1) * 20: kollb(2) = (a - 2) * 20: GET (kolla(2), kollb(2))-(kolla(2) + 20, kollb(2) + 20), koll(202, 2) -IF c$ = "3" THEN kolla(3) = (b - 1) * 20: kollb(3) = (a - 2) * 20: GET (kolla(3), kollb(3))-(kolla(3) + 20, kollb(3) + 20), koll(202, 3) -IF c$ = "4" THEN kolla(4) = (b - 1) * 20: kollb(4) = (a - 2) * 20: GET (kolla(4), kollb(4))-(kolla(4) + 20, kollb(4) + 20), koll(202, 4) -IF c$ = "5" THEN kolla(5) = (b - 1) * 20: kollb(5) = (a - 2) * 20: GET (kolla(5), kollb(5))-(kolla(5) + 20, kollb(5) + 20), koll(202, 5) -IF c$ = "6" THEN kolla(6) = (b - 1) * 20: kollb(6) = (a - 2) * 20: GET (kolla(6), kollb(6))-(kolla(6) + 20, kollb(6) + 20), koll(202, 6) -IF c$ = "7" THEN kolla(7) = (b - 1) * 20: kollb(7) = (a - 2) * 20: GET (kolla(7), kollb(7))-(kolla(7) + 20, kollb(7) + 20), koll(202, 7) -IF c$ = "8" THEN kolla(8) = (b - 1) * 20: kollb(8) = (a - 2) * 20: GET (kolla(8), kollb(8))-(kolla(8) + 20, kollb(8) + 20), koll(202, 8) -IF c$ = "9" THEN kolla(9) = (b - 1) * 20: kollb(9) = (a - 2) * 20: GET (kolla(9), kollb(9))-(kolla(9) + 20, kollb(9) + 20), koll(202, 9) -IF c$ = "0" THEN kolla(10) = (b - 1) * 20: kollb(10) = (a - 2) * 20: GET (kolla(10), kollb(10))-(kolla(10) + 20, kollb(10) + 20), koll(202, 10) -NEXT b -NEXT a -nait 0 -END SUB - -SUB level1 -maa1(1) = 1 -maa(1, 1) = "m " -maa(2, 1) = "m - - " -maa(3, 1) = "m " -maa(4, 1) = "m $ $ $ $ " -maa(5, 1) = "m $ $ $ $ " -maa(6, 1) = "m + momom " -maa(7, 1) = "m " -maa(8, 1) = "m . . " -maa(9, 1) = "mmmmmmmmmmmmmmm" - -maa1(2) = 1 -maa(1, 2) = " $2- " -maa(2, 2) = " o$ " -maa(3, 2) = " o$ - " -maa(4, 2) = " o$ 3 " -maa(5, 2) = " o o1 " -maa(6, 2) = " + mmom" -maa(7, 2) = " omom m " -maa(8, 2) = " $ $ $ $ m " -maa(9, 2) = "mmmm mm" - -maa1(3) = 1 -maa(1, 3) = " mmmmm" -maa(2, 3) = "- $ $ mmmmm" -maa(3, 3) = " $ $ $ mmmmm" -maa(4, 3) = " $ $ mmmmm" -maa(5, 3) = " . mmmmm" -maa(6, 3) = "mmmm 1 mmmm" -maa(7, 3) = " mm m" -maa(8, 3) = " mmm " -maa(9, 3) = "mmm mmmmm" - -maa1(4) = 0 -maa(1, 4) = "mmmmmmmmmmmmmmm" -maa(2, 4) = "m$ $ $ $ $ " -maa(3, 4) = "mm $m $4$ $ $ " -maa(4, 4) = "m$m mmmmmommmm" -maa(5, 4) = "m$ 3 2 m" -maa(6, 4) = "m1 ooooooomo m" -maa(7, 4) = "mooo$$$$$$$m m" -maa(8, 4) = " m" -maa(9, 4) = "mmmmmmmmmmmmmmm" - -maa1(5) = 0 -maa(1, 5) = "mmmmmmmmmmmmmmm" -maa(2, 5) = " m " -maa(3, 5) = "m m 1 3 mmmm" -maa(4, 5) = "m m mmm o m" -maa(5, 5) = "m m4567892o m" -maa(6, 5) = "m mooooommo m" -maa(7, 5) = "m mm" -maa(8, 5) = "m mmm" -maa(9, 5) = "mmmm mmm mmmm" - -maa1(6) = 1 -maa(1, 6) = "m " -maa(2, 6) = " - $ - " -maa(3, 6) = "m $ $ " -maa(4, 6) = "m o o $ " -maa(5, 6) = "m o o " -maa(6, 6) = "m + " -maa(7, 6) = "m " -maa(8, 6) = "mm 1 m 2 m " -maa(9, 6) = "mmmmmmmmmmmmmmm" - -maa1(7) = 1 -maa(1, 7) = " - " -maa(2, 7) = " - " -maa(3, 7) = " 1m" -maa(4, 7) = " 2mm" -maa(5, 7) = " 3mmm" -maa(6, 7) = " o + 4mmmm" -maa(7, 7) = " ooo 5mmmmm" -maa(8, 7) = " 6mmmmmm" -maa(9, 7) = "mmmmmmmmmmmmmmm" - -maa1(8) = 1 -maa(1, 8) = " mmmmmmmmmmmmm" -maa(2, 8) = " m123m456m789 " -maa(3, 8) = " mm$mmm$mmm$mm" -maa(4, 8) = " mm$$$$$$$$$$m" -maa(5, 8) = " mmom$mmm$mmmm" -maa(6, 8) = " o$$$$$$$$$ o" -maa(7, 8) = " omooooooo o" -maa(8, 8) = " - m " -maa(9, 8) = "mmmmmmmmmmmmmmm" - -maa1(9) = 0 -maa(1, 9) = " 12345" -maa(2, 9) = " 6789 " -maa(3, 9) = " mm" -maa(4, 9) = " m " -maa(5, 9) = " m " -maa(6, 9) = " m " -maa(7, 9) = " m " -maa(8, 9) = " m " -maa(9, 9) = "mm " - -maa1(10) = 1 -maa(1, 10) = "m " -maa(2, 10) = " - " -maa(3, 10) = "m - " -maa(4, 10) = "m + " -maa(5, 10) = "m " -maa(6, 10) = "m + 2 " -maa(7, 10) = "m mmm " -maa(8, 10) = "m . 1 " -maa(9, 10) = "mmmmmmmmmmm mm" -END SUB - -SUB load (a$) -OPEN a$ FOR INPUT AS #2 -INPUT #2, pikkus -FOR a = 1 TO pikkus -LINE INPUT #2, text$(a) -NEXT a -CLOSE -END SUB - -SUB nait (zaz) -IF elud < 0 THEN die -PUT (0, 180), munt1, PSET -rahaz(1) = rahaz(1) + zaz -FOR b = 1 TO 3 -IF rahaz(1) > 9 THEN rahaz(1) = rahaz(1) - 10: rahaz(2) = rahaz(2) + 1 -IF rahaz(2) > 9 THEN rahaz(1) = 0: rahaz(2) = 0: elud = elud + 1 -NEXT b -LOCATE 1, 1 -r = 3 -FOR a = 1 TO 2 -r = r - 1 -PUT ((a * 11) + 10, 180), number(100, rahaz(r)), PSET -NEXT a -IF elud > 10 THEN elud = 10 -PUT (43, 180), number(100, 10), PSET -PUT (53, 180), munt2, PSET -PUT (73, 180), number(100, elud), PSET -END SUB - -SUB save (a$) -OPEN a$ FOR OUTPUT AS #2 -PRINT #2, pikkus -FOR a = 1 TO pikkus -PRINT #2, text$(a) -NEXT a -CLOSE -END SUB - -DEFSNG A-Z -SUB tahed -CLS -t = 13 -FOR a = 1 TO 80 STEP 8 -FOR b = 1 TO 20 -t = t + 1 -LOCATE b, a -PRINT CHR$(t); t -NEXT b -NEXT a - -END SUB - -DEFINT A-Z -SUB wiew (a1, b1, c1, d1, a$) -laius1 = c1 - a1 -pikkus1 = d1 - b1 -OPEN a$ + ".i01" FOR INPUT AS #1 -INPUT #1, pikkus -FOR a = 1 TO pikkus -LINE INPUT #1, z$ -FOR b = 1 TO LEN(z$) -LINE (a1 + (b * c1), (b1 + (a * d1)) + 1)-(a1 + ((b + 1) * c1) - 1, b1 + ((a + 1) * d1)), ASC(RIGHT$(LEFT$(z$, b), 1)) - 40, BF -NEXT b -NEXT a -CLOSE -END SUB - -SUB wiew1 (a1, b1, c1, d1, a$) -a1 = a1 * 8 -b1 = b1 * 8 -laius1 = c1 - a1 -pikkus1 = d1 - b1 -OPEN a$ + ".i01" FOR INPUT AS #1 -INPUT #1, pikkus -FOR a = 1 TO pikkus -LINE INPUT #1, z$ -FOR b = LEN(z$) TO 1 STEP -1 -LINE (a1 + (b * c1), (b1 + (a * d1)) + 1)-(a1 + ((b + 1) * c1), b1 + ((a + 1) * d1)), ASC(LEFT$(RIGHT$(z$, b), 1)) - 40, BF -NEXT b -NEXT a -CLOSE -END SUB