EasyManua.ls Logo

IBM 5150

IBM 5150
309 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...
LOC
OBJ
LINE
SOURCE
5635
WHICH
IS
CHECKED
FOR
CORRECTNESS
WHEN
THE BLOCK
IS
READ
5636
5637
;
REG
AX
IS
MODIFIED
1----------------------------------------
--
--
------------
---
-----
1'9E2
1.16900
F~E5
f700
Fc)E7
1'9E8
F9EA
F9ED
F9EE
F9FI
F9F3
F91'5
F'9F6
F91'9
F91'9
F9FA
F9FD
F9FF
FAOO
FA02
FA04
FA07
fAOA
FAOO
FAaF
FAI0
FAIO
FAll
FA12
50
86£0
£82300
58
£81FOO
OBC9
7507
51
892000
F9
£82AOO
E2FA
59
80BO
£643
860100
£83300
E870FE
28C0
C3
51
50
SAEe
HIlt
B108
FA16
FAl6
0005
FA18
9C
FA19
£80BOO
FAit
90
FAID
£82400
FA20 FEC9
FAZ2
75F2
1'.24
58
FA25
59
F.6.26
C3
FA27
FA27
88A004
FA2A
n03
FAze
B85002
FA2F
F
All'
50
FA30
FA30
£462
FA32
2420
5636
MOV
AX,CRC_REG ; WRITE
THE
ONE'S
COMPLEMENT
OF
THE
5639
I
TWO
BYTE
CRC
TO
TAPE
5640
HOT AX ;
FOR
1'5
COMPLEMENT
5641
PUSH
AX
;
SAVE
IT
5642
XCHG
AH,AL
; WRITE
MS
BYTE
FIRST
5643
I WRITE
IT
5644
POP
AX
I
GET
IT
BACK
5645
CALL WRITE_BYTE
I
NOW
WR
ITE
LS
Il
YTE
5646
OR
CX,CX
;
IS
BYTE
COUNT
EXHAUSTED?
5647
JNZ
WR_BLDCK
;
JUMP
IF
NOT
DONE
YET
5646
PUSH
CX
,
SAVE
REG
CX
5649
HOV
ex,
32
; WRITE
OUT
TRAILER
BITS
5650
WZ6: I
TRAIL-LOOP
5651
STC
5652
CALL
WRITE_BIT
5653
LOOP
WZ6
I WRITE
UNTIL
TRAILER
WRInEN
5654
POP
CX
;
RESTORE
REG
CX
5655
MOV
At.
OBOH
I
TURN
TIMER2
OFF
5656
OUT
TIM_CTL,
AL
5657
HOV
AX,
1
5658
CALL
10131
; SET_TIMER
..
59
"60
CALL
SUB
MOTOR_OFF
AX,AX
I
TURN
MOTOR
OF
F
I
NO
ERRORS
REPORTED
ON
WRITE
OP
5661
..
"
RET
,HOP
;
FINISHED
5663
;
----.---------------------------
5664
; WRITE A BYTE
TO
CASSEnE.
5665
; BYTE
TO
WRITE
IS
IN
REG
AL.
5666
;
---------------
-
----
-
-----------
5667
WRITE_BYTE
MOC
NEAR
5666
PUSH
CX
J
SAVE
REGS
CX,AX
5669
PUSH
AX
5670
MOV
CH,Al
i AL::BYTE
TO
WRITE.
5671
I (MS
BIT
WRITTEN
FIRST)
5672
HOV
CL.6
;
FOR
6 DATA
BITS
IN
BYTE.
5673
I NOTE:
TWO
EDGES
PER
BIT
5674
10127:
; DISASSEHBLE
THE
DATA
BIT
5675
RCL
CH,I
;
ROTATE
MS
BIT
INTO
CARRY
5676
PUSHf
I
SAVE
FLAGS.
5677
NOTE:
DATA
BIT
IS
IN
CARRY
5678
I WRITE DATA
BIT
5679
POPF
I
RESTORE
CARRY
FOR
CRC
CALC
5680
CALL
CRC_GEN
;
COMPUTE
CRC
ON
DATA
BIT
5661
DEC
CL
I
LOOP
TILL
ALL
6
BITS
DONE
5682
JNZ
10127
I
JUMP
IF
NOT
DONE
YET
5683
POP
AX
;
RESTORE
REGS
AX,CX
5664
POP
CX
5685
RET
I
WE
ARE
FINISHED
5686
WRITE_BYTE
ENOp
5667
1-
--------------
-
----------------------------------------
5686
; PURPOSE:
5669
TO
WRITE A DATA
BIT
TO
CASSETTE
5690
CARRY
FLAG CONTAINS
DATA
BIT
5691
I.E.
IF
SET DATA
BIT
IS
A
ONE
5692
IF
CLEAR
DATA
BIT
IS
A
ZERO
5693
5694
NOTE:
TWO
EDGES
ARE
WRITTEN
PER
BIT
5695
ONE
BIT
HAS
500
USEC
BETWEEN
EDGES
5696
FOR
A
1000
USEC
PERIOD
(1
I1IllISEC)
5697
5698
ZERO
BIT
HAS
250
USEC
BETWEEN
EDGES
5699
FOR
A
500
USEe PERIOD
(.5
I1ILLISEC
J
5700
I
CARRY
FLAG
IS
DATA
BIT
5701
1-----
-----------------------
___________________________
_
5702
WRITE_BIT
PROC
NEAR
5703
J
ASSUME
IT'S
A
'I'
5704
HOV
AX.
1184
i SET
AX
TO
NOMINAL
ONE
SIZE
5705
JC
WZ8
I Jut1P
IF
ONE
BIT
5706
HOV
AX.
592
; NO. SET
TO
NOMINAL
ZERO
SIZE
5707
W28:
;
IolRITE-BIT-AX
5706
PUSh
AX
; WRITE
BIT
WITH PERIOD
EQ
TO
VALUE
AX
5709
WZ9:
5710
IN
AL,PORT_C
I
INPUT
TlMER_ 0
OUTPUT
5711
A..,
AL.020H
System BIOS 5-107

Table of Contents

Other manuals for IBM 5150

Related product manuals