home *** CD-ROM | disk | FTP | other *** search
/ PC Media 23 / PC MEDIA CD23.iso / share / prog / anubis / grafic1.h < prev    next >
Encoding:
C/C++ Source or Header  |  1995-08-04  |  2.4 KB  |  66 lines

  1. // GRAFIC1.H
  2. // (C) Anubis Software Enero 1995
  3. // Esta librería gestiona el uso de gráficos, sin utilizar la BIOS
  4. // con lo que la ganancia de tiempo es mayor. Y la versatilidad mejor.
  5.  
  6. #ifndef GRAFIC1.H
  7. #define GRAFIC1.H
  8. // -------------------------------+
  9. // Librerias de BORLAND C++       |
  10. // -------------------------------+
  11. #include <dos.h>
  12. #include <math.h>
  13.  
  14. // -------------------------------+
  15. // Librerias de Anubis Software   |
  16. // -------------------------------+
  17. #include "mdefs.h"
  18.  
  19. // ---------------------------------------+
  20. // Definicion de constantes               |
  21. // ---------------------------------------+
  22. #define IND_CONT_GRA    3ceh      //Registro índice del controlador gráfico
  23. #define NUM_READ_MAP    4         //Número del registro READ-MAP
  24. #define NUM_MODO_GRA    5         //Número del registro del modo gráfico
  25. #define NUM_BIT_MASK    8         //Número del registro de BIT-MASK
  26. #define IND_REG_CRT     3d4h      //Registro índice del controlador del CRT
  27. #define NUM_REG_HI      0Ch       //Número del registro HI-START
  28. #define VERT_RETRACE    3DAh      //Registro de estado de INPUT #1
  29. // Definicion de tipos para el algoritmo de CohenSutherlandLineClipAndDraw
  30. #define LEFT   1
  31. #define RIGHT  2
  32. #define BOTTOM 4
  33. #define TOP    8
  34.  
  35. //----------------------------------------+
  36. // Definición de tipos de la librería     |
  37. // ---------------------------------------+
  38. typedef char outcode;
  39.  
  40. // ---------------------------------------+
  41. // Definición de variables de la librería |
  42. // ---------------------------------------+
  43. extern unsigned int SEG_VI   = 0x0A000;   //Segmento de vídeo con página activa
  44. extern unsigned int ANCH_LIN = 0;         //Anchura de una línea de puntos en bytes
  45. extern unsigned int OFF_PAG  = 0;         //Offset de página
  46.  
  47. // ---------------------------------------+
  48. // Declaración de prototipos              |
  49. // ---------------------------------------+
  50. void modo320200(void);
  51. void modo640480(void);
  52. void modo640350(void);
  53. void modo640200(void);
  54. void ActPunto(int,int,unsigned char );
  55. unsigned char LeePunto(int , int);
  56. void MuestraPag(int);
  57. void FijaPag(int);
  58. void SwapInt(int *,int *);
  59. void Linea(int,int, int,int,char);
  60. void Rectangulo(int,int,int,int,int);
  61. void CohenSutherlandLineClipAndDraw(double ,double ,double ,double ,double ,double ,double ,double ,int );
  62. void Circulo(int ,int ,int ,char );
  63.  
  64.  
  65. #endif
  66.