Page 2 of 3

Re: New program: "Serial Disk"

Posted: Mon Jan 18, 2016 7:30 pm
by Anima
simonsunnyboy wrote:Old 1.x TOSes have problems with RTS/CTS. I remember my 1040STFM with TOS 1.04 was very unstable via nullmodem at 9600 and 19200bps without a fixer installed.
You're right. It is highly recommended to have an optimised serial driver like HSMODA installed.

Re: New program: "Serial Disk"

Posted: Sun Jan 31, 2016 11:30 pm
by shazzner
Hey Sascha,

I'm trying to run this program on my computer, but I seem to be coughing up an invalid argument. I'm running:

Code: Select all

./MonoSerialDisk.exe --port=/dev/ttyS0 --baud-rate=19200 ~/Dev/TEST
However I'm getting:

Code: Select all

Serial Disk v1.0.5860.16760

Unhandled Exception:
System.IO.IOException: Invalid argument
  at System.IO.Ports.SerialPortStream.ThrowIOException () [0x00000] in <filename unknown>:0 
  at System.IO.Ports.SerialPortStream..ctor (System.String portName, Int32 baudRate, Int32 dataBits, Parity parity, StopBits stopBits, Boolean dtrEnable, Boolean rtsEnable, Handshake handshake, Int32 readTimeout, Int32 writeTimeout, Int32 readBufferSize, Int32 writeBufferSize) [0x00000] in <filename unknown>:0 
  at (wrapper remoting-invoke-with-check) System.IO.Ports.SerialPortStream:.ctor (string,int,int,System.IO.Ports.Parity,System.IO.Ports.StopBits,bool,bool,System.IO.Ports.Handshake,int,int,int,int)
  at System.IO.Ports.SerialPort.Open () [0x00000] in <filename unknown>:0 
  at (wrapper remoting-invoke-with-check) System.IO.Ports.SerialPort:Open ()
  at MonoSerialDisk.MainClass.InitSerialPort () [0x00000] in <filename unknown>:0 
  at MonoSerialDisk.MainClass.Main (System.String[] tArguments) [0x00000] in <filename unknown>:0 
[ERROR] FATAL UNHANDLED EXCEPTION: System.IO.IOException: Invalid argument
  at System.IO.Ports.SerialPortStream.ThrowIOException () [0x00000] in <filename unknown>:0 
  at System.IO.Ports.SerialPortStream..ctor (System.String portName, Int32 baudRate, Int32 dataBits, Parity parity, StopBits stopBits, Boolean dtrEnable, Boolean rtsEnable, Handshake handshake, Int32 readTimeout, Int32 writeTimeout, Int32 readBufferSize, Int32 writeBufferSize) [0x00000] in <filename unknown>:0 
  at (wrapper remoting-invoke-with-check) System.IO.Ports.SerialPortStream:.ctor (string,int,int,System.IO.Ports.Parity,System.IO.Ports.StopBits,bool,bool,System.IO.Ports.Handshake,int,int,int,int)
  at System.IO.Ports.SerialPort.Open () [0x00000] in <filename unknown>:0 
  at (wrapper remoting-invoke-with-check) System.IO.Ports.SerialPort:Open ()
  at MonoSerialDisk.MainClass.InitSerialPort () [0x00000] in <filename unknown>:0 
  at MonoSerialDisk.MainClass.Main (System.String[] tArguments) [0x00000] in <filename unknown>:0
The only issue I'm seeing is I'm using an actually db9 serial port instead of a usb converter, could that be a cause?

I'm on Ubuntu 15,10

Re: New program: "Serial Disk"

Posted: Mon Feb 01, 2016 1:40 pm
by Anima
shazzner wrote:The only issue I'm seeing is I'm using an actually db9 serial port instead of a usb converter, could that be a cause?
It should work with any serial port. When you start MonoSerialDisk without parameters it prints out all available serial port names. So do you see /dev/ttyS0 in the list?

Re: New program: "Serial Disk"

Posted: Mon Feb 01, 2016 4:26 pm
by shazzner
Thanks Sascha, I'll check again when I get home but I'm almost certain /dev/ttyS0 appeared before

