New window scrolling
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@249
This commit is contained in:
parent
9ee4cbbe76
commit
4245ed0c16
2 changed files with 14 additions and 14 deletions
|
@ -16,7 +16,6 @@
|
|||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
|
||||
#include <string.h>
|
||||
#include "dosbox.h"
|
||||
#include "bios.h"
|
||||
|
@ -54,14 +53,15 @@ static Bitu INT10_Handler(void) {
|
|||
LOG_WARN("INT10:04:Ligthpen not supported");
|
||||
break;
|
||||
case 0x05: /* Set Active Page */
|
||||
INT10_SetActivePage(reg_al);
|
||||
if (reg_al & 0x80) LOG_DEBUG("Func %x",reg_al);
|
||||
else INT10_SetActivePage(reg_al);
|
||||
break;
|
||||
case 0x06: /* Scroll Up */
|
||||
//TODO Graphics mode scroll
|
||||
INT10_ScrollUpWindow(reg_ch,reg_cl,reg_dh,reg_dl,reg_al,reg_bh,0xFF);
|
||||
INT10_ScrollWindow(reg_ch,reg_cl,reg_dh,reg_dl,-reg_al,reg_bh,0xFF);
|
||||
break;
|
||||
case 0x07: /* Scroll Down */
|
||||
INT10_ScrollDownWindow(reg_ch,reg_cl,reg_dh,reg_dl,reg_al,reg_bh,0xFF);
|
||||
INT10_ScrollWindow(reg_ch,reg_cl,reg_dh,reg_dl,reg_al,reg_bh,0xFF);
|
||||
break;
|
||||
case 0x08: /* Read character & attribute at cursor */
|
||||
//TODO Check for GRAPH and then just return
|
||||
|
@ -260,7 +260,6 @@ static void INT10_InitVGA(void) {
|
|||
};
|
||||
|
||||
void INT10_StartUp(void) {
|
||||
|
||||
INT10_InitVGA();
|
||||
/* Setup the INT 10 vector */
|
||||
call_10=CALLBACK_Allocate();
|
||||
|
|
|
@ -102,11 +102,15 @@
|
|||
#define PLANAR4 0x05
|
||||
#define LINEAR8 0x06
|
||||
|
||||
// for SVGA
|
||||
#define LINEAR15 0x07
|
||||
#define LINEAR16 0x08
|
||||
#define LINEAR24 0x09
|
||||
#define LINEAR32 0x0
|
||||
// for Tandy
|
||||
|
||||
#define TANDY16 0x0A
|
||||
|
||||
|
||||
#define LINEAR15 0x10
|
||||
#define LINEAR16 0x11
|
||||
#define LINEAR24 0x12
|
||||
#define LINEAR32 0x13
|
||||
|
||||
|
||||
#define SCREEN_SIZE(x,y) (((x*y*2)|0x00ff)+1)
|
||||
|
@ -167,14 +171,11 @@ inline Bit8u CURSOR_POS_ROW(Bit8u page) {
|
|||
|
||||
void INT10_SetVideoMode(Bit8u mode);
|
||||
|
||||
void INT10_ScrollUpWindow(Bit8u rul,Bit8u cul,Bit8u rlr,Bit8u clr,Bit8u nlines,Bit8u attr,Bit8u page);
|
||||
void INT10_ScrollDownWindow(Bit8u rul,Bit8u cul,Bit8u rlr,Bit8u clr,Bit8u nlines,Bit8u attr,Bit8u page);
|
||||
|
||||
void INT10_ScrollWindow(Bit8u rul,Bit8u cul,Bit8u rlr,Bit8u clr,Bit8s nlines,Bit8u attr,Bit8u page);
|
||||
|
||||
void INT10_SetActivePage(Bit8u page);
|
||||
void INT10_GetFuncStateInformation(PhysPt save);
|
||||
|
||||
|
||||
void INT10_SetCursorPos(Bit8u row,Bit8u col,Bit8u page);
|
||||
void INT10_TeletypeOutput(Bit8u chr,Bit8u attr,bool showattr, Bit8u page);
|
||||
void INT10_ReadCharAttr(Bit16u * result,Bit8u page);
|
||||
|
|
Loading…
Add table
Reference in a new issue