Jump to content
knusperfisch

SIO2SD and real 1050 drive don't like each other?

Recommended Posts

There is a problem with SIO2SD together with my 1050. Or maybe I'm just stupid ;-)

 

1050 is set as D1: because I want to boot from some old disks.

SIO2SD does not react if SIO2SD D1 is empty and I can boot from a floppy, so no problem at all.

But If I boot from SIO2SD and then remove the disk image from SIO2SD's D1 and add another to D2, SIO2SD does not respond anymore. The 1050 keeps responding as D1.

 

So how is it possible to boot selectively from Sio2SD (as D1) and then read Disks from 1050 (as D1) and copy them to SIO2SD (with empty disk image in D2)?

 

When 1050 is set as D2 it works as intended, but I can't boot floppy disks then.

 

I tried fiddling around with SIO2SD settings like TopDrive and Device ID. This had no effect, what do these settings mean? Why to set a device ID when SIO2SD can handle all devices anyway?

Edited by knusperfisch

Share this post


Link to post
Share on other sites

Might be possible its leaving a sio line high when any slot is active on sio2sd firmware? It shouldn't but it may... not a proper handshake if it does.

Share this post


Link to post
Share on other sites

Might be possible its leaving a sio line high when any slot is active on sio2sd firmware? It shouldn't but it may... not a proper handshake if it do

 

Maybe, Copy program shows Error 138 = Device timeout

Share this post


Link to post
Share on other sites

I'm not quite getting what your problem is. You should be able to select images for each emulated drive or have each empty/inactive without problem.

 

The only problem arises if both an emulated and real drive are active - you don't want that because then both of them will respond. Simply leaving the real drive empty isn't sufficient, you have to turn it off.

Share this post


Link to post
Share on other sites

I'm not quite getting what your problem is. You should be able to select images for each emulated drive or have each empty/inactive without problem.

 

The only problem arises if both an emulated and real drive are active - you don't want that because then both of them will respond. Simply leaving the real drive empty isn't sufficient, you have to turn it off.

 

I found out that everything works fine if I do not preload the fast SIO routines from sio2sd. Of course the 1050 can't handle fast SIO but sio2pc responds even when sio2sd-D1 is empty. This makes it look like it is a sio2sd problem rather than a 1050 problem.

 

Problem vanished ;-)

Edited by knusperfisch

Share this post


Link to post
Share on other sites

I think he is saying that empty is not good enough... the sd slot must be set to off.

 

If that is not working with high speed routines then that thows it back into the firmware fast sio routine not leaving go of the control line. That would require a tweak to the code and a new flash of the firmware to fix.

 

Both of my sio2sd are firmware bricked at the moment. I will have to find or buy a programmer to test this further. One works fine the other has problems... and little help comes from the maker. I wait for the atmel that never comes... Looks like I have to do that myself at this point.

Edited by _The Doctor__

Share this post


Link to post
Share on other sites

I am not convinced yet. When you have HS SIO active in Atari and out of the sudden you want your 1050 to operate it also results in error 138... Although some programs have a retry/fallback routine.

 

Leaving a slot empty is not the same as leaving a slot off (this is to be as compatible as a real device which also can be switched on without a medium)

Share this post


Link to post
Share on other sites

The HS SIO routines might be the problem - standard speed drives won't operate properly if commands are coming down at high speed, even if destined for another device.

Share this post


Link to post
Share on other sites

Leaving a slot empty is not the same as leaving a slot off (this is to be as compatible as a real device which also can be switched on without a medium)

 

True, If a slot on a real disk drive is left empty it will still respond with error 144 (device done) because it will try to read the disk but there is nothing to read. On a virtual disk drive handled by an emulator, the emulator usually simply ignores any requests made to an empty disk slot, passing the command along the SIO chain, which gives the user the convenience of switching drive ids from real to virtual drives and vice versa at will, rather conveniently. AspeQt for example takes that route. This is not exactly compatible with real device behaviour, but the question is whether this incompatibility causes problems or gives more flexibility to the whole system. In my opinion the latter is true, if you gain more with this slight incompatibility I am all for it as it makes my life easier. After all isn't that the exact idea behind having all these new peripherals (to make our lives easier and more exciting with the Ataris). if i had to design a device like SIO2SD i would take the same route meaning I would simply ignore requests for an empty slot, or if I wanted an exact emulation i would have added soft power switches to the software so that a drive can be turned ON and OFF like a real disk drive.

Edited by atari8warez
  • Like 1

Share this post


Link to post
Share on other sites

Since people are talking about SIO2SD here I will ask my question here. I've been using my SIO2SD with a 1050 drive to copy real disks to my Mac. I've been copying a bunch of disk with no problems for the past couple of days but today I started getting errors when writing to the ATR on my SIO2SD. The reading from the real disks are fine. Could there be a problem with my SIO2SD? Since I have already copied a bunch of disks without any problem, I was wondering if my SIO2SD might be failing. I didn't change anything I was doing in the process. Any suggestions?

 

I tried using my SDrive but it seems you can't use a real drive with it since it takes up all four drives.

 

