testvid2.pas 905 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. uses
  2. ApiComm, Video;
  3. var
  4. I, J: CPUInt;
  5. Direction: CPUWord;
  6. begin
  7. Randomize;
  8. InitVideo;
  9. I := 1; J := 1;
  10. Direction := Random(8);
  11. repeat
  12. VideoBuf^[I+J*ScreenWidth] := $0720;
  13. case Direction of
  14. 0: Dec(J);
  15. 1: Inc(I);
  16. 2: Inc(J);
  17. 3: Dec(I);
  18. 4:
  19. begin
  20. Inc(I);
  21. Dec(J);
  22. end;
  23. 5:
  24. begin
  25. Inc(I);
  26. Inc(J);
  27. end;
  28. 6:
  29. begin
  30. Dec(I);
  31. Inc(J);
  32. end;
  33. 7:
  34. begin
  35. Dec(I);
  36. Dec(J);
  37. end;
  38. end;
  39. if (I < 0) then I := 0;
  40. if (J < 0) then J := 0;
  41. if (I >= ScreenWidth) then I := ScreenWidth-1;
  42. if (J >= ScreenHeight) then J := ScreenHeight-1;
  43. VideoBuf^[I+J*ScreenWidth] := $1F2A;
  44. if Random(100) < 30 then Direction := Random(8);
  45. UpdateScreen(False);
  46. until False; {KeyPressed;}
  47. DoneVideo;
  48. end.