Re: New program: "Serial Disk"

Posted: Tue Mar 22, 2016 1:45 pm
by beakerz
Anima wrote:
beakerz wrote:Is the "write files to PC folder" feature implemented in the meanwhile? If so, would it be possible to publish the latest binaries for convenience?
Thank you in advance!
Yes, you can now write on the PC target as well. Please find attached the most recent version of the Serial Disk tools. Please note that you need to have Mono or .NET installed on your Linux, Mac OS X or Windows machine. Also I recommend to create and choose an empty shared folder on your PC to avoid overwriting important files. Unfortunately it is not as perfect as it should be (like getting sync problems when receiving files while moving the mouse at 115400 bps) but I use it regularly to transfer data from/to my Falcons.
Thank you very much! I'll prepare my environment as you recommended and try out soon...

Re: New program: "Serial Disk"

Posted: Thu Sep 28, 2017 6:25 pm
by christos
Hi,
I am trying to use serial disk (windows 10 - atari megaste) but the system refuses to work. I get a busy bee on the atari. I suspect that serial disk is not using the proper serial port on the megaste and since there are no atari configuration options I can't change it. However the Mega has Serial 2 just like the falcon, so it should work there. Any ideas?

this it the command I used:

Code: Select all

MonoSerialDisk.exe --port=COM1 --disk-size=15 --baud-rate=19200 --stop-bits=1 --handshake=None D:\atari\

Re: New program: "Serial Disk"

Posted: Thu Sep 28, 2017 10:02 pm
by mikro
Btw is the transfer limited to 19200 or one can use the faster ports the MegaSTE/TT/Falcon offers?

Re: New program: "Serial Disk"

Posted: Thu Jan 04, 2018 9:46 pm
by NGF
Have anyone managed to get this running on TT -> PC (win7)?
I have configured and started DRVIN.PRG and SCC.PRG from auto folder and then start STserialdisk.tos and then add new device M, when I double click on M: the busy bee appear but nothing else happends. The PC server is running without errors with this command:
MonoSerialDisk.exe --disk-size=128 --port=COM4 C:\TT\hd\
I have tried all ports on my TT, S1 S2 M1 M2. Any ideas?

Re: New program: "Serial Disk"

Posted: Fri Jan 05, 2018 6:08 pm
by Anima
NGF wrote:Have anyone managed to get this running on TT -> PC (win7)?
I have configured and started DRVIN.PRG and SCC.PRG from auto folder and then start STserialdisk.tos and then add new device M, when I double click on M: the busy bee appear but nothing else happends. The PC server is running without errors with this command:
MonoSerialDisk.exe --disk-size=128 --port=COM4 C:\TT\hd\
I have tried all ports on my TT, S1 S2 M1 M2. Any ideas?
When you start MonoSerialDisk.exe without parameters, it shows all the serial ports available. Is COM4 being listed?

Re: New program: "Serial Disk"

Posted: Fri Jan 05, 2018 7:26 pm
by NGF
Yes COM4 is listed when I start without parameters. But I fear the problem is not the program but the usb2serial cable itself. Can anyone recommend a brand/model of usb2serial?

Re: New program: "Serial Disk"

Posted: Thu Jan 18, 2018 4:27 am
by Blur2040
This seems like a neat tool.

I've tried to use it on a Windows 10 PC. Everything seems to be working right, but when I attempt to access the Serial Disk drive on the Atari, it causes the program on my PC to crash. Following output:

Code: Select all

serialdisk --port=COM3 --baud-rate=19200
Serial Disk v1.0.5318.34247
Press any key to quit.
Reading sector 64 (2048 bytes)...
Unhandled Exception: System.ArgumentNullException: Value cannot be null.
Parameter name: source
   at System.Array.Copy(Array sourceArray, Int32 sourceIndex, Array destinationArray, Int32 destinationIndex, Int32 length, Boolean reliable)
   at MonoSerialDisk.MainClass.ReadSectors(Int32 tSector, Int32 tNumberOfSectors)
   at MonoSerialDisk.MainClass.SerialDataReceiveHandler()
   at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.ThreadHelper.ThreadStart()
