| version 1.3, 2004/08/07 07:19:56 | version 1.6, 2004/08/12 13:32:52 | 
| Line 16  void IOOUTCALL tram_o(UINT port, REG8 va | Line 16  void IOOUTCALL tram_o(UINT port, REG8 va | 
 | if (tram[TRAM_ATR + addr] == value) { | if (tram[TRAM_ATR + addr] == value) { | 
 | return; | return; | 
 | } | } | 
| if ((tram[TRAM_ATR + addr] ^ value) & (X1ATR_Yx2 | X1ATR_Xx2)) { | if ((tram[TRAM_ATR + addr] ^ value) & (TRAMATR_Yx2 | TRAMATR_Xx2)) { | 
 | makescrn.remakeattr = 1; | makescrn.remakeattr = 1; | 
 | } | } | 
| if (value & X1ATR_BLINK) { | if (value & TRAMATR_BLINK) { | 
 | makescrn.existblink = 1; | makescrn.existblink = 1; | 
 | } | } | 
 | tram[TRAM_ATR + addr] = value; | tram[TRAM_ATR + addr] = value; | 
| Line 37  void IOOUTCALL tram_o(UINT port, REG8 va | Line 37  void IOOUTCALL tram_o(UINT port, REG8 va | 
 | tram[TRAM_ANK + addr] = value; | tram[TRAM_ANK + addr] = value; | 
 | } | } | 
 | makescrn.scrnflash = 1; | makescrn.scrnflash = 1; | 
| if (tram[TRAM_ATR + addr] & X1ATR_Xx2) { | if (tram[TRAM_ATR + addr] & TRAMATR_Xx2) { | 
| updatetmp[addr + 1] |= UPDATE_TVRAM; | updatetmp[LOW11(addr + 1)] |= UPDATE_TVRAM; | 
 | } | } | 
 | updatetmp[addr] |= UPDATE_TVRAM; | updatetmp[addr] |= UPDATE_TVRAM; | 
 | } | } | 
| Line 83  void IOOUTCALL gram2_o(UINT port, REG8 v | Line 83  void IOOUTCALL gram2_o(UINT port, REG8 v | 
 | UINT8   *p; | UINT8   *p; | 
 |  |  | 
 | p = crtc.e.gram + (((port << 5) + (port >> 11)) & 0xffe7); | p = crtc.e.gram + (((port << 5) + (port >> 11)) & 0xffe7); | 
| switch(port & 0xc000) { | switch((port >> 14) & 3) { | 
| case 0x0000: | case 0: | 
| p[PLANE_B] = value; | p[GRAM_B] = value; | 
| p[PLANE_R] = value; | p[GRAM_R] = value; | 
| p[PLANE_G] = value; | p[GRAM_G] = value; | 
 | break; | break; | 
 |  |  | 
| case 0x4000: | case 1: | 
| p[PLANE_R] = value; | p[GRAM_R] = value; | 
| p[PLANE_G] = value; | p[GRAM_G] = value; | 
 | break; | break; | 
 |  |  | 
| case 0x8000: | case 2: | 
| p[PLANE_B] = value; | p[GRAM_B] = value; | 
| p[PLANE_G] = value; | p[GRAM_G] = value; | 
 | break; | break; | 
 |  |  | 
| case 0xc000: | case 3: | 
| p[PLANE_B] = value; | p[GRAM_B] = value; | 
| p[PLANE_R] = value; | p[GRAM_R] = value; | 
 | break; | break; | 
 | } | } | 
 | updatetmp[port & crtc.e.updatemask] |= crtc.e.updatebit; | updatetmp[port & crtc.e.updatemask] |= crtc.e.updatebit; | 
| Line 114  void IOOUTCALL gram2_o(UINT port, REG8 v | Line 114  void IOOUTCALL gram2_o(UINT port, REG8 v | 
 |  |  | 
 | void vramio_reset(void) { | void vramio_reset(void) { | 
 |  |  | 
| ZeroMemory(GRP_RAM, 0x20000); | ZeroMemory(gram, sizeof(gram)); | 
| ZeroMemory(tram, 0x01800); | FillMemory(tram + TRAM_ATR, 0x800, 0x07); | 
| memset(tram + TRAM_ATR, 0x07, 0x800); | FillMemory(tram + TRAM_ANK, 0x800, 0x20); | 
| memset(tram + TRAM_ANK, 0x20, 0x800); | ZeroMemory(tram + TRAM_KNJ, 0x800); | 
 | ZeroMemory(updatetmp, sizeof(updatetmp)); | ZeroMemory(updatetmp, sizeof(updatetmp)); | 
 | } | } | 
 |  |  |