EasyManua.ls Logo

IBM 5150 - Page 261

IBM 5150
393 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...
LaC
OBJ
LINE
SOURCE
F840
4967
EQUIPMENT
PROC
FA.
F840 F8
4968
ST!
INTERRUPTS
BACK
ON
F84E IE
4969
PUSH
DS
j SAVE
SEGMENT
REGISTER
F84F
884000
4970
MOV
AX.
DATA ;
ESTABLISH
ADDRESSING
F852
SEDS
4971
MOV
OS,AX
F654 A11000
4972
NOV
AX.
EQUIP_FLAG i
GET
THE
CURRENT
SETTINGS
F857
IF
4973
pop
OS
;
RECOVER
SEGMENT
f8S8
CF
4974
IRET
I
RETURN
TO
CALLER
4975
EQUIPMENT
ENDP
4976
;---
INT
15
---------------------------------
4977
;
CAssenE
1/0
4976
(AH)
= 0
TURN
CASSETTE
HOTOR
ON
4979
(AH)
:; 1
TURN
CASSETTE
HOTOR
OFf
4980
[AH)
= 2
READ
1
OR
MORE
256
BYTE
BLOCKS
FROM
CASSETTE
4981
(ES,BX)
:;:
POINTER
TO
DATA
BUFFER
4982
{ex) =
COUNT
OF
BYTES
TO
READ
4983
ON
EXIT:
4984
f!S.BX)
= POINTER
TO
LAST BYTE
READ
+ 1
4985
(OX)
=
COUHT
OF
BYTES ACTUALLY
READ
4986
(Cv)
= a
IF
NO
ERROR
OCCURRED
4987
= 1
IF
ER~OR
OCCURRED
4988
(AH J
:;;
ERROR
RETURN
IF
(eYJ:
1
4989
;:
01
IF
CRC
ERROR
WAS
DETECTED
4990
=-
02
IF
DATA
~ANSITIONS
ARE
LOST
4991 =
04
IF
tlO
DATA
WAS
FOUt~D
49n
{AH 1 = 3 WRITE 1
OR
MORE
256
BYTE
BLOCKS
TO
CASSETTE
4993
(ES.BX)
.::
POINTE~
TO
DATA
BUFfn
4994
(ex)
=
COUNT
OF
BYTES
TO
WRITE
4995
ON
EXIT:
4996
(EX,8Xl
= POINTER
TO
LAST BYTE WRITTEN + 1
4997
(CXI
= 0
4996
(AM)
=
ANY
OTHER
THAN
ABOVE
VALUES
CAUSES
(CYJ=
1
4999
AND
(AH)=
60
TO
BE
RETURNED
UtNALID
COHMAND).
5000
;--------------------------------------------
5001
ASSUME
DS:DATA, ES:NOTHING.SS:NOTHING.C5:CODE
F859
5002
CASSETTE_IO
PRoe
FAR
F859 F8
5003
STI
INTERRUPTS
BACK
ON
F85.&.
1E
5004
PUSH
as
I ESTABLISH
,.,DDRESSIHG
TO
DATA
Fase
50
5005
PUSH
AX
Fast
884000
5006
MOV
AX. DATA
F85F
8£08
5007
NOV
os.
AX
F861
802671007F
5006
AND
BIOS_BR EAK.
7FH i
HAKE
SURE
BREAK
flAG
IS
OFF
F866 56
5009
POP
AX
F867
E80400
5010
CALL
WI
J CASSETTE_IO_CONT
F86.&.
1F
5011
POP
os
F868
CA02:00
5012
RET INTERRUPT
RETVRN
5013
CASSETTE_IO
ENDP
F86E
5014
NI
PROC
NEAR
50
15
1--------
----
--------------------------------
5016
;
PURPOSE:
5017
I
TO
CALL APPROPRIATE ROUTINE DEPENDING
ON
REG
AH
5018
5019
AH
ROUTINE
5020
5021
MOTOR
ON
502:2 I I
MOTOR
OFF
5023
; 2
READ
CASSETTE
BLOCK
5024
WRITE CASSETTE
BLOCK
5025
5026
F86£
OA£4
5027
OR
AH,AH
f
TURN
ON
MOTOR?
F870
7413
502:8
JZ
MOTOR_ON
iYES.
00
IT
F872:
FEte
502:9
DEC
AH
;TURN
OFF
MOTOR?
F874
7418
5030
JZ
MOTOR_OFF
IYES,
DO
IT
F876
FEee
5031
DEC
AH
,READ
CASSETTE
BLOCK?
F678
741A
5032
JZ
READ_BLOCK
,YES,
DO
IT
F67A
FEte
5033
DEC
AH
;WRITE CASSETTE BLOCK?
Fe7t
7503
5034
JNZ
W2
; NOT_DEFINED
F87E E92101
5035
J"P
WRITE_BLOCK
;YES,
DO
IT
5036
F881
5037
W2:
jCOMHAND
NOT
DEFINED
F881
8480
5038
MOV
AH,080H
;ERROR. UNDEFINED OPERATION
FSS3 F9
5039
STC
;ERROR
FLAG
f884
C3
5040
RET
5041
WI
'NOP
5042
A-68

Table of Contents

Other manuals for IBM 5150

Related product manuals