@L}5 _$% l0$)$$Hȱ$ UhL" `e$$%`$%`  R@P!( L(1   Y I`  d  Ld M * @  $ % CC$$)%1 Udߥ$9%: !0 S$% DD˙`  }J)Lr d M * @  $ % CC$$)%1 Udߥ$9%: !0 S$%} DD˙`  }J)Lr J  ((  p L ()   J}L= ( L 0q A    IB JC;? D W } LL  ` W )LA!  ߰")-݆ p" } $G@LL 08`Q")<2Q0 -G$Ș݆ UL# ; p8(()(0ʥ)NQ` }$GȘ݆LU )L ݆ L GȘ ݆LL )W>Z   HH)H }p h  hyhy D L> L JJ    ! LA*` BF }7'8  M HN H` 8 Z  \LdJJ!"! GFE@F (!L }EE !E^ ^ E E7EȩEdE/EȩE  D } .L }  ;F d  ;?F7F? ( .   Z D LL d } . D  L    p  E` , d)  D L) 0BM݊L݉} ML  N݆ L NLML [ TEqEHȱEqEh 0Gȹ G} HLL GɛL  LFREE SECTORS G) *Gȩ GȽG GȌ*jj >G} C8jJ3j2CD( C202C ԠBX` N 1? l LlD:RAMDISK}.COMLu L1 L ;LHL  T`  `1  ɐ     `TU  } L ? .  t`GBJ ~DEHI B V0dV!}QDEHI VF9 ,0 ,0 s0hhL  L` H hDHEh"}DEL8HI4 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;DEL`?<0LV`@ʆ 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  (` 9 V⪍ ઍ  -'}LLu ÝDEHILV 9 .l 9 .l  `` s$B BH(}I|DE V BLV nB,DE JLV B V BLVDEIʩ BꭝLu } 3E:}DISK OPERATING SYSTEM II VERSION COPYRIGHT 1984 ATARI CORP.A. DISK DIRECTORY I. FORMAT DISKB. RUN CARTRIDG*}E J. DUPLICATE DISKC. COPY FILE K. BINARY SAVED. DELETE FILE(S) L. BINARY LOADE. RENAME FILE M. RUN AT ADDRES+}SF. LOCK FILE N. CREATE MEM.SAVG. UNLOCK FILE O. DUPLICATE FILEH. WRITE DOS FILES P. FORMAT SINGLEL !N',}#"&))9(&*)/h)''-&؆莟R'S  vL/ˢ L }Insert DOS 2.0s, type Y Λx -}DEfHI 1莏#q! @ y0ɛ8A0,' ȅ 1 1ild! 1L!NO SUCH ITEMSELECT.} ITEM OR FOR MENU! 0 .z:*{}.|{ 1 0 0JB 18L%|DL/}%DIRECTORY--SEARCH SPEC,LIST FILE?[# 0 0 &|D3" 1L!NOT A DISK FILEN !B 1L!E# 1 !BD0}ED:}:1BJ|DE 1DEBHI 1 h0ߢ 0.1}  0?詛 1 y0YЛ 1 ;#L" ;#L! BL1TYPE "Y" TO DELETE...DELETE FILE SPEC2}COPY--FROM, TO?OPTION NOT ALLOWED697 FREE SECTORS COPYING---D8:COPY32.COMl# 0|D .L/%#3}##JB|DE 1BHID#E 1#0: B 1L!#͑### B 1#c$0SY4}S1}:## # # .#Ƚ# # 𩛙## 1,#PD#ELJ- <.BJD#E 5}1 1HH 0hh|DL%1}:̳# L% #D#EL% 1 0 . .0O% 1L!WILD CARDS NOT A6}LLOWED IN DESTINATION 0 <.|K}N 2 FORMAT. t* 5) 1L!`) 0NΞ 0 L1) 1 L!BAD LOAD FILELOAD FROM WHAT FILE?) 0 ?}0#B 1L!WHAT FILE TO LOCK?) 0 0$B 1L!WHAT FILE TO UNLOCK?DUP DISK-SOURCE,DEST DRIVES?TYPE "Y" IF OK TO US@}E PROGRAM AREACAUTION: A "Y" INVALIDATES MEM.SAV.FE! +L1   `*  70 2 2A} 0.* 1 y0 0)INSERT BOTH DISKS, TYPE RETURN^, 1 y038逍 N, 1L! ,B}C, t*  Lx+, 0 ^, 1 y0 , ,0,0 ,L+ ,I0 ,Vǭ0C}Ξ, 0 }, 1 y0C,ШC, 0K'!" H H 'h h Lx+!EF 5L1L!D,I,HhD}` NOT ENOUGH ROOMINSERT SOURCE DISK,TYPE RETURNINSERT DESTINATION DISK,TYPE RETURNE}`  `8 rL1`-* 1P* 1 y0Y`hhL!NAME OF FILE TO MOVE?- 0 0|DL% <.F},^ 1 70 0 .@L# .BJ 1  DEHIB V L1 ,} 1 70,L.  G}JB|,#P#DE 1 HI BDEHHII 1 B 1 ,^ 1 70,0La- B V,#PH},^ 1 70 0L#L!-* 1P* 1 y0Yj383}mm ݭI}}`8}``|* ? ɛ,`|:-)| / 1L!`DESTINATION CANT BE DOJ}S.SYS0 0H{ 24Δ 28/L!/) 2 Π 2 0 ξK}hAΞB,0 J 1 BDEHI,HÝDE 1HIHIDELSAVE-GIVE L}FILE,START,END(,INIT,RUN)O S0 1`BDEPHI V` S0H 1 L!M}0 0 1L~0`PLEASE TYPE 1 LETTER,0`hhL! 70 1L0L<1 ,;ɛ7,"ɛ:ݦ1ݥN}A"D|ݤD|ȩ:|ȩ|ɛ,,(/+.ީ1 1,ɛ`轤{NAMEO} TOO LONG B VL!` L1I H1EΝDL1|mDiE` V0`8d/8 i:222 1 LP}!ERROR- 144ɛ+,' 20*.. өr2 1``2TOO MANY DIGITSINVALID HEXAQ}DECIMAL PARAMETER800 0 8 00`,0'D800 H,ɛh`2L1NEED D1 THRU D8uR} ECIMAL PARAMETER800 0 8 00`,0'D800 H,ɛh`2L1NEED D1 THRU D8uT}|}5XiԥYՠԈ J`0/+% 25.$).&/"!3---------------------n##- AUTORUN.SYS - GENERATOR -xBDie hier vorliegende Diskette enthaellt ein sehr leistungsfaehiges Sortierprogramm in Maschinensprache. Es besteht aus den dr W}ei Teilen SUPER2.ASM, DVMOD.ASM und SORT.SYS. Das letztgenannte ist das Ladeprogramm f r das Hauptprogramm. Wenn es in AUTORU X}N.SYS umbenannt wird, laedt es beim Einschalten des Computers automatisch das Hauptprogramm nach. Die Sortieroutinen lassen s Y}ich vom Basic aus nicht laden. Es ist lediglich mglich ins DOS zu gehen und SORT.SYS mit der Funktion L zu laden. Dazu muss Z}allerdings ein MEM.SAV auf der Disk sein (Funktion N).Die Handhabung des Sortierprogramms ist dem Beispielprogramm SORT.BAS [} zu entnehmen. Man muss dort zunaechst eine Recordlaenge eingeben (Record = Datenblock), danach die Anzahl der Dateinbloecke \}und schliesslich die Anzahl der Stellen, nach denen sortiert werden soll. Wird hier z.B. 2 eingegeben, werden die zu sortiere ]}nden Strings (Texte) nur nach den ersten beiden Zeichen sortiert, d.h. wird der String AAB vor dem String AAA eingegeben, so ^}bleiben sie in dieser Reihenfolge, abwohl nicht in der alphabetisch richtigen Reihenfolge stehen. Dies hat aber den Vorteil, _}dass schneller sortiert wird. Den Aufruf des Maschinenprogramms und die Dimensionierung der Strings ist dem Beispielprogramm `}zu entnehmen. sortiert wird. Den Aufruf des Maschinenprogramms und die Dimensionierung der Strings ist dem Beispielprogramm  12OaABLAKMA (('(P((A@@A A@@@9 @2d##--------$b}---------------------nINFO generiert durchx##Text-DATA-Generator B.Wagner##-----------------------------1@$c}+1A@h'A @'A&&;@@,;@@,;@@,226$d}.( ""@@K6-A00((ɠԠҺ$e}͠'-@'AR@ -@@ ( -@#-$f}@"4"A *"'*6-&@ 4 A@""A 6-'" A-@""$g},24*"@ 6-@(6. 2 AP6* 4 67B:,%@,.,* AP@"@6. AP$h}J67B:,%@,. T 67B:,%@,. 6-B:,^ h"@@Ar 4@6.|( AR$i}B-@#B(' ̭нάҬн-@6@!( )@;$j}"A&16-&@ %@ $+"A,; A"@ A`)6-%@ &@ $+",) A-$k}@-@@P#-@@ ""A '$-@"2$l}4*"@ 6-@(6. 2 Ap* 4 67B:,%@,.,* Ap"@6. Ap&6$m}7B:,%@,. 0 67B:,%@,. 6-B:,: DB"4@*P:'@,'@-(@8(@B A N$n} 4@(@ A X8P:'@,'@.(@ 8 A b(@l   $%%4,Die,h$o}ier,vorliegende,Diskette,,4,enthaellt,ein,sehr,leistungsfaehiges,,3,Sortierprogramm,in,Maschinensprache.&&6,Es,be$p}steht,aus,den,drei,Teilen++5,SUPER2.ASM,,DVMOD.ASM,und,SORT.SYS.!!4,Das,letztgenannte,ist,das,,4,Ladeprogramm,fue$q}r,das,Hauptprogramm.((5,Wenn,es,in,AUTORUN.SYS,umbenannt''6,wird,,laedt,es,beim,Einschalten%%4,des,Computers,auto$r}matisch,das3,Hauptprogramm,nach.,Die&&4,Sortieroutinen,lassen,sich,vom%%6,Basic,aus,nicht,laden.,Es,ist++6,$s}lediglich,moeglich,ins,DOS,zu,gehen''6,und,SORT.SYS,mit,der,Funktion,L**6,zu,laden.,Dazu,muss,allerdings,ein!!5,M$t}EM.SAV,auf,der,Disk,sein2,(Funktion,N). 1,@++4,Die,Handhabung,des,Sortierprogramms))4,ist,dem,Beispielprog$u}ramm,SORT.BAS##5,zu,entnehmen.,Man,muss,dort,,4,zunaechst,eine,Recordlaenge,eingeben))6,(Record,=,Datenblock),,da$v}nach,die$$4,Anzahl,der,Dateinbloecke,und##4,schliesslich,die,Anzahl,der++6,Stellen,,nach,denen,sortiert,werden$w}**7,soll.,Wird,hier,z.B.,2,eingegeben,**5,werden,die,zu,sortierenden,Strings**6,(Texte),nur,nach,den,ersten,beiden$x}''6,Zeichen,sortiert,,d.h.,wird,der%%6,String,AAB,vor,dem,String,AAA%%6,eingegeben,,so,bleiben,sie,in //7,dieser$y},Reihenfolge,,obwohl,sie,nicht,in ""3,der,alphabetisch,richtigen ))5,Reihenfolge,stehen.,Dies,hat,aber ##5,den,Vorte$z}il,,dass,schneller %%5,sortiert,wird.,Den,Aufruf,des""3,Maschinenprogramms,und,die++5,Dimensionierung,der,Strings,${}ist,dem&&3,Beispielprogramm,zu,entnehmen. 1,@&&8,Bevor,man,ins,DOS,geht,,um,das**7,SORT.SYS,zu,laden,,muss,N$}}}~}}aD1:LOCKUP.PIC 021Åa)=b:KWˀvō&+#mt3iS0꜐.Xs57 g?o}O, hu8; U`Q 謶ʎR*BdkIH%"GYZADnﮁCP{VF\[ӭ]J1p9l4Eyٳe!2M_'c|w Λ/x-T6 $rj@}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}EW,einge-2,geben,werden. 1,@//8,Es,ist,auch,moeglich,,wenn,das,SORT.SYS--4,automatisch,beim,Booten,(Einsch$}LY YU ` M NL  U `ZT hhhhh  m i }alten)..6,geladen,werden,soll,,gleichzeitig,aber..7,auch,ein,Basicprogramm,zu,starten,ist,,,6,das,SORT.SYS,und,de$}n,Autostarter,zu-))6,sammen,zu,laden.,Dazu,muessen,die,,5,beiden,Maschinenprogramme,im,DOS,zu-2,sammengefuegt,w$}erden:,,4,1.,SORT.SYS,,AUTORUN.SYS/A ,,5,Als,zweites,das,AUTORUN.SYS,loeschen //5,und,SORT.SYS,in,AUTORUN$}.SYS,umbenennen.! 999 D:INFO.BASumbenennen.S/A TORUN.SYS,loeschen //5,und,SORT.SYS,in,AUTORUN$LmͭiΠ˩m i    m i ˍ ̍˙FL+˭̭ }ͭα˪͑ˊm˭i̠F8˭̠Fː L }˭ ̭ͭΠ˪͑ˊ8 ͭ 8 ͥ8 ˭ 8 ˥8ͥ0DL }miʭ , ,8  L0=  8,,m i LL }"ʽ ʽ , ʽ, Lm˭i̥˅m˥̅i̠ːb LA ˙F˅ͥ̅8ͅ }ͥ΅ΠF͐ L4 ͑LF L`ːb LA ˙F˅ͥ̅8ͅ Nɛȑ @膔7 ɛ 襔!ɛL! _ɩ8$IȢ %e拢 } &!$P* &8孨客 "&$ 1L~ L~ &L _ɰe拢 &L~ +0 %30Ԅ }L 9:枢0 O L :H9Hhh tLHH`h}hLCL馩`ʆLC枢0ְşLC`A枢Ɣ!L!L}!T 򈩛LQLD ijq ߰,iŰD VD8` 覲`8` 넬 S( +饰}0 S0:$$ p8`$p (ȩ@҅ҥ򄬤 ߰ A L8򨢄 %Ӥ򈦬ʽ ʽ % }+HH 屝EҨhh$P0Ƭ 襯I `_A[`8`80 &Ոԅ}` 넬$ +  + h갳 h) + , 褔ԙ!` "8` 襔 ɛ "ȱ"}嫤!`! `) ɛ%)a{)_0:A[_դ`RE͕DATINPUԑCOLOҝLISԖENTEҚLEԛIƜFO}NEXԑGOTϑGO TϑGOSU½TRAАBYŐCONԞCO͟CLOSŐCLҐDEǞDI͐ENĐNEנOPEΖLOAĖSAVŢSTATUӣNOTPOINԡXIϤOΒPOKťPRINԐRAęREA}ĨRESTORŐRETURΩRUΐSTOАPOХGEԫPUԑGRAPHICӒPLOԒPOSITIOΐDOӒDRAWTϓSETCOLOҬLOCATŔSOUNĦLPRINԐCSAVŐCLOAĚERROR- }DPOKœMOVœ-MOVŪ*ƐREPEAԑUNTȊWHILŐWENĐELSŐENDIBPUBGEԒFILLTϐDϐLOOШEXIDIҖLOC˖UNLOC˖RENAMŖDELETőPAUSŖTI}ME$PROøEXEÐENDPROÑFCOLOҪ*̕-RENU͒DEDUMЪTRACTEXԖBLOAĖBRUθGO*’PAINԟCLӔDSOUNCIRCLū%PUԘ%GEԚG}OTGOSUTSTETHEΣ<<>ުNOOANĨ<<>STRCHRUSASVALEADATCOPEESIRNFREXLOCLOSQSGABIN}PADDLSTICPTRISTRIDPEE˦INSTINKEYEXOHEXDEDIFRATIMETIMMOEXERNRANTRUN%%%%GOUINSTERER+,%5}&6(+8,<Xk`fghilm^deDѳHc?,Ќ,е,Y_Ҳ+7,/0}1 2!3"4Ɛ"-"."-؂ٿ֐ː}ĐאŐbj+9,+;,ʐͭ}ͭ@ABC\=>[<+:е<,&%rvnnxc<\}-78s_XV+@D&0d*"'2GJh N}Rl~&2 +饰(+VWZ ]a8`L`  ¤ħ.H h L5 䄡 } 䅭 bɠ04Ů .ŭ%) e拰 ĩ L+Ư0 Le}`毤Hɛ) h`  L ȱ R @ʆ ȱȄ Iğ` :62T F :}7 8 Lbԩ- L 8 8,I ɨ 8L.UH `ƨh $ %3   + \L L 8󅯩" } 8" ©" Ư" L8q :Z#]abj(=) W같  L樤ħ`hh`H YhZ }L<>EO ƹƹ0`H f5h`I&` =? FQA` L񄳱ȱI 䦐}Ħ ąŅ T k /䧰 k ,Ǡ ĩJH ThĥȑĥȑĦʊȑ`HHąŅ}H h hhhh ȱIELZ L`ȱI Hȱȱȱȱȱ }, h @ $L+L.*ȱȱȱȱȱjEE `EjI `e`ħ ¥}0 ` Lk 䦪`! 䧰L A@L `I&`L ©؅ L.}0`STOPPED륺 bɠhhL :ʅ` k %3Hƹ h5h`hbjH h #}ԤLQ #LLei  `LԑȥՑȥ֑ȥבȥؑȥّ``䈥剰}#)iiLɠL4űI&`048ץğ=ȱȄ }`L  L0e拠0ȱȄL  䦪`!' >?L (<ж`!  $Л +`,LőŐ78Ƒ8 Ƒ`8` - PѠ}`,,L L PQ 8,L ȱI ѝߠȱ`ԩ},L E  $EL+L],,,؍ 0âLɀL ©7 F󦹩 RbL g }0g `Ո V fL{Ն + +􅕄L AT LINE?BLOAMEVALU>#VAR$LE?DAT>3276INPUDISTACOVERFLO?LIN?}FOTOO LON?DE?GOSUGARBAG?CHMEͣ?LOA?NES?WHIL?REPEA?D?EXIXPRO?EXE?PRO?IS OPE?DEWR ONLCMNOT OPEΣRD ONLEOT}RUNTIMEOUNA!FRAMCURSO!OVERRUCHKSUDONMODNOT IMPRA͠D?>#FILEDSK FULFATAL I/FILENAMPOINLOCKEDCM>DI}?FILPOIN?APPNBAD SECTORӥHՄ +h & .hԩ + ,҅L: ƪn (@Մ$ 0` 0}` 0LoH - . /h &@Յ՘JJJJ X) 0:i`AVC2 sŠ 5  <)  <} L L + e +e`e`&&&&&&eee` &}&eee&*`` 兙 䦪!0 4 ۄܱ **m ݤܱEۅڦڱ= } ܥeƥiեLN@ ` **)]` 00`` ( ((((((((8}`W)ߥ & &e &߽řِ׼JJJJ&eXޥeYߥ䥛 9 FfЎᰈ } `  M 8*` 兙 󥐅i祣L{ &L}  0 & L ȑ & L; # )ȱ L })ȱ) )ȱ 8ƣŐő0eސ`ƙ8ް`)ȱJJJ`}``=`]``` E߭H Ġ} hL±&Lv`[  ȱ R] } L L  䅠 bɰhhğȱȄ L l"0e拱LjLxffg~33>00xgfffff<hLY YU ` M NL  U `ZT hhhhh  m i }mͭiΠ˩m i    m i ˍ ̍˙FL+˭̭ }ͭα˪͑ˊm˭i̠F8˭̠Fː L }˭ ̭ͭΠ˪͑ˊ8 ͭ 8 ͥ8 ˭ 8 ˥8ͥ0DL }miʭ , ,8  L0=  8,,m i LL }"ʽ ʽ , ʽ, Lm˭i̥˅m˥̅i̠ːb LA ˙F˅ͥ̅8ͅ }ͥ΅ΠF͐ L4 ͑LF L`hh  m i N10 ; SUPERSORT v2 2/19/8120 ; rev. 2 fits under basic...must use w/ autorun.sys file30 ;40 ; Bob Fraser50 ;60 ;70 ;}80 *=$CB90 AZ=*0100 *=*+20110 BZ=*0120 *=*+20130 TZ=*0140 *=*+20150 ;0160 *=$6000170 RLENG=* record length018}0 *=*+10190 KLENG=* key length0200 *=*+10210 M=* smallest sort done by quicksort0220 *=*+10230 N=* location of beginn}ing of last record0240 *=*+20250 I=* next 4 are internal sort vars0260 *=*+20270 J=*0280 *=*+20290 L=*0300 *=*+20}310 R=*0320 *=*+20330 MSCALE=* m scaled for comparison0340 *=*+20350 ST=* table start address0360 *=*+20370 SP=* sta}ck pointer0380 *=*+10390 STACK1=*0400 *=*+260410 STACK2=*0420 *=*+260430 TREC=* temporary record0440 *=*+1850450 }Q=*0460 *=$1D5A leave room for memlo reset routine0470 PLA pop off USR's n value0480 PLA0490 STA ST+10500 STA AZ+1}0510 PLA0520 STA ST0530 STA AZ store address of data table0540 PLA0550 STA N+10560 PLA0570 STA N store parameter} 'n'0580 ;0590 LDA RLENG0600 STA MSCALE0610 LDA #00620 STA MSCALE+10630 LDX M0640 L0 CLC0650 LDA MSCALE0660 A}DC RLENG0670 STA MSCALE0680 LDA MSCALE+10690 ADC #00700 STA MSCALE+10710 DEX0720 BNE L0 mscale <- rleng*(m+1)073}0 ;0740 CLC0750 LDA N0760 ADC RLENG0770 STA BZ0780 LDA N+10790 ADC #00800 STA BZ+1 BZ <- N+10810 ;0820 LDY #}00830 Q0 LDA #00840 STA (AZ),Y0850 LDA #$FF0860 STA (BZ),Y0870 INY0880 CPY KLENG0890 BNE Q00900 ;0910 Q1 LDA #}00920 STA SP stack <= empty0930 CLC0940 LDA AZ0950 ADC RLENG0960 STA L0970 LDA AZ+10980 ADC #00990 STA L+1 l }<- 11000 LDA N1010 STA R r <- N1020 LDA N+11030 STA R+11040 ;1050 Q2 CLC1060 LDA R1070 ADC RLENG1080 STA J10}90 LDA R+11100 ADC #01110 STA J+1 j <- r+11120 ;1130 LDA L1140 STA AZ1150 STA I1160 LDA L+11170 STA AZ+11180} STA I+1 i <- l1190 ;1200 LDY #01210 L1 LDA (AZ),Y1220 STA TREC,Y1230 INY1240 CPY RLENG1250 BNE L11260 JMP Q3 }R <- R(l)1270 ;1280 Q6 LDY #01290 LDA I1300 STA AZ1310 LDA I+11320 STA AZ+11330 LDA J1340 STA BZ1350 LDA J+1}1360 STA BZ+11370 L2 LDA (AZ),Y1380 TAX1390 LDA (BZ),Y1400 STA (AZ),Y1410 TXA1420 STA (BZ),Y1430 INY1440 CPY }RLENG1450 BNE L2 R(i) <-> R(j)1460 ;1470 Q3 CLC1480 LDA I1490 ADC RLENG1500 STA I1510 STA AZ1520 LDA I+11530 }ADC #01540 STA I+1 i <- i+11550 STA AZ+11560 ;1570 LDY #01580 L3 LDA (AZ),Y K(i) < K ?1590 CMP TREC,Y1600 BCC Q3 }yes1610 BNE Q4 no1620 INY1630 CPY KLENG1640 BNE L3 don't know1650 ;1660 Q4 SEC1670 LDA J1680 SBC RLENG1690 ST}A J1700 STA AZ1710 LDA J+11720 SBC #01730 STA J+11740 STA AZ+1 j <- j-11750 ;1760 LDY #01770 L4 LDA TREC,Y1780} CMP (AZ),Y K < K(j) ?1790 BCC Q4 yes1800 BNE Q5 no1810 INY1820 CPY KLENG1830 BNE L4 don't know1840 ;1850 Q5 LDA} I+11860 CMP J+1 j <= i ?1870 BCC Q6 no1880 BNE L5 yes1890 LDA I1900 CMP J1910 BCS L5 yes1920 JMP Q6 no1930 ;}1940 L5 LDA L1950 STA AZ1960 LDA L+11970 STA AZ+11980 LDA J1990 STA BZ2000 LDA J+12010 STA BZ+12020 LDY #020}30 L6 LDA (AZ),Y2040 TAX2050 LDA (BZ),Y2060 STA (AZ),Y2070 TXA2080 STA (BZ),Y2090 INY2100 CPY RLENG2110 BNE L}6 R(l) <-> R(j)2120 ;2130 Q7 SEC2140 LDA J2150 SBC L2160 STA BZ2170 LDA J+12180 SBC L+12190 STA BZ+12200 SEC}2210 LDA BZ2220 SBC MSCALE2230 STA BZ2240 LDA BZ+12250 SBC MSCALE+12260 STA BZ+1 B <- j-l-(M+1)2270 ;2280 SEC2 }290 LDA R2300 SBC J2310 STA AZ2320 LDA R+12330 SBC J+12340 STA AZ+12350 SEC2360 LDA AZ2370 SBC MSCALE2380  }STA AZ2390 LDA AZ+12400 SBC MSCALE+12410 STA AZ+1 A <- r-j-(M+1)2420 ;2430 SEC A>=B ?2440 LDA AZ2450 SBC BZ2460 } LDA AZ+12470 SBC BZ+12480 BMI L8 no2490 ;2500 LDA BZ+1 B>M ? (B>=M+1 ?)2510 BPL L6B yes2520 L6A JMP L11 no2530 ; }2540 L6B LDX SP2550 CLC2560 LDA J2570 ADC RLENG2580 STA STACK1,X2590 LDA J+12600 ADC #02610 INX2620 STA STAC }K1,X2630 DEX2640 LDA R2650 STA STACK2,X2660 INX2670 LDA R+12680 STA STACK2,X2690 INX2700 STX SP STACK <= j+1,}r2710 ;2720 L7 SEC2730 LDA J2740 SBC RLENG2750 STA R2760 LDA J+12770 SBC #02780 STA R+1 r <- j-12790 JMP Q22}800 ;2810 L8 LDA AZ+1 A>M ? (A>=M+1 ?)2820 BMI L10 no2830 ;2840 LDX SP yes2850 LDA L2860 STA STACK1,X2870 INX288}0 LDA L+12890 STA STACK1,X2900 DEX2910 SEC2920 LDA J2930 SBC RLENG2940 STA STACK2,X2950 LDA J+12960 SBC #02}970 INX2980 STA STACK2,X2990 INX3000 STX SP STACK <= l,j-13010 ;3020 L9 CLC3030 LDA J3040 ADC RLENG3050 STA L}3060 LDA J+13070 ADC #03080 STA L+13090 JMP Q2 l <- j+13100 ;3110 L10 LDA BZ+1 B>M ? (B>=M+1 ?)3120 BPL L7 yes313}0 JMP Q8 no3140 ;3150 L11 LDA AZ+1 A>M ? (A>=M+1 ?)3160 BPL L9 yes3170 ;3180 Q8 LDX SP3190 BEQ Q9 STACK EMPTY ?3200} DEX3210 LDA STACK1,X3220 STA L+13230 DEX3240 LDA STACK1,X3250 STA L3260 INX3270 LDA STACK2,X3280 STA R+132}90 DEX3300 LDA STACK2,X3310 STA R3320 STX SP l,r <= STACK3330 JMP Q23340 ;3350 Q9 CLC3360 LDA ST3370 ADC RLENG}3380 STA AZ3390 LDA ST+13400 ADC #03410 STA AZ+1 j <- 13420 ;3430 L12 LDA AZ3440 STA TZ3450 ADC RLENG3460 STA} AZ3470 LDA AZ+13480 STA TZ+1 t <- j3490 ADC #03500 STA AZ+1 j <- j+13510 ;3520 LDY #03530 L13 LDA (TZ),Y3540 C}MP (AZ),Y K(j-1)>K(j) ?3550 BCC L21 no3560 BNE L14 yes3570 INY don't know3580 CPY KLENG3590 BNE L133600 JMP L21 n}o3610 ;3620 L14 LDY #03630 L15 LDA (AZ),Y3640 STA TREC,Y3650 INY3660 CPY RLENG3670 BNE L15 R <- R(j)3680 ;3690 }LDA AZ3700 STA BZ3710 LDA AZ+13720 STA BZ+1 i <- j3730 ;3740 L16 SEC3750 LDA BZ3760 STA TZ3770 SBC RLENG3780 }STA BZ3790 LDA BZ+13800 STA TZ+1 t <- i3810 SBC #03820 STA BZ+1 i <- i-13830 ;3840 LDY #03850 L17 LDA TREC,Y3860} CMP (BZ),Y K(i) <= K ?3870 BCC L17A no3880 BNE L19 yes3890 INY3900 CPY KLENG3910 BNE L17 don't know3920 JMP L19} yes3930 ;3940 L17A LDY #03950 L18 LDA (BZ),Y3960 STA (TZ),Y3970 INY3980 CPY RLENG3990 BNE L18 R(t) <- R(i)4000 }JMP L164010 ;4020 L19 LDY #04030 L20 LDA TREC,Y4040 STA (TZ),Y4050 INY4060 CPY RLENG4070 BNE L20 K(t) <- K4080 ;}4090 L21 LDA AZ+1 j < N ?4100 CMP N+14110 BCC L21A yes4120 BNE L22 no4130 LDA AZ don't know4140 CMP N4150 BCS L22 } no4160 L21A JMP L12 yes4170 ;4180 L22 RTS4190 .ENDc...must use w/ autorun.sys file30 ;40 ; Bob Fraser50 ;60 ;70 ;901 NEWMEM=$205502 DOSINI=$0C03 MEMLO=$2E704 ;10 *=$1D4C20 INITDOS JSR ENDRTS30 LDA #NEWMEM&25540 STA MEMLO50 LDA "}#NEWMEM/25560 STA MEMLO+170 ENDRTS RTS80 ;90 ; dos vector initialization0100 ; (executed once)0110 ;0120 *=$6000130#} BEGIN LDA DOSINI0140 STA INITDOS+10150 LDA DOSINI+10160 STA INITDOS+20170 ;0180 LDA #INITDOS&2550190 STA DOSINI0$}200 LDA #INITDOS/2550210 STA DOSINI+10220 ;0230 LDA #NEWMEM&2550240 STA MEMLO0250 LDA #NEWMEM/2550260 STA MEMLO+1%}0270 ;0280 RTS0290 ;0300 ;0310 ; set autorun address0320 ;0330 *=$2E20340 .WORD BEGIN0350 .ENDTA MEMLO50 LDA l)*RLENNREKLENTABLABBLANKSTARLAS@@@@`<<< H @A1'} Ag Au @ ***ҠΠ*** (}+'(RECORDLAENGE EINGEBEN (1-185) +&("(MAXI(}MALE RECORDANZAHL &(/(+(SCHLUESSELFELD-LAENGE EINGEBEN /2 !6-< (}F***͠Ӡ***P6)}-+%@,$Z;,;,;,d"-@67<,. " i***Π***n 6.x%"(EINGABE MIT *} BEENDEN%((RECORD EINGEBEN B:,"ApB:,"A67B:,%@,.67B:,+}%@,.B:,"&A A067B:,%@,. (}( UNSORTIERT:( A ***,}ԠΠ***A6A7A8@ ! 6-C:,!6-%B:,&@$6-?:Au<<,-}( SORTIERT:" A,1***Ԡ***6-@B:,'&@@(7$%@<$%,J .}T$ D:SORT.BSPLENTABLABBLANKSTARLAS@@@@`<<< H @A1AHL &(/(+(SCHLUESSELFELD-LAENGE EINGEBEN /2 !6-< (}F***͠Ӡ***P6-+%@,$0}Z;,;,;,d"-@67<,. " i***Π***n 6.x%"(EINGABE MIT BEENDEN%1}((RECORD EINGEBEN B:,"ApB:,"A67B:,%@,.67B:,%@,.2}B:,"&A A067B:,%@,. (}( UNSORTIERT:( A ***Ԡ3}Π***A6A7A8@ ! 6-C:,!6-%B:,&@$6-?:Au<<,( SORTIERT4}:" A,1***Ԡ***6-@B:,'&@@(7$%@<$%,J T$. 5} AAAAAFF RGEA AF FRRFR FRRFR RFR @@66}7}8}9}:};}<}=}>}?}@}A}B}C}D}E}F}G}H}I}J}K}L}M}N}O}P}Q}R}S}T}U}V}W}X}Y}b%DOS SYSb*)DUP SYSbUAUTORUN SYSbSORT SYSb4SUPER2 ASMb!DVMOD ASMb &SORT BASB-SMEM SAVb VSORT LETb aINFO BAS