
/* Program otworzy ekran w rozdzielczoôci low-resolution, non-interlaced */
/* w oômiu kolorach. Wyôwietlaê go bëdzie przez 30 sekund, po czym zamknie go */


/* Jeôli proram korzysta z biblioteki intuition.library, musisz daîâczyê */
/* ten plik */

#include <intuition/intuition.h>



struct IntuitionBase *IntuitionBase;



/* Deklaracja wskaúnika do struktury Screen */
struct Screen *my_screen;

/* Definicja struktury NewScreen */
struct NewScreen my_new_screen=
{
  0,            /* LeftEdge  Zawsze ustawiony na 0. */
  0,            /* TopEdge   Górna krawëdú ekranu */
  320,          /* Width     Low-resolution czyli 320 pikseli w linii */
  200,          /* Height    Non-Interlaced NTSC czyli 200 linii */
  3,            /* Depth     8 kolorów (3 bitplany) */
  0,            /* DetailPen Tekst bëdzie pisany kolorem z rejestru 0 */
  1,            /* BlockPen  Bloki (np:tîo tekstu) kolorem z rejestru 1 */
  NULL,         /* ViewModes Ûadnych specjalnych trybów */
  CUSTOMSCREEN, /* Type      Typ ekranu:Custom Screen */
  NULL,         /* Font      Standardowy font */
  "MY SCREEN",  /* Title     Tytuî ekranu */
  NULL,         /* Gadget    W tym systemie NULL */
  NULL          /* BitMap    Ûadnych specjalnych bitmap */
};



main()
{
  /* Zanim bëdziemy mogli uûyê funkcji z intuition.library musimy */
  /* otworzyê tâ bibliotekë. */

  IntuitionBase = (struct IntuitionBase *)
    OpenLibrary( "intuition.library", 0 );

  if( IntuitionBase == NULL )
    exit(); /* Nie moûna otworzyê intuition.library! */



  /* Otworzenie ekranu */
  my_screen = (struct Screen *) OpenScreen( &my_new_screen );

  /* Zapis "(struct Screen *)" nie jest konieczny, ale nowsze kompilatory */
  /* wygenerowaîy by ostrzeûenie o niezgodnoôci typów gdyby tego rzutowania */
  /* nie byîo. */

  /* Czy powiodîo sië otworzenie ekranu? */
  if(my_screen == NULL)
  {
    /* Nie moûna otworzyê ekranu! */

    /* Zamknij intuition.library poniewaû zozstaîa otwarta */
    CloseLibrary( IntuitionBase );

    exit();
  }



  /* Ekran zostaî otworzony i wszystko jest O.K. */

  /* Czekaj 30 sekund */
  Delay( 50 * 30);

  /* Delay(time) jest funkcjâ, która zatrzymuje proces na jakiô czas */
  /* "time" jest liczbâ cykli zegara jakâ trzeba odczekaê (50 cykli na sek.) */



  /* Zawsze naleûy zamknâê ekran, zanim skoïczymy program */
  CloseScreen( my_screen );



  /* Podobnieû naleûy zamknâê intuition.library */
  CloseLibrary( IntuitionBase );

}
