home *** CD-ROM | disk | FTP | other *** search
/ Compendium Deluxe 1 / LSD Compendium Deluxe 1.iso / a / programming / assembly / dmaster.lha / diskmaster / Disk-Master.S
Encoding:
Text File  |  1995-03-24  |  61.9 KB  |  3,696 lines

  1. EXECBASE = 4
  2. CIAASDR  = $BFEC01
  3. CIAACRA  = $BFEE01
  4. AllocMem = -198
  5. FreeMem  = -210
  6. AvailMem = -216
  7. OpenLib  = -408
  8. CloseLib = -414
  9. GetMsg   = -372
  10. FindTask = -294
  11. AddPort  = -354
  12. RemPort  = -360
  13. OpenDev  = -444
  14. DoIO     = -456
  15. CloseDev = -450
  16. Open     = -30
  17. Close    = -36
  18. Read     = -42
  19. Write    = -48
  20. Seek     = -66
  21. Examine  = -102
  22. ExNext   = -108
  23. Lock     = -84
  24. Unlock   = -90
  25. Info     = -114
  26. Text     = -60
  27. Move     = -240
  28. DrawBorder=-108
  29. OpenScreen=-198
  30. CloseScreen=-66
  31. OpenWindow =-204
  32. CloseWindow=-72
  33. SetTitles  =-276
  34. SetMenu    =-264
  35. ClearMenu  =-54
  36. DisplayA   =-90
  37. AutoRequest=-348
  38. SetAPen    =-342
  39. SetBPen    =-348
  40. RectFill   =-306
  41.  
  42. jsr    OpenDisk(pc)
  43. tst.l    Disk0
  44. beq    Ending
  45. jsr    OpenLibs(pc)
  46. tst.w    Error
  47. bne    Ending
  48. jsr    ScreenOn(pc)
  49. tst.w    Error
  50. bne    Ending
  51. jsr    HolMem(pc)
  52. tst.w    Error
  53. bne    Ending
  54.  
  55. Main:    move.l    execbase,a6
  56.     move.l    Windowhd(pc),a0
  57.     move.l    86(a0),a0
  58.     jsr    GetMsg(a6)
  59.     tst.l    d0
  60.     beq    Main
  61. Message:move.l    d0,a0
  62.     move.l    $14(a0),d6
  63.     cmp    #$200,d6
  64.     beq    Ende
  65.     cmp    #$100,d6
  66.     beq    MenuPick
  67.     cmp    #$40,d6
  68.     beq    GadPick
  69.     cmp    #$8,d6
  70.     beq    MouseKlick
  71.     cmp    #$400,d6
  72.     beq    KeyPressed
  73. bra    Main
  74. Ende:    jsr    EndingRequest(pc)
  75.     tst.l    d0
  76.     beq    Main
  77. Ending:    jsr    WegMem(pc)
  78.     jsr    ScreenOff(pc)
  79.     jsr    CloseLibs(pc)
  80.     jsr    CloseDisk(pc)
  81.     clr.l    d0
  82. rts
  83. MenuPick:
  84.     clr.l    d7
  85.     move.w    $18(a0),d7
  86.     cmp.w    #$FFFF,d7
  87.     beq    Main
  88.     move.l    d7,d6
  89.     andi.l    #%11111,d6
  90.     move.l    d7,d5
  91.     andi.l    #%11111100000,d5
  92.     lsr.w    #5,d5
  93.     andi.l    #%1111100000000000,d7
  94.     lsr.w    #8,d7
  95.     lsr.w    #3,d7
  96.     tst.w    d6
  97.     beq    Men1
  98.     cmp.w    #1,d6
  99.     beq    Men2
  100.     cmp.w    #2,d6
  101.     beq    Men3
  102.     cmp.w    #3,d6
  103.     beq    Men4
  104. bra    Main
  105. Men1:    tst.w    d5
  106.     beq    Help
  107.     cmp.w    #1,d5
  108.     beq    Ende
  109.     cmp.w    #2,d5
  110.     beq    Autor
  111. bra    Main
  112. Men2:    cmp.w    #0,d5
  113.     beq    Infos
  114.     cmp.w    #2,d5
  115.     beq    View
  116.     cmp.w    #3,d5
  117.     beq    BitMap
  118.     cmp.w    #4,d5
  119.     beq    DiskCopy
  120.     cmp.w    #5,d5
  121.     beq    ReadError
  122. bra    Main
  123. Men3:
  124. bra    Main
  125. Men4:
  126. jmp    Main
  127. GadPick:
  128.     move.l    a0,a1
  129.     move.l    28(a1),a1
  130.     clr.l    d1
  131.     move.b    39(a1),d1
  132.     cmp.b    #1,d1
  133.     beq    GadN1
  134.     cmp.b    #2,d1
  135.     beq    GadN2
  136.     cmp.b    #3,d1
  137.     beq    GadN3
  138.     cmp.b    #7,d1
  139.     beq    WriteBuffer
  140.     cmp.b    #9,d1
  141.     beq    CalcCheck
  142.     cmp.b    #6,d1
  143.     beq    JumpKlick1
  144.     cmp.b    #8,d1
  145.     beq    ChangeKlick1
  146.     cmp.b    #4,d1
  147.     beq    InstallDisk
  148.     cmp.b    #5,d1
  149.     beq    InstallDisk
  150.     cmp.b    #10,d1
  151.     beq    ViewAgain
  152.     cmp.b    #11,d1
  153.     bne    Not11
  154.     cmp.l    #-1,Nr
  155.     beq    NoCl0
  156.     jsr    ClearDrive(pc)
  157.   NoCl0:clr.l    Nr
  158.     jsr    InversDrive(pc)
  159.     bra    Main
  160. Not11:    cmp.b    #12,d1
  161.     bne    Not12
  162.     tst.l    Disk1
  163.     beq    Main
  164.     cmp.l    #-1,Nr
  165.     beq    NoCl1
  166.     jsr    ClearDrive(pc)
  167.   NoCl1:move.l    #1,Nr
  168.     jsr    InversDrive(pc)
  169.     bra    Main
  170. Not12:    cmp.b    #13,d1
  171.     bne    Not13
  172.     tst.l    Disk2
  173.     beq    Main
  174.     cmp    #-1,Nr
  175.     beq    NoCl2
  176.     jsr    ClearDrive(pc)
  177.   NoCl2:move.l    #2,Nr
  178.     jsr    InversDrive(pc)
  179.     bra    Main
  180. Not13:    cmp.b    #14,d1
  181.     bne    Not14
  182.     tst.l    Disk3
  183.     beq    Main
  184.     cmp.l    #-1,Nr
  185.     beq    NoCl3
  186.     jsr    ClearDrive(pc)
  187.   NoCl3:move.l    #3,Nr
  188.     jsr    InversDrive(pc)
  189.     bra    Main
  190. Not14:    cmp.b    #15,d1
  191.     bne    Not15
  192.     tst.l    Target0
  193.     beq    Tar0
  194.     clr.l    Target0
  195.     jsr    ClearDrive1(pc)
  196.     bra    Main
  197.    Tar0:move.l    #1,Target0
  198.     jsr    InversDrive1(pc)
  199.     bra    Main
  200. Not15:    cmp.b    #16,d1
  201.     bne    Not16
  202.     tst.l    Disk1
  203.     beq    Main
  204.     tst.l    Target1
  205.     beq    Tar1
  206.     clr.l    Target1
  207.     jsr    ClearDrive1(pc)
  208.     bra    Main
  209.    Tar1:move.l    #1,Target1
  210.     jsr    InversDrive1(pc)
  211.     bra    Main
  212. Not16:    cmp.b    #17,d1
  213.     bne    Not17
  214.     tst.l    Disk2
  215.     beq    Main
  216.     tst.l    Target2
  217.     beq    Tar2
  218.     clr.l    Target2
  219.     jsr    ClearDrive1(pc)
  220.     bra    Main
  221.    Tar2:move.l    #1,Target2
  222.     jsr    InversDrive1(pc)
  223.     bra    Main
  224. Not17:    cmp.b    #18,d1
  225.     bne    Not18
  226.     tst.l    Disk3
  227.     beq    Main
  228.     tst.l    Target3
  229.     beq    Tar3
  230.     clr.l    Target3
  231.     jsr    ClearDrive1(pc)
  232.     bra    Main
  233.    Tar3:move.l    #1,Target3
  234.     jsr    InversDrive1(pc)
  235.     bra    Main
  236. Not18:    cmp.b    #19,d1
  237.     bne    Not19
  238.     tst.l    Mehrmals
  239.     beq    MCL
  240.     clr.l    Mehrmals
  241.     jsr    Normal(pc)
  242.     bra    WME
  243. MCL:    move.l    #1,Mehrmals
  244.     jsr    Revers(pc)
  245. WME:    move.l    #163,x
  246.     move.l    #158,y
  247.     lea    GT19(pc),a1
  248.     moveq    #8,d2
  249.     jsr    PText(pc)
  250.     bra    Main
  251. Not19:    cmp.b    #20,d1
  252.     bne    Not20
  253.     tst.l    Checking
  254.     beq    CCL
  255.     clr.l    Checking
  256.     jsr    Normal(pc)
  257.     bra    WCH
  258. CCL:    move.l    #1,Checking
  259.     jsr    Revers(pc)
  260. WCH:    move.l    #155,x
  261.     move.l    #178,y
  262.     lea    GT20(pc),a1
  263.     moveq    #10,d2
  264.     jsr    PText(pc)
  265.     bra    Main
  266. Not20:    cmp.b    #21,d1
  267.     beq    ResetView
  268.     cmp.b    #22,d1
  269.     beq    GoCopy
  270.     cmp.b    #23,d1
  271.     bne    Not23
  272.     tst.w    VonT
  273.     beq    Main
  274.     subq.w    #1,VonT
  275.     bra    DisplayTrack
  276. Not23:    cmp.b    #24,d1
  277.     bne    Not24
  278.     cmp.w    #79,VonT
  279.     beq    Main
  280.     move.w    VonT(pc),d0
  281.     cmp.w    BisT(pc),d0
  282.     beq    Main
  283.     addq.w    #1,VonT
  284.     bra    DisplayTrack
  285. Not24:    cmp.b    #25,d1
  286.     bne    Not25
  287.     tst.w    BisT
  288.     beq    Main
  289.     move.w    BisT(pc),d0
  290.     cmp.w    Vont(pc),d0
  291.     beq    Main
  292.     subq.w    #1,BisT
  293.     bra    DisplayTrack
  294. Not25:    cmp.b    #26,d1
  295.     bne    Not26
  296.     cmp.w    #79,BisT
  297.     beq    Main
  298.     addq.w    #1,BisT
  299.     bra    DisplayTrack
  300. Not26:    cmp.b    #27,d1
  301.     bne    Not27
  302.     move.l    #58,y
  303.     lea    StartT(pc),a0
  304.     lea    VonT(pc),a1
  305.     bra    ChangeTrack
  306. Not27:    cmp.b    #28,d1
  307.     bne    Not28
  308.     move.l    #108,y
  309.     lea    EndT(pc),a0
  310.     lea    BisT(pc),a1
  311.     bra    ChangeTrack
  312. Not28:    cmp.b    #29,d1
  313.     beq    ResetView
  314. Jmp    Main(pc)
  315. WriteBuffer:
  316.     moveq    #1,d1
  317.     move.l    Block(pc),d0
  318.     move.l    ReadBuffer(pc),d2
  319.     jsr    DiskWrite(pc)
  320.     clr.l    Antwort
  321. bra    Main
  322. InstallDisk:
  323.     move.b    d1,Cnt
  324.     jsr    InstallRequest(pc)
  325.     tst.l    d0
  326.     bne    GoInstall
  327.     bra    Main
  328. GoInstall:
  329.     cmp.b    #5,Cnt
  330.     beq    InstallNoBoot
  331.     moveq    #12,d0
  332.     lea    Install(pc),a0
  333.     move.l    ReadBuffer(pc),a1
  334. InLoop2:move.l    (a0)+,(a1)+
  335.     dbra    d0,InLoop2
  336.     move.l    #242,d0
  337. InLoop3:clr.l    (a1)+
  338.     dbra    d0,InLoop3
  339.     jsr    Checksumm0(pc)
  340. SparInstall:
  341.     clr.l    d0
  342.     moveq    #2,d1
  343.     move.l    ReadBuffer(pc),d2
  344.     jsr    DiskWrite(pc)
  345.     cmp.l    #-1,Antwort
  346.     bne    DoneInstall
  347.     clr.l    Antwort
  348.     bra    Main
  349. DoneInstall:
  350.     jsr    DiskWrite(pc)
  351.     move.l    Block(pc),d0
  352.     moveq    #1,d1
  353.     move.l    ReadBuffer(pc),d2
  354.     jsr    DiskRead(pc)
  355.     cmp.l    #1,Block
  356.     bgt    NoViewA
  357.     bra    ViewAgain
  358. NoViewA:
  359. bra    Main
  360. InstallNoBoot:
  361.     move.l    #255,d0
  362.     move.l    ReadBuffer(pc),a0
  363. InLoop1:move.l    #$444F5300,(a0)+
  364.     dbra    d0,InLoop1
  365. bra    SparInstall
  366. WriteChange:
  367.     tst.l    Change
  368.     bne    CInv1
  369.     move.l    #10,Color1
  370.     clr.l    Color2
  371.     bra    DoSetPen1
  372. CInV1:    move.l    #12,Color1
  373.     move.l    #15,Color2
  374. DoSetPen1:
  375.     move.l    Color1,d0
  376.     jsr    SetPen(pc)
  377.     move.l    Color2,d0
  378.     jsr    SetPen2(pc)
  379.     move.l    #581,x
  380.     move.l    #108,y
  381.     moveq    #6,d2
  382.     lea    ChangeT(pc),a1
  383. bra    PText
  384. WriteJump:
  385.     tst.l    Jump
  386.     bne    JInv1
  387.     move.l    #10,Color1
  388.     clr.l    Color2
  389.     bra    DoSetPen
  390. JInv1:    move.l    #12,Color1
  391.     move.l    #15,Color2
  392. DoSetPen:move.l    Color1,d0
  393.     jsr    SetPen(pc)
  394.     move.l    Color2,d0
  395.     jsr    SetPen2(pc)
  396.     move.l    #589,x
  397.     move.l    #78,y
  398.     moveq    #4,d2
  399.     lea    JumpT(pc),a1
  400.     jsr    PText(pc)
  401.     moveq    #1,d0
  402.     jsr    SetPen(pc)
  403.     clr.l    d0
  404. bra    SetPen2
  405. JumpKlick1:
  406.     tst.l    Change
  407.     beq    OkJump
  408.     clr.l    Change
  409.     jsr    WriteChange(pc)
  410. OkJump:    tst.l    Jump
  411.     beq    JInv2
  412.     clr.l    Jump
  413.     bra    JInv3
  414. Jinv2:    move.l    #1,Jump
  415. Jinv3:    jsr    WriteJump(pc)
  416. bra    Main
  417. ChangeKlick1:
  418.     tst.l    Jump
  419.     beq    OkChange
  420.     clr.l    Jump
  421.     jsr    WriteJump(pc)
  422. OkChange:tst.l    Change
  423.     beq    CInv2
  424.     clr.l    Change
  425.     bra    CInv3
  426. Cinv2:    move.l    #1,Change
  427. Cinv3:    jsr    WriteChange(pc)
  428. bra    Main
  429. MouseKlick:
  430.     move.w    32(a0),mx
  431.     move.w    34(a0),my
  432.     tst.l    Jump
  433.     bne    JumpKlick
  434.     tst.l    Change
  435.     bne    ChangeKlick
  436. bra    Main
  437. ChangeKlick:
  438.     clr.l    Change
  439.     jsr    WriteChange(pc)
  440.     clr.l    d0
  441.     clr.l    d1
  442.     subi.w    #10,my
  443.     move.w    my(pc),d0
  444.     divu    #8,d0
  445.     cmp.w    #408,mx
  446.     bge    AsciiChange
  447.     mulu    #5,d0
  448.     subi.w    #40,mx
  449.     move.w    mx(pc),d1
  450.     divu    #68,d1
  451.     add.w    d1,d0
  452.     mulu    #4,d0
  453.     cmp.w    #511,d0
  454.     bgt    Main
  455.     move.w    d0,APos
  456.     moveq    #1,d0
  457.     jsr    HCursor(pc)
  458.     move.l    #1,HL
  459.     clr.b    CIAASDR
  460. HexChange:    
  461.     jsr    GetChar(pc)
  462.     tst.b    d0
  463.     beq    HexChange
  464.     cmp.b    #27,d0
  465.     beq    FinishedHex
  466.     cmp.b    #13,d0
  467.     beq    FinishedHex
  468.     cmp.b    #30,d0
  469.     bne    No30
  470.     cmp.w    #511,Apos
  471.     beq    HexChange
  472.     move.l    #1,HL
  473.     clr.l    d0
  474.     jsr    HCursor(pc)
  475.     addq.w    #1,APos
  476.     moveq    #1,d0
  477.     jsr    HCursor(pc)
  478.     bra    HexChange
  479. No30:    cmp.b    #31,d0
  480.     bne    No31
  481.     tst.w    APos
  482.     beq    HexChange
  483.     move.l    #1,HL
  484.     clr.l    d0
  485.     jsr    HCursor(pc)
  486.     subq.w    #1,APos
  487.     moveq    #1,d0
  488.     jsr    HCursor(pc)
  489.     bra    HexChange
  490. No31:    cmp.b    #28,d0
  491.     bne    No28
  492.     cmp.w    #20,Apos
  493.     blt    HexChange
  494.     clr.l    d0
  495.     jsr    HCursor(pc)
  496.     move.l    #1,HL
  497.     subi.w    #20,Apos
  498.     moveq    #1,d0
  499.     jsr    HCursor(pc)
  500.     bra    HexChange
  501. No28:    cmp.b    #29,d0
  502.     bne    No29
  503.     cmp.w    #491,APos
  504.     bgt    HexChange
  505.     clr.l    d0
  506.     jsr    HCursor(pc)
  507.     move.l    #1,HL
  508.     addi.w    #20,APos
  509.     moveq    #1,d0
  510.     jsr    HCursor(pc)
  511.     bra    HexChange
  512. No29:    cmp.b    #48,d0
  513.     blt    HexChange
  514.     cmp.b    #102,d0
  515.     bgt    HexChange
  516.     cmp.b    #58,d0
  517.     blt    CalcHex
  518.     cmp.b    #65,d0
  519.     blt    No29a
  520.     cmp.b    #71,d0
  521.     blt    CalcHex
  522. No29a:    cmp.b    #96,d0
  523.     bgt    CalcHex
  524. bra    HexChange
  525. FinishedHex:        
  526.     clr.l    d0
  527.     jsr    HCursor(pc)
  528. bra    Main
  529. CalcHex:subi.b    #48,d0
  530.     cmp.b    #10,d0
  531.     blt    NummerH
  532.     subi.b    #7,d0
  533.     cmp.b    #16,d0
  534.     blt    NummerH
  535.     subi.b    #32,d0
  536. NummerH:move.l    ReadBuffer(pc),a0
  537.     add.w    APos(pc),a0
  538.     move.b    (a0),d1
  539.     cmp.l    #1,HL
  540.     bne    LowHex
  541.     andi.b    #$f,d1
  542.     lsl.b    #4,d0
  543.     add.b    d1,d0
  544.     move.b    d0,(a0)
  545.     add.l    #1,HL
  546.     clr.l    d0
  547.     jsr    ACursor(pc)
  548.     moveq    #1,d0
  549.     jsr    HCursor(pc)
  550.     bra    HexChange
  551. LowHex:    move.l    #1,HL
  552.     andi.b    #$f0,d1
  553.     add.b    d1,d0
  554.     move.b    d0,(a0)
  555.     clr.l    d0
  556.     jsr    ACursor(pc)
  557.     clr.l    d0
  558.     jsr    HCursor(pc)
  559.     cmp.w    #511,APos
  560.     beq    NotMore
  561.     addq.w    #1,APos
  562. NotMore:moveq    #1,d0
  563.     jsr    HCursor(pc)
  564. bra    HexChange
  565. GetChar:move.b    CIAASDR,d0
  566.     tst.b    d0
  567.     bne    GoGetChar
  568. rts
  569. GoGetChar:
  570.     ori.b    #64,CIAACRA
  571.     moveq    #60,d1
  572. KeyLow:    clr.b    CIAASDR
  573.     dbra    d1,KeyLow
  574.     andi.b    #$bf,CIAACRA
  575.     not.b    d0
  576.     ror.b    #1,d0
  577.     clr.b    CIAACRA
  578.     cmp.b    #$f9,d0
  579.     bne    GoodChar
  580.     clr.l    d0
  581. rts
  582. GoodChar:cmp.b    #$79,d0
  583.     bls    GoodChar1
  584.     subi.b    #$80,d0
  585.     cmp.b    #$60,d0
  586.     blt    NoShift
  587.     cmp.b    #$62,d0
  588.     bgt    NoShift
  589.     move.l    #0,Shift
  590. NoShift:clr.l    d0
  591. rts
  592. GoodChar1:
  593.     cmp.b    #$60,d0
  594.     blt    Normalk
  595.     cmp.b    #$62,d0
  596.     bgt    NormalK
  597.     bra    ShiftOut
  598. Normalk:tst.l    Shift
  599.     beq    NoShift1
  600.     addi.b    #$70,d0
  601. NoShift1:clr.l    d1
  602.     move.b    d0,d1
  603.     lea    Keys(pc),a0
  604.     add.l    d1,a0
  605.     move.b    (a0),d0
  606. rts
  607. ShiftOut:move.l    #1,Shift
  608.     clr.l    d0
  609. rts
  610. AsciiChange:
  611.     subi.w    #407,mx
  612.     move.w    mx(pc),d1
  613.     cmp.w    #160,mx
  614.     bge    Main
  615.     mulu    #20,d0
  616.     divu    #8,d1
  617.     add.w    d1,d0
  618.     cmp.w    #511,d0
  619.     bgt    Main
  620.     move.w    d0,APos
  621.     moveq    #1,d0
  622.     jsr    ACursor(pc)
  623.     clr.b    CIAASDR
  624. AsciiLoop:
  625.     jsr    GetChar(pc)
  626.     tst.b    d0
  627.     beq    AsciiLoop
  628.     cmp.b    #27,d0
  629.     beq    FinishedAscii
  630.     cmp.b    #13,d0
  631.     beq    FinishedAscii
  632.     cmp.b    #30,d0
  633.     bne    NoA30
  634.     cmp.w    #511,Apos
  635.     beq    AsciiLoop
  636.     clr.l    d0
  637.     jsr    ACursor(pc)
  638.     addq.w    #1,APos
  639.     moveq    #1,d0
  640.     jsr    ACursor(pc)
  641.     bra    AsciiLoop
  642. NoA30:    cmp.b    #31,d0
  643.     bne    NoA31
  644.     tst.w    APos
  645.     beq    AsciiLoop
  646.     clr.l    d0
  647.     jsr    ACursor(pc)
  648.     subq.w    #1,APos
  649.     moveq    #1,d0
  650.     jsr    ACursor(pc)
  651.     bra    AsciiLoop
  652. NoA31:    cmp.b    #28,d0
  653.     bne    NoA28
  654.     cmp.w    #20,Apos
  655.     blt    AsciiLoop
  656.     clr.l    d0
  657.     jsr    ACursor(pc)
  658.     subi.w    #20,Apos
  659.     moveq    #1,d0
  660.     jsr    ACursor(pc)
  661.     bra    AsciiLoop
  662. NoA28:    cmp.b    #29,d0
  663.     bne    NoA29
  664.     cmp.w    #491,APos
  665.     bgt    AsciiLoop
  666.     clr.l    d0
  667.     jsr    ACursor(pc)
  668.     addi.w    #20,APos
  669.     moveq    #1,d0
  670.     jsr    ACursor(pc)
  671.     bra    AsciiLoop
  672. NoA29:    move.l    ReadBuffer(pc),a0
  673.     add.w    APos(pc),a0
  674.     move.b    d0,(a0)
  675.     clr.l    d0
  676.     jsr    HCursor(pc)
  677.     clr.l    d0
  678.     jsr    ACursor(pc)
  679.     cmp.w    #511,APos
  680.     beq    NoMore1
  681.     addq.w    #1,APos
  682. NoMore1:moveq    #1,d0
  683.     jsr    ACursor(pc)
  684. bra    AsciiLoop
  685. FinishedAscii:        
  686.     clr.l    d0
  687.     jsr    ACursor(pc)
  688. bra    Main
  689. ACursor:tst.l    d0
  690.     bne    MRevers
  691.     jsr    Normal(pc)
  692.     bra    GoAhead
  693. MRevers:jsr    Revers(pc)
  694. GoAhead:move.l    ReadBuffer(pc),a1
  695.     add.w    APos(pc),a1
  696.     move.w    APos(pc),d0
  697.     move.w    d0,d1
  698.     divu    #20,d1
  699.     move.l    d1,d2
  700.     mulu    #20,d1
  701.     sub.w    d1,d0
  702.     mulu    #8,d2
  703.     mulu    #8,d0
  704.     move.l    #408,x
  705.     add.w    d0,x+2
  706.     move.w    d2,y+2
  707.     addi.l    #17,y
  708.     moveq    #1,d2
  709.     move.b    (a1),d0
  710.     cmp.b    #31,d0
  711.     bls    MakePunkt
  712.     cmp.b    #128,d0
  713.     bge    NoChar2
  714.     bra    DoChar2
  715. NoChar2:cmp.b    #159,d0
  716.     bgt    DoChar2
  717. MakePunkt:
  718.     lea    Punkt(pc),a1
  719. DoChar2:jsr    PText(pc)
  720. bra    Normal
  721. HCursor:tst.l    d0
  722.     bne    MRevers2
  723.     jsr    Normal(pc)
  724.     bra    OkH
  725. MRevers2:jsr    Revers(pc)
  726. OkH:    move.l    ReadBuffer(pc),a0
  727.     add.w    APos(pc),a0
  728.     move.w    #$3030,UBlocks
  729.     lea    UBlocks(pc),a1
  730.     move.w    Apos,d0
  731.     move.w    APos(pc),d0
  732.     move.w    d0,d1
  733.     divu    #20,d1
  734.     move.l    d1,d2
  735.     mulu    #20,d1
  736.     sub.w    d1,d0
  737.     mulu    #8,d2
  738.     move.w    d2,y+2
  739.     addi.l    #17,y
  740.     move.l    #40,x
  741.     move.l    d0,d1
  742.     divu    #4,d1
  743.     move.l    d1,d2
  744.     mulu    #4,d1
  745.     sub    d1,d0
  746.     mulu    #72,d2
  747.     mulu    #16,d0
  748.     add.w    d0,x+2
  749.     add.w    d2,x+2
  750.     move.b    (a0),d0
  751.     move.l    d0,d1
  752.     divu    #$10,d1
  753.     add.b    d1,(a1)
  754.     cmp.b    #57,(a1)
  755.     bls    GoH1
  756.     addq.b    #7,(a1)
  757. GoH1:    mulu    #$10,d1
  758.     sub.b    d1,d0
  759.     add.b    d0,1(a1)
  760.     cmp.b    #57,1(a1)
  761.     bls    Goh2
  762.     addq.b    #7,1(a1)
  763. GoH2:    moveq    #2,d2
  764.     jsr    PText(pc)
  765. bra    Normal
  766. Revers:    moveq    #2,d0
  767.     jsr    SetPen(pc)
  768.     moveq    #3,d0
  769. bra    SetPen2
  770. Normal:    moveq    #1,d0
  771.     jsr    SetPen(pc)
  772.     clr.l    d0
  773. bra    SetPen2
  774. JumpKlick:
  775.     clr.l    Jump
  776.     jsr    WriteJump(pc)
  777.     clr.l    d0
  778.     clr.l    d1
  779.     cmp.w    #408,mx
  780.     bgt    Main
  781.     subi.w    #10,my
  782.     subi.w    #40,mx
  783.     move.w    my(pc),d0
  784.     move.w    mx(pc),d1
  785.     divu    #8,d0
  786.     mulu    #5,d0
  787.     divu    #68,d1
  788.     add.w    d1,d0
  789.     mulu    #4,d0
  790.     move.l    ReadBuffer(pc),a0
  791.     cmp.w    #508,d0
  792.     bgt    Main
  793.     add.w    d0,a0
  794.     move.l    (a0),d1
  795.     tst.l    d1
  796.     blt    Main
  797.     cmp.l    #1759,d1
  798.     bgt    Main
  799.     move.l    d1,Block
  800. bra    SparGad
  801. CalcCheck:
  802.     cmp.l    #1,CheckType
  803.     bne    Typ2
  804.     jsr    Checksumm1(pc)
  805.     bra    SparCheck
  806. Typ2:    cmp.l    #2,CheckType
  807.     bne    Typ3
  808.     jsr    Checksumm2(pc)
  809.     bra    SparCheck
  810. Typ3:    cmp.l    #3,CheckType
  811.     bne    Typ0
  812.     jsr    Checksumm3(pc)
  813.     bra    SparCheck
  814. Typ0:    move.w    #8,Error
  815.     jsr    ErrorDisplay(pc)
  816.     bra    Main
  817. SparCheck:
  818.     move.l    #15,y
  819.     move.l    #40,x
  820.     jsr    ViewBuffer(pc)
  821. bra    Main
  822. GadN1:    lea    GadI6(pc),a0
  823.     move.l    28(a0),d0
  824.     cmp.l    #1760,d0
  825.     blt    DoBlock
  826.     move.l    Block(pc),28(a0)
  827.     move.l    UnBuffer(pc),InBuffer
  828.     bra    Main
  829. DoBlock:cmp.l    Block,d0
  830.     beq    Main
  831.     move.l    d0,Block
  832. bra    ViewAgain
  833. GadN2:    tst.l    Block
  834.     beq    Main
  835.     subq.l    #1,Block
  836. bra    SparGad
  837. GadN3:    cmp.l    #1759,Block
  838.     beq    Main
  839.     addq.l    #1,Block
  840. SparGad:move.l    Block(pc),d0
  841.     move.l    d0,GadI6+28
  842.     jsr    MakeText(pc)
  843.     move.l    UBlocks(pc),d0
  844.     move.l    d0,d1
  845.     andi.l    #$39000000,d0
  846.     cmp.l    #$30000000,d0
  847.     bne    Tausend
  848.     lsl.l    #8,d1
  849.     andi.b    #0,d1
  850.     move.l    d1,d0
  851.     andi.l    #$39000000,d0
  852.     cmp.l    #$30000000,d0
  853.     bne    Tausend
  854.     lsl.l    #8,d1
  855.     andi.b    #0,d1
  856.     move.l    d1,d0
  857.     andi.l    #$39000000,d0
  858.     cmp.l    #$30000000,d0
  859.     bne    Tausend
  860.     lsl.l    #8,d1
  861.     andi.b    #0,d1
  862. Tausend:move.l    d1,InBuffer
  863.     move.l    d1,UnBuffer
  864.     clr.w    Inbuffer+4
  865.     clr.w    UnBuffer+4
  866.     move.l    #246,y
  867.     move.l    #89,x
  868.     jsr    PText(pc)
  869. bra    ViewAgain
  870. KeyPressed:
  871.     tst.l    ViewActive
  872.     beq    Main
  873.     jsr    GetChar(pc)
  874.     cmp.b    #30,d0
  875.     beq    GadN3
  876.     cmp.b    #31,d0
  877.     beq    GadN2
  878. bra    Main
  879. Help:    jsr    ClearScreen(pc)
  880.     move.l    WindowHd(pc),a1
  881.     move.l    50(a1),a1
  882.     moveq    #1,d0
  883.     move.l    GraphicBase(pc),a6
  884.     jsr    SetAPen(a6)
  885.     move.l    #20,x
  886.     move.l    #10,y
  887.     clr.l    Nr
  888.     move.l    Anzahl(pc),Cnt
  889. NochnText:
  890.     addi.l    #10,y
  891.     lea    TextPtr,a1
  892.     move.l    Nr,d0
  893.     mulu    #4,d0
  894.     add.l    d0,a1
  895.     move.l    (a1),a1
  896.     move.w    (a1)+,d2
  897.     jsr    PText(pc)
  898.     addq.l    #1,Nr
  899.     subq.l    #1,Cnt
  900.     tst.l    Cnt
  901.     bne    NochnText
  902. bra    Main
  903. ResetView:
  904.     move.l    #$18708,Window+10
  905.     clr.l    Window+18
  906.     move.l    WindowHd(pc),a0
  907.     move.l    IntBase(pc),a6
  908.     jsr    CloseWindow(a6)
  909.     lea    Window(pc),a0
  910.     jsr    OpenWindow(a6)
  911.     move.l    d0,WindowHd
  912.     move.l    d0,a0
  913.     Lea    Menu(pc),a1
  914.     jsr    SetMenu(a6)
  915.     clr.l    ViewActive
  916.     clr.l    CopyActive
  917.     clr.l    Target0
  918.     clr.l    Target1
  919.     clr.l    Target2
  920.     clr.l    Target3
  921.     clr.l    Nr
  922. bra    Main
  923. DiskCopy:move.l    WindowHd(pc),a0
  924.     move.l    IntBase(pc),a6
  925.     jsr    CloseWindow(a6)
  926.     move.l    #Gad11,d0
  927.     move.l    d0,Window+18
  928.     move.l    #$18768,Window+10
  929.     lea    Window(pc),a0
  930.     jsr    OpenWindow(a6)
  931.     move.l    d0,WindowHd
  932.     move.l    #1,CopyActive
  933.     move.l    #-1,Nr
  934.     clr.l    d0
  935.     jsr    SetPen2(pc)
  936.     moveq    #1,d0
  937.     jsr    SetPen(pc)
  938.     move.l    #163,x
  939.     move.l    #40,y
  940.     moveq    #8,d2
  941.     lea    Copy1(pc),a1
  942.     jsr    PText(pc)
  943.     move.l    #90,y
  944.     move.l    #171,x
  945.     moveq    #6,d2
  946.     lea    Copy2(pc),a1
  947.     jsr    PText(pc)
  948.     move.l    #288,x
  949.     move.l    #20,y
  950.     moveq    #8,d2
  951.     lea    Copy0(pc),a1
  952.     jsr    PText(pc)
  953.     move.l    #436,x
  954.     move.l    #40,y
  955.     moveq    #11,d2
  956.     lea    Copy3(pc),a1
  957.     jsr    PText(pc)
  958.     move.l    #444,x
  959.     move.l    #90,y
  960.     moveq    #9,d2
  961.     lea    Copy4(pc),a1
  962.     jsr    PText(pc)
  963.     move.l    #472,x
  964.     move.l    #58,y
  965.     moveq    #2,d2
  966.     lea    StartT(pc),a1
  967.     jsr    PText(pc)
  968.     move.l    #108,y
  969.     moveq    #2,d2
  970.     lea    EndT(pc),a1
  971.     jsr    PText(pc)
  972.     move.l    #408,x
  973.     move.l    #200,y
  974.     lea    LeseT(pc),a1
  975.     moveq    #15,d2
  976.     jsr    PText(pc)
  977.     move.l    #210,y
  978.     moveq    #15,d2
  979.     lea    SchreibT(pc),a1
  980.     jsr    PText(pc)
  981. bra    Main
  982. DisplayTrack:
  983.     clr.l    d0
  984.     clr.l    d1
  985.     lea    StartT(pc),a0
  986.     move.w    #$3030,(a0)
  987.     move.w    VonT(pc),d0
  988.     move.w    d0,d1
  989.     divu    #10,d0
  990.     add.b    d0,(a0)
  991.     mulu    #10,d0
  992.     sub    d0,d1
  993.     add.b    d1,1(a0)
  994.     lea    EndT(pc),a0
  995.     move.w    #$3030,(a0)
  996.     move.w    BisT(pc),d0
  997.     move.w    d0,d1
  998.     divu    #10,d0
  999.     add.b    d0,(a0)
  1000.     mulu    #10,d0
  1001.     sub    d0,d1
  1002.     add.b    d1,1(a0)
  1003.     clr.l    d0
  1004.     jsr    SetPen2(pc)
  1005.     moveq    #1,d0
  1006.     jsr    SetPen(pc)
  1007.     move.l    #472,x
  1008.     move.l    #58,y
  1009.     moveq    #2,d2
  1010.     lea    StartT(pc),a1
  1011.     jsr    PText(pc)
  1012.     moveq    #2,d2
  1013.     move.l    #108,y
  1014.     lea    EndT(pc),a1
  1015.     jsr    PText(pc)
  1016. bra    Main
  1017. ChangeTrack:
  1018.     move.l    a0,Stack
  1019.     move.l    a1,Stack+4
  1020.     jsr    Revers(pc)
  1021.     move.l    #472,x
  1022.     move.l    a0,a1
  1023.     moveq    #2,d2
  1024.     jsr    PText(pc)
  1025.     move.l    #1,HL
  1026.     clr.b    CIAASDR
  1027. WaitChar:jsr    GetChar(pc)
  1028.     tst.b    d0
  1029.     beq    WaitChar
  1030.     cmp.b    #13,d0
  1031.     beq    EndWait
  1032.     cmp.b    #27,d0
  1033.     beq    EndWait
  1034.     cmp.b    #48,d0
  1035.     blt    WaitChar
  1036.     cmp.b    #57,d0
  1037.     bgt    WaitChar
  1038.     subi.b    #48,d0
  1039.     move.l    Stack(pc),a1
  1040.     cmp.l    #1,HL
  1041.     bne    HLow
  1042.     move.l    #2,HL
  1043.     move.b    #$30,(a1)
  1044.     add.b    d0,(a1)
  1045.     bra    Spring1
  1046. HLow:    move.l    #1,HL
  1047.     move.b    #$30,1(a1)
  1048.     add.b    d0,1(a1)
  1049. Spring1:moveq    #2,d2
  1050.     jsr    PText(pc)
  1051.     bra    WaitChar
  1052. EndWait:jsr    Normal(pc)
  1053.     clr.l    d0
  1054.     clr.l    d1
  1055.     move.l    Stack(pc),a0
  1056.     move.l    Stack+4,a1
  1057.     move.b    (a0),d0
  1058.     clr.w    (a1)
  1059.     subi.b    #$30,d0
  1060.     mulu    #10,d0
  1061.     move.b    1(a0),d1
  1062.     subi.b    #$30,d1
  1063.     add    d1,d0
  1064.     move.w    d0,(a1)
  1065.     cmp.w    #82,(a1)
  1066.     blt    InRange1
  1067.     move.w    #81,(a1)
  1068. InRange1:lea    VonT(pc),a2
  1069.     cmp.l    a1,a2
  1070.     beq    InRange2
  1071.     move.w    (a1),d1
  1072.     move.w    (a2),d2
  1073.     cmp.w    d1,d2
  1074.     bls    InRange3
  1075.     move.w    (a2),(a1)
  1076.     bra    InRange3
  1077. InRange2:lea    BisT(pc),a2
  1078.     move.w    (a1),d1
  1079.     move.w    (a2),d2
  1080.     cmp.w    d1,d2
  1081.     bge    InRange3
  1082.     move.w    (a2),(a1)
  1083. InRange3:move.w    (a1),d0
  1084.     move.w    d0,d1
  1085.     move.w    #$3030,(a0)
  1086.     divu    #10,d0
  1087.     add.b    d0,(a0)
  1088.     mulu    #10,d0
  1089.     sub    d0,d1
  1090.     add.b    d1,1(a0)
  1091.     move.l    a0,a1
  1092.     moveq    #2,d2
  1093.     jsr    PText(pc)
  1094. bra    Main
  1095. ReadError:
  1096.     move.l    d7,Nr
  1097.     jsr    ClearScreen(pc)
  1098.     move.l    IntBase(pc),a6
  1099.     move.l    WindowHd(pc),a0
  1100.     move.l    50(a0),a0
  1101.     lea    Border0(pc),a1
  1102.     moveq    #124,d0
  1103.     moveq    #50,d1
  1104.     jsr    DrawBorder(a6)
  1105.     move.l    WindowHd(pc),a0
  1106.     move.l    50(a0),a0
  1107.     lea    Border0(pc),a1
  1108.     moveq    #124,d0
  1109.     moveq    #80,d1
  1110.     jsr    DrawBorder(a6)
  1111.     moveq    #1,d0
  1112.     jsr    SetPen(pc)
  1113.     clr.l    d0
  1114.     jsr    SetPen2(pc)
  1115.     move.l    #212,x
  1116.     move.l    #20,y
  1117.     lea    Error6(pc),a1
  1118.     moveq    #22,d2
  1119.     jsr    PText(pc)
  1120.     lea    df0(pc),a1
  1121.     addi.l    #184,x
  1122.     move.l    Nr(pc),d0
  1123.     mulu    #5,d0
  1124.     add.l    d0,a1
  1125.     moveq    #4,d2
  1126.     jsr    PText(pc)
  1127.     move.l    #8,x
  1128.     move.l    #57,y
  1129.     lea    Kopf1(pc),a1
  1130.     moveq    #14,d2
  1131.     jsr    PText(pc)
  1132.     addi.l    #9,y
  1133.     lea    Kopf0(pc),a1
  1134.     moveq    #14,d2
  1135.     jsr    Ptext(pc)
  1136.     move.l    #87,y
  1137.     lea    Kopf1(pc),a1
  1138.     moveq    #14,d2
  1139.     jsr    PText(pc)
  1140.     addi.l    #9,y
  1141.     lea    Kopf0(pc),a1
  1142.     moveq    #14,d2
  1143.     jsr    PText(pc)
  1144.     move.l    #125,x
  1145.     move.l    #48,y
  1146.     lea    Error0(pc),a1
  1147.     moveq    #1,d2
  1148.     jsr    PText(pc)
  1149.     move.l    #301,x
  1150.     lea    Error4(pc),a1
  1151.     moveq    #2,d2
  1152.     jsr    PText(pc)
  1153.     move.l    #475,x
  1154.     lea    Error1(pc),a1
  1155.     moveq    #2,d2
  1156.     jsr    PText(pc)
  1157.     move.l    #78,y
  1158.     lea    Error3(pc),a1
  1159.     moveq    #2,d2
  1160.     jsr    PText(pc)
  1161.     move.l    #120,x
  1162.     lea    Error2(pc),a1
  1163.     moveq    #2,d2
  1164.     jsr    PText(pc)
  1165.     move.l    #301,x
  1166.     lea    Error5(pc),a1
  1167.     moveq    #2,d2
  1168.     jsr    PText(pc)
  1169.     move.l    #172,x
  1170.     move.l    #200,y
  1171.     lea    Error9(pc),a1
  1172.     moveq    #37,d2
  1173.     jsr    PText(pc)
  1174.     jsr    GetMem1(pc)
  1175.     tst.l    d0
  1176.     bne    ErrD
  1177.     move.w    #5,Error
  1178.     jsr    ErrorDisplay(pc)
  1179.     bra    Main
  1180. ErrD:    move.l    Nr(pc),d7
  1181.     jsr    InsertRequest(pc)
  1182.     tst.l    d0
  1183.     beq    Main
  1184.     move.l    Nr(pc),d1
  1185.     jsr    DiskInDrive(pc)
  1186.     tst.l    d0
  1187.     bne    ErrD
  1188.     clr.l    Cnt
  1189.     move.l    #125,x
  1190.     move.l    #66,y
  1191. ErrLoop:move.l    Nr(pc),d3
  1192.     move.l    Cnt(pc),d0
  1193.     moveq    #11,d1
  1194.     move.l    Memory1(pc),d2
  1195.     jsr    TrackRead(pc)
  1196.     jsr    DisplayErr(pc)
  1197.     jsr    GetKlick(pc)
  1198.     tst.l    d1
  1199.     bne    ErrEnd
  1200.     cmp.l    #869,cnt
  1201.     bne    SameRow
  1202.     move.l    #96,y
  1203.     move.l    #125,x
  1204. SameRow:addi.l    #11,Cnt
  1205.     cmp.l    #1750,Cnt
  1206.     blt    ErrLoop
  1207. ErrEnd:    jsr    FreiMemory1(pc)
  1208.     move.l    Nr(pc),d1
  1209.     jsr    MotorOff(pc)
  1210. bra    Main
  1211. GetKlick:
  1212.     move.l    execbase,a6
  1213.     move.l    windowhd,a0
  1214.     move.l    86(a0),a0
  1215.     jsr    GetMsg(a6)
  1216.     clr.l    d1
  1217.     tst.l    d0
  1218.     bne    Klick
  1219.     rts
  1220. Klick:    move.l    d0,a0
  1221.     move.l    $14(a0),d0
  1222.     cmp    #8,d0
  1223.     bne    Klick1
  1224.     moveq    #1,d1
  1225. Klick1:    rts
  1226. DisplayErr:
  1227.     move.l    Cnt(pc),d1
  1228.     addi.l    #22,d1
  1229.     divu    #22,d1
  1230.     cmp.l    #$FFFF,d1
  1231.     bgt    KUnten
  1232.     subi.l    #9,y
  1233.     clr.l    Stack
  1234.     bra    DisErr
  1235. KUnten:    addi.l    #9,y
  1236.     move.l    #9,Stack
  1237. DisErr: moveq    #1,d2
  1238.     lea    Error7(pc),a1
  1239.     tst.l    d0
  1240.     beq    NoErr1
  1241.     addq.l    #1,a1
  1242. NoErr1:    jsr    PText(pc)
  1243.     move.l    Stack(pc),d0
  1244.     add.l    d0,x
  1245. rts
  1246. GoCopy:
  1247.     cmp.l    #-1,Nr
  1248.     bne    OriginalOK
  1249.     move.w    #10,Error
  1250.     jsr    ErrorDisplay(pc)
  1251.     bra    Main
  1252. OriginalOK:
  1253.     clr.l    d0
  1254.     add.l    Target0(pc),d0
  1255.     add.l    Target1(pc),d0
  1256.     add.l    Target2(pc),d0
  1257.     add.l    Target3(pc),d0
  1258.     tst.l    d0
  1259.     bne    TargetOK
  1260.     move.w    #11,Error
  1261.     jsr    ErrorDisplay(pc)
  1262.     bra    Main
  1263. TargetOK:
  1264.     tst.l    Mehrmals
  1265.     beq    OneTarget
  1266.     cmp.l    #1,d0
  1267.     beq    OneTarget
  1268.     move.w    #13,Error
  1269.     jsr    ErrorDisplay(pc)
  1270.     bra    Main
  1271. OneTarget:
  1272.     lea    Target0(pc),a0
  1273.     move.l    Nr(pc),d0
  1274.     mulu    #4,d0
  1275.     add.l    d0,a0
  1276.     cmp.l    #1,(a0)
  1277.     beq    MehrOk
  1278.     tst.l    Mehrmals
  1279.     beq    NichtMehrmals
  1280.     move.w    #12,Error
  1281.     jsr    ErrorDisplay(pc)
  1282.     bra    Main
  1283. MehrOk:    tst.l    Mehrmals
  1284.     bne    MehrOk2
  1285.     move.w    #16,Error
  1286.     jsr    ErrorDisplay(pc)
  1287.     bra    Main
  1288. MehrOk2:move.l    Nr(pc),Ziel
  1289.     clr.l    d0
  1290.     jsr    GetMemory(pc)
  1291.     tst.l    d0
  1292.     bne    GotMemory1
  1293.     move.w    #5,Error
  1294.     jsr    ErrorDisplay(pc)
  1295.     bra    ResetView
  1296. GotMemory1:clr.l    d1
  1297.     move.l    MemBytes(pc),d0
  1298.     divu    #11264,d0
  1299.     andi.l    #$ff,d0
  1300.     clr.l    d1
  1301.     move.w    BisT(pc),d1
  1302.     sub.w    VonT(pc),d1
  1303.     addq.l    #1,d1
  1304.     divu    d0,d1
  1305.     cmp.l    #$FFFF,d1
  1306.     blt    NoAdd
  1307.     addq.l    #1,d1
  1308. NoAdd:    andi.l    #$FF,d1
  1309.     cmp.l    #1,d1
  1310.     beq    DannLos1
  1311.     lea    Ma1(pc),a0
  1312.     move.w    #$3030,(a0)
  1313.     move.l    d1,d0
  1314.     divu    #10,d0
  1315.     add.b    d0,(a0)
  1316.     mulu    #10,d0
  1317.     sub.b    d0,d1
  1318.     add.b    d1,1(a0)
  1319.     jsr    CopyRequest4(pc)
  1320.     tst.l    d0
  1321.     bne    DannLos1
  1322.     jsr    FreiMemory(pc)
  1323.     bra    Main
  1324. DannLos1:
  1325.  
  1326.     jsr    FreiMemory(pc)    
  1327. bra    Main
  1328. NichtMehrmals:
  1329.     move.l    #11264,d0
  1330.     jsr    GetMemory(pc)
  1331.     tst.l    d0
  1332.     bne    GotMem2
  1333.     move.w    #5,Error
  1334.     jsr    ErrorDisplay(pc)
  1335.     bra    ResetView
  1336. GotMem2:jsr    GetMem1(pc)
  1337.     tst.l    d0
  1338.     bne    GotMem3
  1339.     jsr    FreiMemory(pc)
  1340.     move.w    #17,Error
  1341.     jsr    ErrorDisplay(pc)
  1342.     bra    Main
  1343. GotMem3:jsr    CopyRequest3(pc)
  1344.     tst.l    d0
  1345.     beq    EndCopy1
  1346.     clr.l    Cnt
  1347. OkLoop:    move.l    Cnt(pc),d0
  1348.     lea    Target0(pc),a0
  1349.     mulu    #4,d0
  1350.     add.l    d0,a0
  1351.     move.l    (a0),d0
  1352.     tst.l    d0
  1353.     beq    NextOK3
  1354. InAgain:move.l    Cnt(pc),d1
  1355.     jsr    DiskinDrive(pc)
  1356.     tst.l    d0
  1357.     beq    NextOK2
  1358.     move.l    Cnt(pc),d7
  1359.     jsr    InsertRequest(pc)
  1360.     tst.l    d0
  1361.     bne    InAgain
  1362.     bra    EndCopy1
  1363. NextOk2:move.l    Cnt(pc),d1
  1364.     jsr    DiskProtect(pc)
  1365.     tst.l    d0
  1366.     beq    NextOk3
  1367.     move.l    Cnt(pc),d7
  1368.     jsr    WriteRequest(pc)
  1369.     tst.l    d0
  1370.     bne    NextOk2
  1371.     bra    EndCopy1
  1372. NextOk3:addq.l    #1,Cnt
  1373.     cmp.l    #4,Cnt
  1374.     bne    OkLoop
  1375. NextOK4:move.l    Nr(pc),d1
  1376.     jsr    DiskInDrive(pc)
  1377.     tst.l    d0
  1378.     beq    NextOk5
  1379.     move.l    Nr(pc),d7
  1380.     jsr    InsertRequest(pc)
  1381.     tst.l    d0
  1382.     bne    NextOK4
  1383.     bra    EndCopy1
  1384. NextOK5:move.w    VonT(pc),Cnt
  1385.     move.l    #536,x
  1386.     moveq    #2,d0
  1387.     jsr    SetPen(pc)
  1388.     clr.l    d0
  1389.     jsr    SetPen2(pc)
  1390. CopyLoop:jsr    GetKlick(pc)
  1391.     tst.l    d1
  1392.     bne    Finished
  1393.     move.l    #200,y
  1394.     clr.l    d0
  1395.     move.w    Cnt(pc),d0
  1396.     jsr    PTrack(pc)
  1397.     move.l    Memory(pc),d2
  1398.     clr.l    d0
  1399.     move.w    Cnt(pc),d0
  1400.     mulu    #22,d0
  1401.     moveq    #22,d1
  1402.     move.l    Nr(pc),d3
  1403.     jsr    TrackRead(pc)
  1404.     tst.b    d0
  1405.     beq    NoErrorR
  1406.     move.w    #14,Error
  1407.     jsr    ErrorDisplay(pc)
  1408.     bra    EndCopy1
  1409. NoErrorR:move.l    #210,y
  1410.     clr.l    d0
  1411.     move.w    Cnt(pc),d0
  1412.     jsr    PTrack(pc)
  1413.     clr.l    Cnt1
  1414. WLoop1:    lea    Target0(pc),a0
  1415.     move.l    Cnt1(pc),d0
  1416.     mulu    #4,d0
  1417.     add.l    d0,a0
  1418.     move.l    (a0),d0
  1419.     tst.l    d0
  1420.     beq    NoVerify
  1421.     clr.l    d0
  1422.     move.w    Cnt(pc),d0
  1423.     mulu    #22,d0
  1424.     moveq    #22,d1
  1425.     move.l    Cnt1(pc),d3
  1426.     move.l    Memory(pc),d2
  1427.     jsr    TrackWrite(pc)
  1428.     tst.b    d0
  1429.     beq    NoErrorW
  1430.     move.w    #15,Error
  1431.     jsr    ErrorDisplay(pc)
  1432.     bra    EndCopy1
  1433. NoErrorW:jsr    GetKlick(pc)
  1434.     tst.l    d1
  1435.     bne    Finished
  1436.     tst.l    Checking
  1437.     beq    NoVerify
  1438.     clr.l    d0
  1439.     move.w    Cnt(pc),d0
  1440.     mulu    #22,d0
  1441.     moveq    #22,d1
  1442.     move.l    Memory1(pc),d2
  1443.     move.l    Cnt1(pc),d3
  1444.     jsr    TrackRead(pc)
  1445.     tst.b    d0
  1446.     beq    NoVerify
  1447.     move.w    #18,Error
  1448.     jsr    ErrorDisplay(pc)
  1449. NoVerify:addq.l    #1,Cnt1
  1450.     cmp.l    #4,Cnt1
  1451.     bne    WLoop1
  1452.     move.w    Cnt(pc),d0
  1453.     cmp.w    BisT(pc),d0
  1454.     beq    Finished
  1455.     addq.w    #1,Cnt
  1456.     bra    CopyLoop
  1457. Finished:move.l    Nr(pc),d1
  1458.     jsr    MotorOff(pc)
  1459.     clr.l    Cnt1
  1460. FLoop1: lea    Target0(pc),a0
  1461.     move.l    Cnt1(pc),d0
  1462.     mulu    #4,d0
  1463.     add.l    d0,a0
  1464.     move.l    (a0),d0
  1465.     tst.l    d0
  1466.     beq    NextF
  1467.     move.l    Cnt1(pc),d1
  1468.     jsr    MotorOff(pc)
  1469. NextF:    addq.l    #1,Cnt1
  1470.     cmp.l    #4,Cnt1
  1471.     bne    FLoop1
  1472. EndCopy1:jsr    FreiMemory(pc)
  1473.     jsr    FreiMemory1(pc)
  1474. bra    Main
  1475. PTrack:    clr.l    d1
  1476.     lea    UBlocks(pc),a0
  1477.     move.w    #$3030,(a0)
  1478.     move.w    d0,d1
  1479.     divu    #10,d0
  1480.     add.b    d0,(a0)
  1481.     mulu    #10,d0
  1482.     sub.b    d0,d1
  1483.     add.b    d1,1(a0)
  1484.     moveq    #2,d2
  1485.     lea    UBlocks(pc),a1
  1486.     jsr    PText(pc)
  1487. rts
  1488. FreiMemory:
  1489.     move.l    MemBytes(pc),d0
  1490.     move.l    Memory(pc),a1
  1491.     move.l    ExecBase,a6
  1492.     jsr    FreeMem(a6)
  1493. rts
  1494. FreiMemory1:
  1495.     move.l    #11264,d0
  1496.     move.l    Memory1(pc),a1
  1497.     move.l    ExecBase,a6
  1498.     jsr    FreeMem(a6)
  1499. rts
  1500. GetMemory:
  1501.     tst.l    d0
  1502.     bne    GetM1
  1503.     clr.l    d1
  1504.     move.l    ExecBase,a6
  1505.     jsr    AvailMem(a6)
  1506.     sub.l    #40000,d0
  1507.     divu    #11264,d0
  1508.     move.w    BisT(pc),d1
  1509.     sub.w    VonT(pc),d1
  1510.     addq.l    #1,d1
  1511.     tst.w    d0
  1512.     bgt    NichtNull
  1513.     clr.l    d0
  1514.     rts
  1515. NichtNull:
  1516.     cmp.w    d0,d1
  1517.     bgt    IstDa
  1518.     move.w    d1,d0
  1519. IstDa:    move.w    d0,TPerRead
  1520.     mulu    #11264,d0
  1521. GetM1:    move.l    d0,MemBytes
  1522.     move.l    #$10002,d1
  1523.     move.l    execbase,a6
  1524.     jsr    AllocMem(a6)
  1525.     move.l    d0,Memory
  1526. rts
  1527. GetMem1:
  1528.     move.l    #11264,d0
  1529.     move.l    #$10002,d1
  1530.     move.l    ExecBase,a6
  1531.     jsr    AllocMem(a6)
  1532.     move.l    d0,Memory1
  1533. rts
  1534. View:    move.l    d7,Nr
  1535.     move.l    #880,Block
  1536.     move.l    #$38383000,InBuffer
  1537.     move.l    #$38383000,UnBuffer
  1538.     move.l    WindowHd(pc),a0
  1539.     move.l    IntBase(pc),a6
  1540.     jsr    CloseWindow(a6)
  1541.     move.l    #Gad1,d0
  1542.     move.l    d0,Window+18
  1543.     move.l    #$18768,Window+10
  1544.     lea    Window(pc),a0
  1545.     jsr    OpenWindow(a6)
  1546.     move.l    d0,WindowHd
  1547. ViewAgain:
  1548.     move.l    Nr(pc),d1
  1549.     jsr    DiskInDrive(pc)
  1550.     tst.l    d0
  1551.     beq    ViewGo
  1552.     jsr    InsertRequest(pc)
  1553.     cmp.l    #1,d0
  1554.     beq    ViewAgain
  1555.     bra    ResetView
  1556. ViewGo:    moveq    #1,d0
  1557.     jsr    SetPen(pc)
  1558.     clr.l    x
  1559.     move.l    #15,y
  1560.     clr.l    Cnt
  1561. ViewLoop:lea    Offset(pc),a1
  1562.     move.l    Cnt(pc),d0
  1563.     mulu    #4,d0
  1564.     add.l    d0,a1
  1565.     moveq    #4,d2
  1566.     jsr    PText(pc)
  1567.     addi.l    #8,y
  1568.     addq.l    #1,Cnt
  1569.     cmp.l    #26,Cnt
  1570.     blt    ViewLoop
  1571.     move.l    #573,x
  1572.     move.l    #23,y
  1573.     moveq    #8,d2
  1574.     lea    Inst(pc),a1
  1575.     jsr    PText(pc)
  1576.     move.l    Block(pc),d0
  1577.     moveq    #1,d1
  1578.     move.l    ReadBuffer(pc),d2
  1579.     jsr    DiskRead(pc)
  1580.     move.l    #15,y
  1581.     move.l    #40,x
  1582.     jsr    ViewBuffer(pc)
  1583.     jsr    BlockType(pc)
  1584.     move.l    #1,ViewActive
  1585. jmp    Main(pc)
  1586. ClearDrive:
  1587.     clr.l    d0
  1588.     jsr    SetPen2(pc)
  1589.     moveq    #11,d0
  1590.     jsr    SetPen(pc)
  1591. SparDrive:
  1592.     lea    df0(pc),a1
  1593.     move.l    Nr(pc),d0
  1594.     move.l    d0,d1
  1595.     mulu    #5,d0
  1596.     add    d0,a1
  1597.     move.l    #58,y
  1598.     move.l    #104,x
  1599.     mulu    #50,d1
  1600.     add.l    d1,x
  1601.     moveq    #4,d2
  1602.     jsr    PText(pc)
  1603. rts
  1604. InversDrive:
  1605.     moveq    #13,d0
  1606.     jsr    SetPen(pc)
  1607.     moveq    #15,d0
  1608.     jsr    SetPen2(pc)
  1609. jmp    SparDrive(pc)
  1610. ClearDrive1:
  1611.     clr.l    d0
  1612.     jsr    SetPen2(pc)
  1613.     moveq    #10,d0
  1614.     jsr    SetPen(pc)
  1615.     move.l    #108,y
  1616.     tst.l    Target0
  1617.     bne    NotT0
  1618.     lea    Df0(pc),a1
  1619.     move.l    #104,x
  1620.     moveq    #4,d2
  1621.     jsr    PText(pc)
  1622. NotT0:    tst.l    Target1
  1623.     bne    NotT1
  1624.     lea    df1(pc),a1
  1625.     move.l    #154,x
  1626.     moveq    #4,d2
  1627.     jsr    PText(pc)
  1628. NotT1:    tst.l    Target2
  1629.     bne    NotT2
  1630.     lea    df2(pc),a1
  1631.     move.l    #204,x
  1632.     moveq    #4,d2
  1633.     jsr    PText(pc)
  1634. NotT2:    tst.l    Target3
  1635.     bne    NotT3
  1636.     lea    df3(pc),a1
  1637.     move.l    #254,x
  1638.     moveq    #4,d2
  1639.     jsr    PText(pc)
  1640. NotT3:
  1641. rts
  1642. InversDrive1:
  1643.     moveq    #12,d0
  1644.     jsr    SetPen(pc)
  1645.     moveq    #15,d0
  1646.     jsr    Setpen2(pc)
  1647.     move.l    #108,y
  1648.     tst.l    Target0
  1649.     beq    NoI0
  1650.     lea    Df0(pc),a1
  1651.     move.l    #104,x
  1652.     moveq    #4,d2
  1653.     jsr    PText(pc)
  1654. NoI0:    tst.l    Target1
  1655.     beq    NoI1
  1656.     lea    df1(pc),a1
  1657.     move.l    #154,x
  1658.     moveq    #4,d2
  1659.     jsr    PText(pc)
  1660. NoI1:    tst.l    Target2
  1661.     beq    NoI2
  1662.     lea    df2(pc),a1
  1663.     move.l    #204,x
  1664.     moveq    #4,d2
  1665.     jsr    PText(pc)
  1666. NoI2:    tst.l    Target3
  1667.     beq    NoI3
  1668.     lea    df3(pc),a1
  1669.     move.l    #254,x
  1670.     moveq    #4,d2
  1671.     jsr    PText(pc)
  1672. NoI3:
  1673. rts
  1674. BitMap:    move.l    d7,Nr
  1675. BitAgain:
  1676.     jsr    DiskInDrive(pc)
  1677.     tst.l    d0
  1678.     beq    BitGo
  1679.     jsr    InsertRequest(pc)
  1680.     cmp.l    #1,d0
  1681.     beq    BitAgain
  1682.     bra    Main
  1683. BitGo:    move.l    #880,d0
  1684.     moveq    #1,d1
  1685.     move.l    ReadBuffer(pc),d2
  1686.     jsr    DiskRead(pc)
  1687.     move.l    ReadBuffer(pc),a0
  1688.     move.l    312(a0),d0
  1689.     tst.l    d0
  1690.     bne    Gueltig
  1691.     jsr    MotorOff(pc)
  1692.     move.w    #7,Error
  1693.     jsr    ErrorDisplay(pc)
  1694.     bra    Main
  1695. Gueltig:move.l    316(a0),d0
  1696.     moveq    #1,d1
  1697.     move.l    ReadBuffer(pc),d2
  1698.     jsr    DiskRead(pc)
  1699.     jsr    MotorOFF(pc)
  1700.     jsr    ClearScreen(pc)
  1701.     moveq    #1,d0
  1702.     jsr    SetPen(pc)
  1703.     move.l    #500,x
  1704.     move.l    #43,y
  1705.     moveq    #7,d2
  1706.     lea    Seite0(pc),a1
  1707.     jsr    PText(pc)
  1708.     move.l    #115,y
  1709.     moveq    #7,d2
  1710.     lea    Seite1(pc),a1
  1711.     jsr    PText(pc)
  1712.     clr.l    x
  1713.     move.l    #156,y
  1714.     moveq    #1,d2
  1715.     lea    T1(pc),a1
  1716.     jsr    PText(pc)
  1717.     move.l    #466,x
  1718.     moveq    #2,d2
  1719.     lea    T80(pc),a1
  1720.     jsr    PText(pc)
  1721.     move.l    #480,x
  1722.     move.l    #16,y
  1723.     moveq    #9,d2
  1724.     lea    Sektor1(pc),a1
  1725.     jsr    PText(pc)
  1726.     move.l    #74,y
  1727.     moveq    #10,d2
  1728.     lea    Sektor11(pc),a1
  1729.     jsr    PText(pc)
  1730.     move.l    #88,y
  1731.     moveq    #9,d2
  1732.     lea    Sektor1(pc),a1
  1733.     jsr    PText(pc)
  1734.     move.l    #146,y
  1735.     moveq    #10,d2
  1736.     lea    Sektor11(pc),a1
  1737.     jsr    PText(pc)
  1738.     moveq    #3,d0
  1739.     jsr    SetPen(pc)
  1740.     clr.l    xx
  1741.     clr.l    yy
  1742.     jsr    Fill2(pc)
  1743.     move.l    #1,yy
  1744.     jsr    Fill2(pc)
  1745.     move.l    #2,yy
  1746.     move.l    #32,Cnt
  1747.     move.l    ReadBuffer(pc),ReadHelp
  1748. Calc:    addq.l    #4,ReadHelp
  1749.     move.l    ReadHelp(pc),a5
  1750.     move.l    (a5),Long
  1751.     move.l    a5,ReadHelp
  1752. X1:    move.l    Long(pc),d0
  1753.     andi.l    #%1,d0
  1754.     cmp.l    #1,d0
  1755.     bne    noSet
  1756.     moveq    #1,d0
  1757.     bra    WeiterBit1
  1758. noSet:    moveq    #3,d0
  1759. WeiterBit1:
  1760.     jsr    SetPen(pc)
  1761.     cmp.l    #11,yy
  1762.     blt    LowerThen
  1763.     jsr    Fill1(pc)
  1764.     bra    WeiterBit2
  1765. LowerThen:
  1766.     jsr    Fill2(pc)
  1767. WeiterBit2:
  1768.     move.l    Long(pc),d0
  1769.     ror.l    #1,d0
  1770.     move.l    d0,Long
  1771.     addq.l    #1,yy
  1772.     cmp.l    #22,yy
  1773.     bne    WeiterBit3
  1774.     clr.l    yy
  1775.     addq.l    #1,xx
  1776.     cmp.l    #80,xx
  1777.     beq    ReadyBit
  1778. WeiterBit3:
  1779.     sub.l    #1,Cnt
  1780.     tst.l    Cnt
  1781.     beq    WeiterBit4
  1782.     bra    X1
  1783. WeiterBit4:
  1784.     move.l    #32,Cnt
  1785.     bra    Calc    
  1786. ReadyBit:    
  1787. bra    Main
  1788. Fill1:    move.l    yy(pc),d1
  1789.     addq    #1,d1
  1790.     bra    Fill
  1791. Fill2:    move.l    yy(pc),d1
  1792. Fill:    mulu    #6,d1
  1793.     move.l    xx(pc),d0
  1794.     mulu    #6,d0
  1795.     addi.l    #10,d1
  1796.     move.l    d0,d2
  1797.     addq    #4,d2
  1798.     move.l    d1,d3
  1799.     addq    #4,d3
  1800.     move.l    WindowHd(pc),a1
  1801.     move.l    50(a1),a1
  1802.     move.l    GraphicBase(pc),a6
  1803.     jsr    RectFill(a6)
  1804. rts
  1805. BlockType:
  1806.     move.l    #1,x
  1807.     move.l    #230,y
  1808.     moveq    #9,d2
  1809.     lea    Block1(pc),a1
  1810.     jsr    PText(pc)
  1811.     moveq    #2,d0
  1812.     jsr    SetPen(pc)
  1813.     move.l    ReadBuffer(pc),a0
  1814.     move.l    (a0),d0
  1815.     move.l    508(a0),d1
  1816.     cmp.l    #2,d0
  1817.     bne    OtherBlock1
  1818.     cmp.l    #1,d1
  1819.     bne    NoRoot
  1820.     lea    Block2(pc),a1
  1821.     move.l    #1,CheckType
  1822.     bra    ShowType
  1823. NoRoot:    cmp.l    #2,d1
  1824.     bne    NoDir
  1825.     lea    Block3(pc),a1
  1826.     move.l    #1,CheckType
  1827.     bra    ShowType
  1828. NoDir:    cmp.l    #-3,d1
  1829.     bne    UnKnown
  1830.     lea    Block4(pc),a1
  1831.     move.l    #1,CheckType
  1832.     bra    ShowType
  1833. OtherBlock1:
  1834.     cmp.l    #8,d0
  1835.     bne    NoData
  1836.     lea    Block6(pc),a1
  1837.     move.l    #1,CheckType
  1838.     bra    ShowType
  1839. NoData:    cmp.l    #16,d0
  1840.     bne    NoCont
  1841.     cmp.l    #-3,d1
  1842.     bne    UnKnown
  1843.     lea    Block5(pc),a1
  1844.     move.l    #1,CheckType
  1845.     bra    ShowType
  1846. NoCont:    move.l    Block,d0
  1847.     tst.l    d0
  1848.     bne    Nr1
  1849.     lea    Block8(pc),a1
  1850.     move.l    #3,CheckType
  1851.     bra    ShowType
  1852. Nr1:    cmp.l    #1,d0
  1853.     bne    Sectorx
  1854.     lea    Block9(pc),a1
  1855.     move.l    #3,CheckType
  1856.     bra    ShowType
  1857. Sectorx:move.b    (a0),d0
  1858.     move.b    508(a0),d1
  1859.     cmp.b    d0,d1
  1860.     bne    Sectorx1
  1861.     cmp.b    #"D",d0
  1862.     bne    SectorX1
  1863.     clr.l    CheckType
  1864.     lea    Block11(pc),a1
  1865.     bra    ShowType
  1866. Sectorx1:
  1867.     move.w    (a0),d0
  1868.     cmp.w    #"DO",d0
  1869.     beq    UnKnown
  1870.     lea    Block7(pc),a1
  1871.     move.l    #2,CheckType
  1872.     bra    ShowType
  1873. UnKnown:clr.l    CheckType
  1874.     lea    Block10(pc),a1
  1875. ShowType:
  1876.     moveq    #23,d2
  1877.     move.l    #85,x
  1878.     jsr    PText(pc)
  1879.     moveq    #1,d0
  1880.     jsr    SetPen(pc)
  1881. rts
  1882. ViewBuffer:
  1883.     move.l    #40,x
  1884.     move.l    #17,y
  1885.     clr.l    Cnt
  1886.     move.l    #1,Row
  1887.     lea    String(pc),a1
  1888.     move.l    a1,a2
  1889.     addi.l    #46,a2
  1890. BLoop:    clr.l    d0
  1891.     move.b    #$30,(a1)
  1892.     move.b    #$30,1(a1)
  1893.     move.b    #$30,(a2)
  1894.     Move.l    ReadBuffer(pc),a0
  1895.     add.l    Cnt(pc),a0
  1896.     move.b    (a0),d0
  1897.     move.l    d0,Backup
  1898.     move.l    d0,d1
  1899.     divu    #$10,d1
  1900.     add.b    d1,(a1)
  1901.     cmp.b    #57,(a1)
  1902.     bls    GoB1
  1903.     add.b    #7,(a1)
  1904. GoB1:    mulu    #$10,d1
  1905.     sub.b    d1,d0
  1906.     add.b    d0,1(a1)
  1907.     cmp.b    #57,1(a1)
  1908.     bls    GoB2
  1909.     add.b    #7,1(a1)
  1910. GoB2:    move.l    Backup,d0
  1911.     cmp.l    #31,d0
  1912.     bls    NoChar
  1913.     cmp.l    #128,d0
  1914.     bge    NoChar1
  1915. MakeChar:
  1916.     move.b    d0,(a2)
  1917.     bra    DoChar
  1918. NoChar1:cmp.l    #159,d0
  1919.     bls    NoChar
  1920.     bra    MakeChar
  1921. NoChar:    move.b    #46,(a2)
  1922. DoChar:    addq.l    #2,a1
  1923.     addq.l    #1,a2
  1924.     move.l    Row(pc),d0
  1925.     divu    #4,d0
  1926.     swap    d0
  1927.     tst.w    d0
  1928.     bne    NoLong
  1929.     addq.l    #1,a1
  1930. NoLong:    addq.l    #1,Row
  1931.     addq.l    #1,Cnt
  1932.     cmp.l    #512,Cnt
  1933.     beq    ReadyView
  1934.     cmp.l    #21,Row
  1935.     blt    BLoop
  1936.     moveq    #66,d2
  1937.     lea    String(pc),a1
  1938.     jsr    PText(pc)
  1939.     Move.l    #1,Row
  1940.     addi.l    #8,y
  1941.     lea    String(pc),a1
  1942.     move.l    a1,a2
  1943.     addi.l    #46,a2
  1944.     bra    BLoop
  1945. ReadyView:
  1946.     lea    String(pc),a1
  1947.     move.l    #$20202020,58(a1)
  1948.     move.l    #$20202020,62(a1)
  1949.     addi.l    #27,a1
  1950.     moveq    #16,d0
  1951. ViewL2:    move.b    #$20,(a1)+
  1952.     dbra    d0,ViewL2
  1953.     lea    String(pc),a1
  1954.     moveq    #65,d2
  1955.     lea    String(pc),a1
  1956. bra    PText
  1957. HolMem:    move.l    #1024,d0
  1958.     move.l    #$10002,d1
  1959.     move.l    execbase,a6
  1960.     jsr    AllocMem(a6)
  1961.     move.l    d0,ReadBuffer
  1962.     bne    GotMem
  1963.     move.w    #5,Error
  1964.     bra    ErrorDisplay
  1965. GotMem:
  1966. rts
  1967. WegMem:    tst.l    ReadBuffer
  1968.     beq    SchonWeg
  1969.     move.l    #1024,d0
  1970.     move.l    ReadBuffer(pc),a1
  1971.     move.l    ExecBase,a6
  1972.     jsr    FreeMem(a6)
  1973.     clr.l    ReadBuffer
  1974. SchonWeg:
  1975. rts
  1976. OpenDisk:
  1977.     move.l    ExecBase,a6
  1978.     sub.l    a1,a1
  1979.     jsr    FindTask(a6)
  1980.     move.l    d0,diskrep+16
  1981.     lea    Diskrep(pc),a1
  1982.     jsr    AddPort(a6)
  1983.     lea    DiskIO0(pc),a1
  1984.     move.l    #diskrep,14(a1)
  1985.     clr.l    d0
  1986.     clr.l    d1
  1987.     lea    TrackName(pc),a0
  1988.     jsr    OpenDev(a6)
  1989.     tst.l    d0
  1990.     beq    OKDisk1
  1991.     move.w    #6,Error
  1992.     bra    ErrorDisplay
  1993. OKDisk1:move.l    #"df0:",Disk0
  1994.     lea    DiskIO1(pc),a1
  1995.     move.l    #diskrep,14(a1)
  1996.     moveq    #1,d0
  1997.     clr.l    d1
  1998.     lea    TrackName(pc),a0
  1999.     jsr    OpenDev(a6)
  2000.     tst.l    d0
  2001.     bne    OKDisk2
  2002.     move.l    #"df1:",Disk1
  2003. OKDisk2:lea    DiskIO2(pc),a1
  2004.     move.l    #diskrep,14(a1)
  2005.     moveq    #2,d0
  2006.     clr.l    d1
  2007.     lea    TrackName(pc),a0
  2008.     jsr    OpenDev(a6)
  2009.     tst.l    d0
  2010.     bne    OKDisk3
  2011.     move.l    #"df2:",Disk2
  2012. OKDisk3:lea    DiskIO3(pc),a1
  2013.     move.l    #diskrep,14(a1)
  2014.     moveq    #3,d0
  2015.     clr.l    d1
  2016.     lea    TrackName(pc),a0
  2017.     jsr    OpenDev(a6)
  2018.     tst.l    d0
  2019.     bne    OKDisk4
  2020.     move.l    #"df3:",Disk3
  2021. OKDisk4:tst.l    Disk1
  2022.     bne    OkM2
  2023.     subi.w    #$10,Punkt232+12
  2024.     subi.w    #$10,Punkt242+12
  2025.     subi.w    #$10,Punkt262+12
  2026. OKM2:    tst.l    Disk2
  2027.     bne    OKM3
  2028.     subi.w    #$10,Punkt233+12
  2029.     subi.w    #$10,Punkt243+12
  2030.     subi.w    #$10,Punkt263+12
  2031. OKM3:    tst.l    Disk3
  2032.     bne    OKM4
  2033.     subi.w    #$10,Punkt234+12
  2034.     subi.w    #$10,Punkt244+12
  2035.     subi.w    #$10,Punkt264+12
  2036. OKM4:    rts
  2037. CloseDisk:
  2038.     move.l    ExecBase,a6
  2039.     lea    DiskRep(pc),a1
  2040.     jsr    RemPort(a6)
  2041.     tst.l    Disk0
  2042.     beq    CDisk1
  2043.     lea    DiskIO0(pc),a1
  2044.     jsr    CloseDev(a6)
  2045. CDisk1:    tst.l    Disk1
  2046.     beq    CDisk2
  2047.     lea    DiskIO1(pc),a1
  2048.     jsr    CloseDev(a6)
  2049. CDisk2:    tst.l    Disk2
  2050.     beq    CDisk3
  2051.     lea    DiskIO2(pc),a1
  2052.     jsr    CloseDev(a6)
  2053. CDisk3:    tst.l    Disk3
  2054.     beq    CDisk
  2055.     lea    DiskIO3(pc),a1
  2056.     jsr    CloseDev(a6)
  2057. CDisk:    clr.l    Disk0
  2058.     clr.l    Disk1
  2059.     clr.l    Disk2
  2060.     clr.l    Disk3
  2061. rts
  2062. ScreenOn:
  2063.     move.l    IntBase(pc),a6
  2064.     Lea    Screen(pc),a0
  2065.     jsr    OpenScreen(a6)
  2066.     move.l    d0,ScreenHd
  2067.     tst.l    d0
  2068.     bne    OKWindow
  2069.     move.w    #1,Error
  2070.     bra    ErrorDisplay
  2071. OKWindow:
  2072.     lea    Window(pc),a0
  2073.     jsr    OpenWindow(a6)
  2074.     move.l    d0,WindowHd
  2075.     tst.l    d0
  2076.     bne    OKMenu
  2077.     move.w    #2,Error
  2078.     bra    ErrorDisplay
  2079. OKMenu:    move.l    d0,a0
  2080.     lea    Menu(pc),a1
  2081.     jsr    SetMenu(a6)
  2082.     clr.w    Error
  2083. rts
  2084. ScreenOff:
  2085.     tst.l    WindowHd
  2086.     beq    NotWindow
  2087.     move.l    intbase(pc),a6
  2088.     move.l    WindowHd(pc),a0
  2089.     jsr    ClearMenu(a6)
  2090.     move.l    WindowHd(pc),a0
  2091.     jsr    CloseWindow(a6)
  2092. NotWindow:
  2093.     tst.l    ScreenHd
  2094.     beq    NotScreen
  2095.     move.l    ScreenHd(pc),a0
  2096.     jsr    CloseScreen(a6)
  2097. NotScreen:
  2098. rts
  2099. OpenLibs:
  2100.     move.l    ExecBase,a6
  2101.     lea    Intname(pc),a1
  2102.     jsr    OpenLib(a6)
  2103.     move.l    d0,IntBase
  2104.     tst.l    d0
  2105.     bne    OkDos
  2106.     bra    ErrorDisplay
  2107. OkDos:    lea    dosname(pc),a1
  2108.     jsr    OpenLib(a6)
  2109.     move.l    d0,DosBase
  2110.     tst.l    d0
  2111.     bne    OkGraphic
  2112.     move.w    #3,Error
  2113.     bra    ErrorDisplay
  2114. OkGraphic:
  2115.     lea    Graphicname(pc),a1
  2116.     jsr    OpenLib(a6)
  2117.     move.l    d0,GraphicBase
  2118.     tst.l    d0
  2119.     bne    OkLibs
  2120.     move.w    #4,Error
  2121.     bra    ErrorDisplay
  2122. OkLibs: clr.w    Error
  2123. rts
  2124. CloseLibs:move.l    ExecBase,a6
  2125.     tst.l    DosBase
  2126.     beq    NoClose1
  2127.     move.l    DosBase(pc),a1
  2128.     jsr    CloseLib(a6)
  2129. NoClose1:tst.l    GraphicBase
  2130.     beq    NoClose2
  2131.     move.l    GraphicBase(pc),a1
  2132.     jsr    CloseLib(a6)
  2133. NoClose2:tst.l    IntBase
  2134.     beq    NoClose3
  2135.     move.l    IntBase(pc),a1
  2136.     jsr    CloseLib(a6)
  2137. NoClose3:clr.l    DosBase
  2138.     clr.l    GraphicBase
  2139.     clr.l    IntBase
  2140. rts
  2141. SetPen:    move.l    WindowHd(pc),a1
  2142.     move.l    50(a1),a1
  2143.     move.l    graphicBase(pc),a6
  2144.     jsr    SetAPen(a6)
  2145. rts
  2146. SetPen2:move.l    WindowHd(pc),a1
  2147.     move.l    50(a1),a1
  2148.     move.l    GraphicBase(pc),a6
  2149.     jsr    SetBPen(a6)
  2150. rts
  2151. Infos:    jsr    ClearScreen(pc)
  2152.     moveq    #1,d0
  2153.     jsr    SetPen(pc)
  2154.     clr.l    Nr
  2155.     move.l    #4,Cnt
  2156.     move.l    #20,x
  2157.     move.l    #20,y
  2158. ILoop:    move.l    Nr(pc),d5
  2159.     mulu    #5,d5
  2160.     lea    df0(pc),a1
  2161.     add.l    d5,a1
  2162.     moveq    #4,d2
  2163.     move.l    #20,x
  2164.     jsr    PText(pc)
  2165.     lea    Disk0(pc),a0
  2166.     move.l    Nr,d5
  2167.     mulu    #4,d5
  2168.     add    d5,a0
  2169.     tst.l    (a0)
  2170.     bne    Connect
  2171.     move.l    #52,x
  2172.     moveq    #21,d2
  2173.     lea    NichtDa(Pc),a1
  2174.     jsr    PText(pc)
  2175.     bra    NextDrive
  2176. Connect:move.l    #52,x
  2177.     move.l    Nr(pc),d0
  2178.     jsr    DiskType(pc)
  2179.     cmp.l    #1,d0
  2180.     bne    FuenfZ
  2181.     lea    DreiZoll(pc),a1
  2182.     moveq    #21,d2
  2183.     jsr    PText(pc)
  2184.     bra    DinD
  2185. FuenfZ:    lea    FuenfZoll(pc),a1
  2186.     moveq    #21,d2
  2187.     jsr    PText(pc)        
  2188. DinD:    addi.l    #10,y
  2189.     move.l    Nr(pc),d1
  2190.     jsr    DiskInDrive(pc)
  2191.     tst.l    d0
  2192.     beq    IstDrin
  2193.     move.l    #52,x
  2194.     lea    Empty(pc),a1
  2195.     moveq    #26,d2
  2196.     jsr    PText(pc)
  2197.     bra    NextDrive
  2198. IstDrin:move.l    Nr(pc),d1
  2199.     move.l    #52,x
  2200.     jsr    DiskProtect(pc)
  2201.     tst.l    d0
  2202.     beq    NotProtect
  2203.     lea    Protect(pc),a1
  2204.     moveq    #31,d2
  2205.     jsr    PText(pc)
  2206.     bra    NBlocks
  2207. NotProtect:
  2208.     lea    Enable(pc),a1
  2209.     moveq    #37,d2
  2210.     jsr    PText(pc)
  2211. NBlocks:addi.l    #10,y
  2212.     move.l    #52,x
  2213.     moveq    #-2,d2
  2214.     move.l    #df0,d1
  2215.     move.l    Nr(pc),d3
  2216.     mulu    #5,d3
  2217.     add    d3,d1
  2218.     move.l    DosBase(pc),a6
  2219.     jsr    Lock(a6)
  2220.     move.l    d0,FileHd
  2221.     tst.l    d0
  2222.     beq    NextDrive
  2223.     move.l    d0,d1
  2224.     move.l    #IBlock,d2
  2225.     jsr    Info(a6)
  2226.     move.l    FileHd(pc),d1
  2227.     move.l    #IBlock2,d2
  2228.     jsr    Examine(a6)
  2229.     move.l    FileHd(pc),d1
  2230.     jsr    UnLock(a6)
  2231.     lea    Blocks(pc),a1
  2232.     moveq    #34,d2
  2233.     jsr    PText(pc)
  2234.     move.l    #IBlock,a0
  2235.     move.l    16(a0),d0
  2236.     jsr    MakeText(pc)
  2237.     move.l    #324,x
  2238.     jsr    PText(pc)
  2239.     move.l    #364,x
  2240.     moveq    #7,d2
  2241.     lea    Used(pc),a1
  2242.     jsr    PText(pc)
  2243.     move.l    #60,x
  2244.     addi.l    #10,y
  2245.     lea    DName(pc),a1
  2246.     moveq    #15,d2
  2247.     jsr    PText(pc)
  2248.     move.l    #188,x
  2249.     lea    IBlock2(pc),a1
  2250.     addi.l    #8,a1
  2251.     jsr    Len(pc)
  2252.     jsr    PText(pc)
  2253. NextDrive:
  2254.     move.l    #20,x
  2255.     addi.l    #20,y
  2256.     addq.l    #1,Nr
  2257.     subq.l    #1,Cnt
  2258.     tst.l    Cnt
  2259.     bne    ILoop
  2260.     moveq    #4,d2
  2261.     lea    Ram(pc),a1
  2262.     jsr    PText(pc)
  2263.     addi.l    #40,x
  2264.     moveq    #10,d2
  2265.     lea    Fast(pc),a1
  2266.     jsr    PText(pc)
  2267.     moveq    #4,d1
  2268.     jsr    Avail(pc)
  2269.     jsr    MakeT2(pc)
  2270.     addi.l    #80,x
  2271.     jsr    PText(pc)
  2272.     addi.l    #64,x
  2273.     moveq    #11,d2
  2274.     lea    Frei(pc),a1
  2275.     jsr    PText(pc)
  2276.     addi.l    #10,y
  2277.     move.l    #60,x
  2278.     moveq    #10,d2
  2279.     lea    Chip(pc),a1
  2280.     jsr    PTExt(pc)
  2281.     moveq    #2,d1
  2282.     jsr    Avail(pc)
  2283.     jsr    MakeT2(pc)
  2284.     addi.l    #80,x
  2285.     jsr    PText(pc)
  2286.     addi.l    #64,x
  2287.     moveq    #11,d2
  2288.     lea    Frei(pc),a1
  2289.     jsr    PText(pc)
  2290. bra    Main
  2291. Avail:    move.l    execbase,a6
  2292.     jsr    AvailMem(a6)
  2293. rts
  2294. MakeT2:
  2295.     lea    String(pc),a1
  2296.     move.l    #$30303030,(a1)
  2297.     move.l    #$30303030,4(a1)
  2298.     tst.l    d0
  2299.     beq    NoDiv
  2300.     moveq    #-1,d1
  2301. TLoop1:    subi.l    #1000000,d0
  2302.     addq.l    #1,d1
  2303.     tst.l    d0
  2304.     bge    TLoop1
  2305.     addi.l    #1000000,d0
  2306.     add.b    d1,(a1)
  2307.     moveq    #-1,d1
  2308. TLoop2:    subi.l    #100000,d0
  2309.     addq.l    #1,d1
  2310.     tst.l    d0
  2311.     bge    TLoop2
  2312.     addi.l    #100000,d0
  2313.     add.b    d1,1(a1)
  2314.     moveq    #-1,d1
  2315. TLoop3:    subi.l    #10000,d0
  2316.     addq.l    #1,d1
  2317.     tst.l    d0
  2318.     bge    TLoop3
  2319.     addi.l    #10000,d0
  2320.     add.b    d1,2(a1)
  2321.     moveq    #-1,d1
  2322. TLoop4:    subi.l    #1000,d0
  2323.     addq.l    #1,d1
  2324.     tst.l    d0
  2325.     bge    TLoop4
  2326.     addi.l    #1000,d0
  2327.     add.b    d1,3(a1)
  2328.     moveq    #-1,d1
  2329. TLoop5:    subi.l    #100,d0
  2330.     addq.l    #1,d1
  2331.     tst.l    d0
  2332.     bge    TLoop5
  2333.     addi.l    #100,d0
  2334.     add.b    d1,4(a1)
  2335.     moveq    #-1,d1
  2336. TLoop6:    subi.l    #10,d0
  2337.     addq.l    #1,d1
  2338.     tst.l    d0
  2339.     bge    TLoop6
  2340.     addi.l    #10,d0
  2341.     add.b    d1,5(a1)
  2342.     add.b    d0,6(a1)
  2343. NoDiv:    moveq    #7,d2
  2344. rts
  2345. MakeText:
  2346.     lea    UBlocks(pc),a1
  2347.     move.l    #$30303030,UBlocks
  2348.     move.l    d0,d1
  2349.     divu    #1000,d1
  2350.     add.b    d1,(a1)
  2351.     mulu    #1000,d1
  2352.     sub.w    d1,d0
  2353.     move.l    d0,d1
  2354.     divu    #100,d1
  2355.     add.b    d1,1(a1)
  2356.     mulu    #100,d1
  2357.     sub.w    d1,d0
  2358.     move.l    d0,d1
  2359.     divu    #10,d1
  2360.     add.b    d1,2(a1)
  2361.     mulu    #10,d1
  2362.     sub.w    d1,d0
  2363.     add.b    d0,3(a1)
  2364.     moveq    #4,d2
  2365. rts
  2366. Len:    move.l    a1,a0
  2367.     clr.l    d2
  2368.     clr.l    d3
  2369. LenLoop:move.b    (a0)+,d3
  2370.     tst.b    d3
  2371.     beq    LenFound
  2372.     addq.l    #1,d2
  2373.     bra    LenLoop
  2374. LenFound:
  2375. rts
  2376. Checksumm0:
  2377.     move.l    ReadBuffer(pc),a0
  2378.     lea    4(a0),a1
  2379.     clr.l    (a1)
  2380.     move.l    #$ff,d1
  2381.     clr.l    d0
  2382. CheckLoop0:
  2383.     add.l    (a0)+,d0
  2384.     bcc    JumpCh0
  2385.     addq.l    #1,d0
  2386. JumpCh0:dbf    d1,CheckLoop0
  2387.     not.l    d0
  2388.     move.l    d0,(a1)
  2389. rts
  2390. Checksumm1:
  2391.     move.l    ReadBuffer(pc),a0
  2392.     move.l    a0,a1
  2393.     moveq    #$7f,d1
  2394.     clr.l    d0
  2395.     move.l    d0,20(a1)
  2396. CheckLoop1:
  2397.     sub.l    (a0)+,d0
  2398.     dbf    d1,CheckLoop1
  2399.     move.l    d0,20(a1)
  2400. rts
  2401. Checksumm2:
  2402.     move.l    ReadBuffer(pc),a0
  2403.     move.l    a0,a1
  2404.     moveq    #$7f,d1
  2405.     clr.l    d0
  2406.     move.l    d0,(a1)
  2407. CheckLoop2:
  2408.     sub.l    (a0)+,d0
  2409.     dbf    d1,CheckLoop2
  2410.     move.l    d0,(a1)
  2411. rts
  2412. Checksumm3:
  2413.     tst.l    Block
  2414.     beq    DoSumm3
  2415.     move.w    #9,Error
  2416.     bra    ErrorDisplay
  2417. DoSumm3:jsr    DiskInDrive(pc)
  2418.     tst.l    d0
  2419.     beq    Summ2
  2420.     jsr    InsertRequest(pc)
  2421.     tst.l    d0
  2422.     bne    Checksumm3
  2423.     rts
  2424. Summ2:    clr.l    d0
  2425.     moveq    #2,d1
  2426.     move.l    ReadBuffer(pc),d2
  2427.     jsr    DiskRead(pc)
  2428. bra    CheckSumm0
  2429. ClearScreen:
  2430.     clr.l    d0
  2431.     jsr    SetPen(pc)
  2432.     move.l    WindowHd(pc),a1
  2433.     move.l    50(a1),a1
  2434.     clr.l    d0
  2435.     moveq    #10,d1
  2436.     move.l    #640,d2
  2437.     move.l    #256,d3
  2438.     jsr    RectFill(a6)
  2439. rts
  2440. PText:
  2441.     move.l    a1,a5
  2442.     move.l    WindowHd(pc),a1
  2443.     move.l    50(a1),a1
  2444.     move.l    GraphicBase,a6
  2445.     move.l    x(pc),d0
  2446.     move.l    y(pc),d1
  2447.     jsr    Move(a6)
  2448.     move.l    a5,a0
  2449.     move.l    WindowHd(pc),a1
  2450.     move.l    50(a1),a1
  2451.     move.l    d2,d0
  2452.     jsr    Text(a6)
  2453. rts
  2454. DiskInDrive:
  2455.     move.l    d1,d2
  2456.     mulu    #80,d2
  2457.     lea    DiskIO0(pc),a1
  2458.     add.l    d2,a1
  2459.     move.w    #14,28(a1)
  2460.     move.l    execbase,a6
  2461.     jsr    DoIO(a6)
  2462.     move.l    32(a1),d0
  2463. rts
  2464. DiskProtect:
  2465.     move.l    d1,d2
  2466.     mulu    #80,d2
  2467.     move.l    execbase,a6
  2468.     lea    DiskIO0(pc),a1
  2469.     add.l    d2,a1
  2470.     move.w    #15,28(a1)
  2471.     jsr    DOIO(a6)
  2472.     move.l    32(a1),d0
  2473. rts
  2474. MotorOFF:
  2475.     move.l    d1,d2
  2476.     mulu    #80,d2
  2477.     move.l    execbase,a6
  2478.     lea    DiskIO0(pc),a1
  2479.     add.l    d2,a1
  2480.     move.w    #9,28(a1)
  2481.     clr.l    36(a1)
  2482.     jsr    DOIO(a6)
  2483. rts
  2484. DiskRead:
  2485.     lea    DiskIO0,a1
  2486.     move.l    Nr(pc),d7
  2487.     mulu    #80,d7
  2488.     add.l    d7,a1
  2489.     move.w    #2,28(a1)
  2490.     mulu    #512,d0
  2491.     move.l    d0,44(a1)
  2492.     mulu    #512,d1
  2493.     move.l    d1,36(a1)
  2494.     move.l    d2,40(a1)
  2495.     move.l    execbase,a6
  2496.     jsr    DoIO(a6)
  2497.     move.l    Nr(pc),d1
  2498.     Jsr    MotorOff(pc)
  2499.     clr.l    d0
  2500. rts
  2501. DiskWrite:
  2502.     move.l    d0,Stack
  2503.     move.l    d1,Stack+4
  2504.     move.l    d2,Stack+8
  2505.     move.l    Nr(pc),d1
  2506.     jsr    DiskInDrive(pc)
  2507.     tst.l    d0
  2508.     beq    WriteOk1
  2509.     move.l    Nr(pc),d7
  2510.     jsr    InsertRequest(pc)
  2511.     tst.l    d0
  2512.     bne    DiskWrite
  2513.     move.l    #-1,Antwort
  2514.     rts
  2515. WriteOk1:
  2516.     move.l    Nr(pc),d1
  2517.     jsr    DiskProtect(pc)
  2518.     tst.l    d0
  2519.     beq    WriteOk2
  2520.     move.l    Nr(Pc),d7
  2521.     jsr    WriteRequest(pc)
  2522.     tst.l    d0
  2523.     bne    WriteOk1
  2524.     move.l    #-1,Antwort
  2525.     rts
  2526. WriteOk2:
  2527.     move.l    Stack(pc),d0
  2528.     move.l    Stack+4,d1
  2529.     move.l    Stack+8,d2
  2530.     lea    DiskIO0,a1
  2531.     move.l    Nr(pc),d7
  2532.     mulu    #80,d7
  2533.     add.l    d7,a1
  2534.     move.l    a1,Stack+12
  2535.     move.w    #3,28(a1)
  2536.     mulu    #512,d0
  2537.     move.l    d0,44(a1)
  2538.     mulu    #512,d1
  2539.     move.l    d1,36(a1)
  2540.     move.l    d2,40(a1)
  2541.     move.l    execbase,a6
  2542.     jsr    DoIO(a6)
  2543.     move.l    Stack+12,a1
  2544.     move.w    #4,28(a1)
  2545.     jsr    DoIO(a6)
  2546.     move.l    Nr(pc),d1
  2547.     jsr    MotorOFF(pc)
  2548. rts
  2549. Stack:    blk.l    4,0
  2550. DiskType:
  2551.     lea    DiskIO0(pc),a1
  2552.     move.l    Nr(pc),d7
  2553.     mulu    #80,d7
  2554.     add.l    d7,a1
  2555.     move.w    #18,28(a1)
  2556.     move.l    ExecBase,a6
  2557.     jsr    DoIO(a6)
  2558.     move.l    32(a1),d0
  2559. rts
  2560. TrackRead:
  2561.     lea    DiskIO0(pc),a1
  2562.     mulu    #80,d3
  2563.     add.l    d3,a1
  2564.     move.w    #2,28(a1)
  2565.     mulu    #512,d0
  2566.     move.l    d0,44(a1)
  2567.     mulu    #512,d1
  2568.     move.l    d1,36(a1)
  2569.     move.l    d2,40(a1)
  2570.     move.l    execbase,a6
  2571.     jsr    DoIO(a6)
  2572.     move.b    31(a1),d0
  2573.     move.l    32(a1),d7
  2574. rts
  2575. TrackWrite:
  2576.     lea    DiskIO0(pc),a1
  2577.     mulu    #80,d3
  2578.     add.l    d3,a1
  2579.     move.w    #11,28(a1)
  2580.     mulu    #512,d0
  2581.     move.l    d0,44(a1)
  2582.     mulu    #512,d1
  2583.     move.l    d1,36(a1)
  2584.     move.l    d2,40(a1)
  2585.     move.l    execbase,a6
  2586.     jsr    DoIO(a6)
  2587.     move.b    31(a1),d0
  2588.     move.l    32(a1),d7
  2589. rts
  2590. ErrorDisplay:
  2591.     tst.l    intbase
  2592.     beq    NoAlert
  2593.     clr.l    d2
  2594.     move.w    Error(pc),d2
  2595.     mulu    #4,d2
  2596.     subq.l    #4,d2
  2597.     lea    Alert(pc),a1
  2598.     add.l    d2,a1
  2599.     move.l    (a1),a0
  2600.     move.l    intbase(pc),a6
  2601.     clr.l    d0
  2602.     moveq    #50,d1
  2603.     jsr    DisplayA(a6)
  2604. NoAlert:rts
  2605. Autor:    tst.l    IntBase
  2606.     beq    NoAutor
  2607.     lea    AutorA(pc),a0
  2608.     move.l    IntBase,a6
  2609.     clr.l    d0
  2610.     moveq    #60,d1
  2611.     jsr    DisplayA(a6)
  2612. NoAutor:bra    Main
  2613. EndingRequest:
  2614.     move.l    WindowHd(pc),a0
  2615.     lea    Endtext(pc),a1
  2616.     lea    Endl(pc),a2
  2617.     lea    Endr(pc),a3
  2618.     clr.l    d0
  2619.     clr.l    d1
  2620.     move.l    #258,d2
  2621.     moveq    #80,d3
  2622.     move.l    IntBase,a6
  2623.     jsr    AutoRequest(a6)
  2624. rts
  2625. InsertRequest:
  2626.     move.l    #df0,d1
  2627.     mulu    #5,d7
  2628.     add.w    d7,d1
  2629.     move.l    d1,InT2+12
  2630.     move.l    WindowHd(pc),a0
  2631.     lea    Intext(pc),a1
  2632.     lea    Endl(pc),a2
  2633.     lea    Endr(pc),a3
  2634.     move.l    #$8000,d0
  2635.     clr.l    d1
  2636.     move.l    #258,d2
  2637.     moveq    #80,d3
  2638.     move.l    IntBase,a6
  2639.     jsr    AutoRequest(a6)
  2640.     move.l    d0,Antwort
  2641. rts
  2642. WriteRequest:
  2643.     move.l    #df0,d1
  2644.     move.l    Nr(pc),d7
  2645.     mulu    #5,d7
  2646.     add.w    d7,d1
  2647.     move.l    d1,WrT2+12
  2648.     move.l    WindowHd(pc),a0
  2649.     lea    Wrtext(pc),a1
  2650.     lea    Endl(pc),a2
  2651.     lea    Endr(pc),a3
  2652.     move.l    #$8000,d0
  2653.     clr.l    d1
  2654.     move.l    #258,d2
  2655.     moveq    #80,d3
  2656.     move.l    IntBase,a6
  2657.     jsr    AutoRequest(a6)
  2658.     move.l    d0,Antwort
  2659. rts
  2660. InstallRequest:
  2661.     move.l    #df0,d1
  2662.     mulu    #5,d7
  2663.     add.w    d7,d1
  2664.     move.l    d1,StT2+12
  2665.     move.l    WindowHd(pc),a0
  2666.     lea    Sttext(pc),a1
  2667.     lea    Endl(pc),a2
  2668.     lea    Endr(pc),a3
  2669.     clr.l    d0
  2670.     clr.l    d1
  2671.     move.l    #258,d2
  2672.     moveq    #80,d3
  2673.     move.l    IntBase,a6
  2674.     jsr    AutoRequest(a6)
  2675.     move.l    d0,Antwort
  2676. rts
  2677. CopyRequest1:
  2678.     move.l    #df0,d1
  2679.     move.l    Nr(pc),d7
  2680.     mulu    #5,d7
  2681.     add.w    d7,d1
  2682.     move.l    d1,OrT2+12
  2683.     move.l    WindowHd(pc),a0
  2684.     lea    OrText(pc),a1
  2685.     lea    Endl(pc),a2
  2686.     lea    Endr(pc),a3
  2687.     clr.l    d0
  2688.     clr.l    d1
  2689.     move.l    #258,d2
  2690.     moveq    #80,d3
  2691.     move.l    IntBase,a6
  2692.     jsr    AutoRequest(a6)
  2693.     move.l    d0,Antwort
  2694. rts
  2695. CopyRequest2:
  2696.     move.l    #df0,d1
  2697.     move.l    Ziel(pc),d7
  2698.     mulu    #5,d7
  2699.     add.w    d7,d1
  2700.     move.l    d1,ZiT2+12
  2701.     move.l    WindowHd(pc),a0
  2702.     lea    Zitext(pc),a1
  2703.     lea    Endl(pc),a2
  2704.     lea    Endr(pc),a3
  2705.     clr.l    d0
  2706.     clr.l    d1
  2707.     move.l    #258,d2
  2708.     moveq    #80,d3
  2709.     move.l    IntBase,a6
  2710.     jsr    AutoRequest(a6)
  2711.     move.l    d0,Antwort
  2712. rts
  2713. CopyRequest3:
  2714.     move.l    #df0,d1
  2715.     move.l    Nr(pc),d7
  2716.     mulu    #5,d7
  2717.     add.l    d7,d1
  2718.     move.l    d1,CoT2+12
  2719.     move.l    #CoT6,CoT4+16
  2720.     move.l    #CoT6,Cot5+16
  2721.     move.l    #CoT7,Cot6+16
  2722.     lea    Target0(pc),a0
  2723.     lea    df0(pc),a1
  2724.     lea    CoT4(pc),a2
  2725.     move.l    #34,y
  2726.     clr.l    d0
  2727. R3Loop:    tst.l    (a0)
  2728.     beq    NextR3
  2729.     move.l    a1,12(a2)
  2730.     addi.l    #8,y
  2731.     addi.l    #20,a2
  2732. NextR3:    addq.l    #4,a0
  2733.     adda.l    #5,a1
  2734.     addq.l    #1,d0
  2735.     cmp.l    #4,d0
  2736.     bne    R3Loop
  2737.     move.w    y+2,Cot7+6
  2738.     subi.l    #20,a2
  2739.     move.l    #Cot7,16(a2)
  2740.     move.l    WindowHd(pc),a0
  2741.     lea    Co3text(pc),a1
  2742.     lea    Mall(pc),a2
  2743.     lea    Malr(pc),a3
  2744.     clr.l    d0
  2745.     clr.l    d1
  2746.     move.l    #258,d2
  2747.     moveq    #111,d3
  2748.     move.l    IntBase(pc),a6
  2749.     jsr    AutoRequest(a6)
  2750. rts
  2751. CopyRequest4:
  2752.     move.l    WindowHd(pc),a0
  2753.     lea    Maltext(pc),a1
  2754.     lea    Mall(pc),a2
  2755.     lea    Malr(pc),a3
  2756.     clr.l    d0
  2757.     clr.l    d1
  2758.     move.l    #258,d2
  2759.     moveq    #80,d3
  2760.     move.l    IntBase(pc),a6
  2761.     jsr    AutoRequest(a6)
  2762.     move.l    d0,Antwort
  2763. rts
  2764. Antwort:    dc.l    0
  2765. Alert:    dc.l    Alert1,Alert2,Alert3,Alert4,Alert5,Alert6,Alert7
  2766.     dc.l    Alert8,Alert9,Alert10,Alert11,Alert12,Alert13
  2767.     dc.l    Alert14,Alert15,Alert16,Alert17,Alert18
  2768. Alert1:    dc.b    0,188,29,"Screen öffnen ist fehlgeschlagen!",0,0,0
  2769. Alert2:    dc.b    0,184,29,"Fenster öffnen ist fehlgeschlagen!",0,0
  2770. Alert3:    dc.b    0,192,29,"Konnte dos.library nicht öffnen!",0,0
  2771. Alert4:    dc.b    0,172,29,"Konnte graphics.library nicht öffnen!",0,0,0
  2772. Alert5:    dc.b    0,200,29,"Habe keinen Speicher bekommen!",0,0
  2773. Alert6:    dc.b    0,172,29,"Konnte trackdisk.device nicht öffnen!",0,0,0
  2774. Alert7:    dc.b    0,228,29,"Sectormap ist ungültig!",0,0,0
  2775. Alert8:    dc.b    0,188,29,"Checksumme Unnötigt, bzw. Unsinn!",0,0
  2776. Alert9:    dc.b    0,184,29,"Checksumme nur Über Block 0 und 1!",0,0,0
  2777. Alert10:dc.b    0,184,29,"Kein Original-Laufwerk ausgewählt!",0,0,0
  2778. Alert11:dc.b    0,204,29,"Kein Ziel-Laufwerk angegeben!",0,0,0
  2779. Alert12:dc.b    0,120,29,"Mehrmals nur wenn Original-Laufwerk=Ziel-"
  2780.     dc.b         "Laufwerk!",0,0,0
  2781. Alert13:dc.b    0,168,29,"Mehrmals nur mit einem Ziel-Laufwerk!",0,0
  2782. Alert14:dc.b    0,248,29,"Fehler beim lesen!",0,0,0
  2783. Alert15:dc.b    0,232,29,"Fehler beim schreiben!",0,0,0
  2784. Alert16:dc.b    0,192,29,"Ziel-Laufwerk=Original-Laufwerk!",0,0,0
  2785. Alert17:dc.b    0,136,29,"Konnte keinen Speicher für ÜBERPRÜFEN"
  2786.     dc.b    "bekommen!",0,0,0
  2787. Alert18:dc.b    0,160,29,"ÜBERPRÜFUNGS-Fehler, Track: siehe unten!"
  2788.     dc.b    0,0,0
  2789. even
  2790. AutorA:    dc.b    1,41,12,"Autor:",0,1
  2791.     dc.b    1,17,23,"Oliver Peter",0,1
  2792.     dc.b    0,236,32,"Vaalserstr. 152a/1130",0,1
  2793.     dc.b    1,21,41,"5100 Aachen",0,1
  2794.     dc.b    1,25,50,"0241/85497",0,0
  2795. even
  2796. Error:        dc.w    0
  2797. DosBase:    dc.l    0
  2798. GraphicBase:    dc.l    0
  2799. IntBase:    dc.l    0
  2800. DosName:    dc.b    "dos.library",0
  2801. GraphicName:    dc.b    "graphics.library",0
  2802. IntName:    dc.b    "intuition.library",0
  2803. TrackName:    dc.b    "trackdisk.device",0
  2804. even
  2805. Screen:    dc.w    0,0,640,256,4
  2806.     dc.b    0,0
  2807.     dc.w    $8002,15
  2808.     dc.l    0,0,0,0
  2809. Window:    dc.w    0,0,640,256
  2810.     dc.b    2,15
  2811.     dc.l    $18708,$1808,0,0,WTitle
  2812. Screenhd:dc.l    0,0
  2813.     dc.w    320,200,640,256,15
  2814. WTitle:    dc.b    "Disk-Master"
  2815.     blk.b    69,32
  2816.     dc.b    0,0
  2817. WindowHd:    dc.l    0
  2818. EndText:dc.b    2,1,0,0
  2819.     dc.w    15,15
  2820.     dc.l    0,End,0
  2821. End:    dc.b    "Programm wirklich beenden?",0,0
  2822. Endl:    dc.b    2,1,0,0
  2823.     dc.w    6,4
  2824.     dc.l    0,El,0
  2825. El:    dc.b    "  JA  ",0,0
  2826. Endr:    dc.b    2,1,0,0
  2827.     dc.w    6,4
  2828.     dc.l    0,Er,0
  2829. Er:    dc.b    " NEIN ",0,0
  2830. InText: dc.b    2,1,0,0
  2831.     dc.w    51,10
  2832.     dc.l    0,In,InT2
  2833. In:    dc.b    "Bitte Diskette in",0
  2834. InT2:    dc.b    2,1,0,0
  2835.     dc.w    103,20
  2836.     dc.l    0,0,InT3
  2837. InT3:    dc.b    2,1,0,0
  2838.     dc.w    87,30
  2839.     dc.l    0,In3,0
  2840. In3:    dc.b    "einlegen!",0
  2841. WrText: dc.b    2,1,0,0
  2842.     dc.w    27,10
  2843.     dc.l    0,Wr,WrT2
  2844. Wr:    dc.b    "Bitte Schreibschutz von",0
  2845. WrT2:    dc.b    2,1,0,0
  2846.     dc.w    103,20
  2847.     dc.l    0,0,WrT3
  2848. WrT3:    dc.b    2,1,0,0
  2849.     dc.w    83,30
  2850.     dc.l    0,Wr3,0
  2851. Wr3:    dc.b    "entfernen!",0,0
  2852. StText: dc.b    2,1,0,0
  2853.     dc.w    51,10
  2854.     dc.l    0,St,StT2
  2855. St:    dc.b    "Boot-Block (0) in",0
  2856. StT2:    dc.b    2,1,0,0
  2857.     dc.w    103,20
  2858.     dc.l    0,0,StT3
  2859. StT3:    dc.b    2,1,0,0
  2860.     dc.w    59,30
  2861.     dc.l    0,St3,0
  2862. St3:    dc.b    "neu beschreiben!",0,0
  2863. OrText: dc.b    2,1,0,0
  2864.     dc.w    15,10
  2865.     dc.l    0,Or,OrT2
  2866. Or:    dc.b    "Bitte Original-Diskette in",0,0
  2867. OrT2:    dc.b    2,1,0,0
  2868.     dc.w    103,20
  2869.     dc.l    0,0,InT3
  2870. ZiText: dc.b    2,1,0,0
  2871.     dc.w    31,10
  2872.     dc.l    0,Zi,ZiT2
  2873. Zi:    dc.b    "Bitte Ziel-Diskette in",0,0
  2874. ZiT2:    dc.b    2,1,0,0
  2875.     dc.w    103,20
  2876.     dc.l    0,0,InT3
  2877. MalText:dc.b    2,1,0,0
  2878.     dc.w    23,15
  2879.     dc.l    0,Mal,MalT1
  2880. Mal:    dc.b    "Sie müssten die Diskette",0,0
  2881. MalT1:    dc.b    2,1,0,0
  2882.     dc.w    103,23
  2883.     dc.l    0,Ma1,MalT2
  2884. Ma1:    dc.b    "00",0,0
  2885. MalT2:    dc.b    2,1,0,0
  2886.     dc.w    71,30
  2887.     dc.l    0,Ma2,0
  2888. Ma2:    dc.b    "mal wechseln!",0
  2889. Mall:    dc.b    2,1,0,0
  2890.     dc.w    6,4
  2891.     dc.l    0,Ml,0
  2892. Ml:    dc.b    "  OK  ",0,0
  2893. Malr:    dc.b    2,1,0,0
  2894.     dc.w    6,4
  2895.     dc.l    0,Mr,0
  2896. Mr:    dc.b    " NEIN ",0,0
  2897. Co3Text: dc.b    2,1,0,0
  2898.     dc.w    15,10
  2899.     dc.l    0,Co,CoT2
  2900. Co:    dc.b    "Bitte Original-Diskette in",0,0
  2901. CoT2:    dc.b    2,1,0,0
  2902.     dc.w    103,18
  2903.     dc.l    0,0,CoT3
  2904. CoT3:    dc.b    2,1,0,0
  2905.     dc.w    31,26
  2906.     dc.l    0,Co3,CoT4
  2907. Co3:    dc.b    "Bitte Ziel-Diskette in",0,0
  2908. CoT4:    dc.b    2,1,0,0
  2909.     dc.w    103,34
  2910.     dc.l    0,0,CoT5
  2911. CoT5:    dc.b    2,1,0,0
  2912.     dc.w    103,42
  2913.     dc.l    0,0,CoT6
  2914. CoT6:    dc.b    2,1,0,0
  2915.     dc.w    103,50
  2916.     dc.l    0,0,CoT7
  2917. CoT7:    dc.b    2,1,0,0
  2918.     dc.w    87,58
  2919.     dc.l    0,In3,0
  2920.  
  2921. Menu:    dc.l    Menu2
  2922.     dc.w    20,0,72,10,1
  2923.     dc.l    MText1,Punkt11,0,0
  2924. MText1:    dc.b    "Programm",0,0
  2925. Punkt11:dc.l    Punkt12
  2926.     dc.w    -5,0,80,10,$96
  2927.     dc.l    0,PText11,0
  2928.     dc.b    "H",0
  2929.     dc.l    0,0
  2930. PText11:dc.b    2,15,0,0
  2931.     dc.w    2,2
  2932.     dc.l    0,P11,0
  2933. P11:    dc.b    "HELP",0,0
  2934. Punkt12:dc.l    Punkt13
  2935.     dc.w    -5,15,80,10,$96
  2936.     dc.l    0,PText12,0
  2937.     dc.b    "Q",0
  2938.     dc.l    0,0
  2939. PText12:dc.b    2,15,0,0
  2940.     dc.w    2,2
  2941.     dc.l    0,P12,0
  2942. P12:    dc.b    "QUIT",0,0
  2943. Punkt13:dc.l    0
  2944.     dc.w    -5,30,80,10,$92
  2945.     dc.l    0,PText13,0
  2946.     dc.b    0,0
  2947.     dc.l    0,0
  2948. PText13:dc.b    2,15,0,0
  2949.     dc.w    20,2
  2950.     dc.l    0,P13,0
  2951. P13:    dc.b    "AUTOR",0
  2952. Menu2:    dc.l    Menu3
  2953.     dc.w    101,0,40,10,1
  2954.     dc.l    MText2,Punkt21,0,0
  2955. MText2:    dc.b    "Disk",0,0
  2956. Punkt21:dc.l    Punkt22
  2957.     dc.w    -35,0,118,10,$96
  2958.     dc.l    0,PText21,0
  2959.     dc.b    "I",0
  2960.     dc.l    0,0
  2961. PText21:dc.b    2,15,0,0
  2962.     dc.w    2,2
  2963.     dc.l    0,P21,0
  2964. P21:    dc.b    "INFO",0,0
  2965. Punkt22:dc.l    Punkt23
  2966.     dc.w    -35,15,118,10,$96
  2967.     dc.l    0,PText22,0
  2968.     dc.b    "E",0
  2969.     dc.l    0,0
  2970. PText22:dc.b    2,15,0,0
  2971.     dc.w    2,2
  2972.     dc.l    0,P22,0
  2973. P22:    dc.b    "EINLESEN",0,0
  2974. Punkt23:dc.l    Punkt24
  2975.     dc.w    -35,30,118,10,$92
  2976.     dc.l    0,PText23,0
  2977.     dc.w    0
  2978.     dc.l    Punkt231,0
  2979. PText23:dc.b    2,15,0,0
  2980.     dc.w    2,2
  2981.     dc.l    0,P23,0
  2982. P23:    dc.b    "VIEW BLOCKS",0
  2983. Punkt24:dc.l    Punkt25
  2984.     dc.w    -35,45,118,10,$92
  2985.     dc.l    0,PText24,0
  2986.     dc.w    0
  2987.     dc.l    Punkt241,0
  2988. PText24:dc.b    2,15,0,0
  2989.     dc.w    2,2
  2990.     dc.l    0,P24,0
  2991. P24:    dc.b    "BLOCKS USED",0
  2992. Punkt231:dc.l    Punkt232
  2993.     dc.w    118,0,48,10,$92
  2994.     dc.l    0,PText241,0
  2995.     dc.w    0
  2996.     dc.l    0,0
  2997. Punkt232:dc.l    Punkt233
  2998.     dc.w    118,10,48,10,$92
  2999.     dc.l    0,PText242,0
  3000.     dc.w    0
  3001.     dc.l    0,0
  3002. Punkt233:dc.l    Punkt234
  3003.     dc.w    118,20,48,10,$92
  3004.     dc.l    0,PText243,0
  3005.     dc.w    0
  3006.     dc.l    0,0
  3007. Punkt234:dc.l    0
  3008.     dc.w    118,30,48,10,$92
  3009.     dc.l    0,PText244,0
  3010.     dc.w    0
  3011.     dc.l    0,0
  3012. Punkt241:dc.l    Punkt242
  3013.     dc.w    118,0,48,10,$92
  3014.     dc.l    0,PText241,0
  3015.     dc.w    0
  3016.     dc.l    0,0
  3017. PText241:dc.b    2,15,0,0
  3018.     dc.w    2,2
  3019.     dc.l    0,P241,0
  3020. P241:    dc.b    "DF0:",0,0
  3021. Punkt242:dc.l    Punkt243
  3022.     dc.w    118,10,48,10,$92
  3023.     dc.l    0,PText242,0
  3024.     dc.w    0
  3025.     dc.l    0,0
  3026. PText242:dc.b    2,15,0,0
  3027.     dc.w    2,2
  3028.     dc.l    0,P242,0
  3029. P242:    dc.b    "DF1:",0,0
  3030. Punkt243:dc.l    Punkt244
  3031.     dc.w    118,20,48,10,$92
  3032.     dc.l    0,PText243,0
  3033.     dc.w    0
  3034.     dc.l    0,0
  3035. PText243:dc.b    2,15,0,0
  3036.     dc.w    2,2
  3037.     dc.l    0,P243,0
  3038. P243:    dc.b    "DF2:",0,0
  3039. Punkt244:dc.l    0
  3040.     dc.w    118,30,48,10,$92
  3041.     dc.l    0,PText244,0
  3042.     dc.w    0
  3043.     dc.l    0,0
  3044. PText244:dc.b    2,15,0,0
  3045.     dc.w    2,2
  3046.     dc.l    0,P244,0
  3047. P244:    dc.b    "DF3:",0,0
  3048. Punkt25:dc.l    Punkt26
  3049.     dc.w    -35,60,118,10,$96
  3050.     dc.l    0,PText25,0
  3051.     dc.b    "D",0
  3052.     dc.l    0,0
  3053. PText25:dc.b    2,15,0,0
  3054.     dc.w    2,2
  3055.     dc.l    0,P25,0
  3056. P25:    dc.b    "DISK-COPY",0
  3057. Punkt26:dc.l    0
  3058.     dc.w    -35,75,118,10,$92
  3059.     dc.l    0,PText26,0
  3060.     dc.w    0
  3061.     dc.l    Punkt261,0
  3062. PText26:dc.b    2,15,0,0
  3063.     dc.w    2,2
  3064.     dc.l    0,P26,0
  3065. P26:    dc.b    "Read-Errors",0
  3066. Punkt261:dc.l    Punkt262
  3067.     dc.w    118,0,48,10,$92
  3068.     dc.l    0,PText241,0
  3069.     dc.w    0
  3070.     dc.l    0,0
  3071. Punkt262:dc.l    Punkt263
  3072.     dc.w    118,10,48,10,$92
  3073.     dc.l    0,PText242,0
  3074.     dc.w    0
  3075.     dc.l    0,0
  3076. Punkt263:dc.l    Punkt264
  3077.     dc.w    118,20,48,10,$92
  3078.     dc.l    0,PText243,0
  3079.     dc.w    0
  3080.     dc.l    0,0
  3081. Punkt264:dc.l    0
  3082.     dc.w    118,30,48,10,$92
  3083.     dc.l    0,PText244,0
  3084.     dc.w    0
  3085.     dc.l    0,0
  3086. Menu3:    dc.l    Menu4
  3087.     dc.w    151,0
  3088.     dc.w    48,10
  3089.     dc.w    1
  3090.     dc.l    MText3
  3091.     dc.l    Punkt31
  3092.     dc.l    0,0
  3093. MText3:    dc.b    "Datei",0
  3094. Punkt31:dc.l    Punkt32
  3095.     dc.w    -56,0,160,10,$96
  3096.     dc.l    0
  3097.     dc.l    PText31,0
  3098.     dc.b    "N",0
  3099.     dc.l    0,0
  3100. PText31:dc.b    2,15,0,0
  3101.     dc.w    2,2
  3102.     dc.l    0,P31,0
  3103. P31:    dc.b    "NEUE",0,0
  3104. Punkt32:dc.l    Punkt33
  3105.     dc.w    -56,15,160,10,$96
  3106.     dc.l    0,PText32,0
  3107.     dc.b    "Ö",0
  3108.     dc.l    0,0
  3109. PText32:dc.b    2,15,0,0
  3110.     dc.w    2,2
  3111.     dc.l    0,P32,0
  3112. P32:    dc.b    "ÖFFNEN",0,0
  3113. Punkt33:dc.l    Punkt34
  3114.     dc.w    -56,30,160,10,$96
  3115.     dc.l    0,PText33,0
  3116.     dc.b    "S",0
  3117.     dc.l    0,0
  3118. PText33:dc.b    2,15,0,0
  3119.     dc.w    2,2
  3120.     dc.l    0,P33,0
  3121. P33:    dc.b    "SUCHEN",0,0
  3122. Punkt34:dc.l    Punkt35
  3123.     dc.w    -56,45,160,10
  3124.     dc.w    $80+$10+4+2
  3125.     dc.l    0,PText34,0
  3126.     dc.b    "Ü",0
  3127.     dc.l    0,0
  3128. PText34:dc.b    2,15,0,0
  3129.     dc.w    2,2
  3130.     dc.l    0,P34,0
  3131. P34:    dc.b    "DISK ÜBERNEHMEN",0
  3132. Punkt35:dc.l    Punkt36
  3133.     dc.w    -56,60,160,10,$96
  3134.     dc.l    0,PText35,0
  3135.     dc.b    "A",0
  3136.     dc.l    0,0
  3137. PText35:dc.b    2,15,0,0
  3138.     dc.w    2,2
  3139.     dc.l    0,P35,0
  3140. P35:    dc.b    "AKTUALISIEREN",0
  3141. Punkt36:dc.l    0
  3142.     dc.w    -56,75,160,10,$96
  3143.     dc.l    0,PText36,0
  3144.     dc.b    "C",0
  3145.     dc.l    0,0
  3146. PText36:dc.b    2,15,0,0
  3147.     dc.w    2,2
  3148.     dc.l    0,P36,0
  3149. P36:    dc.b    "CLOSE",0
  3150. Menu4:    dc.l    0
  3151.     dc.w    209,0,56,10,1
  3152.     dc.l    MText4,Punkt41,0,0
  3153. MText4:    dc.b    "Buffer",0,0
  3154. Punkt41:dc.l    Punkt42
  3155.     dc.w    -22,0,100,10,$96
  3156.     dc.l    0,PText41,0
  3157.     dc.b    "O",0
  3158.     dc.l    0,0
  3159. PText41:dc.b    2,15,0,0
  3160.     dc.w    2,2
  3161.     dc.l    0,P41,0
  3162. P41:    dc.b    "ORDNEN",0,0
  3163. Punkt42:dc.l    Punkt43
  3164.     dc.w    -22,15,100,10,$96
  3165.     dc.l    0,PText42,0
  3166.     dc.b    "L",0
  3167.     dc.l    0,0
  3168. PText42:dc.b    2,15,0,0
  3169.     dc.w    2,2
  3170.     dc.l    0,P42,0
  3171. P42:    dc.b    "LÖSCHEN",0
  3172. Punkt43:dc.l    0
  3173.     dc.w    -22,30,100,10,$96
  3174.     dc.l    0,PText43,0
  3175.     dc.b    "Ä",0
  3176.     dc.l    0,0
  3177. PText43:dc.b    2,15,0,0
  3178.     dc.w    2,2
  3179.     dc.l    0,P43,0
  3180. P43:    dc.b    "ÄNDERN",0,0
  3181. Gad1:    dc.l    Gad2
  3182.     dc.w    585,27,40,11,0,1,1
  3183.     dc.l    Border1,0,GadT1,0,0
  3184.     dc.w    4,0,0
  3185. GadT1:    dc.b    10,2,0,0
  3186.     dc.w    4,2
  3187.     dc.l    0,GT1,0
  3188. GT1:    dc.b    "BOOT",0,0
  3189. Border1:dc.w    0,0
  3190.     dc.b    1,0,0,5
  3191.     dc.l    Kord1,0
  3192. Kord1:    dc.w    0,0,39,0,39,10,0,10,0,0,
  3193. Gad2:    dc.l    Gad3
  3194.     dc.w    573,40,64,11,0,1,1
  3195.     dc.l    Border2,0,GadT2,0,0
  3196.     dc.w    5,0,0
  3197. GadT2:    dc.b    10,2,0,0
  3198.     dc.w    4,2
  3199.     dc.l    0,GT2,0
  3200. GT2:    dc.b    "NO BOOT",0
  3201. Border2:dc.w    0,0
  3202.     dc.b    1,0,0,5
  3203.     dc.l    Kord2,0
  3204. Kord2:    dc.w    0,0,63,0,63,10,0,10,0,0
  3205. Gad3:    dc.l    Gad4
  3206.     dc.w    585,70,40,11,0,1,1
  3207.     dc.l    Border3,0,GadT3,0,0
  3208.     dc.w    6,0,0
  3209. GadT3:    dc.b    10,0,0,0
  3210.     dc.w    4,2
  3211.     dc.l    0,GT3,0
  3212. GT3:    dc.b    "JUMP",0,0
  3213. Border3:dc.w    0,0
  3214.     dc.b    1,0,0,5
  3215.     dc.l    Kord3,0
  3216. Kord3:    dc.w    0,0,39,0,39,10,0,10,0,0
  3217. Gad4:    dc.l    Gad5
  3218.     dc.w    581,85,48,11,0,1,1
  3219.     dc.l    Border4,0,GadT4,0,0
  3220.     dc.w    7,0,0
  3221. GadT4:    dc.b    10,0,0,0
  3222.     dc.w    4,2
  3223.     dc.l    0,GT4,0
  3224. GT4:    dc.b    "WRITE",0
  3225. Border4:dc.w    0,0
  3226.     dc.b    1,0,0,5
  3227.     dc.l    Kord4,0
  3228. Kord4:    dc.w    0,0,47,0,47,10,0,10,0,0
  3229. Gad5:    dc.l    Gad6
  3230.     dc.w    577,100,56,11,0,1,1
  3231.     dc.l    Border5,0,GadT5,0,0
  3232.     dc.w    8,0,0
  3233. GadT5:    dc.b    10,0,0,0
  3234.     dc.w    4,2
  3235.     dc.l    0,GT5,0
  3236. GT5:    dc.b    "CHANGE",0,0
  3237. Border5:dc.w    0,0
  3238.     dc.b    1,0,0,5
  3239.     dc.l    Kord5,0
  3240. Kord5:    dc.w    0,0,55,0,55,10,0,10,0,0
  3241. Gad6:    dc.l    Gad7
  3242.     dc.w    89,240,40,8,0,$801,4
  3243.     dc.l    Border6,0,GadT6,0,GadI6
  3244.     dc.w    1,0,0
  3245. GadT6:    dc.b    10,0,0,0
  3246.     dc.w    -84,0
  3247.     dc.l    0,GT6,0
  3248. GT6:    dc.b    "Block Nr:",0
  3249. Border6:dc.w    0,0
  3250.     dc.b    1,0,0,5
  3251.     dc.l    Kord6,0
  3252. Kord6:    dc.w    -1,-1,40,-1,40,8,-1,8,-1,-1
  3253. GadI6:    dc.l    InBuffer,UnBuffer
  3254.     dc.w    0,5,0,0,0,0,0,0
  3255.     dc.l    0,0,0
  3256. Gad7:    dc.l    Gad8
  3257.     dc.w    145,239,20,10,0,1,1
  3258.     dc.l    Border7,0,GadT7,0,0
  3259.     dc.w    2,0,0
  3260. GadT7:    dc.b    10,0,0,0
  3261.     dc.w    6,1
  3262.     dc.l    0,GT7,0
  3263. GT7:    dc.b    "-",0
  3264. Border7:dc.w    0,0
  3265.     dc.b    1,0,0,5
  3266.     dc.l    Kord7,0
  3267. Kord7:    dc.w    0,0,19,0,19,9,0,9,0,0
  3268. Gad8:    dc.l    Gad9
  3269.     dc.w    170,239,20,10,0,1,1
  3270.     dc.l    Border8,0,GadT8,0,0
  3271.     dc.w    3,0,0
  3272. GadT8:    dc.b    10,0,0,0
  3273.     dc.w    6,1
  3274.     dc.l    0,GT8,0
  3275. GT8:    dc.b    "+",0
  3276. Border8:
  3277.     dc.w    0,0
  3278.     dc.b    1,0,0,5
  3279.     dc.l    Kord8,0
  3280. Kord8:    dc.w    0,0,19,0,19,9,0,9,0,0
  3281. Gad9:    dc.l    Gad10
  3282.     dc.w    500,239,88,11,0,1,1
  3283.     dc.l    Border9,0,GadT9,0,0
  3284.     dc.w    9,0,0
  3285. GadT9:    dc.b    10,0,0,0
  3286.     dc.w    4,2
  3287.     dc.l    0,GT9,0
  3288. GT9:    dc.b    "CHECKSUMME",0,0
  3289. Border9:
  3290.     dc.w    0,0
  3291.     dc.b    1,0,0,5
  3292.     dc.l    Kord9,0
  3293. Kord9:    dc.w    0,0,87,0,87,10,0,10,0,0
  3294. Gad10:    dc.l    Gad29
  3295.     dc.w    585,115,40,11,0,1,1
  3296.     dc.l    Border10,0,GadT10,0,0
  3297.     dc.w    10,0,0
  3298. GadT10:    dc.b    10,0,0,0
  3299.     dc.w    4,2
  3300.     dc.l    0,GT10,0
  3301. GT10:    dc.b    "READ",0,0
  3302. Border10:
  3303.     dc.w    0,0
  3304.     dc.b    1,0,0,5
  3305.     dc.l    Kord10,0
  3306. Kord10:    dc.w    0,0,39,0,39,10,0,10,0,0
  3307. Gad29:    dc.l    0
  3308.     dc.w    585,150,40,11,0,1,1
  3309.     dc.l    Border10,0,GadT29,0,0
  3310.     dc.w    29,0,0
  3311. GadT29:    dc.b    10,0,0,0
  3312.     dc.w    4,2
  3313.     dc.l    0,GT29,0
  3314. GT29:    dc.b    "ENDE",0,0
  3315. Gad11:    dc.l    Gad12
  3316.     dc.w    100,50,40,11,0,$1,1
  3317.     dc.l    Border10,0,GadT11,0,0
  3318.     dc.w    11,0,0
  3319. GadT11:    dc.b    11,0,0,0
  3320.     dc.w    4,2
  3321.     dc.l    0,GT11,0
  3322. GT11:    dc.b    "df0:",0,0
  3323. Gad12:    dc.l    Gad13
  3324.     dc.w    150,50,40,11,0,$1,1
  3325.     dc.l    Border10,0,GadT12,0,0
  3326.     dc.w    12,0,0
  3327. GadT12:    dc.b    11,0,0,0
  3328.     dc.w    4,2
  3329.     dc.l    0,GT12,0
  3330. GT12:    dc.b    "df1:",0,0
  3331. Gad13:    dc.l    Gad14
  3332.     dc.w    200,50,40,11,0,$1,1
  3333.     dc.l    Border10,0,GadT13,0,0
  3334.     dc.w    13,0,0
  3335. GadT13:    dc.b    11,0,0,0
  3336.     dc.w    4,2
  3337.     dc.l    0,GT13,0
  3338. GT13:    dc.b    "df2:",0,0
  3339. Gad14:    dc.l    Gad15
  3340.     dc.w    250,50,40,11,0,$1,1
  3341.     dc.l    Border10,0,GadT14,0,0
  3342.     dc.w    14,0,0
  3343. GadT14:    dc.b    11,0,0,0
  3344.     dc.w    4,2
  3345.     dc.l    0,GT14,0
  3346. GT14:    dc.b    "df3:",0,0
  3347. Gad15:    dc.l    Gad16
  3348.     dc.w    100,100,40,11,0,$1,1
  3349.     dc.l    Border10,0,GadT15,0,0
  3350.     dc.w    15,0,0
  3351. GadT15:    dc.b    10,0,0,0
  3352.     dc.w    4,2
  3353.     dc.l    0,GT11,0
  3354. Gad16:    dc.l    Gad17
  3355.     dc.w    150,100,40,11,0,$1,1
  3356.     dc.l    Border10,0,GadT16,0,0
  3357.     dc.w    16,0,0
  3358. GadT16:    dc.b    10,0,0,0
  3359.     dc.w    4,2
  3360.     dc.l    0,GT12,0
  3361. Gad17:    dc.l    Gad18
  3362.     dc.w    200,100,40,11,0,$1,1
  3363.     dc.l    Border10,0,GadT17,0,0
  3364.     dc.w    17,0,0
  3365. GadT17:    dc.b    10,0,0,0
  3366.     dc.w    4,2
  3367.     dc.l    0,GT13,0
  3368. Gad18:    dc.l    Gad19
  3369.     dc.w    250,100,40,11,0,$1,1
  3370.     dc.l    Border10,0,GadT18,0,0
  3371.     dc.w    18,0,0
  3372. GadT18:    dc.b    10,0,0,0
  3373.     dc.w    4,2
  3374.     dc.l    0,GT14,0
  3375. Gad19:    dc.l    Gad20
  3376.     dc.w    159,150,72,11,0,1,1
  3377.     dc.l    Border19,0,GadT19,0,0
  3378.     dc.w    19,0,0
  3379. GadT19:    dc.b    11,0,0,0
  3380.     dc.w    4,2
  3381.     dc.l    0,GT19,0
  3382. GT19:    dc.b    "Mehrmals",0,0
  3383. Border19:
  3384.     dc.w    0,0
  3385.     dc.b    1,0,0,5
  3386.     dc.l    Kord19,0
  3387. Kord19:    dc.w    0,0,71,0,71,10,0,10,0,0
  3388. Gad20:    dc.l    Gad21
  3389.     dc.w    151,170,88,11,0,1,1
  3390.     dc.l    Border20,0,GadT20,0,0
  3391.     dc.w    20,0,0
  3392. GadT20:    dc.b    11,0,0,0
  3393.     dc.w    4,2
  3394.     dc.l    0,GT20,0
  3395. GT20:    dc.b    "Überprüfen",0,0
  3396. Border20:
  3397.     dc.w    0,0
  3398.     dc.b    1,0,0,5
  3399.     dc.l    Kord20,0
  3400. Kord20:    dc.w    0,0,87,0,87,10,0,10,0,0
  3401. Gad21:    dc.l    Gad22
  3402.     dc.w    100,210,80,11,0,1,1
  3403.     dc.l    Border21,0,GadT21,0,0
  3404.     dc.w    21,0,0
  3405. GadT21:    dc.b    11,0,0,0
  3406.     dc.w    4,2
  3407.     dc.l    0,GT21,0
  3408. GT21:    dc.b    "Abbrechen",0
  3409. Border21:
  3410.     dc.w    0,0
  3411.     dc.b    1,0,0,5
  3412.     dc.l    Kord21,0
  3413. Kord21:    dc.w    0,0,79,0,79,10,0,10,0,0
  3414. Gad22:    dc.l    Gad23
  3415.     dc.w    242,210,48,11,0,1,1
  3416.     dc.l    Border22,0,GadT22,0,0
  3417.     dc.w    22,0,0
  3418. GadT22:    dc.b    11,0,0,0
  3419.     dc.w    4,2
  3420.     dc.l    0,GT22,0
  3421. GT22:    dc.b    "START",0
  3422. Border22:
  3423.     dc.w    0,0
  3424.     dc.b    1,0,0,5
  3425.     dc.l    Kord22,0
  3426. Kord22:    dc.w    0,0,47,0,47,10,0,10,0,0
  3427. Gad23:    dc.l    Gad24
  3428.     dc.w    443,50,22,11,4,1,1
  3429.     dc.l    GadI23,0,0,0,0
  3430.     dc.w    23,0,0
  3431. Gad24:    dc.l    Gad25
  3432.     dc.w    495,50,22,11,4,1,1
  3433.     dc.l    GadI24,0,0,0,0
  3434.     dc.w    24,0,0
  3435. Gad25:    dc.l    Gad26
  3436.     dc.w    443,100,22,11,4,1,1
  3437.     dc.l    GadI23,0,0,0,0
  3438.     dc.w    25,0,0
  3439. Gad26:    dc.l    Gad27
  3440.     dc.w    495,100,22,11,4,1,1
  3441.     dc.l    GadI24,0,0,0,0
  3442.     dc.w    26,0,0
  3443. Gad27:    dc.l    Gad28
  3444.     dc.w    468,50,24,11,0,1,1
  3445.     dc.l    Border27,0,0,0,0
  3446.     dc.w    27,0,0
  3447. Gad28:    dc.l    0
  3448.     dc.w    468,100,24,11,0,1,1
  3449.     dc.l    Border27,0,0,0,0
  3450.     dc.w    28,0,0
  3451. Border27:
  3452.     dc.w    0,0
  3453.     dc.b    1,0,0,5
  3454.     dc.l    Kord27,0
  3455. Kord27:    dc.w    0,0,23,0,23,10,0,10,0,0
  3456.  
  3457. GadI23:    dc.w    0,0,22,11,2
  3458.     dc.l    GadD23
  3459.     dc.b    2,10
  3460.     dc.l    0
  3461. GadI24:    dc.w    0,0,22,11,2
  3462.     dc.l    GadD24
  3463.     dc.b    2,10
  3464.     dc.l    0
  3465. GadD23:    dc.l    %00000000000000000001110000000000
  3466.     dc.l    %00000000000000011111110000000000
  3467.     dc.l    %00000000000111111111110000000000
  3468.     DC.L    %00000001111111111111110000000000
  3469.     dc.l    %00011111111111111111110000000000
  3470.     dc.l    %11111111110000000011110000000000
  3471.     dc.l    %00011111111111111111110000000000
  3472.     dc.l    %00000001111111111111110000000000
  3473.     dc.l    %00000000000111111111110000000000
  3474.     dc.l    %00000000000000011111110000000000
  3475.     dc.l    %00000000000000000001110000000000
  3476.     dc.l    %00000000000000000001110000000000
  3477.     dc.l    %00000000000000011111110000000000
  3478.     dc.l    %00000000000111111111110000000000
  3479.     DC.L    %00000001111111111111110000000000
  3480.     dc.l    %00011111111111111111110000000000
  3481.     dc.l    %11111111110000000011110000000000
  3482.     dc.l    %00011111111111111111110000000000
  3483.     dc.l    %00000001111111111111110000000000
  3484.     dc.l    %00000000000111111111110000000000
  3485.     dc.l    %00000000000000011111110000000000
  3486.     dc.l    %00000000000000000001110000000000
  3487. GadD24:    dc.l    %11100000000000000000000000000000
  3488.     dc.l    %11111110000000000000000000000000
  3489.     dc.l    %11111111111000000000000000000000
  3490.     dc.l    %11111110011111100000000000000000
  3491.     dc.l    %11111110011111111110000000000000
  3492.     dc.l    %11110000000011111111110000000000
  3493.     dc.l    %11111110011111111110000000000000
  3494.     dc.l    %11111110011111100000000000000000
  3495.     dc.l    %11111111111000000000000000000000
  3496.     dc.l    %11111110000000000000000000000000
  3497.     dc.l    %11100000000000000000000000000000
  3498.     dc.l    %11100000000000000000000000000000
  3499.     dc.l    %11111110000000000000000000000000
  3500.     dc.l    %11111111111000000000000000000000
  3501.     dc.l    %11111110011111100000000000000000
  3502.     dc.l    %11111110011111111110000000000000
  3503.     dc.l    %11110000000011111111110000000000
  3504.     dc.l    %11111110011111111110000000000000
  3505.     dc.l    %11111110011111100000000000000000
  3506.     dc.l    %11111111111000000000000000000000
  3507.     dc.l    %11111110000000000000000000000000
  3508.     dc.l    %11100000000000000000000000000000
  3509.  
  3510. UnBuffer:    dc.b    "880",0,0,0,0,0,0,0,0,0
  3511. InBuffer:    dc.b    "880",0,0,0,0,0,0,0,0,0
  3512. Ziel:    dc.l    0
  3513. Nr:    dc.l    0
  3514. Ziel1:    dc.l    0
  3515. x:    dc.l    20
  3516. y:    dc.l    20
  3517. Cnt:    dc.l    0
  3518. WCnt:    dc.l    0
  3519. Cnt1:    dc.l    0
  3520. AltCnt:    dc.l    0
  3521. FileHD:    dc.l    0
  3522. Long:    dc.l    0
  3523. ReadHelp:dc.l    0
  3524. xx:    dc.l    0
  3525. yy:    dc.l    0
  3526. TPerRead:dc.w    0
  3527. MemBytes:dc.l    0
  3528. Memory:    dc.l    0
  3529. Memory1:dc.l    0
  3530. Target0:dc.l    0
  3531. Target1:dc.l    0
  3532. Target2:dc.l    0
  3533. Target3:dc.l    0
  3534. Mehrmals:dc.l    0
  3535. Checking:dc.l    0
  3536. CopyActive:    dc.l    0
  3537. ViewActive:    dc.l    0
  3538. Block:    dc.l    0
  3539. Vont:    dc.w    0
  3540. BisT:    dc.w    79
  3541. Apos:    dc.w    0
  3542. Punkt:    dc.b    46,0
  3543. Shift:    dc.l    0
  3544. HL:    dc.l    0
  3545. Color1:    dc.l    0
  3546. Color2:    dc.l    0
  3547. Backup:    dc.l    0
  3548. Row:    dc.l    0
  3549. OldTrack0:    dc.l    0
  3550. OldTrack1:    dc.l    0
  3551. OldTrack2:    dc.l    0
  3552. OldTrack3:    dc.l    0
  3553. ActTrack0:    dc.l    0
  3554. ActTrack1:    dc.l    0
  3555. ActTrack2:    dc.l    0
  3556. ActTrack3:    dc.l    0
  3557. DiskIO0:blk.l    20,0
  3558. DiskIO1:blk.l    20,0
  3559. DiskIO2:blk.l    20,0
  3560. DiskIO3:blk.l    20,0
  3561. Diskrep:blk.l    8,0
  3562. Disk0:    dc.l    0
  3563. Disk1:    dc.l    0
  3564. Disk2:    dc.l    0
  3565. Disk3:    dc.l    0
  3566. df0:    dc.b    "df0:",0
  3567. df1:    dc.b    "df1:",0
  3568. df2:    dc.b    "df2:",0
  3569. df3:    dc.b    "df3:",0
  3570. Nichtda:dc.b    " nicht angeschlossen!",0
  3571. DreiZoll:dc.b    " 3.5  Zoll-Laufwerk! ",0
  3572. FuenfZoll:dc.b    " 5.25 Zoll-Laufwerk! ",0
  3573. Empty:    dc.b    " keine Diskette eingelegt!"
  3574. Protect:dc.b    " Diskette ist schreibgeschützt!",0
  3575. Enable:    dc.b    " Diskette ist nicht schreibgeschützt!",0
  3576. Blocks:    dc.b    " 1758 Blöcke (a 488 Bytes), davon ",0
  3577. Used:    dc.b    "belegt!",0
  3578. DName:    dc.b    "Disketten-Name:",0
  3579. Ram:    dc.b    "RAM:",0,0
  3580. Fast:    dc.b    "FAST-Mem: ",0
  3581. Chip:    dc.b    "CHIP-Mem: ",0
  3582. Frei:    dc.b    "Bytes frei!",0
  3583. even
  3584. ReadBuffer:    dc.l    0
  3585. LongHex:blk.l    2,0
  3586. UBlocks:blk.b    4,0
  3587. ;    dc.w    0
  3588. IBlock:    blk.l    40,0
  3589. IBlock2:blk.l    65,0
  3590. Anzahl:    dc.l    6
  3591. TextPtr:    dc.l    Text1,Text2,Text3,Text4,Text5,text6
  3592. Text1:    dc.w    71
  3593. dc.b    "Dieses Programm bietet Ihnen neben Informationen, auch die"
  3594. dc.b    " Möglichkeit,",0
  3595. Text2:    dc.w    69
  3596. dc.b    "Ihre gesamten Disketten zu Verwalten. D.h. alle Files und"
  3597. dc.b    " Dirs werden",0
  3598. Text3:    dc.w    65
  3599. dc.b    "eingelesen und können abgespeichert werden. Vorher können"
  3600. dc.b    " Sie die",0
  3601. Text4:    dc.w    72
  3602. dc.b    "Einträge sortieren lassen und einzelne wie z.B: die .Info"
  3603. dc.b    "-Files löschen!"
  3604. text5:    dc.w    60
  3605. dc.b    "Die detailierte Anleitung befindet sich auf Diskette: README"
  3606. text6:    dc.w    80
  3607. dc.b    "Sie können Disketten kopieren, Blootblock ansehen und gegeb"
  3608. dc.b    "enenfalls: INSTALL!"
  3609. even
  3610. Install:dc.l    $444F5300,0,$370,$43FA0018,$4EAEFFA0
  3611.     DC.L    $4A80670A,$20402068,$167000,$4E7570FF,$60FA646F
  3612.     DC.L    $732E6C69,$62726172,$79000000
  3613. Seite0:    dc.b    "Seite 0"
  3614. Seite1:    dc.b    "Seite 1"
  3615. T1:    dc.b    "1"
  3616. T80:    dc.b    "80"
  3617. Sektor1:dc.b    "1. Sektor"
  3618. Sektor11:dc.b    "11. Sektor"
  3619. even
  3620. Offset:    dc.b    "  0: 14: 28: 3C: 50: 64: 78: 8C: A0: B4: C8: DC:"
  3621.     dc.b    " F0:104:118:12C:140:154:168:17C:190:1A4:1B8:1CC:"
  3622.     dc.b    "1E0:1F4:"
  3623. BLock1:    dc.b    "Blocktyp:",0
  3624. Block2:    dc.b    "Root-Block             ",0
  3625. Block3:    dc.b    "Sub-Directory          ",0
  3626. Block4:    dc.b    "File-Header            ",0
  3627. Block5:    dc.b    "File-Header Vortsetzung",0
  3628. Block6:    dc.b    "Data-Block             ",0
  3629. Block7:    dc.b    "Sectortabelle          ",0
  3630. Block8:    dc.b    "Boot-Block 0           ",0
  3631. Block9:    dc.b    "Boot-Block 1           ",0
  3632. Block10:dc.b    "Unbekannter Typ        ",0
  3633. Block11:dc.b    "Formatierter Block     ",0
  3634. Inst:    dc.b    "Install:",0
  3635. ChangeT:dc.b    "CHANGE",0
  3636. JumpT:    dc.b    "JUMP",0
  3637. even
  3638. Jump:    dc.l    0
  3639. Change:    dc.l    0
  3640. mx:    dc.w    0
  3641. my:    dc.w    0
  3642. even
  3643. String:    blk.b    66,32
  3644. CheckType:    dc.l    0
  3645. Keys:
  3646. dc.b    91,49,50,51,52,53,54,55,56,57,48,223,39,92,0,48
  3647. dc.b    113,119,101,114,116,122,117,105,111,112,252,43,0,49,50,51
  3648. dc.b    97,115,100,102,103,104,106,107,108,246,228,35,0,52,53,54
  3649. dc.b    60,121,120,99,118,98,110,109,44,46,45,0,0,55,56,59
  3650. dc.b    32,0,0,13,13,27,0,0,0,0,45,0,28,29,30,31
  3651. dc.b    129,130,131,132,133,134,135,136,137,138,0,0,0,0,0,0
  3652. dc.b    0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  3653. dc.b    93,33,34,167,36,37,38,47,40,41,61,63,96,166,0,61
  3654. dc.b    81,87,69,82,84,90,85,73,79,80,220,42,0,33,34,167
  3655. dc.b    65,83,68,70,71,72,74,75,76,214,196,180,0,123,125,126
  3656. dc.b    62,89,88,67,86,66,78,77,59,58,95,0,0,174,176,94
  3657. dc.b    32,0,0,13,13,27,0,0,0,0,95,0,28,29,30,31
  3658. dc.b    129,130,131,132,133,134,135,136,137,138,0,0,0,0,0,0
  3659. dc.b    0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  3660. Copy0:    dc.b    "Diskcopy",0
  3661. Copy1:    dc.b    "Original:",0
  3662. Copy2:    dc.b    "Kopie:",0
  3663. Copy3:    dc.b    "Start Track",0
  3664. Copy4:    dc.b    "End Track",0
  3665. StartT:    dc.b    "00"
  3666. EndT:    dc.b    "79"
  3667. LeseT:        dc.b    "    Lese Track:",0
  3668. SchreibT:    dc.b    "Schreibe Track:",0
  3669. Border0:    dc.w    0,0
  3670.         dc.b    15,0,0,87
  3671.         dc.l    Koord0,0
  3672. Koord0:    dc.w    0,0,9,0,9,18,18,18,18,0,27,0,27,18
  3673.     dc.w    36,18,36,0,45,0,45,18,54,18,54,0,63,0
  3674.     dc.w    63,18,72,18,72,0,81,0,81,18,90,18,90,0,99,0
  3675.     dc.w    99,18,108,18,108,0,117,0,117,18,126,18,126,0,135,0
  3676.     dc.w    135,18,144,18,144,0,153,0,153,18,162,18,162,0,171,0
  3677.     dc.w    171,18,180,18,180,0,189,0,189,18,198,18,198,0,207,0
  3678.     dc.w    207,18,216,18,216,0,225,0,225,18,234,18,234,0,243,0
  3679.     dc.w    243,18,252,18,252,0,261,0,261,18,270,18,270,0,279,0
  3680.     dc.w    279,18,288,18,288,0,297,0,297,18,306,18,306,0,315,0
  3681.     dc.w    315,18,324,18,324,0,333,0,333,18,342,18,342,0,351,0
  3682.     dc.w    351,18,360,18,360,0,0,0,0,9,360,9,360,18,0,18,0,9
  3683. Kopf1:    dc.b    "Kopf oben  (1)",0,0
  3684. Kopf0:    dc.b    "Kopf unten (0)",0,0
  3685. Error0:    dc.b    "0"
  3686. Error1:    dc.b    "39"
  3687. Error2:    dc.b    "40"
  3688. Error3:    dc.b    "79"
  3689. Error4:    dc.b    "20"
  3690. Error5:    dc.b    "60"
  3691. Error6:    dc.b    "Hard-Error-Status für:"
  3692. Error7:    dc.b    "."
  3693. Error8:    dc.b    "E"
  3694. Error9:    dc.b    "Mouse-Klick zum frühzeitigem Beenden!"
  3695. end
  3696.