WHDLoad MantisBT - RawDIC | |||||
| View Issue Details | |||||
| ID | Project | Category | View Status | Date Submitted | Last Update |
| 0002925 | RawDIC | [All Projects] General | public | 2014-01-19 12:01 | 2017-11-09 14:29 |
| Reporter | Codetapper | ||||
|---|---|---|---|---|---|
| Assigned To | Wepl | ||||
| Priority | normal | Severity | major | Reproducibility | always |
| Status | closed | Resolution | fixed | ||
| Platform | OS | OS Version | |||
| Product Version | 4.6 | ||||
| Target Version | 5.0 | Fixed in Version | 5.0 | ||
| Machine | A1200 | ||||
| CPU | 68030 | ||||
| CPUSpeed | 50 | ||||
| ChipSet | AGA | ||||
| GFXCard | None | ||||
| ChipMem | 2 MB | ||||
| FastMem | 32 MB | ||||
| Workbench | OS 3.0 | ||||
| KickROM | 39 - Kick 3.0 | ||||
| KickSoft | 40 - Kick 3.1 | ||||
| Summary | 0002925: File exceeds diskimage message | ||||
| Description | You cannot use a CRC entry on a multiple disk game when only the 2nd/3rd/4th disk has a different track list from the first disk. You get the message "file exceeds diskimage" coming up every single time, no matter if the disk CRC matches or not. | ||||
| Steps To Reproduce | As an example, this code will NOT work as there are multiple disk structures setup but the CRC check is done on disk 2: --- DSK_1 dc.l DSK_2_SPS1336 ; Pointer to next disk structure dc.w 1 ; Disk structure version dc.w 0 ; Disk flags dc.l TL_1 ; List of tracks which contain data dc.l 0 ; UNUSED, ALWAYS SET TO 0! dc.l FL_NULL ; List of files to be saved 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 DSK_2_SPS1336 dc.l 0 ; Pointer to next disk structure dc.w 1 ; Disk structure version dc.w 0 ; Disk flags dc.l TL_1 ; List of tracks which contain data dc.l 0 ; UNUSED, ALWAYS SET TO 0! dc.l FL_NULL ; List of files to be saved dc.l CRC_2_SPS1336 ; Table of certain tracks with CRC values dc.l DSK_2_Copylock ; 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 DSK_2_Copylock dc.l 0 ; Pointer to next disk structure dc.w 1 ; Disk structure version dc.w 0 ; Disk flags dc.l TL_1 ; List of tracks which contain data dc.l 0 ; UNUSED, ALWAYS SET TO 0! dc.l FL_NULL ; List of files to be saved 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 CRC_2_SPS1336 CRCENTRY 0,$20af CRCEND --- But doing it this way will work, ie. put the CRC check on disk 1 and branch to a different disk 2 structure: --- DSK_1 dc.l DSK_2_SPS1336 ; Pointer to next disk structure dc.w 1 ; Disk structure version dc.w 0 ; Disk flags dc.l TL_1 ; List of tracks which contain data dc.l 0 ; UNUSED, ALWAYS SET TO 0! dc.l FL_NULL ; List of files to be saved dc.l CRC_1_SPS1336 ; Table of certain tracks with CRC values dc.l DSK_1_Copylock ; 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 DSK_1_Copylock dc.l DSK_2_Copylock ; Pointer to next disk structure dc.w 1 ; Disk structure version dc.w 0 ; Disk flags dc.l TL_1 ; List of tracks which contain data dc.l 0 ; UNUSED, ALWAYS SET TO 0! dc.l FL_NULL ; List of files to be saved 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 DSK_2_SPS1336 dc.l 0 ; Pointer to next disk structure dc.w 1 ; Disk structure version dc.w 0 ; Disk flags dc.l TL_1 ; List of tracks which contain data dc.l 0 ; UNUSED, ALWAYS SET TO 0! dc.l FL_NULL ; List of files to be saved 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 DSK_2_Copylock dc.l 0 ; Pointer to next disk structure dc.w 1 ; Disk structure version dc.w 0 ; Disk flags dc.l TL_1 ; List of tracks which contain data dc.l 0 ; UNUSED, ALWAYS SET TO 0! dc.l FL_NULL ; List of files to be saved 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 CRC_1_SPS1336 CRCENTRY 0,$ca88 CRCEND --- While updating the Putty/Silly Putty install, disk 1 on all versions can use the same tracklist as it has a copylock on track 1 on most versions and a completely blank track on the others. But disk 2 on some versions has a copylock on one version, blank data on a couple of others, and real data on another version. Hence I thought I'd just do a CRC check on disk 2 for the copylock version and pick the right disk, then for disk 3 all versions can use the same tracklist again. But you get "File exceeds diskimage" appearing the instant disk 1 has finished! I tried on various RawDIC versions, the oldest being v1.9 and they all seem to be buggy. I guess it has never worked properly. | ||||
| Tags | No tags attached. | ||||
| Relationships | |||||
| Attached Files | |||||
| Notes | |||||
|
|
|||||
|
|
||||
| Issue History | |||||
| Date Modified | Username | Field | Change | ||
|---|---|---|---|---|---|
| 2014-01-19 12:01 | Codetapper | New Issue | |||
| 2017-10-21 15:40 | Wepl | Assigned To | => Wepl | ||
| 2017-10-21 15:40 | Wepl | Status | new => assigned | ||
| 2017-11-07 23:08 | Wepl | Target Version | => 5.0 | ||
| 2017-11-09 14:27 | Wepl | Fixed in Version | => 5.0 | ||
| 2017-11-09 14:29 | Wepl | Note Added: 0005827 | |||
| 2017-11-09 14:29 | Wepl | Status | assigned => closed | ||
| 2017-11-09 14:29 | Wepl | Resolution | open => fixed | ||