|
|
| version 1.18, 2004/06/04 16:54:57 | version 1.21, 2005/05/20 13:59:47 |
|---|---|
| Line 21 void bios_lio(REG8 cmd) { | Line 21 void bios_lio(REG8 cmd) { |
| UINT8 ret; | UINT8 ret; |
| // TRACEOUT(("lio command %.2x", cmd)); | // TRACEOUT(("lio command %.2x", cmd)); |
| MEML_READSTR(CPU_DS, 0x0620, &lio.work, sizeof(lio.work)); | MEMR_READS(CPU_DS, 0x0620, &lio.work, sizeof(lio.work)); |
| lio.palmode = MEML_READ8(CPU_DS, 0x0a08); | lio.palmode = MEMR_READ8(CPU_DS, 0x0a08); |
| lio.wait = 0; | lio.wait = 0; |
| switch(cmd) { | switch(cmd) { |
| case 0x00: // a0: GINIT | case 0x00: // a0: GINIT |
| Line 58 void bios_lio(REG8 cmd) { | Line 58 void bios_lio(REG8 cmd) { |
| break; | break; |
| case 0x08: // a8: GCIRCLE | case 0x08: // a8: GCIRCLE |
| #if 0 | |
| ret = lio_gcircle(&lio); | ret = lio_gcircle(&lio); |
| break; | break; |
| #endif | |
| // case 0x09: // a9: GPAINT1 | // case 0x09: // a9: GPAINT1 |
| // break; | // break; |
| Line 170 void lio_updatedraw(GLIO lio) { | Line 168 void lio_updatedraw(GLIO lio) { |
| static void pixed8(const _GLIO *lio, UINT addr, REG8 bit, REG8 pal) { | static void pixed8(const _GLIO *lio, UINT addr, REG8 bit, REG8 pal) { |
| BYTE *ptr; | UINT8 *ptr; |
| addr = LOW15(addr); | addr = LOW15(addr); |
| vramupdate[addr] |= lio->draw.sbit; | vramupdate[addr] |= lio->draw.sbit; |
| Line 217 static void pixed8(const _GLIO *lio, UIN | Line 215 static void pixed8(const _GLIO *lio, UIN |
| void lio_pset(const _GLIO *lio, SINT16 x, SINT16 y, REG8 pal) { | void lio_pset(const _GLIO *lio, SINT16 x, SINT16 y, REG8 pal) { |
| UINT addr; | UINT addr; |
| BYTE bit; | UINT8 bit; |
| if ((lio->draw.x1 > x) || (lio->draw.x2 < x) || | if ((lio->draw.x1 > x) || (lio->draw.x2 < x) || |
| (lio->draw.y1 > y) || (lio->draw.y2 < y)) { | (lio->draw.y1 > y) || (lio->draw.y2 < y)) { |
| Line 236 void lio_pset(const _GLIO *lio, SINT16 x | Line 234 void lio_pset(const _GLIO *lio, SINT16 x |
| void lio_line(const _GLIO *lio, SINT16 x1, SINT16 x2, SINT16 y, REG8 pal) { | void lio_line(const _GLIO *lio, SINT16 x1, SINT16 x2, SINT16 y, REG8 pal) { |
| UINT addr; | UINT addr; |
| BYTE bit, dbit; | UINT8 bit, dbit; |
| SINT16 width; | SINT16 width; |
| if ((lio->draw.y1 > y) || (lio->draw.y2 < y)) { | if ((lio->draw.y1 > y) || (lio->draw.y2 < y)) { |
| Line 284 void lio_line(const _GLIO *lio, SINT16 x | Line 282 void lio_line(const _GLIO *lio, SINT16 x |
| } | } |
| #endif | #endif |
| #if 0 | |
| void lio_look(UINT vect) { | |
| BYTE work[16]; | |
| TRACEOUT(("lio command %.2x [%.4x:%.4x]", vect, CPU_CS, CPU_IP)); | |
| if (vect == 0xa7) { | |
| i286_memstr_read(CPU_DS, CPU_BX, work, 16); | |
| TRACEOUT(("LINE %d %d %d %d - %d %d / %d : %.2x %.2x", | |
| LOADINTELWORD(work), | |
| LOADINTELWORD(work+2), | |
| LOADINTELWORD(work+4), | |
| LOADINTELWORD(work+6), | |
| work[8], work[9], work[10], work[11], work[12])); | |
| } | |
| else if (vect == 0xad) { | |
| i286_memstr_read(CPU_DS, CPU_BX, work, 16); | |
| TRACEOUT(("GPUT2 x=%d / y=%d / chr=%.4x / %d / %d %d %d", | |
| LOADINTELWORD(work), | |
| LOADINTELWORD(work+2), | |
| LOADINTELWORD(work+4), | |
| work[6], work[7], work[8], work[9])); | |
| } | |
| } | |
| #endif | |