@L|}6CD l0C)HCC WhL/h `CmCDiD`  R@P1  Y0@R !L` D  C D     )16CS S)  C)D1 p p 0 C9DI pCDL~CiCDiD` D  C D     )16CS S)  C)D1 p p }0 C9DI pCDL~CiCDiD` DD˙` d J)L !}D L(( LL()  L| L( S LH 0p n  } CY?  q  L L  ` )} `A! d߰")-݆ "  $G@LLL&0") $G% }H0 3S8`G ȱG ȱG   Gȭ Gȭ GG}GHiH8(()) G$H% `(0 })8` d)L ݆ & LGȘ ݆LL d  ! LL d)N>Q  HH) }  hyhyB q L> Lm JJ  Ln*` dB%' }8  H H` 1 { LL   !L     Hh SY?  q  1L }  !? S   q 1 L   Ll  Lg E`L   !L)  q 1L}) `L0AM݊L݉ ML  N݆LLLNLMLHG!@}1F GȱGLLEEȩÑEȑEEȑE Ed E7EȩE  q} L !,0,0SGɛ L 1 !L EHEh W G gLLSROTCES EERF } G) *Gȩ GȽG GȌd q q G`  8   0G  `D}CEDC0X:Ȣ Y ȱC* ? 0.. , 0%n ?A[ 0 : L`L  `, 0`Y}`piH n0)բY? 08`0 }  0$L GGȽG L `8L`L}8`  05G)݁,G)ȱGȱGHh0})Hh` B! 8`8iiiLE`}E8FEh( l0`ɃLL L8^~jj8jHi hEEEiEȱEiE` dTE} H8EEȱEEȩEh J E8   . m  i`LI!)E1FR}1LJ舩9GIH`LJJ`HGHh l`} S gL   8 rii `дCDCG W  }C  Lq` X٨`DOS SYS IIIIIIIIIIIIIIIC`0 ߩ0}}} ri |||DDOS DOSDOS SYS }}}$s}CDOS SYS} 0`BDELV !B }`LVUQ   ]   TU J ]L!T  #      TU  } L ? .  t`GBJ V~DEHI B V0dV!}QDEHI VF9 ,0 ,0 s0hhL  L` H hDHEh"}DEL8HI   0 HI,0 0  9 .G VLO#},0 L4*IJ`llD1:AUTORUN.SYSNEED MEM.SAV TO LOAD THIS FILE.D1:MEM.SAV J y08 B|DEHI$} V0 0`B;DELV䌚 !B y`@ʆ v s? F0Ξ05: [ BDEHI%} VY8 B V  @  /DE `E:D1:DUP.SYSERROR-SAVING USER MEMORY ON DISKTYPE Y TO &}STILL RUN DOS B;DE J V (` 9 V⪍ ઍ  -'}LLu DEHILV 9 .l 9 .l  `` s$B VBH(}I|DE V BLV nB,DE J V* \*` B V BLVDEHI BLVL)}1u H232435; 1 ;  hh@2 e1i1LHҍ 00) 08 109hh@ Ҡ2e*}1i1232435ޥ<<8} 3E:}DISK OPERATING SYSTEM II VERSION 2.0SCOPYRIGHT 1980 ATARIA. DISK DIRECTORY I. FORMAT DISKB. RUN CARTRIDGE J. D,}UPLICATE DISKC. COPY FILE K. BINARY SAVED. DELETE FILE(S) L. BINARY LOADE. RENAME FILE M. RUN AT ADDRESSF. LOCK F-}ILE N. CREATE MEM.SAVG. UNLOCK FILE O. DUPLICATE FILEH. WRITE DOS FILES9!&x#!7&p))'&X*./)L''-؆莟.}R'S  vW DEHHI 1A#! @ ~0ɛ8A0.) ȅ 1 1i/}il ! 1L NO SUCH ITEMSELECT ITEM OR FOR MENU! 0 .{z:*{}.|~ 1 0 00}JB 18L^%|DLl%DIRECTORY--SEARCH SPEC,LIST FILE? # 0 0 n&|D! 1L NOT A DISK FILE1}N !B 1L " 1 !BDED:}:1BJ|DE 1DEBH2}I 1 h0ߢ 0.  0?詛 1 ~0YЛ 1 "L<" "L 3} BL1TYPE "Y" TO DELETE...DELETE FILE SPECCOPY--FROM, TO?OPTION NOT ALLOWED 454 FREE SECTORS COPYING---D2:TITL4}E.TWDD# 0|D .L$A#B#C#JB|DE 1BHIDD#E 1D#0: B5} 1L B#C#C#B# B 1N#$0SYS1}:e#D# d# D# .d#ȽD# d# 𩛙d#X# 1,A#6}PdD#ELO- A.BJdD#E 1 1HH 0hh|DL^%1}:e# Lt% e#dD#EL%7} 1 0 . .0% 1L WILD CARDS NOT ALLOWED IN DESTINATION 0 A.|K@C}//3Hu ξL/L DRIVE TO WRITE DOS FILES TO?WRITING NEW DOS FILESTYPE "Y" TO WRITE DOS TO DRIVE 2.?}D2:DOS.SYSERROR - NOT VERSION 2 FORMAT. , &* բ( 1L `[) 0NΞ 0 L1M) 1@} L BAD LOAD FILELOAD FROM WHAT FILE?) 0 0#B 1L WHAT FILE TO LOCK?) 0 0$B 1L WHAT FILE TO UNLOCK?DUA}P DISK-SOURCE,DEST DRIVES?TYPE "Y" IF OK TO USE PROGRAM AREACAUTION: A "Y" INVALIDATES MEM.SAV. h  ,B}  `)  <0 2 2 0  ,   ,,ޢ* 1L ,K* 1 ~0 0C}FINSERT BOTH DISKS, TYPE RETURNERROR - DRIVES INCOMPATIBLE., 1 ~038  , 1L D}, &*  Lz+, 0 , 1 ~0 + Y,0!,0 ,L+ ,mm  v,"ǭE}0Ξ, 05,Lt+L +,Hh` NOT ENOUGH ROOMINSERT SOURCE DISK,TYPE RETURNF}INSERT DESTINATION DISK,TYPE RETURN`    `L,8,0( rG}L1(`ߢ) 1* 1 ~0Y`hhL S SL1) 8`NAME OF FILE TO MOVE?- 0 0|DLtH}% A., 1 <0 0 .@L# .BJ 1  DEHIB V L1 ,5 1 <0,L. I} JB|,A#Pd#DE 1 HI BDEHHII 1 B 1 , 1 <0,0Lf- B VJ},A#P, 1 <0 0L#L ߢ) 1* 1 ~0Yj383}mm ݭK}}`8}``|* ? ɛ,`|:(|/ 1L `DESTINATION CANT L}BE DOS.SYS0 0H{ $22Δ $28/L /) $2 Π $2 0 ξM}hAΞB,0 J 1 BޝDEHI,HDE 1HIHIDELSAVE-N}GIVE FILE,START,END(,INIT,RUN)O X0 1`BDEPHI V` X0H 1 L O}0 0 1L0`PLEASE TYPE 1 LETTER,0`hhL <0 1L0LA1 ,;ɛ7,"ɛ:ݦ1ݥP}A"D|ݤD|ȩ:|ȩ|ɛ,,(/+.ީ1 1,ɛ`轤{Q}NAME TOO LONG B VL ` L1I H1EӝDL1|mDiE` V0`8d/8 i:"2!22 1R} L ERROR- 128ɛ+,' 20*.. өw2 1``2TOO MANY DIGITSINVALIDS} HEXADECIMAL PARAMETER800 0 8 00`,0'D800H,ɛh`2L1NEED D1 THRU D4 uT} HEXADECIMAL PARAMETER800 0 8 00`,0'D800H,ɛh`2L1NEED D1 THRU D4 u`EiͩkΩ͙kCop j`j0 {j`Hi͝ΝhV}`L"EGASSEM:D"NURͩkΩ͙kCop j`j0 {j`Hi͝Νh. DMCCSAKEPFONTMCJBrf Az@@@@AU  X}  WX B @22ANIMATE MENU 1/27/83 (c) 1983 by Jerry White e +AY1 Y}@@dCB7tAe2 _-6-F:A`,%F:Aa,$AV%@E-%@ Z}%@#Q@U _ B]#;@ ,9A(<@,@68@2<,-]68@2<@,- [}C-@H@W".68<,-?68<@,-C (_-@e@".68<,-?68< \}@,-C UAY@4_ @P-TB7aAh&-@B:,46-@:7<,,HB7`$@TB7h ]}.?&(>:8<,,>:8<@,,* <B7aA`?$22-@@(6. ANIMATE MENU2 @E7/-@ ^}@%6. 1 ANIMATE/ @E<.-@@$6.2 S2FONT. @EA0-@@&6. 3 DISPDISK0 @E _}F0-@@&6. 4 FONT2STR0 @EK/-@@%6. 5 SMP2STR/ @EL/-@@%6. `} 6 DISPSTR/ @EM/-@@%6. 7 SCR2STR/ @EN+-@@!6.8 DOS+ @EP2-@ a}@ (6. ENTER CHOICE2 @EUe-@@!%6. BY NUMBER/ @EAASA@deA b}dAUW\B7aAh'AATD-AT@6@PB7`\AX0 -@@ c}6@,B7h0 YQA AF& -B7aA`?A @tQA@(Z&6-F:Ad d},&"AU@[;AdAU!"@116. D:ANIMATE; A\("@06.D:S2FONT( A]* e}"@& 6. D:DISPDISK* A^*"@$ 6. D:FONT2STR* A_)"@)6. D:SMP2STR) A`) f}"@'6. D:DISPSTR) Aa)"@Q6. D:SCR2STR) Ab"@S.c -@6?P g}<2A@@ RAdA@dvAdAU @dAA33,34,35,36,37,38,39, h}40,41,42,43,44,45,46,47,48,49,50,51,52n5553,54,55,50,33,56,57,58,55,59,60,61,33,62,63,64xAA65,66,67,68,69,70,71,72,73,7 i}4,75,76,33,34,77,78,33,79,77,805551,46,81,82,71,83,84,85,86,87,88,89,90,91,92,93o A (}"6.LOADING D67B: j},%@,.7@Nb;@u,b6.K ! #$%&'()*+,-./0123?N##67@<}@,.>:@4,HNb;@u,b6.K ! LMNOPQRSTUVWXYIN##67}@<@,.>:@4,RNb;@u,b6.KEFGHIJK;<=>?@ABCD456789:}\Nb;@u,b6.KEFGHIJKabcdefgZ[\]^_`fNb;@u,b6.K} ! #$%&'()*ijkSTUVlmnogN##67@#<@#,.>:@4,pNb;@u,b6}.KEFGHIJK;<=>?@tBCuvZ[\]pqrs`mjm SETUP ANTIC MODE 4 DISPLAYtmLIS}T ASM SUBROUTINE.~mHqdd6-?:C:ThS: `  V`& V0˭1̩Dˠ`,,R}q\qSET COLORSfqqcA@'A A9A@4KAADWAc6-B}qqSMEM=SCREEN MEMORY ADRqr2;@R,26-F:@,%AV$F:@,trSTRING TO SCREEN SUB.~r>>6.}4hhhhh͠ˑԥi#͐`rrALTER CHR$(#)rIN LINES 29410 & 29510rTO CHANGE # }OF LINESrTO BE DISPLAYED.rrALTER CHR$(#)rIN LINE 29610rTO CHANGE # OF BYTES PERrLINE TO BE DISP}LAYED.rrHOR. LINES TO DISPLAYr##67@<@,.>:@,r:@5,Pss# OF BYTES PER LINEs##67@!<@!,.>:@,sttLOCATION 756=POINTER }TOtCHARACTER SET IN PAGES.tLOCATION 106=RAMTOP.tOUR CHARACTER SET ISt8 PAGES BELOW RAMTOP.u0u# A}VF:A,&@#$xxTIME DELAY SUBROUTINE.x1 JIFFY=1/60 OF A SECOND.x""LOCATION 540=COUNTDOWN TIMER}xYOU WILL EXIT THIS (WAIT)xSUBROUTINE WHEN LOCATIONx540 CONTAINS A ZERO.xWAIT=31000yyA@}yF:A@,By$||!!DEFINE & MOVE CHARACTER SET|} +AY ;A$,}ZZ6.P}TU UW @@@@) ))%) UUuUuUU@` E@@}kk67@<A`,.P TUuU] @@@@}TUwU @@@ TUUU V@@) ))!) }kk67Aa<A@,.PUuUuUU@ **@@@@}! ) +)()!%TUU]WU}kk67AA<A ,.P@@Te@@@@(UUU@}UWUU(Uii}kk67A!<A,.PPP@@@eiii%*PPXXH UU**( PTUu_TPU  }}kk67A<A,.PZUU U]@PTTTUVVPPV%* UU` TTPPP}kk67A<A}`,.PTU*UUU(Uii@@@@@%%!UUYiiifX @@@($TPP}kk67Aa<A@,.PUUuU @}PPP@ZZVZZZY@PPPPP@*(* UU*UU@P TU ZZYZ|P@PPTT }kk67AA<A ,.PZ& UUTTP` `PP} PTUu_TPUX(`h(( }kk67A!<A,.P @PU]TTTPPUVVV%( @}P@)(($PPPTUU= }kk67A<A,.PUTTe  `&UU  PPPP@*`PTPT} UX( }kk67A<A `,.P ((UVVV%( `*(($PPPP * T }}[[67A a<A$,.@}19,142,211,421,728}3-@}@"/67<,.>:@4,3 }/-A3A@+67<,.>:AU,/ d}n}MOVE CHARACTER SET SUB.x}}}n;@,n6.WhQhhhhhh稱eeeeeeΥ`}B$6-+F:A},&@,$AV?6-?:C:,B2y@PAdAUbAY@4~33F:B2y,"@*F:Ad,"AU}B$p~AdAU$~~ PLEASE NOTE THAT THE ROBOTCHARACTER USED IN THIS DEMONSTRATION IS P}ROTECTEDBY COPYRIGHT LAWS.&!!THE COPYRIGHT IS MAINTAINED0!!BY THE AUTHOR, JERRY WHITE.: ANY COMMERCIAL USE OF} THISDROBOT CHARACTER WITHOUTNWRITTEN PERMISSION BYX JERRY WHITE IS PROHIBITED. D:ANIMATEoQFJDSIPAG%%DISPDISK 1/27/83 BY JERRY} WHITE  $$THIS PROGRAM READS .FNT & .SMP ""FILES THAT WERE CREATED FROM##AN ANTIC MODE 14 SCREEN USING S2}FONT.$$AS WRITTEN, DISPDISK WILL READ##THE DEMONSTRATION JWROBOT.FNT!!AND STORE IT IN RAM 8 PAGESBELO}W RAMTOP.""DISPDISK WILL THEN CREATE AN##ANTIC 4 DISPLAY LIST AND READ JWROBOT.SMP FROM DISK INTOSCR}EEN MEMORY.d +xF$=ASM SUBROUTINE TO LOADFONT FROM DISK INTO RAM!!STARTING AT THE PAGE NUMBER}SPECIFIED AS F$(15,15).7;@2,76. h0BDEHI V`46-F:A,&@467@}<@,.>:,USE IOCB #3 ONLYCHANGE FILENAME AS NEEDED9@9@@ D:JWROBOT.FNT}EXECUTE ASM SUBROUTINE6-?:C:,,@  POINT AT OUR CHARACTER SETAVTO USE DISPD}ISK IN GR.0##SIMPLY DELETE LINES 290 & 300 SETUP ANTIC 4 DISPLAY LIST"9%6-F:A`,%AV$F:Aa,9}%@@h,+-%@%@('@+ 6SET COLORS@]A@'A Ag9A}@iKA@p]AJCHANGE FILENAME AS NEEDEDT9@9@@ D:JWROB}OT.SMP^FIND SCREEN MEMORYh%%6-F:@,%AV$F:@,| SETUP FOR IOCB #3 CIO READoA@,A}P:'AV,KA&F:A,$AV]AAoA@READ FROM DISK TO RAM*6}-?:C:hhhLV,<@H,*@LOOP AT LINE 520 PRESS SYSTEM RESET TO EXIT A  D:DISPDISK}LOOP AT LINE 520 PRESS SYSTEM RESET TO EXIT A @LOOP AT LINE 520 PRESS SYSTEM RESET TO }EXIT A READ FROM DISK TO RAM*6-?:C:hhhLV,<@H,*@LOOP AT LINE 520 PRESS SYSTE}M RESET TO EXIT A AA%%DISPDISK 1/27/83 BY JERRY2AB_ q SLINLINTOTACOUNLINMBYTCHASPCHARSPTOFILEFONTTRYAGAIF}@ ..FONT2STR 1/27/83 (c) 1983 by Jerry Whited A}n:( DIM FONT$(1024):(@ DIM FONT$(1024)x9-@@'%@!/6-&9 A@6-@}y4 6-%4( FONT$(,%)=>:@4,55(@ FONT$(,%)=>:@4,,-}6-%@,)@W"@4)"AU,68<,-%=68<@,-K6-%@W6-@2S (>:},*@ )(>:@4,<*@@4O*@AUS "A0!-&@!6}-%JJ( FONT$(8<,,8<,)=CHR$(8<@,)WS(@ FONT$(8<,,8}<,)=CHR$(8<@,)W 0 6-%( RETURN0(@ RETURN2@ AR2}AfE((NEW((6(ENTER>:@4,>:@4,9(<(E(LIST)-@@ %(>:@(,) }*AAD'AdAU*g +AAD1@@dCB7tAU@@}g@@9"J(.(#DISK FONT TO BASIC STRING CONVERTER1(J( BY JERRY WHITE,0(0(%DRIVE 1 IS ASSUMED FO}R ALL DISK FILES6;@,;@,;+(+( SAMPLE FONT FILENAME=JWROBOT.FNT@C( ( ENTER FONT FILENAME$-6}.D:96-A C AJ5 A @5@@O-(-("SAMPLE STRING FILENAME=TESTFNT.ST}RTE("( ENTER STRING FILENAME&/6.D:;6-A@E A^? A@@5@@?} Bh<9AV<@,$6-B06-A$<6-@r-A(*Af@-$|& 6-B:,}" @)!@&  @A %7@<@,4:"6.%$%7@<@,4:"6.%$}67B:,%@,.$KEY VARIABLES IN LINE 360 SLINE=STARTING LINE NUMBERTOTAL=BYTES IN INPUT FILE} LINC=LINE NUMBER INCREMENT D:FONT2STRHARSPTOFILEFONTTRYAGAIF2BC_ p SLINLINTOTACOUNLINMBYTCHASPCHARSPTOFILESMPTRYAGAIFD}@ --SMP2STR 1/27/83 (c) 1983 by Jerry Whited } An6( DIM SMP$(960)6(@ DIM SMP$(960)x9-@@'%@!/6-&9 A@6}-@y3 6-%3( SMP$(,%)=>:@4,44(@ SMP$(,%)=>:@4,,-}6-%@,)@W"@4)"AU,68<,-%=68<@,-K6-%@W6-@2S (>}:,*@ )(>:@4,<*@@4O*@AUS "A0!-&@}!6-%II( SMP$(8<,,8<,)=CHR$(8<@,)VR(@ SMP$(8<,,8}<,)=CHR$(8<@,)V 0 6-%( RETURN0(@ RETURN2@ AR2}AfE((NEW((6(ENTER>:@4,>:@4,9(<(E(LIST)-@@ %(>:@(,) }*AAD'AdAU*g +AAD1@@dCB7tAU@@}g@@9"J(.(#DISK .SMP TO BASIC STRING CONVERTER1(J( BY JERRY WHITE,0(0(%DRIVE 1 IS ASSUMED FO}R ALL DISK FILES6;@,;@,;+(+( SAMPLE .SMP FILENAME=JWROBOT.SMP@C( ( ENTER .SMP FILENAME$-6}.D:96-A C AJ5 A @5@@O-(-("SAMPLE STRING FILENAME=TESTSMP.ST}RTE("( ENTER STRING FILENAME&/6.D:;6-A@E A^? A@@5@@?} Bh<9AV<@,$6-B 06-A `<6-@r-A(*Af@-$|& 6-B:,}" @)!@&  @A %7@<@,4:"6.%$%7@<@,4:"6.%$}67B:,%@,.$KEY VARIABLES IN LINE 360 SLINE=STARTING LINE NUMBERTOTAL=BYTES IN INPUT FILE} LINC=LINE NUMBER INCREMENT D:SMP2STRCHARSPTOFILESMPTRYAGAIFD1aSMPFONTMCJFNTSD--DISPSTR 1 }/27/83 (c) 1983 by Jerry White SETUP ANTIC 4 DISPLAY LIST"C +/6-F:A`,%AV$F:Aa,C%@@h },+-%@%@('@+ 6SET COLORS@]A@'A Ag9A@iKA }@p]A|READ FONT AND SMP STRINGS~$$MOVE FONT 8 PAGES BELOW RAMTOP!!MOVE SMP INTO SCREEN }MEMORY BLOOP AT LINE 500 PRESS SYSTEM RESET TO EXIT AXHqFONT$ CREATED BY FONT2STRR }q FROM JWROBOT.FNT DATA FILE\qfqSMP$ CREATED BY SMP2STRpq FROM JWROBOT.SMP DATA FILEzqq M$=ASM MOVE RAM }SUBROUTINEqq FORMAT FOR M$ USR COMMAND:qQQJW=USR(ADR(M$),ADR TO MOVE FROM,ADR TO MOVE TO,NUMBER OF BYTES TO BE MO }VED)q0un;@,n6.WhQhhhhhh稱eeeeeeΥ`y };A$,ykk67@<@,.PTU UW @@@@) ))%) UUuUuUU@` E@@ykk6 }7@<A`,.P TUuU] @@@@TUwU @@@ TUUU V@@) ))!) ykk67Aa<A@,. }PUuUuUU@ **@@@@! ) +)()!%TUU]WUykk67AA<A ,.P@@ }Te@@@@(UUU@UWUU(Uiiykk67A!<A,.PPP@@@eiii%*PPXXH UU** }( PTUu_TPU  ykk67A<A,.PZUU U]@PTTTUVVPPV%* } UU` TTPPPykk67A<A`,.PTU*UUU(Uii@@@@@%%!UUYiiifX @@@($T }PP ykk67Aa<A@,.PUUuU @PPP@ZZVZZZY@PPPPP@*(* UU*UU@P TU ZZYZ|P@PPTT!ykk67 }AA<A ,.PZ& UUTTP` `PP PTUu_TPUX(`h(("ykk67A!<A,. }P @PU]TTTPPUVVV%( @P@)(($PPPTUU=#ykk67A<A,.PUTTe  }`&UU PPPP@*`PTPT UX($ykk67A<A `,.P ((UVVV%( `*(( }$PPPP * T%y[[67A a<A$,.@ }&y##67@<@,.>:@4,'y##67AB<AB,.>:@4,(y##67A<A,.>:@4,)y##67 }A!<A!,.>:@4,*y##67A(<A(,.>:@4, {\$6-+F:A,&@,$AV?6-?:C:,?@EFG}kk67A!}A<A ,.P !)*+1289ABCHIJ ,3:DK}kk67A!<A,.P!}LMSTZ[ab}kk67A<A,.PNOUV\]!}cdPQWX^_ef}kk67A<A`,.PRY`gh!}}kk67Aa<A@,.P!} }kk67AA<A ,.Pilmpqtjknorsuv!} }kk67A!<A,.P }kk67A!}<A,.P }kk67A<A `,.P! } }##67A<A,.>:@4,~C%6-F:@! },%AV$F:@,@6-?:C:,?@ABCDEFGHIJK%}LMN((S2FONT 4/1/83 (c) 1983 JERRY WHITEd A 56-%@+67@<@,.>:,5 Ai%}z6-%-@@@67<,.>:F:%$@@,,N6-%@Z"@z67%@<%@,.7<%},U &*F:Ad,@(A`EF:Ad,"@(*"@H'K'U A(<"F:Ad,"@(*@%'(%}'2 Ax< Ay$(6-@6.$ Ap6-?:C:,<:,m Aiy6-@|$x;6-&+&@,$&+"@,$$%}@%+"@2,$u6-&+&@,&+"@,$@%+"@2,$A67@<@,.>:,6-@ Ai%}$E6-@ A+AdAU5 B#E0YA446-@$m( 6-%+"@,;%}6-&@%+(,$@E A O Axc"@B m Ay6-%@ A4` (6.6-% }( A" rB2H Ax(6-B:,;67%@,.L67A#,.h67%@,.7%@,r %!}B T 7 6-"@A$!-6-7 A" j 6--@@067<,.>:F:,,>6-%@@J%"}"@j67%@<%@,.7<, : 6-?:C:,<:&%$},  6-& Ai A4 %2@@@7@ ApA Bc2%%}m Ar67B:,%@,.6-%@ A2 A3 sT6-@%P:++&+&@F,'@&,'A $,%&},$@@%+&@F,'@Z6-p67<,.>:&@,s$ #"A( Ax# B  (F:AD,A3PH F%'}6-F:B2y,!6-R:,7(F:AD,A)F6-F:Ad,R -!A5 #"@- Ai +"@(%(}A(+"@A9 e@!@w-6-96-@E $AQB2H[ AAe A4%)}g!A4?"AB)"@)"@xASg"AC)"@)"@yAI$++"@B)"%*}Ap)"AABt A4# $A AA# A4<tt6-6@%+"@P,%+"@1,$@%+"%+}@0,$@%+"@&,$@%+"@$,$@%Ac+F:,%@&+F:,!AS,$AV=@ A`%,}G BYAdAUc A4<B2y'B2y@9B2y@<$htAdAU)"%-}@A4667<,.R6.7@:,y"@26-@3 AiAdAU%/}) AA3 A46-&%+"@,$@;6-&@@%+"@2,$Q6-&%+"@2,$k67@<@,%0}.>:,w"A6-@3 AiAdAU) AA3 A4|}+@%&!AY3@%1}@dEB7tAg6-F:A`,%AV$F:Aa,s@} AX< B#<6-?:C:"h0˭1̠ȱ%2}O`,,eAP@*ARF:@,?ASF:@,QAVeAW@0' ?6-?%3}:C:hhhLV,<@,+6-@?@A` pg)@A))@5AB)@NA%4} [)@gA @ AY@4,AdAU0Y,6.8w&;@,%5};@,;@,96.  ?6.E6.^67@<@,.w67@<@,.Lf1;@,;@%6},;@S,;A `,H6-F:A,&@@ZAY@bfBByt%6-F:@,%AV$F:@,+6-;6%7}-%Av'N6. <<<<<<<<Z6-@2t67@<@,.>:,Y6-$AV6-%A$-6-Av'=6-&A%8}'K6-A%Y6-@@'dg?6.5hhh̢hh ie͠ͅ`G6.X67A `,.g6%9}7@,.[[6.Qhhhhhhh˙e΅ѥ`,# B"6-@F%:}# B#6 6-C:,6-C:,6-C:,8 Aq Ai)B2w@5B2H8$96-?:<<@,+6%;}-?:<<@<,/9 A$ 6-( B(6-?:C:,}_@j@t At@3@^(@3@+([(+%?} ԠȠŠԠΠҠˠ^(L[[(S Insert another diskette having AT LEAST Š & p%@}ush return.r#@@K:5AdAUGAY@4Y@@k-@@r( %A}V)@$AUAw/@L@@V B xI-AA.67&A,.%B}>:F:,,BB%@%F I$@@(}k@@(1( UNIQUE CHARACTERS4(h(P:'A(%C},%@ CHARACTER SET(S) REQUIREDk(@y B("AAD4AADH-@@k(PEEK%D} %A=@:7<,,o y Ap B#@ B2w2AdAUDAR@G(c%E}( PRESS TO QUIT( PRESS Ԡ TO RERUN'@@d'B7tA%F:B2y,"@% %F} F:B2y,@A6-?:B, +AY1@@dCB7tAU%G}AADgA @yAADAA@d cc165,20,141,192,2,141,193,2,141,%H}194,2,141,195,2,76,98,228,104,162,6,160,200,169,7,32,92,228,96 A #A!-A6Ac%"+/ 2#A6-?:AS%I}, n;@,n6.WhQhhhhhh稱eeeeeeΥ`l t1;@%J},;@,;Av,;@`,t6.AR@A(_@*@A% A%l( 7 7.5 or %U}8+AR/AAR@D(l@*@P*@AH&; A6-%"@16%V}-@; B&1"@P6-@'6-@1 B'6-@t'^ B%9('%W}^(٠Π~'.AR+AR@.('" 6-@:,"0Y*0N%X}B<(4YBF(_ B%4(! ϭԠ٠ΩFARJ\AR@_(K(!%Y} 4Y6-@! BP(0NB(X 6.>:,6-@" B%O((%Z}X6.D:)a(Ԡ+AR/AAR@D(M6-B:,a"A )O @%[}6.D:,67B:,%@,.E67B:,%@,..FNTO B)D47@<@,4:)7@<@,4D::6.D B%\} ) 6.D: 67B:,%@,.)G 6-B:,. @)7&@<,0.FNTG67B:,%@,..FNT@)5 B%]}@5@@h)!!"@)"@AUr)"@B )6-@ B*j +%^}AR@1A@HCA@HU@@X(j(  WRITING * As6-C:,(A%_}@?AP:'AV,^A&F:A,$AVpAA@*K6-?:C:hhhLV,%`}<@H,*@36-B:,K67&@<,..SMP+c AsAA1AA4(F(  WRITING c%a}@@\+x 6-C:,A@5AP:'AV,TA&F:A,$AVfAA%b}xA@+46-?:C:hhhLV,<@H,*@4 A N@ N0F:@ ,!A-@ %c}F:B7p,0$N B0u66-C:,%@%6-C:,%@66-C:,%@1u/6-P:'A,/6-P:'@&$%d}@,2uC'6-+&$A&$@,$@56-$@C6-$@:u##6-?:C:,<Btr%<<@,Du##6-?:C:,<%e}Btr%<<@,Nu##6-?:C:,<Btr%<<@,Xu<B2IA'B2PA9B2QA<$}719@%f},9@,;A@,;@,76.}g+@%&!AY3@@dEB7tAg6-F:A`%g},%AV$F:Aa,}PP6.FLdLLLpB@DEPJQK V䭳LpRBDE}aa67@q<A@%q}??b'DOS SYSb*+DUP SYSbUAUTORUN SYSbWMENU bAtANIMATE bDISPDISK bFONT2STR bSMP2STR b!DISPSTR bk S2FONT bCSCR2STR bMESSAGE b STR2SMEMSRCb JWROBOT FNTbJWROBOT SMPb>JWROBOT1MPDb>%JWROBOT2MPDB cTEST FNTBlTEST SMPB tTESTFNT STRB TEMP FNTBTEMP SMPBFINESCRLSYNBUNCOMPACSYNBVBISND SOUBPLYDEMO SRC,.FHI V䭳LpRBDEHI V䭳Lp B Vh`}.$6-?:C:,:@4,66(@ $(,%)=>:@4,--6-%)}@-6-@:7<,,4"@468,-%(6-%@46-@2S (>:,*@ )(>:@4,<*@)}@4O*@AUS "A@!-&@!6-%--( $(8,,8, )=C)}HR$(34)95(@ (8,,8, )=CHR$(34)9 <@ AR2Af< B)}I(-(" SCREEN TO BASIC STRING CONVERTER0(I( BY JERRY WHITE,C(0(%DRIVE 1 IS AUTOMATICALLY USED FOR ALL@( )}DISK FILES.C(@7 @P*(ENTER FONT/SMP FILENAME.76.D:EB:,"A J9-@B:,,7<,2)}A)7<,3Z/'9 A L T667B:,%@,.067B:,%@,..FNT66.^5 A @5@)}@\ @P5(#THE EXTENTION .STR WILL BE APPENDED\("TO THE STRING NAME YOU SPECIFY AND**("USED AS Y)}OUR DISK OUTPUT FILENAME.3(/($ENTER STRING NAME OF UP TO 8 LETTERS3B:,"AG-@B:,!)}7<,4$:6.7@<&@,='G A((7<,2A)7<,3Z'( A 9 6.D: 67B:,%@,)}.967B:,%@,..STR5 A@5@@; A2 @P7(ENTER STARTING LI)}NE NUMBER;* 6-P:,* )!B'gA2AEa @P,(TYPE 0 FOR GRAPHICS MODE 0I(TYPE )}4 FOR ANTIC MODE 4S A@Wa B"A`@A@KAY76-F:A`,)}%AV$F:Aa,K%@@h+-%@%@('@+ 9A@'A Ag9)}A@4> 6-AY'6-?:C:,,2@>AV+ 6.67A `,.+67@,.C6)}7B:,&@,.SMP&@C@@oA@,AP:'AV,KA&F:A)},$AV]AAoA@R6-?:C:hhhLV,<@H,*@6B2HHAY@bR A )}DB2H!6-+ A76-@A AD$.@ Ah B+6-.$XD)}B2H!6-+ A76-@A AD$T%6-%@&+"A,$@@G6-%@&+"A,$)}A`Q AiT$DB2H!6-+ A76-@A AD$DB2H!6-+ )}A76-@A AD$LT%6-&@%+"@F,$@@G6-&@%+"@F,$A`Q AiT$|%6-%)}+@ &,$&+"A,$I6-%@ &&+"A,$Ac67@<@,.>:,m Aiy6-@|$x;6-&+)}&@,$&+"@,$$@%+"@2,$u6-&+&@,&+"@,$@%+"@2,$A67@<@)},.>:,6-@ Ai$6-@!AdAU-6-@2G67@<@,.>:,S6-@F_BB)}yqB2w@}B2H Ai8-AA#@' .6.8 A4 ' Ax A)}T (F:AD,A) C 6-P:+&,'A ,$A C6-%+&,&%@@$P:'A , %2@@)}@7@ ApA Bc2m Ar67B:,%@,.>:F:,,6-%@ #)}"A( Ax# B H m6-F:B2y,!6-R:,3@wHAF:B7p,^(F:AD,A)m6)}-F:Ad,R "@ Ai +"@(A(+"@A9 G@6-@' $A3B)}2H= AAG A4"@ABtz=AF:A,%@&+F:A,!AQ,$AVL6-F:A,)}XAdApAz A4# $A AA# A4<tt6-6@%+"@P,%+"@1,$@)}%+"@0,$@%+"@&,$@%+"@$,$@%Ac+F:,%@&+F:,!AS,$AV=@ )}A`G BYAdAUc A4<B2y'B2y@9B2y@<$hgAdAU)})"@A4E6.7@:,^6-F)}:@,%F:@,$AVd6-c6-$AV6-%A$1A@=6-AvK6-&AW6-Ac6)}-@@ 9A@'A@9A@dg?6.5hhh̢hh ie͠ͅ)}`G6.X67A `,.g67@,.[[6.Qhhhhhhh˙e΅ѥ)}`,a B6-@F+B2H=B2IOB2PaB2Q@46-F:A,&)}@ 467@<@,.>:,, Aq AhP)B2w@,$6-?:C:,<<@,$B6-?:C:,<<@)},46-?:C:,:F:,,BB%@%)}F I$ N@ N0F:@ ,!A-@ F:B7p,0$N B0u66-C:,%@%6-C:,%@)}66-C:,%@1u/6-P:'A,/6-P:'@&$@,2uC'6-+&$A&$@,$@56-$@C6-)}$@:u##6-?:C:,<Btr%<<@,Du##6-?:C:,<Btr%<<@,Nu##6-?:C:,<Btr%<<@,Xu<B2I)}A'B2PA9B2QA<$ym@@(C(&TYPE 1 TO RERUN USING SAME INPUT FILESm(%TYPE )}2 TO RERUN USING DIFFERENT FILES"yQAdAU(9(TYPE 3 TO EXIT THIS PROGRAMC BGQ B,y%"@)}6-(}% AP6y"@6-%@y@BJy% +((BASIC"(IS% D:)}SCR2STR#!4!LINBYTSPTOTOTACSSLINSNAMELINCOUNMCHASPCHARUSERFONTSMPFONTFILEREPEAMODDCSJFPAGPOSHWFL( d+AY%AR@7A@I@@[@@9mA-}A`A @/(/($ Please read the detailed tutorial.(.(#documentation before using the many%(-}%(programs on this diskette..(.(# My thanks to those who purchased(( this package.0(0(% Program dis-}kette and documentation.(.(#may be purchased from the author by,((mail for only $12..!( (!( Jerry-} White0( 18 Hickory Lane2( Levittown, NY 117566'( ('( Press START for MENU@!AY@4-}!B2y F:B2y,@A:-@@#:( LOADING MENU %D:MENU -}D:MESSAGEd+AY%AR@7A@I@@[@@9mA, 0100 ;STR2SMEM.SRC 1/3/830110 ;STRING TO SCREEN MEMORY0120 ;BY JERRY WHITE0130 ;0140 ;RELOCATABLE SUBROUTINE0150 ;TO BE 1}CALLED FROM BASIC USR AS0160 ;JW=USR(ADR(DIS$),ADR(STR$),SM)0170 ;STORED AS BASIC STRING DIS$.0180 ;0190 ;USR REQUIRES 2 1}PARAMETERS:0200 ;ADR OF DISPLAY STRING0210 ;AND STARTING ADR IN SCREEN MEM.0220 ;0230 ;AS WRITTEN THIS ROUTINE WILL0240 1};DISPLAY A STRING IN A 5 BY 50250 ;BLOCK ON THE SCREEN.0260 ;(SEE ANIMATE ROBOT DEMO)0270 ;0280 ;THIS ROUTINE ASSUMES A 41}0 COL.0290 ;MODE (ANTIC 2 OR 4).0300 ;0310 .OPT NOEJECT0320 *=$6000330 STRLO=$CB ;STRING LO BYTE0340 STRHI=$CC ;STR1}ING HI BYTE0350 SMLO=$CD ;SCREEN ADR LO0360 SMHI=$CE ;SCREEN ADR HI0370 COUNT=$D4 ;HOR. LINES TO DISP.0380 ;0390 P1}LA ;# OF PARAMS MUST BE 20400 LDA #5 ;HOR LINES TO DISP.0410 STA COUNT0420 PLA ;PULL0430 STA STRHI0440 PLA ;PAR1}AMETERS0450 STA STRLO0460 PLA ;SENT BY0470 STA SMHI0480 PLA ;BASIC USR0490 STA SMLO0500 LDY #00510 LOOP1 LDX #1}5 ;BYTES PER LINE0520 LOOP2 LDA (STRLO),Y ;GET BYTE FROM STR.0530 STA (SMLO),Y ;DISPLAY IT0540 INY ;INC STR. POINTER1}0550 DEX ;DEC. BYTE COUNTER0560 CPX #0 ;END OF THIS LINE?0570 BNE LOOP2 ;NOT YET0580 DEC COUNT ;DEC. LINE COUNTER1}0590 LDA COUNT ;ARE WE FINISHED?0600 BEQ EXIT ;IF 0 THEN YES0610 LDA SMLO ;CURRENT SMEM POS.0620 CLC0630 ADC #35 1} ;5+35=BEG. NEXT LINE0640 STA SMLO ;STORE NEW POS.0650 BCC NOCARY ;BYPASS HI INC0660 INC SMHI ;IF NECESSARY0670 NOC1}ARY CLC ;FORCE BRANCH0680 BCC LOOP1 ;NEXT LINE0690 EXIT RTS ;BACK TO BASIC ;0140 ;RELOCATABLE SUBROUTINE0150 ;TO BE 0QTU"UW @@@@) ))%) UUuUuUU@` E@@ TUuU] @@@@TUwU @@5}@ TUUU"V@@) ))!) UuUuUU@ **@@@@!") +)()!%TUU]WU@@5}Te@@@@(UUU@UWUU(UiiPP@@@eiii%*PPXXH UU**( PTUu5}_TPU  ZUU"U]@PTTTUVVPPV%* UU` TTPPPTU*5}UUU(Uii@@@@@%%!UUYiiifX @@@($TPPUUuU @PPP@ZZVZZZY@PPPPP@*(* UU*UU@P TU5} ZZYZ|P@PPTTZ& UUTTP` `PP PTUu_TPUX(`h(("@PU]TTTPP5}UVVV%( @P@)(($PPPTUU=UTTe  `&UU PPPP@*`PTPT U5}X( ((UVVV%( `*(($PPPP * T5}@@@@) ))%) UUuUuUU@` E@@ TUuU] @@@@TUwU @@4 9} #$%-.45;<=&'(/067>?@EFG !)9}*+1289ABCHIJ",3:DKLMST9}Z[abNOUV\]cdPQWX^_efRY`g9}h9}ilmpqtjknorsuv9}9}8U=}=}TTTTTUUU=}TU!U"U"""@u@w@U@)@U@U@U@ U=}U@ U@W@ ]@"@W@+W@@@@@@)@ V =}( U@U@U@@U@)U@))))*! U U U U*U%U=})u)u)u)uuu)U)U)U)UU@U%u`!u !u !u u@u =})U)U)U)UU@U U U U UUU =}=}@@@@@@E@=}E@E@E@E@E@=}P@TP "UUT=}TU@u]TU_T*TUPTPU@=}UWP@U@UPPU@U@U@UUP=}]@((uPWUUUUPUi@Vi@U@=}i@Vi@ TePVY@@iP `i@ZP=}iX Z%%i@ZP@iX*%iVP@H !fZP=}@% XZP@*U UUUZ@eUUUU Y=}*T*T*((P((=}P$*P TU=}PUUPU=}=}=}=}@PPT* P@>}UTTPUU "UU|UUT=UP>}u]TT _T@TPTZP>}ZPPPYTeZT>}ZTUUTV&PV>} `V `@ X%&>}U((P UU` @ Uh) >}`(( P((P$>}P>}P> }> }> }> }P@TU@TPU> } "*UPUUTU@WPu]T@>}U_TU@U@TPU((>}UPPUi@i@i@i@>}ePUUY@iPVi@iPVi@iP>}Vi@ `f%X%X*((>}  * * P((>}T((*`$ PP>}TPPPT>}>}>}>}>}>}>}>}>}>}>}> }>!}>"}>#}>$} E<;TDDDDDDDDDDDDDDDDDDDDDDDDDDDD@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@B&}@@@B'}@PTTTTT@UUUB(}TU!U@"U"""@@u@w@U@)@@U@U@U@ UB)}U@ U@@W@ ]@"@W@+W@@@@@@@)@@ V B*}( PU@U@U@@U@)U@@))))*!@ U U U U*U%U@B+})u)u)u)uuu@)U)U)U)UU@U@%u`!u !u !u u@u B,}@)U)U)U)UU@U@ U U U UUUP @B-}@@@B.}@@@@@@@@@E@B/}E@E@E@E@E@P@@B0}P@@TP@ "@UUTB1}T@U@u]TU@_T*PTUPTPU@B2}@UWP@U@@UPPU@@U@U@UUPB3}@]@((uP@WUUUUP@Ui@Vi@U@@B4}i@Vi@ PTePVY@@@iP `i@ZPB5}@iX Z%%i@ZP@@iX*%iVP@@H !fZP@B6}@% XZP@@*U UUUZ@@eUUUU YPB7}*T@*T*@((P((@B8}P$*@P @T@UB9}PU@UPUTDDDwwwwwwwwwwwwwwwwwwwwwwwwu@@@@@@@@@@@@@@@@@@@@@@@@@@B:}@@@@@@@@B;}@@B<}P@@@B=}@P@PT@* P@@B>}UTTPU@U "UPU|UUT=U@PB?}u]TT@ _T@@TPT@ZPB@}@ZPPP@YTe@ZTBA}PZTUU@TV@&PVBB}@ `V `@@@ X%&BC}@U((P U@U` @ UPh) @BD}`(( @P((@P$BE}@@@P@BF}PWwwwDDwwwwwwwwwwwwwwwwwwwwwwu@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@BG}@@@BH}@@PBI}@@@BJ}@@P@T@U@TPU@BK} "*PUPUUTU@@WPu]T@BL}@U_TU@@U@TPU@((@BM}UPPU@i@i@@i@i@PBN}ePUUY@@iPVi@@iPVi@@iPBO}Vi@@ `f@%X%X@*((BP} @ P* * @P((BQ}@T((*@`$ @PPBR}@TP@P@PTBS}TDDDDDDDDDDDDDDDDDDDDDDDDDDDE@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@BT}BU}BV}BW}BX}BY}BZ}B[}B\}B]}B^}B_}B`}Ba}Bb} E@@@@@@@@@@@@@@;TU"UW @@@@) ))%) @`UUuUuUU E@@Fd}Fe}Ff}Fg}Fh}Fi}Fj}Fk}@@@@) ))%) @`UUuUuUU E@@DJm} Jn}Jo}Jp}Jq}Jr}Js}HU31000 DIM FONT$(1024)31001 FONT$(1,80)="TU UW TUuU]  E(UU`PPPT*`PT"31Nu}002 FONT$(81,160)=" ((*(($PP* T PP`UX( "31003 FONT$(161,240)="UuNv}_TPU]@@@@@TTTPPZUUTPUPTUu_@@UUuU "31004 FONT$(241,320)="Nw}"31005 FONT$(321,400)="Nx}"31006 FONT$(401,480)="Ny}"31007 FONT$(481,560)=""3100Nz}8 FONT$(561,640)=""31009 FONT$(641,720)="N{}"31010 FONT$(721,800)="N|}"31011 FONT$(801,880)="N}}"31012 FONT$(881,960)="N~}"31013 FONT$(961,1024)=""31014 FONT$(19,19)=CN}HR$(34)31015 RETURN FONT$(961,1024)=""31014 FONT$(19,19)=CL4)31019 RETURN1024)31001 FONT$(1,80)="TU UW @@@@) ))%) UUuUuUU@` E@@"31LTU"UW TUuU]  E(UU`PPPT*`PT ((*(($PP* T PR}P`UX( Uu_TPU]@@@@@TTTPPZUUTPUPTUu_@@UUuU R}R}R}R}R}R}R}TUuU]  E(UU`PPPT*`PT ((*(($PP* T PPV}V}V}V}V}   V}V}TUe-run0560 ; the program without fixing it up0570 ; where it modifies itself.0580 ;0590 ;0600 ; Problem #4: Execution Tim&}e of Loops0610 ;0620 *= $06000630 PLA0640 LDA #$14 ; 20 (decimal) outermost loops0650 STA $D0 ; using page zero cntr&}.0660 LOP3 LDX #$0 ; init. loops0670 LOP2 LDY #$00680 LOP1 DEY ; innermost loop0690 BNE LOP10700 DEX ; second loop071&}0 BNE LOP20720 DEC $D0 ; outermost loop0730 BNE LOP30740 RTS ; back to Basic0750 ;0760 ; Note: Takes approx. 6 sec.&}0770 ; for about 1,3 million inner loops0780 ; That's half a million loops a sec. !cations $54 (row) and $55 (column)50 ; $U F` O  < ө FLQв m z`ʼnň`ţ Ţ`` Qy Q Q} Qy O Q ţĢ JJJא`ii` A  X  Y}  P  S L Q Q Q Qyz ~LY Q Q 򾥕ii`L (} \gH(lLb䩀 iiihhh(l ( LU (  LUhh}إ ɀXLxlzH hJJJHHGH`h H(lh HH}`eeHH :L :