home *** CD-ROM | disk | FTP | other *** search
- /* TPLUS.H, (C) 1991 The Yankee Programmer
- All Rights Reserved
-
- This code may be distributed only when bundled with the Fractint
- source code.
-
- Mark C. Peterson
- The Yankee Programmer
- 405-C Queen Street, Suite #181
- Southington, CT 06489
- (203) 276-9721
-
- */
-
- #ifndef TPLUS_H
- #define TPLUS_H
-
- #ifdef CTL
- #undef CTL
- #endif
-
- #ifdef __TURBOC__
- #define OUTPORTB outportb
- #define INPORTB inportb
- #define OUTPORTW outport
- #define INPORTW inport
- #else
- #define OUTPORTB outp
- #define INPORTB inp
- #define OUTPORTW outpw
- #define INPORTW inpw
- #endif
-
- struct TPWrite {
- unsigned
- COLOR0, COLOR1, COLOR2, COLOR3, VIDCON, INDIRECT, HUESAT,
- OVSTRT, MASKL, MASKH, LBNK, HBNK, MODE1, MODE2,
- WBL, WBH;
- };
-
- struct TPRead {
- unsigned
- VIDSTAT, CTL, MASKL, LBNK, READAD, MODE1,
- OVSTRT, USCAN, MASKH, OSCAN, HBNK, ROWCNT, MODE2,
- RBL, RBH;
- };
-
- /* TPlus Register Data Offsets */
- #define XDOTS 0
- #define YDOTS 1
- #define ASP_RATIO 2
- #define DEPTH 4
- #define PAGE 5
- #define BOTBANK 7
- #define TOPBANK 8
- #define ZOOM 10
- #define DISPMODE 11
- #define DAC567DATA 15
- #define VTOP 19
- #define TOP 51
- #define BOT 53
- #define VPAN 55
- #define NOT_INT 56
- #define HIRES 61
- #define PERM 64
- #define BYCAP 68
- #define PE 69
- #define OVLE 70
- #define HPAN 71
- #define MEM_BASE 73
- #define MEM_MAP 74
- #define LIVEMIXSRC 91
- #define RGB 93
- #define SVIDEO 97
- #define BUFFPORTSRC 98
- #define CM1 101
- #define CM2 102
- #define LUTBYPASS 107
- #define CM3 113
- #define LIVEPORTSRC 115
- #define LIVE8 116
- #define VGASRC 123
-
- struct _BOARD {
- int ThisBoard, ClearScreen;
- BYTE far *Screen;
- unsigned VerPan, HorPan, Top, Bottom;
- unsigned xdots, ydots, Bank64k, RowBytes, RowsPerBank;
- unsigned Reg[128];
- #ifndef XFRACT
- void (*Plot)(int x, int y, unsigned long Color);
- unsigned long (*GetColor)(int x, int y);
- #else
- void (*Plot)();
- unsigned long (*GetColor)();
- #endif
-
- struct TPRead Read;
- struct TPWrite Write;
- };
-
- extern struct _BOARD far TPlus;
-
- #endif
-