S=B00; MODULE DFORMAT; /*********************************************************************/ /* Dieses Programm formatiert 5,25" und 3,5" Disketten per Menue */ /* Auswahl und unterstuetzt auch ein freies Format, soweit es unter */ /* unter RTOS implementiert ist. */ /*-------------------------------------------------------------------*/ /* H.Ehrlich Hannover, 04.03.88 */ /*-L-----------------------------------------------------------------*/ SYSTEM; ATARI: A1<->; XC : XC ->; PROBLEM; SPC ATARI DATION INOUT ALPHIC CONTROL(ALL); SPC XC DATION OUT ALPHIC CONTROL(ALL); DCL FORMINFO CHAR(20); DCL FREI CHAR(12); DCL LW CHAR(02); DCL ANTW CHAR(01); DCL AW CHAR(01); DCL OK BIT(1); DCL SCHLUSS BIT(1); DCL GUT INV BIT(1) INIT('1'B); DCL NIX INV BIT(1) INIT('0'B); FORMAT: TASK; SCHLUSS= NIX; WHILE NOT SCHLUSS REPEAT FREI= ' -- DIR FX:'; OK= NIX; WHILE NOT OK REPEAT PUT TOCHAR(27) CAT '*' TO ATARI BY A,SKIP; PUT '======================' TO ATARI BY (29)X,LIST,SKIP; PUT '| DFORMAT V1.0 h88E |' TO ATARI BY (29)X,LIST,SKIP; PUT '======================' TO ATARI BY (29)X,LIST,(4)SKIP; PUT '80 TRACKS DOUBLE SIDED 636K >1<' TO ATARI BY (9)X,LIST,SKIP; PUT '80 TRACKS DOUBLE SIDED 795K >2<' TO ATARI BY (9)X,LIST,SKIP; PUT '80 TRACKS SINGLE SIDED 316K >3<' TO ATARI BY (9)X,LIST,SKIP; PUT '80 TRACKS SINGLE SIDED 395K >4<' TO ATARI BY (9)X,LIST,SKIP; PUT '40 TRACKS DOUBLE SIDED 316K >5<' TO ATARI BY (9)X,LIST,SKIP; PUT '40 TRACKS DOUBLE SIDED 395K >6<' TO ATARI BY (9)X,LIST,SKIP; PUT '40 TRACKS SINGLE SIDED 156K >7<' TO ATARI BY (9)X,LIST,SKIP; PUT '40 TRACKS SINGLE SIDED 195K >8<' TO ATARI BY (9)X,LIST,SKIP; PUT 'Freies Format -auch Harddisk- >9<' TO ATARI BY (9)X,LIST,SKIP; PUT TO ATARI BY SKIP; PUT 'Ihre Auswahl bitte >' TO ATARI BY (9)X,LIST; GET AW FROM ATARI BY SKIP,A; CASE TOFIXED(AW)-48 ALT /*1*/ FORMINFO= 'FORM D FX:A5DS80'; OK= GUT; ALT /*2*/ FORMINFO= 'FORM D FX:B5DS80'; OK= GUT; ALT /*3*/ FORMINFO= 'FORM D FX:A5SS80'; OK= GUT; ALT /*4*/ FORMINFO= 'FORM D FX:B5SS80'; OK= GUT; ALT /*5*/ FORMINFO= 'FORM S FX:A5DS40'; OK= GUT; ALT /*6*/ FORMINFO= 'FORM S FX:B5DS40'; OK= GUT; ALT /*7*/ FORMINFO= 'FORM S FX:A5SS40'; OK= GUT; ALT /*8*/ FORMINFO= 'FORM S FX:B5SS40'; OK= GUT; ALT /*9*/ PUT 'Geben Sie Ihr Format ein!' TO ATARI BY SKIP,LIST,SKIP; PUT 'Informationen zum Format sind unter B-II-25 im Handbuch zu finden!' TO ATARI BY LIST,SKIP; GET FORMINFO FROM ATARI BY SKIP,A; OK= GUT; OUT PUT 'FALSCHE EINGABE !!!' TO ATARI BY LIST,SKIP; PUT 'Weiter mit >J<' TO ATARI BY LIST; GET ANTW FROM ATARI BY SKIP, A(1); OK= NIX; FIN;/*CASE*/ END;/*WHILE*/ OK= NIX; WHILE (NOT OK ) AND (AW NE '9') REPEAT PUT TOCHAR(27) CAT '*' TO ATARI BY A,(8)SKIP; PUT 'Welches Laufwerk enthaelt die neue Diskette? (0/1)' TO ATARI BY (5)X,LIST; GET LW FROM ATARI BY SKIP, A(1); IF (LW EQ '0' OR LW EQ '1') THEN OK= GUT; ELSE PUT 'FALSCHE EINGABE !!!' TO ATARI BY LIST,SKIP; PUT 'Weiter mit >J<' TO ATARI BY LIST; GET ANTW FROM ATARI BY SKIP, A(1); FIN; END; /*WHILE*/ IF AW NE '9' THEN FORMINFO.CHAR(9)= LW; FREI.CHAR(10)= LW; ELSE FREI.CHAR(10)= FORMINFO.CHAR(9); FIN; PUT FORMINFO CAT FREI TO XC BY LIST,SKIP; PUT TO ATARI BY (3)SKIP; PUT 'Noch eine Diskette formatieren? (J/N)' TO ATARI BY (5)X,LIST; GET ANTW FROM ATARI BY SKIP,A; IF (ANTW EQ 'N' OR ANTW EQ 'n') THEN SCHLUSS= GUT; PUT 'Ende des Formatierprogrammes !!!' TO ATARI BY SKIP,LIST,SKIP; FIN; END;/*HAUPTSCHLEIFE*/ END;/*MODULE*/ MODEND;