; DISKIO (LISTING 7) MODULE:BYTE err BYTE ARRAY fln(16),abort=" �������Ġ" PROC MyErr(BYTE e) Position(1,16):Print("�����Ҡ") PrintB(e):err=1:mes^=lin21 Position(12,21):PrintB(e) WHILE key=255 DO OD key=21:RETURN PROC CIO=$E456(BYTE a,x) PROC IO2(BYTE cmd CARD buf,len) BYTE IOcmd=866 ;7-LOAD 11-SAVE CARD IObuf=868,IOlen=872 IOcmd=cmd:IObuf=buf:IOlen=len CIO(0,32):RETURN PROC Dir():BYTE i,j,lft=82 BYTE ARRAY a(18),f(9) lft=22:Position(22,3) FOR i=1 TO 11 DO Pb(16):PutE() OD Position(22,3):j=0 Close(2):Open(2,"D:*.V3D",6,0) FOR i=1 TO 22 DO InputSD(2,a) IF a(0)=16 THEN EXIT FI SCopyS(f,a,3,10):Print(f) IF j=0 THEN j=1:Put(' ) ELSE j=0:PutE() FI OD Position(22,14):Print(a) Close(2):lft=1:RETURN PROC Inp(BYTE ARRAY f):BYTE i BYTE ARRAY a(10) SCopy(f,"D: ") Position(23,16):Pb(15) Position(23,16):InputS(a) i=a(0)+3:IF i>11 THEN i=11 FI SAssign(f,a,3,10):SAssign(f,".V3D",i,14) Position(23,16):Print(f):RETURN PROC SaveP():BYTE k:CARD n,t Position(1,16):Print("�Ӡ��֠Š ") Inp(fln) Position(1,16):Print("[S]-���Š") WHILE key=255 DO OD k=key:key=255 IF k<>62 THEN Position(1,16):Put('S) Print(abort):RETURN FI t=Error:Error=MyErr:err=0 n=8*P(0)+18:Close(2):Open(2,fln,8,0) IF err>0 THEN Close(2):Error=t:RETURN FI IO2(11,P,n):IO2(11,C7,5):Close(2) Position(1,16):Print(" ����Ġ ") Error=t:Dir() RETURN PROC LoadP():BYTE k:CARD n,t Position(1,16):Print("�̠Ϡ��Ġ ") Inp(fln) Position(1,16):Print("[L]-���Ġ") WHILE key=255 DO OD k=key:key=255 IF k<>0 THEN Position(1,16):Put('L) Print(abort):RETURN FI t=Error:Error=MyErr:err=0 Close(2):Open(2,fln,4,0) IF err>0 THEN Close(2):Error=t:RETURN FI IO2(7,P,2):n=8*P(0)+16 IO2(7,P+2,n):IO2(7,C7,5):Close(2) Position(1,16):Print(" �����Ġ ") Error=t:SetDfault():CPon() Position(30,19):Pb(6):RETURN
Back to previous page