|
|
| version 1.1.1.1, 2003/10/16 17:58:27 | version 1.5, 2004/02/20 15:20:30 |
|---|---|
| Line 1 | Line 1 |
| #include "compiler.h" | #include "compiler.h" |
| #include "i286.h" | #include "cpucore.h" |
| #include "memory.h" | |
| #include "lio.h" | #include "lio.h" |
| Line 8 typedef struct { | Line 7 typedef struct { |
| BYTE x[2]; | BYTE x[2]; |
| BYTE y[2]; | BYTE y[2]; |
| BYTE pal; | BYTE pal; |
| } MEMGPSET; | } GPSET; |
| BYTE lio_gpset(void) { | // ---- CLS |
| MEMGPSET gpset; | REG8 lio_gcls(LIOWORK lio) { |
| SINT16 x; | |
| SINT16 y; | |
| i286_memstr_read(I286_DS, I286_BX, &gpset, sizeof(gpset)); | SINT16 y; |
| if (gpset.pal >= lio.gcolor1.palmax) { | |
| if (I286_AH == 2) { | lio_updaterange(lio); |
| gpset.pal = lio.gcolor1.bgcolor; | for (y=lio->range.y1; y<=lio->range.y2; y++) { |
| lio_line(lio, lio->range.x1, lio->range.x2, y, lio->gcolor1.bgcolor); | |
| } | |
| return(LIO_SUCCESS); | |
| } | |
| // ---- PSET | |
| REG8 lio_gpset(LIOWORK lio) { | |
| GPSET dat; | |
| SINT16 x; | |
| SINT16 y; | |
| lio_updaterange(lio); | |
| i286_memstr_read(CPU_DS, CPU_BX, &dat, sizeof(dat)); | |
| if (dat.pal >= lio->gcolor1.palmax) { | |
| if (CPU_AH == 2) { | |
| dat.pal = lio->gcolor1.bgcolor; | |
| } | } |
| else { | else { |
| gpset.pal = lio.gcolor1.fgcolor; | dat.pal = lio->gcolor1.fgcolor; |
| } | } |
| } | } |
| x = (SINT16)LOADINTELWORD(gpset.x); | x = (SINT16)LOADINTELWORD(dat.x); |
| y = (SINT16)LOADINTELWORD(gpset.y); | y = (SINT16)LOADINTELWORD(dat.y); |
| lio_pset(x, y, gpset.pal); | lio_pset(lio, x, y, dat.pal); |
| return(0); | return(LIO_SUCCESS); |
| } | } |