L&HANS's Rom1(C)'85 HHW-softT `H w yh`h`H0 wLJI) L`I)`HHHH hhhLN*ROM *EXEC !BOOT **HWUTIL01*π;&*!BOOT$*TV0,1 PAGE=&1900:MODE7 CHAIN"MENU" (]*MENU *FX212,216 T`C t$ N$(20),D$(20) (I%=0 2 < I%=I%+1 FN$(I%),D$(I%) PN$(I%)="DONE" Z m%=I%-1 d7 n c(t$) x J%=1m% m%<10 l$=(64+J%)+"." c$=(129+(J%-1)6) !l$;c$;N$(J%);14);"-";D$(J%)  28,0,24,39,# ,'"enter the letter of your choice....";  A%= (A%) r%=A%-64 r%>0r%<=m%s 7'"select a letter from the A to ";(m%-64);"....";   s ">r%TvA,D@A,DJA,DTA,D^A,DhA,DrA,D|A,tFA,tPA,tZA 6=&1100:"WCOPIER"# @"DT_COPY" J26,12:*RUN TDISK T"TAP2DSK" ^ "ROMCON" h *RUN FIND i26,12:"FIND active!" j*D. k r"RECOVER" |*RUN FREEMEM }*D. ~ 26,12: *RUN ERR-RPT &26,12:"ERROR REPORTING active!" *D.  26,12:*RUN FKEYLST ,#*D.  *D.  26,12:   c(T$) ' L%=(T$)/2  Y%=12 141;134;20-L%);T$ & 0 X HANS's UTILITIES ROM b WCOPIER,Wouter's Copier l! DT_COPY,Disk-to-tape copier v TDISK,Tape-to-disk copier " TAP2DSK,Tape-to-disk uW#tility  ROM-CON,Rom manager  FIND,Find string utility $ RECOVER,Corrupted disk recover ! FREE MEMORY,Dynamic display $ ERROR REPORT,Debugging utility " FKEYLST,Function keys lister  DISK,Return to BASIC  DONE,DONE   *<200*MENU7: 4" ( ";N$(A%-64);" ) " > X=(500) H R [*WCOPIER\ (7:a:b%8*&A00,c%8*18*4,d%8*18,e%7,f%71:g%(4),h%(4),i%15,j%7,k%7,l%7,m%7:n:0,8)" Fast or Slowcopy (F/S) ? ";:o%=&5F:"FS",(o%))>0:(o%)="F"o%=o%= d:0,8)" no. of tracks to copy (40/80) ";:31,8)p%:p%=40p%=80:0,10)" enter source #drive ";:21,10)q%:q%>=0q%<4:0,12)" enter destination drive ";:10,27)r%:r%>=0r%<4:r%=q%s=s= D:8,10)"Remove system disc":t:su(10,"Enter source disc"):t v%=0p%-88::w%=07:x(q%,0):y%=v%+w%:z%=c%+18*4*w%:x(q%,y%):A(y%):b(q#%,y%,z%)=1?(e%+w%)=1:D|A?(e%+w%)=0:k%?w%=C% aT%=?z%:S%=z%?2:A(T%):j%?w%=d(q%,T%,S%):e(w%):(5)"Loading track ";T%;:T%<10(3);(2); ,3"= physical ";y%:o%M%=g(q%,T%,z%,b%+w%*&A00) @-o%(M%<>0)m%?w%=1:DJAo%m%?w%=0:D|A JVh%=0P%-1:S#%=z%?(h%*4+2):R%=b%+w%*&A00+h%*h%(E%):?(d%+w%*18+h%)=k(q%,T%,S%,R%): |,::su(10,"Enter destination disc"):t v%=0U%=m [w%=07:x(r%,0):y%=v%+w%:x(r%,y%):A(y%):?(e%+w%)=1U%B(y%):TRB?(e%+w%)=1TRB Mz%=c%+18*4*w%:T%=?z%:o(y%):A(T%#):o%m%?w%=0p(r%,T%,b%+w%*&A00):TRB Vh%=0P%-1:S%=z%?(h%*4+2):Z%=b%+w%*&A00+h%*h%(E%):r(r%,T%,S%,?(d%+w%*18+h%),Z%): 5:sv%<>p%-8:7:u(10,"enter source disc "):t &:x(r%,0):A(0): D0x(s%,t%):C(s%,&D000,1,&69,8,t%,0,0,0,0): bXAj?#(va%):wa%=&D000:C(0,wa%,2,&7A,9,&12,va%,0,0,0):C(0,wa%,2,&7A,9,&1A,va%,0,0,0): xC(x%,ya%,za%,a%,B%,D%,K%,L%,N%,g%):O%=:?i%=x%:i%!1=ya%:i%?5=za%:i%?6=a%:i%?7=D%:i%?8=K%:i%?9=L%:i%?10=N%:i%?11=g% xA%=&7F:X%=i%256:Y%=i%256:&FFF1:Q%=i%?B%:(Q%O%=M#)O%=:trBQ%j=:k=:10,18)(129)" Error number ";Q%:j,k);  &l:j=:k=:10,18)(26),j,k);: ]o(V%)::(5);"Formatting track ";V%:e(w%):C(r%,z%,5,&63,12,V%,g%(E%),E%*32+P%,0,16):  Tݤg(n%,V%,z%,R%):h%=l(z%):l%?w%=h%:C(n%,R%,3,&57,#10,V%,h%,E%*32+P%,0,0):=i%?10 4Lݤk(F%,G%,H%,ya%):C(F%,ya%,3,&57,10,G%,H%,E%*32+1,0,0):(Q%&20)=&20=: R=0: \Bp(n%,V%,Z%):h%=l%?w%:C(n%,Z%,3,&4B,10,V%,h%,E%*32+P%,0,0): )r(F%,G%,H%,I%,ya%):I%a%=&4Fa%=&4B *C(F%,ya%,3,a%,10,G%,H%,E%*32+1,0A#,0): *n:M%=:U%=:J%=04:g%(J%),h%(J%): * 11,128,21,256,74,512,255,1024,0,2048  Ft:5,20)(129)(157)(131)"Press to continue ";:*FX15,0 =32:: e(w%):E%=j%?w%:P%=k%?w%: .Su(o,A$):I%:I%=01:0,o+I%);(141)(129y#)(157)(131)((30-(A$))/2);A$;:: L^a:I%=01:0,I%);(141)(132)(157)(130);(2);"Wouter's DISC-COPIER"::28,0,24,39,4: VWB(V%):A(V%):C(r%,f%,5,&63,12,V%,11,&80,0,16):(5)"TRACK ";V%;" Unformatted ": ~aݤb(s%,w%,z%):I%,J%::I%=017*44:#z%!I%=&FFFFFFFF::C(s%,z%,3,&5B,10,w%,0,18,0,0):Q%<>0=1: .W%=-1:I%=017*44:u%=z%!I%:u%=&FFFFFFFF 3rb%=18:J%=017*44:u%=z%!J%J%/4W%W%=rb% :C%=W%+1:=0  Jݤd(s%,w%,sb%):E%:C(s%,&D000,3,&57,10,w%,sb%,33,0,0)::(Q%& #1E)=0=1 (&E%=-1:t=::E%=E%+1:E%>4t=:DZE FE%=1 E%=E%+1 P,C(s%,&D000,3,&57,10,w%,sb%,E%*32+1,0,0) Z(t(Q%&1E)=0:t"Size error":=0=E% n;ݤl(z%):I%,S%:S%=256:I%=2P%*4-24:z%?I%" "N$=N$+c$ : ap(C,s):x=20*((C-1)16)+1:y=1+((C-1)16):sx-1,y);131;x+15,y);135x,y);N$;x+;#11,y);C  c:*FX15,1 ҰI:0,18);"Type in the number of the files you"'"wish to transfer to tape.":0,20);"Type ALL for complete disk save"'"and press RETURN to start transfer.":I=0::G=I:I=I+1 0,22)f$:f$="ALL"a ?f=f$:B=(f=0):O=(f>=0f#<=F):0,22)" ";:O7:d\@ BN(I)=f:p(f,) B: a:I=1F:N(I)=I::G=F:  D I S K"::w(0,10,39,7):*FX21,0 Xw(0,10,39,7): bD(T):U=+T:=U: lt:*FX21,uy#0 vJ'''''':&94,&9D,&81:c("Press theSPACETO CONTINUE "):r(" "):: -c(t$):L%=40-(t$):S=(L%-1)/2:S);t$;: w(A,B,C,D):28,A,B,C,D: 4e:'':c("Do you want to generate more code") c("(Y/N)") r("YyNn"):"Nn",G$)  T^@:*TAP2DSK T Rn:O=&FFF7:P=&FFF4:B=0:H$="":h$="0123456789ABCDEF":l=:t=:p=:F=:m=::7: +*ROMCONY *D.  *FX229,1 7:i:h:a:f::g:r::w:4);"Toggle state of ROM No. ";80," ");11;11;:r$:e:r$="E"r$="e":u:4);11;"Press 'B' for protect, else any key ":A$=:A$="B"A$="b"s ( 2a:P=022:P%=c:[OPT P:.s:STA A:LDA#&80:STA&71:LD~#A#0:STA&70:LDY#7:LDA(&70),Y:STA&70:LDY#2:LDA(&70),Y:LDY#8:CMP#"C":BNE n:.l:INY:LDA B,Y:BEQ f:STA C,Y:JMP l:.f:LDA#&0D:STA C,Y:LDA B+6:.e:STX A:RTS:.n:INY:LDA#&0D:STA C,Y:LDA#0 0s$(I%)="ON "s$(I%)="OFF" : h:I%=03:0,I%);129157131::9,0);141;"SIDEWAYS ROM CONTROL": #9,1);141;"SIDEWAYS ROM CONTROL":3,3)"Enter 'E' to exit": e:W%=(r$):W%>16 !(W%=0(r$)<>48)t$(W%)="" >c%(W%)=0c%(W%)=t%(W%):s$(W%)="ON "c%(W%)=0:s$(W%)="OFF"  /u:I%=015:I%?&2A1=c%(I%):I%?d=c%(I%):: (s:A%=249:Y%=0:X%=I*ROMCON%Yb256:o:*FX248,0 *FX247,76  *FIND Ω  `pq $ L : L p p` eppp tЩrs {r+`ȱr*ȱr8urirsisr s prt ue r isLY rsrsLY #v "Evv"Hvh 痐 H h u`h XL ȱp `FI5*FIND ND  *RECOVERU9 *D. 7:z=&70:d=0:m=80:r=&19:b%=&FFFF1200:p=022:P%=&900:[OPT p:.t:LDA#22:JSR&FFEE:LDA#7:JSR&FFEE:LDA#&21:STA ss:LDA#(b%&FFFF)256:STA A+1:LDX#0:.re:LDA x,X:BEQ n:STA&7FC0,X:INX:BNE re:.n LDA#0:STA H:STA I:JSR s:LDY#0:.h:LDA S,Y:BEQ g JSR&FFEE:#INY:BNE h:.g:JSR M:JSR rs:JSR J:.c:LDX#&E6:JSR k:BNE B:LDA H:A I:BEQ B:DEC I:LDA I:BPL g:LDA#9:STA I:DEC H:BPL g:.B:LDX#&86:JSR k:BNE C:LDA H:CMP#m-1:BNE T:LDA I:CMP#9:BEQ C:.T:INC I:LDA I:CMP#10:BNE g:LDA#0:STA I:INC H:BPL g:.C (LDX#&C6:JSR k:BNE D:LDA&# H:CMP#m-1:BNE U:LDA#0:STA H:JMP g:.U:INC H:JMP g:.D:LDX#&D6:JSR k:BNE f:LDA H:BNE V:LDA#m-1:STA H:JMP g:.V:DEC H:JMP g:.f:LDX#&DF:JSR k:BNE ro:.W:LDA H:CMP#m-1:BNE X:LDA I:CMP#9:BNE X:JMP g:.X:INC I:LDA I:CMP#10:BNE rc 2LDA#0:STA I:INC H:.rc:JSR M:JSR r"#s:JSR J:LDX#&AE:JSR k:BEQ te:LDA b%&FFFF:CMP#&D:BNE W:.te:JMP g:.ro:LDX#&9F:JSR k:BEQ ra:.P:LDX#&DD:JSR k:BEQ l:JMP c:.l:LDA#15:LDX#0:JSR&FFF4:LDA#12:JMP&FFEE:.ra:LDA#&7C-r:STA z:LDA#0:STA A  ų* + pJ % #   = >  %   hhhl L% ɍ L  e * i+ m i*+ ei*+ L X^ X`+*ERR-RPT u*FKEYLST ۿŢZ pq t q # pqiqکv D vv & 8v # z  w ew  `rsr0 `up D tp D 8tuuut D ` L ɀ  H! hI I@  V*FKEYLST ۿ   ?"  |  LH| h`JJJJ . 8) i0:i Lxy xy` Function key dump *KEY free bytes Edit key status : cursorASCII f-KEY ??????^+