Facebook
From dsjihhifhd, 1 Month ago, written in Plain Text.
This paste is a reply to Re: Codesadsad from dabuas - view diff
Embed
Download Paste or View Raw
Hits: 152
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <unistd.h>
  4.  
  5. #define DATA_PORT 0x378 /* parallel port base address */
  6. #define STATUS_PORT DATA_PORT + 1
  7. #define CONTROL_PORT DATA_PORT + 2
  8.  
  9. unsigned char status, data;
  10.  
  11. // Array to hold bit patterns for each digit
  12. unsigned char digit_patterns[10] = {
  13.     0b00111111, // digit 0
  14.     0b00000110, // digit 1
  15.     0b01011011, // digit 2
  16.     0b01001111, // digit 3
  17.     0b01100110, // digit 4
  18.     0b01101101, // digit 5
  19.     0b01111101, // digit 6
  20.     0b00000111, // digit 7
  21.     0b01111111, // digit 8
  22.     0b01101111  // digit 9
  23. };
  24.  
  25. int main()
  26. {
  27.     if (ioperm(DATA_PORT, 1, 1))
  28.     {
  29.         fprintf(stderr, "Access denied to %x\n", DATA_PORT);
  30.         exit(1);
  31.     }
  32.  
  33.     while (1)
  34.     {
  35.         for (int digit = 0; digit < 10; digit++)
  36.         {
  37.             data = digit_patterns[digit]; // Get bit pattern for current digit
  38.             outb(~data, DATA_PORT);      // Display the digit
  39.             sleep(1);                    // Delay for 1 second
  40.         }
  41.     }
  42.  
  43.     ioperm(DATA_PORT, 1, 0); // release the port
  44.     return 0;
  45. }
  46.  

Replies to Re: Re: Codesadsad rss

Title Name Language When
Re: Re: Re: Codesadsad gfydhm text 1 Month ago.