flat assembler
Message board for the users of flat assembler.
 Home   FAQ   Search   Register 
 Profile   Log in to check your private messages   Log in 
flat assembler > Examples and Tutorials > floor demo

Goto page 1, 2  Next
Author
Thread Post new topic Reply to topic
avcaballero



Joined: 02 Feb 2004
Posts: 138
Location: Madrid - Spain
floor demo
Hello there, long time I'm not here, but I can't get into this forum where I usually access from. Firstly I guessed that anyone was playing banning ips, but now I think it is ok: less time lost Wink... Well, a floor demo here... Yeah... See you up until two or three months Smile


Description:
Download
Filename: SueloWF04b.zip
Filesize: 2.02 KB
Downloaded: 99 Time(s)


_________________
Siempre aprendiendo
Post 13 Apr 2013, 15:55
View user's profile Send private message Reply with quote
HaHaAnonymous



Joined: 02 Dec 2012
Posts: 1173
Location: Unknown
Stupid post removed.


Last edited by HaHaAnonymous on 28 Feb 2015, 21:05; edited 1 time in total
Post 13 Apr 2013, 16:18
View user's profile Send private message Reply with quote
DOS386



Joined: 08 Dec 2006
Posts: 1907
COOL ... but I can't RTFS (or is this the next disassembling challenge?) :-\
Post 15 Apr 2013, 13:59
View user's profile Send private message Reply with quote
baldr



Joined: 19 Mar 2008
Posts: 1651
DOS386,

It's (somewhat cryptic) example how not to use extended headers.

E.g. WinMain() unnecessarily establishes stack frame (it doesn't use neither parameters nor locals) and saves/restores ebx/esi/edi (they're not modified through its execution). It does some other weird stuff, like after GetMessage(): cmp eax, 1 / jb return_wParam_to_caller / jnz call_GetMessage_again. Looks innocent because hWnd, wMsgFilterMin and wMsgFilterMax are all zero, but with filter this may lead to dead loop when GetMessage() returns -1.

WndProc() saves/restores registers too, but they're tampered one call deeper. Some functions it calls indeed modify esi, but one of them apparently went paranoid: it saves not only those registers, but ecx & edx too, to be extra safe. Wink
Post 15 Apr 2013, 15:30
View user's profile Send private message Reply with quote
Walter



Joined: 26 Jan 2013
Posts: 114
Agree with HaHa, DOS386 and baldr!

Just as a starting point.

For those who prefer to assemble their
own source when presented with an EXAMPLE.


Code:

;***************** 
;* CeilFloor.asm * 
;***************** 

format pe gui 4.0 

include 'win32ax.inc' 

XLEN = 640 
YLEN = 400 
ELAPSE = 20 

struct RGBQUAD 
  rgbBlue     db ? 
  rgbGreen    db ? 
  rgbRed      db ? 
  rgbReserved db ? 
ends 

struct BITMAPINFO 
  bmiHeader BITMAPINFOHEADER 
  bmiColors RGBQUAD 
ends 

section '.data' data readable writeable 

strClass db 'CeilFloor'0 
strTitle db 'Ceil&Floor Demo - (c) abreojosensamblador.net'0 
strError db 'Bonkers!  I hate it when that happens.'0 

wc WNDCLASS 0WindowProc0000000strClass 
bmi BITMAPINFO <28h280h0FFFFFE70h120h000000>, <0000
msg MSG 
ps PAINTSTRUCT 

dwValue1 dd 0 
dwValue2 dd 0 

hDC1 dd ? 
hDC2 dd ? 
hDC3 dd ? 

hBitmap1 dd ? 

hGdiObject1 dd ? 
hGdiObject2 dd ? 
hGdiObject3 dd ? 

ppvBits dd ? 

byValue1 db ? 
byValue2 db ? 
byValue3 db ? 
byValue4 db ? 

TableH db 0x320 dup ? 
Table1 db 0x5a0 dup ? 
Table2 db 0x5a0 dup ? 
Table3 db 0x5a0 dup ? 
Table4 db 0x5a0 dup ? 

section '.code' code readable executable 

start
        invoke  GetModuleHandleNULL 
        mov     [wc.hInstance], eax 
        mov     [wc.lpfnWndProc], WindowProc 
        mov     [wc.lpszClassName], strClass 

        invoke  GetStockObjectNULL 
        mov     [wc.hbrBackground], eax 

        stdcall CFProc0 
        invoke  ExitProcess0 


