| |
Flavioweb
Registered: Nov 2011 Posts: 463 |
Drive code: 1541/81 code conversion.
I have a simple question (for you experts).
This is a drivecode for 1541:
DRV_5BYTELOOP
BVC DRV_5BYTELOOP ; Wait for data from the R/W head
CLV
LDA $1C01
STA (BUFLO),Y
INY
CPY #$05 ; Read 5 GCR bytes
BNE DRV_5BYTELOOP
RTS
How can i translate it to work on a 1581? |
|
... 4 posts hidden. Click here to view all posts.... |
| |
MagerValp
Registered: Dec 2001 Posts: 1078 |
http://cadaver.homeftp.net/rants.htm
Read rants #5, #7, #12, and #13. You can also look at the source for ULoad Model 3 release 1. |
| |
Krill
Registered: Apr 2002 Posts: 2980 |
Firmware including source code: http://www.zimmers.net/anonftp/pub/cbm/firmware/drives/new/1581/
Schematics: http://www.zimmers.net/anonftp/pub/cbm/schematics/drives/new/15..
WD1770 info: http://www.cloud9.co.uk/james/BBCMicro/Documentation/wd1770.html
WD1770/2 datasheet: http://dev-docs.atariforge.org/files/WD1772.pdf
Some general info: http://vice-emu.sourceforge.net/plain/drive_info.txt
A 1581 clone: http://www.students.tut.fi/~leinone3/dcn2692/index.html
And lastly, check the VICE source code: http://sourceforge.net/projects/vice-emu/ |
| |
Krill
Registered: Apr 2002 Posts: 2980 |
Oh, and what do you want to do? Write an IRQ loader with 1581 support? Then yes, see MagerValp's post, and Krill's Loader, repository version 146 has 1581 support, too. |
| |
Flavioweb
Registered: Nov 2011 Posts: 463 |
I have to learn a lot of things...
So thanks for all the infos.
I'm just courius to see if i can imagine how to write an iffl loader that works on 41/71/81 autodetecting the device.
For 41/71 there are no problems.
They comes with 1581.
Should be great if i add a "decrunch on the fly" for level exomized files... |
| |
TNT Account closed
Registered: Oct 2004 Posts: 189 |
AFAIK the only program using WD177x inside 1581 directly is MMC64 D81 Writer. |
| |
MagerValp
Registered: Dec 2001 Posts: 1078 |
Lasse's rants give you all the information you need to write an IFFL loader that supports 1541/70/71/81/CMD FD/HD - that's how I learned :) |
| |
cadaver
Registered: Feb 2002 Posts: 1160 |
Don't remember if I've asked this, but do you do anything special to speed up IFFL scanning on 1581/FD/HD? I never got around to that, as didn't use IFFL in an actual production so far, and only built the 1541 proof-of-concept routine. |
| |
Flavioweb
Registered: Nov 2011 Posts: 463 |
I don't know how much time is needed by 81/Fd/HD to complete the seek process... maybe fast enough...
But i have no code to test now.
Maybe MagerValp tried something about this... |
| |
Krill
Registered: Apr 2002 Posts: 2980 |
Is there a need to speed up scanning on 1581? Loading a random block, the entire track it is located on is read in a revolution or two, then the links can be walked in no time. Repeat for the rest of the file's tracks.
That said, one can always implement scanning on demand, such that a seek is only performed when loading. |
| |
MagerValp
Registered: Dec 2001 Posts: 1078 |
Quote: Don't remember if I've asked this, but do you do anything special to speed up IFFL scanning on 1581/FD/HD? I never got around to that, as didn't use IFFL in an actual production so far, and only built the 1541 proof-of-concept routine.
On 1581 I buffer a track in the drive and then read all 40 t/s links from ram in one sweep. On CMD FD/HD the C64 requests sectors from the drive but only transfer the first two bytes. The 1581 version is a lot faster. |
Previous - 1 | 2 - Next |