# 02 - рдФрд░ рдПрдХ рдкреВрд░реА рдмрд╛рдЗрдЯ рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рд╣реИ ... | рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХрд╛ рдкрд╛рд░

рдорд╛рди рд╕рдореНрдорд╛рди рдореЗрдВ рд╡реГрджреНрдзрд┐ рдФрд░ рднрд╛рдЧ рджреНрд╡рд╛рд░рд╛ рд╕рдореНрдорд╛рдиред рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рд╕реЗ рд╣рдо рдЖрдкрдХреЛ рд▓реЛрдХрддрдВрддреНрд░ рдХреА рдЖрдХрд░реНрд╖рдХ рджреБрдирд┐рдпрд╛ рдореЗрдВ рдбреБрдмреЛ рджреЗрдВрдЧреЗред рдЖрдЬ рд╣рдо рд╕рд┐рдЬрд╝рдХреЛрдбрд┐рдВрдЧ рдХреЗ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХрд╛рд░реНрдп рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реЗрдВрдЧреЗред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдХреБрдЫ рд░рд┐рд▓реАрдЬ рди рдХреЗрд╡рд▓ рд╕рдВрдХреАрд░реНрдг рджрд╛рдпрд░реЗ рдореЗрдВ рдПрдХ рдкрдВрде рдХреА рд╕реНрдерд┐рддрд┐ рдереА - рдЙрдиреНрд╣реЛрдВрдиреЗ рд╕реАрдзреЗ рдФрд░ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд▓реЛрдЧреЛрдВ рдХреЗ рджрд┐рдорд╛рдЧреЛрдВ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд┐рдпрд╛, рдЙрдиреНрд╣реЗрдВ рдЖрдИрдбреАрдП рдкреНрд░реЛ рд╕реАрдЦрдиреЗ, рдХреЛрдб рджреЗрдЦрдиреЗ рдФрд░ рд╕рднреА рдЫреЛрдЯреЗ рд╡рд┐рд╡рд░рдгреЛрдВ рдореЗрдВ рдШреБрд╕рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд┐рдпрд╛ред рдпрд╣ рдХреЗрд╡рд▓ рд╕рдордЭ рд╕реЗ рдмрд╛рд╣рд░ рд╣реИ рдФрд░ рдмрд╣реБрдд рд╣реА рд░реЛрдЪрдХ рдерд╛ рдХрд┐ рдЗрд╕ рддрд░рд╣ рдХреЗ рдЬрд╛рджреВ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред

рдпрд╣ рдХреНрдпреВ рд╕рджрд╕реНрдпреЛрдВ рдХреЗ рд╕рдореВрд╣ рджреНрд╡рд╛рд░рд╛ рдПрдХ рдХреНрд░реЙрд╕ рд╣реИ - рджреВрд░ 1996 рд╕реЗ рдкреАрд╕реА рдХреЗ рд▓рд┐рдП 128 рдмрд╛рдЗрдЯреНрд╕ рдкрд░рд┐рдЪрдп: рдпрд╣рд╛рдВ рдХрд╛рдо рдХрд╛ рдПрдХ рд╡реАрдбрд┐рдпреЛ рд╣реИ:

рдЫрд╡рд┐





рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ, рджрд╛рджрд╛ рдХреИрд╕реЗ рд▓рдбрд╝рддреЗ рдереЗ ... FIDO- рд╕рдореНрдореЗрд▓рди DEMO.DESIGN рдореЗрдВ Enlight'95 рдХреА рд╕рдлрд▓рддрд╛ рдХреЗ рдмрд╛рдж, рдкреАрд╕реА рдХреЗ рд▓рд┐рдП 128-рдмрд╛рдЗрдЯ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП рдПрдХ рдЖрднрд╛рд╕реА рдкреНрд░рддрд┐рдпреЛрдЧрд┐рддрд╛ рдХреА рдШреЛрд╖рдгрд╛ рдХреА рдЧрдИ рдереАред рд╡рд╣ рдХрдИ рдорд╣реАрдиреЛрдВ рддрдХ рдЪрд▓рд╛, рдЖрдпреЛрдЬрдХреЛрдВ рдиреЗ рдкрд░рд┐рдгрд╛рдо рдПрдХрддреНрд░ рдХрд┐рдП, рдорддрджрд╛рди рдХрд┐рдпрд╛ рдФрд░ рд╡рд┐рдЬреЗрддрд╛рдУрдВ рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдпрд╛ред рдХреЗ рд╕рд╛рде рдкреВрд░реЗ рд░рд┐рд╣рд╛рдИ рд╕рдВрдЧреНрд░рд╣ рдбреЗрдореЛ design'96 рдкрд░ рдЙрдкрд▓рдмреНрдз рд╣реИ Pouet рд╕рдореАрдХреНрд╖рд╛ рдХреЗ рд▓рд┐рдПред рд╡рд┐рдЬреЗрддрд╛ рдореИрдб рдореИрдХреНрд╕ / рдХрддрд╛рд░ рд╕рджрд╕реНрдп рд╕рдореВрд╣ рд╕реЗ рдПрдХ рдХреНрд░реЙрд╕ рдерд╛ ред рдХреНрдпреВрдПрдордЬреА рд╕рдореВрд╣ рд╕рдорд╛рд░рд╛ рд╕реЗ рд╣реИ, рдЙрд╕ рд╕рдордп рд▓реЛрдЧ рддрдХрдиреАрдХреА рд╡рд┐рд╢реНрд╡рд╡рд┐рджреНрдпрд╛рд▓рдпреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЗ рдЫрд╛рддреНрд░ рдереЗ, рдФрд░ рдореИрдб рдореИрдХреНрд╕ рдЦреБрдж рдкреВрд░реА рдЯреАрдо рдХреЗ рдиреЗрддрд╛ рдереЗред

рдЗрд╕ рдкреНрд░рддрд┐рдпреЛрдЧрд┐рддрд╛ рдиреЗ рдкреВрд░реЗ рджреЗрд╢ рдореЗрдВ рдпреБрд╡рд╛ рджрд┐рдорд╛рдЧ рдХреЛ рдЗрддрдирд╛ "рд╣рд┐рд▓рд╛" рджрд┐рдпрд╛ рдХрд┐ Enlight'96 рдХреЗ рдЖрдпреЛрдЬрдХреЛрдВ рдиреЗ рдЕрдкрдиреА рдкреАрда рдкрд░ рдХреНрд░реЙрд╕ рдбрдВрдк рдкреНрд░рд┐рдВрдЯрдЖрдЙрдЯ рдХреЗ рд╕рд╛рде рдЯреА-рд╢рд░реНрдЯ рдХрд╛ рдкреНрд░рд┐рдВрдЯ рдЫрдкрд╡рд╛рдпрд╛ред рдпрд╣рд╛рдБ рдХреБрдЫ рд╕рдВрдЧреНрд░рд╣ рддрд╕реНрд╡реАрд░реЗрдВ рд╣реИрдВ:

рдЫрд╡рд┐

рдЫрд╡рд┐

рдЫрд╡рд┐

рдФрд░ Enlight'96 рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рд╡реАрдбрд┐рдпреЛ рд╕реЗ рдПрдХ рд╢реЙрдЯ :

рдЫрд╡рд┐

рдорд╛рд░реНрдЪ 2020 рдореЗрдВ, рд╕рдореВрд╣ = рдЖрд░ рдПрдордбреАрдП = (рдЬреЛ рдореИрдВ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рддреМрд░ рдкрд░ рдпрд╣рд╛рдВ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реВрдВ) рдиреЗ рдЗрд╕ рдРрддрд┐рд╣рд╛рд╕рд┐рдХ рдХрд╛рд░реНрдп рдХреЗ рдбрд┐рдЬрд┐рдЯрд▓ рд╕рдВрд░рдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ред рд╣рдордиреЗ рдПрдХ рд╡реАрдбрд┐рдпреЛ рдмрдирд╛рдХрд░ рд╢реБрд░реБрдЖрдд рдХреА ... рд╣рд╛рдБ, рдПрдХ рд╡реАрдбрд┐рдпреЛ, рдЬреЛ рдмрд╛рдж рдореЗрдВ YouTube рдкрд░ рдЕрдкрд▓реЛрдб рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдкрд╣рд▓реЗ, 25 рд╡рд░реНрд╖реЛрдВ рдХреЗ рджреМрд░рд╛рди, рдХреНрд░реЙрд╕ рдХрд╛ рдПрдХ рд╡реАрдбрд┐рдпреЛ рд╕рдВрд╕реНрдХрд░рдг рдореМрдЬреВрдж рдирд╣реАрдВ рдерд╛, рдФрд░ рдЗрд╕реЗ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╢рдХреНрддрд┐рд╢рд╛рд▓реА DosBox рдХреБрдВрдЧ рдлреВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереА, рдЬреЛ рд╣рд░ рдХрд┐рд╕реА рдХреЗ рдкрд╛рд╕ рдирд╣реАрдВ рд╣реИред

