Jump to content
gozar

PCLINK.SYS support?

Recommended Posts

I was reading through the SDX manual last night and learned about PCLINK.SYS. It's a driver which installs a PCL: device to allow R/W access directly to files and directories on an SIO2PC host. Looks like it's only supported under SIO2BSD, but this is a feature I would use a lot!

 

Any chance of it being added?

Share this post


Link to post
Share on other sites

I was reading through the SDX manual last night and learned about PCLINK.SYS. It's a driver which installs a PCL: device to allow R/W access directly to files and directories on an SIO2PC host. Looks like it's only supported under SIO2BSD, but this is a feature I would use a lot!

 

Any chance of it being added?

Maybe I'm missing something, but RespeQt already allows mounting an arbitrary folder on the host system as a "drive" for file loading and booting. I do it all the time when I update the BIOS on my U1MB. I just mount my Desktop folder as D3: or something. Works great.

 

 

Sent from my iPhone using Tapatalk

Share this post


Link to post
Share on other sites

PCLINK is much more versatile than that. It's a full bi-directional protocol which allows writing to the server's file system in a reliable manner. It requires a driver on the A8 which sends IO commands to the server. The current Respeqt mirroring does indeed work well but lacks any kind of write support and still won't emulate the SDFS disk format, which has been on the to-do list for years.

Share this post


Link to post
Share on other sites

PCLINK support has been put on the ever growing todo list. No clue if/when I'll get around to it.

  • Like 2

Share this post


Link to post
Share on other sites

I can take a look at the PCLINK (I anyway wanted to get more familiar with sio2bsd code).

 

Excellent, it would certainly be a cool feature - but then they are all cool features!!!

 

Is there a debian APT repository for PCLink or is it BSD only?

Share this post


Link to post
Share on other sites

 

And here: https://github.com/TheMontezuma/SIO2BSD

I setup (with KMK permission) the Github repository, so the tool can be developed by the community.

 

Many thanks for those pointers guys!

 

I built the 'SIO2BSD' executable from those sources and all appears to work well. Sadly my Debian server - logically enough! - is in my server room and now physically distant from my A8 so I cannot test it directly. It would be nice to have something similar running under windows, but I have never had any luck at all with the CygWin package, it seems to choke on my complicated usernames.

Share this post


Link to post
Share on other sites

SIO2BSD works fine under CygWin. You may need to do small modifications in the makefile.

 

I may give that a try then TheMontezuma. Is SIO2BSD via CygWin the only PCLink server available or is there something that will run natively under windows?

Share this post


Link to post
Share on other sites

I have ported the SIO2BSD code (PCLINK) to the Linux version of the RespeQt :)

Successfully tested with Raspberry Pi. It works really nice with Sparta Dos and PCLINK driver.

Now I'm struggling with adaptations for Windows.

If anybody is interested in testing I can provide the RPI binaries (and source code of course).

  • Like 5

Share this post


Link to post
Share on other sites

I have ported the SIO2BSD code (PCLINK) to the Linux version of the RespeQt :)

Successfully tested with Raspberry Pi. It works really nice with Sparta Dos and PCLINK driver.

Now I'm struggling with adaptations for Windows.

If anybody is interested in testing I can provide the RPI binaries (and source code of course).

 

 

What functionality does the PCLINK code provide? Or rather, why is this particularly useful? :)

Edited by DrVenkman

Share this post


Link to post
Share on other sites

What functionality does the PCLINK code provide? Or rather, why is this particularly useful? :)

It provides a proper bi-directional protocol for data transfer between the PC and the A8 using virtual folders. The Atari tells the PC: "open a file" and "write this data", etc.

  • Like 3

Share this post


Link to post
Share on other sites

It provides a proper bi-directional protocol for data transfer between the PC and the A8 using virtual folders. The Atari tells the PC: "open a file" and "write this data", etc.

 

 

I guess then the question is, what software on the Atari can take advantage of this, and how does one work this functionality into the workflow of using the Atari? I hope this question makes sense.

Share this post


Link to post
Share on other sites

You need a driver, and SDX provides one. Any software which can run under SDX and which allows the use of the kernel device names will work.

Share this post


Link to post
Share on other sites

With PCLink the Atari side sees and can read/write files stored on the PC disk. Example:

post-6049-0-06698800-1459205313_thumb.png

post-6049-0-74744800-1459205890_thumb.png

post-6049-0-11672100-1459206419_thumb.png

Edited by drac030
  • Like 1

Share this post


Link to post
Share on other sites

I have ported the SIO2BSD code (PCLINK) to the Linux version of the RespeQt icon_smile.gif

Successfully tested with Raspberry Pi. It works really nice with Sparta Dos and PCLINK driver.

Now I'm struggling with adaptations for Windows.

If anybody is interested in testing I can provide the RPI binaries (and source code of course).

Progress :-).

What are the stable read/write speeds?

Share this post


Link to post
Share on other sites

19200

 

Just kidding. I know that you are the speed demon icon_smile.gif

I could transfer data without problems with HSINDEX=3.

Hey, that's great :-).

So I estimate a stable transfer at PD 0 at least with the Win version.

Share this post


Link to post
Share on other sites

Finally I found time to finish the PCLINK port.

 

Joe has already merged the "pull request", so the source code is available in the git repository.

It is the source code from the Drac030's SIO2BSD project, with small adaptations to work with RespeQt (under Linux and under Windows).

It would be great, if somebody could test it with a MAC.

 

I uploaded the Windows binaries here:

RespeQt-PCLINK.zip

 

Drac030 has already explained what PCLINK is.

 

I will try to explain how to use it.

 

You need a Sparta DOS X with a PCLINK.SYS driver in order to get advantage from the new functionality.

Since the PCLINK driver is not a part of the standard Sparta DOS X image, you need to download the Toolkit and extract the driver (with ARC command).

Once it is extracted, you can let it be loaded automatically by modifing the CONFIG.SYS file. Just add a new line, like this one (assuming that you extracted the driver into C:\TKIT\DRV):

DEVICE C:\TKIT\DRV\PCLINK.SYS

or you can load it manually by typing:

C:\TKIT\DRV\PCLINK.SYS

When the driver is loaded you can access devices: PCL1, PCL2, ..., PCL15 in the same way as you access D1, D2, ..., D15.

A PCL device represents a virtual disk mapped to a folder on the PC side.

The PCLINK functionality is very similar (from the user point of view) to mounted folders.

This is why I decided to use the same GUI for that.

In order to enable a PCL device, you just mount a folder.

 

Now you can access the same PC folder mounted as DX in two ways: as DX and as PCLX.

Actually when you type just PCL it will default to PCL1 (like D defaults to D1).

 

So you can type following:

dir PCL:

or

x PCL:game.xex

but you can also copy files to PCL devices, which was I think the main reason for Drac030 to develop the protocol and the software: easy and comfortable way to backup data from the ATARI harddrive.

 

Per default PCLINK accepts only file names with lower case characters (and the ATARI files copied to the mounted folder will have lower case names).

SIO2BSD has a command line parameter to accept file names with upper case characters instead, so you can choose what you like more.

If you find it usefull, we can add a checkbox in the RespeQt settings for that.

 

@Drac030

Thank you for this nice feature. I hope it will reach now even more users :)

Edited by TheMontezuma
  • Like 6

Share this post


Link to post
Share on other sites

Is there any chance of putting a toggle for printer emulation in the settings dialogue so it can be turned off by default? I asked about this years ago re: AspeQt when I found that printer emulation messed up output to a real printer, but the idea was rejected.

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...