Allan

Share this post


Link to post
Share on other sites

I just tried it on another 1050 with the same results. I also notice that the screen on the SIO2SD sometimes fades out on and off.

 

I get a lot of Error 138 if that helps at all.

 

Allan

Share this post


Link to post
Share on other sites

I just tried it on another 1050 with the same results. I also notice that the screen on the SIO2SD sometimes fades out on and off.

 

I get a lot of Error 138 if that helps at all.

 

Allan

Same thing happened to me on one of my SIO2SD's that another user here built a few years ago. The wire from the 5v ready line had come loose from the SIO connector. Just had to re-solder that back on and it's okay now...

Share this post


Link to post
Share on other sites

Same thing happened to me on one of my SIO2SD's that another user here built a few years ago. The wire from the 5v ready line had come loose from the SIO connector. Just had to re-solder that back on and it's okay now...

I opened mine up and looking at the soldering of the plug that the SIO cable plugs into might be questionable. I am going to resolder these and see what happens.

 

Allan

Share this post


Link to post
Share on other sites

Well I solder the four solder pads but it is still doing it. It's not every time. Only sometimes. There is one pad that looked like it was never soldered. I didn't soldered that one assuming it wasn't a mistake but now I am wondering. Are all five pads(wires) suppose to be connected?

 

Allan

 

Share this post


Link to post
Share on other sites

Well I solder the four solder pads but it is still doing it. It's not every time. Only sometimes. There is one pad that looked like it was never soldered. I didn't soldered that one assuming it wasn't a mistake but now I am wondering. Are all five pads(wires) suppose to be connected?

 

Allan

 

Both of my devices use all five wires so the answer is more than likely Yes

Share this post


Link to post
Share on other sites

I found out that everything works fine if I do not preload the fast SIO routines from sio2sd. Of course the 1050 can't handle fast SIO but sio2pc responds even when sio2sd-D1 is empty. This makes it look like it is a sio2sd problem rather than a 1050 problem.

HS routines loaded from SIO2SD at boot are 1050 Turbo (TopDrive, Toms, Tygrys) compatible only. There is no fallback in this mode and all connected drives must comply with this. This mode works this way. (Thats why I want this mode in APE and AspeQT to be compatible with as many software as it is only possible). It is not any drive problem but HS routine. Patching these routines - maybe, but who will do this?

SDrive do not emulate this mode.

 

About responding by SIO2SD even when not set for this particular drive - you have to patch/write it yourself or wait for new version, but it is not known where it can be...

Share this post


Link to post
Share on other sites

HS routines loaded from SIO2SD at boot are 1050 Turbo (TopDrive, Toms, Tygrys) compatible only. There is no fallback in this mode and all connected drives must comply with this. This mode works this way. (Thats why I want this mode in APE and AspeQT to be compatible with as many software as it is only possible). It is not any drive problem but HS routine. Patching these routines - maybe, but who will do this?

SDrive do not emulate this mode.

 

About responding by SIO2SD even when not set for this particular drive - you have to patch/write it yourself or wait for new version, but it is not known where it can be...

 

Well,

 

I do not want to de-rail the topic, but I have a question about this turbo-mode in SIO2SD. You say it is compatible to Turbo 1050 and similar drives, so here is my problem...

 

I created and collected approx. 700 tip-animations, most of them were packed with Superpacker/Exomizer using page 4 and page 5 as buffer and depack area. The animations >64k also come with a Gr.2 text-title that uses page 6, thus pages 4, 5 and 6 are all used by the files. When I load one of these tip-animations on a Turbo 1050 drive (5,25"), I can install the turbo into page 1 and the file gets loaded with highspeed. When I load one of these tip-animations on a Hyper-XF (5,25" or 3,5"), I can also install the turbo, errm, Hyper-XF speeder, into page 1 and the file gets loaded with highspeed.

 

Now, if I create an ATR image of the disk and try to load this image with SIO2SD and turbo-mode installed into page 1 (all real Atari drives switched off, so there is only SIO2SD active), the file begins loading but crashes after a few sectors are loaded. If I switch off SIO2SD turbo-mode the file runs fine. In other words, on my real Atari drives the tip-animations run with highspeed if the speeder is installed into page 1 on SIO2SD they do not run at all if the speeder (turbo) is installed into page 1, why ?!? If required I can send you an example of these tip-animations in ATR format and you can try to load it with your SIO2SD... (maybe I am only using the wrong keys to install turbo into page 1 or my firmware is old and buggy or ...)

 

-Andreas Koch.

Share this post


Link to post
Share on other sites

HS routines loaded from SIO2SD at boot are 1050 Turbo (TopDrive, Toms, Tygrys) compatible only. There is no fallback in this mode and all connected drives must comply with this. This mode works this way.

The original 1050 Turbo highspeed code had a check in there so that only D1: was accessed in 1050 Turbo mode. If you wanted Turbo mode also on D2: or higher you had to change this manually. Here's a code snippet of the highspeed routine:

0122 LDA $023A
0125 CMP #$32
0127 BCS $014B
IIRC TurboDos had some special autoexec commands so you could enable 1050 Turbo mode on other drives automatically on boot. But I never used this as I only had a single 1050 Turbo.

 

I'd suggest the SIO2SD code should do something similar so that other drives will work, too.

 

(Thats why I want this mode in APE and AspeQT to be compatible with as many software as it is only possible). It is not any drive problem but HS routine. Patching these routines - maybe, but who will do this?

I don't think this is a good idea, there's a real big issue with the 1050 Turbo protocol:

 

The protocol uses bit 7 of DAUX2 to signal if the transmission is in standard speed (bit 7 = 0) or in high speed (bit 7 = 1). This was no issue back then with "real" disk drives as the highest sector number was 1040. So bits 3-7 of DAUX2 were always 0.

 

But, obviously, you'll have a problem with images larger than 32767 sectors. Should you now interpret bit 7 of DAUX2 as the highest bit of the sector number (so you can actually access sectors 32768-65535) or should it be interpreted as a flag to toggle between standard and high speed.

 

Long story short: 1050 Turbo protocol doesn't work with 32768-65535 sector images.

 

so long,

 

Hias

  • Like 1

Share this post


Link to post
Share on other sites

As for now I do not have enough knowledge, to help you with these aimations.

But, this HiSpeed routine uses some IRQ - changes vector - I do not remember now which and how. That could be the problem.

Did you tried to load it from SIO2SD with this Hyper-XF speeder - is it possible to do that this way - this is UltraSpeed disk initializer or just US routine?

There are different Turbo compatible disk initializers, but for 99,99% they will work same way.

Share this post


Link to post
Share on other sites
I don't think this is a good idea, there's a real big issue with the 1050 Turbo protocol:

(...)

Long story short: 1050 Turbo protocol doesn't work with 32768-65535 sector images.

 

so long,

 

Hias

 

Thanks for explaining more.

 

I do not want it to work in autosensing mode, but with some sort of switching option for particular drive, just to have compatibility with old software.

So I think that it should not be a problem with large images, but of course there always will be someone trying to use it wrong way.

Share this post


Link to post
Share on other sites

Well I solder the four solder pads but it is still doing it. It's not every time. Only sometimes. There is one pad that looked like it was never soldered. I didn't soldered that one assuming it wasn't a mistake but now I am wondering. Are all five pads(wires) suppose to be connected?

 

Allan

 

Just to follow up. I soldered the last part. It was soldered on the back but not the front like the rest. Unfortunately it didn't make any difference. I hooked up my SIO2serial cable and that seems to be behaving for now. Hope to most some more disks to Atarimania today. I have been uploading a bunch in the last couple of days. Takes a while but worth it.

 

Allan

Share this post


Link to post
Share on other sites

HS routines loaded from SIO2SD at boot are 1050 Turbo (TopDrive, Toms, Tygrys) compatible only. There is no fallback in this mode and all connected drives must comply with this. This mode works this way. (Thats why I want this mode in APE and AspeQT to be compatible with as many software as it is only possible). It is not any drive problem but HS routine. Patching these routines - maybe, but who will do this?

SDrive do not emulate this mode.

 

About responding by SIO2SD even when not set for this particular drive - you have to patch/write it yourself or wait for new version, but it is not known where it can be...

 

I think, I now understand why you want 1050 turbo support in AspeQt and APE, the HS OS loaded from SIO2SD must be preventing you from using an SIO2PC in high-speed mode. Well I hope you realize that SIO2SD is the problem here, not AspeQt or APE.

Share this post


Link to post
Share on other sites

 

I think, I now understand why you want 1050 turbo support in AspeQt and APE, the HS OS loaded from SIO2SD must be preventing you from using an SIO2PC in high-speed mode. Well I hope you realize that SIO2SD is the problem here, not AspeQt or APE.

Thats not a SIO2SD or AspeQT problem. Nor Turbo Drive or Turbo procedures.

 

It is just the use case.

 

You cannot use both with same high speed. Of course, they work in normal speed, but why use that if high speed is possible?

I did not found copier or dos, which allows both speed modes, choosing proper for current used drive.

So I am looking for ability, to have connected to XL/XE computer, for example, Turbo drive as D1: and AspeQT as D2: and both working in Turbo mode to transfer data between computer and them in Turbo speed (protocol).

 

Of course, I can use SIO2SD instead AspeQT as D2: and transfer everything from/to drive, disconnect Turbo drive from D1:, unload Turbo procedures (even as cold start and reboot to dos/other copier), connect AspeQT as D1: and transfer data between SIO2SD and AspeQT in UltraSpeed.

 

But this is not comfortable, because of transferring the same data twice, with intermediator.

Share this post


Link to post
Share on other sites

Considering that every HI-SIO appoach is something that it not foreseen by the OS, it is not suprising, that differently "patche" (virtual) drived are not compatible.
If the problem is really about copying disks, my recommendation woul by to use RAM Disk (direct or D8) as mediator as it gives you virtually no lost in speed (D1=>RAM, RAM=>D2) compared to a direct copy (D1=>buffer=>D2).

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...