I've tried this on both a USB>RS232 Device and the serial port built in on the PC. I have tried more extensive arguments on the .exe per the Readme...same results.

I can't seem to find a compiled Linux of the Serialdisk program. Is one available?

Edit: Looking at the brighter side of things...I did learn a few things about my ST during the process...so...even if I can't get it to work...not a total loss.

Re: New program: "Serial Disk"

Posted: Thu Jan 18, 2018 4:27 pm
by simonsunnyboy
Can't tell on the fault message.

It should directly work on Linux if you have the Mono environment installed.
Try giving it as an argument to the mono exectuable:
$ mono ./serialdisk.exe <<option>>

The serial port info should point to a Linux serial port /dev/ttyS0 or something like that. A DOS/Windows style COMx won't work.

Re: New program: "Serial Disk"

Posted: Thu Jan 18, 2018 9:05 pm
by Anima
Blur2040 wrote:I've tried to use it on a Windows 10 PC. Everything seems to be working right, but when I attempt to access the Serial Disk drive on the Atari, it causes the program on my PC to crash.
I am curious about the error. Care to try the program within Visual Studio to get more details about the crash?

Re: New program: "Serial Disk"

Posted: Fri Jan 19, 2018 2:27 pm
by Blur2040
Thanks for the replies:

Re: Linux - I'm on Debian...but I do concede that I'm a version behind. I installed libmono and whatever dependencies it had, presumed that would be enough. Maybe I missed something, or the update didn't work right.

Re: Visual Studio - Happy to do it. You made it, so that's the least I can do. I presume that this just involves installing the Visual Studio Development environment...loading the source...and I'll probably be able to figure it out from there.

I'll have some more time to mess with it more over the weekend. Perhaps this evening (Friday). Bear with me in that I'm in the U.S. so our times won't match up well.

Some other factors that might be in play:

-I'm in the U.S. running my ST at 60hz.
-I'm on a 1.x TOS. (though I have followed your directions and installed HSMODA)

Re: New program: "Serial Disk"

Posted: Sun Jan 21, 2018 12:31 am
by Blur2040
OK, so bear with me.

Considering that I am most likely the issue, I spent some time today trying various things where I might be goofing up. Things done:

Tested RS232 Connection to my PC using terminal emulator on an Atari and PC. I can send stuff back and forth.
Tested the RS232 Connection visa terminal with both the HSMODEM7 driver as well as the built-in driver in my 1.X TOS
Loaded TOS 2.06 with RAMTOS and tried all of the above items in TOS 2.06
Tried a 50Hz boot disk and various variations on the above
I also tried a few variations on Linux (my issue is that I didn't have ALL the necessary parts of libmono installed)

As a result, SerialDisk PC client doesn't crash...but...it still doesn't work.

Having downloaded VisualStudio...and spending a lot of time trying to figure things out...its throwing the exception below.

...and in fact that's all it does.

Re: New program: "Serial Disk"

Posted: Sun Jan 21, 2018 7:52 pm
by Anima
Thanks for your tests and response with the debugger screenshot. Unfortunately it seems that I have to check it with the Hatari emulator.

One last thing to check though: please try to use different virtual drive sizes like 32 MB/64 MB/128 MB. AFAIK the old TOS has problems with certain sector sizes.

Re: New program: "Serial Disk"

Posted: Sun Jan 21, 2018 10:25 pm
by Blur2040
I messed around a bit more...

When compiling from the source you have posted online, I was able to get things partially working. I built MonoSerialDisk.exe from source. That combined with the original SerialDisk.TOS that you posted (in the original post) allowed me to read from the PC. The posted (attached to a post in this thread) compiled version, crashes when I try to read from it.

The STSerialDIsk.TOS that you posted (attached to a post on Atari-Forum) will not work at all. Causes a never-ending busy-bee on my ST, regardless of which program I use on my PC-side.

I did try various disk sizes and, for whatever reason, I have it working (again, using the MonoSerialDisk I compiled and the original SerialDisk.TOS) with a 20MB disk size.

Re: New program: "Serial Disk"

Posted: Mon Apr 22, 2019 1:50 pm
by z80andrew
Hi all

I've taken MonoSerialDisk and modified it to work with .NET Core 3.0, along with adding a bunch of bugfixes and improvements. Please take a look at https://github.com/z80andrew/SerialDisk. The current release is for Windows x64, but I plan to provide binaries for Linux soon.

I hope someone finds this useful! Please feel free to provide any feedback :)

