Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* "Sprite Test" w jezyku C */
- #include <stdio.h>
- #include <graphics/sprite.h>
- #include <hardware/intbits.h>
- #include <exec/interrupts.h>
- #include <dos/dos.h>
- #include <clib/graphics_protos.h>
- #include <clib/exec_protos.h>
- #include <clib/dos_protos.h>
- /* Grafika duszka */
- __chip UWORD sprite_data[] =
- {
- 0, 0,
- 0x0000, 0x07E0,
- 0x07E0, 0x1FF8,
- 0x1FF8, 0x3FFC,
- 0x1FF8, 0x3FFC,
- 0x399C, 0x7FFE,
- 0x37EC, 0x799E,
- 0x37EC, 0x799E,
- 0x399C, 0x7FFE,
- 0x3FFC, 0x7FFE,
- 0x0FF0, 0x3FFC,
- 0x07E0, 0x0FF0,
- 0x05A0, 0x0FF0,
- 0x0000, 0x07E0,
- 0x0000, 0x0000,
- 0x0000, 0x73CE,
- 0x63C6, 0xF7EF,
- 0x700E, 0xFBDF,
- 0x381C, 0xFC3F,
- 0x1C38, 0x3E7C,
- 0x0E70, 0x1FF8,
- 0x07E0, 0x0FF0,
- 0x07E0, 0x0FF0,
- 0x0E70, 0x1FF8,
- 0x1C38, 0x3E7C,
- 0x381C, 0xFC3F,
- 0x700E, 0xF81F,
- 0x6006, 0xF00F,
- 0x0000, 0x700E,
- 0, 0
- };
- __regargs __asm __saveds ULONG mycode( register __a1 struct SimpleSprite *s )
- {
- MoveSprite( NULL, s, s->x + 1, s->y + 1 );
- return( 0 );
- }
- int main()
- {
- struct SimpleSprite sprite = { 0 };
- WORD number;
- struct Interrupt myvblank = { 0 };
- /* Probujemy zaalokowac duszka */
- if( ( number = GetSprite( &sprite, -1 ) ) == -1 )
- {
- printf( "Nie mozna zaalokowac duszka.\n" );
- return( RETURN_WARN );
- }
- sprite.x = 0; /* Ustawiamy pozycje poczatkowa */
- sprite.y = 0;
- sprite.height = 28; /* Ustawiamy wysokosc duszka */
- ChangeSprite( NULL, &sprite, sprite_data ); /* Ustawiamy wyglad */
- myvblank.is_Data = &sprite;
- myvblank.is_Code = ( VOID (*) ) mycode;
- myvblank.is_Node.ln_Name = "Sprite Test";
- myvblank.is_Node.ln_Pri = 20; /* Priorytet */
- AddIntServer( INTB_VERTB, &myvblank ); /* Instalujemy obsluge przerwania */
- Delay( 200 );
- RemIntServer( INTB_VERTB, &myvblank ); /* Usuwamy obsluge przerwania */
- FreeSprite( number ); /* Zwalniamy duszka */
- return( 0 ); /* Wychodzimy */
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement