0 'ASCII Upload Routine for Model 100 By Ron Bean 6/86. This program is "in the Public Domain". Relocatable Loader based on BASBLD.BA. See UPLMSG.ASM for assembly source code. 1 'Enter from TELCOM F7; prompts for filename, width, prompt chr; waits for prompt chr after each line, optionally waits for echo after each chr (and corrects if wrong), adds no extra CR's if WIDTH < 20. 2 'NOTE: Be sure UPLMSG.CO is loaded or De-installed before using F7 from TELCOM! Watch BASIC programs for CLEAR statements. To De-install Poke 64270,58 and Poke 64271,31 3 'If wordwrap acts strangely, see UPLMSG.ASM to increase timeout. 4 POKE64268,172:POKE64269,126:'F6 "Bytes Free" patch 5 CLS:PRINT@42,"Enter end address":PRINT@82," for current HIMEM (";HIMEM;")";:Y=0:INPUTY:IFY=0THENB=HIMEM-395ELSEB=Y-395 10 CLEAR256,B 15 DEFINTI-X:DEFSTRY-Z:Z="0123456789ABCDEFGHIJKLMNOPQRSTUV":CLS:E=394:D=-62560:B=HIMEM 20 CLS:A=B:C=B+E:D=D+B:S=99:M=99:PRINT@48,"Line";:PRINT@88,"Address"; 25 GOSUB60:IFO=0THENPOKEA,K:A=A+1:GOTO25 30 P=K:GOSUB60:G=P+256*K+B:P=INT(G/256):Q=G-P*256 35 POKEA,Q:A=A+1:POKEA,P:A=A+1:GOTO25 40 X=INT(B/256):POKE64270,B-256*X:POKE64271,X:SAVEM"UPLMSG",B,C,20806:MENU:'Entry adrs is TELCOM 50 U=INSTR(1,Z,MID$(Y,M,1)):IFU=0THEN55 51 IFU>16THENU=U-16:O=1ELSEO=0 52 V=INSTR(1,Z,MID$(Y,M+1,1)):IFV=0ORV>16THEN55 53 K=(U-1)*16+V-1:RETURN 55 BEEP:PRINT@165,"Bad character";:END 60 IFMRTHENBEEP:PRINT@165,"Checksum fail";END 62 READY:M=1:GOSUB50:IFK=0THEN40 63 S=S+1:PRINT@70,S;:PRINT@110,A;:N=K:M=3:GOSUB50:M=5:L=K:GOSUB50:L=K*256+L:R=0 70 M=M+2:GOSUB50:R=R+K:RETURN 100 DATA387815215157CD9157CD3E461185F62193FC0E061AB7C2H9003E201BCDE90F7723130DC2H100364423364FCD0F22E5DAK500D5CD294221D65CCD91 101 DATA38681957CD2242CD3A1FE1D1CDBE1FC9210C67CD9157CD44462185F6CD2E117AB7C2LF007BFEFFC2M1003EFEFE14D2M8003E0032N20121N501CD91 102 DATA389F1757CD3E463A85F6CDE90F32N10121O301CD9157CD44463A85F6B7C2OF003E0D32N301CDL301E13AN201B7CARB005F1600E5197EFE20CAR600 103 DATA38D018FE0DCAR600FE1ACAR6002BC3Q2007D32N401E13AN401BDC2S9003AN201B7C2HB017EFE0DCAHB01FE1AC8CD326E23CD6D6DC2UD003AN101FE 104 DATA38B31959C2RB003AA2FFFE80C8C3T600CD7E6DD8CD444B47FE08C2G001CDL301C3RB003AN101FE59C2RB002B7E23B8CARB003E08CD326E2BCDL301 105 DATA380719C3RB007EFE1AC83E0DCD326ECD6D6DC2J3013AA2FFFE80C8C3I401CD7E6DD8C2K501CD444B473AN301B8C2I401CDL301237EFE0AC2P60023 106 DATA38E114C3P60011FF04CD6D6DCAM501CD7E6DCD444BC3L3013E001BBBC2L601BAC2L601C9000000005761697420666F72204563686F0050726F6D70 107 DATA02AE00743A 108 DATA00