abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 16:00 | IT novinky

    Řemínky pro Apple Watch, bezdrátová sluchátka nebo nabíjecí adaptéry. Takovou nabídku našli v uplynulých dnech příslušníci Celního úřadu v Liberci při kontrole kamenného obchodu na Náchodsku. Celkem zde zadrželi 3 035 kusů zboží podezřelého z porušování práv duševního vlastnictví. Pokud by se jednalo o originální výrobky, jejich hodnota by podle odhadu přesáhla 10,8 milionu korun.

    Ladislav Hagara | Komentářů: 2
    dnes 14:11 | Nová verze

    Byla vydána verze 31.1 textového editoru GNU Emacs. Podrobný přehled novinek v souboru NEWS.

    Ladislav Hagara | Komentářů: 3
    dnes 12:22 | Nová verze

    Webový prohlížeč Waterfox (Wikipedie), fork Firefoxu, byl vydán ve verzi 6.7.0. Postaven je na jádru Gecko ESR 153.

    Ladislav Hagara | Komentářů: 0
    dnes 11:22 | Nová verze

    Multiplatformní open source voxelový herní engine Luanti byl vydán ve verzi 5.17.0. Podrobný přehled novinek v changelogu. Přidána byla základní podpora gamepadů. Opraveno bylo několik zranitelností. Původně se jedná o Minecraftem inspirovaný Minetest v říjnu loňského roku přejmenovaný na Luanti.

    Ladislav Hagara | Komentářů: 0
    dnes 11:00 | IT novinky

    Americká technologická společnost Apple loni v Irsku na daních zaplatila 17 miliard dolarů (zhruba 350 miliard Kč). To představovalo 40 procent celkové částky, kterou firma odvedla na dani z příjmů po celém světě. Vyplývá to z účetních výkazů podniku. Platbu výrazně zvýšilo rozhodnutí Soudního dvora EU z roku 2024, podle něhož měl Apple doplatit Irsku na daních 13 miliard eur (313 miliard Kč).

    Ladislav Hagara | Komentářů: 0
    dnes 09:55 | Zajímavý projekt

    CrossPoint Reader je open-source alternativní firmware pro menší, levné čtečky, vybavené cca čtyřpalcovým e-ink displejem. Zahrnuje aplikaci pro čtení e-knih a webový server pro konfiguraci a přenos souborů po síti. Verze 1.0 byla vydána v únoru 2026. Recenze současné verze 1.5 vyšla na Linux Weekly News.

    |🇵🇸 | Komentářů: 0
    21.8. 05:00 | Nová verze

    Byla vydána verze 1.98.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.

    Ladislav Hagara | Komentářů: 0
    21.8. 04:22 | Nová verze

    Byla vydána nová verze 7.1 (YouTube) svobodného open source redakčního systému WordPress. Kódové jméno Mary Lou bylo vybráno na počest americké jazzové klavíristky Mary Lou Williams (YouTube).

    Ladislav Hagara | Komentářů: 0
    20.8. 19:11 | Nová verze

    Bun (Wikipedie), tj. běhové prostředí (runtime) a toolkit pro JavaScript a TypeScript, alternativa k Node.js a Deno, byl vydán ve verzi 1.4. Představení novinek také na YouTube. Bun byl přepsán z programovacího jazyka Zig do Rustu. Pomocí Claude Fable 5.

    Ladislav Hagara | Komentářů: 0
    20.8. 12:33 | Nová verze

    Vývojáři KDE na Mastodonu oznámili vydání balíku aplikací KDE Gear 26.08. Přehled novinek i s náhledy a videi v oficiálním oznámení.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (10%)
     (7%)
     (2%)
     (19%)
     (29%)
     (7%)
     (6%)
     (2%)
     (15%)
     (22%)
    Celkem 2489 hlasů
     Komentářů: 31, poslední 13.8. 00:27
    Rozcestník

    Demoscéna: Wake Up! 16b

    O víkendu proběhla demopárty Outline 2026. Publikována byla prezentovaná dema. Upozornit lze na 16 bajtové, opravdu šestnáct bajtové, zvukově obrazové demo Wake Up! 16b (YouTube).

    20.5. 13:33 | Ladislav Hagara | IT novinky


    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    20.5. 16:20 Int 10
    Rozbalit Rozbalit vše Re: Demoscéna: Wake Up! 16b
    int 10h
    mov bh,0xb8
    mov ds,bx
    L: lodsb
    sub si,byte 57
    xor [si],al
    out 61h,al
    jmp short L
    
    How it works:
    • mov bh,0xb8 / mov ds,bx sets DS to segment 0xB800, the VGA text screen.
    • Loop L:
    • lodsb fetches a byte from DS:SI and advances SI.
    • sub si,57 steps back 57 bytes (roughly 28.5 character cells because text memory is 2 bytes per cell).
    • xor [si],al XORs the byte 57 bytes earlier with the fetched byte, creating a feedback pattern that drifts diagonally/downward as SI keeps moving.
    • out 61h,al sends that byte to port 0x61 (speaker gate), giving a raspy click tied to the data.
    • jmp short L repeats forever.
    Why it looks like Matrix rain:
    • XOR feedback repeatedly flips bits in nearby screen cells, so random-looking glyphs propagate downward columns at differing speeds.
    • Because text mode interleaves character and attribute bytes, both glyphs and brightness bits get scrambled, producing bright green-on-black cascades when the attribute bytes land on the VGA green palette. The overall effect is continuous, columnar mutation—hence the falling code look.
    Speaker write isn’t “random buzz.” out 61h, al drives the PC speaker control port, where:
    • Bit 0: Speaker data enable (routes timer output to the speaker).
    • Bit 1: Gate for PIT channel 2.
    • Bits 4–7: Return keyboard controller status bits when read, but when written they don’t matter to the PIT; still, toggling them alters the two low bits because the whole byte is latched.
    In this loop, AL is the just‑read screen byte, and the loop continually XOR‑feeds video RAM. That feedback quickly settles into short, repeating byte cycles rather than true randomness. Because the low two bits of those cycles directly toggle the speaker gate/output, you hear distinct pitched tones and rhythmic clicks that track the emergent patterns on screen—so the audio is a deterministic byproduct of the evolving video buffer.
    20.5. 16:34 Kernel nanic
    Rozbalit Rozbalit vše Re: Demoscéna: Wake Up! 16b
    Neco podobne v linuxu je na palici :-)
    /*
    Build:  gcc -x assembler-with-cpp -D__KERNEL__ -DMODULE \
               -I/usr/lib/modules/$(uname -r)/build/include \
               -c pok.asm -o pok.o
    Link:   ld -r -o pok.ko pok.o
    Load:   sudo insmod pok.ko
    Unload: sudo rmmod pok
    Note:   Requires legacy VGA text mode exposed and root. Use in VM.
    */
    #define ASM_EXPORTED 1
    #include <linux/module.h>
    #include <linux/kernel.h>
    #include <linux/ioport.h>
    #include <linux/kthread.h>
    #include <asm/io.h>
    
    #define VGA_PHYS 0xB8000
    #define VGA_SIZE 0x4000
    #define OFFSET   57
    
        .intel_syntax noprefix
        .section .data
    vga_ptr:    .quad 0
    task_ptr:   .quad 0
    
        .section .text
        .globl xor_init
        .globl xor_exit
        .type  xor_init,@function
        .type  xor_exit,@function
    
        .globl worker
        .type worker,@function
    worker:
        push rbp
        mov rbp, rsp
        push rbx r12 r13
    
        xor r12d, r12d          /* i = 0 */
    .loop:
        call kthread_should_stop
        test eax, eax
        jnz .done
    
        mov rbx, [vga_ptr]
        movzx eax, byte ptr [rbx + r12]    /* al = vram[i] */
    
        /* j = (i + VGA_SIZE - OFFSET) % VGA_SIZE */
        mov r13d, r12d
        add r13d, VGA_SIZE - OFFSET
        cmp r13d, VGA_SIZE
        jb  .mod_ok
        sub r13d, VGA_SIZE
    .mod_ok:
        mov dl, byte ptr [rbx + r13]
        xor dl, al
        mov byte ptr [rbx + r13], dl       /* vram[j] ^= al */
    
        /* Program PIT channel 2 frequency from al (square wave) */
        mov dx, 0x43
        mov al, 0b10110110                  /* ch2, lobyte/hibyte, mode 3 */
        out dx, al
        mov dx, 0x42
        mov al, byte ptr [rbx + r12]
        and al, 0x3F                        /* limit range */
        add ax, 0x0100                      /* base pitch */
        out dx, al                          /* low byte */
        mov ah, 0x04
        out dx, ah                          /* high byte */
    
        /* Enable speaker gate bits 0 and 1 */
        mov dx, 0x61
        in  al, dx
        or  al, 0x03
        out dx, al
    
        inc r12d
        cmp r12d, VGA_SIZE
        jb  .loop
        xor r12d, r12d
        jmp .loop
    .done:
        pop r13 r12 rbx
        pop rbp
        xor eax, eax
        ret
    .size worker, .-worker
    
    xor_init:
        push rbp
        mov rbp, rsp
    
        /* request_region(0x61,1,"pok") */
        mov edi, 0x61
        mov esi, 1
        lea rdx, port_name[rip]
        call request_region
        test rax, rax
        jz .fail_busy
    
        /* vga = ioremap(VGA_PHYS, VGA_SIZE) */
        mov edi, VGA_PHYS
        mov esi, VGA_SIZE
        call ioremap
        test rax, rax
        jz .fail_map
        mov [vga_ptr], rax
    
        /* task = kthread_run(worker,NULL,"pok") */
        lea rdi, worker
        xor esi, esi
        lea rdx, th_name[rip]
        call kthread_run
        mov [task_ptr], rax
        cmp rax, -4095
        jae .fail_thread
    
        lea rdi, msg_load[rip]
        xor eax, eax
        call printk
        xor eax, eax
        pop rbp
        ret
    
    .fail_thread:
        mov rdi, [vga_ptr]
        call iounmap
    .fail_map:
        mov edi, 0x61
        mov esi, 1
        lea rdx, port_name[rip]
        call release_region
    .fail_busy:
        mov eax, -16            /* -EBUSY */
        pop rbp
        ret
    .size xor_init, .-xor_init
    
    xor_exit:
        push rbp
        mov rbp, rsp
        mov rdi, [task_ptr]
        test rdi, rdi
        jz .skip_stop
        call kthread_stop
    .skip_stop:
        mov rdi, [vga_ptr]
        test rdi, rdi
        jz .skip_map
        call iounmap
    .skip_map:
        mov edi, 0x61
        mov esi, 1
        lea rdx, port_name[rip]
        call release_region
        lea rdi, msg_unload[rip]
        xor eax, eax
        call printk
        pop rbp
        ret
    .size xor_exit, .-xor_exit
    
        .section .rodata
    port_name:  .asciz "pok"
    th_name:    .asciz "pok"
    msg_load:   .asciz "pok loaded\n"
    msg_unload: .asciz "pok unloaded\n"
    
        .section .modinfo
        .asciz "license=GPL"
    
    

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.