Tato utilitka vam vypise rozne zaujimave informacie o subore. Vsetky informacie su prevzate z adresarovej polozky daneho suboru. Zaujimavostou tejto utilitky je to ze je cela napisana v basicu bez pouzitia strojaku. Velmi pekne demostruje pouzitie basicoveho rozhrania pre ovladanie dosu a moznosti upravenej BS romky. |
Vypis basicu utilitky vyzera nejak takto:
| 10 | REM 13.03.1993 Busy soft |
| 20 | LET s=1 |
| 30 | POKE 23693,56: BORDER 6 |
| 40 | CLS : IF FN ?<288 THEN PRINT "S touto verziou dosu nefungujem!": STOP |
| 50 | `%ff55 |
| 60 | LET n=FN #: LET m$=FN * |
| 70 | IF NOT LEN m$ THEN PRINT "System error 16": STOP |
| 80 | PRINT "Busy soft: >File-info utilitka<" |
| 90 | PRINT "Disk:";FN @'"Meno:";m$(7 TO 16);" ";m$(17 TO 32) |
| 100 | `0: LET m$=FN * |
| 110 | PRINT "Adresar:";FN $;" Pocet suborov:";n |
| 120 | IF NOT LEN m$ THEN PRINT "Tento adresar je prazdny.": STOP |
| 130 | PRINT "Meno:";m$(7 TO 16);" ";m$(17 TO 32) |
| 140 | PRINT "Ovladacie klapky:HORE,DOLE,ENTER" |
| 150 | PRINT '"Cislo suboru:";s |
| 160 | `s: LET m$=FN * |
| 170 | IF NOT LEN m$ THEN PRINT "[cislo suboru je mimo adresara]": GO TO 330 |
| 180 | IF NOT CODE m$ THEN PRINT "[Prazdna adresarova polozka]": GO TO 330 |
| 190 | FOR m=7 TO 16: IF CODE m$(m)<CODE " " THEN LET m$(m)="" |
| 200 | NEXT m: POKE %5b00,m$ |
| 210 | LET t=CODE m$(6) |
| 220 | PRINT '"Hlavicka..." |
| 230 | PRINT " Typ:";t;" ";"basic" AND t=0;"pole" AND (t=1 OR t=2);"bytes" AND t=3;"bez_hlavicky" AND t=4 |
| 240 | PRINT " Meno:";m$(7 TO 16) |
| 250 | PRINT " Dlzka:";VAL %5b10 |
| 260 | PRINT " Adresa:";VAL %5b12 |
| 270 | PRINT " Dlz.bas:";VAL %5b14 |
| 280 | PRINT '"Telo..." |
| 290 | PRINT " Adresa:";VAL %5b16 |
| 300 | PRINT " Dlzka:";VAL %5b18+65536*VAL %5b1a |
| 310 | PRINT " Flag:";CODE m$(29) |
| 320 | PRINT " Atributy:";CODE m$(30) |
| 330 | PRINT #0;AT 1,0;s;" ";: PAUSE : LET z$=INKEY$: BEEP .01,20 |
| 340 | IF CODE z$=11 THEN LET s=s-1: IF s<1 THEN LET s=n+1 |
| 350 | IF CODE z$=10 THEN LET s=s+1: IF s>n+1 THEN LET s=1 |
| 360 | IF CODE z$=13 THEN INPUT "Cislo suboru:";s: GO TO 30 |
| 370 | IF NOT LEN INKEY$ THEN GO TO 30 |
| 380 | LET z$=INKEY$ |
| 390 | PRINT #0;AT 1,0;s;" "; |
| 400 | LET z$=INKEY$: BEEP .001,40: PAUSE PI: GO TO 340 |
| 410 | GO TO 30 |