CompyShop Sector Copy Source Code #

SECTOR.ASM#



00010          .LI OFF
00020          .OR $2F00
00030          .OF "D1:SCOPY.COM"
00040 ------------------------------
00050 *********************
00060 ** SECTORCOPY MAIN **
00070 *********************
00080 ------------------------------
00090 S        SEI       STARTROUTINE
00100          LDA #0    Schiebt Pro-
00110          TAY       gramm unter
00120          STY $D40E das Betriebs
00130          STA $F0   System
00140          STA $F2
00150          LDA #$E0
00160          STA $F1
00170          LDA #$30  E000 -> 3000
00180          STA $F3
00190 .1       LDA ($F0),Y
00200          STA ($F2),Y
00210          INY
00220          BNE .1    Zeichensatz
00230          INC $F3   nach $3000
00240          INC $F1
00250          LDA $F1
00260          CMP #$E4  bis E400
00270          BNE .1
00280          LDA $D301
00290          AND #$FE  OS aus
00300          ORA #2    Basic aus
00310          STA $D301
00320          LDY #0
00330          LDA #$F0
00340          STA $F1
00350          LDA #$30  3000 -> F000
00360          STA $F3
00370 .2       LDA ($F2),Y
00380          STA ($F0),Y
00390          INY
00400          BNE .2
00410          INC $F3   Programm
00420          INC $F1   unter OS
00430          LDA $F1   schieben
00440          BNE .2
00450          LDY #ENRES-RESET
00460 .3       LDA RESET,Y
00470          STA $100,Y
00480          DEY      System-Reset
00490          BPL .3   Routine nach
00500          INY      $100 kopieren
00510          STY $244
00520          STY $C
00530          INY
00540          STY $9
00550          STY $D
00560          JMP $100 Zum Programm
00570 ------------------------------
00580 RESET    SEI      System-Reset
00590          STA $D40F
00600          LDA #0
00610          TAY
00620 .1       STA $D400,Y Hardware-
00630          STA $D000,Y  Register
00640          STA $D200,Y  loeschen
00650          INY
00660          BNE .1
00670          LDA $D301
00680          AND #$FE    OS aus
00690          ORA #$FC
00700          STA $D301
00710          LDA #$22    Bildschirm
00720          STA $D400   normal
00730          LDA #$F0    $F000=
00740          STA $D409   CHRBASE
00750          LDA #2
00760          STA $D401   CHACTL
00770          LDA #3
00780          STA $D20F   SIO-Status
00790          LDA #$40
00800          STA $D40E   NMIEN
00810          JSR CLRTI   Timeout-
00820 ;               Vector loeschen
00830          JMP SCOPY   START
00840 ENRES
00850 ------------------------------
00860          .OR $F400
00870          .TA $3400
00880 *
00890          .IN "D:COPY1.ASM
00900          .IN "D:COPY2.ASM
00910          .IN "D:DSKSYS.ASM
00920 ------------------------------
00930 DISPLY   .BL $F0
00940 ;
00950 DSBUF    .BL $50
00960 ------------------------------
00970 END ; Ende des Sector-Copiers
00980 ------------------------------
00990          .OR $FFFA
01000          .TA $3FFA
01010 *
01020          .DA PNMI  NMI-Vector
01030          .HX 0000  Reset-Vector
01040 ;          wird nicht benoetigt
01050          .DA RETIRQ IRQ-Vector
01060 ------------------------------
01070          .OR $2E0  File Start
01080          .DA S
01090 ------------------------------

COPY1.ASM#


