Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
a63458d8
Commit
a63458d8
authored
Jan 30, 1999
by
Andreas Mohr
Committed by
Alexandre Julliard
Jan 30, 1999
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Some interrupt enhancements.
parent
935ccabe
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
27 additions
and
4 deletions
+27
-4
miscemu.h
include/miscemu.h
+6
-0
int10.c
msdos/int10.c
+9
-2
int21.c
msdos/int21.c
+6
-2
interrupts.c
msdos/interrupts.c
+6
-0
No files found.
include/miscemu.h
View file @
a63458d8
...
@@ -55,9 +55,15 @@ extern void WINAPI INT_Int10Handler(CONTEXT*);
...
@@ -55,9 +55,15 @@ extern void WINAPI INT_Int10Handler(CONTEXT*);
/* msdos/int11.c */
/* msdos/int11.c */
extern
void
WINAPI
INT_Int11Handler
(
CONTEXT
*
);
extern
void
WINAPI
INT_Int11Handler
(
CONTEXT
*
);
/* msdos/int12.c */
extern
void
WINAPI
INT_Int12Handler
(
CONTEXT
*
);
/* msdos/int13.c */
/* msdos/int13.c */
extern
void
WINAPI
INT_Int13Handler
(
CONTEXT
*
);
extern
void
WINAPI
INT_Int13Handler
(
CONTEXT
*
);
/* msdos/int15.c */
extern
void
WINAPI
INT_Int15Handler
(
CONTEXT
*
);
/* msdos/int16.c */
/* msdos/int16.c */
extern
void
WINAPI
INT_Int16Handler
(
CONTEXT
*
);
extern
void
WINAPI
INT_Int16Handler
(
CONTEXT
*
);
...
...
msdos/int10.c
View file @
a63458d8
...
@@ -18,6 +18,8 @@ static void scroll_window(int direction, char lines, char row1,
...
@@ -18,6 +18,8 @@ static void scroll_window(int direction, char lines, char row1,
static
int
color_pallet
[
16
];
static
int
color_pallet
[
16
];
static
char
dummy
;
/* dummy var used for unneeded CONSOLE function parameter */
#define SCROLL_UP 1
#define SCROLL_UP 1
#define SCROLL_DOWN 2
#define SCROLL_DOWN 2
...
@@ -188,8 +190,13 @@ void WINAPI INT_Int10Handler( CONTEXT *context )
...
@@ -188,8 +190,13 @@ void WINAPI INT_Int10Handler( CONTEXT *context )
break
;
break
;
case
0x08
:
/* READ CHARACTER AND ATTRIBUTE AT CURSOR POSITION */
case
0x08
:
/* READ CHARACTER AND ATTRIBUTE AT CURSOR POSITION */
FIXME
(
int10
,
{
"Read Character and Attribute at Cursor Position - Not Supported
\n
"
);
CHAR
ch
,
attr
;
TRACE
(
int10
,
"Read Character and Attribute at Cursor Position
\n
"
);
CONSOLE_GetCharacterAtCursor
(
&
ch
,
&
dummy
,
&
dummy
,
&
attr
);
AL_reg
(
context
)
=
ch
;
AH_reg
(
context
)
=
attr
;
}
break
;
break
;
case
0x09
:
/* WRITE CHARACTER AND ATTRIBUTE AT CURSOR POSITION */
case
0x09
:
/* WRITE CHARACTER AND ATTRIBUTE AT CURSOR POSITION */
...
...
msdos/int21.c
View file @
a63458d8
...
@@ -1155,8 +1155,12 @@ void WINAPI DOS3Call( CONTEXT *context )
...
@@ -1155,8 +1155,12 @@ void WINAPI DOS3Call( CONTEXT *context )
DS_reg
(
context
),
DX_reg
(
context
)
);
DS_reg
(
context
),
DX_reg
(
context
)
);
{
{
LPSTR
data
=
CTX_SEG_OFF_TO_LIN
(
context
,
DS_reg
(
context
),
EDX_reg
(
context
));
LPSTR
data
=
CTX_SEG_OFF_TO_LIN
(
context
,
DS_reg
(
context
),
EDX_reg
(
context
));
LONG
length
=
strchr
(
data
,
'$'
)
-
data
;
LPSTR
p
=
data
;
_hwrite16
(
1
,
data
,
length
);
/* do NOT use strchr() to calculate the string length,
as '\0' is valid string content, too !
Maybe we should check for non-'$' strings, but DOS doesn't. */
while
(
*
p
!=
'$'
)
p
++
;
_hwrite16
(
1
,
data
,
(
int
)
p
-
(
int
)
data
);
AL_reg
(
context
)
=
'$'
;
/* yes, '$' (0x24) gets returned in AL */
AL_reg
(
context
)
=
'$'
;
/* yes, '$' (0x24) gets returned in AL */
}
}
break
;
break
;
...
...
msdos/interrupts.c
View file @
a63458d8
...
@@ -111,9 +111,15 @@ int INT_RealModeInterrupt( BYTE intnum, PCONTEXT context )
...
@@ -111,9 +111,15 @@ int INT_RealModeInterrupt( BYTE intnum, PCONTEXT context )
case
0x11
:
case
0x11
:
INT_Int11Handler
(
context
);
INT_Int11Handler
(
context
);
break
;
break
;
case
0x12
:
INT_Int12Handler
(
context
);
break
;
case
0x13
:
case
0x13
:
INT_Int13Handler
(
context
);
INT_Int13Handler
(
context
);
break
;
break
;
case
0x15
:
INT_Int15Handler
(
context
);
break
;
case
0x16
:
case
0x16
:
INT_Int16Handler
(
context
);
INT_Int16Handler
(
context
);
break
;
break
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment