EasyManua.ls Logo

IBM 5150 - Page 166

IBM 5150
309 pages
Print Icon
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...
LOC
OBJ
LINE
SOURCE
EF6F
53
3100
PUSH
BX
EF70
6307
3101
MOV
Bl,7
J
MAX
STATUS BYTES
310l
3103
;
-----
WAIT
FOR
REQUEST
FOR
MASTER
3104
EF72
3105
J38:
; INPUT_LOOP
EF72 33C9
3106
XOO
CX,CX
;
COUNTER
EF74
8AF403
3107
MOY
OX
, 03F4H
I STATUS
PORT
EF77
3108
J39:
I
WAIT
FOR
HASTER
~
EF77
EC
3109
IN
A.l,DX
i
GET
STATUS
EF78
A880
3110
TEST
AL,080H
I MASTER READY
EF7A 750C
3111
JNZ
J40A
i
TEST_OIR
Ef7e
E2F9
3112
LOOP
J39
i
I-IAIT_HASTER
EF7E
800E410080
3113
00
OISKETn:_STATUS.
TIME_OUT
EF83
3114
J4a:
J
RESULTS_ERROR
EF83 F9
3115
STC
I
SET
ERROR
RETURN
EF84
58
3116
pop
BX
EF85
SA
3117
pop
OX
EF86
59
3118
pop
CX
EF87 C3
3119
OET
3120
3121
1-----
TEST
THE
DIRECTION
BIT
3122
"88
3123
J40A:
EF88
EC
3124
IN
AL,DX
;
GET
STATUS
REG
AGAIN
Ef89
A840
3125
TEST
AL.040H
I TEST DIRECTION
BIT
fFBB
7507
3126
JNZ
J42
;
OK
TO
READ
STATUS
EFBD
3127
J41:
; NEC_FAIL
£FeD
800£410020
3128
OR
DISKETTE_STATUS .BAD_NEC
EF92
EBEF
3129
JMP
J40
;
RESULTS_ERROR
3130
3131
;-----
READ
IN
THE
STATUS
3132:
"94
3133
J42
:
;
INPUT_STAT
£F94
42:
3134
INC
DX
)
POINT
AT
DATA
PORT
EF95
EC
3135
IN
AL.DX
;
GET
THE
DATA
EF96
8805
3136
MOV
(DIltAL
i
STORE
THE
BYTE
EF98
47
3137
INC
01
I
INCREMENT
THE
POINTER
EF99
890AOO
3138
MeV
eX,lo I
lOOP
TO
KILL
TIME
FOR
NEC
~
EF9C EZFE
3139
J41;
lOOP
J43
EF9E
4A
3140
DEC
OX
I POINT
AT
STAruS
PORT
EF9F
EC
3141
IN
AL,DX
;
GET
STATUS
EfAO
A810
3142
TEST
AL,OlOH I TEST
FOR
NEe
STILL
BUSY
EFAl
7406
3143
JZ
J44
I RESULTS
DONE
EFA4 FEee
3144
DEC
BL
I
DECREMENT
THE
STATUS
COUNTER
EFA6 75CA
3145
JH2
J3.
I
GO
BACK
FOR
HOR
E
EFA8
EBD
3146
JMP
J41 ; CHIP
HAS
FAILED
3147
314S
j-----
RESULT
OPERATION
IS
DONE
3149
EFAA
3150
J44:
EFAA
58
3151
POP
BX
EFAB
SA
3152
POP
ox
HAC
59
3153
POP
CX
;
RECOYER
REGISTERS
EFAD
C3
3154
OET
1
GOOD
RETURN
CODE
FROM
TEST
INST
3155
1----------------------------------------------------------------
3156
; NUtCTRAHS
3157
THIS
ROUTINE CALCULATES
THE
HUI1BER
OF
SECTORS
THAT
3156
WERE
ACTUALLY TRANSFERRED TO/FRON
THE
DISKETTE
31.59
INPUT
3160
ICH)
= CYLINDER
OF
OPERATION
3161
I
CU
= START
SECTOR
OF
OPERATION
3162
i OUTPUT
3161
(AU
=
Nl..lHBER
ACTUALLY TRANSFERRED
3164
NO
OTHER
REGISTERS
MODIFIED
3165
;
----
--
--------
-----------------------------------
---
-
-----_.----
EFAE
316b
HUH_TRANS
PROC
NEAR
EFAE
A04500
1167
MeV
AL,NEC_STATUS+3 I
GET
CYLINDER
ENDED
UP
ON
EFBI
3AC5
3168
CMP
AL,CH
I
SANE
AS
WE
STARTED
/"""\
EFB3
A04700
EFB6
740A
3169
3170
MOV
JZ
AL,NEC.STATUS+5
J4.
I
GET
ENDING
SECTOR
J
IF
ON
SANE
CYL,
THEN
NO
ADJUST
EFBS
8B0800
3171
MOV
BX,8
EFBB E6AEFE
3172
CALL
GET_PAR"
;
GET
EOT
VALUE
EFBE 8AC4
3173
MeV
AL.AH
,
INTO
AL
EFCO
FECO
3174
INC
AL
;
USE
EOT+l
FOR
CALCULATION
EFC2
3175
J45:
EFC2 ZACI
3176
S\JB
AL,CL
I S18TRACT
5T
ART
FROt1
END
System BIOS
5-73

Table of Contents

Other manuals for IBM 5150

Related product manuals