| |
Mr. Mouse
Registered: Dec 2001 Posts: 242 |
DKLoader reset issue
Hi all,
Working on another prod, and currently using dkloader to load parts.
Dekadence Loader
However, I noticed that the installation routine is disk-side specific, and to load files on another side I have to reinit the loader for that side. I didn't dive into the 1541 code yet, but I assume upon initialization the directory is read and prepared for easy loading, but one has to do this each time a new floppy is inserted.
I am pramatic, so I just called the installation routine again (in fresh form), but that doesn't work from within the program (it will cause a freeze). I assume that is because the code in the 1541 is still running.
Now, when just installing the loader, then reset it as indicated in the brief readme, followed by an rts to basic, I can in fact restart the installer when sys-ing to my code again.
What is returning to BASIC doing that resets the 1541 drive and I can again install the loader? Does it have something to do with $DD00?
Any hints on how to reset the system so I can do the reinstall of the loader on the fly? |
|
| |
Krill
Registered: Apr 2002 Posts: 3099 |
No idea, really, but all this sounds like horrible workarounds for something that was never intended by the inventor.
Maybe you should look at other loaders that are better suited for your purposes. |
| |
Faayd
Registered: Sep 2002 Posts: 8 |
The drive need a bit to reset, you have to buildin a delay before calling the dkloader-install again.
lda#$ff
jsr loader
//insert a delay
lda#$xx
jsr loader-install |
| |
Mr. Mouse
Registered: Dec 2001 Posts: 242 |
Quote: The drive need a bit to reset, you have to buildin a delay before calling the dkloader-install again.
lda#$ff
jsr loader
//insert a delay
lda#$xx
jsr loader-install
OMG, that is it. I had actually tried that in the beginning, but it was too short a delay turns out. So I assumed that didn't fix it. But now I waited a little while longer and voila......
Thanks Faayd!! Kudos to you ! |
| |
Mr. Mouse
Registered: Dec 2001 Posts: 242 |
To add to the solution, waiting did help, but in my code it still didn't lead to the install routine working.
I found the culprit though, the installer went south because of my raster interrupt still being on, so disabling that temporarily at $d01a let the installer run normally. |