00010 ------------------------------
00020 ***********
00030 ** COPY1 **
00040 ***********
00050 ------------------------------
00060 ;
00070 ; ZERO-PAGE VARIABLEN FESTLEGEN
00080 ; DA KEIN BETRIEBSSYSTEM MEHR
00090 ; VORHANDEN IST, KOENNEN FAST
00100 ; ALLE ADRESSEN BENUTZT WERDEN
00110 ;
00120 SOURC    = $70
00130 SOUST    = $72
00140 DESTN    = $71
00150 DESST    = $73
00160 FORMT    = $74
00170 RETRY    = $75
00180 RAMDSK   = $76
00190 BYT1     = $7A / $7B
00200 EQUAL    = $7C
00210 DENS     = $7D
00220 CFIRST   = $7E
00230 SPFLAG   = $7F
00240 *
00250 SPTBL    = $1C - $1F
00260 RSECA    = $60 / $61
00270 RSECB    = $62 / $63
00280 RSECC    = $64 / $65
00290 *
00300 BANKS    = $66
00310 BANKNR   = $67
00320 MAXBANK  = $68
00330 SPBYT    = $69
00340 HIMEM    = $6A
00350 *
00360 SLEFT    = $37
00370 SROW     = $38
00380 SSKIP    = $39
00390 FBYT     = $3A
00400 DLEFT    = $3B
00410 DROW     = $3C
00420 DSKIP    = $3D
00430 FINC     = $3E
00440 FFIRST   = $3F
00450 *
00460 DUNIT    = $21
00470 DCOMND   = $22
00480 DSTATS   = $23
00490 DBUFLO   = $24
00500 DBUFHI   = $25
00510 DTIM     = $26
00520 DBYTLO   = $28
00530 DBYTHI   = $29
00540 DSECLO   = $2A
00550 DSECHI   = $2B
00560 ;
00570 PORTB    = $D301
00580 TSTBYT   = $4000
00590 ;
00600 ; AB LOMEM KOENNEN DATEN
00610 ; ABGELEGT WERDEN
00620 ;
00630 LOMEM    = $400
00640 ------------------------------
00650 ;
00660 ; DIE DISPLAY-LIST DES
00670 ; SECTOR-KOPIERERS
00680 ;
00690 DLIST  .HX 70707046
00700        .DA LINE
00710        .HX 47
00720        .DA HTEX
00730        .HX 40061046
00740        .DA LINE
00750        .HX 7042
00760        .DA DISPLY
00770        .HX 30023070027050
00780        .HX 02702002702002702046
00790        .DA LINE
00800        .HX 46
00810 RWLINE .DA SETUP
00820        .HX 1046
00830        .DA LINE
00840        .HX 41
00850        .DA DLIST
00860 ------------------------------
00870 ;
00880 ; TEXTE IM BILDSCHIRMFORMAT
00890 ;
00900 HTEX   .AT "   sectorcopy \^Q\^N\^T   "
00910        .AT -" \^Hp	 \^P\^V\^O\^X\^W  e\^Nreuss "
00920 LINE   .AT "--------------------"
00930 SETUP  .AT -"     einstellen "
00940 FMATIN .AT -"     formatieren   "
00950 INSOUR .AT -"  original diskette"
00960 INDEST .AT -"    ziel diskette  "
00970 INBOTH .AT -" disketten einlegen"
00980 DSKERR .AT -"  disk fehler \^C  "
00990 READIN .AT -"     sector         "
01000 ------------------------------
01010 ;
01020 ; START DES SEKTOR-KOPIERERS
01030 ;
01040 SCOPY    LDX #$FF
01050          TXS
01060          SEI
01070          LDA #DLIST DISPLAY-
01080          STA $D402  LIST SETZEN
01090          LDA /DLIST
01100          STA $D403
01110          LDY #4
01120 .1       LDA COLTB,Y   FARBEN
01130          STA $D016,Y   SETZEN
01140          DEY
01150          BPL .1
01160          STY RAMDSK
01170          LDA /SETUP
01180          STA RWLINE+1
01190          JSR CLRSCR  BILDSCHIRM
01200          LDX #4        LOESCHEN
01210          STX RETRY
01220          LDA #$28    HIGH-SPEED
01230 .2       STA SPTBL-1,X TABELLE
01240          DEX           AUF
01250          BNE .2        STANDARD
01260          STX FORMT
01270 ;
01280 ; TESTEN OB EINE RAMDISK VOR-
01290 ; HANDEN IST UND WIE GROSS
01300 ; DIESE IST
01310 ;
01320          LDX #$80  KLEINE
01330 .3       LDA $D40B VERZOEGERUNG
01340          BNE .3
01350          DEX
01360          BPL .3
01370          STX TSTBYT
01380          DEX
01390          STX PORTB
01400          LDY #$F     16 BANKS
01410          STY MAXBANK
01420 .4       LDY MAXBANK
01430          JSR SWITCH  DATEN IN
01440          STY TSTBYT  BANKS
01450          DEC MAXBANK SCHREIBEN
01460          BPL .4
01470          LDA #$FE
01480          STA PORTB
01490 *
01500          LDY #0
01510          STY BYT1
01520          STY MAXBANK
01530 *
01540          LDA TSTBYT  RAMDISK
01550          CMP #$FF    VORHANDEN?
01560          BNE MTEST
01570 *
01580 .5       LDY MAXBANK
01590          CPY #$10
01600          BCS .6
01610          JSR SWITCH  DATEN AUS
01620          LDA TSTBYT  RAMDISK
01630          CMP BYT1    AUSLESEN
01640          BMI .6      UND DABEI
01650          STA BYT1    MAXIMALE
01660          INC MAXBANK ANZAHL DER
01670          JMP .5      BANKS
01680 .6       LDA #$FE   FESTSTELLEN
01690          STA PORTB
01700          BNE MTEST
01710 *
01720 SWITCH   LDA PORTB  BANK
01730          AND #$23   EINSCHALTEN
01740          ORA BANKTB,Y
01750          STA PORTB
01760          RTS
01770 ------------------------------
01780 ;
01790 ; RAMDISK BANK-TABELLE
01800 ; FUER COMPY-SHOP RAMDISK UND
01810 ; 130 XE RAMDISK
01820 ;
01830 BANKTB   .HX CCC8C4C08C888480
01840          .HX 4C4844400C080400
01850 ------------------------------
01860 MTEST
01870 *         64K -> 00
01880 *        128K -> 04
01890 *        192K -> 08
01900 *        320K -> 10
01910 ------------------------------
01920 ;
01930 ; TEST OB EINE CARTRIDGE IM
01940 ; RECHNER STECKT
01950 ;
01960 NO64K    LDA #$80
01970          LDY $8000
01980          INC $8000
01990          CPY $8000   16K ?
02000          BEQ CHRAM
02010          LDA #$A0
02020          LDY $A000
02030          INC $A000
02040          CPY $A000   8K ?
02050          BEQ CHRAM
02060          LDA #$C0
02070 CHRAM    STA HIMEM
02080 ------------------------------
02090 ;
02100 ; TESTEN WIEVIELE LAUFWERKE
02110 ; ANGESCHLOSSEN SIND UND OB
02120 ; DIESE LAUFWERKE HIGH-SPEED
02130 ; FAEHIG SIND
02140 ;
02150          LDA #1     AB DRIVE 1
02160          JSR HSCHK  TESTEN
02170          BCC .1
02180          JMP SCOPY  KEINE DISK
02190 .1       STY SOUST  STATUS
02200          LDA DUNIT
02210          STA SOURC  ORIGINAL
02220          ORA #$10   IN ATASCII
02230          STA SDNR
02240          LDX #$40   KLEINE
02250          LDY #0     ZEIT-
02260 .2       DEY        VEZOEGERUNG
02270          BNE .2
02280          DEX
02290          BNE .2
02300          LDX DUNIT  DRIVE
02310          INX        +1
02320          TXA
02330          JSR HSCHK  TESTEN
02340          BCS .3
02350          LDA DUNIT
02360          BNE .4
02370 .3       LDA SOURC  ORIG=ZIEL
02380          LDY SOUST
02390 .4       STA DESTN
02400          STY DESST
02410          ORA #$10   IN ATASCII
02420          STA DDNR
02430 ;
02440 ; MENU-BILDSCHIRM AUFBAUEN
02450 ;
02460 START    JSR CLRSCR
02470          LDY #8
02480          JSR TXTOUT
02490          .AT "Original Laufwerk.... D"
02500 SDNR     .AT "1"
02510          .HX EA
02520          LDY #48
02530          JSR TXTOUT
02540          .AT "Ziel Laufwerk........ D"
02550 DDNR     .AT "1"
02560          .HX EA
02570 ;
02580 STA2     LDX #SETUP
02590          STX RWLINE
02600          LDY #120
02610          JSR CLRSC1
02620 ;
02630          LDY #94
02640          JSR TXTOUT
02650          .AT "Speicher: "
02660          .HX EA
02670          LDA HIMEM   =C0/A0/80
02680          AND #$60
02690          LSR         :8
02700          LSR
02710          LSR         =18/14/10
02720          LDX MAXBANK
02730          CPX #4      4 BANKS
02740          BCC .1
02750          CLC
02760          ADC #12
02770 .1       CPX #8      8 BANKS
02780          BCC .2
02790          CLC
02800          ADC #12
02810 .2       CPX #$10    16 BANKS
02820          BCC .3
02830          CLC
02840          ADC #12
02850 .3       TAX
02860          LDA #4      SPEICHER-
02870          STA BYT1    GROESSE
02880 .4       LDA MEMTB,X ANZEIGEN
02890          STA DISPLY,Y
02900          INY
02910          INX
02920          DEC BYT1
02930          BNE .4
02940 *
02950          LDA RAMDSK  DATEN IN
02960          BNE BEF0    RAMDISK ?
02970          LDY #125
02980          JSR TXTOUT
02990          .AT "\M^Yœ–‘…œŒ\^Y"
03000          .AT ".Von Ramdisk schreiben"
03010          .HX EA
03020          JMP BEF1
03030 BEF0     LDA SOURC   ORIG=ZIEL?
03040          CMP DESTN
03050          BEQ BEF1
03060          LDY #125
03070          JSR TXTOUT
03080          .AT "\M^Yœ–‘…œŒ\^Y"
03090          .AT ".Laufwerke austauschen"
03100          .HX EA
03110 BEF1     LDY #165
03120          JSR TXTOUT
03130          .AT "\M^Y”≈Ã≈√‘\^Y"
03140          .AT ".....Formatieren: "
03150          .HX EA
03160          LDA FORMT   FORMATFLAG
03170          BEQ BEF2
03180          JSR TXTOUT
03190          .AT "NEIN"
03200          .HX EA
03210          BEQ TXCOP
03220 BEF2     JSR TXTOUT
03230          .AT " JA "
03240          .HX EA
03250 TXCOP    LDY #205
03260          JSR TXTOUT
03270          .AT "\M^Y”‘¡“‘\^Y"
03280          .AT "......Diskette kopieren"
03290          .HX EA
03300 ;
03310 GETBEF   JSR GETKEY
03320          CMP #5      SELECT ?
03330          BEQ FORMAT
03340          CMP #6      START ?
03350          BEQ GOCOPY
03360          LDA RAMDSK  DATEN IN
03370          BEQ WFRD    RAMDISK ?
03380 ;
03390 EXCHAN   LDY SOURC   OPTION-
03400          LDX DESTN   TASTE
03410          STY DESTN
03420          STX SOURC   ORIGINAL
03430          TYA         UND ZIEL
03440          ORA #$10    TAUSCHEN
03450          STA DDNR
03460          TXA
03470          ORA #$10
03480          STA SDNR
03490          LDY SOUST
03500          LDX DESST
03510          STY DESST
03520          STX SOUST
03530          JMP START
03540 ;
03550 WFRD     LDY #203   VON RAMDISK
03560          STY DLEFT  SCHREIBEN
03570          LDX #$FF
03580          STX CFIRST
03590          INX
03600          STX DROW
03610          STX DSKIP
03620          STX EQUAL
03630          STX FFIRST
03640          LDY #120
03650          JSR CLRSC1
03660          LDY #120  ALTE ANZEIGE
03670 WFR1     LDA DSBUF,X    SETZEN
03680          STA DISPLY,Y
03690          INX
03700          INY
03710          CPY #200
03720          BNE WFR1
03730          LDA #$37
03740          STA DISPLY+201
03750          JMP WRITER  ZUR
03760 ;               SCHREIBROUTINE
03770 ;
03780 FORMAT   LDA FORMT  FORMATFLAG
03790          EOR #$FF   INVERTIEREN
03800          STA FORMT
03810          JMP STA2
03820 ;
03830 GOCOPY   LDA SOURC  START COPY
03840          EOR DESTN
03850          STA EQUAL  ORG=ZIEL
03860 *
03870          LDY #6
03880          LDA #0
03890          STA SPFLAG  POINTER
03900          STA FFIRST  LOESCHEN
03910 .1       STA SLEFT,Y
03920          DEY
03930          BPL .1
03940          STY CFIRST
03950          LDA #163    SCREEN-
03960          STA SLEFT   POSITIONEN
03970          LDA #203    DER BALKEN
03980          STA DLEFT   SETZEN
03990          LDY #120
04000          JSR CLRSC1
04010          LDA #$32
04020          STA DISPLY+161
04030          LDA #$37
04040          STA DISPLY+201
04050          STA RETRY
04060          LDX #1      SEKTOR 1
04070          STX RSECA
04080          DEX
04090          STX RSECA+1
04100 ;
04110 BEGIN    LDA EQUAL   ORG=ZIEL?
04120          BEQ .2
04130          LDX #INBOTH "BEIDE DSK
04140          LDA #$20     EINLEGEN"
04150 .1       STX RWLINE
04160          LDA #$20    AUF TASTE
04170          JSR HITRET  WARTEN
04180          CMP #6      START ?
04190          BEQ .3
04200          JMP STA2    ZUM MENU
04210 .2       LDX #INSOUR "ORIGINAL
04220          BNE .1       EINLEGEN"
04230 .3       LDA CFIRST  1.DURCH-
04240          BMI .4         GANG ?
04250          JMP COP3
04260 .4       LDA #$53    STATUS...
04270          STA DCOMND
04280          LDA #4      4 BYTES
04290          STA DBYTLO
04300          LDA #$40    READ
04310          STA DSTATS
04320          JSR SETBUF
04330          LDY SOURC
04340          JSR MOVSLO  SIO....
04350          LDY #133    SCRPOS
04360          JSR TXTOUT
04370          .AT "Density:  "
04380          .HX EA
04390          LDA LOMEM   STATUSBYTE
04400          AND #$A0
04410          STA DENS    MERKEN
04420          AND #$80    MEDIUM ?
04430          BNE MEDIUM
04440          LDA #5     INCREMENT
04450          STA FINC   FUER BALKEN
04460          LDA LOMEM
04470          AND #$20    DOUBLE ?
04480          BNE DOUBLE
04490          STA DENS
04500          JSR TXTOUT
04510          .AT "SINGLE"
04520          .HX EA
04530          JMP COPZD
04540 ;
04550 MEDIUM   LDX #8
04560          STX FINC
04570          JSR TXTOUT
04580          .AT "MEDIUM"
04590          .HX EA
04600          BEQ COPZD
04610 ;
04620 DOUBLE   JSR TXTOUT
04630          .AT "DOUBLE"
04640          .HX EA
04650 ;
04660 ; BEI SPEEDY 1050 KANN MIT
04670 ; 2 LAUFWERKEN DIE ZIELDISK
04680 ; FORMATIERT WERDEN, WENN DAS
04690 ; ORIGINAL EINGELESEN WIRD
04700 ;
04710 COPZD    LDA EQUAL
04720          BEQ COP3    ORG=ZIEL
04730          LDA FORMT
04740          BNE COP3    NO FORMAT
04750          BIT DESST
04760          BPL COP3    NO SPEEDY
04770          JSR SETDEN  DENSITY
04780          SEC          SETZEN
04790          JSR SETVER  VERIFY AUS
04800          TYA
04810          BMI COP3
04820 JCOP     LDA #$20    COMMAND 20
04830          STA DCOMND AUTO-FORMAT
04840          LDA #0
04850          STA DSTATS
04860          LDY DESTN
00518          JSR MOVSLO  SIO...
04880          TYA
04890          BPL FFOK
04900          JSR ERROR   FEHLER
04910          BCC JCOP    VERSUCH?
04920          JMP STA2    NEUSTART
04930 ;
04940 FFOK     INC FFIRST  1.DURCHG.
04950 COP3     LDA RSECA   START-
04960          STA RSECC   SEKTOR
04970          LDA RSECA+1 MERKEN
04980          STA RSECC+1
04990          LDY SOURC   ORG-DRIVE
05000          STY DUNIT
05010          BIT SPFLAG  HI-SPEED
05020          BPL .1
05030          LDA #$28    SLOW
05040          STA SPTBL-1,Y
05050 .1       JSR SETBUF  BUFFER
05060 .2       LDX SLEFT     SETZEN
05070          LDY SROW
05080          LDA SSKIP
05090          JSR DFUEL   BALKEN
05100          STA SSKIP    AKTUALI-
05110          STY SROW      SIEREN
05120          STX SLEFT
05130 .3       LDX #READIN "LESE -"
05140          STX RWLINE
05150          LDA #$40    GETBYTES
05160          STA DSTATS
05170          LDA RSECA   SEKTOR #
05180          STA DSECLO
05190          LDA RSECA+1
05200          STA DSECHI
05210          LDA #$52    READ
05220          STA DCOMND
05230          JSR SETLEN  LAENGE
05240          JSR MASTER  SIO...
05250          BCC .5
05260          BIT SPFLAG  ERROR?
05270          BPL .4
05280          JSR ERROR
05290          CMP #6      START ?
05300          BEQ .3
05310          CMP #5      SELECT ?
05320          BEQ .5
05330          JMP STA2    NEUSTART
05340 ;
05350 .4       LDY DUNIT
05360          LDA SPTBL-1,Y
05370          STA SPBYT
05380          LDA #$28
05390          STA SPTBL-1,Y
05400          DEC SPFLAG
05410          BNE .3
05420 .5       JSR ENDCHK  ENDE ?
05430          BCC .2
05440 ;
05450 ; DATEN SCHREIBEN
05460 ;
05470 WRITER   LDA RSECA   START-
05480          STA RSECB    SEKTOR
05490          LDA RSECA+1
05500          STA RSECB+1
05510          LDA EQUAL   ORG=ZIEL?
05520          BNE COPW1
05530          LDX #INDEST "ZIEL
05540          STX RWLINE   EINLEGEN"
05550          LDA #$20
05560          JSR HITRET  TASTE...
05570          CMP #5      OPTION ?
05580          BCC .1      VERIFY:
05590          LSR         SELECT=EIN
05600          JSR SETVER   START=AUS
05610          JMP COPW1
05620 .1       JMP STA2    NEUSTART
05630 ;
05640 COPW1    LDA RSECC   START-
05650          STA RSECA    SEKTOR
05660          LDA RSECC+1
05670          STA RSECA+1
05680          LDA DESTN   ZIELDRIVE
05690          STA DUNIT
05700          BIT SPFLAG  SLOW ?
05710          BPL .1
05720          LDY SOURC
05730          LDA SPBYT
05740          STA SPTBL-1,Y
05750 .1       LDA CFIRST  1.DURCHG.?
05760          BPL NOFORM
05770          LDA FFIRST  FORMAT OK?
05780          BNE NOFORM
05790          LDA FORMT   NO FORMAT
05800          BNE NOFORM
05810 .2       LDX #FMATIN "FORMAT.."
05820          STX RWLINE
05830          LDA DESST
05840          BPL .3
05850          JSR SETDEN  DENSITY
05860 .3       LDA #$80      SETZEN
05870          STA DBYTLO  $80 BYTES
05880          LDA #$22    COMMAND 22
05890          BIT DENS    MEDIUM ?
05900          BMI .5
05910          LDA DENS    DOUBLE ?
05920          BEQ .4
05930          ASL DBYTLO  $100 BYTES
05940 .4       LDA #$21    COMMAND 21
05950 .5       STA DCOMND
05960          LDA #$D5    $D500
05970          STA DBUFHI  BUFFER
05980          LDA #$40
05990          STA DSTATS  STATUS
06000          LDY DESTN
06010          JSR MOVSLO  SIO...
06020          TYA
06030          BPL NOFORM  FORMAT OK
06040          JSR ERROR
06050          BCC .2      WEITER
06060          JMP STA2    NEUSTART
06070 ;
06080 NOFORM   LDA #$50    PUTBYTE
06090          STA DCOMND
06100          INC CFIRST  1.DURCHG.
06110          JSR SETBUF  BUFFER
06120 .1       LDX #READIN "LESE-"
06130          STX RWLINE
06140          LDA #$80
06150          STA DSTATS  STATUS
06160          LDA RSECA
06170          STA DSECLO
06180          LDA RSECA+1
06190          STA DSECHI  SEKTOR #
06200          JSR SETLEN  LAENGE
06210          JSR EMPTY   SEKTOR
06220          BCS .2         LEER ?
06230          JSR MASTER  SIO...
06240          BCC .2      ERROR ?
06250          JSR ERROR
06260          BCC .1      WEITER
06270          JMP STA2    NEUSTART
06280 ;
06290 .2       LDX DLEFT
06300          LDY DROW
06310          LDA DSKIP
06320          JSR DFUEL   BALKEN
06330          STA DSKIP   AKTUALI-
06340          STY DROW    SIEREN
06350          STX DLEFT
06360          JSR ENDCHK  ENDE ?
06370          BCC .1
06380          PHP
06390          LDA DESST
06400          BPL .3
06410          LDA #$51    COMMAND 51
06420          STA DCOMND  MOTOR STOP
06430          LDA #0
06440          STA DSTATS
06450          LDY DESTN
06460          JSR MOVSLO  SIO...
06470 .3       PLP
06480          BEQ DONE    DISK ENDE
06490          LDA RSECB
06500          STA RSECA   ENDSEKTOR
06510          LDA RSECB+1  MERKEN
06520          STA RSECA+1
06530          LDA EQUAL   ORG=ZIEL?
06540          BNE .4
06550          JMP BEGIN
06560 .4       JMP COP3    WEITER...
06570 ------------------------------