Website owners

ZXNet echo conference «real.speccy»

From Moderator of REAL.SPECCY To All 1 April 2001


Rejoice, Oleg!

April 01, 2001, Oleg Melinuk wrote, hoping that the following words would reach All:

OM> People, attention! We invite all owners of websites dedicated to SPECTRUM
OM> to register in the SPECTRUM TOP statistical system. The system
OM> is still crude, but every day glitches are fixed and corrected.

OM> _Our address http://www.melinuk.h1.ru_

Screw the sites! As soon as I start visiting your sites from Spectrum, you will advertise.


[I ZX] [Team Guardian] [Team Kelly]

Hasta la vista.
Tim Kelly

... tim_...@mail.ru 500:622/1@zxnet http://kgs.h1.ru

From Alexander Groholsky To All 3 April 2001

MoRS> Screw the sites! As soon as I start visiting your sites from Spectrum,
MoRS> you will advertise
MoRS>.

What do you mean I’ll start? I've been browsing websites for two years now from the real Spectrum. How!!!
And so as not to ask unnecessary questions, I’ll simply say that we have a bbska on which
Linux is installed, under Linux there is a Lynx browser, so it converts html pages into
the usual bbs ANSI format with a cursor. This is how we climb. I'm using this on
mail.ru made myself an e-mail. And the files that you download from the Internet in this way
are put into a special file, where they are stored for three days, and from there
anyone can download these files, just like from a regular bbski. True, previously only from level 30
there was access to the Internet, but now they have made it from level zero, so anyone can climb,
although they only give you 30 minutes of time, but you register under a different name and
there again. I have 20 names there! ;) So, about sites, it’s not entirely off-topic!

Well, that’s all, Moderator, for now.

Alexander Grokholsky was with you on April 3, 2001
[I ZX] Spawn/Last Masters Group/X-Project Association 18:00:52

... E-Mail:spaw...@mail.ru - FidoNet: 2:461/16.23 - ZXNet: 500:572/16.23

From Moderator of REAL.SPECCY To All 4 April 2001


Rejoice, Alexander!

April 03, 2001, Alexander Groholsky wrote, hoping that the following words would reach the Moderator of REAL
SPECCY:

AG> Hello, Moderator!

[Skipped]

AG> Well, that’s all, Moderator, for now.

[+] - Correspondence with the moderator, public discussion policy
moderation.

From Oleg Melinuk To All 4 April 2001


OM>> _Hаш адpес http://www.melinuk.h1.ru_

From Alexander Groholsky To All 6 April 2001

OM> From the spectrum, on sites? Yes, I won’t make it...

I did! ;)
Well, that’s all, Oleg, for now.

Alexander Grokholsky was with you April 6, 2001
[I ZX] Spawn/Last Masters Group/X-Project Association 05:41:55

From Moderator of REAL.SPECCY To All 6 April 2001

... tim_...@mail.ru 500:622/1@zxnet http://kgs.h1.ru

From Dimka To All 21 April 2001

and what browser?
tell us in more detail!!!
in...@udav.ru

From Alexander Groholsky To All 25 April 2001

Hello Dimka!

April 21, 2001 at 20:32:42
Dimka wrote to All on the topic "Re: Site owners":

D> and what browser?
D> tell us in more detail!!!

The lynx browser, which is on the provider's PC, and I have the usual Mellon in
512 dots per line mode. Spectrum does not use any protocols,
regular ANSI with a cursor, Lynx itself converts pages to ANSI format.

Well, that's all, Dimka, for now.

Alexander Grokholsky was with you April 25, 2001
[I ZX] Spawn/Last Masters Group/X-Project Association 20:42:18

From Sergey Zotov To All 27 April 2001

AG> The lynx browser, which is on the provider's PC, and
AG> I have the usual Mellon in
AG> mode with 512 dots per line. Spectrum does not use any protocols,
Well, this is not news to me. :) I, at the same time as several other advanced people, expressed this way of working on the Internet from the Spectrum. :) But! Where did you get such a provider?! In Samara, no one gives us allotted shells! :(((

It’s better to put links, then you will even show frames. :) And
you can download several files at the same time from one browser.

By the way! How do you transfer files to yourself? After all, *nix does not support Zmodem,
X, or Y By default... only uucp and tcp/ip. Are you sending via e-mail?

AG> normal ANSI with a cursor, lynx itself converts pages to
AG> ANSI format.
Not exactly, but in principle correct ;)

E-mail: zs...@nm.ru ~/ <~ http://www.zx.ru/zs/
ZXNet: 500:8462/1 /_ _> ftp://zx-museum.org.ru/zs/

From Yuri Voynalovich To All 3 May 2001

If you have a shell and you can run programs, then you simply copy the standard RZ and SZ utilities into your directory
(receive zmodem / send zmodem, they can be found on
the Internet) - and download as soon as it fits ;) (sometimes they are already present on the server).

