EasyManua.ls Logo

IBM PC CONVERTIBLE

IBM PC CONVERTIBLE
275 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
REGISTERS
MODI
FI
ED
:
AH
AND
RETURNED
PARAMETER
REGISTERS
INVALID
FUNCTION
REQUESTS
(INVALID
REGISTER
AH
VALUES)
WILL
RETURN
AH
=
86H
AND
THE
CARRY
FLAG
WILL
BE
SET.
ASSUME
OS:
OATA,
ES:
NOTH
I
NG
001C
SYS_SERVICES
PROC
FAR
001C
53
PUSH
BX
OOlD
8B
DC
MOV
BX,SP
001F 36:
8B
5F
06
MOV
BX,SS: [BX+6]
GET
POINTER
TO
SYSTEM
STACK
GET
FLAGS
FROM
SYSTEM
STACK
&
SAVE
IN
STK
FOR
FLG
REG
LD
RETORE
FLAGS
0023
53
0024
90
0025
5B
0026
80
FC
40
0029
72
4E
002B
80
FC
80
002E
73
OA
0030
80
FC
44
0033 n 44
0035
80
EC
40
0038
EB
17
003A
003A
80
FC
91
0030 n
2C
003F
80
EC
7B
0042
80
FC
15
0045
72
05
0047
80
EC
09
004A
EB
05
004C
004C
80
FC
OC
004F
73
28
0051
0051
1 E
0052
55
0053
50
0054
BD
----
0057
8E
DO
0059
2A
CO
005B
86
EO
0050
01
EO
005F
8B
E8
0061
58
PUSH
BX
POPF
POP
CMP
JB
CMP
JAE
BX
AH,40H
INLFUN
AH
,80H
SYS_SV2
RESTORE
BX
BELOW
SYS
SVCS
1
(CSST
I/O)?
INVLD
PARM
OR
UNSUPTD
CSST
IS
SELECT
PARM
ABOVE
80H?
YES,
CK
SYS
SVCS
2
REQUEST
CHECK
FOR
SYSTEM
SERVICES
(AH
= 40-44H)
CMP
JA
SUB
JMP
AH,44H
INLFUN
AH
,40H
SHORT
SYS_SVC
IN
VALID
SYS
SVCS
UP
RANGE?
NO,
INVALID
FUNCTION
YES,
SET
TABLE
OFFSET
GO
LINK
TO
PROPER
ROUTINE
•..
CHECK
FOR
SYSTEM
SERVICES
(AH
= 80-91H)
SYS_SV2
:
CMP
JA
SUB
CMP
JB
SUB
JMP
AH,91H
CHLDESCR
AH,7BH
AH,15H
SYS_SV3
AH,9
SHORT
SYS_SVC
IN
VlD
SYS
SVCS
2
UP
RANGE?
YES,
CK
READ
DESCRIPTOR
...
MAKE
REL
TO
4TH
ENTRY
IN
TBl
FUNCTION> =
90H?
NO,
GO
SYS
SERV
3
REQUEST
•..
YES,
CORRECT
THE
OFFSET
GO
LINK
TO
THE
ROUTINE
..•
CHECK
FOR
FUNCTIONS
87H-8FH
THAT
ARE
INVALIO
SYS_SV3
:
CMP
AH,12
JAE
INLFUN
LINK
TO
PROPER
ROUTINE
SYS_SVC:
PUSH
PUSH
PUSH
MOV
MOV
SUB
XCHG
OS
BP
AX
BP,DATA
OS,
BP
Al,Al
AH,AL
AX,l
BP
,AX
IS
PARM
=
87H
-
8FH
CODE?
YES,
INVALID
PARAMETER
...
SAVE
DS,
BP
,AX
USE
IN
SY
SERV
SET
OS
<--
DATA
SEGMENT
-
BP
SET
AL
TO
0
&
FUNCT
CODE
IN
LOW
BYTE
&
AH=O
RET
CODE
CLR
DOUBLE
LINK
TABLE
OFFSET
GET
OFFSET
IN
BP
RESTORE
AX
0062 2E:
FF
96
0000 R
SHL
MOV
POP
CALL
POP
POP
JMP
AX
SYS_TABLE[BP]
BP
JUMP
TO
PROPER
ROUTINE
RESTORE
BP,
OS
0067
50
0068
1F
OS
0069
EB
11
SHORT
IMM_RET
SERVICE
EXECUTED
LEAVE
...
CHECK
FOR
READ
SYSTEM
DESCRIPTOR
TABLE
ADDRESS
006B
006B
006E
0070
0071
0072
0075
oon
80
FC
CO
75
09
OE
07
BB
0000 E
2A
E4
EB
03
CHLDESCR:
CMP
JNE
PUSH
POP
MOV
SUB
JMP
2-172 ROM BIOS
AH,OCOH
IS
REQ
PARM
SYS
DESC
READ?
INLFUN
NO,
INVALID
FN
PARM
REQUEST
CS
SAVE
CURRENT
CODE
SEGMENT
ES
;
SET
ES
TO
POINT
TO
TABLE
BX,OFFSET
SYS_DESCILTABLE
;
POINT
TO
TABLE
AH
,AH
CLEAR
RETURN
CODE
SHORT
IMM_RET
; EXIT

Related product manuals