📜 ⬆️ ⬇️

Demo that no one has ever seen

I will say right away that I am not a demomaker, sceneryr or even a programmer, so my opinion is just my opinion. I, so to speak, "lover" of what.

I'll tell you how "it" was with me. I started with the Soviet semi-IBM compatible computer "Search." Konfa: analog i8088 processor, CGA monitor. I started “programming” with batch files (.BAT) because there was a MS-DOS booklet and a floppy disk with this very MS-DOS. There were no BASICs, assemblers, Pascals or, moreover, there was no mention of this, and it was not possible to rewrite them from somewhere. Because all the other schoolchildren then had a minimum - Chinese Tetris and, as a maximum, Dendy, as the highest achievement of the computer industry.

But then gradually some people began to appear first persones 286. Parents dragged them from work, along with debug.exe and other qb.exe. So, I began to appear on diskette compilers with JAVA.

QB.EXE, or Quick Basic, yes, I appeared earlier than the turbo pascal, so I didn’t get a question to code. Especially from somewhere came the book "BASIC for statisticians" or something like that. Of course, I still didn’t guess what statistics is at that time, but there were some interesting commands in this book (especially for drawing graphs, etc.).
')


This is how the first sketches of graphic effects appeared. Nobody knew what a “demo” was, but many people saw what a “screen saver” was in the same Norton Commander. This is how a set of different "screen savers" appeared, if I may say so. With surprise, I found it in backups:

Year: 1992-93
CPU: i8088 4,73 Mhz
Arc: MS-DOS, Quick Basic



There is no matan here, essno is not - only cycles, only random, only integers. In general, only hardcore (melancholy fiercely), but then on the “same” computer I personally was delighted (especially the effects with circles, as schaz remember)

Then from somewhere appeared turbo.exe, the famous Turbo Pascal. The book of Faronov was also bought there. In parallel, experimented with debug.exe, delved into assembler commands. And I began a period of "system" programming, so to speak: all sorts of numerous converters, disk utilities, graphic editors, MOD players, snake games, com crypters, BMP viewers, etc. and so on.

As a systematization of all this “system” in 1997, we started a file manager with a friend, and so that Volkov with his 64Kb size of the executable file. We must have the size of the file being run to be smaller, and the functionality more. In general, the idea was a success, though not completely. But our file manager did work and did contain a furious convenient editor and all sorts of utilities for working with disks. Here it is - Horizont Present Commander:



And so, in order to somehow advertise this product, this mini-intra was coded:

Year : 1998-99
CPU : Pentium 166Mhz
Arc: MS-DOS Pascal / assembler



Matan in general, that is, the type of Sin and Cos, but in general, the algorithm from the Disaev Demo Guide seems to be, with a few changes and optimization on the assembler. The music of course is also skomizhenzhen from somewhere.

Soon I had a moped at 33.6, and a BBS station was immediately created. Well, what a BBS can without BBStro? So this miracle was born:

Year : 1999-2000
CPU: Pentium 166Mhz
Arc: MS-DOS Pascal / assembler



The effect is purely mine, but on the whole, it was dull and slowed down a little less than on video, but it did. Also sines and cosines mostly. No super high matan.

During the time of system coding, there were experiments with all sorts of graphical effects, but, basically, copy-paste from somewhere stenyr sorts with a change except of coefficients and perhaps the imposition of its filters. Well, a couple of its effects. In general, all this button accordion failed to gather in any DeMouy. Yes, and did not want to, because ashamed. But now, after almost 15 years, I decided to get Arvid from the cabinet and try to glue together a selection of the then “experiments.” Not everything here, but only that which somehow worked and did not look terribly buggy:



Although I must say that each algorithm corresponded with me from scratch, mainly with assembly optimization. This is how a part of the source code from 3D Tor looks like:
Begin GetMem(P,64000); Asm mov ax,13h int 10h End; Port[$3c8] := 1; For I := 1 to 63 do Begin Port[$3c9] := i; Port[$3c9] := i; Port[$3c9] := i; End; p1 := 0; p2 := 0; Repeat Asm les di,p db $66,$33,$c0 mov cx,320*200/4 db $f3,$66,$ab End; p1 := p1+0.03; p2 := p2+0.03; Asm fld p2 db $d9,$ff {fcos} fimul o30 fiadd o100 fstp r1 { r1 := 100+cos(p2)*30} fld p1 db $d9,$fe {fsin} fimul o20 fiadd o50 fstp r2 { r2 := 50+sin(p1)*20} End; c1 := 0; Repeat c2 := 0; Repeat Asm fld c2 db $d9,$ff {fcos} fld r2 fmul fld r1 fadd fst r { r := r1+cos(c2)*r2} fld c1 db $d9,$fe {fsin} fmul fstp x { x := r*sin(c1)} fld c1 db $d9,$ff {fcos} fld r fmul fild o200 fadd fstp z 


What now, the inquisitive reader will ask? And - nothing. Home, family, work - work, family, home. Although no, no, yes, and want to shake old. For example, to code a “light” for some auto-navigator or, a little earlier, for a video postcard on MIPS from Vogue magazine: the same light or sinedots . In general, for devices that fall into the hands.



As for the title of the article, you are the first people, after me, who see it all after some 15 years.

PS: And remember: make demo or die!

Source: https://habr.com/ru/post/139651/


All Articles