WHDLoad MantisBT - RawDIC
View Issue Details
0003968RawDIC[All Projects] Generalpublic2018-09-24 17:552018-09-25 13:56
ReporterStingRay 
Assigned ToWepl 
PrioritynormalSeverityminorReproducibilityalways
StatusassignedResolutionopen 
PlatformOSOS Version
Product Version5.0 
Target VersionFixed in Version 
MachineA4000
CPU68060
CPUSpeed50
ChipSetAGA
GFXCardPicasso IV
ChipMem2 MB
FastMem96 MB
WorkbenchOS 3.1
KickROM40 - Kick 3.1
KickSoftNone
Summary0003968: Defininig a tracklist with tracks in reversed order gives "No Disk in Drive" Error
DescriptionWhen defining a tracklist with tracks in descending order (f.e. 159 -> 158) rawDIC quits with "No Disk in Drive!" error (DFLG_NORESTRICTIONS is set). This of course doesn't make sense at all and should be corrected.

Workaround for now is using one entry per track (I'm using a MACRO for this) but this increases the size of the resulting executable quite a bit for obvious reasons.
Steps To ReproduceCreate a tracklist in descending order such as:

.disk1 dc.l 0 ; Pointer to next disk structure
    dc.w 1 ; Disk structure version
    dc.w DFLG_NORESTRICTIONS ; Disk flags
    dc.l .tracks ; List of tracks which contain data
    dc.l 0 ; UNUSED, ALWAYS SET TO 0!
    dc.l FL_DISKIMAGE
    dc.l 0 ; Table of certain tracks with CRC values
    dc.l 0 ; Alternative disk structure, if CRC failed
    dc.l 0 ; Called before a disk is read
    dc.l 0 ; Called after a disk has been read


.tracks TLENTRY 159,000,$1800,SYNC_STD,DecodeTrack
    TLEND


and start the imaging process. It will not work.
 
TagsNo tags attached.
Attached Files

Notes
(0006397)
Wepl   
2018-09-25 11:46   
descending order of tracks was probably never forseen
allowing this requires probably checking for other side effects
ATM I can't tell when I will find time to fix this ;)
(0006398)
StingRay   
2018-09-25 13:53   
(Last edited: 2018-09-25 13:56)
It's not urgent as it's easy to workaround this problem, my current solution to read the disk backwards looks like this:

ML MACRO
.T SET 159
    REPT 160
    TLENTRY .T,.T,$1800,SYNC_STD,DecodeTrack
.T SET .T-1
    ENDR
    ENDM


tracks ML
    TLEND

and works fine. :) For reference, this is needed for the game Guardian as the tracks (and hence also the file data) are stored in backwards order. :)


Issue History
2018-09-24 17:55StingRayNew Issue
2018-09-25 11:46WeplNote Added: 0006397
2018-09-25 11:46WeplAssigned To => Wepl
2018-09-25 11:46WeplStatusnew => assigned
2018-09-25 13:53StingRayNote Added: 0006398
2018-09-25 13:56StingRayNote Edited: 0006398bug_revision_view_page.php?bugnote_id=6398#r952