WBW, COMbin8OR/PHT


From Sergey Zotov To All 4 May 2001

YV> are you running?

YV> If you have a shell and can run the programs, then just copy
YV> into your directory
YV> the standard RZ and SZ utilities (receive zmodem / send zmodem,
YV> they can be found on
YV> the internet) - and download it as fast as you can ;) (sometimes they are already
YV> present on the server).
Can you give me a link?

2All: No one can blur out the description of the protocol? There are sorts, you can
understand them, but I want to read the descriptions.

ZXNet: 500:8462/1 ~/ <~ http://www.zx.ru/zs/
Fido: 2:5057/21.93 /_ _> ftp://zx-museum.org.ru/zs/

From Yuri Voynalovich To All 5 May 2001

Black, snowflake or snowflake, snowflake snowflake snowflake:
ftp://ftp.cronyx.ru/.1/FreeBSD/ports/i386/current-packages/Latest/lrzsz.tgz

From Sergey Zotov To All 6 May 2001

YV> Would you like to write a multi-disk processor?
The UU protocol is not a UU encoding. =D Using this protocol, *NIX networks
exchange data (i.e. there are only *nixes in the grid, there are no windows, semi-axes or other
systems; for local networks it is useful - additional protection against hacking, because the Internet
uses tcp/ip). It was actively used before the advent of tcp/ip. By the way, you could
pump data from your provider from the shell via UU, and not via ZModem, if
your terminal supported it. It is for this protocol that I need the docks.

From Mihail Zharov To All 7 May 2001


Hello, Sergey!

Friday 04 May 2001, at 14:54:04,
Sergey Zotov -> Yuri Voynalovich:

[delete]

SZ> 2All: No one can blur out the description of the protocol? There are sorts
SZ>, you can understand them
SZ>, but I want to read the descriptions.

uue? then:

╒═══< Begin file: uue_alg .txt >══════════

■ UUE encoding algorithm:

1) Read 3 bytes from the source file.
2) Split the resulting 24 bits (8x3=24) into 4 parts, i.e. 6 bits each.
3) Add to each part the number 32 (decimal)

Example: We have three numbers 234 12 76. Bitwise it will be like this -

11101010 00001100 01001100 we break it down and get -

111010 100000 110001 001100 add 32 -
+100000 +100000 +100000 +100000
------ ------ ------ ------
1011010 1000000 1010001 101100 or in letters -
Z @ Q ,

That's all. In the UUE file, the first position contains the number of encoded
characters + 32. I.e. the entire line contains 61 characters. 1 character goes to the number.
60 characters of _code_ remain. If we do the math, we see that to get
60

characters of the code, 45 original characters are needed. For a full line at the beginning there is

the letter "M", and its ASCII code = 77. 45+32=77.
╘═══< End file: uue_alg .txt >════════════


Happy connections, Sergey...

...┌─[ZX]─>─[Scorpion]─┬─[T.]─>─[FDD]─>─[RAM]─>─[HDD]─>─[CD]─┐

From Sergey Zotov To All 11 May 2001

ZXNet: 500:8462/1 ~/ <~ http://www.zx.ru/zs/
Fido: 2:5057/21.93 /_ _> ftp://zx-museum.org.ru/zs/

From Alexander Groholsky To All 14 May 2001

SZ> Well, this is not news to me. :) At the same time, I, along with several more
SZ> advanced
SZ> people, expressed this way of working on the Internet from the Spectrum. :) But! Where did you
SZ> get such a provider?! In Samara, no one gives dedicated shells!
SZ> :(((

But I didn’t get a provider, we just have a bbska in Kharkov, through
which this entry into the Internet is carried out.

SZ> But it’s better to put links, then you will even show frames. :) And
SZ> you can download several files simultaneously from one browser.

And how I’ll put what’s on the bbsk, it’s not mine! :)

SZ> By the way, how do you transfer the files to yours? After all, *nix does not support either
SZ> Zmodem,
SZ>, or X, or Y By default... only uucp and tcp/ip Are you sending all the files from
SZ>? and-neta throw them into a special file aria on the bbs, well
then, as with a regular bbski, you download them!

From Sergey Zotov To All 17 May 2001

ZXNet: 500:8462/1 ~/ <~ http://www.zx.ru/zs/
Fido: 2:5057/21.93 /_ _> ftp://zx-museum.org.ru/zs/

From Alexander Groholsky To All 17 May 2001

AG>> And how?
SZ> You see real HTML on the screen, only in console execution. Roughly
SZ> speaking, colored text to active links. You can point to links
SZ>?

Well, yes.

SZ> ;) You can also enter text into forms and press buttons aka [buttons]. And
SZ> if
SZ> not
SZ> I’m mistaken (I haven’t used it for a long time) there the pictures are inserted as [INLAY]. :)

