>Patch122 ! Patch Z80 Tube Client v1.20  J.G.Harston ( Fixes: 2- Bad check for ROM type byte on execute <) Unbalanced stack entering raw code F Truncated OSWORD 5,14,15 P Corrected error numbers Z SEEK0 overwrites stack d7 Execute patch will co-exist with BBC BASIC patch n: xload$ ="Z80Tube120" oswFF$="OswFFv3" save$ ="Z80Tube122" : ! mem% &FFF,ctrl% 19,name% 19 "Load "+load$+" "+~mem% 4 mem%!&2A6<>&30322E31:"Not v1.20 Client ROM": asm 0"Save "+save$+" "+~mem%+"+1000 0 FFFBBC00" "Stamp "+save$  : asm REBOOT=&FCAF:PROG=&FCA8  P=0 1 P%=mem%-&F000+&F7FC " [OPT P*3 ,6\ &F7FC: LD A,(HL):LD DE,copystr-mem%+&F000:LD B,4 6\ &F802: .loop @*\ &F802: LD A,(DE):CP (HL):JR NZ,LF826 J$\ &F806: INC HL:INC DE:DJNZ loop T\ &F80A: POP HL:DEC HL ^\ &F80C: LD A,(REBOOT) h\ &F80F: A:JR NZ,LF829 r\ &F812: LD A,(HL): &4F |\ &F815: CP &40:JR C,boot \ &F819: CP &48:JR NZ,boot \ &F81D: .code_enter &\ &F81D: CP A:LD HL,(PROG):JP (HL)  \ &F822: \ &F822: .boot \ &F822: CP A:JP &F4A9 ,\ &F823: \JP RunExec2 :\ BBC BASIC patch ,\ &F826: \JP RunExec1 :\ BBC BASIC patch \ &F826: .LF826 !\ &F826: POP HL:JR code_enter  \ &F829: \ &F829: .LF829  \ &F829: XOR A:LD (REBOOT),A \ &F82D: LD A,(HL): &4F \ &F830: CP &40:JR C,LF83D "\ &F834: CP &48:JR NZ,LF83D+25 &#\ &F838: LD A,&01:JR code_enter 0\ &F83C: NOP :\ &F83D: .LF83D D] NP%=mem%-&F000+&FF22 X [OPT P*3 b\ &FF22: .copystr l\ &FF22: B 0:M "(C)" v \ &FF26: ] (P%=mem%-&F000+&F300:[OPT P*3:B 17:] )P%=mem%-&F000+&F50A:[OPT P*3:B 200:] .P%=mem%-&F000+&F629:[OPT P*3:NOP:NOP:NOP:] )P%=mem%-&F000+&F83E:[OPT P*3:B 249:] )P%=mem%-&F000+&F857:[OPT P*3:B 249:] (P%=mem%-&F000+&FA35:[OPT P*3: &FF:] *P%=mem%-&F000+&FC74+5 :[OPT P*3:B 4:] +P%=mem%-&F000+&FC74+14:[OPT P*3:B 32:] +P%=mem%-&F000+&FC74+15:[OPT P*3:B 32:] +P%=mem%-&F000+&FC88+14:[OPT P*3:B 32:] ,P%=mem%-&F000+&F2A6:[OPT P*3:M "1.22":] ,P%=mem%-&F000+&F730:[OPT P*3:M "1.22":]   $X%=ctrl%:Y%=X%256:$name%=oswFF$ (!X%=name%:A%=5: ((&FFDD)&FF)<>1:  (oswlen%=X%!6-X%!2:osw%=&FDDA-oswlen% *in%=(oswFF$): in%=0: 46 A%=0 oswlen%-1:mem%?(osw%-&F000+A%)=#in%: A% > #in% HP%=mem%-&F000+&F5B2 R$[OPT 3:LD DE,osw%:LD B,oswlen%:] \