home bbs files messages ]

Just a sample of the Echomail archive

<< oldest | < older | list | newer > | newest >> ]

 Message 42528 
 deon to Digital Man 
 ZModem 
 21 Oct 25 17:41:58 
 
TZUTC: 1100
MSGID: 51997.dove-syncdisc@12:1/2 2d5d2c53
PID: Synchronet 3.21a-Linux master/b7d3db6c3 Sep 28 2025 GCC 10.2.1
TID: SBBSecho 3.30-Linux master/88b423313 Sep 29 2025 GCC 12.2.0
COLS: 80
BBSID: ALTERANT
CHRS: CP437 2
FORMAT: flowed
NOTE: FSEditor.js v1.105
Hey DM,

Hoping you can help clarify something for me. I'm playing with zmodem source
code.

In a ZFILE frame, there are 4 bytes used for "flags", and I thought they were
used as bits?

For ZF0, google AI certainly told me they were bits, but suggested that they
are:
Bit 0: LSZ_CONVBIN (Transfer in binary)
Bit 1: LSZ_CONVCNL (convert new lines)
BIt 2: LSZ_CONVRECOV (resume transfers).

However, looking at some old code, I see that the header files had them
recorded as 0x01, 0x02, and 0x03 respectively, and the code I was looking at
was setting ZF0 with

ls_txHdr[LSZ_F0] = LSZ_CONVBIN [pipe] LSZ_CONVRECOV when sending a file.

which doesnt make sense having 0x01 [pipe] 0x03, which equals 3, and bit 0 and
1 are on (not bit 2).

So I went to google AI to help me understand, and it infact came back a
similiar explaination (indicating ZF0 CONVRECOV is 0x03).

So I looked at your zmodem code, and I see that you just set ZF0 to just 0x01.

So is this a bug in the code I'm referencing? ie: LSZ_CONVRECOV should
actually be 0x04 do you know, or are the flags actually treated as values?

Secondly, when looking at your code I was confused on how you are setting ZF1.
It seems it could end up as either ZF1_ZMPROT 0x07, or ZM1_ZMCLOB 0x04 or
ZF1_ZMNEW 0x05 or ZF1_ZMCRC 0x02. IE: also "values".

The Google AI explanation for ZF1 is that it bit has a different purpose.
0x1 - make new name (ok that lines up when used with 0x04 and you have 0x05),
but
0x2 - modify an existing file, and
0x4 - protect and existing file
0x8 - clobber a file.

So your definitions for 0x02 and 0x04 differ, and makes no reference to a CRC
bit.

Any of this make sense? Is the difference due to implementation or version or
something else I havent discovered yet?


...лоеп

---
 ю Synchronet ю AnsiTEX bringing back videotex but with ANSI
 * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
SEEN-BY: 10/0 1 102/401 103/1 17 705 105/81 106/201 124/5016 128/187
SEEN-BY: 129/14 153/7715 154/110 218/0 1 215 601 610 700 840 860 880
SEEN-BY: 226/30 227/114 229/110 206 317 400 426 428 470 700 705 266/512
SEEN-BY: 280/464 291/111 301/1 320/219 322/757 342/200 396/45 460/58
SEEN-BY: 633/280 712/848 902/26 5075/35
PATH: 103/705 218/700 229/426


<< oldest | < older | list | newer > | newest >> ]

(c) 1994,  bbs@darkrealms.ca