| |
Chesoner
Registered: Apr 2013 Posts: 29 |
Krill loader not working
Hi There,
We are still strungling with the Krill loader, I have to say that we have progressed a lot but we get the following problem :
If we use the following command :
Make prg INSTALL=4000 RESIDENT=9000 zp=10
The install is working good at 4000 but the loader is still located at 0400. if we forced it to load at 9000 it ain't working.
Are we doing something wrong here ? |
|
... 55 posts hidden. Click here to view all posts.... |
| |
Chesoner
Registered: Apr 2013 Posts: 29 |
Quote: Quote:and start code with kickassembler
????
I use sublime for coding and kickassembler to compile and start the code in winvice. |
| |
Bitbreaker
Registered: Oct 2002 Posts: 508 |
And you are sure that you don't have clashes regarding the used zeropage-addresses and you only write sane values to $dd00? I did whole demos with that loader and things always worked out of the box. There's some common pitfalls however regarding the use of irq loaders in general. |
| |
Oswald
Registered: Apr 2002 Posts: 5094 |
" if I attach the drive and set true drive emulation on in winvice and start code with kickassembler it is kind of random if it will load and decrunch a file from the attached drive correct. If i put all the files on a d64 en start the coding from the d64 file it will load/decrunch good."
its hard to understand whats the difference between the 2 scenarios, altho that is the key to your problem.
a) start up winvice, attach _DRIVE_ (?) manually in WinVice, THEN start the program with kickass ???!? (files are not in d64 now??)
b) put everything on a d64 then start coding from d64 ?!?!?! |
| |
doynax Account closed
Registered: Oct 2004 Posts: 212 |
I forget the details, and never completely tracked down the cause in the first place but IIRC the "Handle TDE for autostart" option triggered similar issues in older VICE versions. Something about the stepper motor phase getting into an illegal state and seemingly not being possible to realign. As I recall attaching the image late aggravated the problem.
This may have been G64-specific though. |
| |
Bitbreaker
Registered: Oct 2002 Posts: 508 |
Doynax: i happend to have that kind of autorun problems on 1541u version 1 with my loader :-)
What vice version is used? |
| |
doynax Account closed
Registered: Oct 2004 Posts: 212 |
Quoting BitbreakerDoynax: i happend to have that kind of autorun problems on 1541u version 1 with my loader :-) Originally I also had a similar problem with the stepper motor being out-of-phase at start-up. Essentially the rotation angle is not determined by the register/coil state and so you have to do a little stepping dance to align it properly.
Of course for the most part the initial stepping during the loading of the loader program would fix this, at least if it isn't entirely on the directory track.
However in this particular case VICE hadn't fully emulated the initial load and while it did allow me to read from the directory track no amount of "alignment" (even outright BUMPing) appeared to get the drive into phase. Still, the whole thing might easily have been a bug/misunderstanding on my part.
Quoting BitbreakerWhat vice version is used? Ugh. I'd have to dig through my stack of old notebooks, but probably 2.2. |
| |
Bitbreaker
Registered: Oct 2002 Posts: 508 |
Quoting doynax
Of course for the most part the initial stepping during the loading of the loader program would fix this, at least if it isn't entirely on the directory track.
Not necessarily as for the 1541u it seems the bootloader is transferred directly without using the floppy first, and thus no alignment of the head happens.
I fixed that by loading an arbitrary block before starting the loader itself (need to load the dir anyway beforehand), so the floppy kernal brought the head to a good position before taking over with the loader.
Quoting doynaxUgh. I'd have to dig through my stack of old notebooks, but probably 2.2.
That was actually directed to chesoner, oops :-) |
| |
doynax Account closed
Registered: Oct 2004 Posts: 212 |
Quoting BitbreakerI fixed that by loading an arbitrary block before starting the loader itself (need to load the dir anyway beforehand), so the floppy kernal brought the head to a good position before taking over with the loader. Be careful. I managed to run into a case where the floppy already started up at the directory track but with the alignment still out-of-whack, so while the initial load did succeed the next step landed the head on a half-track.
I suppose the "proper" way of handling this would be to dynamically detect the problem and try to realign after a prolonged read failure. Instead I ended up using the floppy DOS to repeatedly SEEK one full-step outward, while cycling through the bit-rates.
Your method, except with a pair of reads across two tracks, seem like the most reliable approach but I was trying to avoid BUMPs, and didn't have any DOS sectors to read on the remaining tracks.
(Actually the best way is probably to wait for the oracle of drivecode, i.e. Krill, to weigh in on the proper way to handle the issue.) |
| |
chatGPZ
Registered: Dec 2001 Posts: 11386 |
Quote:I managed to run into a case where the floppy already started up at the directory track but with the alignment still out-of-whack, so while the initial load did succeed the next step landed the head on a half-track.
That cant happen on a real drive (and i doubt it can on a recent VICE either). Unless of course the disk was written with a misaligned drive, which results in valid data on 17.5 or 18.5. Or if your stepping routines are broken :) Remember the relation of active coils vs absolute track is fixed - The problem arises whenever you only step relative. You can solve it by assuming certain active coils refer to specific tracks, see here. |
| |
doynax Account closed
Registered: Oct 2004 Posts: 212 |
Quoting GroepazThat cant happen on a real drive (and i doubt it can on a recent VICE either). Unless of course the disk was written with a misaligned drive, which results in valid data on 17.5 or 18.5. Or if your stepping routines are broken :) Remember the relation of active coils vs absolute track is fixed - The problem arises whenever you only step relative. You can solve it by assuming certain active coils refer to specific tracks. Thank you, that makes a lot of sense. Admittedly the problem was encountered with an old version of VICE as opposed to real hardware, and may well have been caused by a drivecode bug. I really should get into the habit of working out what is actually going on instead of fiddling until stuff works.
Incidentally I never considered that the coils may not be magnetized while the drive motor is off. So I always need to recalibrate after restarting the motor. No idea where I'm going to find the RAM for that :(
How much force/tilt is required to make head slip in practice? |
Previous - 1 | 2 | 3 | 4 | 5 | 6 | 7 - Next |