Re: New program: "Serial Disk"

Posted: Mon Apr 22, 2019 6:30 pm
by Orion_
it would be nice to port this to regular C language, no more mandatory .NET bloated runtime required ..

Re: New program: "Serial Disk"

Posted: Mon Apr 22, 2019 7:17 pm
by ZeroG1972
z80andrew wrote:I hope someone finds this useful! Please feel free to provide any feedback :)
Good evening,

I am really excited about this app! I have a Mega STe but no hard drive (well if: an old Protar ACSI wayward) and rather than buying an UltraSatan I would like to use a Raspberry Pi to manage this external drive. I have several questions: someone would have already tested, if yes is it viable ? Should the Raspberry be started before the Mega STe? Is the transfer rate sufficient compared to an old Protar ACSI?

Thank you in advance for your advice!
Thierry

Re: New program: "Serial Disk"

Posted: Mon Apr 22, 2019 7:44 pm
by z80andrew
Orion_ wrote:it would be nice to port this to regular C language, no more mandatory .NET bloated runtime required ..
Regular C would certainly be more efficient, but much less portable. Regardless, the source code is available to all so anyone can port it if they wish.
ZeroG1972 wrote:I have several questions: someone would have already tested, if yes is it viable ?
.NET Core supports ARM Linux, so yes it is possible. I don't have a Pi to test with but you've piqued my interest :)
I'm currently working on providing Linux binaries (x64 and ARM) as soon as possible, so keep checking the new releases.
ZeroG1972 wrote:Is the transfer rate sufficient compared to an old Protar ACSI?
I don't know that specific drive, but serial communication is always going to be slower than an actual disk. "Sufficient" is subjective. You'll just have to try it once it's available and decide for yourself.

Re: New program: "Serial Disk"

Posted: Mon Apr 22, 2019 8:06 pm
by arf
z80andrew wrote:Hi all

I've taken MonoSerialDisk and modified it to work with .NET Core 3.0, along with adding a bunch of bugfixes and improvements. Please take a look at https://github.com/z80andrew/SerialDisk. The current release is for Windows x64, but I plan to provide binaries for Linux soon.

I hope someone finds this useful! Please feel free to provide any feedback :)
Cool stuff! You got the first “star” from me :-)

Re: New program: "Serial Disk"

Posted: Mon Apr 22, 2019 8:06 pm
by arf
Orion_ wrote:it would be nice to port this to regular C language, no more mandatory .NET bloated runtime required ..
I’m sure no one’s against your efforts ;-) I’d promise to test it on my Windows NT 3.51 and 4.0 machines. x86, Alpha and PowerPC.

Re: New program: "Serial Disk"

Posted: Mon Apr 22, 2019 8:08 pm
by arf
ZeroG1972 wrote:
z80andrew wrote:I hope someone finds this useful! Please feel free to provide any feedback :)
I am really excited about this app! I have a Mega STe but no hard drive (well if: an old Protar ACSI wayward) and rather than buying an UltraSatan I would like to use a Raspberry Pi to manage this external drive. I have several questions: someone would have already tested, if yes is it viable ? Should the Raspberry be started before the Mega STe? Is the transfer rate sufficient compared to an old Protar ACSI?
Sorry to disappoint you, but an old ACSI device does 200-400 KB/s, modern ones ~1000 KB/s. A 'serial' disk on the MegaSTE can do, at best, around 22 KB/s. Worst case 1.9 KB/s.

Re: New program: "Serial Disk"

Posted: Tue Apr 23, 2019 6:39 am
by joska
z80andrew wrote:Regular C would certainly be more efficient, but much less portable.
Good luck in porting .net applications to anything but the major, current operating systems. C on the other hand can be ported to virtually anything. What if I want to run the SerialDisk server on my Falcon to share files with my ST's with no ethernet hardware?