Well, a shot like that :)

SZ> By the way! The HTML > TXT converter I'm going to insert as a plug-in into
SZ> ZXWordPerfect.

What kind of miracle is this? :)

From Sergey Krinitsin To All 19 May 2001

Greetings, Mihail

May 7, 2001 Mihail Zharov ---> Sergey Zotov

MZ> ■ UUE encoding algorithm:

[...]

How is the CRC of sections calculated?

Good bye.

From Mihail Zharov To All 24 May 2001


Привет, Sergey!

Суббота 19 Май 2001, в 22:43:38,
Sergey Krinitsin -> Mihail Zharov:

MZ>> ■ Алгоритм UUE-кодирования:
SK> [...]
SK> А как CRC секций считается?

╒═══< Begin file: uue-code.txt >══════════

UUE-кодирование.

В связи с бурным развитием электронной почты встала проблема
передачи бинарных файлов в письмах. Существующая технология
не позволяет передавать такие файлы напрямую т.к. в них
содержатся символы с кодами менее 32 и более 127 которые
воспринимаются программным обеспечением как управляющие.
Для решения этой проблемы был разработан метод UU(E)-кодирования.
Суть метода заключается в pазбиении тpех восьмибитовых
слов (24 бита) на четыpе шестибитовых, добавляя к каждому
слову число 32 (код пpобела), чтобы получить возможность
пеpедать это в обычном письме электpонной почты. Таким
обpазом, шестибитное слово пpеобpазуется к набоpу
`!"#$%&'()*+,-./012356789:;<=>?@ABC...XYZ[\]^_,
доступному для пеpедачи. Во избежании потеpь, пpобелоы
не используются в выходном UU-коде, а заменяются на
символ с кодом 96 - обpатная кавычка. Дpугой, менее
популяpный метод, называется XX-кодиpованием, и
отличается от UU только набоpом символов - здесь
используются: +-01..89ABC...XYZabc...xyz.
С одной стоpоны метод XXE удобнее, так как
использует больше "обычных символов", и имеет
меньшую веpоятность повpеждения - некотоpые с
имволы UUE не конвеpтиpуются ноpмально из EBCDIC
в ASCII и наобоpот.
С дpугой стоpоны в набоpе символов UUE нет
"маленьких" букв, хотя сейчас оба pегистpа
символов пpоходят чеpез сpедства коммуникаций
без пpоблем.

В общем случае готовый UUE файл выглядит так:

[ section a of b of file filename.ext < uuencode by Dos Navigator > ]
[ filetime xxxxxxxx ]
[ begin 644 filename.ext ]
[ UUE-код ]
[ end ]
[ CRC областей ]

Hеобязательные параметры заключены в квадратные скобки.
Рассмотрим назначение этих параметров подробнее. Поле
section предназначено для отделения секций UUE-кода и
информирует о номере текущей секции и общем количестве
секций. Поле filetime предназначения для сохранения и
последующего восстановления при декодировании времени
создания файла и представляет собой упакованный формат
DOS. Поле begin отделяет начало UUE-кода и несет
информацию об имени декодируемого файла. Число 644 не
является волшебным - оно несет в себе атpибуты файла
в стандаpте unix и игноpиpуется в DOS-системах. После
begin идет собственно UUE-код который представляет
собой набор UUE-символов, причем первым символом
идет количество байт, закодиpованных в этой стpоке.
Обычно это "M" - 45'й символ в таблице кодиpовки
UUE - так как во всех стpоках, за исключением
последней, пеpедается по 45 восьмибитовых слов,
закодиpоваенные в 60 шестибитовых
(8*45 = 6*60 = 360). Конец UUE-кода обозначается
директивой end. Область CRC содержит конрольные
суммы секций и файла в целом.

Как вычисляется CRC.

Размеp CRC - 16 бит. Для каждого последующего
байта с точки зpения языка Ассемблеpа она
вычисляется так: n

ror [word ptr ChkSum],1
movzx ax,[byte ptr CurrentByte]
add [word ptr ChkSum],ax

Пеpед началом подсчета [ChkSum] должен быть
pавен нулю. По окончании подсчета контpольная
сумма UUE и pавна [ChkSum]. Таким образом
видно, что ChkSum файла любой длины, состоящего
из одних нулей будет нуль.

Далее следует небольшой пpимеp на языке Pascal,
вычисляющий контpольную сумму of 'entire input file'.

Uses
Dos;
Const
BufSize = 16*1024;
Var
f : File;
ChkSum : Word;
FSize : LongInt;
Buf : Array[1..BufSize] of Byte;
i : Word;
FName : PathStr;
Procedure CalcChkSum(Var Buf;Size:Word;Var PrevSum:Word);Assembler;
Asm
mov cx,Size
jcxz @@End
push ds
lds si,Buf
les di,PrevSum
mov dx,word ptr [es:di]
xor ax,ax
@@1:
lodsb
ror dx,1
add dx,ax
loop @@1
pop ds
mov word ptr [es:di],dx
@@End:
End;
Begin
if ParamCount <>1 then
Exit;
FName:=ParamStr(1);
WriteLn('Calculating UUE CheckSum of "'+FName+'"...');
FileMode:=0;
Assign(f,FName);
Reset(f,1);
FSize:=FileSize(f);
ChkSum:=0;
for i:=1 to FSize div BufSize do
Begin
BlockRead(f,Buf,BufSize);
CalcChkSum(Buf,BufSize,ChkSum);
End;
i:=FSize mod BufSize;
if i > 0 then
Begin
BlockRead(f,Buf,i);
CalcChkSum(Buf,i,ChkSum);
End;
WriteLn('sum -r/size ',ChkSum,'/',FSize,' entire input file');
Close(f);
End.

Следует учесть, что контpольная сумма
каждой отдельной секции (from "begin"/first
to "end"/last encoded line) вычисляется с
учетом того, что каждая стpока оканчивается
на ASCII символ 0Ah. Корни этого растут из
того, что UUE был пеpвоначально пpедназначен
для UNIX-систем. Таким обpазом контpольная
сумма для стpочки 'end' должна вычисляться
как для 'end'#$0A (в паскалевском ваpианте).

Вот готовая програмулься для ЮЮКивания.
Правда на Си, но тама есть коменты.

/*
* uuencode.c -
* Simple uuencode utility
* Jim Cameron, 1997
*/

#include "stdio.h"
#include "stdlib.h"

#define MAX_LINELEN 45

#define ENCODE_BYTE(b) (((b) == 0) ? 0x60 : ((b) + 0x20))

typedef unsigned char BYTE;

int main (int argc, char *argv []){

FILE *infile = NULL;
FILE *outfile = NULL;
int linelen;
int linecnt;
BYTE inbuf [MAX_LINELEN];
BYTE *inbytep;
char outbuf [5];

if (argc != 3){
fprintf (stderr, "Syntax: uuencode \n");
exit (1);
}

/* Try and open the input file (binary) */

infile = fopen (argv [1], "rb");
if (infile == NULL){
fprintf (stderr, "uuencode: Couldn't open input file %s\n", argv[1]);
exit (1);
}

/* Try and open the output file (text) */

outfile = fopen (argv [2], "wt");
if (outfile == NULL){
fprintf (stderr, "uuencode: Couldn't open output file %s\n", argv[2]);
exit (1);
}

/* Write the 'begin' line, giving it a mode of 0600 */

fprintf (outfile, "begin 600 %s\n", argv [1]);

do{

/* Read a line from input file */

linelen = fread (inbuf, 1, MAX_LINELEN, infile);

/* Write the line length byte */

fputc (ENCODE_BYTE (linelen), outfile);

/* Encode the line */

for (linecnt = linelen, inbytep = inbuf;
linecnt > 0;
linecnt -= 3, inbytep += 3)
{

/* Encode 3 bytes from the input buffer */

outbuf [0] = ENCODE_BYTE ((inbytep [0] & 0xFC) >> 2);
outbuf [1] = ENCODE_BYTE (((inbytep [0] & 0x03) << 4) +
((inbytep [1] & 0xF0) >> 4));
outbuf [2] = ENCODE_BYTE (((inbytep [1] & 0x0F) << 2) +
((inbytep [2] & 0xC0) >> 6));
outbuf [3] = ENCODE_BYTE (inbytep [2] & 0x3F);
outbuf [4] = '\0';

/* Write the 4 encoded bytes to the file */

fprintf (outfile, "%s", outbuf);

}

fprintf (outfile, "\n");

} while (linelen != 0);

/* Write the 'end' marker */

fprintf (outfile, "end\n");

/* Tidy up and return */

fclose (infile);
fclose (outfile);

return 0;
}

╘═══< End file: uue-code.txt >════════════


Приятных коннектов, Sergey...

... ┌─[ZX]─>─[SPbZXNet]─┬─[FIDONet]─>─[INet]─>─[ZXNet]─>─[ZX]─┐