home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Phoenix Heaven Sunny 2
/
APPARE2.BIN
/
oh_towns
/
his
/
omake
/
vsync.c
< prev
next >
Wrap
C/C++ Source or Header
|
1995-06-20
|
2KB
|
63 lines
/***********************************************************************
垂直同期サンプル
1995.1.17 by ちょもらんま
***********************************************************************/
#include <stdio.h>
#include <egb.h>
#define EGB_workSize 1536
#define EGB_paraSize 32
char EGB_work[ EGB_workSize ];
char EGB_para[ EGB_paraSize ];
#define BAR_size 10
#define BAR_num 640/BAR_size
#define WaitCount 50000
void main( void )
{
int i,j,n;
for( n = 0 ; n < 2 ; n++ )
{
/******************** EGB初期化 ***********************/
EGB_init( EGB_work , EGB_workSize );
EGB_paintMode( EGB_work , 0x20 ); /* 面塗り */
/**************** 画面を左から埋めてゆく *****************/
for( i = 0 ; i < BAR_num ; i++ )
{
/******************* ウェイト *******************/
switch( n )
{
/*-------------- ソフトウェアタイマの場合 -----------*/
case 0:
for( j = 0 ; j < WaitCount ; j++ );
break;
/*---------------- 垂直同期待ちの場合 ---------------*/
case 1:
DWORD( EGB_para + 0 ) = 0; /* 設定パレット数0 */
EGB_palette( EGB_work , 1 , EGB_para );
break;
}
/******************* 棒を書く*******************/
WORD( EGB_para + 0 ) = i * BAR_size;
WORD( EGB_para + 2 ) = 0;
WORD( EGB_para + 4 ) = i * BAR_size + BAR_size - 1;
WORD( EGB_para + 6 ) = 479;
EGB_rectangle( EGB_work , EGB_para );
}
getchar();
}
}