рдЕрдЧрд▓рд╛, рд╣рдордиреЗ рд╕реНрд░реЛрдд рдХреЛрдб рдХреНрд░реЙрд╕ рд╕рд╣рд┐рдд рд╕рднреА рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рд╛рдордЧреНрд░рд┐рдпреЛрдВ рдХреЛ рдПрдХ рд╕рдВрдЧреНрд░рд╣ рдореЗрдВ рдПрдХрддреНрд░ рдХрд┐рдпрд╛ рд╣реИред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рд▓реЗрдЦрдХ рдиреЗ рдЙрд╕ рд╕рдордп рд╕реНрд░реЛрдд рдХреЛрдб рдХреЛ рдкреНрд░рдХрд╛рд╢рд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдерд╛, рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЙрдирдХреЗ рд╢рдмреНрджреЛрдВ рд╕реЗ, рдХрд╛рдо рдХреЗ рдирд╡реАрдирддрдо рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рд╣реЗрдХреНрд╕ рд╕рдВрдкрд╛рджрдХ рдореЗрдВ рдмрд┐рд▓реНрдХреБрд▓ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ред рддрджрдиреБрд╕рд╛рд░, рдиреАрдЪреЗ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╕реНрд░реЛрдд рдХреЛрдб рд╣рдорд╛рд░реА рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдореВрд▓ рдХрд╛ рдЙрд▓реНрдЯрд╛ рд╣реИ:

; NASM or FASM

        org 100h

        mov bx,es
        add bh,10h              ; bx = cs + 1000h
        mov es,bx               ; es = segment behind 64k of our code (extra video buffer)
        mov ds,bx               ; ds = es

        xor ax,ax
        mov cx,ax
        dec cx                  ; cx = -1
        rep stosb               ; clear extra video buffer
        dec ax                  ; ax = -1
        mov di,0A2D0h           ; set pointer to pixel at 130,80 (col,row)
        mov cl,80
        rep stosw               ; fill 80*2 = 160 pixels by 0FFh color (draw horizontal line)

        mov bx,19A0h            ; set pointer to pixel at 20,160 (col,row)
v:      mov [bx],ax             ; draw vertical line...
        add bx,320
        ja v                    ; ...until bottom

        mov ax,13h
        int 10h                 ; set 320x200 (256 colors) graphical video mode

        mov dx,3C8h
        xor al,al
        out dx,al               ; start palette set from 0 color
        inc dx
        mov cx,0C0h*3
        rep outsb               ; set first 0C0h (192) colors to black
p:
        out dx,al               ; red component
        outsb                   ; green = 0
        outsb                   ; blue = 0
        inc ax                  ; increase color (1, 2, 3..63)
        cmp al,64
        jb p                    ; set colors 0C0h..0FFh to red gradient (from dark to saturated)

        mov ch,0A0h
        mov ds,cx               ; ds = 0A000h = vedeo segment

l:      ; bx = pixel pointer, dx = pixel pointer delta value (initial values doesn't matter)
        cmp bh,0FAh
        jae s                   ; jump if current pixel is out of screen
        mov al,[bx]             ; else get color of pixel
        cmp al,0C0h
        jb s                    ; jump if pixel color is out of red gradient range (0C0h..0FFh)

        ; flame effect
        dec ax                  ; else decrase color by 1 (make it darker)
        mov [bx+1],al
        mov [bx-1],al
        mov [bx+320],al         ; di = 320
        mov [bx-320],al         ; and fill pixels around the current by new color

        mov si,-640             ; position delta: 2 lines up
        test dh,80h
        jnz n                   ; jump if dx is negative (poor pseudorandom boolean check)
        add si,2                ; wind effect
n:      mov [bx+si],al          ; add pixel 2 lines higher than current pixel considering possible wind
s:
        ; restore cross
        mov al,[es:bx]          ; get color from extra video buffer
        or [bx],al              ; replace pixel on screen by 0FFh is al = 0FFh (slow cross redraw)
        add bx,dx               ; increase pixel pointer by (pseudorandom) delta value
        inc dx                  ; increase delta value

        or bx,bx
        jnz l                   ; loop until full screen will be processed

        in al,60h               ; read keyboard scan code
        cmp al,1
        jnz l                   ; repeat if Esc key is not pressed

        mov al,3
        int 10h                 ; set text video mode

        ret                     ; return to DOS


рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рд╕реНрд░реЛрдд рдХреЛ рдХреЛрдб рдХреЛ рдЙрд▓рдЯрдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ, рд╣рдорд╛рд░реЗ рдХреБрдВрдЬреА x86 рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЛ рдЕрдиреБрдХреВрд▓рди рдХреЗ рд▓рд┐рдП рд╡рд┐рдЪрд╛рд░ рдорд┐рд▓рд╛ред рдпрд╣ рдХреИрд╕реЗ рдХреНрд░реЙрд╕ 2 рдирд┐рдХрд▓рд╛ - рдпрд╣ 1 рдмрд╛рдЗрдЯ рдЕрдзрд┐рдХ рд▓реЗрддрд╛ рд╣реИ (126 рдХреЗ рдмрдЬрд╛рдп 127), рд▓реЗрдХрд┐рди рдЬреЛ рдХреБрдЫ рднреА рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рд╡рд╣ рдкрд╛рда рдФрд░ рдзреНрд╡рдирд┐ рдкрд░ рдЦрд░реНрдЪ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рд╣рдордиреЗ рд░рдВрдЧ рдХреЛ рд╣рд░реЗ рд░рдВрдЧ рдореЗрдВ рдмрджрд▓ рджрд┐рдпрд╛ рд╣реИ рддрд╛рдХрд┐ рдЖрдк рдЗрди рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдиреЗрддреНрд░рд╣реАрди рд░реВрдк рд╕реЗ рднреНрд░рдорд┐рдд рди рдХрд░реЗрдВ:



рдпрд╣рд╛рдВ рдРрддрд┐рд╣рд╛рд╕рд┐рдХ рдзрд░реЛрд╣рд░реЛрдВ рдХрд╛ рдордЬрд╛рдХ рдЙрдбрд╝рд╛рдиреЗ рдХрд╛ рдХреЛрдИ рдЙрджреНрджреЗрд╢реНрдп рдирд╣реАрдВ рд╣реИ, рдмрд╕ рд╕рдордп рдХреЗ рд╕рд╛рде рдХрдИ рдмрд╛рдЗрдЯреНрд╕ рдХреЛ рдХрдИ рдмрд╛рдЗрдЯреНрд╕ рдкрд░ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╕рдордп рдмрд╣реБрдд рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдмреАрдд рдЧрдпрд╛, рд▓рдЧрднрдЧ 30 рд╕рд╛рд▓, рдФрд░ рдЕрдиреБрдХреВрд▓рди рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реЛ рдЧрдпрд╛ - 20 рдмрд╛рдЗрдЯреНрд╕ (рд▓рдЧрднрдЧ 16% рдХреЛрдб)ред рд╣рдорд╛рд░рд╛ рдХрд╛рдо рдореВрд▓ рд╕реЗ рдПрдХ рдмрд╛рдЗрдЯ рдЕрдзрд┐рдХ рд╣реИ (рдкрд╛рда рдХреЗ 13 рдмрд╛рдЗрдЯреНрд╕ рдХреЛрдб рдореЗрдВ рдЬреЛрдбрд╝реЗ рдЧрдП рдереЗ, рдЖрдЙрдЯрдкреБрдЯ рдХреЗ рд▓рд┐рдП 6 рдмрд╛рдЗрдЯреНрд╕ рдХреЛрдб, 2 рдмрд╛рдЗрдЯреНрд╕ рдкреНрд░рддрд┐ рдзреНрд╡рдирд┐ = 21, рдорд╛рдЗрдирд╕ 1 рдмрд╛рдЗрдЯ рдЖрдХрд╛рд░ рдЕрдВрддрд░ рдореЗрдВ)ред

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдм рдХреБрдЫ! рд╕реНрд░реЛрдд cross2 рдкрд░ рд╕рдВрдЧреНрд░рд╣ рдореЗрдВ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ Pouet рдФрд░ рдиреЗрддреНрд░рд╣реАрди рдореВрд▓ рдХреЗ рд╕рд╛рде рддреБрд▓рдирд╛ред рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рджреМрд░рд╛рди рд╕рд▓рд╛рд╣ рдФрд░ рд╕рд╛рдордЧреНрд░реА рдХреЗ рд▓рд┐рдП рдкреАрдЯрд░ [рдореЗрдВрдврдХ] рд╕реЛрдмреЛрд▓реЗрд╡ рдФрд░ рдорд╛рдЗрдХ [рдореИрдб рдореИрдХреНрд╕] рд╢рд┐рд░реЛрдмреЛрдХреЛрд╡ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж ред

--- рдИрдУрдПрдл ---

# рдПрдлрдПрдл - рдФрд░ рдПрдХ рдкреВрд░реА рдмрд╛рдЗрдЯ рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рд╣реИ ... | рдкрд╛рдпрд▓рдЯ)
# 00 - рдПрдордмреАрдПрдо ... | рд╕рдВрд╢реЛрдзрди рдХрд╛ рдирд┐рдордВрддреНрд░рдг рдСрдирд▓рд╛рдЗрди 2020
# 01 - IBMP ... | рдкрд░рд┐рдЪрдп рдХреНрдпрд╛ рд╣реИрдВ?
# 02 - рдПрдордмреАрдПрдо ... | рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рдкрд╛рд░
# 03 - IBMP ... | 2B рдпрд╛ рдирд╣реАрдВ 2B
# 04 - IBMP ... | рд╣рдо рд╕реАрдВрдЧреЛрдВ рд╕реЗ рдмреАрд╕реА рд▓реЗрддреЗ рд╣реИрдВ
# 05 - ICBM ... | рдПрдиреАрдореЗ
# 06 - IBMP ... | рдЯреЗрд▓реАрдЧреНрд░рд╛рдо рдореЗрдВ

рджрд╛рджрд╛ рджрд╛рджреА рдХрд╛ рдордиреЛрд░рдВрдЬрди рдЪреИрдирд▓:teleg.run/bornded

рдЪреИрдирд▓ рдХреЗ рдмрдЧрд▓ рдореЗрдВ рдПрдХ рдЪреИрдЯ рд╣реИред рдЗрд╕рдореЗрдВ, рдЖрдк рдбрд┐рдореЛрд╕рд┐рди, рдЕрд╕реЗрдВрдмрд▓рд░, рдкрд┐рдХреНрд╕реЗрд▓ рдЖрд░реНрдЯ, рдЯреНрд░реИрдХрд░ рд╕рдВрдЧреАрдд рдФрд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рдЕрдиреНрдп рдкрд╣рд▓реБрдУрдВ рдХреЗ рд▓рд┐рдП рд╕рд╡рд╛рд▓ рдЙрдард╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЖрдкрдХреЛ рдЙрддреНрддрд░ рджрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдпрд╛ рдЕрдиреНрдп, рдЕрдзрд┐рдХ рд╡рд┐рд╖рдпрдЧрдд рдЪреИрдЯ рдкрд░ рднреЗрдЬрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдЗрд╕рд▓рд┐рдП рд╡реЗ рдЬреАрдд рдЧрдП - рдЗрд╕рд▓рд┐рдП рд╣рдо рдЬреАрдд рдЧрдП!

All Articles