|
|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: T a
Length: 2293 (0x8f5)
Types: TextFile
Names: »ast_sun.c«
└─⟦b20c6495f⟧ Bits:30007238 EUUGD18: Wien-båndet, efterår 1987
└─⟦this⟧ »EUUGD18/Sun/Asteroids/ast_sun.c«
/* ast_sun.c
*
* SUN dependent functions and procedures used by the asteroids game.
* Written by Rich Burridge - SUN Microsystems Australia (Melbourne).
*
* Version 3.0. - April 1987.
*
* No responsibility is taken for any errors inherent either to the code
* or the comments of this program, but if reported to me then an attempt
* will be made to fix them.
*/
#include <stdio.h>
#include <strings.h>
#include <sundev/kbd.h>
#include <sys/ioctl.h>
#include <sys/types.h>
#include <sundev/kbio.h>
#include "bltstuff.h"
#include "asteroids.h"
#include <sys/timeb.h>
#include <suntool/sunview.h>
#include <suntool/canvas.h>
Cursor nullcur,syscur ; /* Asteroids cursors. */
Pixfont *pf ;
extern Canvas canvas ;
extern Pixwin *pw ;
short nullcur_data[] = {
0, 0, 0, 0, 0, 0, 0, 0, 0, 0 , 0, 0, 0, 0, 0, 0
} ;
mpr_static(nullcur_pr,16,16,1,nullcur_data) ;
short syscur_data[] = {
#include "main.cursor"
} ;
mpr_static(syscur_pr,16,16,1,syscur_data) ;
int sfunc ;
get_key(fd,station,value,count)
int fd,station,count ;
char value[MAXLINE] ;
{
struct kiockey key ;
key.kio_tablemask = 0 ;
key.kio_entry = count ;
key.kio_station = station ;
IOCTL(fd,(int) KIOCGETKEY,(char *) &key) ;
STRCPY(value,key.kio_string) ;
}
iocursormode(m) /* Set the current cursor display mode. */
int m ;
{
switch (m)
{
case OFFCURSOR : nullcur = window_get(canvas,WIN_CURSOR) ;
cursor_set(nullcur,CURSOR_IMAGE,&nullcur_pr,0) ;
window_set(canvas,WIN_CURSOR,nullcur,0) ;
break ;
case TRACKCURSOR : syscur = window_get(canvas,WIN_CURSOR) ;
cursor_set(syscur,CURSOR_IMAGE,&syscur_pr,0) ;
cursor_set(syscur,CURSOR_OP,PIX_SRC ^ PIX_DST,0) ;
window_set(canvas,WIN_CURSOR,syscur,0) ;
}
}
set_key(fd,station,value,count)
int fd,station,count ;
char value[MAXLINE] ;
{
struct kiockey key ;
key.kio_tablemask = 0 ;
key.kio_entry = count ;
key.kio_station = station ;
STRCPY(key.kio_string,value) ;
IOCTL(fd,(int) KIOCSETKEY,(char *) &key) ;
}
write_bold(x,y,text)
int x,y ;
char text[MAXLINE] ;
{
pw_text(pw,x,y,ROR,pf,text) ;
pw_text(pw,x+1,y,ROR,pf,text) ;
}