NODE.BAS Copyright 1991 Louis Self For the Tandy 100/102/200. See NODE.DOC for further instructions and system requirements. ,,, INSTALLATION of NODE.BA is automatically done by your computer in less than two minutes: Check that you have about 10k RAM free, put this entire file in your PASTE buffer, enter BASIC from main menu, type NEW, press PASTE and ignore the error messages you see. Your computer will beep when installation is complete. ----> INSTALLING NODE.BA HERE <--- KILL"NODE.BA 4 RUN10 5 I$=" RUN"+CHR$(13):POKEP,LEN(I$):FORT=1TOLEN(I$):POKE2*T+P-1,ASC(MID$(I$,T)):POKE2*T+P,0:NEXT:RETURN 6 L=PEEK(D)+PEEK(D+1)*256:RETURN 7 PRINTCHR$(34)CHR$(34)" or name "F$;:INPUTF$:IFF$=""THENRUNELSEIFF$="nu"ORF$="NU"THENMENU 8 IFLEFT$(RIGHT$(F$,3),1)<>"."THENF$=LEFT$(F$,6)+".DO":RETURNELSERETURN 9 IFPEEK(1)=171THENREADX,X,X,X,C,CC,D,P:RETURNELSEREADC,CC,D,P,X,X,X,X:RETURN:DATA63013,32454,64728,-86,61162,39703,63704,64798 10 DEFSNGB-Z:DEFSTRA:DIMA(17):F$="":S$=F$:GOSUB9:FORI=0TO17:READA(I):NEXT:DATA"###,###",Quit ,Memory ,Find ,Catalog ,Edit ,Run ,Save ,Load ,Del-DataPac ,Inv ,Vis ,Node ,Kill-RAM ,PwrD ,3dsk ,TS-DOS ,MemC] 20 CLS:PRINT" NODE.BA (C) Louis Self 1991 "TIME$" "A(1)" or "DATE$"Both -> "A(2);A(3);A(4)" DaPak-> "A(5);A(6);A(7);A(8);A(9)" "A(10);A(11);A(12)" RAM -> "A(13);A(14);A(15);A(16);A(17) 40 ONERRORGOTO0:PRINT:PRINT" Q M F C E R S L D I V N K P 3 T]"; 45 I=1*4389 50 I$=INKEY$:IFI<1THENPOWEROFF,RESUME:GOTO45ELSEI=I-1:IFI$=""THEN50ELSEI=INT(INSTR(" QqMmFfCcEeRrSsLlDdIiVvNnKkPp33Tt]]",I$)/2):PRINT 70 OUT129,0:F=INP(131):IFF=131THENBEEP:PRINT"Shut off computer and connect DataPac":STOPELSEIFF<>64 THENBEEP:PRINT"DataPac is not formatted":STOP 80 PRINTA(I)" ";:ONIGOTO100,200,300,400,500,600,700,800,900,1000,1100,1200,1300,1400,1500,1600,1700,20 90 GOTO20 100 PRINT"in 100";:GOTO50 200 CALLC,14:GOSUB6:PRINT"bytes free: RAM DaPac ";:PRINTUSING" "+A(0);FRE(0),L*256:GOTO40 300 GOSUB7:CALLC,27,VARPTR(F$):IFPEEK(-1)=0THENPRINT"File not found in DataPac":GOTO360 340 GOSUB6:PRINTUSINGA(0);L;:PRINT" = Length in DataPac 360 CALLC,28,VARPTR(F$):IF PEEK(-1)=0THENPRINT"File not found in RAM":GOTO40 380 GOSUB6:PRINTUSINGA(0);L;:PRINT" = Length in RAM":GOTO40 400 PRINT" RAM":FILES:PRINT" or All BA CO DO Lfiles (disk)":I=INT(INSTR(" BbCcLlDd....Aa",INPUT$(1))/2):IFI=0THEN40ELSEPRINT:PRINT"> File Printer Screen":I$=MID$("LCD:FILELPT:",(1+INT(INSTR(" FfPp",INPUT$(1))/2))*4-3,4) 405 IFI=3THENONERRORGOTO1560:IFI$="LCD:"THENLFILES:GOTO445ELSE IFI$="LPT:"THENLPRINT:LPRINTTIME$" "DATE$:LFILESTOI$:LPRINTSTRING$(8,13):GOTO445 410 IFINSTR(I$,":")=0THENPRINTI$;:INPUTI$:PRINT"--Data being transfered--":IFI=3THENLFILESTOI$:GOTO445 415 CALLC,12:F=0:OPENI$FOROUTPUTAS1:PRINT#1,TIME$" "DATE$; 420 IFIAND1THENN=128:GOSUB450 425 IFIAND2THENN=160:GOSUB450 430 IFIAND4THENN=192:GOSUB450 440 PRINT#1," "F"Files";:CLOSE:IFI$="LPT:"THENLPRINTSTRING$(9,13) 445 CALLC,12:GOTO40 450 PRINT#1,",,":POKE-1,N 455 CALLC,10,VARPTR(S$):IF PEEK(-1)=0THENRETURN 470 PRINT#1,S$" ";:F=F+1:IFI$<>"LCD:"THENPRINT#1, 480 GOTO455 500 GOSUB7:CALLC,20,VARPTR(F$):IFPEEK(-1)=0THENPRINT"File not found":GOTO40 540 GOTO20 600 GOSUB7:CALLC,13,VARPTR(F$):CALLC,22,VARPTR(F$):IFPEEK(-1)=0THENPRINT"Run failed":GOTO40ELSEGOTO40 620 GOTO40 700 :GOSUB7:CALLC,13,VARPTR(F$):CALLC,24,VARPTR(F$):IF PEEK(-1)=0 THENBEEP:PRINT"Save failed":GOTO40ELSEPRINTF$" saved from RAM to DaPac":GOTO40 800 GOSUB7:CALLC,13,VARPTR(F$):CALLC,23,VARPTR(F$):IF PEEK(-1)=0 THENBEEP:PRINT"Load failed":GOTO40ELSEPRINTF$" loaded from DaPac to RAM":GOTO40 900 GOSUB7:CALLC,26,VARPTR(F$):IFPEEK(-1)=0THENBEEP:PRINTF$" not found":GOTO40ELSEPRINTF$" Deleted in DaPac":GOTO40 1000 PRINT"NOT PRGRAMED YET":GOTO40 1100 PRINT"NOT PRGRAMED YET":GOTO40 1200 IFPEEK(1)=171THENCALL61167,2:GOTO40ELSECALL63012:GOTO40 1300 GOSUB7:ONERRORGOTO1360 1320 IFRIGHT$(F$,3)=".BA"ORRIGHT$(F$,3)=".ba"THENGOSUB5:KILLF$:END 1340 KILLF$:PRINTF$" Killed in RAM":GOTO1380 1360 BEEP:PRINTF$" not found":RESUME1380 1380 GOTO40 1400 CALLCC:IFPEEK(1)=171THENCLEAR120,58960:F$="POWR-D.CO"ELSECLEAR120,59569:F$="PD-102.CO" 1420 GOTO1620 1500 PRINT"Select disk function: ave oad ill ormat disk":I=INT(INSTR(" SsLlKkFf",INPUT$(1))/2):IFI=0THEN20ELSEPRINTMID$("SLKF",I,1)" ";:ONERRORGOTO1560:IFI=4THEN1550ELSEIFI>0THENGOSUB7:ONIGOTO1520,1530,1540:GOTO40 1510 GOTO40 1520 SAVEM"0:"+F$:PRINTF$" saved to disk"::GOTO40 1530 GOSUB5:LOADM"0:"+F$,F:PRINTF$" loaded from disk":END 1540 KILL"0:"+F$:GOTO40 1550 PRINT"Sure":IFINSTR("Yy",INPUT$(1))THENCALLMAXRAM+15,6:BEEP:GOTO40ELSEGOTO40 1560 I=ERR:RESUME 1570 1570 ONERRORGOTO0:CLOSE 1573 BEEP:IFI=5THENPRINTCHR$(27)"A"CHR$(27)"KDOS not installed"ELSEIFI=52THENPRINT"File not found"ELSEIFI=55THENPRINT"DOS not installed or BN error"ELSEIFI>58ANDU<68THENPRINTMID$(" NRDNCMDAWPDFNDHTAE",(I-58)*2,2);" Error"ELSEPRINT"Error #"I 1574 GOTO40 1600 CALLCC:IFPEEK(1)=171THENCLEAR120,55200:F$="DOS200.CO"ELSECLEAR120,55200:F$="DOS100.CO" 1620 GOSUB9:CALLC,13,VARPTR(F$):CALLC,22,VARPTR(F$):IFPEEK(-1)=0THENBEEP:PRINT"Unable to load DOS":BEEP:RUNELSERUN 1700 CALLCC:CLEAR120,MAXRAM:RUN SAVE"NODE BEEP:BEEP:BEEP RUN