,X85IJt䠤LLLiL#  l80fE bG)ȱG㩀eGHii  RP#$!0P @ $E *  (#`E)a! A! GH`L!0+ - x  XLY,;PL,10Jp/ ȭ  1  &18jJ11f0) `  Ih iJf0i1)xL E:"HELP.CMD fuer XDOS 2.3CLS' ӠЭ堛'K Datei | TRIDGE [Basic-Zeile]'OCK Datei| ECTORY [Suchname]'ETE Datei| AME alter,neuer Name'E Datei | T = Schreibe DOS.SYS'ORUN | ̣ = Loesche Disk' [Adr] | T = Teste XF-Dichte ' [*] | T = Warte auf RETURN'User-Befehl| = Loesche Schirm'Kommentar | Text = Text anzeigen'D Datei [Lade-Adr [Laenge]]'E Datei Start End [/] [Init|- Run]'Y Quell-Datei [Ziel-Datei]'CUTE Datei = COM/CMD-Datei starten' und F = Basic ein/ausschalten'ӣ ͣ ģ = Disk formatieren:'(S=Single M=Medium D=Double Density)'Ʋ = Zweiseitig formatieren (XF551)' = Laufwerk #n anwaehlen (n=1..8)' = Kuerzel fuer DIR bzw. CAR'[Adr] = Speicher anzeigen'Adr Byte ... = Speicher aendern:' z.B. 4A(hex) = .74(dez) = 'J(chr)' ΠàWAI'} 젛'- Abkuerzung fuer *.*'+ Dateiname im Directory-Format'/A Append / 2-spaltige Directory'/D Zugriff auf Directory'/S Dateinamen anzeigen (Show)'/N Keine Yes/No-Abfrage (NoQuery)'/Q Yes/No-Abfrage (Query)'D;Name (statt "D:Name") = wie /Q'' 'Y oder RETURN : Ja ESC oder BREAK:'N oder Leert. : Nein  Abbrechen'' '160: DRIVE NUMBER ERROR' (Auf mehreren Laufwerken sind' Dateien zum Schreiben offen)'180: BAD LOAD FILE' (Keine COM- oder CMD-Datei)'181: ADDRESS RANGE ERROR ' (Adresse im falschen Bereich)'182: BAD NUMBER (Ungueltige Zahl)' ΠàWAI'} ӭ堛''LOMEM-Wert'xxxx' Buf FD Co Ram (D8:)>709' | ||    Ramdi sk'Anzahl || | | Run- | 0=keine'der DOS- || | | Adresse | E=14K'Puffer || | | (Lo,Hi) | A=64K' || | | | 8=90K'Format | | Car- Bit# | C=128K'bei FM#: | | Adresse 3210 | 9=180K'0=DOS 2.5 | | (Lo,Hi) xxxx D=256K'1=DOS II+ | | ||||' |  Text- |||1=VBlank'Directory: hinter- ||| abwarten'0=einspaltig grund- ||1=DLI an'1=zweispaltig farbe |0=D8: beim' | Booten' 1=zweite 90K-Ramdis k  loeschenOS II+ | | ||||' |  Text- |||1=VBlank'Directory: hinter- ||| abwarten'0=einspaltig grund- ||1=DLI an'1=zweispaltig farbe |0=D8: beim' | Booten' 1=zweite 90K-Ramdis@?H`XY=H CA A?H cB % D i@ DL)@@H@H@HAH G@` D,P?- )?<'Qa{E`I I ?i(j`8&ee&إ A( A 'AȄG0GG`H 'AhJJJJ) 0G`XY=H A`'i(`8(8('`@ V A @ V`AGG`LoadSaveFailEdite`(e'Ei(E` AH G D i@ɛ))!~!~םGЊ $BhG` A`G xA @H` Z@@H?H @ Vҩ ` *BLnB Z@ O@ V ALcB@mHm nB lG  CLB G8ӥL\@ *B08@H xALnB8` #Cei`8` G eeeeLC`8 G 8ei #C0 `Hei 1Chɛ`eiLC A$0C-LF=L G e.LcB=H%=H F 0A ALXA=H 0A CA=H` ٮGɛ  lG CLF GGlȘM @% @D @8`쪩4 @ʎHXY' oEԠ'5%ɛ>H @&E('穛 A' ȱE A=HLDO'G @IʈLAhh 0A=H XA`` F$ɛ #G D lG C누ɛLbF` ZG lG #GȘ C( ` lGȘ 1C`8eL=F G8e ,G8eLF` `G ZG F`` FLeG 8G zGLF zGLF`ɛ #G ZG ,G G=H G ɛ`=H F`=H F``` #G` `>HI>H` F` F lG`Hh`ɛLGɛ A`~ EEFFFFEEZGeG8DRDUG`GbFkFEEBCLGEdit2.5D1:Free:Line:Col: @`>HI>H` F` F lG`Hh`ɛLGɛ A`~ EEFFFFEEZGeG8DRDUG`GbFkd"CON.CMDBON>3C0 78,8D D500,20 E46B>3C7 AD C4C9,C9 A9,D0 3>3CE 20 C4C9,58,6C BFFE>8 0>244 FFRUN 3C0>244 0RUN 0CAR F lG`Hh`ɛLGɛ A`~ EEFFFFEEZGeG8DRDUG`GbFk{SCя ********************MAP-Befehl**fuerXDOS*(*(c)'89*2*StefanDorndorf*<******************* F.LIOFFP;Z;XDOS-EQUATESd;nERRNO.EQ73xDOSC.EQ$700INIC.EQ$704BUFC.EQ$709OPTC.EQ$70ACOL C.EQ$70BCARC.EQ$70CRUNC.EQ$70EDRVC.EQ$710XXXC.EQ$718KEYC.EQ$71AENDC.EQ$71CCMDC.EQ$71ERAMC.EQ$720;XGLIN.EQ$730XSKIP.EQ$733XMOVE.EQ$736"XGNUM.EQ$739,VERC.EQ$73C6;@DEVB F.EQ$880JLINBF.EQ$883TMOVBF.EQ$8B0^DIRBF.EQ$8C4h;r;DOS2.5-EQUATES|;BSIO.EQ1900BSIOR.EQ1906WRCMD.EQ1913DINIT.EQ$7E0;;OS-EQUATES;IOCB.EQ$340CIOV.EQ$E456;.OR$2400; MAPJMPXMAPTNOTX.AS"MAPneedsXDOS!".DA#253,#155 TMAP.AS"WhatFiletoMAP?" &.DA#1550TRUN.AS"RUN:":TINI.AS"INIT:"DTAB.DA$2E0,$2E1N.DA$2E2,$2E3X.DA$2E0,$2E3b;lXMAPLDADOSC vCMP#'X BEQXOK LDY#TNOTXLDA#TMAP-TNOTXJMPPRINT; XOKTSXSTXSTACKP LDY#0JSRXSKIP CMP#155 BNEYESLDY#TMAPLDA#TRUN-TMAPJSRPRINT LDX#0JSRXGLIN LDY#0*YESJSRXMOVE 4LDX#16>LDA#DE VBFHSTAIOCB+4,XRLDA/DEVBF\STAIOCB+5,X fLDA#4pSTAIOCB+10,X zLDA#3 JSRCMDCLCLOOP1RORFLAGLOOPJSRGET2CH CPY#255 BNE.1 CMP#255BEQLOOP1.1BITFLAGBMIISCOM LDY#180JMPER RORISCOMSTYSTARTSTASTART+1JSRPUTADR LDA#'-$JSRPUTCHR.JSRGET2CH 8STYENDBSTAEND+1LJSRPUTADR VLDA#3`STARUNFL jLDY#11 t.1LDX#3~.2LDASTART,XCMPTAB,Y BNE.3DEYDEX BPL .2BMIISRUN .3DEYDEX BPL.3DECRUNFL BNE.1ISRUNLDARUNFL AND#1 BEQNORUNLDY#TRUNJSRPRADR(NORUNLDARUNFL 2AND#2<BEQNOINIFLDY#TINIPJSRPRADRZNOINILDA#155dJSRPUTCHRn LDYRUNFL xBNELOOP STY15 LDX#16LDA#MAPENDSTAIOCB+4,XLDA/MAPENDSTAIOCB+5,XSEC LDAENDSBCSTARTSTAIOCB+8,XLDAEND+1SBCSTART+1STAIOCB+9,XINCIOCB+8,X BNE.1INCIOCB+9, !X".1JSRCMD7,BEQERROR 6JMPLOOP@;JCMD7LDA#7TCMDSTAIOCB+2,X^TYA hJSRCIOVrBPLEOFOK |CPY#136BEQEOFOKERRORSTYERRNORETURNLDXSTACKPTXS EOFOKRTS;GET2CHLDA#0 LDX#16STAIOCB "+8,XSTAIOCB+9,X JSRCMD7 STASAVE JSRCMD7BEQRETURN LDYSAVERTS&;0PRADRLDA#TINI-TRUN:JSRPRINTDJSRGET2CHNPUTADRSTYSAVE XJSRPBYT bLDASAVE lPBYTPHAvLSRLSRLSRLSR JSRP #NIBPLA AND#15PNIBCMP#10 BCC.1 ADC#6.1ADC#'0PUTCHRTAY LDA#0PRINTSTYIOCB+4 LDX/MAP STXIOCB+5STAIOCB+8 LDX#0*TXA4STAIOCB+9 >LDA#11 HBNECMDRSAVEND.EQ*-1\STACKP.DA $#0fFLAG.DA#0pRUNFL.DA#0zSAVE.DA#0START.DA0 END.DA0 MAPENDY LDA#0PRINTSTYIOCB+4 LDX/MAP STXIOCB+5STAIOCB+8 LDX#0*TXA4STAIOCB+9 >LDA#11 HBNECMDRSAVEND.EQ*-1\STACKP.DA X$%L>$MAP needs XDOS!What File to MAP? RUN: INIT:XL|%% 3ɛ |% 0 6DEJ (%n% <%,%0L5%%% ]%- y% <%%% ]%% %2$0 Γ%筓%)& U%%), U% y%%Џ&D%E8%%H%%IHI &%L$B V I%`HI &%% &%欔%` |% <%% f%%HJJJJ q%h) ii0D$EHI З$%% ]%- y% <%%% ]%% %2$0 Γ%筓%)& U%%), U% y%%ЏR'SP0 P  ٦ d ^ P *Lκ : > A,ʆ ƭ ~ LlLo ՜L > ȝ㥌ݥő (L㣩 <0i詁膐  8襹;Ŕ啰qƴ `kLo <I0 ȝ襌` Q f *`;\ : RORnfjv~SBCSTASTXSTYXMC,*mȭm 8 & J򤑭ɛƑLԫ8fL+ DEHIB V  LLh 7H)` LLʜL   8譓鐜 Ŕ啰2͎88ƵƴŲ峐8 Ƶƴ    ` 󫭌L i `˅̅L٦ i `˅̅` i `ˍ̍` i `˅إ̅L >`Lʜ v 쥕&Hȥeȥehe`oL9o  &щĆei`e `` >Υͥͅ΅V t t t ^,ͅ΅ ^ͥͥ 8L` …L Ү CP    e:e  L@) @`5 Ү C 짠8嫑ȥ嬑LP@0  ` ``Lʜ i <ʩV >ݩ ,  ŀ`8`HH BHI hh`"  0 `0L JC,  ` ˍ̍L 'L8` `Lh=Lʜ ,  `ˍ̍, `ˍ̍ IL L@ +L SC썄퍅 IL S7C0 8譃 'LLkLh>L'H " / <੢DEhJKBLL BL `ୂDEHIBLੀDEHI B DEHI BL V0`Lh8cͅ@ L?ȱ@ֱ@ `System confused@}SynAssembler (c) SYNAPSE SOFTWAREadapted by Steve Hales from theS-C Assembler II Ver/4.0 @ --- Symbol table ---@*** @ error@Source program: $@ Symbol table: $@Memory protected@Memory full@Synta@x@Label not found@Bad instruction@Out of range@Duplicate label@Bad address@Undefined label@Bad symbol@Local out of range@No normal label@Nested include file@Ok.@ Source length: $@Synapse monitor@Can't hide@Can't merge@@@@File type mismatch@Break aborAt@@Nonexistent device@@@@@@@@Device time-out@Device NAK@@@@@Device done@@@@@@@@@@@@@@@@Drive number@@Disk full@@@File name@@File locked@@Directory full@File not found@JJJJ)`ؤ 3 'بJ jɢ )JA S)ܘ) JJJ Ȉ` \BH v )Ȑhݹ߷ީ&*i? 'ܢې  `0 vؐ 5Ș vLv `8ܤ٪eؐ` T0 "T3  T3  T; "D3 D"D3 D"D3 "D3 &1!YMJ,),#($YX$$#]C#)i#$S#$S[[i$$)|mi)S4i#bZH&bTDThDt(ntJrtttrDh2"&&rr&HDD hhޢY p`\Lslp@L)Iؙ L,lHҥҩM hh hh \ ͸Lֺhhh٥D 5 3HHت؆مذHH +  = v0` 5ؘ8 8LLAXYPS湥Ŵ` [ + :K ) / v `JJJIeH= hHJJJJ h)i0:i0,HH E hh`*LwL㺩@0ीLƭL?:;Їڥ``` `Ѹ / v ( v) ` EH 2؄h8`` `qRu`DLw Eb F`lƭ EL ɹhh0H(X`h`y P* * : V 20չI0iŀ IL &&I0 i` ɻHȻHڠ`RW   S0ii `LhGҩ0Ҡ `RTVS-+MDEVBF STA IOCB+5,X LDA #4 STA IOCB+10,X LDA #3 OPEN #1,4,0, JSR CMD "D:Datei" CLCLOOP1 ROR FLAG Hole 2 ByteLOOP JSR GET2CH O aus der Datei CPY #255 Falls $FFFF BNE .1 gefunden, CMP #255 hole Startadr BEQ LOOP1.1 BIT FLAG Beginnt Datei BMI ISCOM mit $FFFF? LDY #180 nein, keine PJMP ERROR COM-DateiISCOM STY START STA START+1 Startadr JSR PUTADR ausgeben LDA #'- JSR PUTCHR JSR GET2CH Endadr STY END holen und STA END+1 JSR PUTADR ausgeben Q LDA #3 STA RUNFL LDY #11 testen, ob.1 LDX #3 INIT- und/oder.2 LDA START,X RUN-Adresse CMP TAB,Y folgt ... BNE .3 DEY DEX BPL .2 BMI ISRUN.3 DEY R DEX BPL .3 DEC RUNFL BNE .1ISRUN LDA RUNFL AND #1 RUN-Adresse? BEQ NORUN LDY #TRUN ja, ausgeben JSR PRADRNORUN LDA RUNFL AND #2 INIT-Adresse? BEQ NOINI LSDY #MAPTEND naechsten COM- STA IOCB+5,X Header lesen: SEC LDA END Laenge= SBC START Endadresse STA IOCB+8,X -Startadresse LDA END+1 +1 SBC START+1 STA IOCB+9,X INC IOCB+U8,X BNE .1 INC IOCB+9,X.1 JSR CMD7 ab ins CIO BEQ ERROR End of File? JMP LOOP nein, weiterCMD7 LDA #7CMD STA IOCB+2,X CIO-Routine TYA JSR CIOV BPL EOFOK CPY #136V bei EOF keine BEQ EOFOK FehlermeldungERROR STY ERRNO Teile XDOS dieRETURN LDX STACKP Fehlernr. mit TXS Zurueck zumEOFOK RTS XDOS-DUPGET2CH LDA #0 hole 2 Byte LDX #16 W Y-Reg=1.Byte STA IOCB+8,X Akku =2.Byte STA IOCB+9,X JSR CMD7 STA SAVE JSR CMD7 bei EOF BEQ RETURN abbrechen LDY SAVE RTSPRADR LDA #TINI-TRUN INIT bzw. JSR PRINT X RUN- JSR GET2CHPUTADR STY SAVE Adresse JSR PBYT ausgeben LDA SAVEPBYT PHA Hex-Byte LSR ausgeben LSR LSR LSR JSR PNIB PLA AND #15PNIB CMYP #10 BCC .1 ADC #6.1 ADC #'0PUTCHR TAY ein Zeichen LDA #0 ausgebenPRINT STY IOCB+4 LDX #>MAP Meldungen STX IOCB+5 ausgeben STA IOCB+8 LDX #0 TXA STA ZIOCB+9 LDA #11 BNE CMDSTACKP .BS 1 VariablenFLAG .BS 1RUNFL .BS 1SAVE .BS 1START .BS 2END .BS 2MAPEND .RA MAP RUN-AdresseIOCB+5 ausgeben STA IOCB+8 LDX #0 TXA STA SC .OR$600 .LIOFFINITLDA#PHAND (STA7952LDA/PHAND <STA796FRTSPPHAND.DAOPEN-1,CLOSE-1Z.DANOFUNC-1,WRITE-1d.DAOK-1,NOFUNC-1nOPENLDA42 xCMP#9 BEQOKJSRCLBUF LDX#66 LDY#2LDA\(36),Y BMI.0INYLDA(36),Y.0LDY#'9 EOR#'S BNE.1 LDX#60DEY.1STYINTAB+7STASSFLGSTXMAXLIN "LDX#255,STXPLINE6INX@.2LDAINTAB,XJJSRWRITE TCPX#8 ^BNE.2 hLDY#10 rSTY]PCOL|JMPBFFULWRITELDXPBPNTSTA960,X CMP#155BEQBFEOLINXSTXPBPNT CPX#38BEQBFFUL OKLDY#1NOFUNCRTSBFFULLDA#155STA960,XBFEOLLDY#9.1LDATAB,YSTA768,YDEY &BPL.1^0JSR58457:INCPLINEDLDAPLINENEORMAXLINXBNECLBUFbSTAPLINElLDX#BAKFFvCLC LDAPCOL ADC#42 CMP#100 BCCSETMLDX#FFTABLDASSFLG BNE.0.2LDA53279 LDX17BEQBREAK CMP#6 _BNE.2LDX#FFTAB+1.0LDA#10 SETMSTAPCOL STX772 LDX/FFTAB *STX773 4LDA#$80 >STA771HJSR58457RCLBUFLDX#39 \LDA#32f.2STA960,XpDEX zBPL.2INXSTXPBPNTTYARTSBREAKLDY#128`RTSTAB.DA#$40,#1,#'W,#$80.DA960,30,40CLOSELDXPBPNT BEQOKBNEBFFULINTAB.DA#27,#64,#15.DA#27,#108,#10.DA#27,#'8BAKFF.DA#27FFTAB.DA#12,#27,#108$PCOL.DA#0,#155.PLINE.DA#08PBPNT.DAa#0BSSFLG.DA#0LMAXLIN.DA#0.DA960,30,40CLOSELDXPBPNT BEQOKBNEBFFULINTAB.DA#27,#64,#15.DA#27,#108,#10.DA#27,#'8BAKFF.DA#27FFTAB.DA#12,#27,#108$PCOL.DA#0,#155.PLINE.DA#08PBPNT.DA$ `hTfh* J B$0ȱ$9IS< U Ljɛ&`  YM8i*d Ц+  Y' ``@W(І@l 8 l c `hTfh* J B$0ȱ$9IS< U Ljɛ&`  YM8i*d Ц+  Y' ``@W(І@l 8 l SC ****************MAKEDOS.COM**************** (.LIOFF2ERRNO.EQ73<RUNC.EQ$70EFDRVC.EQ$710PVERC.EQ$73CZ.OR$4000dRUNLDY#'NnLDAVERC+1xLSR BCC.1 LDY#'F.1STYNAME+6LDA#NAME ST$eA$354LDA/NAME STA$355 LDA#8 STA$35A LDY#3 JSRCMD LDY#0.2LDABLOCK1,Y JSRPCHRINY CPY#6 "BCC.2,LDA#PROG 6STA$354@LDA/PROG JSTA$355TLDA#END-PROG ^STA$358hLDA/END-P$fROG rSTA$359 |JSRCMD7 LDY#0.3LDABLOCK2,Y JSRPCHRINY CPY#4 BNE.3 LDY#0.4LDA$700,Y JSRPCHRINY BNE.4.5LDA$800,Y JSRPCHRINY BPL.5LDA#$49F0 &JSRPCHR0LDA/$49F$g0 :JSRPCHRDLDAVERC+1NLSRXLDA#$5BFFbLDY/$5BFF lBCC.6vLDA#$5BFF+$178LDY/$5BFF+$178.6JSRPCHRTYA JSRPCHRLDA#$9F0 STA$354LDA/$9F0 STA$355LDAVERC+1LSRLDA#$1C00-$9F0$hLDY/$1C00-$9F0 BCC.7LDA#$1D78-$9F0 LDY/$1D78-$9F0.7STA$358 STY$359 *JSRCMD7 4LDY#0>.8LDARUNAD,Y HJSRPCHRRINY \CPY#6 fBNE.8 pLDA#12 zJMPCMD*PCHRSTYTMP LDX#0 STX$358 $iSTX$359CMD7LDY#11CMDLDX#$10 STY$352JSR58454 BPL.1STYERRNOPLAPLA.1LDYTMPRTS*$NAME.AS"D:XDOS.COM".BLOCK1.DA#$FF,#$FF,$46008.DA$4600+END-PROG-1BBLOCK2.DA$4700,$487FLRUNA$jD.DA$2E0,$2E1,$4600V*`PROGLDY#0jSEItSTY54286 ~STY48 STY50 LDA#$47 STA49 LDA#7 STA51.1LDA(48),YSTA(50),YINY BNE.1 INC49 INC51 LDA51 CMP#$20 BCC.1 STY580 $kSTY15 (STYRUNC2STYRUNC+1 <LDA$704 FSTA12 PLDA$705 ZSTA13dINY nSTY9xJMP$E474END*TMP.DA#08),YSTA(50),YINY BNE.1 INC49 INC51 LDA51 CMP#$20 BCC.1 STY580 $@/AN=JF@׍T@UZ @@ @T@U>XY @@ @ @ @ @I @=J[w] @ @T U=JXY @@ @ L@0AXY R VIhh0A`D:XDOS .COMF=FGHFx(mԄ02G1302133 D  Ȅ Lt@U>XY @@ @ @ @ @I @=J[w] @ @T U=JXY @@ @ L@0AXY R VIhh0A`D:XDOS .COMF=FGHFx(9F=FxԄ02G1302133 D  Ȅ LtGHX85@IJt䠤LLLjL# Ɋ l80fE bG)ȱG㩀eGHii  RP#$!0P @ $E *  (#`,oE)a! A! GH`L!0+ - x  XLY,;PL,10Jp/ ȭ  1  &18jJ11f0) `  Ih iJf0i1)xL E:I[ԍӬ, 20Ȉ02ӥ!J8jj,p`L]M] 0.LM \NLL ' `  '*JJݐj p  LY*I1J . \Lb )О q \E 6 . s  GȘ) BDCGȊJJJ V z,q$ %G( ) F E$G`")4`0 G$ 6 $}$%8(()8$E0(0ť)` < L: F 8I?A! <0 wJl  F $G^8>G(;A <1 p ,r*  & GȱG}GȱG} o Lb LV L "B쨹n Hf H`gdaggU1 lO  (( Ы?!0; ! ) !EH Y%E0̦. ^h z0  Y z ] j JCN N ȩ ,P0J, Ζ ,s` { [ v a b Ib / Ìc d  qC p`  g "JI; .  z  sD o Lb z 6 I V z 'ޤDG)ߐ ϭBNj0 c d B)8jj j . \`Z3..`HJ-pb ,t#JJJJC sh JD`  g )LF0FɛF H  hLb  *** F d )c g m m 𸠛%*J DȱGGF1/801:?n0FF0˄F`$AD J),u**:NSQg)0]$J$0ȢF $04?M*B+1-6/A:5)A[+:JL.`ȱ$ɛ FF?  LP$FFFК$F0?, P ` J 0 8`C .DiC!C s,vDG0J Ϡ )*D G  ȭ%FC ? GGБ .* 5N 0>  S k  .($б)ߝCJjDjj`0 J ~^8` 0 \,L0j 0Jj 1 c d c,w  &1.e01iEGȽGȽG ~E B`8@ I EJJJG )&G)ȝGȐ(G0})`8, 0hpB!L! L $8 #d` Gg x$E0#GI GI* If,x0  `( x SG` G`I刱G)I܍p $!0  SdĢD Ƚ?GGG8$C hȩ8!) iШi( l.`hh`"0%j@*. $J!)! B ~"0 !)I@#),y  0]i! )S S0B) . }.莞1!).EmLL` Y`!ఽ)FE ȘH8  `h+DOS SYS FREE # D1:AUTORUN.SYSDX?MHL? dt  %L DM,z 4X  I( DD0J JJsʆ`Lw ) M 1-ѩ$% 20  } T UT P l  8n.l3    hh hh  L 5 4,{ I莶@ 0 2ИF    D  I`>     (Uɛ e`  ' ȹɛ , `[,$$IIʎ Pn>/j!,|l"O'L;U)T; 04 0 j L"1 9`  ;L, HHDP8 )0$J蹃19ID1J0;$  ,ɛ`Ȅ `,}l罢x! TRvDDDBWALURFFFCBCTECRLSFITCLN####NSSEPNAV#IPRIEOOAUONESMDLOLEXOUOA2NYA J*, a  0UR p`   xխЍ)0 ӠHj hӢ  ,~  a`    K _L _:G"4(0 DO_    :` DLf $Rp CG8  #( 8liL,L!La,.jȅ09$00i H& $0H$0 ehehe80 `    / \(F*      /-`     " HJJJJ h) ii0 `   Dh,h( ׭l8fIXآD DROS} e@@ `ED`-IH`,J =IIE=6 ; G/ ? G !/ K ?JB/ V,  I0I8`ݰ , k橛GHFH`hנ   j c  K @ H  D I a  D(h Ъ? Y + I)=N`ERROR 462ABORTOK,SourceDestinationӠΠ (p) 1990 S.Dorndorf Buf F,D Co Ram...F  j c  K @ H  D I a  D(h Ъ? Y + I)=N`ERROR 462ABORTOK,SourceDestinationӠΠ (p) 1990 S.Dorndorf Buf F,F=FxԄ02G1302133 D  Ȅ LtGHX85x@It䠤LL]LLS#  l80fE bG)ȱG㩀eGHii  RP#$!0P @ $E *  (#`0E)a! A! GH`L!L )` , pRLY0? : 0`( : 0#ư (;9< x(ҌR ҩ҅2815 08Aҩ4L E:Iw] Y 059?0 Y 0$0P3 1 3b@ҩ@ҥҠ҈8@`# 31 )$;ҩe@ < )A9<LQ<9#@) ҍ ) ʭ ` ) e3i35`ҍ ҩҩ`10Jp0/ ȭ  1  &18jJ11f0) `  Ih iJf0i1)xԍӬ, 20Ȉ02ӥ!J8jj` L0.LM NLL)  g` H *JJܐj  G gL*I1J 0 L )П  E )6  T  m GȘ) nBDCGȊJJJ  $ %G(  ) E$G`*")4`0 \G$ n$}$%8(()8$E0(0ť)`  L \80I?A! 0 wJl \ $G^8>G(;A 1  L*   mGȱG}GȱG}  ZL L L) 9"B쨹 H H`Ζ  lO  (( Ы?!0;0 ! ) !EH Y%E0̦. h z0  z j JCN N ȩ ,P0J, Ζ `  a b Ib / Ìc d Z C p` G "JI@  T  Z D  pL  $0    0 ٤DG)ߐ ʭBNj0 Zc d B)8jj j . `Z3..`HJ-pb #JJJJC h JD` 9 )L)F0FɛF H p hL GF ***b F 4d )c g m m 0 2𸠛%*J DȱGGF1/80n1:?n0FF0˄F`$AD J)**#NSQY ;F $0=?Y*N+=-Q/\:A)A[7:J" , 'L).`ȱ$ɛ 2FF? * *0L?P 2 $FɢFFL$F0 ` K0ȱ$:;` HJ @h0 8`C .DiC!C DG0)CJͩ 1G* ȱGJȭ%FC ?GGЅ .*0 5N0> < S  k h.($б)ߝCJjDjj`0 J ^8` L0 ,L)0j 0Jj 1 Zc d c  &1.e01iEGȽGȽG E 'B`8>  EJJJ0G )$G)ȱG(G0})`, 0h8pB!L)! L O$8 d` Gg $E0#GI GI* If0  `(  G` G`I刱G)I܍p $!0  dĢD Ƚ?GGG8$0C hȩ8!) iШi( l.`hh`"0%@*. i$J!)!  y"0!)I@  0]i! )S S0D) ). }.*1!).E m LL)0` Y;`!ఽ)FE ȘH8  `h+DOS SYS FREE #A D1:AUTORUN.SYSDX?MHL?\ d o #  DtMt X lN I( oDD0J JJpʆ`Lw c) M 01V"U$%  } jT T l8n.l3 s4  )U hh shh    X <I莶@ 0 ИF 2  D   1I`> j ) ) <  hU0ɛ <e` J C' ȹɛ S, J`O[,$ȢIʎ Jm>/l!l"O'L;Wݛݭ 06 2  L1 9V` % L ` ]HiHT0 J)0$ M蹃19ID1 M0;$ S ,ɛ`Ȅ J`>bu蘂[~ݶDDDBWALURFFFCBCTECRLSFITCLN####NSSEPNAV#IPRIEOOAUONESMDLOLEXOUOA2NYA J, P80*,   j0UR `   xխЍ)0 ӠHj vhӎ  ` Z C S  L% =6G"1 O_   H ` LHf E0$Rp CG 8 E :#( 78liL",LH.jȅ09$00i H& $0H$0 ehehe80 ` Z C S J/ (F*  0 :  J /-`   S  " HJJJJ 4h) ii0C j`   hh( S׭l8fIXآD ROS} @@ `ED`-IH`;,J ɰES8!0 9  /   !C/  J B/ V,  I0I8`ݰ  橛GHFH`hנ# S Z   c  @H  - SI   (h& SЪ?0 jY + I)=N`ERROR 482ABORTOK,SourceTargetӠƠ (c) 1990 S.Dorndorf Sec FD Co Ram.......F Z   c  @H  - SI   (h& SЪ?0c BANKRAMAAAfAB@@@@A@  - +-(XDOS 2.3 RAM-Disk-AnpassungL&9@,9@,;@ ,)(L(Suche Zusatz-RAM, bitte wartenY6-Bc6-4B@068@,-A$Y6-@%+F:A,!A`,$@(b-@'$@%06-F:,D6-@:>:%@,,JX68,-"F:,^b 2GAR%@/@@;6-G6-<] -@46@0$@%>8,*F:,"L6-%@]68,-$@F6-%+(8,, P=AR%(=($@d Kbyte Zusatz-RAM gefundenZ;!;( (und eine $@d Kbyte ROM-Disk)d+-@+-4@n#6-8@, #6-8&,x-%A$%$@%%$@) - !@6-@#A%"@($(Unter 'D8:' kann nun die @( angesprochen werden.*('(Teste RAM-Disk, bitte warten*(%4A6-% APC,AU@D8:C6.D:SAV 8;A 0 3400\-@367@ <@ ,.>:%@d,X@9@\ p-@3@D8:-O@@4D8:-\@g@p6-A:,8 5(>:AS,FEHLER BEIM SPEICHERTEST !!!8( Alles OK.,14K-Ramdisk ,227,1,108-64K-Ramdisk ,162,4,499. 128K-Ramdisk ,194,9,999/!!180K-Ramdisk ,146,13,70740!!256K-Ramdisk ,210,18,999 D;-A:,8 5(>:AS,FEHLER BEIM SPEICHERTEST !!!8( Alles OK.,14K-Ramdisk ,227,1,108-64K-Ramdisk ,162,4,499. 128K-Ramdisk ,194,9,999/!!180K-Ramdisk ,146,13,7074+"CONFIG.CMDCLS' 砛'' D1 D2 D3 D4 D5 D6 D7>0711' || || || || || || || ||'| '| | | | | | | | unbenutzt'| '0=normal |'2=ohne HighSpeed 8 0=kein Laufwerk'4=XF551 1-7=Laufwerk 1-7'6=XF551 + Autom. +8=Diskrueckseite' Density-Test aus (nur XF551)'-------------------------------------'E=14K-Ramdisk +1=VBL abwarten'A=64K-Ramdisk +2=DLI an'8=90K-Ramdisk 8 +8=90K-Ramdisk 2'C=128K-Ramdisk '9=180K-Ramdisk 'D=256K-Ramdisk '' ΠàWAICLS' '>0719'    'Tastatur- | | Start- |'verzoegerung| adresse  Run-Adres8se' | der DOS- fuer User-'Tastenwie- | Puffer Befehle'derholrate  (Low,High) (Low,High)'WAICLS' '>0719'    'Tastatur- | | Start- |'verzoegerung| adresse  Run-Adres8t"DRIVE.CMDCLS' ıķ'' D1 D2 D3 D4 D5 D6 D7>0711' || || || || || || || ||'| '| | | | | | | | unbenutzt'| 'Laufwerkstyp: |'0=normal < Lwnr.& Optionen:'2=ohne HighSpeed 0=kein Laufwerk'4=XF551 1-7=Laufwerknr.1-7'6=XF551 + Autom. +8=Diskrueckseite' Density-Test aus (nur XF551)'-------------------------------------'E=14K-Ramdisk +1=VBL abwar +2=DLI an'8=90K-Ramdisk +8=90K-Ramdisk 2'C=128K-Ramdisk '9=180K-Ramdisk 'D=256K-Ramdisk krueckseite' Density-Test aus (nur XF551)'-------------------------------------'E=14K-Ramdisk +1=VBL abwar<Zusaetzlich kann unter Speicherbereich anzeigen " Komme@ntarzeile in JOB-Datei ' Text anzeigen WAI auf Tastendruck warten (Wait) ! User-DUP-Befehl ausfuehren-TASTE--entspricht- / DIR ; CARCtrl-3 > (RETURN)RETURN DIR (RETURN)Shift-RETURN DIR 8; (RETURN)In der Datei HELP.@CMD ist dieseTabelle u.a. abgespeichert.Zum Ansehen HELP (RETURN) eingeben !3. Die DUP-BefehleFuer alle DUP-Befehle des XDOS geltenfolgende Regeln:In Dateinamen darf statt : auch ;benutzt werden (z.B. D8;NAME), daslaestige Druecken der Shift@-Tasteentfaellt. Auch darf das "D" vorLaufwerksnummern fehlen (8;NAME).Werden in Dateinamen Joker (* ? -)benutzt, so fuehrt XDOS eine Yes/No-Abfrage fuer die betreffenden Dateiendurch (ausser beim DIR-Befehl). JederDateiname wird mit "?" (und mi@t "*",falls die Datei gesperrt ist)angezeigt. Weiter geht's dann mit: Y oder RETURN : Ja N oder Leertaste : Nein ESC oder BREAK : AbbruchAuch beim Speichernfindet diese Abfrage bei Verwendungvon Jokern statt, aber nur, wenn dieDatei a@uf der Disk bereits existiert.Wenn Sie aufalle angebotenen Dateinamen mit 'N'antworten, werden alle Joker imDateinamen durch Leerzeichen ersetzt,danach wird gespeichert.Wenn Sie nicht speichern wollen,druecken Sie ESC oder Break.Der dabei angeze@igte Error 169 hatkeine Bedeutung.Bei der Yes/No-Abfrage werdengesperrte Dateien immer als nichtgesperrt angesehen, um einen Abbruchmit Error 167 zu vermeiden.Bei allen DUP-Befehlen (bis auf REN)wird ein fehlender Dateiname durch*.* ersetzt.@Alle Zahlen koennen hexadezimal (F6E)oder durch Voranstellen eines Punktesdezimal eingegeben werden (.3950).Es folgt eine genaue Beschreibungaller DUP-Befehle mit Beispielen:1; bis 8;Aendert die Standard-Laufwerksnr.Bei Eingabe von Dateiname@n ohne Lauf-werksangabe nimmt XDOS immer dieStandard-Laufwerksnummer. DieseNummer wird zur Erinnerung nachjedem DUP-Befehl angezeigt.- Mit 8; wird auf D8: umgeschaltet. TYP TEXT.DAT zeigt dann die Datei D8:TEXT.DAT an.DIR (Suchname)Zeigt d@as Inhaltsverzeichnis an.Nach jeder Seite (22 Zeilen) wird dieBildschirmausgabe angehalten:Mit RETURN oder der Leertaste geht'sweiter, mit ESC oder BREAK wird dieAusgabe abgebrochen.Zur Abkuerzung koennen Sie statt DIRauch / eingeben oder nur di@e RETURN-Taste druecken. Shift-RETURN liefertdie Directory der Ramdisk D8:.Am Ende der Directory steht bei XDOS"xxx FREE #yy ". xxx ist dieAnzahl der freien Sektoren:999 bedeutet, dass MINDESTENS 999Sektoren frei sind und ??? zeigt an,dass d@ie Disk nicht XDOS-kompatibelist. yy ist die Anzahl der gelistetenDateien und zeigt das Format derDisk an:=Single, =Medium, =Double- DIR oder / listet alle Dateien.- DIR *.BAS oder /*.BAS listet alle BAS-Dateien.- /2; listet die D@irectory von D2:REN alter-Dateiname,neuer-NameBenennt Dateien um, z.B.REN 2;*.BAS,*.BAK benennt alle BAS-Dateien auf D2: um. Dabei findet fuerjede Datei eine Yes/No-Abfrage statt.Doppelte Dateinamen koennen Sie mitder Y/N-Abfrage oder wie bei @DOS 2.5durch einen REN-Befehl OHNE Jokerwieder trennen.DEL DateinameLOC Dateiname UNL DateinameMit diesen drei Befehlen werdenDateien geloescht (DEL), gesperrt(LOC) bzw. freigegeben (UNL).LOA Datei (Ladeadr (Anzahl))Laedt die angegebene@ Datei ab der"Ladeadr" in den Speicher.Bei zusaetzlicher Angabe von "Anzahl"werden nur die ersten "Anzahl" Bytesgeladen. (Die Anzahl der tatsaechlichgeladenen Bytes steht in $358/$359.)Wird nur "LOA Datei" ohne Zahlendahinter eingegeben, so laed@t XDOSdie Datei nur dann, wenn sie im sog.COM-Format (DOS-Binary-Load-Format)abgespeichert worden ist. In derDatei enthaltene Init- und Run-Adressen werden NICHT ausgefuehrt.- LOA TEXT 9C40 laedt die Datei TEXT ab Adresse $9C40 in den Speicher.@- LOA MAP.COM laedt die COM-Datei MAP.COM in den Speicher.- LOA MAP.COM 600 6 laedt die ersten 6 Bytes von MAP.COM nach $600-$605.EXE DateinameDient zum Laden und Starten vonCMD-Dateien (s.unten) oder Maschinen-programmen im COM-Format.Masc@hinenprogramme ohne Run-Adressewerden an der ersten Startadresse(Byte 2 und 3 der Datei) gestartet(wie bei DOS XL), falls der Dateinameeinen Extender hat, der mit "C"beginnt.Wenn der Dateiname keinen DUP-Befehlbildet und der Extender mit "C"beg@innt, genuegt es, nur den Datei-namen (ohne EXE davor) einzugeben.Auch ein evtl. vorhandener Extenderdarf dann weggelassen werden: XDOShaengt .C* an den Dateinamen an.- Mit EXE MAP.COM oder MAP.COM oder einfach nur MAP wird das Programm MAP.CO@M geladen und gestartet.- EXE RUN.COM startet RUN.COM Hier darf EXE nicht weggelassen werden, da RUN ein DUP-Befehl ist. Es empfiehlt sich, RUN.COM umzubenennen.SAV Datei Start End (/)(Init Run)Speichert den Bereich von "Start"bis "End" im@ COM-Format ab. Wie beiDOS 2.5 koennen auch Init- und/oderRun-Adressen angegeben werden.Soll eine Run-Adresse, aber keineInit-Adresse abgespeichert werden, somuss die Init-Adresse durch - ersetztwerden. Steht hinter "End" ein /, sowird die Datei @OHNE den 6-Byte-COM-Header abgespeichert.- SAV SCREEN.DAT 9C40 9FFF speichert den Bereich von $9C40 bis $9FFF in der Datei SCREEN.DAT. Diese Datei laesst sich mit LOA SCREEN.DAT wieder laden.- SAV SCREEN.DAT 9C40 9FFF / speichert ohne COM-@Header. Zum La- den muss dann LOA SCREEN.DAT 9C40 eingegeben werden.- SAV PROG.COM .32000 .32500 - .32100 speichert ein Programm von 32000 bis 32500 mit der Run-Adresse 32100 und ohne Init-Adresse ab.RUN (Run-Adresse)Startet ein Maschinen@programm an der"Run-Adresse", falls diese groesserals $FF ist. Fehlt die "Run-Adresse",so nimmt XDOS die letzte Run-Adresse,die auch im XDOS-Titel unter ""steht (Low-Byte,High-Byte).Die aktuelle Run-Adresse wird auchbeim Laden einer COM-Date@i (EXE, LOA)neu gesetzt.- RUN E477 springt zu $E477, womit ein Kaltstart ausgefuehrt wird.COP Quell-Datei (Ziel-Datei)Kopiert die Quell-Datei(en) untergleichzeitiger Umbennung in denZieldateinamen.Fehlt der Zieldateiname, so nimmtXDOS den @Quellnamen als Zielnamen.Die Datei DOS.SYS wird vom COP-BefehlNICHT kopiert, statt dessen wird dasXDOS (mittels des INI-Befehls) aufder Zieldisk gespeichert.Beim Kopieren mit nur einem Laufwerkmuss auf die Hinweise "Target?" bzw."Source?" die Z@iel- bzw. Quelldiskeingelegt werden, worauf der Kopier-vorgang mit RETURN fortgefuehrt wird.Die Meldung "OK" bedeutet dabei, dasseine Datei fertigkopiert wurde,d.h. Sie koennen mit ESC oder BREAKabbrechen, wenn Sie keine weiterenDateien kopieren @wollen.ACHTUNG: Zum Kopieren benutzt XDOSdas gesamte RAM von LOMEM bis HIMEM,d.h. dass (BASIC-)Programme imArbeitsspeicher geloescht werden ! Beispiele: Quell-Datei Ziel-DateiCOP HELP Dn:HELP Dn:HELPCOP ASM TEST Dn:ASM Dn:TESTCOP @2;ASM 8: D2:ASM D8:ASMCOP D2;TXT C: D2:TXT C:COP E: TEXT E: Dn:TEXTCOP *.* 2; kopiert alle Dateien von Dn: (Standardlaufwerk) auf D2: mit Y/N-AbfrageCOP 1;*.BAS 8;*.BAK kopiert alle BAS-Dateien@ von D1: auf D8: mit. Auf D8: erhalten alle Dateien den Extender BAKTYP DateiTYP listet die angegebene Dateiseitenweise (genau wie bei DIR)auf dem Bildschirm, z.B.TYP XDOS1.TXT listet diese Anleitung.BON BO@FSchaltet das BASIC-ROM der XL und XEComputer ein (BON) bzw. aus (BOF).Ausserdem werden Switch-Cartridgesabgeschaltet und resetfeste Programme(wie z.B. ATMAS II, Turbo-BASIC) nachdem naechsten RESET deaktiviert.Soll das nicht passieren, bitte in@Boot? ($0009) Bit 7 setzen.CAR (BASIC-Zeile)Hiermit ist ein Sprung zum BASIC bzw.eingesteckten Modul moeglich. HinterCAR kann eine BASIC-Zeile stehen,die dann vom BASIC ausgefuehrt wird.Statt CAR koennen Sie auch einfachRESET druecken oder ; e@ingeben.Ist das BASIC nicht eingeschaltet undkein Modul aktiv, wird bei Eingabedes CAR-Befehls die XDOS-Titelzeileangezeigt.Zusaetzlich kann unter im DUP-Titel eine Rueckkehradresse fuer denCAR-Befehl eingegeben werden. Diesewird dann be@i jedem CAR-Befehl ange-sprungen.- CAR RUN"D:PROG" oder ;RUN"D:PROG" geht zum BASIC und startet das BASIC-Programm PROG.DOSZeigt die XDOS-Titelzeile an.AUTIst eine Abkuerzung fuer folgende DUP-Befehle:D1:EXE AUTORUN.SYSCLSLoescht @den Bildschirm.INISchreibt das XDOS auf Diskette.(Alle "gefaehrlichen" DUP-Befehleenden mit #, damit sie nicht ausVersehen eingetippt werden.)FS# FM# FD#Formatiert Disketten.FS# formatiert 707 freie Sektoren(wie DOS 2.x) und FM# form@atiert1010 freie Sektoren in mittlererSchreibdichte (wie DOS 2.5).Bei FM# kann auch DOS II+-kompatibelformatiert werden (s.XDOS2.TXT).FD# formatiert Disketten einseitig indoppelter Dichte (707 freie Sektoren,253 Datenbytes pro Sektor).F2# (n@ur fuer XF551)Mit den beiden DUP-Befehlen F2# 1;und CL# 3; wird eine Disk im XF551-Laufwerk #1 zweiseitig formatiert:Jede Seite hat 707 freie Sektorenund ein eigenes Inhaltsverzeichnis.Die Vorderseite einer solchen Diskhat genau dasselbe Format @wie beimFD#-Befehl, kann also auch von einer1050 bearbeitet werden.Mit D3: koennen Sie auf die Rueck-seite einer mit F2# formatiertenDisk zugreifen, z.B.:- DIR 1; gibt das Inhaltsverzeichnis der Vorderseite aus, waehrend DIR 3; die Directory @der Rueckseite liefert.Wenn Sie eine XF551 als Laufwerk #2oder #3 betreiben wollen, muessen SieXDOS anpassen.CL#Dieser Befehl loescht saemtlicheDateien auf einer Diskseite und legtein neues Inhaltsverzeichnis an.CL# funktioniert mit allen b@ereitseinmal formatierten Disketten.>AdresseZeigt den Inhalt der ersten 8 Byte abder angegebenen Adresse hexadezimalund als ASCII-Zeichen an. Mit > oderdurch Druecken von Ctrl-3 koennen dienaechsten 8 Byte gelistet werden.>Adresse Byte1 Byte2@ ...Hiermit wird der Speicherinhalt abder "Adresse" geaendert. Die "Bytes"koennen nicht nur dezimal oder hexa-dezimal sondern durch Voranstelleneines ' auch als ASCII-Zeicheneingegeben werden. Statt der "Bytes"koennen auch Adressen stehen, diese@werden dann in der ReihenfolgeLow-High-Byte abgelegt, z.B.:- >600 A4 .49 'A 6FF .32768 legt ab $600 folgende Werte ab: $A4 $31 $41 $FF $06 $00 $804. Der Stapel-Betrieb (CMD-Dateien)Eine CMD-Datei ist eine Datei, dieaus lauter DUP-Befehlen @besteht.CMD-Dateien werden mit dem EXE-Befehlgestartet, die in der Datei stehendenDUP-Befehle werden dann nacheinanderausgefuehrt. Fuer CMD-Dateien gibt esnoch drei weitere DUP-Befehle:'Text Text anzeigen"Text KommentarzeileWAI Gibt ein@ ? aus und wartet auf einen Tastendruck: RETURN, Leertaste = weiter ESC, BREAK = AbbruchFolgende Regeln sind zu beachten:- Alle CMD-Dateien sollten den Extender ".CMD" besitzen.- Jede CMD-Datei MUSS mit einer Komme@ntarzeile (also mit ") beginnen.- In CMD-Dateien sollten moeglichst keine Abkuerzungen fuer DUP- Befehle benutzt werden.- Die Abarbeitung einer CMD-Datei wird beendet, wenn sie eine andere CMD-Datei startet.CMD-Dateien koennen mit dem COP-@Befehl erzeugt werden, wie das fol-gende Beispiel zeigt: Bitte eingeben:COP E; INIT.CMD"BONCOP HELP.CMD 8;CAR RUN"D:SETUP.BAS"Danach Ctrl-3 druecken, um die CMD-Datei zu beenden. XDOS schreibt nundie Datei unter dem Namen INIT.CMDauf Disk. @Mit EXE INIT.CMD (odereinfach nur INIT) kann die CMD-Dateigestartet werden, dann wird das BASICeingeschaltet, die Datei HELP.CMD indie Ramdisk D8: kopiert und dasBASIC-Programm SETUP.BAS gestartet.Wenn es Sie stoert, dass beim CAR-Befehl RUN"D:.@.. auf dem Bildschirmerscheint, ersetzen Sie die CAR-Zeilein der CMD-Datei durch folgende dreiZeilen:>.731 1>.709 4 94CAR GR.0:POKE731^1,0:RUN"D:SETUP.BAS"CMD-Dateien koennen beim Bootenautomatisch gestartet werden:Sie brauchen die Datei nur @inAUTORUN.SYS umzubenennen.Das Starten von AUTORUN.SYS beim Boo-ten kann uebrigens durch Druecken vonESC (beim Booten) verhindert werden.,0:RUN"D:SETUP.BAS"CMD-Dateien koennen beim Bootenautomatisch gestartet werden:Sie brauchen die Datei nur @Beschreibung zum XDOS 2.3 Teil 2(c) 1989 S.Dorndorf5. Die RamdiskXDOS kann 6 verschiedene Ramdisksverwalten, je nach verfuegbarem RAM-Speicher. Welche Ramdisk gerade ein-geschaltet ist, steht in der Adresse$710, deren Inhalt auch im XDOS-TitDelunter "Ram" ausgegeben wird:$710 Computer Kbyte Sektoren Baenke00 400/800 - keine keineE0 800XL/XE 14 108 OS-RAMA0 130XE 64 499 12 bis 1580 XL/XE 90 707 0 bis 5C0 XL/XE 128 1009 0 bis 7D90 XL/XE 180 707 DD 0 bis 11D0 XL/XE 256 1009 DD 0 bis 15Mit >710 xx wird die gewuenschte Ram-disk eingeschaltet. xx ist dabei derWert aus der 1.Spalte der Tabelle.Die 14K-Ramdisk benutzt das RAM unterdem OS-ROM und schaltet dahDer denZeichensatz beim Zugriff ab, wodurches zu einem kleinen "Gewitter" aufdem Bildschirm kommt. Mit >710 E1(Setzen von Bit#0 in $710) koennenSie das verhindern, die Ramdisk wirddann allerdings erheblich langsamer.ACHTUNG: Manche Programme, wie Dz.B.Turbo-BASIC, benutzen den Bereich der14K-Ramdisk fuer eigene Zwecke !Die anderen Ramdisks benutzen die16K-Speicherbaenke des 130XE bzw.einer Speichererweiterung (sieheletzte Spalte der obigen Tabelle).Zum Testen und Anpassen der RAM-Diskan Dverschiedene Speichererweiterungenbitte das Programm RAMDISK.BASverwenden.Beim Booten des DOS wird die Ramdiskgeloescht. Dies kann durch Drueckender HELP-Taste beim Booten oder durchSetzen von Bit#1 in $710 verhindertwerden.Die Ramdisk wird geDnauso wie einenormale Disk angesprochen und zwarmit den Geraetekuerzeln D8: oder M:.- COP HELP.CMD M; kopiert die CMD- datei HELP.CMD in die Ramdisk.- M;HELP laedt dann die CMD-Datei von der Ramdisk und fuehrt sie aus.6. Neue Datei-Kuerzel, DXIO-Befehle und Fehlermeldungena) Statt "D:NAME" darf auch "D;NAME" benutzt werden, dann findet bei Verwendung von Jokern im Datei- namen eine Yes/No-Abfrage statt, genau wie bei den DUP-Befehlen. Insbesondere werden fehlende DateDinamen durch *.* ersetzt.b) *.* kann durch - ersetzt werden.c) Mit "+Dateiname" kann ein Name, so wie er im Directory steht, einge- geben werden, also ohne Punkt.Folgende Kuerzel koennen anDateinamen angehaengt werden:/D Zugriff auf die DirDectory/N Keine Yes/No-Abfrage/S Dateinamen anzeigen/Q Yes/No-Abfrage durchfuehren/A SCHREIBEN: Speichern mit Append DIRECTORY: zweispaltig ausgeben LESEN: Weiterlesen aus einer gerade geschlossenen DateiBeispiele: (BASIC-Befehle)-D LOAD"D:P-" entspricht LOAD"D:P*.*"- LOAD"D;" entspricht LOAD"D:*.*/Q", es wird also fuer jeden Dateinamen eine Y/N-Abfrage durchgefuehrt.- LIST"D2:PROG/A" fuegt das BASIC- Programm im Speicher an D2:PROG an.- LOAD"D;+PROG BAS" laedt das BDASIC-Programm D:PROG.BAS.- LOAD"D;*BAS" entspricht LOAD"D;*.BAS"Beispiele: (DUP-Befehle)- COP 1;-/N 8; kopiert alle Dateien von D1: auf D8: ohne Y/N-Abfrage.- COP -/D P; druckt die Directory aus- Mit TYP -/D/A oder DIR -/A oder /-/A oder //AD laesst sich die Directory zweispaltig ausgeben.- LOA TEST 600 4 laedt die ersten 4 Byte von TEST. Mit LOA TEST/A 600 4 koennen dann die naechsten 4 Byte gelesen werden. XIO 34,#1,0,0,"D:":X=PEEK(746)Stellt die Dichte einer Disk fest:X>12D7 bedeutet mittlere, X<32einfache, sonst doppelte Dichte.Funktioniert auch mit der XF551 ! XIO 39,#1,0,0,"D:Dateiname"Entspricht dem EXE-Befehl des DUP.Es koennen also JOB- oder COM-Dateienvom BASIC aus gestartet werden ! XIO 40,#1,0,0,"D:DDUP-Befehl"Fuehrt den hinter D: stehenden max.48 Zeichen langen DUP-Befehl aus !Mit XIO 40,#1,0,0,"D:DIR" wird z.B.die Directory angezeigt.ACHTUNG: XIO 39 und XIO 40 benutzenimmer Kanal #1 und #2. Ausserdem sindrekursive XIO 39/40-Aufrufe inMascDhinen-Unterprogrammen verboten. XIO n,#1,0,0,"D:"Formatiert Disketten.n kann folgende Werte annehmen:251: F2# 253: FS# 255: CL#252: FD# 254: FM# Error- 160 Drive Number ErrorEs wurde versucht, 2 Dateien gleich-zeitig auf VERSCHIDEDENEN Laufwerkenzum SCHREIBEN zu oeffnen:Da XDOS nur einen Laufwerkspufferbesitzt, koennen mehrere Dateien zumSCHREIBEN nur auf EINEM Laufwerkgeoeffnet werden. (Beim LESEN giltdiese Einschraenkung nicht.) Error- 163 Address Range ErrorBeimD SAV-Befehl war die Startadressegroesser als die Endadresse.Oder es wurde versucht, eine COM-Datei zu laden, die beim Laden einenTeil von XDOS ueberschrieben haette.ABHILFE: Anzahl der DOS-Pufferverringern oder Datei mit DOS 2.5oder einem Mini-DODS laden !Mit dem DUP-Befehl > wird die Lade-Adresse angezeigt, die diesen Fehlererzeugt hat. Error- 168 Bad NumberBei einem DUP-Befehl (bzw. XIO 40)wurde eine fehlerhafte Zahl bzw.Adresse eingegeben, z.B. RUN G474. Error- 171 Bad Load FDileDie mit dem EXE-Befehl angesprocheneDatei ist keine COM- oder JOB-Datei.Oder beim LOA-Befehl wurde keineCOM-Datei angegeben. ABORT >xxxx 00 ...Der 6502-Prozessor ist an der Adressexxxx auf einen BRK-Befehl gestossen.Wenn diese Meldung uDnbeabsichtigtauftritt, sollte der Rechner sicher-heitshalber neu gestartet werden, daevtl. der RAM-Speicher teilweise mitZufallswerten ueberschrieben wurde.7. Die FAST-Version des XDOSXDOS gibt es in zwei Versionen:Die NORMAL-Version unterstueDtzt nurdie Standard-ATARI-Floppys 1050 undXF551. Fuer Besitzer einer 1050-Erweiterung (Happy, Speedy, Turbo)ist die FAST-Version gedacht. DieseVersion enthaelt zusaetzlich einenHigh-Speed-Treiber fuer Happy, Speedyund Turbo. (Ein High-Speed-TreibDerfuer die XF551 ist in der FAST- UNDin der NORMAL-Version enthalten.)Um die FAST-Version zu laden, bittedas COM-Programm FDOS.COM starten:In der Titelzeile der FAST-Versionsteht links ein inverses "F".Nun werden alle Laufwerke mit maxima-ler GDeschwindigkeit angesprochen,lediglich fuer XF551-Laufwerke mussdas XDOS angepasst werden.Mit der XF551 kann die hoehereGeschwindigkeit nur mit Disks indoppelter Dichte ausgenutzt werden !8. Konfiguration von XDOSDie Konfigurationstabelle von DXDOSist in $709 bis $72F abgelegt.Die Adressen $709 bis $710 werdenim XDOS-Titel mittels des > Kommandosangezeigt und koennen einfach durchUeberschreiben geaendert werden: Bufs FD Co Ram>0709 02 10 04 00 1C 00 00 40 Bufs (BuffeDrs) SECC=$709Legt die Anzahl der DOS-Puffer fest.Jeder DOS-Puffer ist 256 Bytes lang.Fuer jede gleichzeitig offene Dateibraucht XDOS einen Puffer. Zum Star-ten von JOB-Dateien, die Disketten-befehle enthalten, braucht XDOS zweiPuffer, fuer alle Danderen DUP-Befehlegenuegt auch ein Puffer. FD (F=Format, D=DIR) OPTC=$70ASteht unter dem "F" eine 0 (Bit#4=0),wird bei FM# DOS 2.5-kompatibelformatiert, steht dort eine 1, wirdDOS II+/D-kompatibel formatiert.Das DOS II+/D-Format, das auchvonD MYDOS 4.x benutzt wird, hat denVorteil, dass der Lesekopf der Floppynicht so oft auf der Disk hin- undherfaehrt wie bei DOS 2.5.Steht unter dem "D" eine 1 (Bit#0=1),wird bei einem DIR-Aufruf ohne Datei-namen die Directory automatischzweispaltigD ausgegeben.Durch Setzen von Bit#7 kann der Error164 verhindert werden. Das ist z.B.zum Laden von TOPDOS-Dateien noetig.Ist Bit#6 gesetzt, wird kein 6502-BRKmehr gemeldet. Co (Color) COLC=$70BHier kann die gewuenschte Texthinter-grundfarbe eDingetragen werden. (Buffer-Address) BUFC=$70C/DStartadresse der DOS-Puffer (Lo,Hi)(wie bei DOS 2.5). Beim DUP-BefehlIN# wird bis zu der hier stehendenAdresse abgespeichert. Durch Herauf-setzen von BUFC kann XDOS also internerweitert werdEen (s.auch USRC,INIC). (Run-Address) RUNC=$70E/FAktuelle Run-Adresse (s.RUN-Befehl) Ram (Ramdisk) DRVC=$710Steuert die Ramdisk (s.oben) $711-$717 (DRVC+1 bis DRVC+7)Dies ist die Laufwerkstabelle fuerLaufwerk #1 bis #7. (GenaugenommenEgehoert auch $710 zu dieser Tabelle.)Fuer jedes Kuerzel "Dn:" steht inAdresse $71n ein Code fuer dasgewuenschte Laufwerk (LW).Folgende Codes sind moeglich:00 kein LW01 LW #102 LW #203 LW #309 XF551-LW #10A XF551-LW #20B XF551-LW #30ED XF551-LW #1, 2.Seite0E XF551-LW #2, 2.Seite0F XF551-LW #3, 2.Seite11 LW #1 ohne High-Speed12 LW #2 ohne High-Speed13 LW #3 ohne High-Speed19 XF551-LW #1 ohne High-Speedusw.C0 XL-Ramdisk (14K)C1 XL-Ramdisk ohne "Gewitter"40 130XE-RaEmdisk (64K)80 128K-Ramdisk20 180K-RamdiskA0 256K-Ramdisk VERC=$718Versionsnummer des XDOS (BCD-Zahl).Bei der FAST-Version ist Bit#7=1.$719 ist reserviert. CARC=$71A/BHier kann eine Ruecksprungadressezwischen $100 und $FEFF fuer den CAR-BEefehl abgelegt werden, z.B. beiTurbo-BASIC: Nach >71A 2080 koennenSie mit CAR oder ; oder RESET zumTurbo-BASIC gehen.Beim Booten und nach COP-Befehlenwird CARC geloescht. NEWC=$71B (=CARC+1)Steht hier $FF, so wird beim naech-sten RESET oder CARE-Befehl das BASIC(bzw. Modul) neu gestartet und NEWCauf 0 gesetzt. KEYC=$71C/D$71C legt die Tastaturverzoegerung,$71D die Tastenwiederholrate fest.Nach dem Aendern RESET druecken !Mit >71D 3 kann z.B. der Cursorlangsamer gemacht werden. USRC=E$71E/FDie hier stehende Adresse wird perJSR angesprungen, wenn Sie einenDUP-Befehl eingeben, der mit einem =beginnt. (Die Zeichen hinter dem =stehen ab $883+YReg. im Speicher.)USRC zeigt normalerweise auf $E474,d.h. bei Eingabe von = wird ein RESEETausgefuehrt. $720-$72F (RAMC bis RAMC+15)Bank-Tabelle (OR-Masken fuer dasBank-Switching der Ramdisk).Zum Einschalten von Bank #Y (Y von 0bis 15) verfaehrt XDOS wie folgt: LDA $D301 : AND #3 : ORA $720,Y STA $D301 DOSC=$700Hier steht das EASCII-Zeichen 'X'.Kann benutzt werden, um abzufragen,ob XDOS im Speicher ist. INIC=$704/5Hier steht die Adresse der FMS-Init-Routine, die nach jedem RESET ausge-fuehrt wird. Beim Booten und den BON/BOF-Befehlen wird INIC in DOSINI=$C/DuebertragE en.Alle Aenderungen koennen durcherneutes Schreiben des DOS (mit IN#)abgespeichert werden.Zum Konfigurieren koennen Sie auchdas BASIC-Programm SETUP.BAS starten.9. COM-Programme mit ParameternXDOS erlaubt bei COM-Programmen dieUebergabe von E Parametern. Diesekoennen wahlweise gleich hinter demDateinamen des COM-Programms stehenoder (besser) vom COM-Programmspaeter eingelesen werden.Zur Auswertung der Parameter stelltXDOS vier Unterprogramme zur Verfue-gung, diese duerfen NUR innerhalE b vonCOM-Programmen benutzt werden, dieden 6502-Stack nicht loeschen: XGLIN=$730 (Get Line)Diese Routine holt vom Editor einemax. 48 Zeichen lange Eingabezeileund legt sie im Eingabepuffer des DUP(ab Adresse LINBF+3=$883) ab.Wurde das COM-ProE gramm von einerJOB-Datei gestartet (d.h. Kanal #2ist geoeffnet), wird die Zeile ausder JOB-Datei geholt.Vor dem ersten Aufruf dieser Routinesteht ab LINBF "Dn;" und dahinter derDateiname des COM-Programms (mitevtl. dahinterstehenden Parametern).E XSKIP=$733 (Skip Parameter)Setzt das Y-Register als Index inLINBF+3 auf den naechsten Parameter,im Akku wird das erste Zeichen desParameters zurueckgeliefert.Steht z.B. ab LINBF+3 "ASM 4F" mit(RETURN) dahinter, so ergibt sich:Y vor/nach, AkkuE nach JSR XSKIP 0-3 4 '4=$34 4-6 6 EOL=$9B XMOVE=$736 (Move Filename)Verschiebt eine ab LINBF+3+Y stehendeDUP-Dateiangabe (z.B. 2;PROG), sodass ab Adresse LINBF ein gueltigerFMS-Dateiname steht, der mit OPENusw. verwendet werden kEann, z.B.:LINBF+3 Y-Reg LINBF nach JSR XMOVE2;PROG 0 D2;PROGFF TEST 3 Dn;TEST (n=Standardlaufwerk) XGNUM=$739 (Get Number)Interpretiert eine ab LINBF+3+Ystehende Zahl (Hex oder Dez), im Akkuwird das Low-Byte, imE X-Register dasHigh-Byte zurueckgeliefert. Das Y-Re-gister zeigt nach dem Aufruf dieserRoutine direkt hinter die Zahl.Treten bei Verwendung dieser vierRoutinen Fehler auf, wird das COM-Programm mit einer Fehlermeldungabgebrochen. Ein solcher AbbEruch kannauch vom COM-Programm erzeugt werden:Dazu muss die gewuenschte Fehlernr.in ERRNO=73 abgelegt werden.Als Beispiel zur Parameteruebergabesiehe das Assembler-Listing XMAP.ASM(ist als ASCII-File abgespeichert)zum Programm MAP.COM:MAP.COM Ezeigt alle COM-Header (d.h.Ladebereiche), Run- und Init-Adresseneiner COM-Datei an.Mit "MAP (RETURN)" starten. Dann denDateinamen der COM-Datei eingeben.ACHTUNG: MAP benutzt den gesamtenArbeitsspeicher von $2400 bis HIMEM !10. Speicherbelegung Edes XDOS24-27: DUP-Zeropage48-51: FMS-Zeropage (temporaer)67-73: FMS-Zeropage$700-$1BFF: XDOS (FMS und DUP)$880-$8B2 : DUP-Eingabepuffer LINBF$1C00 Beginn der DOS-Puffer$1E00 LOMEM bei 2 DOS-Puffern(Bei der FAST-Version liegen die DOS-EPuffer und LOMEM $178 Bytes hoeher)XDOS ist teilweise intern kompatibelzu DOS 2.5. Folgende Routinen undFlags befinden sich bei XDOS an dergleichen Stelle wie bei DOS 2.5:INIC =$704 Adr. der RESET-RoutineSECC =$709 Anzahl der DateipufferBUEFC =$70C Startadr. der DOS-PufferBSIO =1900 Block-SIO-RoutineBSIOR=1906 --, 2.EinsprungWRCMD=1913 SIO-Write/Put-KommandoDINIT=$7E0 FMS-Init-Routinee bei DOS 2.5:INIC =$704 Adr. der RESET-RoutineSECC =$709 Anzahl der DateipufferBUDԍӬ, 20Ȉ02ӥ!J8jj`L]M] 0.LM bNLL % `  %*JJj v  LW*I1J , bLb )С w bE 6 , y GȘ)I BDCGȊJJJ \ $ %G( ) C E$G`")4`0 G$ 3 $}$%8(()8$E0(0ť)` B L8 C 8I?A! B0 wJl  C I$G^8>G(;A B1 v *  , GȱG}GȱG} u Lb LV L "B쨹k Hc H`daaddU2 lO  (( Ы?!0;| ! ) !EH Y%E0̦. dh z0  V zI Z j JCN N ȩ ,P0J, Ζ ` x X s a b Ib / Ìc d  wC p`  g "JI< ,    yD u Lb  5 O \  %L DG)ߐ έBNj0 c d B)8jj j I. b`Z3..`HJ-pb #JJJJC yh JD`  g )LF0FɛF H  hLb  *** F d )c g m m 𸠛%*J DȱGGF1/801:I?n0FF0˄F`$AD J)**6NSQjz%0`$zJȢF $0;?V*K+:-?/J:>)A[4;: " L.Lȱ$ɛ FF?  LJ$FFFЎ$F0?, P ` IJ 0 8`C .DiC!C yDG0J Ϡ )*D G  ȭ%FC ?z GGБ .* 5N 0>  zS n  .($б)ߝCJjDjj`0 J ^8` 0 bI,L0j 0Jj 1 c d c  &1.e01iEGȽGȽG E B`8@ O EJJJG )&G)ȝGȐ(G0})`8, 0hpB!L! L $8 )Id` Gg ~$E0#GI GI* If0  `( ~ YG` G`I刱G)I܍p $!0  YdĢD Ƚ?GGG8$C hȩ8!) iШi( l.`hh`"0%j@*. I$J!)! H ~"0 !)I@#)  0]i! )S S0B) . }.莤1!).EmLL` Y`!ఽ)FE ȘH8  `h+DOS SYS FREE #I D1:AUTORUN.SYSDX?MHL? dq  #I DM 7  I( DD0J JJsʆ`Lw ) M 1-ש$% 30  } T TT Q l  8n.l3   I! hh hh  M 6 7 I莶@ 0 3ИF    E  I`>     (Uɛ e`  ' ȱ$ɛ , `I"[,$$IIʎ Pm>/i!l"N'K;T$0[B 04 0 i L&1 9`  >L, HHDP8 (0#J$19ID1J$0;$I# $%$ , ɛ`Ȅ `s뾩y% ZU}DDDBWALURFFFCBCTECRLSFITCLN####NSSEPNAV#IPRIEOOAUONESMDLOLEXOUOA2NYA J*, d  0UR s`$ 0   xI$Ѝ)0 ӠHj hӢ    g`    N bL b:G"4(0 EO_    ;` ELf $Rp CG8  #( 8I%liL,L!Ld$.jȅ09$00i H& $0H$0 ehehe$80 `    / _(F*      /-`     I&" HJJJJ h) ii0 `   Ehh( ׭l8fIXآD =ROS} h@@ `ED`-IH`,J @IIE=6 > J/ B J !/ N BJI'B/ V,  I0I8`ݰ  n橛GHFH`hנ   i f  N @ H  E I d  E(h Ъ? Y + I)=N`ERROR 433ABORTOK,SourceDeI(stinationӠΠ (p) 1990 S.Dorndorf Buf FD Co RamB/ V,  I0I8`ݰ  n橛GHFH`hנ   i f  N @ H  E I d  E(h Ъ? HB HELP CMDB ED COMBCON CMDB MAP SYNB%MAP COMB!'ASM COMBHMAP ASMB[PRN3 SYNBbPRN3 COMBdMAKEDOS SYNBlMAKEDOS COMBnXDOSN COMBXDOSF COMBRAMDISK BASBCONFIG CMDBDRIVE CMDB;XDOS1 TXTB4XDOS2 TXTBDOS SYS