proc CFProc0 uses ebx esi edi 
        invoke  LoadIconNULLIDI_APPLICATION 
        mov     [wc.hIcon], eax 

        invoke  LoadCursorNULLIDC_ARROW 
        mov     [wc.hCursor], eax 

        invoke  RegisterClasswc 
        test    eaxeax 
        jz      CeilFloorError 

        invoke  CreateWindowEx0strClassstrTitleWS_VISIBLE or WS_SYSMENU or WS_HREDRAW, \
                                12812864040000, [wc.hInstance], 0 
        test    eaxeax 
        jz      CeilFloorError 

CFProc001
        invoke  GetMessagemsgNULL00 
        cmp     eax1 
        jb      CeilFloorRet 
        jnz     CFProc001 

        invoke  TranslateMessagemsg 
        invoke  DispatchMessagemsg 

        jmp     CFProc001 

CeilFloorError
        invoke  MessageBoxNULLstrErrorstrTitleMB_ICONHAND 

CeilFloorRet
        ret 
endp 


proc WindowProc uses ebx esi edihWnduMsgwParamlParam 
        mov     eax, [uMsg
        cmp     eaxWM_ERASEBKGND 
        jz      .OnEraseBkgnd 
        cmp     eaxWM_PAINT 
        jz      .OnPaint 
        cmp     eaxWM_DESTROY 
        jz      .OnDestroy 
        cmp     eaxWM_TIMER 
        jz      .OnTimer 
        cmp     eaxWM_CREATE 
        jz      .OnCreate 
        cmp     eaxWM_KEYFIRST 
        jz      .OnKeyFirst 

        invoke  DefWindowProc, [hWnd], [uMsg], [wParam], [lParam
        jmp     WindowProcExit 

.OnKeyFirst
        cmp     [wParam], VK_ESCAPE 
        jnz     WindowProcRet 
        jmp     .OnDestroy 

.OnCreate
        invoke  GetDC, [hWnd
        mov     [hDC1], eax 
        invoke  CreateCompatibleDC, [hDC1
        mov     [hDC2], eax 

        invoke  CreateDIBSection, [hDC1], bmi0ppvBits00 
        mov     [hGdiObject1], eax 

        invoke  SelectObject, [hDC2], [hGdiObject1
        mov     [hGdiObject3], eax 

        invoke  CreateCompatibleDC, [hDC1
        mov     [hDC3], eax 

        invoke  CreateCompatibleBitmap, [hDC1], XLENYLEN 
        mov     [hBitmap1], eax 

        invoke  SelectObject, [hDC3], [hBitmap1
        mov     [hGdiObject2], eax 

        stdcall CFProc1 
        stdcall CFProc2 
        stdcall CFProc4, [hWnd

        invoke  ReleaseDC,  [hWnd], [hDC1
        invoke  SetTimer, [hWnd], 1ELAPSENULL 
        jmp     WindowProcRet 

.OnTimer
        invoke  InvalidateRect, [hWnd], NULLFALSE 
        jmp     WindowProcRet 

.OnEraseBkgnd
        mov     eax1 
        jmp     WindowProcRet 

.OnPaint
        invoke  BeginPaint, [hWnd], ps 
        mov     [hDC1], eax 
        stdcall CFProc3 
        invoke  BitBlt, [hDC3], 00XLENYLEN, [hDC2], 00SRCCOPY 
        invoke  BitBlt, [hDC1], 00XLENYLEN, [hDC3], 00SRCCOPY 
        invoke  EndPaint, [hWnd], ps 
        jmp     WindowProcRet 

.OnDestroy
        invoke  KillTimer, [hWnd], 1 
        invoke  SelectObject, [hDC3], [hGdiObject2
        invoke  DeleteObject, [hBitmap1
        invoke  DeleteDC, [hDC3
        invoke  SelectObject, [hDC2], [hGdiObject3
        invoke  DeleteDC, [hDC2
        invoke  DeleteObject, [hGdiObject1
        invoke  DestroyWindow, [hWnd
        invoke  PostQuitMessage0 

WindowProcRet
        xor     eaxeax 

WindowProcExit
        ret 
endp 


proc CFProc1 
        mov     esi0 
        mov     ecx20h 

CFProc101
        mov     eax20h 
        sub     eaxecx 
        mov     [byValue3 + esi], al 
        mov     [byValue2 + esi], al 
        mov     byte [byValue1 + esi], 28h 
        mov     byte [byValue4 + esi], 0 
        add     esi4 
        loop    CFProc101 
        ret 
endp 


proc CFProc2 
  locals 
    dwVar1 dd ? 
  endl 
        mov     esiTableH 
        mov     [dwVar1], 2710h 
        mov     ecx0 
        fild    [dwVar1
        fld     st0 

CFProc201
        mov     eax0CAh 
        sub     eaxecx 
        add     eax2 
        mov     [dwVar1], eax 
        fidiv   [dwVar1
        fstp    dword [esi
        wait 
        fld     st0 
        add     esi4 
        inc     ecx 
        cmp     ecx0C8h 
        jnz     CFProc201 
        ffree   st1 
        ffree   st0 
        fldpi 
        push    0B4h 
        fidiv   dword [esp
        pop     eax 
        fld     st0 
        mov     ecx0 

CFProc202
        mov     ebxecx 
        shl     ebx2 
        push    ecx 
        fimul   dword [esp
        pop     eax 
        fsincos 
        fst     dword [ebx + Table1
        wait 
        push    140h 
        fidiv   dword [esp
        fstp    dword [ebx + Table3
        wait 
        fst     dword [ebx + Table2
        wait 
        fidiv   dword [esp
        fstp    dword [ebx + Table4
        wait 
        pop     eax 
        fld     st0 
        inc     ecx 
        cmp     ecx168h 
        jnz     CFProc202 
        ffree   st1 
        ffree   st0 
        ret 
endp 


proc CFProc3 
  locals 
    dwVar1  dd ? 
    dwVar2  dd ? 
    dwVar3  dd ? 
    dwVar4 dd ? 
    dwVar5 dd ? 
    dwVar6 dd ? 
    dwVar7 dd ? 
    dwVar8 dd ? 
    dwVar9 dd ? 
  endl 
        mov     eax500h 
        mov     [dwVar1], eax 
        mov     eax0F9AFCh 
        mov     [dwVar2], eax 
        mov     ecx0FFFFFEC0h 

CFProc301
        mov     esidword [bmi.bmiColors.rgbBlue
        shl     esi2 
        push    ecx 
        fld     dword [esi + Table4
        fimul   dword [esp
        fld     dword [esi + Table1
        fsub    st0st1 
        ffree   st1 
        fstp    [dwVar3
        wait 
        fld     dword [esi + Table3
        fimul   dword [esp
        fadd    dword [esi + Table2
        fstp    [dwVar4
        wait 
        pop     eax 
        mov     esiecx 
        shl     esi2 
        mov     eax, [dwVar1
        add     eaxesi 
        mov     [dwVar5], eax 
        mov     eax, [dwVar2
        add     eaxesi 
        mov     [dwVar6], eax 
        mov     [dwVar9], 0FFFFFF9Ch 
        mov     ebx0 

CFProc302
        mov     ediebx 
        shl     edi2 
        fld     dword [edi + TableH
        fmul    [dwVar3
        fiadd   [dwValue1
        fistp   [dwVar7
        wait 
        and     [dwVar7], 1Fh 
        fld     dword [edi + TableH
        fmul    [dwVar4
        fiadd   [dwValue2
        fistp   [dwVar8
        wait 
        mov     edi, [dwVar8
        and     edi1Fh 
        shl     edi5 
        add     edi, [dwVar7
        shl     edi2 
        mov     eax, [EdiTable + edi
        movzx   esial 
        sub     esi, [dwVar9
        jge     CFProc303 
        xor     esiesi 

CFProc303
        movzx   edxah 
        sub     edx, [dwVar9
        jge     CFProc304 
        xor     edxedx 

CFProc304
        shl     edx8 
        shr     eax10h 
        sub     eax, [dwVar9
        jge     CFProc305 
        xor     eaxeax 

CFProc305
        shl     eax10h 
        or      eaxedx 
        or      eaxesi 
        mov     edidword [ppvBits
        mov     esiedi 
        add     edi, [dwVar5
        add     esi, [dwVar6
        mov     [edi], eax 
        mov     [edi+4], eax 
        mov     [esi], eax 
        mov     [esi+4], eax 
        add     [dwVar5], 0A00h 
        sub     [dwVar6], 0A00h 
        inc     [dwVar9
        inc     ebx 
        cmp     ebx0B4h 
        jnz     CFProc302 
        inc     ecx 
        cmp     ecx140h 
        jnz     CFProc301 
        add     [dwValue2], 2 
        add     [dwValue1], 2 
        mov     eaxdword [bmi.bmiColors.rgbBlue
        add     eax2 
        mov     ebx168h 
        xor     edxedx 
        div     ebx 
        mov     dword [bmi.bmiColors.rgbBlue], edx 
        ret 
endp 


proc CFProc4 uses ebx ecx edx esi edihWnd 
  locals 
    dwVar1 dd ? 
    dwVar2 dd ? 
    dwVar3 dd ? 
    X     dd ? 
    Y     dd ? 
  endl 
        invoke  GetSystemMetricsSM_CYCAPTION 
        mov     [dwVar1], eax 
        invoke  GetSystemMetricsSM_CXFIXEDFRAME 
        mov     [dwVar3], eax 
        shl     [dwVar3], 1 
        invoke  GetSystemMetricsSM_CYFIXEDFRAME 
        mov     [dwVar2], eax 
        invoke  GetSystemMetricsSM_CXSCREEN 
        mov     ecxXLEN 
        add     ecx, [dwVar3
        sub     eaxecx 
        shr     eax1 
        mov     [X], eax 
        invoke  GetSystemMetricsSM_CYSCREEN 
        mov     ecxYLEN 
        add     ecx, [dwVar1
        add     ecx, [dwVar2
        sub     eaxecx 
        mov     ecx3 
        sub     edxedx 
        div     ecx 
        mov     [Y], eax 
        mov     ebxXLEN 
        add     ebx, [dwVar3]  ; cx 
        mov     eaxYLEN 
        add     eax, [dwVar1
        add     eax, [dwVar2]  ; cy 
        invoke  SetWindowPos, [hWnd], HWND_TOP, [X], [Y], ebxeaxSWP_NOZORDER 
        ret 
endp 

EdiTable

dd 0x0003A3A030x0003F3F200x0003F3F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x0003F3F20
dd 0x0003F3F200x000303F200x000303F200x0003F3F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x0003F3F200x000303F20
dd 0x000303F200x00000203F0x000303F200x000303F200x000303F200x00020003F0x000303F200x000303F20
dd 0x000303F200x00020003F0x000303F200x00020003F0x00020003F0x00020003F0x000303F200x000303F20
dd 0x00020003F0x000303F200x000303F200x000303F200x00020003F0x000303F200x000303F200x000303F20
dd 0x00020003F0x00020003F0x00020003F0x00020003F0x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x00020003F0x000303F200x000303F20
dd 0x000303F200x00020003F0x000303F200x00020003F0x000303F200x000303F200x000303F200x000303F20
dd 0x00020003F0x000303F200x000303F200x000303F200x00020003F0x000303F200x000303F200x00020003F
dd 0x00020003F0x000303F200x000303F200x000303F200x00020003F0x000303F200x000303F200x000303F20
dd 0x000303F200x00000203F0x000303F200x000303F200x000303F200x00020003F0x00020003F0x00020003F
dd 0x00020003F0x00020003F0x000303F200x00020003F0x00020003F0x00020003F0x000303F200x000303F20
dd 0x00020003F0x000303F200x000303F200x000303F200x00020003F0x000303F200x000303F200x00020003F
dd 0x000303F200x000303F200x000303F200x000303F200x00020003F0x000303F200x000303F200x000303F20
dd 0x000303F200x00000203F0x000303F200x000303F200x000303F200x00020003F0x000303F200x000303F20
dd 0x000303F200x00020003F0x000303F200x00020003F0x000303F200x000303F200x000303F200x000303F20
dd 0x00020003F0x000303F200x000303F200x000303F200x00020003F0x000303F200x000303F200x00020003F
dd 0x000303F200x000303F200x000303F200x000303F200x00020003F0x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x00020003F0x000303F200x000303F20
dd 0x000303F200x00020003F0x000303F200x00020003F0x00020003F0x00020003F0x000303F200x000303F20
dd 0x00020003F0x000303F200x000303F200x000303F200x00020003F0x000303F200x000303F200x00020003F
dd 0x000303F200x000303F200x000303F200x00020003F0x00020003F0x000303F200x000303F200x000303F20
dd 0x000303F200x00000203F0x000303F200x000303F200x000303F200x00020003F0x000303F200x000303F20
dd 0x000303F200x00020003F0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x00020003F0x00020003F0x00020003F0x000303F200x00020003F0x00020003F0x00020003F0x000303F20
dd 0x00020003F0x00020003F0x00020003F0x00020003F0x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x00000203F0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x00000203F0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x00000203F0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x00000203F0x000303F200x000303F200x000303F200x000303F200x0003F003F0x0003F003F
dd 0x0003F003F0x0003F003F0x0003F003F0x000303F200x0003F003F0x0003F003F0x000303F200x000303F20
dd 0x000303F200x0003F003F0x0003F003F0x0003F003F0x000303F200x000303F200x0003F003F0x0003F003F
dd 0x000303F200x000303F200x000303F200x0003F003F0x0003F003F0x000303F200x000303F200x000303F20
dd 0x000303F200x00000203F0x000303F200x000303F200x000303F200x000303F200x0003F003F0x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x0003F003F0x0003F003F0x000303F200x000303F20
dd 0x0003F003F0x000303F200x000303F200x000303F200x000303F200x000303F200x0003F003F0x0003F003F
dd 0x000303F200x000303F200x000303F200x0003F003F0x0003F003F0x000303F200x000303F200x000303F20
dd 0x000303F200x00000203F0x000303F200x000303F200x000303F200x000303F200x0003F003F0x000303F20
dd 0x000303F200x000303F200x000303F200x0003F003F0x000303F200x0003F003F0x000303F200x000303F20
dd 0x0003F003F0x0003F003F0x000303F200x000303F200x000303F200x000303F200x0003F003F0x000303F20
dd 0x0003F003F0x000303F200x0003F003F0x000303F200x0003F003F0x000303F200x000303F200x000303F20
dd 0x000303F200x00000203F0x000303F200x000303F200x000303F200x000303F200x0003F003F0x0003F003F
dd 0x0003F003F0x000303F200x000303F200x0003F003F0x000303F200x000303F200x0003F003F0x000303F20
dd 0x000303F200x000303F200x0003F003F0x0003F003F0x000303F200x000303F200x0003F003F0x000303F20
dd 0x0003F003F0x000303F200x0003F003F0x000303F200x0003F003F0x000303F200x000303F200x000303F20
dd 0x000303F200x00000203F0x000303F200x000303F200x000303F200x000303F200x0003F003F0x000303F20
dd 0x000303F200x000303F200x000303F200x0003F003F0x0003F003F0x0003F003F0x0003F003F0x000303F20
dd 0x000303F200x000303F200x000303F200x0003F003F0x000303F200x000303F200x0003F003F0x000303F20
dd 0x0003F003F0x000303F200x0003F003F0x000303F200x0003F003F0x000303F200x000303F200x000303F20
dd 0x000303F200x00000203F0x000303F200x000303F200x000303F200x000303F200x0003F003F0x000303F20
dd 0x000303F200x000303F200x0003F003F0x000303F200x000303F200x000303F200x0003F003F0x000303F20
dd 0x0003F003F0x0003F003F0x0003F003F0x000303F200x000303F200x000303F200x0003F003F0x000303F20
dd 0x000303F200x0003F003F0x000303F200x000303F200x0003F003F0x000303F200x000303F200x000303F20
dd 0x000303F200x00000203F0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x00000203F0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x00000203F0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x00000203F0x000303F200x0002000100x0002000100x0002000100x000303F200x000200010
dd 0x0002000100x0002000100x000303F200x0002000100x000303F200x000303F200x000303F200x000200010
dd 0x000303F200x000303F200x000303F200x0002000100x0002000100x0002000100x000303F200x000303F20
dd 0x0002000100x000303F200x000303F200x0002000100x000303F200x000303F200x000303F200x000200010
dd 0x000303F200x00000203F0x000303F200x0002000100x000303F200x000303F200x000303F200x000200010
dd 0x000303F200x000303F200x000303F200x0002000100x000303F200x000303F200x000303F200x000200010
dd 0x000303F200x000303F200x0002000100x000303F200x000303F200x000303F200x0002000100x000303F20
dd 0x000303F200x0002000100x000303F200x0002000100x0002000100x000303F200x000303F200x000200010
dd 0x000303F200x00000203F0x000303F200x0002000100x0002000100x0002000100x000303F200x000200010
dd 0x0002000100x0002000100x000303F200x0002000100x000303F200x000303F200x000303F200x000200010
dd 0x000303F200x000303F200x0002000100x000303F200x000303F200x000303F200x0002000100x000303F20
dd 0x000303F200x0002000100x000303F200x0002000100x0002000100x000303F200x0002000100x000303F20
dd 0x000303F200x000303F200x000303F200x0002000100x000303F200x000303F200x000303F200x000200010
dd 0x000303F200x000303F200x000303F200x0002000100x000303F200x000303F200x000303F200x000200010
dd 0x000303F200x000303F200x0002000100x000303F200x000303F200x000303F200x0002000100x000303F20
dd 0x000303F200x0002000100x000303F200x0002000100x0002000100x000303F200x0002000100x000303F20
dd 0x000303F200x00000203F0x000303F200x0002000100x000303F200x000303F200x000303F200x000200010
dd 0x000303F200x000303F200x000303F200x0002000100x000303F200x000303F200x000303F200x000200010
dd 0x000303F200x000303F200x0002000100x000303F200x000303F200x000303F200x0002000100x000303F20
dd 0x000303F200x0002000100x0002000100x000303F200x000303F200x0002000100x0002000100x000303F20
dd 0x000303F200x00000203F0x000303F200x0002000100x000303F200x000303F200x000303F200x000200010
dd 0x0002000100x0002000100x000303F200x0002000100x0002000100x0002000100x000303F200x000200010
dd 0x0002000100x0002000100x000303F200x0002000100x0002000100x0002000100x000303F200x000303F20
dd 0x000303F200x000303F200x0002000100x000303F200x000303F200x0002000100x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x00000203F0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x0003F3F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x0003F3F200x000303F20
dd 0x000303F200x0003F3F200x0003F3F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x0003F3F20
dd 0x0003F3F200x0003A3A030x0003F3F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F20
dd 0x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x000303F200x0003F3F20
dd 0x0003A3A030x000000000 

.end start 




4/29/2013 - Changed strTitle.


Last edited by Walter on 29 Apr 2013, 16:29; edited 1 time in total
Post 15 Apr 2013, 18:27
View user's profile Send private message Reply with quote
MHajduk



Joined: 30 Mar 2006
Posts: 5819
Location: Poland
Good work, Walter, very good. Smile

BTW, I wonder, have you used IDA to disassemble?
Post 15 Apr 2013, 19:19
View user's profile Send private message Send e-mail Visit poster's website Reply with quote
HaHaAnonymous



Joined: 02 Dec 2012
Posts: 1173
Location: Unknown
Stupid post removed.


Last edited by HaHaAnonymous on 28 Feb 2015, 21:04; edited 1 time in total
Post 15 Apr 2013, 20:05
View user's profile Send private message Reply with quote
baldr



Joined: 19 Mar 2008
Posts: 1651
MHajduk,

I do. It's invaluable tool (though costly).

----8<----
Walter,

You're just awesome! I can't handle that code w/o urge to puke. Wink
Post 15 Apr 2013, 20:15
View user's profile Send private message Reply with quote
Walter



Joined: 26 Jan 2013
Posts: 114
@MHajduk

> have you used IDA to disassemble?

Wonder what gave that away?

Unoriginal variable names?
Bad label names?
But yes and yes, that tool is good.

What really should be here are examples
that have the quality of what you write!

That is, orginal code, good variable names
and comments. You can learn much from
example code.

@baldr

Just shows much of what you've pointed out already.

@HaHa

I like your definition of Example.

"It can't be considered an example without source.
Post 15 Apr 2013, 20:22
View user's profile Send private message Reply with quote
baldr



Joined: 19 Mar 2008
Posts: 1651

Walter wrote:
@HaHa

I like your definition of Example.

"It can't be considered an example without source.

Without proper comments it's just a source waiting for compilation. Not an example.
Post 15 Apr 2013, 20:32
View user's profile Send private message Reply with quote
MHajduk



Joined: 30 Mar 2006
Posts: 5819
Location: Poland

Walter wrote:
@MHajduk

> have you used IDA to disassemble?

Wonder what gave that away?

Unoriginal variable names?
Bad label names?
But yes and yes, that tool is good.

I made a few (successful) attempts to disassemble some codes posted here, on this forum (one of them was avcaballero's too, but not the presented above), so I got the overall style of the IDA's disassembly listings. Wink


Walter wrote:
What really should be here are examples
that have the quality of what you write!

That is, orginal code, good variable names
and comments. You can learn much from
example code.

Absolutely agree with you at that point. Smile
Post 15 Apr 2013, 20:36
View user's profile Send private message Send e-mail Visit poster's website Reply with quote
baldr



Joined: 19 Mar 2008
Posts: 1651
MHajduk,

RE requires hard teeth and strong butt to sit some time on. Wink
Post 15 Apr 2013, 20:50
View user's profile Send private message Reply with quote
MHajduk



Joined: 30 Mar 2006
Posts: 5819
Location: Poland

baldr wrote:
MHajduk,

RE requires hard teeth and strong butt to sit some time on. Wink

Yeah, that's true. Wink
Post 15 Apr 2013, 20:51
View user's profile Send private message Send e-mail Visit poster's website Reply with quote
HaHaAnonymous



Joined: 02 Dec 2012
Posts: 1173
Location: Unknown
Stupid post removed.


Last edited by HaHaAnonymous on 28 Feb 2015, 21:04; edited 1 time in total
Post 15 Apr 2013, 21:22
View user's profile Send private message Reply with quote
avcaballero



Joined: 02 Feb 2004
Posts: 138
Location: Madrid - Spain
Walter, good work!, you have entered in the lamers club. I have noticed that you have deleted any copyright notice... I wonder if you know that it is an illegal activity, at least in my country, don't know in yours... Anyway, don't
worry, I will ask nothing of course, after all I was to release it on free, and nothing new under the sky.

Do you create anything or only work on hacking things?

I don't like persons that recover things compulsively, have a glance at them and throw to the bin... neither persons who don't credit... It is a matter of personal culture, I guess.

Well, I'm working on windows demo tutorial and, when finished, uploaded it to my own site as others that I did before; but looking guys as you, removed me the desire to share it.

Don't know what happens with this forum, but lately I can't get into here. In light of recent events, I think that would be best. I think that fasm is one of the best assemblers, other thing is people here...

Have a nice day fellows

PD. Surely I can't answer you because it is hard to me to get into here... Anyway any news from me I take care of take it to another site Wink
Post 21 Apr 2013, 11:48
View user's profile Send private message Reply with quote
HaHaAnonymous



Joined: 02 Dec 2012
Posts: 1173
Location: Unknown
Stupid post removed.


Last edited by HaHaAnonymous on 28 Feb 2015, 20:58; edited 1 time in total
Post 21 Apr 2013, 16:03
View user's profile Send private message Reply with quote
uart777



Joined: 17 Jan 2012
Posts: 369
avcaballero: Muy bien, Amigo! Smile Tiene el codigo?

Check out comrade's graphics examples: http://comrade.ownz.com/intros.html He's really good. I was inspired by him to create a website and share my code.

Have a good day.

PS: Previews of my latest project: http://sungod777.zxq.net/codeviewp.jpg Improved themes, dynamic font zoom, etc. R.I.P Stale-Lib. Deprecated by the power of Z77.
Post 22 Apr 2013, 07:11
View user's profile Send private message Reply with quote
uart777



Joined: 17 Jan 2012
Posts: 369
Walter:

Quote:
What really should be here are examples that have the quality of what you write!

Yeah, not just a little DOS example that uses the internal PC speaker. Not impressed. Not "original", nothing special. Practice what you preach. What avcaballero presented here is infinitely superior to anything your small mind could ever produce.
Post 22 Apr 2013, 07:12
View user's profile Send private message Reply with quote
HaHaAnonymous



Joined: 02 Dec 2012
Posts: 1173
Location: Unknown
Stupid post removed.


Last edited by HaHaAnonymous on 28 Feb 2015, 20:57; edited 1 time in total
Post 22 Apr 2013, 15:34
View user's profile Send private message Reply with quote
DOS386



Joined: 08 Dec 2006
Posts: 1907
It worx ... both the binary and the source ... despite they don't match Smile
Post 28 Apr 2013, 15:05
View user's profile Send private message Reply with quote
Display posts from previous:
Post new topic Reply to topic

Jump to:  
Goto page 1, 2  Next

< Last Thread | Next Thread >

Forum Rules:
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001-2005 phpBB Group.

Main index   Download   Documentation   Examples   Message board
Copyright © 2004-2016, Tomasz Grysztar.