// * Integrate vga_modes/pallete?/line_to_vpti/dac_regs/video_param_table
// * define structs for save/restore state
// * review correctness of converted asm by comparing with RBIL
-// * eliminate unimplemented() calls
-// * eliminate DEBUG defs
// * more syntax cleanups
// * refactor redundant code into sub-functions
// * See if there is a method to the in/out stuff that can be encapsulated.
// * add defs for 0xa000/0xb800
// * verify all funcs static
//
+// * convert vbe/clext code
+//
// * separate code into separate files
// * extract hw code from bios interfaces
-//
-// * convert vbe/clext code
#include "bregs.h" // struct bregs
#include "biosvar.h" // GET_BDA
break;
default:
dprintf(1, "Scroll in graphics mode\n");
-#ifdef DEBUG
- unimplemented();
-#endif
}
}
}
*car = GET_FARVAR(GET_GLOBAL(vga_modes[line].sstart), *address);
} else {
// FIXME gfx mode
-#ifdef DEBUG
- unimplemented();
-#endif
+ dprintf(1, "Read char in graphics mode\n");
}
}
case LINEAR8:
write_gfx_char_lin(car, attr, xcurs, ycurs, nbcols);
break;
-#ifdef DEBUG
- default:
- unimplemented();
-#endif
}
xcurs++;
}
case LINEAR8:
write_gfx_char_lin(car, attr, xcurs, ycurs, nbcols);
break;
-#ifdef DEBUG
- default:
- unimplemented();
-#endif
}
xcurs++;
}
addr = (void*)(CX + DX * (GET_BDA(video_cols) * 8));
SET_FARVAR(0xa000, *addr, AL);
break;
-#ifdef DEBUG
- default:
- unimplemented();
-#endif
}
}
addr = (void*)(CX + DX * (GET_BDA(video_cols) * 8));
attr = GET_FARVAR(0xa000, *addr);
break;
- default:
-#ifdef DEBUG
- unimplemented();
-#endif
- attr = 0;
}
*AX = (*AX & 0xff00) | attr;
}
case LINEAR8:
write_gfx_char_lin(car, attr, xcurs, ycurs, nbcols);
break;
-#ifdef DEBUG
- default:
- unimplemented();
-#endif
}
}
xcurs++;