XMODEM woes

125 views
Skip to first unread message

Cube Central

unread,
May 18, 2018, 8:33:29 PM5/18/18
to LiNC80
Using the version of XMODEM that came with the image I wasn't able to get a transfer to work.  I tried both TeraTerm and ExtryPutty - both of which I've had success with on the RC2014.  So I borrowed the copy of XMODEM that I found elsewhere (this one has a menu if you type XMODEM with no arguments) and looks like:

=========================
XMODEM 2.7 By M. Eberhard
RC2014:Patched to use CON
=========================

I was able to get TeraTerm to talk to it and transfer files.  I'm not sure if it was my client(s) or the XMODEM program, but would be interested to hear if anyone else has had similar issues.  Cheers!

    -Randal   (at CubeCentral)

PS:  I also was unable to get KERMIT to work with either client, but that could be my unfamiliarity with that protocol.  

Jon Langseth

unread,
May 19, 2018, 6:33:17 AM5/19/18
to LiNC80
That is very odd, as the XModem copy that I have placed on the image is Eberhards version 2.7. I'm going to have to test and possibly re-upload the image.
I'll notify here when I've been able to do test and verify.

Chris Scullion

unread,
May 28, 2018, 3:36:32 PM5/28/18
to LiNC80
I've been having similar problems with both XMODEM and KERMIT.  Neither is working for me.  On the PC end, I've tried C-Kermit (and followed the instructions here: http://linc.no/products/linc80-sbc1/software-for-the-linc80/#xmodem), sx, and the built-in xmodem in minicom.  DOWNLOAD.COM works, more or less... still trying to find the right character delay.

Stephan van Radecke

unread,
May 29, 2018, 3:25:38 PM5/29/18
to LiNC80
I have the same problems with XMODEM (KERMIT too).
The version on the image shows no message or a prompt.

Now copied a version from my RC2014 and it works as expected.
This is my version:

=========================
XMODEM 2.7 By M. Eberhard
RC2014:Patched to use CON
RC2014:Patched to use /Z5
=========================

Jon Langseth

unread,
May 29, 2018, 4:20:18 PM5/29/18
to LiNC80
I've verified that the XMODEM.COM currently on the image files, and pushed to the github repo, is defective.
I have uploaded new image files (version 1.1) to http://linc.no/dl/linc80/diskimages/ and would like to hear if the v1.1 images works for anyone but me.
I've also updated the .pkg files at http://linc.no/dl/linc80/cpm-sw/
Sorry it took me 10 days to verify this, I've been busy on other fronts :(

Chris Scullion

unread,
Jun 2, 2018, 10:00:11 AM6/2/18
to LiNC80
I gave it a try this morning with no luck.  I do see the command summary when I run XMODEM without any parameters.  Here's my results:

A>xmodem MODMADD.BAS /r                                                             

File created                                                                        
Receiving via CON with CRCsCCCCA^A~10 REM *** PROGRAM: MODCHK4.BAS
50?

A>
A>20 REM *** CUBECENTRAL LABS 2018
20?

A>
A>30 REM ***SETUP***
30?

A>
A>40 Randomize
40?

Chris Scullion

unread,
Jun 2, 2018, 10:16:24 AM6/2/18
to LiNC80
Well now, hold on. This may be due to a different problem.  I can't seem to write anything to this CF card.  It doesn't fail silently as in another thread on this forum.  If I try to use ed to create a small text file on any drive I get "DISK OR DIRECTORY FULL".

So, the below was not a valid test, in my opinion.

Jon Langseth

unread,
Jun 2, 2018, 3:19:28 PM6/2/18
to LiNC80
Yes, I agree, what happened with your Xmodem run looks like things ended up doing a lot of stuff that's not related to xmodem...
Several things that spring to mind first... Check and double check your soldering and the cleaning off of any flux or similar contaminants.
Then, if possible, try a different CF card. And finally, check or swap your power supply.

Angus Bliss

unread,
Aug 12, 2020, 7:25:38 AM8/12/20
to LiNC80
I cannot get Xmodem to work, and Download is not reliable, though the hex loaders seem better.

Anyway, someone mentioned having hardware handshake sorted their problem. My FTDI cable does not have RTS/CTS - only 3 wires. Is this my problem, should I get a cable with those connections?

I have another issue that the Port A on the Linc80 does not work so I cannot use that till I get it working.

Angus

Steve Cousins

unread,
Aug 15, 2020, 12:53:06 PM8/15/20
to LiNC80
Using hardware flow control when transferring files works for me. I use various 'FTDI' style cables and adapters with 6 pins: 2 power, 2 rx/tx, 2 flow control.

Steve

Jon Langseth

unread,
Aug 16, 2020, 6:38:58 AM8/16/20
to LiNC80
Yes, hardware handshaking is used by my SIO/2 initialization and the CP/M console, so it will definitely help. Issues with DOWNLOAD not being reliable can be mitigated using inter-character delays in your terminal emulator.

Angus Bliss

unread,
Aug 20, 2020, 2:19:12 AM8/20/20
to LiNC80
Hi Guys,

A FTDI cable with RTS/CTS has worked wonders. Data transfer is now reliable.

I have even had success with XMODEM.

But, can anyone tell me why XMODEM is so much faster than Download. This is for transferring the same package file. In the time Download takes you can XMODEM the file and DEPKG it with time to spare?

Thanks for the feedback guys.

Angus  

Jon Langseth

unread,
Aug 20, 2020, 3:15:34 AM8/20/20
to LiNC80
On Thursday, August 20, 2020 at 8:19:12 AM UTC+2 angus...@gmail.com wrote:
Hi Guys,

A FTDI cable with RTS/CTS has worked wonders. Data transfer is now reliable.

I have even had success with XMODEM.

That's great news!
 
But, can anyone tell me why XMODEM is so much faster than Download. This is for transferring the same package file. In the time Download takes you can XMODEM the file and DEPKG it with time to spare?

XMODEM uses an ACK/NAK transfer scheme of sending the actualt data bytes in packets of data with a simple checksum, and achieves 95-97% transfer efficiency.
DOWNLOAD.COM is made to be as simple as possible, and simply transfers each byte as a hexadecimal representation using two ASCII characters per byte of data, plus a simple checksum per 128 bytes of data, and finally padded so each "block" of data is 128 bytes/256 characters plus checksum. With a header and trailer added, DOWNLOAD can never be better tha 49% efficient, often dropping to 45%. The "unpacking" implementation in the COM file also seems to be less than efficient, making it take a really long time. 

The advantages of DOWNLOAD are:
  thanks to it's simplicity, meaning it can easily be transferred to a target system as a hexdump to be stored using SAVE, 
  the possibility to distribute pre-packaged "PKG" files, 
  if using pre-packaged files, no additional software beyond a terminal emulator is needed on the sending side,
  thanks to G. Searle's project, the RC2014, LiNC80 and RomWBW projects it is very commonly used in bootstrapping a system, so it's very often generally installed :)

Петро Левченко

unread,
Dec 2, 2025, 12:36:01 PM12/2/25
to LiNC80
Does anyone need a ready-made implementation of the X-modem code (only reception from a PC on a Z80 is implemented)? Z80 assembler - x-modem.asm

субота, 19 травня 2018 р. о 03:33:29 UTC+3 Cube Central пише:
Reply all
Reply to author
Forward
0 new messages