|
|
| version 1.20, 2004/07/01 11:42:54 | version 1.22, 2011/01/15 18:04:43 |
|---|---|
| Line 138 static void calc_gdcslavewait(UINT dots) | Line 138 static void calc_gdcslavewait(UINT dots) |
| gdcsub_setslavewait(clk); | gdcsub_setslavewait(clk); |
| } | } |
| void gdcsub_setvectl(GDCVECT *vect, int x1, int y1, int x2, int y2) { | void gdcsub_setvectl(GDCVECT *vect, int xx1, int yy1, int xx2, int yy2) { |
| UINT ope; | UINT ope; |
| int dy; | int dy; |
| Line 146 void gdcsub_setvectl(GDCVECT *vect, int | Line 146 void gdcsub_setvectl(GDCVECT *vect, int |
| int tmp; | int tmp; |
| ope = 0; | ope = 0; |
| dy = y2 - y1; | dy = yy2 - yy1; |
| if (dy < 0) { | if (dy < 0) { |
| dy = 0 - dy; | dy = 0 - dy; |
| } | } |
| dx = x2 - x1; | dx = xx2 - xx1; |
| if (dx == 0) { | if (dx == 0) { |
| if (y1 <= y2) { | if (yy1 <= yy2) { |
| ope = 7; | ope = 7; |
| } | } |
| else { | else { |
| Line 161 void gdcsub_setvectl(GDCVECT *vect, int | Line 161 void gdcsub_setvectl(GDCVECT *vect, int |
| } | } |
| else { | else { |
| if (dx > 0) { | if (dx > 0) { |
| if (y1 >= y2) { | if (yy1 >= yy2) { |
| ope += 2; | ope += 2; |
| } | } |
| } | } |
| else { | else { |
| dx = 0 - dx; | dx = 0 - dx; |
| ope += 4; | ope += 4; |
| if (y1 <= y2) { | if (yy1 <= yy2) { |
| ope += 2; | ope += 2; |
| } | } |
| } | } |
| Line 292 void gdcsub_vectl(UINT32 csrw, const GDC | Line 292 void gdcsub_vectl(UINT32 csrw, const GDC |
| void gdcsub_vectt(UINT32 csrw, const GDCVECT *vect, REG16 pat, REG8 ope) { | void gdcsub_vectt(UINT32 csrw, const GDCVECT *vect, REG16 pat, REG8 ope) { |
| _GDCPSET pset; | _GDCPSET pset; |
| BYTE multiple; | UINT8 multiple; |
| UINT sx; | UINT sx; |
| const VECTDIR *dir; | const VECTDIR *dir; |
| BYTE muly; | UINT8 muly; |
| REG16 cx; | REG16 cx; |
| REG16 cy; | REG16 cy; |
| UINT xrem; | UINT xrem; |
| BYTE mulx; | UINT8 mulx; |
| if (vect->ope & 0x80) { // SL | if (vect->ope & 0x80) { // SL |
| pat = (REG16)((GDCPATREVERSE(pat) << 8) + GDCPATREVERSE(pat >> 8)); | pat = (REG16)((GDCPATREVERSE(pat) << 8) + GDCPATREVERSE(pat >> 8)); |
| Line 477 const VECTDIR *dir; | Line 477 const VECTDIR *dir; |
| calc_gdcslavewait(pset.dots); | calc_gdcslavewait(pset.dots); |
| } | } |
| void gdcsub_text(UINT32 csrw, const GDCVECT *vect, const BYTE *pat, | void gdcsub_text(UINT32 csrw, const GDCVECT *vect, const UINT8 *pat, |
| REG8 ope) { | REG8 ope) { |
| _GDCPSET pset; | _GDCPSET pset; |
| BYTE multiple; | UINT8 multiple; |
| UINT sx; | UINT sx; |
| UINT sy; | UINT sy; |
| const VECTDIR *dir; | const VECTDIR *dir; |
| UINT patnum; | UINT patnum; |
| BYTE muly; | UINT8 muly; |
| REG16 cx; | REG16 cx; |
| REG16 cy; | REG16 cy; |
| UINT xrem; | UINT xrem; |
| BYTE bit; | UINT8 bit; |
| BYTE mulx; | UINT8 mulx; |
| gdcpset_prepare(&pset, csrw, 0xffff, ope); | gdcpset_prepare(&pset, csrw, 0xffff, ope); |
| multiple = (gdc.s.para[GDC_ZOOM] & 15) + 1; | multiple = (gdc.s.para[GDC_ZOOM] & 15) + 1; |
| Line 558 void gdcsub_write(void) { | Line 558 void gdcsub_write(void) { |
| UINT16 data; | UINT16 data; |
| UINT32 adrs; | UINT32 adrs; |
| UINT leng; | UINT leng; |
| BYTE *ptr; | UINT8 *ptr; |
| UINT16 updatebit; | UINT16 updatebit; |
| #if 0 | #if 0 |
| Line 625 void gdcsub_write(void) { | Line 625 void gdcsub_write(void) { |
| ptr += VRAM_STEP; | ptr += VRAM_STEP; |
| updatebit = 0x0202; | updatebit = 0x0202; |
| } | } |
| gdcs.grphdisp |= (BYTE)updatebit; | gdcs.grphdisp |= (UINT8)updatebit; |
| ptr += gdcplaneseg[(adrs >> 14) & 3]; | ptr += gdcplaneseg[(adrs >> 14) & 3]; |
| adrs = (adrs & 0x3fff) << 1; | adrs = (adrs & 0x3fff) << 1; |