(Fwd) Re: Fast copy routine needed

From: Ruud_at_Baltissen.org
Date: Mon, 24 Aug 2015 18:49:31 +0200
Message-ID: <55DB4B1B.10398.1585AD3@Ruud.Baltissen.org>
Hello Spiro,


> That is, the drive code handles a bitmap for every sector of the track.
> On start, it reads everything as unread.
> 
> As soon as a sector header arrives under the R/W head, it is read and
> decoded. If the sector is not yet read (bit in the bitmap = 0), the
> block is read and send over to the PC.
> 
> If the sector was already read, the drive code just waits for the next
> sector header and repeats the process, until all blocks are read.

Aha, a very good idea! what I knew so far: the 1541 GCRs the data 
for the wanted sector and then compares it with the data passing 
under the head. I assumed that there wasn't enough time to read the 
data first, de-GCR it ( yes Patryk, you were right :) and then check 
if the sector is the one we want. Or, just popped up, you read the 
header AND data and then do the de-GCRing of the header? 

There is only a little misunderstanding between us: 1541IDE has no 
connection to a PC, it has its own hard disk drive on board. So warp 
mode is out of the question. I have thought about storing raw data 
on the disk but that means that I have (de-)GCR it every time I only 
use the HDD as floppy.

Hmmm, just pops up: what about reading the data of a complete track 
on the HDD and to de-GCR it after reading the complete track?

The above idea is not completely original: I already started with 
building a module to replace the original 2 KB SRAM with a 32 KB 
one. The idea was to read a complete track into memory and, as said 
above, to de-GCR it after reading the complete track.
But I think now that I prefer the idea using the HDD. Reason: no 
additional change of the hardware needed.

<pause, need to paint some walls>

During the painting another idea popped up: combining 1541LPT and 
1541IDE. So far I used removable brackets to take the HDD from the 
1541 and to place it in a PC. 
OK, that means adding an extra 6522 to the drive plus a 25-pins male 
D-connector. (this 6522 takes care of the communication with the PC) 
The advantage: I can fill the HDD in a much more easier and faster 
way with data using prooven software. IMHO that is really worth the 
extra hardware.


Regarding the source codes:
- the one from Forum64.de has no comments, uses illegal opcodes and 
is meant to run on a C64.
- loader-v146.zip has more than 3 MB of data. Not quite user 
friendly to have a peek at.
- LFT's GCR decoding on the fly': just great! Very good explanation 
and a well documented source code. This and the various comments of 
yours made me forget the other two.

One idea was to drop the floppy drive from the project again but 
then I thought that it could come in handy to be able to create an 
image on the spot. The combination of using the HDD for temporary 
storage and LFT's GCR decoding make it worth. I just for the fun :)


Thank you all for your input!


--
   
Kind regards / Met vriendelijke groet, Ruud Baltissen
www.Baltissen.org



       Message was sent through the cbm-hackers mailing list
Received on 2015-08-24 17:00:07

Archive generated by hypermail 2.2.0.