1 'MONTD2.200 - based on MONTD2 for the Model 100 by Phil Wheeler, adapted for the Tandy 200 by Robert Benson (8/19/92) 10 CLEAR50,55376:MAXFILES=1:DEFINTR-X:Z=58980:CC=0:CT=0:HX$="0123456789ABCDEF":E$=CHR$(27):N$=CHR$(27)+"q":R$=CHR$(27)+"p" 11 IFPEEK(Z)<>229ORPEEK(Z+1)<>94ORPEEK(Z+239)<>4ORPEEK(Z+240)<>195THENBEEP:PRINT@130,"FLOPPY not installed!":CLEAR50,MAXRAM:ENDELSEPOKE61234,128 12 CLS:PRINT@45,R$" TDD-2 Sector Examine & Change "N$ 13 PRINT@86,"S)elect a New Starting Sector" 14 PRINT@126,"G)o to Next Sector on Disk" 15 PRINT@166,"D)ump Sector to DO File" 16 PRINT@206,"W)rite Sector to Disk" 17 PRINT@246,"R)elocate Sector"S 18 Q$=INKEY$:IFQ$=""GOTO18ELSEONINSTR("GgSsDdRrWw",Q$)GOTO20,20,21,21,55,55,68,68,69,69 19 IFPEEK(64799)=7GOTO76ELSE18 20 S=S+1:GOTO22 21 CLS:PRINT@125,"Starting Sector ";:LINEINPUTS$:IFS$=""GOTO12ELSES=VAL(S$) 22 IFS>159THENBEEP:CLS:PRINT@130,"Sector Out of Range!":FORK=1TO1200:NEXT:GOTO12 23 CLS:PRINT@128,"Now Reading Sector No."S:GOSUB70:CALLZ,3,55376:GOSUB71:I=55380 24 CLS:IFS>80THENPRINT" "R$" Second 102400 bytes - Disk Drive 2 "N$:GOTO27 25 CLS 26 PRINT" "R$" Use ESC key to Return to Main Menu "N$ 27 IFI<0THENI=I+65536 28 IFI>65535THENI=I-65536 29 K=I-65536 30 IFI<55380THENI=I+8:K=-10156:GOTO26 31 IFI>56672THENI=I-8:K=-8868:BEEP 32 K1=K+10164:AX$="":S$=STR$(S) 33 PRINTRIGHT$(S$,2); 34 FORR=1TO4:PRINTMID$(HX$,(INT(K1/16^(4-R))AND15)+1,1);:NEXT 35 FORK=ITOI+7:R=PEEK(K):PRINT" "MID$(HX$,R/16+1,1);MID$(HX$,(RAND15)+1,1); 36 IFR<32THENR=46 37 AX$=AX$+CHR$(R):NEXT 38 PRINT" "AX$; 39 IFCT<>0THENCT=CT-1:GOTO49 40 PRINT@CSRLIN*40+8+CC*3,""; 41 I$=INPUT$(1) 42 IFI$>CHR$(96)THENI$=CHR$(ASC(I$)-32) 43 IFINSTR(1,HX$,I$)THENPOKEI+CC,(PEEK(I+CC)AND15)*16+INSTR(1,HX$,I$)-1:PRINT@CSRLIN*40,"";:GOTO27 44 T=ASC(I$) 45 IFT=23THENIFI<55624THENT=20ELSECT=15:I=I+248*(T=23):T=30 46 IFT=20THENCT=15:T=30 47 IFT=26THENIFI>56424THENT=2ELSECT=15:I=I-248*(T=26):T=31 48 IFT=2THEN:CT=15:T=31 49 IFT=30THENI=I-8:IFCSRLIN=0THENPRINTE$"L";:GOTO27ELSEPRINT@(CSRLIN-1)*40,"";:GOTO27 50 IFT=31THENI=I+8:PRINT:GOTO27 51 IFT=28THENCC=CC+1:IFCC>7THENCC=0:I=I+8:PRINT:GOTO27 52 IFT=29THENCC=CC-1:IFCC<0THENCC=7:T=30:GOTO49 53 IFI$=E$GOTO12 54 GOTO40 55 CLS:F$="":PRINT@124,"File for Dump ";:LINEINPUTF$:IFF$=""GOTO12 56 CLS:PRINT@125,"N)ew file A)ppend file Q)uit? " 57 Q$=INKEY$:IFQ$=""GOTO57ELSEONINSTR("NnAaQq",Q$)GOTO58,58,59,59,76,76:GOTO57 58 OPENF$FOROUTPUTAS1:GOTO60 59 OPENF$FORAPPENDAS1 60 CLS:PRINT@132,"Writing to RAM...." 61 PRINT#1,"----------" 62 PRINT#1,"Sector"S 63 PRINT#1,"----------" 64 FORJ=0TO1291 65 PRINT#1,CHR$(PEEK(55380+J));:NEXT 66 PRINT#1, 67 CLOSE:BEEP:GOTO12 68 CLS:PRINT@125,"Write to Sector ";:LINEINPUTS$:IFS$=""GOTO12ELSES=VAL(S$) 69 CLS:PRINT@131,"Writing to Disk....":GOSUB70:CALLZ,4,55376:GOSUB71:GOTO12 70 POKE55376,84:POKE55377,216:POKE55378,S:RETURN 71 ER=PEEK(55376):IFER<=1THENRETURN 72 IFER=5THENW$="Unformatted Sector":GOTO75 73 IFER=6THENW$=" Write Protected":GOTO75 74 W$="Check Drive & Disk" 75 BEEP:PRINT@211,W$:FORK=1TO1200:NEXT:GOTO12 76 POKE61234,0:CLEAR50,MAXRAM:MENU