1. Pascal / Говнокод #2785

    +155

    1. 1
    MessageBox(0,'Для ScreenShot''инга необходимо нажать клавишу PrtScr ,а затем нажать Scroll Lock; ScreenShot''ы будут нахоится в папке c:\ScreenShot\','Программа ScreenShoter V1.0 by XXX: ',0);

    Scroll Lock. O_o

    Говногость, 13 Марта 2010

    Комментарии (0)
  2. Pascal / Говнокод #2784

    +152.9

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    procedure TForm1.Button3Click(Sender: TObject);
    begin
    messagebox(0,'Программа RegWinV0.81 by XXX. Использование данной программы является нарушением лицензии Microsoft!!! Автор не несёт ответственности за проблемы и поломки компьютера при использовании '+
    'данной программы!!!',
    'О программе RegWin',0);
    end;

    XXX - имя автора (заменено, что-бы не палить).

    Говногость, 13 Марта 2010

    Комментарии (0)
  3. Pascal / Говнокод #2783

    +152.9

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    procedure TForm1.Button2Click(Sender: TObject);
    var i:dword;
    begin
    if (Checkbox1.Checked)or(Checkbox3.Checked)or(Checkbox2.Checked) then
    begin
    form1.Cursor:=crhourglass;
    Sleep(500);
    progressbar1.Position:=10;
    Sleep(1000);
    progressbar1.Position:=20;
    Sleep(500);
    progressbar1.Position:=50;
    Sleep(1000);
    progressbar1.Position:=100;
    Sleep(500);
    end;

    Трудимся в поте лица. :D

    Говногость, 13 Марта 2010

    Комментарии (2)
  4. Pascal / Говнокод #2782

    +152.9

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    procedure tplayext.play(iname:string);
    begin
    cd:=false;
    try
    form1.MediaPlayer1.Close;
    form1.MediaPlayer1.filename:=iname;
    form1.label10.Caption:=iname;
    form1.MediaPlayer1.Open;
    form1.MediaPlayer1.play;
    except
    next;
    cd:=true;
    end;
    end;
    procedure tplayext.init(iext:string);
    begin
    name:='';
    paused:=false;
    allplayed:=false;
    ext:=iext;
    TRY
    io:=findfirst(ext,faanyfile,f);
    EXCEPT
    END;
    if io<>0 then
    begin
     done;
     exit;
    end;
    name:=f.Name;
    play(name);
    end;
    procedure tplayext.playplease;
    begin
    if stoped then next;
    end;
    procedure tplayext.next;
    begin
    TRY
    io:=findnext(f);
    EXCEPT
    END;
    if io <>0 then
    begin
     done;
     exit;
    end;
    name:=f.Name;
    play(name);
    end;
    procedure tplayext.done;
    begin
    TRY
    form1.MediaPlayer1.close;
    findclose(f);
    EXCEPT
    END;
    allplayed:=true;
    end;

    Особенно прикалывает вызов метода play в методе next и вызов метода next в методе play.
    Рекурсия!!!!!1111

    Говногость, 13 Марта 2010

    Комментарии (1)
  5. Pascal / Говнокод #2781

    +144.8

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    FUNCTION PCHARTOSTRING(pc:pchar):string;
      VAR
       s:string;
       //P:PCHAR;
    
       I:word;
       //O:WORD;
       BEGIN
    
       FOR I:=1 TO 255 DO
       begin
       if pc[i]=#0 then
       s[i]:=pc[i-1];
       begin
       setlength(s,i);
       PCHARTOSTRING:=s;
       exit;
       end;
       end;
        setlength(s,255);
       PCHARTOSTRING:=s;
       END;

    И это в Дельфи. O_o

    Говногость, 13 Марта 2010

    Комментарии (24)
  6. Pascal / Говнокод #2780

    +100.3

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    function rgbagl(r,g,b,a:gldouble):trgbagl;
    var
    t:trgbagl;
    begin
    t.r:=r;
    t.g:=g;
    t.b:=b;
    t.a:=a;
    rgbagl:=t;
    end;
    function trgbaintrgbagl(rgba:trgba):trgbagl;
    begin
    trgbaintrgbagl.r:=rgba.r/255;
    trgbaintrgbagl.g:=rgba.g/255;
    trgbaintrgbagl.b:=rgba.b/255;
    trgbaintrgbagl.a:=rgba.a/255;
    end;
    function trgbaglintrgba(rgbagl:trgbagl):trgba;
    begin
    trgbaglintrgba.r:=trunc(rgbagl.r*255);
    trgbaglintrgba.g:=trunc(rgbagl.g*255);
    trgbaglintrgba.b:=trunc(rgbagl.b*255);
    trgbaglintrgba.a:=trunc(rgbagl.a*255);
    end;
    function trgbaglelmintrgbaelm(elm:gldouble):byte;
    begin
    trgbaglelmintrgbaelm:=trunc(elm*255);
    end;
    function trgbaelmintrgbaglelm(elm:byte):gldouble;
    begin
    trgbaelmintrgbaglelm:=elm/255;
    end;

    Вот так вот.

    Говногость, 13 Марта 2010

    Комментарии (9)
  7. Pascal / Говнокод #2779

    +99.3

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    procedure setrandomdoubleprecision(value:byte);
    begin
    precision:=10*value;
    end;
    function rangerandomdouble(minrandomdouble,maxrandomdouble:double):double;
    begin
    result:=randomdouble(maxrandomdouble+(-minrandomdouble))+minrandomdouble
    end;
    function randomdouble(maxdouble:double):double;
    var
    l1,l2:integer;
    begin
    l1:=random(trunc(maxdouble));
    l2:=random(trunc(frac(maxdouble)*precision));
    result:=l1+(l2/precision)
    end;

    Рандом с заданной точностью. O_o

    Говногость, 13 Марта 2010

    Комментарии (2)
  8. Pascal / Говнокод #2778

    +96.5

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    procedure AsmRGBBiter15;assembler;
    procedure AsmRGBBiter16;assembler;
    //procedure AsmRGBBiter24;assembler;
    procedure AsmRGBBiter32;assembler;
    procedure AsmRGBBiterEx15;assembler;
    procedure AsmRGBBiterEx16;assembler;
    //procedure AsmRGBBiterEx24;assembler;
    procedure AsmRGBBiterEx32;assembler;
    procedure RGBBiterEx32(RGB32Stream,RGBNeed:pointer;Count:dword);pascal;assembler;
    //procedure RGBBiterEx24(RGB32Stream,RGBNeed:pointer;Count:dword);pascal;assembler;
    procedure RGBBiterEx16(RGB32Stream,RGBNeed:pointer;Count:dword);pascal;assembler;
    procedure RGBBiterEx15(RGB32Stream,RGBNeed:pointer;Count:dword);pascal;assembler;
    procedure AsmRGB16;assembler;
    procedure AsmRGB15;assembler;
    //procedure AsmRGB24;assembler;
    procedure AsmRGB32;assembler;
    function GetRValue32(color:dword):byte;Pascal;
    function GetGValue32(color:dword):byte;Pascal;
    function GetBValue32(color:dword):byte;Pascal;
    //function GetRValue24(color:dword):byte;Pascal;
    //function GetGValue24(color:dword):byte;Pascal;
    //function GetBValue24(color:dword):byte;Pascal;
    function GetRValue16(color:dword):byte;Pascal;
    function GetGValue16(color:dword):byte;Pascal;
    function GetBValue16(color:dword):byte;Pascal;
    function GetRValue15(color:dword):byte;Pascal;
    function GetGValue15(color:dword):byte;Pascal;
    function GetBValue15(color:dword):byte;Pascal;
    function GetSceenRect:trect;
    procedure DrawSceenHLine32(x1,x2,y,color:dword);pascal;assembler;
    procedure DrawSceenHLine15(x1,x2,y,color:dword);pascal;assembler;
    procedure DrawSceenHLine16(x1,x2,y,color:dword);pascal;assembler;
    //procedure DrawSceenHLine24(x1,x2,y,color:dword);pascal;assembler;
    procedure DrawSceenVLine32(x,y1,y2,color:dword);pascal;assembler;
    //procedure DrawSceenVLine24(y1,y2,x,color:dword);pascal;assembler;
    procedure DrawSceenVLine15(x,y1,y2,color:dword);pascal;assembler;
    procedure DrawSceenVLine16(x,y1,y2,color:dword);pascal;assembler;

    Программа работает только в 32битном режиме экрана. :D

    Говногость, 13 Марта 2010

    Комментарии (5)
  9. Pascal / Говнокод #2777

    +98.7

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    Procedure Halt;
    begin
    if atomTest<>0 then GlobalDeleteAtom(atomTest);
    TerminateProcess(GetCurrentProcess,0);
    end;
    function RegisterSceenTimer(proc:tproc):dword;
    var i:dword;
    begin
    result:=0;
    for i:=1 to sMaxSceenGradient do
    if  not SceenGradient[i].isNotEmpty then break ;
    if i=sMaxSceenGradient then exit;
    SceenTimers[i]:=proc;
    result:=i;
    end;

    :D

    Говногость, 13 Марта 2010

    Комментарии (11)
  10. Pascal / Говнокод #2776

    +87.9

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    function LockBack:bool;
    var sd:tddsurfacedesc2;
    begin
    fillchar(sd,sizeof(sd),0);
    sd.dwSize:=sizeof(sd);
    result:=fbacksurface.Lock(nil,sd,DDLOCK_SURFACEMEMORYPTR  or ddlock_nosyslock or DDLOCK_WAIT,0)=dd_ok;
    if not result then exit;
    BackPtr:=sd.lpSurface;
    end;
    function UnLockBack:bool;
    begin
    result:=fbacksurface.UnLock(nil)=dd_ok;
    BackPtr:=nil;
    end;
    function MakeSceenBackPtr:bool;
    begin
    result:=true;
    if backptr=nil then
     result:=lockBack;
    end;
    function GetSceenSafeBackPtr:pointer;//use only this
    begin
    result:=nil;
    if not MakeSceenBackPtr then exit;
    result:=backptr;
    end;

    Тот же проЭкт, что и ниже на DirectDraw7.
    Не смотря на то, что была функция function UnLockBack:bool; - она никогда не вызывалась. Странно, что на многих машинах это работало, тк я успешно выполнял блитинг в заблокированные поверхности в течении многих часов. :D

    Говногость, 13 Марта 2010

    Комментарии (2)