| 123 | // GS Write 16 bit |
| 124 | |
| 125 | __fi void gsWrite16(u32 mem, u16 value) |
| 126 | { |
| 127 | GIF_LOG("GS write 16 at %8.8lx with data %8.8lx", mem, value); |
| 128 | |
| 129 | switch (mem) |
| 130 | { |
| 131 | // See note above about CSR 8 bit writes, and handling them as zero'd bits |
| 132 | // for all but the written parts. |
| 133 | |
| 134 | case GS_CSR: |
| 135 | gsCSRwrite( tGS_CSR((u32)value) ); |
| 136 | return; // do not write to MTGS memory |
| 137 | |
| 138 | case GS_CSR+2: |
| 139 | gsCSRwrite( tGS_CSR(((u32)value) << 16) ); |
| 140 | return; // do not write to MTGS memory |
| 141 | |
| 142 | case GS_IMR: |
| 143 | IMRwrite(value); |
| 144 | return; // do not write to MTGS memory |
| 145 | } |
| 146 | |
| 147 | *(u16*)PS2GS_BASE(mem) = value; |
| 148 | } |
| 149 | |
| 150 | ////////////////////////////////////////////////////////////////////////// |
| 151 | // GS Write 32 bit |
no test coverage detected