home *** CD-ROM | disk | FTP | other *** search
/ Collection of Hack-Phreak Scene Programs / cleanhpvac.zip / cleanhpvac / PINBSRC.ZIP / _LEDANZ.PAS < prev    next >
Pascal/Delphi Source File  |  1996-02-02  |  3KB  |  150 lines

  1. function IntToStr(I: Longint): String;
  2. { Convert any integer type to a string }
  3. var
  4.   S: string[6];
  5. begin
  6.   Str(I, S);
  7.   IntToStr := S;
  8. end;
  9.  
  10. function IntToStr1(I: Longint): String;
  11. { Convert any integer type to a string }
  12. var
  13.   S: string[8];
  14. begin
  15.   Str(I:8, S);
  16.   IntToStr1 := S;
  17. end;
  18.  
  19.  
  20. procedure Led_Anzeige_1;
  21. var x,y:word;
  22. begin
  23.   for y:=0 to 45 div 2 do
  24.   begin
  25.     for x:=0 to 319 div 2 do
  26.     begin
  27.       put_pixel_led(x,y,led_color_1);
  28.     end;
  29.   end;
  30. end;
  31. procedure Led_Anzeige_2;
  32. begin
  33.   if led_timer and 1=1 then set_rgb_color(led_color_1,255,00,00) else
  34.   set_RGB_color(led_color_1,20,00,00);
  35. end;
  36.  
  37. procedure Led_Anzeige_3;
  38. begin
  39.   if led_timer and 1=1 then
  40.   begin
  41.     set_rgb_color(led_color_1,255,00,00);
  42.     set_rgb_color(led_color_2,020,00,00);
  43.   end else
  44.   begin
  45.     set_RGB_color(led_color_1,020,00,00);
  46.     set_rgb_color(led_color_2,255,00,00);
  47.   end;
  48. end;
  49.  
  50. procedure Led_Anzeige_4;
  51. var x,y:word;
  52. begin
  53.   inc(ran255z);
  54.   for y:=0 to (45) div 2 do
  55.   begin
  56.     for x:=0 to 319 div 2 do
  57.     begin
  58.       if random255<50 then put_pixel_led(x,y,led_color_2) else put_pixel_led(x,y,led_color_1);
  59.     end;
  60.   end;
  61. end;
  62.  
  63. procedure led_Anzeige_5_init(x,y:byte;stg:string);
  64. begin
  65.   led_x:=x;
  66.   led_y:=y+1;
  67.   led_anzeige_text:=stg;
  68.   led_status:=1;
  69.   led_f_status_1:=1;
  70.   led_f_status_2:=length(stg);
  71.   led_funktion:=5;
  72. end;
  73.  
  74. procedure Led_Anzeige_5;
  75. var I,J,POSI: word;
  76.     CharPos : byte;
  77.     CharacPos : word;
  78.     c1:string;
  79.     color:byte;
  80.     x:word;
  81. begin
  82.   x:=led_x{+led_y*80};
  83.   if led_f_status_1<led_f_status_2+1 then
  84.   begin
  85.     c1:= copy(LED_ANZEIGE_TEXT,led_f_status_1,1);
  86.     CharacPos :=ord(c1[1])*16;
  87.     for CharPos := 0 to 7 do
  88.     begin
  89.       for I := 0 to 7 do
  90.       begin
  91.         if mem[Fseg:Fofs+CharacPos+I] and Bits[CharPos] <> 0 then Color := LED_COLOR_2
  92.         else Color := led_color_1;
  93.         put_pixel_led(x,i+led_y,color); {NEU}
  94.       end;
  95.       inc(x);
  96.     end;
  97.     led_x:=x;
  98.     inc(led_f_status_1);
  99.   end else
  100.   begin
  101.     led_status:=255;
  102.     led_funktion:=0;
  103.   end;
  104. end;
  105.  
  106. procedure LED_ANZEIGE_6_init; {Scroll right 2 left}
  107. begin
  108.   led_f_status_1:=80;
  109.   led_funktion:=6;
  110. end;
  111.  
  112. procedure LED_ANZEIGE_6; {Scroll right 2 left}
  113. var x:byte;
  114.     z1,z2:word;
  115. begin
  116.   for x:=0 to 47 do
  117.   begin
  118.     z1:=x*80;
  119.     z2:=z1+1;
  120.     asm
  121.       push ds
  122.       mov es,[ledseg] {ES:DI DESTINATION}
  123.       mov ds,[ledseg]
  124.       mov di,z1
  125.       mov si,z2
  126.       mov cx,39
  127.       rep movsw
  128.       pop ds
  129.     end;
  130.   end;
  131.   put_pixel_led(320,0,led_color_1);
  132.   led_status:=255;
  133.   if led_F_status_1>0 then dec(led_f_status_1) else led_funktion:=0;{}
  134. end;
  135.  
  136. procedure led_anzeige;
  137. begin
  138.   {led_anzeige}
  139.   inc(led_timer,1);
  140.   if led_funktion=1 then Led_Anzeige_1;
  141.   if led_funktion=2 then Led_Anzeige_2;
  142.   if led_funktion=3 then Led_Anzeige_3;
  143.   if led_funktion=4 then Led_Anzeige_4;
  144.   if led_funktion=5 then Led_Anzeige_5;{}
  145.   if led_funktion=5 then Led_Anzeige_5;{}
  146.   if led_funktion=6 then Led_Anzeige_6;{}
  147.   if led_status=255 then flip_led;{}
  148. end;
  149.  
  150.