ASM kódoptimalizációs verseny!!!

A cél, egy elõre megadott program minnél kisebb, futattható változatát létrehozni. Egy egyszerû kis programról van szó, amely megnézi, hogy a DosNavigator rezidens-e vagy sem, és ezt tudatja a felhasználóval. Az alap progi forrása itt látható, melyben megtalálsz minden lényeges információt amire szükséged lehet.

;DosNavigator checker.

code    segment
        assume  cs:code,ds:code
        org     100h
start:  mov     ah,99h        ; This part checks, that
        mov     al,00h        ; DosNavigator is loaded
        int     02fh          ; Into memory or not.
        cmp     bx,0444eh     ; If bx="DN" then it is installed
        je      @2

        xor     ax,ax         ; If DN not found
        mov     ah,09h
        lea     dx,msg2
        int     021h
        jmp     @1

@2:     xor     ax,ax         ; If we found DN...
        mov     ah,09h
        lea     dx,msg1
        int     021h
@1:
        mov     ax,4c00h      ; Exit to dos
        int     21h
msg1    db "Dos Navigator founded in memory!$"
msg2    db "Dos Navigator not founded in memory!$"
code    ends
        end     start

A program ugyan ezt kell hogy kiírja, majd kilépjen DOS-ba. A verseny a következõ e-zine megjelenéséig tart, melynek dátumát még nem tudjuk, ezért jobb minnél elõbb elküldened a Formater@ThePentagon.Com címre a Te változatod. A versenyre bárki pályázhat. A legkisebbeket és legötletesebbeket a következõ számban bemutatjuk! A verseny aktuális állásáról is a fenti címen kérhetsz információt! Tehát asm-guruk versenyre fel!

Formater [FCF]