Otrona_Attache_BIOS_Source_Listing_1983 Otrona Attache BIOS Source Listing 1983
Otrona_Attache_BIOS_Source_Listing_1983 Otrona_Attache_BIOS_Source_Listing_1983
User Manual: Otrona_Attache_BIOS_Source_Listing_1983
Open the PDF directly: View PDF
.
Page Count: 140
| Download | |
| Open PDF In Browser | View PDF |
OTRORA
Attache
Portable Coaputer
BIOS Source Listing
Version 2.2.3 published by Otrona Corporation, January, 1983
Written by S. Gray, R. Lingemann, R.Winter
CoRYright
Copyright (c) 1982 by Otrona Corporation. All rights reserved. No part
of this publication may be reproduced, transmitted, transcribed,' stored
in a retrieval system, or translated into any language or ·computer
language, in any form or by any means, electronic, mechanical, magnetic,
optical, chemical, manual, or otherwise, without the prior written
permission of otrona Corporation, 4755 Walnut st., Boulder, Colorado
80301. .
.
Disclaimer
Otrona Corporation makes no representations or warranties with respect to
the contents hereof and especially disclaims any implied warranties of
merchantability or fitness for any particular purpose. Further, Otrona
Corporation reserves the right to revise this publication and to make
changes from time to time in the content wi thout obligation of Otrona
Corporation to notify any person of such revisions or changes.
Trademarks
ATTACHE, Charton, and Valet are trademarks of Otrona Corporation, 4755
Walnut st., Boulder, Colorado. References are made throughout this
document to the WordStar word processing system and to the Control
Program for Microcomputers, commonly known as CP/M. WordStar is a
registered trademark of MicroPro International Corporation.of San Rafael,
California. CP/M is a trademark of Digital Research Inc. of Pacific
Grove, California.
Iptmilnqt;iap
This is the Attache Basic Input/Output (BIOS) source listing, version
2.2.3. -2.2- is the current version of CP/M. n.3 n is Attache's current
revision.
BIOS is the hardware dependent section of CP/M, (Attache's operating
system). BIOS interfaces wi th the Basic Disk Operating System (BOOS)
portion of CP/M to execute instructions at a physical level.
BIOS resides on the first three tracks of a system diskette, and is
loaded into memory at power on if the system diskette is properly
inserted in Drive A. An Erasable Programmable Read-Only Memory chip
(EPROM) contains the initial software which loads the BIOS Bootstrap
Loader from the disk.
The BIOS Bootstrap then loads the CP/M operating system into the 64K
bytes (256 pages of 256 bytes each) of Attache memory as summar ized in
the following illustratio~
FFFF [hex}
BASIC lNR11'/arrPUl'
sysr~
> 38
(BIOS)
piges
DADO {hex)
BASIC DISK OPERATnG
sysr~
(BIXlS)
CC06 lhexf
a:Nsx.E ~ PRtXESOOR
(a::P)
.
C400 {hex}
'mANSIENl' PRXilWl AREA
(TPA)
>-
195 piges
100 {hex}
. CP/M BUFFERS, Rf.GISTERS, INSl'RUcrlONS
1 IBge
J
CP/K MACRO ASSBM 2.0
ATTACHE 8IOS & BOOT; COPYRIGHT 1981, OTRONA CORP.
.001
TITLE 'ATTACHS BIOS" BOOT: COPYRIGHT 1981, OTRONA CORP.'
BIOS FOR VALET AND BASIC GRAPHICS (REV 1.2)
LAST 4 SECTORS ON SIDE 1 DELETED
I-------------------------------------~----------------I
I
f
I
OTRONA 500 SBRIES CP/M 2.2 BIOS & BOOT
I
I---~--------------------------------------------------I
S.GRAY
R.. LINGBIIANN
R.WINTER
11-08-1982
,
·"ACLIB
zao
·,: SELECT DISK PARAMETERS
0001 =
0000 ::
0006 ::
·
,
SlOBS
sau
TPI
sau
STPRAT SaU
.;,
0000
0038
9000
C400
CC06
DAOO
0002
0004
0003
0006
0009
0003
0081
0010
::
::
::
•
::
::
::
:&
=
::
==
::
::
::
FBOO ::
1
o
6
: SIDES
O=ONB <> O=TWO
: TPI
0=48
<> 0=96
: STEP RATE IN KS (MUST BE BETWEEN 2
: AND 32 IN EVEN INCREMENTS.)
CONPIGURATION
STACK
EaU
"SIZE
EaU
BIAS
EaU
CCP
EaU
BOOS
sau
BIOS
EaU
NDISK
sau
CDISK
sau
MMTR
EaU
MDISKOP EaU
,KDSPLY sau .
10BYTE EaU
10INIT EaU
KBUFLN EaU
FI1..BUF EaU
PAGE
ENDMRK+1:TOP OF STACK
56 ;CP/M VERSION KEMORY SIZE IN K-BYTES
OISIZE-20)*1024
3400H+BIAS ;BASE OF CCP
CCP+806H ;8ASE OF SDOS
CCP+1600H ;BASE OF BIOS
2
: NUMBER OF DISKS IN SYSTEM
0004H
; CURRENT DISK NUMBER ADDR.
0003H
: EPROM HONITOR ENTRY
0006H
: EPROM DISKO~ ENTRY
0009H
; EPROM DISPLAY ,DRIVER
0003H
: 110 BYTE LOCATION
81 H
: IN ITIAL lOB YTE VALUE
16
: KEYBOARD BUFFER SIZE
OFEOOH : BUFFER SPACE FOR FORMAT
: WILL BE CHANGED BY DISK ROUTINE
CP/M MACRO ASS EM 2.0
0057
0002
0002
0007
0008
0000
OOOA
00C8
OOOB
OOOF
0010
0003
0011
0090
0013
0018
001B
OOOC
OOOA
0020
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
.,
1/0
TIMCWO
TIKTCO
TIMTCI
.,
CONSTANTS
EgU
EgU
EgU
EgU
EgU
EgU
EgU
EgU
EgU
EgU
EgU
EgU
EQU
EgU
EgU
EgU
EgU
EgU
EQU
EgU
=
=
=
RWCODE EgU
MTRTIM EgU
MTRDLY EgU
OOOD
=
=
=
=
SRT
0000
0001
0002
004C
0002
0800
0200
OOOA
OOBE
00B6
0003
;TIMER CONTROL BYTE
;9600 BAUD
;9600 BAUD
7H
;BELL
;BACKSPACE
;CARRIAGE RETURN
;CTRL-J
;CTRL-JH
;CTRL-K
,·CTRL-O,
;CTRL-P
;CTRL-P5
;CTRL-Q
;CTRL-QP
;CTRL-S
;CTRL-X
;BSCAPE
;FORM FEED
;LINE FEED
;SPACB
8H
ODH
OAH
OC8H
OBH
.OFH
10H
OD3H
11H
90H
13H
18H
1BH
OCH
OAH
20H
FLOPPY CONSTANTS
0043
012C
0020
0010
OOOF
0000
57H
02H
02H
ASCII CODES
BEL
B5
CR
CTRLJ
CTRLJH
CTRLK
CTR,LO,
CTRLP
CTRLP5
CTRLQ.
CTRLQP
CTRLS
CTRLX
ESC
FF
LF
SPC
.
.,,
ATTACHE BIOS & BOOT; COPYRIGHT 1981, OTRONA CORP.
#002
·
40H+3
300
45
;R/W COK"AND-2 OR 3
;5S MOTOR TIMEOUT
;750"5. MOTOR START DELAY
EgU
16-(STPRAT/2); HEAD STEP RATE
EgU
EgU
EgU
16
OFH
0
,
=
=
=
DHLT
DHUT
ND
,
, CP/M
,
WRALL
WRDIR
WRUAL
=
=
=
=
=
=
=
=
, DISK
,
ALLTRK
BLS
BLKSIZ
HSTSIZ
HSTSPT
ALLDSK
DSKSIZ
SYSTRK
·
·
·
·
·
;DI5K HEAD LOAD TIKE
;DISK HEAD UNL.OAD TIKE
;D"A MODE
DISK RETURN CODES
EgU
EQU
EQU
0
1
2
;WRITE 10 ALLOCATED
;WRITE TO DIRECTORY
;WRITE TO UNALLOCATED
DRIVE PARAMETERS
BgU
EQU
EgU
EgU
EQU
EgU
EeU
EgU
36+(40*TPJ)+SIDES*(40+(40*TPI»
(TPI OR SIDES)+ 1
l024*BLS;OIRECTORY BLOCK SIZE
512
;H051 DISK SECTOR SIZE
10
;HOS1SEC10RS PER TRACK (CYL)
ALLTRK*S/BLS
ALLDSK -(21-(BLS*7)+ 1)
;SYSTEM RESERVED TRACKS
3
CPIlf MACRO ASSBM 2.0
1003
ATTACHE BIOS
& BOOT: COPYRIGHT 1981, OTRONA CORP.
0002
=
CMTSBC
EQU
2
0004
11
HSTBLK
EaU
EQU
EQU
EQU
8QU
HSTSIZ/128
;CPIff SBCT. PER HOST SECT.
HSTBLK - HSTSPT :CP/H SECTORS PBR TRACK
HSTBLK-l
;SECTOR MASK
0028
OOOl
C200
0027
0080
0002
OOCO
=
=
=
=
=
=
=
·
,
CPHSPT
SECMSK
BADDR
IIAXTRK
CCP-HSTSIZ
39+(40-TPl)
64-«SIDBS OR TPI)+l)
DIRBMTI (BLKSIZI 3 2)
DIRBMT
Eau
DIRALC
SOU
IF
ALOCO
DIRALC=l
SOU
80H
·,
BNDIP
IF
ALOCO
DIRALC=2
sau
oeOH
INDIF
IF
ALOCO
DIRALC=4
EQU
OFOR
SNDIP
0100
=
·,
TPA
EOU
PAGI
;HSTSIZ/PHYSICAL
100H
SECTOR SIZE
CP/M MACRO ASSE" 2.0
#004
ATTACHE BIOS & BOOT; COPYRIGHT 1981, OTRONA CORP ..
CP/I "AeRO ASSBM 2.0
OOPD •
00P8 •
OOFP •
OFLPY
ODSPY
DItAP
.
.005
ATTACH!
Bau
sau
OPOH
OPBR
OFFH
8QU
,
PAGS
BIOS" 800T: COPYRIGHT
;PLOPPY DATA
;OISPLA Y DATA
;RAK VIRTUAL MAP DATA
1981,
OTRONA CORPe
CP/M MACRO ASSBH 2.0
*006
ATTACHE 8IOS
&
800T: COPYRIGHT 1981, OTRONA CORP.
;1----------------------------------------------1
;1
BOOT - LOADED INTO F800H 8Y PROM
:1----------------------------------------------1
:800T CODE WILL BE SAVED IN SBCTOR 1 OF TRACK 0
:AND IS SET UP HBRE TO ASSEMBLE ONE SBCTOR LBNGTH
:AHBAD OF THE CCP. THB ADDRESS OFFSET FACTOR BS
:IS ADDED WHBRB NBBDED SO THE BOOT CODB WILL RUN
:WHBN LOADBD AT IT'S STARTING ADDRESS OF OFBOOH
;THE BIOS CBOOT ROUTINE IS ALSO RUN HBRE TO SAVE
:SPACE AS THE ONLY TIME THIS ROUTINE IS USBD IS
:DIRECTLY FOLLLOWING A SYSTEM RESET.
FEOO =
C200.=
C200
3COO =
MONSTK EQU
BTSTRT EQU
Of--1
;>--1
;>--1-;>--1
#
OF (ORA A/RAR) DEPENDANT
ON VALUE OF HSTBLK
;H05T SECTOR TO SEBK
CP/M ftACRO ASSBM 2.0
·
1021
ATTACHS BIOS
&.
BOOT; COPYRIGHT 1981, OTRONA CORP.
,
DC49
DC4C
DC4D
DC4F
ACTIVB HOST SECTOR?
2182PA
1B
3601
B1
LXI
KOV
IIVI
ORA
JRZ
DB
DCSO+2821
DCS2 3A19'A
DCSS 211DPA
DCS8 BB
·,,·
H,HSTACT
A,K
11,1
A
PILHST
28H,FILHST-S-l
;H05T ACTIVE FLAG
:ALWAYS BBCOMES 1
:WAS IT ALREADY?
;FILL HOST IF NOT
HOST BUPFBR ACTIVE, SAKE AS SEEK BUFFBR1
LDA
LXI
CliP
JRHZ
DB
DC59+2011
SEKDSK
H,HSTDSK
;SAME DISK?
;SEKDSK = HSTDSK?
II
NOIIATCH
20H,NOMATCH-S-l
SAKB DISK, SAME TRACK?
DCSB 2111'A
DCSB COCPOC
LXI
CALL
JRMZ
DB
DC61+2009
·
,
LDA
LXI
CliP
JRZ
DB
DC6A+2824
~
DC6C 3A83PA
DC6P B1
DC10 C4DBDC
DC13
DC16
DC19
DC1C
DC?F
DC82
DC85
De88
DC8c}
De8C
DeaD
3A19PA
321DPA
2A1APA
221SFA
3A81FA
3280FA
3A86PA
B7
C4DPDC
AF
3283FA
:1<'
PROPER
NOIIATCH:LDA
ORA
CNZ
··,,
= HSTTRK?
SAKB DISK, SAKB TRACK, SAME BUFFER?
DC63 3AilFA
DC66 2180FA
DC69 BB
·
H,HSTTRK
SBKCIIP :SBKTRK
MOIIATCH
20H,NOKATCH-S-l
SIKHST
H,HSTSEC
K
KATCH
28H,KATCH-S-l
DI~K,
:SEKHST = HSTSIC?
;SKIP IF KATCH
BUT NOT CORRBCT SECTOR
HSTWRT
A
WRITBH
;HOS1 WRITTEN?
:CLEAR HOST BUFF
"AY HAVB TO FILL THE HOST BUFFER
PILHST: LDA
SEKDSK
STA
HSTDSK
SEKTRK
LHLD
HSTTRK
SHLD
SIKHST
LDA
HSTSBC
STA
;NEBD TO READ?
RSFLAG
LDA
ORA
A
;YES, IF 1
CIZ
READH!
;0 TO ACCUM
XRA
A
HSTWRT
STA
;NO PENDING WRITE
,
COPY DATA TO OR PROft BUFFER
.
CP/K KACRO ASSE" 2.0
DC90
DC93
DC95
OC96
DC98
DC99
DC9A
DC9B
DC9C
DC9D
DC9B
3A7CFA
B603
6F
2600
29
29
29
29
29
29
29
DC9F
DCA2
DCA3
DCA4
11BIFB
19
BB
2A89FA
"ATCH:
DCA? 3A87FA
DCAA B1
DCAB+2006
'022
ATTACHE BIOS & BOOT: COPYRIGHT 1981, OTRONA CORP.
LOA
ANI
MOV
MVI
DAD
DAD
DAD
DAD
DAD
DAD
DAD
HL HAS
LXI
DAD
XCHG
LHLD
KVI·
LDA
ORA
JRNZ
DB
SEKSBC
SECMSK
L,A
H,O
;MASK BUFFER NUMBER
;READY TO SHIFT
:DOUBLB COUNT
H
H
H
H
If
H
H
RELATIVE HOST BUFFER ADDRESS
D,HSTBUF
;HL = HOST ADDRESS
D
;NOW IN DE
;GET/PUT CP/M DATA
DMAADR
C,128
;J,.ENGTH OF MOVE
;WHICH WAY?
READOP
A
RWlfOVE
;SKIP IF READ
20H,RWKOVE-$-1
WRITE OPERATION, HARK AND SWITCH DIRECTION
DCAD 3B01
DCAF 3283FA
DCB2 EB
MVI
STA
XCHG
A,l
HSTWRT
;HSTWRT = 1
;SOURCE/DEST SWAP
DE IS SOURCE, HL IS DEST, KOVE 128 BYTES
DCB3 IB
DCB4 018000
RWKOVE: XCHG
LXI
LDIR
DCB1+BDBO
.,
DB
; LDIR KOVES (DE>(-(HL)
; MOVE 128 BYTES
; DO MOVE
OBDH,OBOH
B,128
DATA HAS BEEN KOVED TO/FROM HOST BUFFER
DCB9
DCBC
DCBE
DCCl
3A88FA
FEOI
3A85FA
CO
LOA
CPI
LDA
RNZ
WRTYPE
WRDIR
ERFLAG
;WRITE TYPE
;TO DIRECTORY?
;IN CASE OF ERRORS
;NO FURTHER PROCESSING
CLEAR HOST BUFFER FOR DIRECTORY WRITE
DCC2 B1
DCC3 CO
DCC~ AI'
DCC5 3283FA
DCCS CnDBnC
nCCB 3A85FA
DCCE C9
.,
ORA
RNZ
XRA
STA
CALL
LDA
RET
A
A
HSTWRT
WRITEH
ERFLAG
;ERRORS?
;SKIP IF SO
;0 TO ACCUH
;BUFFER WRITTEN
;1----------------------------------------------1
;1
UTILITY SUBROUTINE FOR 16-BIT COMPARE
.,;1----------------------------------------------1
CP/M KACRO ASSBK 2.0
5BKCItP:
OCCP'
oeDO
OCD3
OCD4
OCD5
IB
OCD6
OCD7
OCD8
DCD9
OCDA
13
23
lA
B8
C9
217AFA
lA
BE
CO
.
,
.,
'023
ATTACHS BIOS & BOOT; COPYRIGHT 1981, OTRONA CORP.
:HL = .UHATRK OR .H5TTRK, COMPARE WITH SEKTRK
XCHG
LXI
H,SEKTRK
LOAX
0
:LOW BYTE COMPARE
CKP
It
:5A"E1
RHZ
:RETURN IF NOT
LOW BYTBS EQUAL, TEST ,HIGH IS
INX
0
INX
H
LDAX
D
CIP
It
;SBTS FLAGS
RIT
PAGB
CP IK ItACRO ASSBK 2.0
1024
ATTACHE BIOS
&
BOOT; COPYRIGHT 1981, OTRONA CORP.
.,
:'----------------------------------------------1
WRITBHST PERFORIIS THE PHYSICAL WRITE TO
;t
;1
THB HOST DISK, RBADHST READS THE PHYSICAL
:1 DISK.
.;1----------------------------------------------1
,
Dcoa 3E02
DCOD+lS02
DCOF 3E03
DCEI 32'70FA
DCB4 3EOA
DCB6 3282DA
DCB9 320BF8
DCBC CD62DO
DCBF 3A'70FA
DCF2 CD'7CDO
DCF5 3A'7CFB
DCF8 8'7
DCF9+2015
DCF8 3A'70FA
DCFE FB02
DDOO+2009
DD02 OB03
D004 06CD
:HSTDSK = HOST DISK I, HSTTRK = HOST TRACK I,
;HSTSEC = HOST SICT II. WRITE 'HSTSIZ' BYTES
iFROK HSTBUF ANO RETURN ERROR FLAG IN ERFLAG.
:RETURN ERFLAG NON-ZERO IF ERROR
WRITBH: ItVI
A,,2
JR
RDBI
DB
lSH,RDH1-S-1
READHS: ·IIVI. . A,3
RDH 1: STA
DSKCIID
RDH2:
IlVI
A,,10
; SET FOR 10 RBTRYS
STA
DSKFLG; INHIBIT VALET
HSL1: STA
RBCNT; STORE RETRY
CALL
GSTVFP; GBT REGS. FOR DISK
LDA
OSKCKD; GET COIlMAND FOR DISK
CALL
DISK
; DO DISK OPERATION
HSL2:
LOA
DSKCYC; GBT DSKCYC
ORA
A
; IF DSKCYC <> 0
JRNZ
HSL3
; THEN ... L3
DB
20H"HSL3-S-1
LDA
DSKCltD: ELSE TEST LAST OP
CPI
2
;IF READ JUST FINISHED
JRNZ
HSII
; THEN CONTI NUB
DB
20H,HSll-$-1
HSL5:
HSL6:
DD06+10FB
DD08 00
DD09+20F9
DDOS
DDOC
0001'
0010
AF
3282DA
C9
86BO
08
HSI1:
HSL3:
DD12+2SEI
0014 3A08FB
0011 3D
D018+20CF
DDIA 3109
DOIC CO'7CDO
DOlI' 210'71'9
D022 C046DD
D025 CD50DD
IIVI
KVI
DJNZ
DB
OCR
JRNZ
HSR1:
HSJ2:
XRA
STA
RET
ANI
JRZ
DB
LOA
DCR
JRNZ
DB
ItVI
CALL
LXI
CALL
CALL
C,3
; ELSE FORKAT OR WRITE JUST
B,OCDH ; DONE SO DELAY TO GIVB TIIIB
HSL6
; FOR TUNNEL ERASE FIELD TO
10H,HSL6-S-1
C
; DECAY.
HSL5
20H,HSL5-$-1
A
: OPERATION DONE
DSKFLG ; BNABLE VALET
OEOH
: IF NOT ERRONEOUS COMPLETION
HSL2
; THEN TEST DSKCYC AGAIN
28H,HSL2-S-1
RECNT
; ELSE OCR. RETRY RETRY
A
; COUNTER. IF <> 0
HSLI
THEN RETRY
20H,HSLl-S-l
A,9
: ELSE REPORT ERROR
DISK
H,OPTKSG: PUT UP OPTION KESSG.
DOERR
ERRKEY : GET KEY (CLEAR BUFFER 1ST)
CP/K KACRO ASSBK 2.0
DD28 1'151
D02A+2810
D02C PE49
D02B+28DB
DD30 FE12
DD32 C2B4DC
0035 3108
0037 CD1CDD
D03A+1813
·
,
HSR2:
.025
ATTACH! 8IOS & 80oT: COPYRIGHT 1981, OTRONA CORP.
CPI
JRZ
DB
CPI
JRZ
D8
CPI
JNZ
MVI
CALL
JR
DB
; IF KBY :r W
HSR2
, THBN WARM BOOT
28H,HSR2-S-1
'I'
; ELSE IF KEY = I
HSII
, THBN IGNORE LAST OPe
28H,HSII-8-1
12H
: ELSB IF <) KBY = CTRL/R
, THBN RBTRY DISK OPe
RDH2
A,8
.; ELSB RSPORT FOC RESULT BYTBS
OISK
HSRI
: LOOP TO OPTIONS AGAIN
18H,HSRl-S-l
LDA
ORA
CNZ
JKP
SBTP'LG
A
CLNVAL
WBOOT
LDA
ORA
JZ
JIIP
SBTPLG
A
: IF NOT IN VALET
IIBSSG , THIN KISSG
VALJlSG : BLSI VALlISG
D03C
DD3F
OD40
0043
3AFCF9
B7
C41ABD
C3CADA
0046
0049
OD4A
004D
lAFCF9
87
CA4DBI
C3141P'
OOIRR:
D050
0051
0054
OD55
0058
DDS8
D05C
0051'
0061
AI'
212BI'A
1'3
32FBF9
2238PA
FB
C06BBO
160F
C9
BRRKEY: XRA
LXI
01
STA
SHLD
·
,
·
,
.
.
'w'
.
.,: IFTHBNIN VALET
RBSET VALET VARIABLES
: WARM BOOT
.
A
H,KIYBUF
KIYCNT
KEYPNT
: CLEAR KEY80ARD BUFFER
81
CALL
ANI
RET
CoNIN
ODPH
: GIT KEY
; MAKB UPPBR CASE
·,;SBT.UP DATA FOR
& RBAOHS
,·
H,HSTBUF
GSTUF': LXI
WRI~IH
0062 21811'8
0065 3A1BFA
0068 57
·,
IF
OD69 FB28
0068+3803
0060 06A8
DD6' 57
0070
0073
0074
0075
0078
D07A
DD?8
3A80'A
3C
51'
3A10FA
0601
4'
C9
LDA
MOV
HSTTRK
D,A
SIDES
CPI
JRC
DB
SUI
MOV
KAXTRK+l
GSSIOO
38H,GSSIOO-S-l
MAXTRK+81H
O,A
BNDIF
,
GSSIDO: LOA
INR
MOV
LOA
MVI
MOV
RET
·
PAGB
HSTSEC
A
K,A
HSTOSK
8,1
C,A
CPIK KACRO ASSBK 2.0
11026
ATTACHE BIOS
&
BOOT; COPYRIGHT 1981, OTRONA CORP.
.,
;GBNBRAL FLOPPY HA'NDLER
;STARTS KOTOR, HOKES IF NBEDED,
;SBBKS IF NBEDED, AND INITIATES
;RBAD, WRITE, OR FORKAT
:INTRY PARAKETERS
.,
A = OPERATION CODE
o = RETURN CURRBNT STATUS
1 = FORKAT TRACK
2 = SBCTOR WRITE
3 = SECTOR RBAD
8 = DISPLAY FDC RESULT BYTE BRROR "SSG.
9 = DISPLAY BNGLISH DISK BRROR HSSG •
.
B = , OF SBCTORS TO TRANSFBR (HUST = 1)
C = DRIVB #
D = TRACK TO BBGIN TRANSFER (BIT 1 = SIDE)
B • SECTOR TO BBGIN TRANSFER
HL = ADDRBSS TO TRANSFBR TOIFROK
:
.,
..,:DSKCYC CODIS
;
0
= SUCCBSSFUL
=
COKPLETION
1
DFK DATA FORMAT
2 = DWR DATA WRITE
3 • DRD DATA RBAD
:
;
4 • RCI RBCAL 1
5
6
= SKI
= RC2
= SK2
SBBK TO 4
RBCAL 2
7
SBBK TO TRACK
8 = WFR WAITING FOR RBADY
;
·,;BRROR IS INDICATBD BY SETTING UPPBR BIT(S) OF
;THBDSKCYC SBQUBNCE CODB.
BIT 1
BITS 7,6
BITS 1,6,5
·,;1----------------1
:f
= U765 ERRONBOUS COMPLETION
= OPBRATION TIftE OUT
= U765 NOT RBADY
1
RBPORT DSKYC
;1----------------1
DD7C B7
DD7D+2006
DD7P 3A1CFB
DD82+CB7F
DD84 C9
DISK:
ORA
JRNZ
DB
LDA
BIT
DB
RET
;IF Ace. ()O
DSJ 1
; THBN GO NEXT TEST
20H,DSJl-$-1
DSKCYC : EL.SE TEST DSKCYC
A
7,A
OCBH,7*8+A+40H
·,;1--------------------------------------1
CP/K !ACRO ASSBH 2.0
• 021
ATTACHE BIOS
&
BOOT: COPYRIGHT 1981, OTRONA CORP •
:1 RIPORT ERROR WITH FDC RBSULT BYTES
I
.:1--------------------------------------1
DD8S PB08
0087·2020
0089 CD2BBO
DD8C 2135'9
DD8F CD40Bl
0092 3A6PPA
0095 41
0096 04
0091 217CPB
OD9A 0120
D09C CD1BBO
009' CS
DDAO 46
DDAI CD6011
DOA4 23
DDAS Cl
DOA6+10'2
DDA8 C9
"
DSJ1:
DSLl:
.,
CPI
JRNZ
DB
CALL
LXI
CALL
LOA
"OY
IIR
LXI
"VI
CALL
PUSH
!OY
CALL
INX
POP
OJNZ
OB
RIT
8
:1' ACC. (> 8
OSJ2
: THBN GO •• J2
20H,OSJ2-$-1
eRLP
H,DBR"SG
!ESSG
RESULT
B,A
B
H,OSKCYC
C,SPC
CONOUT
B
B,"
OSHBX
H
B
OSLI
10H,OSL1-"1
;1-------------------------------------1
;t RIPORT BRROR WITH ENGLISH !155AGB
I
.;1-------------------------------------1
,
DOA9 'B09
D5J2:
DOAB+2040
ODAD 21461'9
DOBO CD460D
DDB3 3A51'8
ODB6 B601
DDB8 C641
DOBA 3244179
DOBO 3A1CFB
ODCO 47
ODCl 8680
DDC3 2148179
DDC6 PECO
CPI
JRNZ
DB
LXI
CALL
LOA
ANI
ADI
5TA
LOA
HOV
ANI
9
DSJ3
20H,05J3-S-1
H,VCRLF
DOERR
RWUNIT
LXI
H,TERR ; NODISK
OCOH
DSVI
28H,05Vl-S-l
,. '
1
41H
ORVNU"
D5KCYC
B,A
OIOB
DDC8+281A
cPt
JRZ
DB
DDCA PBBO
CPI
DDCC+2002
ODCE 0600
JRNZ
DB
"VI
OEOH
D5V2
20H,D5V2-S-1 .
8,0
: SYSTEK
KOV
A,8
ANI
OFH
CPI
JRC
4
DDDO 78
DOD!" B60P
DDDl FE04
ODD5+3802
.,
DSV2:
DB
; ALL OTHERS
DSV2A
38H,D5V2A-S-l
CP/M "ACRO ASSBM 2.0
0007
DDD9
DDDA
DDDB
DDDE
DDEI
E605
3C
47
2149F9
110600
19
DDE2+10FD
DDB4 CD46DD
DDE7 2135F9
DDEA C346DD
DSV2A:
DSV3:
DSVI:
'028
ANI
INR
"OV
LXI
LXI
DAD
DJNZ
DB
CALL
LXI
J"P
PAGE
ATTACHE BIOS & BOOT: COPYRIGHT 1981, OTRONA CORP.
5
; I.B. 7=5,6=4
A
B,A
H,CERR-6
D,6
0
DSV3
10H,DSV3-S-1
DOERR
H,DERMSG
DOBRR
.029
CP/M MACRO ASSBK 2.0
ATTACHS BIOS" 800T: COPYRIGHT 1981, OTRONA CORP.
.,
:1---------------------1
:I
DO DISK OPERATION
I
:1---------------------1
ODED
001'0
001'1
DOF3
001'4
DOF1
DDF8
DDF9
. DOFA
ODFO
DEOO
0103
0806
0108
0808
OBoe
OBOI
3210FA
1A
B680
01
32591'8
01
07
81
32491'8
32511'8
3261'8
3268'8
8603
32501'8
1A
867F
32581'8
3269'8
7B
325A'8
:
SAVS DISK PARAMETERS
OSJ3:
STA
1I0V
DSKCIIO
A,D
ANI
80H
RLC
STA
RLC
RWHD
RLe
ORA
STA
STA
RWUIIT
SDUNIT
STA
SKUNIT
ANI
STA
3
RCUNIT
A,D
STA
RWCYL
SKCYL
A,S
STA
RWREC
OE18 2244'8
011B2252'8
SHLD
SHLD
FIIADDR
RWADDR
B
OB11+CBOO
0120 OEOO
DB22 OB
08
OB23+B043
OE25+54F8
08
ow
RWCNT
OB21 3A10FA
OB2A FB01
LOA
CPI
DSKCMD
1
RLCR
MVI
DCX
SBeD
JRZ
RWCNT
ADD
C
A,39H
OE31+CB41
DB
ORI
DSJ5:
B
: DATA COUNT
DSJ5
: IF eOKIIAND
28H,05J5-$-1
STA
MVI
BIT
DSJ4:
+
08DH,43H
A,RWCODE
08
;--DATA ADDRBSS
B
DB
MOV
MVI
OE39+2002
OEl8 1'640
DElO 32511'8
DE40 1'3
DB41 2A6D'A
:--SECTOR
OCBH, OOH
C,O
OB2C+2812
DE2E 4'
DB2F 3843
DEll 81
OB32 3256F8
0835 3839
JRNZ
:--CYLINDER
7FH
STA
IIOV
0lU1
0114
0115
:--HD " UNIT
C
FIIUNIT
STA
IIOV
ANI
:SBT UP DISK OP. TABLES
C,A
= FORIIAT,
ELSB S8T UP RWTBL
RWCIID
o,e
OCBH,0*8+C+40H
DSJ4
20H,D5J4-5-1
40H
STA
01
RWTBL
LHLD
KTRCHT
:BXAIIINB MOTOR COUNT
THEN SKIP
CP/M MACRO ASSEft 2.0
OB44
0845
OB46
0849
7C
B5
212COI
2260FA
D84C+2846
084E FB
OB4F CDB50E
OB52+CB6F
D854+2009
OE56 210000
0859 226DFA
D8SC CaOBDF
D85F CD77D8
DB62 78
OB63 B7
05J5A:
0864+2807
0866 3B07
OB68 2166F8
DB6B+1805
DB60
DE6F
OB72
OB75
OB16
3E04
2148F8
COBeDE
FB
C9
D5J8:
05J10:
.
,
f
'030
ATTACHE BIOS & BOOT: COPYRIGHT 1981, OTRONA CORP.
MOV
ORA
LXI
SHL.D
JRZ
DB
A,H
L
:IF MOTOR ON
H"KTRTIK
MTRCNT
5TRKTR
2SH"STRMTR-S-l
EI
CAL.L.
BIT
DB
JRNZ
DB
LXI
SHL.D
JlfP
CAL.L
tlOV
ORA
JRZ
DB
MVI
LXI
JR
DB
SNSTAT
5"A
OCBH,,5*S+A+40H
DSJ5A
20H"DSJ5A-$-1
H,O
tfTRCNT
NOTRDY
GTFLGS : EXAMINT;: PROPER HtfFLG"
A"M
A
;IF HtfFLG = 0
DSJS
2SH,DSJ8-S-1
A,,7
: DSKCYC = 7
H"SKTBL
DSJIO
ISH ,DSJ 10-$-1
"VI
LXI
CALL.
EI
RET
PAGE
A,4
: DSKCYC
H"RCLTBL
OORCSK
=4
CP/M MACRO ASSBK 2.0
• 031
ATTACHB BIOS
&
BOOT: COPYRIGHT 1981 .. OTRONA CORP •
.,
:1------------------------------1
:1
DB77 3A57F8
DB7A 2176FA
DB7D+CB47
DE7F C8
D880 23
DB81 C9
MISC. DISK ROUTINBS
.:1------------------------------1
'"
GTFLG5: LOA
LXI
BIT
DB
RZ
IMX
,
RWUNIT : GBT PROPER HKFLG
H..HKFLGS
O,A
OCBH"O-8+A+40H
H
RIT
II
DB82
DI84
DB81
DB88
D889
DB8B
DE8B
DB8F
3B3C
32A9FB
AI'
85
0608
211DPB
71
5ITOT:
KVI
STA
XRA
PUSH
KVI
LXI
SDTLI:
23
DB90+10PC
DB92 11
DB93 C9
KOV
INX
OJNZ
DB
POP
RET
A,,60
:SIT OPERATION TI6EOUT
OSICNT ; (0ICRIKENT8D BY SRV60)
A
H
B,8
H,STO
K,A
: AND CLEAR RESULT BYTES
H
SOTLI
10H,SOTLI-IS-l
H
START DRIVE HOTORS
DB94
DB96
DB99
DB98
D89B
DBAO'
DEA3
3B28
CD840B
3808
321CFB
D607
CD27Bl
FB
DEA4 210000
DEA1 2216FA
DEAA C9
DIAB
DIAD
DIAR
DEBI
0608
48
CDZBDF
41
0882+101'9
DBB4 C9
A,40
STRITR: IVI
CALL
51TDT+2 : 1/2 SECOND FOR DRIVB UP TO SPEBO
MVI
A,8
: OSICYC = 8
STA
DSKCYC
SUI
7
CALL
LLATCH
HI
,
: CLEAR HOMB FLAGS
,
CLRFLG: LXI
H,,0
SHLD
HKFLGS
RBT
·
·
·
CLSAR ANY RBSULT BYTES FROM FDC
AND ISSUE ILLBGAL COMMAND TO RESHT
,
CLRFDC: MVI
CFLl:
KOV
CALL
MOV
DJHZ
DB
RET
PAGB
B,8
; CLEAR FOC
C,B
R765
B,e
CFLl
10H,CFLl-$-1
2.0
CP/M MACRO ASSBM
#032
ATTACHE 8IOS 6. 800T: COPYRIGHT 1981. OTRONA CORP.
:'----------------------------------------------,
:I
:I
:1
:I
:1
:1
:1
8ASIC FLOPPY DRIVER
SETS UP 80TH FLOPPY CONTROLLER AND DKA FOR 1
A FLOPPY OPERATION AND DELIVBRS COIUiAND.
1
SBB FLOPPY COMMAND TABLES FOR TABLE FORMAT. I
RETURNS WITH Z FLAG SET IF A TIMEOUT OCCURS. I
' A' CONTAINS ST 3 ON EXIT FOR 'SENSE DRIVE
STATUS' COMMANDS
:1----------------------------------------------,
DBB5 215FF8
DEB8 3EOI
DB8A+1805
OBBC
DBBF
DBCl
DEC4
321CFB
3B02
326FFA
CD82DE
DBC? 54
DEC8 5D
OBC9+CB66
DBCB+281F
DBCO 3B44
DBCF+CB16
01Dl+2802
DBD3 3848
DBD5 D3EB
DBD? BS
DBD8 23
DBD9 OBBO
,
·:---LEAVES INTERRUPT DISABLED ---,·
SNSTAT: LXI
H,SDSTBL
; SENSE DRIVE STATUS
·,
A,l
DORCS1
18 H,00RCSl-S-1
DORCSK: STA
MVI
DORCS1: STA
CALL
,
DROP
DSKCYC
: SEEK OR RBCALIBRATE
A,2
RBSULT
SETDT
THROUGH TO DISKOP
DISKOP: !fOV
MOV
8IT
DB
JRZ
DB
MVI
BIT
DB
JRZ
DB
"VI
DOJ2:
OUT
PUSH
D,H
··,
INX
DBDB+EDAl
DEDD+BDAl
DBDF OBBI
DEBl+EDA3
DBEl+BDA3
DBES 3BOO
DBB1 03BA
DBB9 2B
DBEA BB
DBBB 11
DIBC BS
MVI
JR
DB
00J3:
MVI
OUTI
DB
OUTl
DB
MVI
OUTI
DB
OUT1
DB
MVI
OUT
DCX
XCHG
POP
PUSH
E,L
4,K
OCBH,4-8+K+40H
DOJ3
:Z=SKIP DMA SETUP
28H,DOJ3-$-1
A,44H
:--5BT UP OKA IIODE
6,1'1
OCBH,6-8+M+40H
00J2
28H,00J2-$-1
A,48H
DKAWMR
H
H
C,FPYBCA
OEDH,OAlH
OBDH,OA3H
C,FPYBWR
08DH,OA3H
OEDH,OA3H
A,O
DMAWSM ;--IIASK OFF
H
H
H
:SENO 165 COMMANDS
.CP/M MACRO ASSIM 2.0
DIID 78
oBBB 160'
olFO 47
olFI 62
0lP2 6B
DIF3
DIF4 23
0lF5 4B
0lF6 C5
OBF7 CDl8DP
DBFA Cl
'033
HOV
ANI
HOV
HOV
OFOO+CB71
OF02 C8
HOV
01
INX
HOV
PUSH
CALL
POP
JRZ
DB
OJNZ
DB
POP
BIT
DB
RZ
OP03
OP05
OP08
DP09
"VI
CALL
RNZ
PUSH
'3
DOL2:
DBFB+2800
DBFD+I0F5
OBFF 11
0601
CDOOIO
CO
15
OPOA 11
OFOB
OPOB
OP11
OP13
OP16
OP17
CDABOB
3A7CPB
F6BO
321CPB
·,
POP
,·
HOTRDY: CALL
DOJ5:
AF
C9
OP18 061F
H
C,M
:ISOLATI # BYTES TO SBND
:B=#OF BYTES
;DO UNTIL B=O OR ERROR
B
W165
: SEND ONE BYTB TO FDC
B
DOJ5
: GO •• J5 IF ERROR
28H,00J5-8-1
DOL2
:BND 00
10H,OOL2-$-1
H
7 ,M
;IF READ ST 3
OCBH,1*8+H+40H
: THEN GO •• J4
B,1
: READ ST3
RBDRBS
: HAVB READ ALL BYTBS
H
: ELSE ERROR
H
;KEBP SP CURRBNT
CLRFOC
OSKCYC
OBOH
DSKCYC
A
:RBTURN (BRROR)
B,IFH
W7L2:
DF24+2803
OF26+10F6
DF28 C9
D'29 B7
DF2A 19
DF2B D3FO
DP2D C9
A,M
OPH
B,A
H,D
L"B
·:THI5 ROUTINB WILL' WAIT FOR" NEXT BYTE -READY' THEN SEND THE
;CO""AND PASSBD IN THB C REG TO THB FLOPPY CONTROLLER
,·
W165:
MVI
,
W1Ll:
0'IA+I0'8
OPIC 060A
OFlE OBFC
0'20 B6CO
OF22 FE80
LOA
ORI
STA
XRA
RBT
ATTACHE BIOS & BOOT: COPYRIGHT 1981, OTRONA CORP •
W7Jl:
.,
DJNZ
DB
MVI
IN
ANI
CPI
JRZ
DB
DJNZ
DB
RET
ORA
MOV
OUT
RET
W1Ll
;DELAY 36 US.(4 KHZ)
10H,W1Ll-S-l
B,10
SFLPY
;READ STATUS
oeOH
;
A
:CLEAR THE Z
A,e
DFLPY
;SBND COMMAND
80H
;WE WANT B1 ON & B6 OFF
W7Jl
:GO SEND BYTB
28H,W7 Jl-$-1
W7L2
;DEC CNT LOOP
lOH,W7L2-S-1
;1H15 ROUTINE WILL WAIT NEXT BYTE READY THEN INPUT THE
:NBXT STATUS BYTE FROM THE FDC
CP/M MACRO ASSBM 2.0
800T: COPYRIGHT 1981, OTRONA CORP.
.034
ATTACHE BIOS
8,1FH
R7Ll
:DBLAY 36 U5.(4 MHZ)
10H,R7L.l';'S-1
8,10
:SBTUP COUNT
SFLPY
:READ STATUS
OCOH
OCOH
:WE WANT B1 & 86 ON
R7Jl
28H,R1Jl-$-1
:DBC CNT & LOOP
R1L2
10H,R7L2-S-1
&
.,
DF2E 061F
R765:
R7Ll:
DF30+10FE
DF32 060A
DF34 D8FC
DF36 B6CO
DF38 FBCO
IIVI
DJNZ
D8
R7L2:
IN
ANI
CPI
JRZ
D8
DJNZ
DB
RET
ORA
IN
RET
!lVI
DF3A+2803
DF3C+I0F6
DF3E C9
DF3F B7
DF40 DBFD
DF42 C9
R7Jl:
,.e.
PAGE
A
DFLPY
:RBSET Z
:READ A 8YTE
• 035
CP/M MACRO ASSIH 2.0
ATTACHB BIOS & BOOT: COPYRIGHT 1981# OTRONA CORP •
.,
:11------------------------------------11
:'1
: II
FLOPPY INTBRRUPT ROUTINE
:11
II
II
II
:11------------------------------------11
DF43+ED13
DF45+49FA
DF47 31C2FF
DF4A B5
DF48 D5
DF4C CS
DF4D F5
DF4B D8FC
DF50 B6I0
DF52+2811
SRVFPY: SSPD
DB
DW
LXI
PUSH
PUSH
PUSH
PUSH
IN
ANI
JRZ
DB
.,
TBHSTK
OBDH#13H
TIIISTK
SP"INTSTK
H
D
B
PSW
SPLPY
10H
: IF Foe NOT BUSY
FPJ2
: THBN SBNS! INT. STATUS
28H"FPJ2-S-1
:1-----------------------------------------1
: t RBSUL T PHASB FOR RBAD, WRITB OR FORKAT
,
;1-----------------------------------------1
OF54 0601
OF56 CDOOBO
"VI
CALL
JRZ
D8
LOA
ANI
LXI
OF59+2822
OF58 3A1DFB
OF5B B6F8
OF60 211CFB
~ . :.~!:,~JRNZ
OF63+202C
DB
8,,1
; ELSE RBAD 7 RBSULT BYTBS
RIDRES
FPJ3
: DIDN"T READ ALL BYTBS
28H,FPJ3-S-1
S10
; 'CHBCK 5TO
OF8H
: IF STO NOT OK
H"DSKCYC
FPJ5
: THBN ERROR
20H"FPJ5-S-1
;1-----------------------------------------------1
;1
RBSULT PHASE FOR SEBK" RBCAL OR RBADY CHANGE
I
.
:1-----------------------------------------------1
OF65 OB08
OF67 CDl8DF
,
FPJ2:
OF6A+2811
OF6C CD2BDF
OF6F+280C
OF11 4F
OF12 FB80
OF14+281F
OF76 217DFB
OF79 11
OF?A CD2BDF
DF7D CA29BO
OF80 23
01'81 17
FPJ3:
KVI
CALL
JRZ
DB
CALL
JRZ
DB
MOV
CPI
JRZ
DB
LXI
MOV
CALL
JZ
INX
MOV
C,8
W165
; ISSUE SENSB INT. STATUS
FPJ3
; IF ERROR, THEN GO DBRTI!
28H,FPJ3-S-1
R165
FPJ3
: READ 1ST RESULT BYTE
28H,FPJ3-S-1
C,A
: SAVE 5TO
80H
; IF INVALID COlflfAND WAS ISSUBD
FPOK
: THBN WE ARB DONB
28H,FPOK-$-1
H,STO
K,e
: ELSB STORE STO
R765
; READ NEXT BYTB
DSRTI" : FDC NOT READY
H
K,A
: STORE 5T1
CP/M MACRO ASSBM 2.0
OP82 79
OP83 E6F8
OP85 FE20
OF87+280C
OP89 217CFB
OF8C 7E
OP8D FE08
FPJ4:
OF8F+2845
FPJ5:
OF91+CBFE
DF93+18DO
#036
ATTACHE BIOS
ftOV
ANI
CPI
JRZ
DB
LXI
MOV
CPI
JRZ
DB
SETB
DB
JR
DB
A,C
OF8H
20H
: IF SEEK OR RECAL JUST DONE
FPJ2
: THiN CHECK FOR HIDDER INTo
28H,FPJ2-S-1
H,DSKCYC: ELSE READY LINE HAS CHANGED STATE
A,ft
S
: IF WAITING FOR READY
IIEND
; THEN EXIT
28H,IIEND-S-l
7,ft
: ELSE ERROR
OCBH,7*S+M+OCOH
FPJ2
; CHECK FOR HIDDEN INTe
lSH,FPJ2-S-1
&
BOOT: COPYRIGHT 1981, OTRONA CORP.
;1--------------------------------------1
;I
0
CHECK FOR NEXT OPERATION, "
I.
.,:1--------------------------------------1 .
OP95
OP96
OP99
OP9C
AF
32A9FB
211CFB
7E
FPOK:
FPJS:
OP9D+CB7F
OP9F+2039
DFA1 3600
DPA3 0604
08
MVI
SUI
DFA5+382F
OFA7+200B
XRA
S1A
L.XI
ftOV
BIT
OB
JRNZ
.
JRC
D8
JRNZ
08
,
DFA9
OPA8
OFAE
DFAF
3804
3269F8
3C
2166F8
MVI
STA
INR
LXI
JR
DB
D'82+181F
A
DSKCNT ; CLBAR DSKCNT
H,DSKCYC; AND CHECK DSKCYC
A,ft
7 ,A
: IF 8IT 7 SET
OCBH,7-S+A+40H
FPC7
: THBNBRROR
20H,FPC7-S-1
M,O
; BLSE CLiAR DSKCYC
4
; IF D5KCYC :I 0,1,2, OR 3
IlEND
; THBN EXIT
3SH,IIEND-$-1
FPCl
; EL.SE IF DSKCYC (> 4 THEN .. CI
20H,FPCl-S-l
A,.4
: DSKCYC NOW = 4
SKCYL.
: SO DO SEEK TO TRACK 4
A
: NEW DSKCYC = 5
H,SKTBL.
FPC9
lSH,FPC9-S-1
JR
DB
A
; IF DSKCYC (> S
FPC2
; THBN •• C2
20H,FPC2-S-1
H,RCLT8L; DSKCYC NOW = S
A,6
: 50 DO 2ND RECALIBRATE
FPC9
lSH,FPC9-$-1
OPBF+2018
OCR
JRHZ
DB
A
: IF D5KCYC (>
FPC5
: THEN •• CS
20H,FPCS-S-l
OFCI CD77DE
OFC4 34
CALL
INR
It
DFB4 3D
FPCl:
OFB5+2007
DFB7 214£F8
DPBA 3E06
DFBC+1815
OP8E 3D
OCR
JRNZ
OB
LXI
MVI
.
,
FPC2:
GTFLGS
6
: DSKCYC NOW = 6
SET PROPER HKFL.G
: SO
CP/M HACRO ASSI" 2.0
1031
OPCS 3A58'8
DFC8 B7
LOA
ORA
OPC9+2811
OPCB 3269F8
OFC! 2166F8
OPD1 3107
OFD3 CDBCDE
OFD6 C309F5
DB
STA
LXI
"VI
CALL
JRZ
OFD9 3D
OFDA+2040
OPDC 3107
OFDE 326F'A
OPII 212COl
OFE4 2260BA
OFB7 3A70FA
OFEA 327CPB
OPEO 3D
'PC9:
.,
IlENO:
JIIP.
FPCS:
FPC?:
OCR
JRNZ
DB
PPC6:
"VI
STA
LXI
SHLD
LDA
STA
DCR
JRNZ
OPBI+2005
OFFO 2143P8
OP'3+1803
OFF5 2151F8
OP'8 CD820B
OFFB CDC7DB
DPFI+18D6
DB
LXI
JR
DB
ppe3:
PPC4:
.,
LXI
CALL
CALL
JR
DB
ATTACHE BIOS
: T~IN SEEK TO DESIRED TRACK
RWCYL
A
FPC6
28H,FPC6-$-1
SKCYL
: STORE TRACK IH SEBK TABLE
H,.SKTBL •
A,7
; NBW OSKCYC = 7
OORCSK : SEEK TO TRACK
IBND
A
: IF OSKCYC (> 7
DSKBRR ; THEN BRROR,. ARE NO OTHERS
20H,.DSKERR-S-l
A,.7
; OSKCYC HOW = 7
RESULT
H,.KTRTIK: SO RESET MOTOR TIMER
"TRCNT
DSKCKO : NEW DSKCYC
1,2, OR 3
=
(> = 1
DSKCYC
A
: IF OSKCYC
P'PC3
~ THEN •• C3
20H"FPC3-S-1
H,FMTTBL; ELSE NEXT OP IS FORKAT
FPC4
18H,FPC4-S-1
H"RWTBL : HBXT OP IS READ OR WRITE
SBTDT
: CLEAR RESULT BYTES & RESET TIMEOUT COUNTER
DISKOP : ISSUE COMMAND
IIEND
18H"IIEND-$-1
:1------------------------------1
:1
& BOOT; COPYRIGHT 1981, OTRONA CORP.
READ RESULTS
ESC \
CLR. SCN. & RESET PAR.
ESC] RECALL PARAMETERS (SYSTEM USB ONLY)
ESC A
WORD WRAP OFF
BSC _ WORD WRAP ON
ISC' WSFLAG SIT (ON)
ESC A WSFLAG RESET (OFF)
BSC B SOUND TONB FROM TONB TABLE
ESC C CURSOR OFF
ESC D CURSOR ON
PAGE
CP/H KACRO ASSIH 2.0
'047
ATTACHI BIOS
&.
800T; COPYRIGHT 1981, OTRONA CORP.
·,;1--------------------------------------1
;1
DISPLAY INTRY (CHARACTER IN C)
I
;1--------------------------------------1
·,
;
·
,
11A9+ID13
11A8+48'A
11AD 3l1A"
1180 31P'P
1182 32A5DA
1185 15
1186 D5
1187 C5
1188 P5
1189 CD6BI2
IlBC 3AFAF9
1181' 87
E1CO C215B3
1---------------1
I HASTBR MODULE 1
1---------------1
DISPLY: SSPD
DB
DW
LXI
HVI
STA
VALDSP: PUSH
PUSH
PUSH
PUSH
DSPSTK :
01DH,73H
DSPSTK
SP ,OSPTEJf
A,OPFH ;
DSPPLG
H
;
; SiT STACK POINTER TO DISPLAY STACK
SIT DSPFLG TO INHIBIT VALET
SAVE REGISTERS
D
8
PSW
,
,
·
ADDOPFS!T TO LINE.
LFAGN:
CALL
·
,·
·
CJfPOPl
·
; CALCULATE LINE OFFSET
CHECK CYCLE
LOA
ORA
JNZ
OSPCYC
: IF DSPCYC () 0
A
ESCCHK , THiN GO CHiCK DSPCYC
·
,
BlC3+CBB9
SAVE STACK POINTER
IS CHARACTBR ESCAPE
?
RES
'DB
7,C
; ELSE HAKE SURE CHAR. IS ASCII
OCSH,7i1S+C+80H"
MOV
CPI
JRZ
DB
LOA
CMP
JRNZ
DB
A,C
ESC
: IF CHAR. = ESC,
OSPJ1
, THEN OSPJl
28H,DSPJ1"S-1
LEADIN : ELSE
C
, IF CHAR. <> LEADIN
OSPJ2
: THEN OUTPUT IT TO DISPLAY DRIVER
20H,DSPJ2-S-1
A,l
, ELSE SET DSPCYC = 1
BXITJ
, AND EXIT
,
ElCS 79
B1C6 PI18
E1C8+2806
BlCA 3A06FA
B1CD 89
BICE+2005
B100 3B01
B1D2 C3F8El
DSPJ1:
MVI
JMP
·
·
.
.
IS CHARACTER CONTROL
IUDS 19
EID6 8660
E1D8 CA97E2
,co
DSPJ2:
KOV
ANI
JZ
A,e
60H
CTROL
?
: IF CHAR. IS A CONTROL CHAR.
; THEN GO TO CONTROL CASE
TRANSLATE CHARACTER TO ALTBRNATE
SET, IP NEEDED.
CP/M KACRO ASSBK 2.0
BlOB CD7DB2
.,
EIDE CD17B2
'048
ATTACHE BIOS & BOOT: COPYRIGHT 1981, OTRONA CORP.
CALL
CHKCHR; ELSB XLATE TO ALTERNATE SBT IF NBBDED
OUTPUT CHAR. TO SCRBEN AND
INCRE"BNT H ACCORDINGLY
CHRRET: CALL
OUTCHR
; OUTPUT CHAR. TO SCREEN
IF END OF LINE, BXIT.
ElE1 P5
EIE2 3A01PA
EllS B7
E1B6+2805
E1E8 F1
1119+2010
IIBB+1803
BlED PI
·,
DSPJ3:
EIBB+20C9
·
,
EIFO 1C
IlFI 3208FA
CUSTH:
·
PUSH
LDA
ORA
JRZ
DB
PSW
WRPPLG
A
: IF LINB WRAP ON
DSPJ3
; THEN •• Jl
28H,DSPJ3-S-1
POP
JRNZ
DB
JR
DB
PSW
: ELSE LINE WRAP OFF
DSPRBT
2OH ,DSPRBT-S-l
CUSTH
18H ,CUSTH-S-l
POP
JRNZ
DB
PSW
LPAGN
: WRAP IP NEIDED
20H,LFAGN-S-1
STORB NBW H IN CHRADR+l
KOV
STA
A,H
: STORE POSITION OF NIXT CHAR.
CHRADR+1
OUTPUT CURSOR TO (H)+ 1,(L)
,
I1F4 CD57B2
B1F7
BIP8
IIPB
EUPI
AP
32FAF9
3A45FA
B7
EIFF+2011
8201 3C
8202 3245FA
8205 AF
E206 32A5DA
1209 PI
120A Cl
120B D1
E20C 11
B20D+ED7B
120P+4BFA
1211 C9
8212 PI
li13 Cl
OUTCUR
CRSRET: CALL
; OUTPUT CURSOR
EXIT POINTS
,
: CLEAR DSPCYC
BXIT2: XRA
A
DSPCYC : STORE DSPC-YC
BXIT3: STA
CONFLG
DSPRIT: L.DA
; IF IN VALIT
ORA
A
JRNZ
DSPJ4
, THEN DSPJ4
2OH ,DSPJ 4-S-l
DB
A
INR
: ELSE
CONFLG , SET CONFLG <> 0
STA
, DSPFLG = 0
XRA
A
DSPFLG
STA
; RESTORE RBGISTERS
POP
PSW
POP
B
POP
D
POP
H
DSPSTK ; RESTORE STACK POINTBR
LSPD
OBDH,07BH
DB
DSPSTK
OW
; RETURN
RBT
PSW
DSPJ4: POP
POP
B
·
·
·
·
o
CP/It IIACRO ASSIII 2.0
1214 D1
1215 11
1216 C9
.,
1049
POP
POP
RBT
PAGB
ATTACHB BIOS 6. BOOT: COPYRIGHT 1981 .. OTRONA CORP.
D
H
CP/K KACRO ASSBM 2.0
• 050
ATTACHB BIOS" BOOT; COPYRIGHT 1981, OTRONA CORP •
1-----------------------1
I
MISC. ROUTINES FOR
I
KASTBR KODULB
1-----------------------1
.,;
8211 5F
8218 1601
E2lA 3AOOFA
E21D+CB67
E21F+2801
8221 14
8222 1D
8223 44
8224 F680
!226 OlE!
E228 OIFE
B22A+ED59
822C B6DF
E221 03E!
E230 !61F
E232 6P
8233 3AOOFA
1236+BD19
8238 1C
8239 PI4F
OUTPUT CHAR. TO HL
OUTCHR: KOV
MVI
LDA
BIT
DB
JRZ
DB
INR
OUTCRl: MOV
KOV
ORI
OUT
KVI
OUTP
DB
ANI
OUT
ANI
KOV
LOA
OUTP
DB
KOV
CPI
123B F5
123C 3A01FA
E23F 87
8240+2010·
8242 PI
8,A
D.. l
CURATT
4,A
OCBH,4-8+A+40H
OUTCRI
. ,28H,OUTCR1-IiI-l
0
A,L
B,H
OEOH
SDSPY
C,DDSPY
I
08DH,B.8+41 H
ODPH
SDSPY
IFH
L,A
CURATT
A
010H,A.8+41 H
A,H
19
PUSH
LOA
ORA
JRNZ
DB
PSW
WRPFLG
A
WPI
POP
JRZ
DB
PSW
OUTIXT : DO IF WRAP ON
28H,OUTIXT-5-1
20H,WPI-5~1
1243+2805
.
E245 24
1246 15
OUTCR2: INR
DCR
JRNZ
DB
RET
H
OUTIXT: XRA
STA
KVI
ORA
RET
A
CHRADR+l
C,LF
,
8247+2009
8249 C9
1241.
124B
E24E
E250
1251
AI'
3208FA
OBOA
Bl
C9
..
0
OUTCRI :IF NOT DOUBLE CHAR.
20H,OUTCRl-S-l
: THEN RETURN.. ELSB DO SECOND HALF
C
CP 1M MACRO ASSBH 2.0
1252 PI
WPl:
B253+20FO
8255 14
8256 C9
.051
ATTACH I BIOS
POP
JRNZ
08
: DO IF WRAP OFF
PSW
OUTCR2
20H,OUTCR2-S-1
0
INR
&
BOOT: COPYRIGHT 1981, OTRONA CORP.
RBT
·
OUTPUT CURSOR TO HL
,
1257
E25A
8258
125C
1251
1260
1261
1262
1264
1266
1268
1269
!268
E260
3A02PA
B7
CO
31Ae
0318
7C
3C
03FI
llAD
031!
7D
161F
03FI
C9
OUTCUR: LDA
ORA
RNZ
IIVI
OUT
MOV
INR
OUT
MVI
OUT
MOV
ANI
OUT
RIT
:
·
CURCTL
A
A,OACH
SDSPY
A,H
A
DDSPY
A,OADH
SDSPY
A,L
lPH
DOSPY
AOD OFFSET TO LINI.
,
B268
1271
1274
8215
2A07FA
3AA4DA
85
FI18
1277+3802
1279 C6!8
12,7B 6F
827C C9
CKPOF 1: LHLD
CMPOFF: LOA
ADD
CPt
CMPJl:
·
CHRADR
LINOP,S
I..
24
JRC
CIIPJI
DB
ADI
MQV,
RET
38H,CMPJ1-S-1
-24
L,A
TRANSLATE AI.. T. CHAR. SIT
,
8210 79
8278
8280
1281
1283
1284
8286
E287
B28A
E28B
E28E
PB40
D8
PE7P
DO
163F
P5
118CP6
EB
3AFFF9
4F
828F 0600
E291 09
8292 78
8293 Cl
1294 BS
E295 BO
8296 C9
CHKCHR: MOV
CPt
RC
CPI
RNC
ANI
PUSH
LXI
XCHG
LOA
HOV
HVI
DAD
MOV
POP
XCHG
ORA
RET
A,C
'1'
: --- ADDID --'FH
3FH
PSW
D,CHRTBL
CURCHR
C,A
B,O
B
A,M
8
B
: --- ADDID _..-
CPIK KACRO ASS!" 2.0
• 052
.
,
PAGE
ATTACHE BIOS & BOOT: COPYRIGHT 1981, OTRONA CORP •
CP/H KACRO ASSB" 2.0
ATTACHE BIOS & BOOT: COPYRIGHT
'053
,
·:1--------------------------------------1
:1
CONTROL CASE
:1--------------------------------------1
·
,
CTROL:
,
B297 79
nov
·:1--------------1
A,C
:1 BACK SPACE I
: 1--------------1
·,
CTROL2: CPt
JRHZ
B298 PB08
BS
CLCR
20H,CLCR-S-l
CURATT
B29A+2024
B29C 3AOOPA
DB
829P+CB67
DB
JRZ
B2Al+2801
82A3 25
B2A4 25
B2A5 311'1'
12A7 8e
12A8 PAPOll
12AB 3A01F!
E2AB 81
DB
28H,CLJl-'-1
OCR
OCR
ItVI
CliP
H
H
JII
CUSTH
WRPPLG
LOA
4,A
OCBH,4*8+A+40H
CLJl
BIT
12AP+200A
12Bl 7C
12B2 D6BO
12B4 3208FA
12B1 67
12B8 C39BB4.
12B8 2600
E2BD C3FOBl
CLJ1:
·
,
CLJ2:
A,OFPH
H
LOA
ORA
JRHZ
CU2
DB
HOY
20H,CLJ2-S-1
A,H
SUI
176
51A
HOY
CHRAOR+l
H,A
RBYLP
A
J"p.
MVI
H,O
JIIP
CUSTH
:1-------------------1
:1 CARRIAGB RETURN
;1-------------------1
E2CO FEOD
·,
CLCR:
CPI
JRNZ
1
CR
eLF
20H,CLF-S-l
E2C2+2005
DB
E2C4 2600
E2C6 C3FOEl
MYI
H,O
JKP
CUSTH
·
/1
:1-------------1
:1
LINB FEBD
:1-------------1
E2C9 FIOA
B2CB+2049
B2CD 3A04PA
·,
CLF:
CLF1:
CPI
JRNZ
DB
LOA
1
LF
CLBL
20H,CLBL-S-l
BOT ACT
:IF NOT AT BOTTOM
19a1~
OTRONA CORP.
CP/M MACRO ASSBM 2.0
B200 47
H201 3A07FA
E204 B8
E205+2034
E2D7 3A05FA
E20A FE17
E20C+2028
E20E
E2BO
E2E3
E2E6
E2E9
E2BA
'E2EC
B2EF
E2Fl
E2F3
E2F5
E2F8
E2F9
E2FA
2EOO
C07lE2
C010E8
3AA4DA
57
0601
CDC9BC
3EAB
D3EE
03FE
21A4DA
7B
3C
FB18
E2FC+2001
E2FE AF
E2FF 17
E300 CD6EE2
1303 C3F4El
CLF2:
E306CDC1!7
CLF3:
E309+181D
.,
B30B
E30C
E30F
E3l0
Ell3
CLF4:
lC
3207FA
6F
CD71B2
C3F4El
.054
ATTACHE BIOS " BOOT: COPYRIGHT 1981 ,OTRONA CORP.
MOV
LOA
CMP
JRNZ
DB
LDA
CPI
JRNZ
DB
B,A
CHRAOR
B
CLF4
: THEN MOVE CURSOR
20H,CLF4-S-1
MAG ACT : BLSE IF REGION NOT
23
: FULL SCREBN
CLF3
; THBN SOFTWARE SCROLL
20H,CLF3-S-1
MVI
CALL
CALL
LOA
MOV
MVI
CALL
MVI
OUT
OUT
LXI
MOV
INR
CPI
JRNZ
DB
XRA
KOV
CALL
J"P
L,O
CIIPOFF
LFCLRI
LINOFS ;GRAPHIC SCROLL .
O,A
B,l
;CLEAR ONE LINE
.GRFCLR+4
A,OABH ; ELSE HARDWARE SCROLL
SDSPY
DDSPY
H,LINOFS
A,H
CALL
JR
OB
SCRLUP
BEGIN SOFTWARB SCROLL
CLKXT
; END SOFTWARB SCROLL
18H ,CLEXT-S-l
INR
STA
HOV
CALL
JKP
A
; BEGIN KOVE CURSOR DOWN
CHRADR
L,A
CIIPOFF
CRSRET ; END HOVE CURSOR DOWN
A
24
CLF2
20H,CLF2-S-1
A
M,A
CIIPOF1
CRSRBT
END HARDWARE SCROLL
: 1--------1
;1 BELL I
.,:1--------1
E316 FE07
E318+2011
E3lA 3A50FA
E31D+CB47
E31F+2001
E321 211DF6
E324 CD78!}
E321 FB
CLBL:
CPI
JRNZ
DB
LOA
BIT
DB
JRNZ
OB
LXI
CALL
EI
BEL
CLTB
20H,CLTB-S-l
CURBRL
O;A
OCBH,0*8+A+40H
CLBXT
20H,CLBXT-S-l
H,BELLTN
SOUND
CP III llACRO ASSSI( 2.0
CLBXT:
1328 ClP?Sl
.055
ATTACHB BIOS & BOOT: COPYRIGHT 1981, OTRONA CORP.
JltP
BXIT2
·:1-------1
,
;1
TAB
I
:I-------f
,
·
832B FB09
CLTB:
CPI
09H
CLRV
JRIZ
B32D+2003
132' C393S1
08
20H~CLRV-'-1
JItP
1I0VTAI
:I-~--~~--~-~-------I
;1 RBV. LIIIB FBBD
I
:I---~------------~I
·
,
8332 FBOB
CLRV:
1334+200l
1336 C398B4
OBH
CLM
CPl
JRIIZ
DB
J!P
20H,CLRT-'-1
·:1------------------1
,
RIVLF
: 1 CURSOR RIGHT
1
:1----------------1
·,
CLRT:
1339 FBOC
1338+2003
cPt
JRIZ
08
133D C36BI4
J!P
·
,
OCR
CLH!
2 OR ~CLHII-.-l
RITCUR
: I ..-~.....-----..- ..- ..... I
;1
CURSOR HOIII
·,
CPI
lEH
CLCLR
-8342+2003
JRNZ
DB
8344 C38DB4
JIIP
HOftCUR
1340 FBIB
CLH":
I
20H,CLCLR-S-l
,
·:1-----------------------1
;I
CLBAR AeTlVI RIGION
I
:1-----------------------1
8341 FIlA
·,
CLCLR:
CPI
IAR
CTLX
8349+2018
8348 3A03'A
JRNZ
DB
LDA
8341 6P
134F 2600
KOV
flVI
B351
8354
8351
!35A
2201'A
CD11!2
CD5112
CD4A!9
CTRLZ:
835D CDC5BC
1360 C3P7Bl
CLZ:
,
SHLD
CALL
CALL
20H,CTLX-S-l
TOPACT
L,A
R,O
CHRADR
CKPOFF
aUTCUR
CALL
CLTOID
CALL
GRFCLR
BlITZ
JItP
o
;1-------------------------1
:P/M MACRO ASSBIl 2.0
:1
.056
ATTACHB BIOS & BOOT: COPYRIGHT 1981, OTRONA CORP.
CLBAR KEYBOARD BUFFER
.:1-------------------------1
,
£363 FH18
E36S+20F9
212BFA
AF
F3
E36C 32F8F9
E36F 2238FA
£372 FB
£367
£36A
£368
~7!73+1818
CTLX:
CPI
JRNZ
CTRLX
CLZ
D8
LXI
20H,CLZ-8-1
H"KEYBUF
XRA
A
Dl
STA
SHLD
KEYCNT
KEYPNT
HI
JR
DB
18H,CLZ-'-1
PAGE
CLZ
I
CP/K KACRO ASSI" 2.0
'057
ATTACH! 8IOS
&.
800T; COPYRIGHT 1981, OTRONA CORP.
:1------------------------------1
:1
ESCAPE CASE
;1------------------------------1
B37S 3D
B376+2808
ESCCHK: OCR
JRZ
08
OCR
CPI
JRNC
DB
PUSH
LXI
JR
DB
1378 3D
B319 FE1S
131B+3068
1370 15
137B 2119f18
1381+1800
A
ESCCK1
28 H,ESCCK 1-$-1
A
ISH
J19B
30H,J19B-S-1
H
H,CYCTBL
BSCCK2
18H ,ESCCK2-$-1
CALCULATB ADDRBSS OF VBCTOR FROK CHAR.
GBT VBCTOR, PUSH IT AND EXECUTE (RET)
TO JUKP TO IT.
1383 79
1384 0630
1386+3813
1388 FE3S
138A+300F
B38C IS
1380 21AFfl1
1390
1391
1392
1394
1395
1396
1391
8398
8399
B39A
07
5F
1600
19
S8
23
S6
Bl
DS
C9
B39B 79
B39C 8671'
E39B C30EEl
ISCCK1: KOV
SUI
JRC
DB
CPI
JRNC
DB
PUSH
LXI
,
BS~CK2: RLC
KOV
"VI
DAD
KOV
.
INX
KOV
POP
PUSH
RET
NFGESC: KOV
ANI
JMP
PAGE
A,C
; KOVE NEXT CHAR. TO A
'0'
; SUBTRACT OFFSBT
NFGESC ; IF CARRY, THEN INVALID CHAR.
38H,NFGESC-$-1
'5'
; IF GREATBR THAN 64H (NOW 34H)
NFGBSC , THBN INVALID CHAR •
30H,NFGESC-S-1
H
H,ESCTBL
.
E:A
0,0
0
8,M
; ELS8 MULTIPLY BY 2
: KOVE TO LSB OF OFFSET
; KSB OF OFflSET = 0
: HL=(HL + DB) POINTS TO VECTOR
; MOVE LSB OF VECTOR TO E
H
D,M
H
0
A,e
7FH
CHRRET
;
;
;
:
MOVB "sa OF VECTOR TO 0
RESTORE CURSOR ADDRESS
PUSH VECTOR ON STACK
JUMP TO VECTOR ADDRESS
CP/M "ACRO ASSEM 2.0
'058
ATTACHE BIOS " BOOT: COPYRIGHT 1981, OTRONA CORP.
:1------------------1
:I 0 - PL.OT POINT 1
.:1------------------1
,
B3AI
E3A4
13A5
E3A8
32EAF9
AF
32FDF9
3EOE
E3AA+182F
PPOINT: STA
PPNT1: XRA
STA
MVI
JR
DB
GRFC"D
A
: CL.EAR GRAPHICS ERROR PLAG
GRFERR
A,ORH
: DSPCYC
OBH
J19C
18H,J19C-S-l
=
:1-------------------1
:1
I - PL.OT VECTOR
I
:1-------------------1
..,
E3AC
E3AE
E381
1384
E387
E38A
E3B8
E3BE
E3Cl
E3C4
3E01
32BA'9
2AF2F9
2'2F4'9
2265FA
AF
32'7P9
2AF6'9
22'8F9
2267FA
PVCTOR: "VI
PVCTl: STA
L.HL.D
SHLD
SHL.D
XRA
STA
L.HLD
SHLD
SHLD
JR
E3C7+18D8
DB
A,l
GRFCMD
GRX
GRXI
GRXl2
A
GRY+l
GRY
GRYI
GRY12
PPMTl
18H,PPNTI-S-l
;1------------------1
;1 2 - BLOCK DRAW
;1------------------1
ElC9 3E03
E3CB+18D4
BLKDRW: MVI
JR
DB
1
A,3
PPOINT
18H,PPOINT-S-l
·;1----------------------1
,
: I 3 - CL.EAR GRAPHICS 1
;1----·-----------------1
ElCD CDC5EC
B3DO+181B
CL.RGRF: CALL
JR
DB
GRFCLR
PTBRT
18 H,PTBRT-$-1
,
·;1------------------,
:1
4 - BL.OCK FILL
1
;1------------------1
13D2 3102
E3D4+18CB
BLKFIL.: MVI
JR
DB
A,2
PPOINT
18H,PPOIMT-S-l
,
·;I---------------------~----I
; 1 5 - SET MASKS FOR FILL
I
CP/M HACRO ASS I" 2.0
• 059
ATTACHI BIOS & BOOT: COPYRIGHT 1981, OTRONA CORP •
:1--------------------------1
·
,
1306 3100
8308 328AP9
130B C3F8Sl
SBTHSK: "VI
STA
JI9C:
JHP
A"ODH
GRFCHD
IXIT3
·
,
:1-----------------------------1
:1 6 -
DISABLE GRAPHIC IMAGB
1
;1-----------------------------1
B3DB AF
S3DF 31'0
83Bl CD211l
8314 FB
8315 C3F11l
·,
DSBGRF: XRA
CALL
A
A,,-3
LLATCH
El
J"P
BXIT2
MVI
L6:
JI9B:
,
·
: Z BIT SET ALREADY
:1----------------------------1
:1
1
1 - BHABLI GRAPHIC IIIAGI
;1----------------------------1
·
EN8GRF: "VI
,
8388 3802
E31A 81
A,2
A
ORA
JR
838B+18P4
: A=2, Z BIT IS CLEAR
L6
18H,L6-S-1
DB
·:1--------------------------1
,
:1
8 - SET TO PLOT BRIGHT
I
:1--------------------------1
1310 31C1
ElBP 32BIBB
13F2+18P1
·,
PTBRT:
"VI
PTBRI:
STA
A"OC1H
GRFBIT+l
J19B
JR
DB
. ·,
18H"JI9B-$-1
;I---~-----------:--~-----I
:1
9 - SET TO PLOT DARK
I
;1------------------------1
13F4 3187
·"
PTDRK:
KVI
A,87H
PTBRI
18H,PTBRl-S-l
JR
DB
13P6+18P7
;1-----------------1
:1
: - READ DATE
1
:1-----------------1
13F8 CD548?
·,
REDDAT:
83FS 21AAFB
CALL
LXI
LXI
ElF! 010100
H401 FB3F
CPI
JRNZ
1403+2004
8405 010100
B408 17
8409 CDSIFS
RDAT1:
READAT
H,CKIBYT
B,7
'1"
RDATl
DB
20H,RDATl-S-l
LXI
KOV
8,1
CALL
PU5HKY
J198
JR
M,A
CP/M MACRO ASSBM 2.0
E40C+lSD7
'060
ATTACHE BIOS & BOOT: COPYRIGHT 1981, OTRONA CORPe
DB
18H,JI98-$"1
:1------------------------------------..-1
:1
: - SET PRINTER BAUD FROK CK05 RAft
;1---....-_ .._-----------------------------1
E40E CD26EF
E411 C3F7E1
·,
CKOSPN: CALL
A513:
JMP
,
·
ADJPNT
EXIT2
;1------------------------------------1
;1 < - SET COMM. BAUD FROM CMOS RAft I
;1------------------------------------1
E414 CD2D8F
E417+1SF8
·
,
CMOSCK: CALL
JR
DB
ADJCOH
A513
18H,A513-$-1
;1--------------------------,
;I
= - DIRECT CURSOR MOVE
t
:1--------------------------,
8419 3B02
·,
DRCTMV: ltVI
841B+1S8E
JR
DB
A,2
J19C
18H,J 19C-$-1
,
·:1-----------------1
;1 > - RBAD TIMB
;1----.. ---_.. _-.._.. --1
B410
E420
8423
E426
CD2EE7
21A8FB
010600
F83F
8428+2004
E42A 010100
E42D 77
E42£ CDSIF5
£431+1808
REDTIK: CALL
LXI
LXI
CPI
JRNZ
DB
LXI
MOV
REDTK 1: CALL
JR
DB
,
·;I---....- ..--..--..
;1
? -
1
READTM
H,SCNDS
B,6
'1'
REDTHI
20H,REDTH1-$-1
B,l
K,A
PUSHKY
A513
18H,A513-$-1
------~ .. I
RBAD CKOS RAM
1
;1------_.. _------------1
8433 3E12
8435+1SA4
·
,
REDRAK: KVI
JR
DB
·,
A,12H
J19C
ISH,JI9C-S-1
;1----------------------1
;1
i-WRITE CHOS RAM
1
;1------_.. _----------_ .._,
,
£437 3E13
E439+1SAO
·
WRTRAM: MVI
JR
08
A,13H
J19C
18H,JI9C-$-1
I
CP/K KACROASSIK 2.0
'061
ATTACH! BIOS & BOOT: COPYRIGHT 1981# OTRONA CORP.
.,
:1-----------------1
:1 A - UP CURSOR I
.:1-----------------1
,
843B
E43E
843F
8442
3A01PA
41
3A03'A
88
B443+286D
1445 2D
B446 F24BB4
8449 2111
B448 05
B44C 18
8440 3201'A
1450+1819
UPCUR:
LOA
IIOY
LOA
CliP
JRZ
DB
UPCUR1: OCR
JP
ItVI
UPCUR2: OCR
HOV
STA
JR
DB
CHRADR·
B,A
TOPACT
8
:IF TOP OF ACT. REG.
A45A
: THEN RBTURN
28H,A45A-$-1
: ELSE IIOVE CURSOR UP
L
UPCUR2
L#23
B
A,B
CHRADR
A428
18H,A42B-$-1
:1-------------------1
;1 B - DOWN CURSOR 1
;1-------------------1
8452
1455
1456
8459
145A
845D
1458
1460
8461
B464
8466
8461
8468
846B
3A01FA
47
3A04'A
88
CA',Sl
2C
3818
BD
C266B4
2100
04
18
3207'A
CJP4Bl
DWNCUR: LOA
HOV
LOA
CliP
JZ
DNCURl: INR
MVI
CliP
JNZ
MVI
DNCUR2: INR
MaY
STA
A428:
JMP
.
CHRADR
8,A
BOTACT
:IF BOTTOH OF ACT. RBG.
: THBN RBTURN
: 8LSB MOVE CURSOR DOWN
B
BXIT2
L
A,24
L
DICUR2
L,O
B
A,B
CHRADR
CRSRBT
~
;1--------------------1
: I C - RIGHT CURSOR
:1--------------------1
1
.,
8468 3AOOPA
E411+CB61
8413+2801
B475 24
8416 24
B471 3E4F
8419 BC
841A 1'2'OBI
847D 3A011'A
B480 B7
RITCUR: LDA
BIT
DB
JRZ
DB
INR
A431:
INR
MVI
CHP
JP
LDA
ORA
CURATT
4,A
:DOUBBLE WIDTH MODE?
OCBH,4*8+A+40H
A431
28 H,A4 31- $-1
H
H
A,79
H
CUSTH
;IF NOT AT RIGHT BOUNDARY
: THEN MOVB CURSOR
WRPFLG
A
: IF WRAP OFF
'062
ATTACHE BIOS & BOOT; COPYRIGHT 1981, OTRONACORP.
E481+202F
JRNZ
DB
, THEN EXIT2
A45A
20H,A45A-$-1 .
B483
B486
8487
E48A
CALL
XRA
STA
JKP
OUTEXT
A
DSPCYC
LFAGN
CP/M KACRO ASSEM 2.0
CD4AE2
AF
32FAF9
C3B9El
.
; ELSE CLEARCOLOUMN
: AND DO A LINE FEED
;-----~-------------I
:1 D - LEFT CURSOR I
;1-------------------1
IS CTROL2+4 IN ESCTBL
.,
;1----------------1
; 1 E - NOT USED
I
:I----------~-~---I
.,
IS EXIT2 IN TABLE
;1----------------,
;1 F - NOT USED
;1----------------1
I
IS EXIT2 IN TABLB
.,
;1----------------1
:I
G - HOT USED
I
:'----------------1
IS EXIT2 IN TABLE
;1-------------------1
;I
H - HOME CURSOR
I
.:1-------------------1
,
E48D
8490
8491
8493
1496
3A03FA
6F
2600
2207FA
CD7182
E499+1811
HOKCUR: LOA
MOV
MVI
SHLD
CALL
JR
DB
TOPACT
L,A
H,O
CHRADR
CKPOFF
A49A
18H,A49A-S-l
;1----------------------1
;1 I - REV. LINE FEED
.;1----------------------1
I
,
B49B
B49B
E49F
84A2
84A3
84A6
E4A9
84AC
3A07FA
47
3A03FA
88
C245B4
CDF087
CD6EE2
C3F4B1
REVLF:
A49A:
LOA
MOV
LDA
CMP
JNZ
CALL
CALL
JMP
CHRADR
B,A
TOP ACT
B
UPCURl
SCRLDN
CKPOFl
CRSRET
;IF NOT AT TOP OF A.R ..
: THEN MOVE CURSOR
; ELSE SCROLL A.R
#
CP/M MACRO ASS8M 2.0
'063
ATTACHE BIOS & BOOT: COPYRIGHT 1981, OTRONA CORP.
,
·:1-------------------------------------1
:1
J - CLBAR TO ENO OF ACTIVE REGION
I
:1-------------------------------------1
·
,
CLR8ND: CALL
A45A:
JKP
E4AF CD4AE9
8482 C3F7!l
CLTONO
EXIT2
:I-----------------------~----I
:'
K - CLEAR TO END OF LINE
1
;1----------------------------1
B485 C042B8
B488+18F2
CLRBLN: CALL
JR
DB
,.
LFCLR2
A49A
18H,A49A-S-1
·
;1-------------------1
;1
L - INSERT LINE
I
;1-------------------1
B48A
848D
848B
E4CI
3A07'A
47
3A04'A
90
·
,.
INSLIN: LOA
MOV
LOA
SUB
84C2+2805
!4C4 COF6E7
!4C1+1810
84C9 CDIDR8
14CC+18l8
A4Cl:
.
JRZ
DB
CALL
JR
DB.
CALL
JR
DB
CHRADR
B,A
BOT ACT
B
:IF AT BOTTOK
A4Cl
: THEN CLEAR LINE & EXIT
28H,A4Cl-S-1
SCRDNI : ELSE INSERT BLANK LINE
EXXIT2
18H,EXXIT2-S-1
LFCLRI
EXXIT2
18H,EXXIT2-S-1
/I
:'-:-------------------1,
:I
M -
DELETE LINE
1
.:1-------------------1
/I
14CH
8401
8402
8405
3A07'A
47
3A04FA
90
DELLIN: LDA
MOY
LOA
SUB
JRZ
E406+28F1
!408 68
1409 41
E40A CDCFE7
08
MOY
MOY
CALL
JR
08
1£400+1807
CHRADR
a,A
SOT ACT
;IF AT TOP
8
: THEN CLEAR LINE AND EXIT
A4Cl
28H,A4Cl-S-l
I..,B
; ELSE SCROLl.. REGION
S,A
, UP & CLEAR BOTTOM LINE
SCRUP1
.
8XXIT2
18H,EXX1T2-S-1
,
II
;1----------------1
;I
N - SET TASS
I
.,:1----------------1
E40F 3BOA
841£1+180D
SETTA8: MVI
JR
DB
A,OAH
ASIA
18H"A51A-S-l
#064
CP/M MACRO ASSBM 2.0
ATTACHE BIOS & BOOT; COPYRIGHT 19S1, OTRONA CORP.
.,
;1------------------1
:1
a - CLEAR TABS
I
;1------------------1
E4E3 CDOFB9
E416 C3F1El
CLRTAB: CALL
EXXIT2: J!lP
CLRTBS
IXIT2
:1--------------------,
:1 P - DELETE CHAR.
.;1--------------------1
,
E4E9 CD1SE9
DELLCR: CALL
JR
E4EC+18F8
DB
DELCHR
IXXIT2
18H,IXXIT2-S-1
,
.:1-:--7-------------·----~------1
;'
Q -
INSIRT CHAR. MODE ON
;1----------------------------1
E4EE 3EOC
14FO C3FSI1
INseON: MVI
ASIA:
JlfP
, .
.
A,OCH
EXIT3
;1-----------------------------1
R - INSERT CHAR. KODE OFF
;1-----------------------------1
;1
IS IXIT2 IN ESCTBL
;1-------------------------1
;1
S - SELECT CHAR. SIZE
I
;1-------------------------1
E4F3 3809
CHRSIZ: MVI
JR
84F5+18F9
DB
·
A,9
A51A
18H,ASIA-S-l·
,
; t ------------------------,.
;1 T - SELECT CHAR. SET
I
;1------------------------1
E4P1 3E08
CRRSET: MVI
JR
14F9+18F5
DB
A,S
A51A
18H,A51A-S-l
·;1-------------------------1
,
;1
U - SELECT ATTRIBUTES
I
;1-------------------------1
E4FB 3101
·,
SELATR:
MVI
JR
B4FD+18Fl
DB
A,7
ASIA
18H,ASIA-S-l
;1---------------------------1
;1
V - SELECT ALT. LEAD-IN
;1---------------------------,
I
1
CPIK IIACRO ASSBII 2.0
'065
ATTACHB BIOS &
BOOT:
COPYRIGHT
1981, OTRONA
,..
14FF 380B
SELDIN: KVI
JR
1501+18BD
DB
A,OBH
ASIA
18H,A51A-5-1
:1--------------------------------------------1
:1
W-
LOAD TONB TABLE
<15
BYTES) &
EXECUTE
1
;1--------------------------------------------1
..
,
E503 3816
DSPSND: "VI
8505+1889
,..
A,16H
JR
ASIA
DB
18H,A51A-5-1-
:1-------------------------1
:1 X - SET ACTIVB RBGION I
:1-------------------------1
8507 3B05
SBTACR: ItVI
JR
1509+1885
DB
A,S
ASIA
18H,A51A-5-1
;1--------------------------1
;1 Y - DIRECT CURSOR KOVE
;1--------------------------1
I
IS DRCTJlV IN ESCTBL
,..
:1------------------------1 .
;I Z - RESET PARA"BTERS 1
;1------------------------1
150B CDBFB8
B50B~18D6
RBSPAR: CALL
JR
DB .
RSTPAR
8XXIT2
18H,EXXIT2-5-1
:1-----------------------1
[ - SAVE PARA"ITERS
:I
, '
1
;1-----------------------1
8510 CDIDB9
8513+1801
SAVVPR: CALL
JR
DB
SAVPAR
8XXIT2
18H,8XX1T2-$-1
,
·:1---------------------------------------1
:1
\
-
CLEAR SCREEN &. RESET PARAMETERS
I
;1---------------------------------------1
·
IS CLSCRN IN
ESCTBL
,
:I------------~-~~---------I
; I ] - RBCALL PARAMETERS
\.
I
;I-----------------------~-I
E515 CD29B9
1518 CD6EB2
E518 C3F4Bl
·,
RCLPAR: CALL
CALL.
JMP
RSTORP ;RESTORE PARAMETBRS
CKPOFl : MOVB CURSOR TO
CRSRET : PREVIOUS POSITION
CORP.
#066
CP/M MACRO ASSB!! 2.0
ATTACHE BIOS & 800T: COPYRIGHT 1981, OTRONA CORP.
·,;----------------1
;1
WRAP OFF 1
:1----------------1
A
ISlE 31FF
-
·,
WRPOFF: KVI
A,OPFH
WRPGEN
18H,WRPGBN-$-1
JR
1520+1801
DB
·:I----~----------I
,
:I
_ - WRAP ON
1
;1---------------1
1522 AF
1523 3201FA
8526 C3F?B1
·,
WRPON:
XRA
WRPGBN: STA
A5FO:
JMP
A
WRPFLG
EXIT2
;1-----------------------1
;1
' - WSFLAG SET (ON)
1
;1-----------------------1
1529 31FF
SETWS:
B52B+1801
HVI
JR
08
A,OFFH
A512
18H,A512-$-1
;1--------------------------1
;1
A - WSFLAG RISIT (OFF)
I
;1--------------------------1
152D AF
B521 32800A
B531+18F3
·,
CLRWS:
A512:
·
XRA
STA
WSFLAG
JR
DB
A5FO
18H,A5FO-5-1
A
,
;1-----------------------------1
;1 B - !lAKI SOUND FRO" TABLI I
;1-----------------------------1
·;,
·
IS XXXXXXX
IN TABLE
,
;1-----------------1
;1 C - CURSOR OFF 1
;1-----------------1
1533
B535
IS38
153A
2651
CD57B2
31FF
3202PA
B53D+18B7
·,
OFFeUR: MVI
CALL
KVI
H,81
OUT CUR
A,OFFH
STA
JR
CURCTL
08
18H,A5FO-5-1
A5PO
·,;1-----------------1
;1
0 - CURSOR ON
;1-----------------1
CP/M HACRO ASSBK 2.0
IIS3P AI'
1540 3202PA
1543 C3F4Bl
ONCUR:
• 061
ATTACHE BIOS & BOOT: COPYRIGHT 1981, OTRONA CORP •
XRA
A
STA
CURCTL
CRSRET
JKP
PAGE
CP/H HACRO ASSIH 2.0
#068
ATTACHE BIOS & BOOT: COPYRIGHT 1981, OTRONA CORP.
.,
:1--------------------------------------1
:1
:1 HULTI - CHAR. SEQUBNCS HANDLERS
:1
:1--------------------------------------1
1
t
.,
:1--------------------------------------------1
:1
02H - DIRBCT CURSOR POSITION LINE NUHBER
I
:1--------------------------------------------1
,
LINCHK: HOV
SUI
HOV
LDA
CHP
JK
LDA
CliP
.1RZ
DB
D
8546 79
8547 D620
1549 47
854A 3A04FA
1540 B8·
8541 FA6BI5
!55l 3A03PA
!554B8
8555+2803
1557 P26BI5
855A 78
B55B 3207PA
E5SE 6P
155F CD7lB2
B562 7D
1563 3229FA
8566 3103
8568 C3P8Sl
E568 31PF
156D+18P4
.1P
" LNCKJ 1: HOV
STA
HOV
CALL
HOV
LNCKJ2: STA
HVI
.1I1P
LNCKJ3: HVI
JR
D8
A,C
20H
8,A
BOTACT
B
LNCKJ3
TOP ACT
B
LNCKJ1
28H,LNCKJI-$-1
LNCKJ3
A,B
CHRADR
L,A
CHPOPF
A,L
TEMLIN
A,3
EXIT3
A,OFFH
LNCKJ2
18H,LNCKJ2-$-1
:1----------------------------------------------1
:1
03H - DIRBCT CURSOR POSITION COLUIIN NUHB8R
:1----------------------------------------------,
B56F 3A29FA
£572 FIFF
1574 CAP7El
BS77 6P
8578 79
1579D620
8578 67
E57C C3PIEl
·,
COLCHK: LDA
CPI
JZ
HOV
HOV
SUI
KOV
JKP
TiHLIN
OFFH
EXIT2
L,A
A,e
20H
H,A
CUSTH+l
,
·:1------------------1
:1
04H - NOT USED
I
:1------------------1
:
IS BXIT2 IN TABLE
·:1------------------------------1
,
:1
05H - TOP OF ACTIVE REGION
I
I
.069
CPIlf HACRO ASSe 2.0
ATTACHE BIOS" BOOT: COPYRIGHT 1981, OTRONA CORP.
:1------------------------------,
·
,
857F
8580
1582
1585
8581
79
D620
3203FA
3806
C3Fall
TACTCK: HOV
SUI
STA
HVI
JHP
A,C
20H
TOPACT
A,6
BIIT3
,
·:1---------------------------------1
:1 06H - BOTTOII OF ACTIVE REGION 1
:1---------------------------------1
,
858A
8588
1580
8590
1591
1592
1593
1594
BS95
8596
79
D620
2103'A
46
23
71
90
23
11
C3aDB4
·
BACTCK: HOV
SUI
LXI
KOV
IMX
KOY
SUB
IIX·
HOY
JIIP
·,
A,C
20H
H,TOPACT
B,M
;
H
H,A
;
;
B
H
!t,A
;
HOHCUR
GET TOPACT
STORE BOTAeT
CALCULATB IIAGACT
STORB "AGACT
;1--------------------------1
:1--------------------------1
;1 01H .. SCREEN ATTRIBUTE 1
8599
859A
B59C
859B
859'
85AO
1,5A1
15A3
15A4
15A5
15A6
15A9
15AA
15AC
ISAD
79
C620
1638
01
57
79
8601
82"
01
51
2100FA
7E
8611
B2
77
BSAI+1806
·,
ATTCHK: KOV
ADI
ANI
RLC
!tOY
MOY
ANI '
ORA
RLC
!tOY
LXI
KOY
ANI
ORA
KOY
JR
DB
,
.
A,C
20H
38H
D,A
A,C
7H
o
D,A
H,CURATT
A,II
11H
D
",A
EXXT2
18H,EXXT2-S-1
:1-----------------------------1
:1
08H - ALTERNATE CHAR. SET
.;1-----------------------------1
,
15BO
ISBl
ES83
ESB6
79
8607
32FFF9
C3F7!'}
ALTCHK: KOV
ANI
STA
8XXT2: JMP
,..
A,C
7H
CURCHR
811T2
:1---------------------------1
:1
09H
~
SELECT CHAR. SIZE
I
I
CP/M MACRO ASS8M 2.0
.010
ATTACHE BIOS & BOOT: COPYRIGHT 1981" OTRONA CORP.
.;1---------------------------1
,
85B9
E5BC
E5BE
E5BF
E5CO
3AOOFA
1681'
41
79
0630
ISC2+2802
E5C4 3ElO
E5C6 80
E5C? 3200FA
ISCA+18!A
SIZCHK: LOA
ANI
KOV
KOV
SUI
JRZ
DB
MVI
SZCKJ1: ORA
STA
JR
DB
.,
CURATT
OEFH
B"A
A"C
30H
SZCKJl
28H "SZCKJ 1-8-1
A,,10H
B
CURATT
8XXT2
18H,,8XXT2-$-1
:1------------------1
:' °OAH - SET tABS' 1
.:1------------------1
,
E5CC 79
85CD FEIB
85CF+288S
B5Dl D620
8SD3 FAP7S1
85D6 FS50
8508+2006
150A CDOFB9
850D C3FB!1
ESBO F2F7Bl
ISE3 41
B584 3A09FA
15B7 88
85B8 78
1589+3003
151B 3209FA
ISlE 8607
85FO 3C
85F1 41
851'2 3180
8SF4+1802
ISF6+C83F
ESF8+10FC
8SPA 41
ISFB 79
15FC CDDFE8
ESFF ?E
8600 BO
E601 77
B602+1828
TABCHK: MOV
CPI
JRZ
DB
SUI
JM
CPI
JRNZ
DB
CALL
JMP
TBJO:
JP
KOV
LDA
CKP
KOV
JRNC
D8
STA
T80K:
ANI
INR
KOV
KVI
JR
08
TBJ2:
SRLR
DB
TBJl:
DJNZ
DB
MOV
MOV
CALL
MOV
ORA
MOV
JR
DB
A"C
8SC
EXXT2
28H,,8XXT2-$-1
20H
EXIT2
SOH
TBJO
20H,TBJO-$-1
CLRTBS
DSPRET
8XIT2
B,A
LASTAB
8
A"B
° T80K
30H,T80K-S-l
LASTAB
7H
A
B,A
A,80H
T8J1
18H"TBJ1-$-1
A
OCBH, 38H + A
TBJ2
1OH, T8J2-$-1
B,A
A,C
GT8FAO°
A"M
B
M,.A
SCHKl
18H "SCHK 1-$-1
CP/K KACRO ASS1M 2.0
.071
ATTACHE BIOS & BOOT: COPYRIGHT 1981, OTRONA CORP.
,
·;1---------------------------1
;1
OBH - ALTERNATB LEAD IN
I
;1---------------------------1
160~ 79
1605 3206'A
1608+18AC
·,
LEDCHK: MOV
STA
JR
DB
A"e
LBADIR
BXXT2
18H,BXXT2-S-1
·:1------------------------1
,
:1 OCH - INSBRT KODE OR
;1------------------------1
,
160A 3A06'A
160D B9
1608+2005
8610 3BOI
B612 C3F8Bl
B615 3118
1617 89
8618+28F6
861A C5
861B B5
B61C CD6AB9
861F In
8620 Cl
1621 CD1DI2
1624 CD1782
8621 1A
8628 B7
8629+2001
8628 7C
862C 3208PA
862F CD51B2
8632 C3F8Bl
·
INSCHK: LDA
CliP
JRHZ
DB
INCKJl: ItVI
JltP
INCKJ2: ItVI
CliP
JRZ
DB
PUSH
PUSH
CALL
POP
POP
CALL
CALL
MOV
ORA
JRHZ
DB
MOV
STA
CALL
SCHK1: JKP
PAGB
I
LIADIN
e
IHCKJ2
20H,INCKJ2-$-1
A,l
IXIT3
A,BSC
C
INCKJl
28H,INCKJl-$-1
B
H
IHSCHR
H
B
CHKCHR
OUTCHR
A"D
A
SCHKl
2OH ,SCHK I-S-1
A,H
CHRADR+l
OUTCUR
DSPRET
CP/M MACRO ASSIM 2.0
.012
ATTACHE BIOS & 800T; COPYRIGHT 1981, OTRONA CORP.
;1------------------1
:1 ODH - GET KASK 1
;1------------------1
.,
E635 3AEAF9
8638 FBOD
E63A+200B
863C 19
8630 326AF8
E640 AF
8641 32BAF9
8644 C3FBBl
E641 79
8648" 326F8A
E64B C3F78l
GRFCHK: LOA
CPI
JRNZ
DB
KOV
STA
XRA
STA
JKP
GRCKl: HOV
~ STA
JKP
GRFCIID
OOH
GRCKI
:IIASKS FOR FILL
20H,GRCK1-S-1
A,C
MASK
A
GRFCKD
DSPRET
A,C
XKASK
8XIT2
;1-------------------1
:1 OBH - GET X 115B 1
;1-------------------1
.,
8641 19
864F FB05
B651+3803
8653 32FOF9
B656+CB51
8658 3BOI
B65A+2001
B65C AF
8650 32F3F9
8660 79
B661 OF
8662 OF
8663 B6CO
8665 32F2F9
B668 3BOF
866A C3FSII
GRFCKl: KOV
CPI
JRC
DB
STA
GRCK2: BIT
DB
KVI
JRNZ
DB
XRA
GRCK3: 5TA
KOV
RRC
RRC
ANI
STA
KVI
JKP
.,
A,C
;X KS8'S
5
GRCK2
38H,GRCK2-S-1
GRFBRR
2,C
OCBH,2*8+C+40H
A,l
GRCK3
20H,GRCK3-S-1
A
GRX+l
A,C
OCOH
GRX
A,OFH
8XIT3
:1-------------------1
;1
OFH - GBT X LSB
I
;1-------------------1
8660
B66B
1671
8672
8673
8674
8611
79
21F2F9
86
11
AF
2AF2F9
114001
861A+BD52
GRFCK2: KOV
LXI
ORA
KOV
XRA
LHLO
LXI
DSBC
DB
A,C
;X LSB'S
H,GRX
M
M,A
A
GRX
0,320
D
010H,0-S+42H
• 073
CP/M MACRO ASSBM 2.0
ATTACH! BIOS & BOOT: COPYRIGHT 1981_ OTRONA CORP •
JRC
161C+3804
161E 2F
167F 32FOF9
1682 3EIO
1684 ClF8Bl
GRCK4
38H_GRCK4-S-1
DB
GRCK4:
.,
CItA
STA
MVI
JItP
GRFBRR
A_I0H
EXIT3
:1-------------------1
;t
10H - GBT Y KSB
1
:1-------------------1
1681 79
1688 FI04
168A+3803
168C 32'OF9
168F OF
1690 OF
1691 E6CO
8693 32F6F9
1696 3Ell
8698 ClF8Bl
GRIlCK3: KOV
CPt
JRC
DB
STA
GRCKS: RRC
RRC
All
STA
KVI
JKP
A,C
GRCKS
l8H,GRCKS-S-I
GRFBRR
OCOH
GRY
A,11H
BXIT3'
.,
:1-------------------1
:1
:Y KS8'S
4
liB - GBT Y LSB
I
:1-------------------1
869B
E69C
!69F
16AO
16A1
19
21F6F9
B6
17
FBFO
86A3+300F
86A5 3AFDF9
86A8 B1
16A9+2009
E6AB 3AEAF9
16AE B1
16AF+2006
E6Bl COAIBB
16B4 C3F7Sl
1681 3D
E688+2005
E6BA CD16EC
168D+18'5
E68F 3D
B6CO+2005
3804
!6C4 C3ABB3
86C? 3D
E6C2
GRFCK4: KOV
LXI
ORA
}lOY
CPI
JRNC
DB
LOA
ORA
JRNZ
DB
LDA
ORA
JRNZ
DB
CALL
GREXT2: JKP
GRCK6: OCR
JRNZ
DB
CALL
JR
DB
GReK?: OCR
JRNZ
DB
"VI
GRCK8: JKP
GROOIT: OCR
A,C
H,GRY
:Y LSB'S
}I
K,A
240
GRBXT2
3,OH,GRBXT2-S~ 1
GRFBRR
A
GREXT2
20H,GRBXT2-S-1
GRFCKD
A
GRCK6
20H,GRCK6-S-1
PPLOT
8XIT2
A
GRCK7
20H,GRCK7-S-1
VPLOT
GREXT2
18H,GRBXT2-S-1
A
GROOIT
20H,GRDOIT-S-1
A,4
PVCTl
A
CP/M MACRO A55BM 2.0
E6C8+2004
E6CA 3B05
E6CC+18F6
E6CE 3D
E6D9+18D9
ATTACHBBIOS " BOOT: COPYRIGHT 1981, OTRONA CORP.
JRNZ
DB
GROK
20H,GROK-S-l
A.. 5
GReK8
18H"GRCK8-S-1
A
GRCK9
20H"GRCK9-S-1
FILL
GREXT2
18H,GRBXT2-$-1
DRWBLK
GREXT2
18H,GRBXT2-$-1
flVI
GROK:
E6CF+2005
8601 COB3B9
86D4+1801
86D6 CDBBIB
#074
GReK9:
JR
DB
OCR
JRNZ
DB
CALL
JR
DB
CALL
JR
DB
PAGE
CP/K KACRO ASSBK 2.0
• 015
ATTACHE BIOS & BOOT: COPYRIGHT 1981, OTRONA CORP •
·
,
:1-----------------------1
:1 128 - READ eKas RAM
1
:1-----------------------1
!6DB
E6DC
E6DF
8680
1682
1684
8681
8688
!6BB
·,
GRFCK5:
41
CD63F2
FB
E60F
F630
2180FB
11
010100
CD81FS
HOV
CALL
B,C
RD5101
EI
ANI
ORI
l.Xl
KOV
K,A
LXI
B,l
CALL
PUSHKY
BIIX2
18H,EXXX2-S-1
JR
E68E+1812
DB
·
OFH
30H
H,HRSIO
,
:1------------------------------------1
;1 13H - GET ADDRESS FOR CKOS WRITE 1
;1------------------------------------1
86'0
86Fl
E6F4
E6F6
·,
GRFCK6: KOV
STA
19
32ADFB
31U4
C3F8Bl
KVI
JIIP
·
A,e
KIMS
A,14H
EXIT3
,
;1------------------------1
;1 148.. WRITE CHOS RAil
;1---.---------------------1
86F9 3AAOFB
86FC 41
E6FO 19
E6FE
·,
GRFCK1:
eD3AF2
E101 FS
8102 C3F1S1
EXXX2:
LDA
KOV
KIRS
KOV
CALL
A,C
WR5101·
EI
JHP
EXIT2
1
B,.A
.,
:1-------------------------1
:1
ISH - FILL TONE TABLE
I
.;1-------------------------1
,
E705 2142'A
£108 35
GETSND: l.XI
OCR
JRZ
£109+280B
E70B 2A40FA
E10E 11
870F
23
DB
I..HLO
GTSNOl: MOV
IMX
B710 2240'A
8113 e3FB!)
SHLD
H,SMOCNT
M
DOSMD
28H ,DOSMO-S-l
SNOADR
M,C
H
JKP
SNOAOR
OSPRBT
,
LXI
H,SNDTBL
,
II
1£116 2154FA
1119 CD781U
E11C FB
DOSMO:
CALL
El
SOUND
CP 1M MACRO ASSBM 2.0
E710+18B3
.,
.076
ATTACHBBIOS& BOOT: COPYRIGHT .1981, OTROHA CORP.
JR
BXXX2
DB
18H JlEXXX2 -$-1
:1------------------------------------1
;1 16H - GET 1ST BYTE OF TONB TABLB I
:1------------------------------------1
E71F
8721
E724
8726
E729
3BOE
3242FA
3B15
32FAF9
2154FA
E72C+18EO
SETSND: "VI
STA
MVI
STA
LXI
JR
DB
PAGB
A,14
SHDCNT
A,15H
OSPCYC
H,SNDTBL
GTSNDI
18H,GTSHD 1-$-1
CP '" KACRO ASSBH 2.0
.077
ATTACH! BIOS
&
BOOT: COPYRIGHT 1981, OTRONA CORP.
.,
:1--------------------------------------1
DISPLAY SUBROUTINES
:1
.,:1--------------------------------------1
1728 0603
1730 CD63F2
1733 P80B
!735+2011
1737 060A
8739 CS
873A 010107
8730 21BOFB
8740 CDABB7
1743 Cl
1744+2005
8746+10Fl
8148 313F
174A C9
8748 3ABOFB
1748 S6F3
1750 32BOP8
1153 C9
113B
:I
1154 0604
1756 CD63F2
8159 P805
875B+2031
1750 2180F8
B760 3A4oFA
8763 87
1764 P5
8765+2016
8767 010BOD
E76A BB
876B 2163P2
876B 22B117
E771 EB
1712 CDASS1
1175 EB
8716 2115F2
1719 22B1E7
E71C BB
B71D 060A
E71P C5
8780
is
8781 01070C
E784 CDASE7
R8AOTH: ItVI
CALL
CPt
JRNZ
DB
ItVI
ROTK1: PUSH
TCHG:
LXI
LXI
CALL
POP
JRNZ
DB
OJRZ
DB
RDTlt2: ItVI
RBT
RDTlt3: LOA
ANI
STA
RBT
.,
.,
TIKCHG
BaU
B,3
RD5l01
08H
RDTH2
20H,RDTlt2-S-1
8,10
8
8,101H
H,HRS10
GBTCLK
B
ROTlt3
2OH ,ROnt3-$-1
ROTltl
1OH ,ROTH 1-5-1
A,'?'
HRSIO
OP3H
HRSI0
TCHG+l
RBADAT: MVI
B,4
CALL
ROSIOI
cPt
5
JRNZ, ~OoT3 '
DB
20H,RODT3-S-1
LXI
H,HRSI0
LOA
OKIFLG
ORA
A
PUSH
PSW
JRNZ
ROOT!
DB
20H,RoOTl-S-l
8,OD08H
LXI
XCHG
LXI
H,RD5101
SHLO
GBTCLK+3
XCHG
CALL
GBTCLK
XCHG
LXI
H,R58114
SHLO
GBTCLK+3
XCHG
B,IO
RDDTI: ItVI
RDOT2: PUSH
8
PUSH
H
DCHG:
B,OC01H
LXI
CALL
GBTCLK
CP/M MACROASSEM 2.0
E787 81
1788 Cl
8789+2006
E78B+IOF2
1780 Cl
E78£ 3!3F
8790 C9
8791 Fl
8792 FS
E793+200C
1795 3AACFB
B798 2AAAF8
879B 22ABF8
B791 32AAFB·
E7Al 21ACF8
87A4 71
87AS 86F3
87A7 77
17A8 Fl
17A9 C8
B7AA 28
17A8 28
87AC 34
E7AD C9
RODT3:
RDDT4:
ROOTS:
.078
POP
POP
JRNZ
DB
OJNZ
DB
POP
KVI
RET
POP
PUSH
JRNZ
DB
LOA
LHLD
SHLD
ST·A
LXI
KOV
ANI
KOV
POP
RZ
DCX
DCX
INR
RIT
ATTACH! 8IOS & BOOT: COPYRIGHT 1981" OTRONA CORP.
H
B
RDDT4
2OH,RDDT4-S-1
RDDT2
10H,RDDT2-S-1
B
A,,'?'
PSW
PSW
RDDTS
20H,RDDTS-S-l
SIeSl0
OKIBYT
SCNDS
OKI8YT
H,SICSIO
A,M
OF3H
K"A
PSW
H
H
K
1782
:=
DATCHG EQU
DCHG+l
E7AE
B7AF
E780
E783
1784
B786
1788
17B9
E1BA
1188
E1BO
B1BE
E7BF
I1CO
87Cl
ES
CS
CD1SF2
F8
160F
FBOF
Cl
11
C8
P630
11
2B
05
78
89
GETCLK: PUSH
PUSH
CALL
II
ANI
CPI
POP
POP
RZ
ORI
MOV
DCX
OCR
KOV
CKP
JRNZ
H
17C2+20EA
I1C4 C602
I1C6 C9
B7C1 47
81C8 87
B7C9+284F
I1CB 3A03FA
I1CH 6F
DB
AOI
RIT
: SCROLL ACTIVE
SCRLUP: KOV
ORA
JRZ
DB
LOA
MOV
B
RS8114
OFH
OPH
8
H
30H
K,A
H
8
A,B
C
GETCLK
20H,GBTCLK-$-1
2
REGION UP
B,A
A
LFCLRO
28H,LPCLRO-$-1
TOPACT
L,A
CP/M KACRO ASSBM 2.0
I1CF
1102
·B1D3
.1104
8105
CD1182
5D
10
3C
F818
1101+2001
8109 AF
81DA 51
B10B 05
I1DC CS
8100 CD6S88
E180 C1
81111 01
1112 SA
8183 14
1114 3118
8186 8A
..~
-.
'
1181+2002
8119 1600
1188+1088
B11D 68
1111+1820
SCRUP 1: CALL
KOV
KOV
INR
cPt
JRNZ
08
XRA
SCRUPZ: HOV
SCRUP 3: PUSH
PUSH
CALL
POP
POP
KOV
INR
KVI
CliP
JRNZ
DB
KVI
SCRUP4: OJNZ
08
KOV
JR
08
.,:
87FO 3A05FA
I1F3 81
17'4+2824
17·'6 47
87F7" 3A04FA
17FA 6F
81FB CD1lB2
81FS SO
I1FF 1D
880·0 87
1801+2002
B803 3E18
8805 3D
8806 57
8807 05
8808 C5
B809 CD65B8
B80C Cl
1800 01
E80B 7A
B80F 5A
1810 87
8811+2002
B8l3 3E18
• 019
ATTACH! BIOS & BOOT: COPYRIGHT 1981, OTRONA CORP •
CItPOFF
8,L
A,L
A
24
SCRUP2
20H,SCRUP2-S-1
A
D,A
0
B
KOVLIN
B
0
I,D
0
A,,24
D
SCRUP4
20H"SCRUP4-'-1
0,,0
SCRUP3
lOH,SCRUP3-S-1
L,I
LFCLRI
18H ,LFCLR I-S-1
SCROLL ACTIVI REGION DOWN
SCRLDN: LDA
ORA
JRZ
D8
SCRONl: KOV
LOA'
HOV
CALL
KOV
KOV
ORA
JRNZ
08
"VI
SCRONZ: OCR
KOV
SCRON3: PUSH
PUSH
CALL
POP
POP
KOV
KOV
H'GACT
A
LFCLRO
28H,LFCLRO-S-l
8,A
80TACT
L,A
CJfPOFF
I,L
A,L
A
SCRONZ
2 OH"SCRDN ~ -5-1
A,24
A
D,A
o
8
HOVLIN
8
o
A,D
E,D
ORA
A
JRNZ
08
MVI
SCRDN4
20H,SCRDN4-S-1
A,24
CP/M MACRO ASSEM 2.0
8815 3D
8816 57
8817+1088
8819 6B
.080
ATTACHE BIOS
SCRDN4: DCR
HOV
DJNZ
DB
HOV
,
BOOT: COPYRIGHT 1981, OTRONA CORP.
A
D,A
SCRDN3
10H,SCRDN3-S-l
L,B
.
:1----------------1
:I
&
CLEAR LINE L
I
.,:1----------------1
88lA CD6EE2
88lD 2600
881F 7D
8820 P6CO
8822 6F
B823 112000
8826'01E84F
8829 C5
882A+B069
88ZC OEFE
LFCLRO: CALL
LFCLR 1: BVI
HOV
ORl
HOV
LXI
LXI.
PUSH
OUTP
DB
HVI
LFCLl: OUTP
B828+B051
08
B830+10PC
E832+BD51
E834 Cl
883S+CBED
8837+E069
8839 OEPE
LFCLZ:
B838+BD59
E.83D+IOPC
883F+8059
8841 C9
.,
8842
8843
8845
8846
8849
E84A
884C
8848
884F
7D
F6CO
6F
112000
44
3E50
OEBE
B8
C8
8850+ED69
8852 OBFE
DJNZ
DB
OUTP
DB
POP
SITB
DB
OUTP
DB
MVI
OUTP
DB
OJNZ
DB
OUTP
DB
RET
CIIPOFI
H,O
A,L
OCOH
L,A
D,SPC
B,79*256+SDSPY
B
L
OBOH,L-8+41H
C,DDSPY
0
010H,O-8+41H
LFCLI
10H,LPCLl-S-l
D
0IDH,D-8+41H
B
5,L
OCBH,S-8+L+OCOH
L
OlDH,L-8+41H
C,DOSPY
E
080H,8-8+41H
LFCL2
10H,L.FCL2-S-1
8
080H,,8-8+41H
CLEAR LINE L FROM POSITION H TO BND OF LIN8
LFCLR2: MOV
ORl
tlOV
L.XI
KOV
HVI
LFCL3: BVI
CltP
RZ
OUTP
DB
MVI
OUTP
A"L
OCOH
L,A
D,SPC
B,H
A,80
C,SDSPY
B
L
:CLEAR ATTRIBUTE
OBDH,L-8+41H
C,DDSPY
D
CP/M KACRO ASSB" 2.0
8854+BD51
8856 0888
OB
MVI
SETB
OB
OUTP
8858+CBBO
885A+8069
E85C OEPB
08
"VI
OUTP
DB
R8S
DB
INR
JR
DB
885B+B059
8860+CBAD
8862 04
8863+1881
.,
8865
8866
8868
B869
886A
B86C
B860
886P
1810
8871
B874
E875
1A
F6CO
51
1B
F6CO
5'
064'
B5
C5
CD1AB8
Cl
Bl
B876+CBEA
B878+CBEB
E87A.OBBE
B87C+E051
B87B 21931'9
1881 B5
1882 C5
1883 OEPI
1885+BOB2
8881+BOA2
8889 Cl
888A 04
E88B 81
E88C+S059
E88E OSFB
1890+BOB3
B892 C9
'081
ATTACHB BIOS " BOOT: COPYRIGHT
OBOH~0-8+41H
C,SOSPY
5,1.
OCBH~5-8+1.+0COH
L
:CLEAR CHARACTER
OEOH,L-8+4'lH
C,OOSPY
B
OEOH,8-8+41H
5,L
OCBH,5*8+L+80H
B
LFCL3
18H,LPCL3-S-1
MOVE LINE D TO LINB B
KOVLIN: 1I0V
ORI
MOY
KOY
ORI
KOY
MYI
PUSH
PUSH
CALL
POP
POP
SETB
DB
SETB
DB
MOVLN1: MVI
OUTP
DB
LXI
PUSH
PUSH
KVI
INIR
DB
INI
DB
POP
IIR
POP
OUTP
DB
"VI
OUTIR
DB
A,O
OCOH
O,A
;S8T UP
A~B
OCOH
8,1.
B,19
H
B
MOYL,Nl
B
:MOVB ATTRIBUTES
H
5,0
:MOVE CHARACTERS
OCBH~5-8+D+OCOH
5,B
OCBH,5-8+E+OCOH
. C,SJ)SPY
0
08DH,0-8+41H
H,OSPBUF
H
B
C,DDSPY
08DH,OB2H
OEOH,OA2H
B
B
H
8
OEDH~8-8+41H
C,ODSPY
OEOH,OB3H
RET
:I--------------~------~------I
:I
MOVE CURSOR TO NEXT TAB
1981~
OTRONA CORPe
CP1M KACRO ASSEM 2.0
1893 3A09PA
1896 BC
E897 FAP711
E89A+2840
E89C is
E89D 44
189E 7C
B89F 8678
E8Al CDEIE8
88A4 78
E8AS B601
B8A1 41
E8A8 FE01
88AA+2813
B8AC C6F-8
B8AS 2F
E8AF 57
B880 78
E88l 04
E887+CB7F
E889+2010
E888+C801
E8BD+I0F8
B8BF 3E09
E8Cl 8B
B8C2+2817
B8C4 lC
E8CS 23
E8C6 1E
E8C7 060S
E8C9+18EC
B8CB 78
E8CCC6F1
E8CE 2F
E8CF 47
E800 1B
ESDI A7
E8D2 11
88D3 17
E804 17
88DS 80
E8D6 Bl
ATTACHE BIOS
&
:1----------------------------1
KOVTAB: L.DA
eHP
JM
JRZ
DB
PUSH
MOV
MOV
ANI
CALL
MOV
ANI
MOV
CPI
JRZ
DB "
ADI
eMA
MOV.
!tOV
INR
!tOVT8l: RLCR
B882+CB07
E8B4+10FC
B886 42
#082
08
DJNZ
DB
MOV
IfOVT82: BIT
DB
JRNZ
DB
RLCR
DB
DJNZ
08
flOVTB3: KVI
eflP
JRZ
DB
INR
TBIT:
INX
flOV
flVI
JR
DB
HOV
ADI
eflA
KOV
!tOV
ANA
RAL
RAL
RAL
ORA
POP
LASTAS
H
EXIT2
TBDON
28H,TBDON-$-1
H
B,H
A,H
78H
GTBFAD+2
A,8
1H
8,A
1
HOVTB3
28H,!tOVTB3;S-1
OF8H
O,A
A,!t
8
A
OCBK, OOH + A
MOVTBl
10H,IfOVTBl-S-1
B,D
.1 ,A
OCBH,7-S+A+40H·
TBIT
20 H,TBIT -8-1
A
OC8H, OOH + A
MOVTB2
10H,MOVTB2-S-1
A,9
E
TBOVR
28H,TBOVR-S-l
8
H
A,M
8,S
MOVTB2
18H,flOVTB2-S-1
A,8
OF7H
B,A
A,i
A
8
H
BOOT: COPYRIGHT 1981, OTRONA
CORP~
CPIlf MACRO ASSIJt 2.0
saD1
laD8
18DB
EaDC
61
C3FOBl
SI
C3F7B1
180P D620
18Bl+CB3F
88B3+CB3P
18B5+CB3F
BaB? 5F
saB8 1600
B8~A 210AFA
B8ED 19
BaBE C9
KOV
JtfP
TBOVR: POP
T800N: JKP
,
GTBFAO: SUI
SRLR
DB
SRLR
DB
SRLR
DB
KOV
KVI
LXI
DAD
RET
.
.,
18BF
18F2
18173
B8F5
18176
21FF'9
AF
0605
77
23
18P7+10FC
181'9 3E17
laFB 3204FA
B8FI "3205FA
1901 3118
B903 3206FA
1906 3141'
8908 3209FA
!908 3EOl
E90D+1804
E90F AF
8910 3209FA
1913
8916
E918
1919
210AFA
060A
77
23
891A+10FC
891C C9
ATTACHE BIOS & BOOT: COPYRIGHT 1981, OTRONA CORP.
H,A
CUSTH
H
8XIT2
20H
A
OCBH, 38H + A
A
OCBH, 38H + A
A
OCBH" 38H + A
E,A
0,0
H,TA8S
0
RESET PARAKBTBRS
RSTPAR: LXI
XRA
ItVI
RSTLl: KOV
INX
DJNZ
08
HVI
STA
STA
flVI
STA
H,CURCHR
A
B,,5
H,A
H
RSTLl
10H"RSTLl-S-1
A,,23
BOT ACT
HAG ACT
A,ISC
" L.EAOIN
RBSET OR CLEAR TA8S
,
RSTAB5: MVI
A,4FH
STA
L.A5TA8
A,l
MVI
JR
00TA8S
08
18H ,00TA85-9-1
·
·
,
CLRTBS: XRA
STA
,
"00TA8S: LXI
·
MVI
00T8J1: KOV
INX
DJHZ
DB
RET
.,
8910 21FFF9
E920 1114FA
.oa3
A
LASTAB
H,1A85
8,10
H,A
H
DOTpJl
1 OR,DOTBJ 1-9-1
SAVE SCREEN PARAHETERS
SAVPAR: LXI
LXI
H,CURCHR
D,TEKPAR
CP/M MACRO ASSEM 2.0
8923 011500
E926+8DBO
£928 C9
8929 2114FA
892C 11FFF9
£92F 011500
1#084
ATTACHE BIOS & BOOT: COPYRIGHT 1981, OTRONA CORP.
LXI
LDIR
DB
RET
B,21
OEDH,OBOH
RESTORE SCREEN PARAMETERS
,
RSTORP: LXI
H,TE!lPAR
D,CURCHR
LXI
B,21
LXI
·
LOIR
8932+8D80
£934 C9
DB
RET
·
OEDH,OBOH
CLEAR SCREEN & RESET PARA!lETBRS
,
E9~5
8938
8939
893C
8938
8940
8942
8944
8941
E94A
1940
8950
8951
1954
CDEFB8
AF
32A40A
3EA6
03E8
3El1
03FI
210000
C351B3
CD42B8
3A07FA
47
3A04FA
90
8955+2812
£951 47
B958 70
£959 861F
8958 3C
E95C FE18
8958+2001
8960 AF
8961 6F
8962 C5
8963 CDIDB8
8966 Cl
8967+10EF
8969 C9
CLSC~H:
RSTPAR
A
LINOFS
A,OA6H
SDSPY
A,23
DOSPY
H,O
CTRLZ
CLEAR TO END OF ACTIVE REGION
,
CLTONO: CALL
LFCLR2
LDA
CHRADR
B,A
!lOV
BOT ACT
LOA
SUB
8
. JRZ
CLND3
28H,CLND3-S-1
OB
B,A
MOV
A,L
CLMOI : MOV
ANI
IFH
INR
A
CPI
24
CLN02
JRHZ
20H,CLND2-S-1
DB
A
XRA
L,A
CLH02: MOV
PUSH
B
LFCLRI
CALL
POP
B
DJNZ
CLNDI
10H,CLNDl-S-l
DB
CLND3: RET
·
.,
E96A 85
896B 2194F9
896E 22£7F9
CALL
XRA
STA
MVI
OUT
MVI
OUT
LXI
JKP
INSERT OR DELETE CHAR •
INSCHR: PUSH
LXI
SHLD
H
H,DSPBUF+'l
MOVBEG
:5ET UP FOR INSERT
CP/K MACRO ASSBM 2.0
8911 3E23
B913 32AIE9
ATTACHE BIOS
MVI
STA
JR
DB
A,.23H
MODX
INSOEL
18H,INSDEL-S-1
;INX
:SET UP FOR DELETE
8976+180C
.,
8918
E919
891C
E91F
E981
as
2192F9
22E7F9
3E2B
32AIE9
DELCHR: PUSH
LXI
SHI..O
MVI
S1A
H
H,DSPBFL+l
KOVBEG
A.2BH
KODX
E984
8985
8988
E989
E98A
£98B
E98D
898E
E98F
E992
8993
E994
E995
E997
899A
AF
CDB089
81
85
70
F6CO
6F
E5
COC7B9
B1
70
5C
03EE
2AE7P9
3AOOFA
A
FILBFF
H
H
A,1..
OCOH
L.A
E99D+CB67
INSOEL: XRA
CALL
POP
PUSH
MOV
ORI
KOV
PUSH
CALL
POP
KOV
MOV
OUT
I..HLO
LOA
BIT
DB
899F+2801
B9Al 2B
E9A2 85
E9A3 COD8E9
. E9A6 3E20
E9A8'CDBDB9
89AB 01
89AC 81
E9AO D5
E9AS 70
89AF F680
E9B1 6F
£982 85
89B3 COC7E9
£9B6 81
E9B7 70
E9B8 5C
E9B9 El
89BA C3D8E9
DB
DCX
KOOX:
INOEl..l: PUSH
CALL
ltVI
CALL
POP
POP
PUSH
KOV
ORI
KOV
PUSH
CALL
POP
KOV
KOV
POP
JMP
.
89C4+l0FC
E9C6 C9
.:DCX
H
H
: INSERT OR DELETE
H
H
:MODIFIABLE CODE
H
o
OUT LIN
A,2QH·
PILBFF
0
H
0
A,L
OEOH
L,A
H
INPLIN
H
A#L
E.H
H
OUTLIN
p
2191F9
0654
77
23
FILBFF: LXI
MVI
FLBFl: MOV
&.
INPLIN
H
A,1..
E,H
SOSpy
KOVBEG
CURATT
4,A
OCBH,.4 tt 8+A+40H
INOELl
28H,INOEL 1-$-1
JRZ
E9BD
E9CO
E9C2
E9C3
BOOT: COPYRIGHT 1981. OTRONA CORP.
#085
H,.DSPBFL
B'84
M,A
INX
H
DJNZ
DB
RET
FLBPl
lOH,FLBFl-S-l
:FILL BUFFER WITH
'
RAM MONTH
CP/M MACRO ASSEM 2.0
F466 FE3F
F468 C1
F469+2832
F46B 21AEFB
F46E 78
F46F 860F
F471 2B
F472 7E
F473+2802
F475 C60A
F477 E60F
F479 B8
F47A+2805
F47C 0214F5
F47F+181C
F481 2B
F482 011210
F485 C057F5
F488 OA14F5
F488+2010
F480 C02EB7
F490 011612
F493 21BOF8
F496 C057F5
F499+2879
F498+3877
#122
ATTACHE BIOS & BOOT: COPYRIGHT 1981, OTRONA CORP.
CPI
POP
JRZ
DB
LXI
'1'
HOV
ANI
DCX
MOV
JRZ
08
AOI
CKALM1: ANI
CMP
JRZ
DB
JNC
JR
DB
CKALM2: DCX
LXI
CALL
JC
JRNZ
DB
'CALL
LXI
LXI
CALL
JRZ
DB
JRC
DB
B
VALP
28H,VALP-S-l
H,KINSlO
A,M
: 10'5 OF MONTH
OFH
H
A,M
:UNITS OF KONTH
CKALMl
28H,CKALIU -S-I
OAH
OFH
B
CKALM2
28H,CKALM2-S-I
Al..ARM,
"VALP
18H,VALP-S-l
H
8,1012H : CHOS RAK DAYIO
CHKKOS
ALARK
VALP
20H,VALP-S-l
READTM
B,12l6H : CHOS RAM HRS. & MINS.
H,HRSIO
CHKMOS
ALARK
28H,ALARK-S-l
ALARK
38H ,A LARK -S-1
:1------------------------------1
:1
VALET PENDING 1
.,:1------------------------------1
F490 3A830A
F4AO B7
F4Al C293F3
VALP:
LDA
ORA
JMZ
VALPND
A
CKVLKI
~
: DISPLAY TIKE AND DATE ?
F4A4 3A870A
F4A7 B7
F4A8+2807
F4AA AF
F4AB 32AEOA
F4AE 3287DA
LOA
ORA
JRZ
.,
VALTIM
A
DB
CHKMTR
28H,CHKMTR-S-l
XRA
STA
STA
TIMFLG
VALTIH
A
:1------------------------------1
:1
FLOPPY MOTOR SHUT-DOWN
:1------------------------------1
#123
CP/K BACRO ASSE" 2.0
F481 2A60FA
F4B4 1C
F485 85
F486+2006
F488 3EFE
F48A CD27Bl
F4BD 23
F4B! 2B
F4BF 2260FA
CHKKTR: LHLD
MOV
ORA
JRNZ
DB
ATTACHE BIOS & BOOT: COPYRIGHT 1981, OTRONA CORP.
CALL
KTRCNT :GET HOTOR TIMER
A,H
:1E5T FOR ZERO
L
CKMTRI :IF <>0 ,THEN DECREMENT
20H,CKMTR1-$-1
A,-2
: (Z BIT ALREADY SET)
LLATCH : ELSE SHUT OFF MOTORS
INX
H
HVI
CKKTRl: OCX
SHLD
H
HTRCNT
:1------------------------------1
:t
HANDLE DISK TIKE OUT
:t------------------------------I
F4C2 3AA9FB
F4CS B7
LOA
ORA
JRZ
F4C6+282A
F4C8 3D
F4C9 32A9FB
DB
OCR
STA
JRNZ
DB
LOA
F4CC+2024
F4CB 3A1CFB
F401 FE08
cPt
JRNZ
DB
F4D3+2012
F4D5 CDB5DE
CALL
BIT
DB
JZ
F4D8+CB6F
F40A CAl3EO
F400 2148F8
F4EO 3804
F4E2 COBCDE
LXI
HVI
CALL
JR
DB
F4E5+180B
DSKCNT
A
BRBAK
: DSKCNT ALREADY
28H,BREAK-$-1
=0
A
DSKCNT
: OSKCNT (> 0
BREAK
20H,BREAK-S-l
OSKCYC
8
: IF NOT WAITING FOR READY
TIMOUT , THEN ERROR
20H, TIMOUT-$-1
.
SISTAT : ELSE SENSE DRIVE STATUS
5,A
, IF DRIVE NOT OK
OCBH,5-8+A+40H
WFRBAD : THEN WAITING FOR READY ERROR
H,RCLTBL: ELSE START 1ST RECA!.
A,4
: NEW pSKCYC = 4 .
OORCSK
BREAK
18H,BRBAK-S-l
.
.,
F4E1
F4EA
F4ED
F4EF
CDABOE
3A1CFB
F6CO
321CFB
F4F2 3AFEF9
F4F5 B7
F4F6+2811
F4F8 3D
F4F9 32F8F9
F4PC+200B
F4FB 3B05
F500 03F1
F502 3A3DFA
F505 !6EF
TIKOUT: CALL
LOA
ORI
BREAK:
STA
CLRFDC : -ALL OTHER TIMEOUT ERRORS
DSKCYC
CLEAR OUT FOC
OCOH
, DSKCYC OR WITH OCOH
DSKCYC
LOA
ORA
BRKCHT
A
.
JRZ
lEND
DB
28H,IEND-S~ 1
OCR
A
STA
JRNZ
DB
lEND
20 H,18NO-S-l
MVI
A,5
OUT
LOA
ANI
seolt"
BRKCNT
BRKSAV
OSPH
CP/M MACRO ASS EM 2.0
F507 D3F1
#124
OUT
ATTACHE BIOS & BOOT: COPYRIGHT 1981, OTRONA CORP.
SCOMM
~I----------------------------------------------I
;1
EXIT SRV60 {Al.SO USED BY SRVFPY>
.;1----------------------------------------------1
,
F509
F50A
F50B
F50C
Fl
Cl
Dl
El
US:ND:
POP
POP
POP
POP
LSPO
DB
F50D+ED7B
F50F+49FA
F5l1 FB
OW
PSW
B
D
H
TBKSTK
OEDH,O?BH
TEMSTK
E1
RETI
F512+E040
.
.,
DB
PAGE
OEDH,4DH
#125
CP/M MACRO ASSEM 2.0
ATTACHE BIOS & BOOT: COPYRIGHT 198 L OTRONA CORP.
,
II
;1--------------------------------------1
:I
;1
MISC .. SRV60 SUBROUTrNES
:1
:1--------------------------------------1
:1---·------------------1
: I SOUND VALET ALARM
I
:1---------------------1
..
,
F514 3AA7DA
F511 F640
F519 FB4Q
ALAR":
..
ALJO:
F522 3C
F523 211800
CD52BD
3B21
32860A
2126F6
CD?S8l
C39DF.
F537 FE42
ALHeNT
ORI
40H
40H
cPt
JRHZ
F518+201A
F51D 21A60A
F520 3600
F526
F529
FS2B
FS2E
F531
F534
LDA
.,
ALJ1:
08
LXI
HVI
INR
LXI
CALL
MVI
STA
ALJ2:
LXI
CALL
.,
JMP
ALJ3:
CPI
JRC
F539+3881
FS3B lAA6DA
FS3E 87
."
DB
AtJ3
20H,ALJ3-Ei-l
H,ALKWAT
K,O
A
H,120
RSTAL2
A, 't'
.
VALCMO
H,ALMSND
SOUND
VAL?
42H
A1.JO
38H,AL·JO-S-1
LOA
ALMWAT
ORA
A
ALJ4
20H,A1.J4-$-1
JRNZ
F53F+2010
F541 0617
F543 CD63F2
DB
MVI
CALL
RDS'} 01
F546 B602
ANI
2
JRZ
AtJ4
F548+2807
F54A 3EFF
F54C lZ8lDA
DB
MVI
28H,AtJ 4-$-1
A,OFFH
STA
VALPND
JR
A1.J2
18H,ALJ2-$-1
F54F+18DO
F551 214038
FS54 70
DB
ALJ4:
LXI
H,14400
JR
A.L
ALJl
DB
18H,AtJ 1-$-1
MOV
F555+18CF
B,l?H
: L=40H
,
;1----------------------------------------1
:1 COMPARE CMOS RAM TIME WITH REAL TIME
;1----------------------------------------1
I
,
CP/M MACRO ASSEM 2.0
#126
ATTACHE 8IoS & BOOT: COPYRIGHT 1981, oTRONA CORP.
.,
FSS7
F558
F5SB
F5SC
F5SE
F5SF
FS60
F561
F562
FS63
CS
CD63F2
C1
F630
BE
2B
CO
04
78
B9
F564+20Fl
F566 C9
CHKMOS: PUSH
CALL
POP
ORI
CMP
DCX
RNZ
INR
HOV
CMP
JRNZ
D8
RET
B
ROSIOl
B
30H
M
H
B
A,B
C
CHKHOS
20H,CHKMOS-$-1
;1--------------------------------------1
, ;I
ADD KEY. TO END(. OF . K.EYBO~RD
B~FFER
.;1--------------------------------------1
,
F567
F568
F56B
F560
F570
F573
F574
F577
F57A
F57B
F57C
F570
F580
47
3AFBF9
FIno
217DF6
CA78E1
3C
32FBF9
2A3BFA
78
77
23
223BFA
C9
ADDKBY: HOV
LOA
CPI
LXI
JZ
INR
STA
LHLO
HOV
MOV
INX
SHLD
RET
B,A
KEYCNT
KBUFLN :IF BUFFER FULL
H,BELLTN
SOUND
: SOUND BELL, BUFFER FULL
A
; ELSE ADD KEY
KEYCNT
KEYPNT
A,B
M,A
H
KEYPNT
.,
;1-----------------------------------1
:1
PUSH KEY(S) INTO KEYBOARD BUFER
.,:I----------------------~------------I
F581
F582
F583
F584
F587
F58A
F58B
F58C
C5
85
F3
3AFBF9
2A3BFA
09
81
FEll
F58E+3800
F590 217DF6
F593 CS
F594 CD78E1
F597 C1
F598 213BFA
F59B 3BlO
F59D 32FBF9
F5AO 223BFA
F5A3 3ElO
PUSHKY: PUSH
PUSH
B
H
01
LDA
LHLD
DAD
ADD
CPI
JRC
DB
LXI
PUSH
CA~L
POP
LXI
MVI
PSHKYl: 5TA
SHLD
MVI
KEYCNT
KEYPNT
B
C
KBUFLN ... 1
PSHKYl
38H,PSHKY 1-$-1
H,BELLTN
B
SOUND
B
H,KEYBUF+ 16
A,KBUFLN
KEYCNT
KEYPNT
A,16
I
CP/M MACRO ASSBM 2.0
F5A5 91
F5A6 213AFA
F5A9 85
F5AA+CBOO
F5AC+!D42
F5A! 01
F5AF 4F
'127
ATTACHE BIOS
SUB
L.XI
PUSH
RL.CR
OB
OSBC
OB
POP
C
H,KEYBUF+15
MOV
C,A
H
B
OCBH, OOH + B
B
OBDH,B*8"'42H
0
L.DOR
F5BO+EDB8
F5B2 81
F583 Cl
F584 1128P'A
F581+BD80
F589 F8
F58A C9
08
POP
POP
L.XI
L.OIR
DB
81
RET
PAGB
&
OEDH,OB8H
H
B
O,KEYBUF
OEDH,OBOH
BOOT; COPYRIGHT
1981~
OTRONA CORP.
:MOVE OLD CHARS. UP BY Be
CP/M MACRO ASSB" 2.0
#128
ATTACHE BIOS & BOOT: COPYRIGHT
1981~
OTRONA CORP.
:1-------------------------------------1
BAUD TABLE
.:1-------------------------------------1
:1
F5BB
P5Cl
F5C7
P5CD
F5Dl
F506
F5DB
F5BO
F5B5
P5EA
. F5BP
F5F4
F5F9
F5FE
F603
F608
F60D
F612
F617
F6lC
F621
,
370D57AF57BTABL:
5780574057
5710570857
57025701
20202037B5BNKTBL:
20203131BO
3133342EB5
20203135BO
20203330BO
20203630BO
.2031.3230BO
20323430BO
20343830BO
20393630BO
31393230BO
204F4B20AOBELTBL:
204F4646AOKNKTBL:
434C4943CB
2044494ECB
42454550Bl
4245455082
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
t,
37H,ODH,,57H,OAFH,,57H,8FH
57H,80H,57H,40H,,57H,20H
57H,,1 OH,,57H,08H ,57H,04H
57H,02H,57H,0 1H
7' ,'5'+80H
, 11 ' , , 0' +8 08
'134.' ,'5'+80H
, 15','0'+80H
, 30' , , 0' +808
" 60','0'+80H
.' 120' ,,'0'+8QH
, 240' ,'0'+80H
, 480' ,"0'+80H
, 960' ,'0'+80H
'1920' ,'0'+808
, ON ',' '+80H
, OFF',' '+80H
'CLIC', 'K'+80H
, DIN' ,'K'+80H
'BEEP' ,'1 '+80H
'BEEP' ,'2'+808
;1------------------------------1
SOUND TABLES
:1
;1------------------------------1
,
·;K8YCLICK
F626 000320201FALKSND: DB
F630 87
DB
,.
F631 00
TONPER: DB
·
·
,
F632
F641
F64A
'650
'65A
'65F
·)66A
~66E
'679
F67D
F687
000000000FNOTON8:
010400000FCLICK:
471D20F6AF
020200000FBEEP:
3256203E25
020000000F"IDA:
00000000
020000000FAUP30:
00000000
020200000FBELLTN:
3256203825
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
o,3,,20H,,20H,1 FH,O ,0"OF8H,,0 ,41H
87H
o
0,0,0,0,OF8,OFH,OFH,OFFH,0,0,0,,0,0,0,,0
;SN APS
47H"lDH,20H,OF6H,OAFH,OEDH
2 ,2,0,0 ,OFH ,OFH,OFH,32H,54H,20H :SHORT DINK
32H,56H,2 OH, 38H,25H
2,0,0 ,0,OFH,OFH,OFH,OF8H, 1FH,O"OFEH
0,0,0,0
2,0,0,,0 ,OFR ,OFH,OFH,OF8H,1 FH,2 ,OFAH
0,0,0,0
2,2,0,0,OFH,OFH,OFH,32H,54H,20H : BELL TONE
32H,56H,20H,3EH,25H
1, 4,0,,0,0 FH ,OFH "OPH ,,0 ,80H
;1----------------------------------------------1
:1
AL.TERNATE CHARACTER SET TRANSLATION TABLE
;1----------------------------------------------1
.
r
F68C 40
'680 00
CHRTBL: DB
DB
40H
OOH
:0 : STANDARD SET
:1 = FORKS RUL.ING
CP/M KACRO ASSBM 2.0
F68B 80
F68F CO
F690 00000000
• 129
ATTACHE
08
80H
oeOH
0.0,0,0
DB
DB
8IOS
:2
& BOOT: COPYRIGHT 1981, OTRONA CORP •
= GREEK
& LANGUAGES
:3 = HATH & WORD PROCESSING
:1-----------------------------------------------1
:1
KIYCODE
TRANSLATION TABLE CWORDSTAR VERSION) I
:1-----------------------------------------------1
.,
F694
F69C
F6A4
F6AC
F684
F6BC
F6C4
F6CC
08090AOOOOKBYTBL:
2000001BOI
5121402324
2829223A3C
7141424344
48494A4B4C
5051525354
58595A1B7C
.,
'60<4
F60C
F614
F6EC
F6'<4
F6FC
',04
F10C
08090AOOOO
200000FF93
IB85C803B3
B6A327382C
000102030<4
08090AOBOC
1011121"314
18191AIBIC
NO CTRL, SHIFT
DB
DB
DB
DB
DB
DB
08
DB
CTRL,
DB
DB
DB
DB
DB
DB
DB
.
,
08
;BS TAB LF NA NA CR NA LOCK
;SP NA NA ESC LFT RT UP ON
5IH,21H,40H.23H,24H,25H,26H,2AH ;" EXCL i#S%&28H,29H,22H,3AH,3CH,2BH,3EH,3FH ;O":<+)?
18H,,418,42H,43H,448,45H,46H,47H ; .. ABCDBFG
48H,49H,4AH,4BH,4CH,4DH,4EH,4FH ;HIJKLMND
SOH.S 1H,52H,5 3H.54H,55H,56H,57H ;PQRSTUVW
8,9"OAH,0,0,00H,0 ,OFEH
20H,0,,0,IBH,I,6,1AH,17H
58H,59H,5AH,7BH.1CH,7DH,5FH,7
;XYZ{ Il_OEI.
SHIFT
;8S TAB L.F NA NA CR NA LOCK
:SP NA NA ESC LFT RT UP ON
lEH,,85H,OC8H,OD3H,OB3H.OBOH,OA2H,OABH ;" BXCt i#$"&*
OB6H,OA3H,27H,3BH,2CH,OCH,2EH.2FH
;O":<+)?
0,1,2,3,4,5,6,7
:CTRL.-.... A8CDEFG
8.,f,9,OAH,OBH,OCH,ODH,OBH,OFH
:CTRL.-HIJKLMNO
8,9,OAH,0,0,OOH,0,OFDH
20H,0,0,OFFH,93H,84H,92H.83H
lOH,11H,12H,13H,14H,15H,16H,17H
~CTRL.-PQRSTUVW
18H,19H"lAH,lBH,,1 CH,lDH,OCH,19H ;CTRL-XYZ{I }_OEL
NO SHIFT OR CTRL
F?14
F?IC
F724
F12C
F134
F73C
'744
F14C
08090AOOOO
2000001B08
303132333<4
3839213B2C
6061626364
68696A6B6C
7071727374
18191A5B5C
DB
8,9,OAH,O,Q,ODH,Q,OP,EH
:BS TAB LF HA NA CR NALOCK
20H,0,0,lBH,8,OCH,OBH,OAH
;SP NA NA ESC LFT RTUP ON
30H,31H,32H,33H,34H~35H,36H,37H ;01234567
38H,39H,27H,3BH,2CH,3DH,2BH,2FH ;89';,=.1
60H,61H,62H,63H,64H,65H,66H,67H ;'ABCDEFG
68H,69H,6AH,6BH,6CH,6DH,6EH,6FH ;HIJKLMNO
DB
DB
70H,71H,7 2H,7 3H,7 4H ,75H,76H,77H ;PQRSTUVW
78H,79H,7 AH,5BH ,5CH ,5DH,2DH,7FH ;XYZ(\J-DEL
,08
08
DB
DB
DB
CTRL, NO SHIFT
F75<4
'75C
F164
F76C
F174
F71C
FC09FBOOOO
200000FF01
CBIIOAOFIO
D8C9273B2C
0001020304
08
DB
DB
DB
"84 1011121314
DB
DB
DB
F78e 18191AIBIC
DB
08090AOBOC
.
OFCH,9,OFBH,O,O,ODH,O,OFDH
20H,0,0,OFFH,,1,6,12H,3
;BS TAB LF NA NA CR N'A ~LOCK
;SP NA NA ESC, LFT RT u~~ ON
OCBH,11H,OAH,OFH,10H,OBH,16H,2
:01234567
OD8H.OC9H,27H,3BH,2CH,81 H,ZEH,2FH ;89 ':~=./
00,01,02.03,04 ,OS ,06,07
:CTRL- 'ABCDEFG
08,09 ,OAH,OBH ,OCH,OOH ,OEH ,OFH
;CTRL-HIJKLHNO
lOH,11H,12H,13H,14H,15H,16H,17H :CTRL-PQRSTUVW
18H,19H,1 AH, 1BH,1 CH, 1DH.1 FH, 14 H:CTRL- )(VZC\ ]-DEL
KEYPAD TABLE
,
F194 2A2C3D2E2FPADTBL: DB
2AH,2CH,30H,2EH,2FH
:* ,=.1
CP/M MACRO
ASSBM 2.0
F799 6061626364
F7Al 6835313233
F7A9 2871727374
M130
ATTACHE BIOS & BOOT: COPYRIGHT 1981, OTRONA CORP.
DB
DB
60H,61H,62H,6 3H,64H,65H,6 6H,67H ;' ABCDEFG
68H,35H,31H,32H,33H,30H,6EH,36H :HS1230N6
DB
28H,71H,72H,73H,74H,34H :+CRST4
PAGE
CP/It MACRO ASSBK 2.0
.131
ATTACHE BIOS & BOOT;
C~PYRIGHT
1981, OTRONA CORP.
,
o
:1------------------------------1
:I
ESCAPE SEQUENCE VECTOR TABLE
I
.;1------------------------------1
,
F7AF
F781
F783
F785
F187
F789
'788
'780
F7BF
F7Cl
F7C3
F7C5
F7C7
'7C9
F7CB
F7CD
F7CF
F1Dl
F7D3
F705
F707
F1D9
F70B
F7DD
F1DF
F1KI
F7E3
F7KS
F717
F7K9
'7BB
F180
F7EF
F7Fl
F7F3
F7F5
F7F7
F7F9
F7FB
F7FO
F7FJI
F801
F803
F805
F801
'809
F80B
F80D
F80P'
F811
AIE3
ACI3
C9E3
CDB3
0213
0613
DBI3
B813
BOl3
F483
F883
0114
1414
1914
1014
33B4
3784
3884
5214
6884
9CI2
9883
9883
9883
8084
9884
AFB4.
BSB4
BAB4
CBB4
OF84
8314
8984
EBB4
F781
1'384
F7B4
FBE4
FF84
03ES
0785
1984
OB85
1085
3589
1585
IBBS
22E5
29E5
20B5
ESCT8L: OW
DW
DW
DW
OW
OW
OW
OW
OW
OW
OW
OW
OW
DW
DW
OW
OW
OW
DW
DW
DW
OW
OW
OW
OW
DW
OW
DW
OW
OW
OW
OW
OW
OW
OW
OW
OW
OW
OW
OW
OW
OW
OW
OW
OW
OW
OW
OW
OW
OW
PPOINT : PLOT POINT
PYCTOR : PLOT VECTOR
BLKDRW : BLOCK DRAW
CLRGRF : CLEAR GRAPHICS MEM.
BLKFIL : BLOCK FILL
SBTlt5K : SET MASK FOR BLOCK FILL
DSBGRF ; DISABLE GRAPHICS
ENBGRF ; ENABLE GRAPHICS
PTBRT
; SET TO PLOT BRIGHT
PTORK
; SET TO PLOT DARK
REDDAT : READ DATE FROM CLOCK CHIP
CltOSPN : SET PRINTER BAUD FROM CHOS RAM
CMOSCM ; SET COMM. BAUO FROM CMOS RAM
DRCTMY : DIRECT CURSOR MOVEMENT
RBDTI" : READ TIME FROM CLOCK CHIP
REDRAM : READ CMOS RAM
WRTRAM : WRITE CHOS RAM
UPCUR
: CURSOR UP
DWNCUR : CURSOR DOWN
RITCUR : CURSOR RIGHT
CTROL2+4: CURSOR LEFT
NFGESC ; -- NOT USED -NFGBSC : -- NOT USED -NFGESC : -- NOT USEO -HOKCUR ; CURSOR HOKE
REYLF
: REVERSE LINE FEED
CLRBND : CLEAR TO END OF ACTIVE REGION
,CLRELN : CLAR TO" END OF. LIME
INSLIN ; INSERT L.INE
OELLIN : DELETE LINE
SETTA8 ~ SET TAB
CLRTA8 : CLEAR TAB
DELLCR : DELETE CHARACTER
INseON : INSERT CHAR. MODE ON
8X112
; INSERT CHAR. MODE OFF
CHRSIZ : SELECT CHAR. SIZE
CHRSET ; SELECT CHAR. SET
SELATR : SELECT CHAR. ATTRIBUTE
SELDIN : SELECT ALi. LEAD-IN
DSPSND ; SOUND GENERATOR
SETACR : SET ACTIVE REGION
DRCTMV : DIRECT CURSOR MOVE
RESPAR : RESET PARAMETERS
SAYVPR : SAVE PARAMETERS (SYSTEM USE ONLY)
CLSCRN : CLEAR SCREEN & RESET PARAMETERS
RCLPAR : RECALL PARAMETERS (SYSTEM USE ONLY)
WRPOFF : WORD WRAP OFF
WRPON
: WORD WRAP ON
SETWS
: SST WSFLAG (ON)
CLRWS
: RESET WSFLAG 0 =OKI
: KEYTONE
: BRIGHTNESS LEVEL
: BELL TOGGLE
: VOLUME LEVEL
: SHIFT LOCK
: VALET INHIBIT FLAG
: SOUND TABLE FOR USER TONES
: R/W COMMAND FOR VALET DISK 10
: t# OF A.U. "S TO RBAD IN VALET DISK 10
f
':';
,;'~RAPHICS"
~FA65
,GRX12:
:.05
FA67
'FA69
¥ll,6A
"GRX1?:,X'·,DS,
STRX1: OS
2
'2 ,
1
STRX:
1
...,
DS
"F~6a
PIXBIT: OS
'FMC
;' ,lPIXBT2: OS
VARIABLES
: USED IN FILL ROUTINE
1
1
FLOPPY VARIABLES
ALL VARIABLES FROM HERE TO THE END MUST REMAIN AS THEY
ARE NOW. THIER RELATIVE POSITIONS MUST NOT CHANGE.
FA6D
"·FA6F
FA70
'FA'l
FA7:2
MTRCNT: OS
'. ;';rmSUL T: DS
~TrSK'CMD: DS
UNACNT: DS
UNADSK: DS
2
1
1
1
1
; MOTOR TIPlER
: # OF BYTES TO GET FROM U765
: DISK COMMAND
:UNALLOC REC CMT
: LAST UNALLOC DISK
#139
ATT ACHE BIOS &. BOOT: COPYRIGHT 1981, OTRONA CORP.
UNATRK:
UNASEC:
HHFLGS:
SAVECH:
sEKOSK:
SEKTRK:
SEKSEC:
HSTDSK:
H5TTRK:
HSTSEC:
SEKHST:
HSTACT:
HSTWRT:
HSTHD:
ERFLAG:
RSFLAG:
READOP:
WRTYPE:
OItAAoR:
DIRBUF:
RECHT:
ALVO:
CSVO:
ALVI:
CSV1:
05
OS
OS
OS
OS
OS
OS
OS
OS
OS
OS
OS
OS
OS
OS
OS
OS
OS
OS
OS
OS
OS
OS·
OS
OS
: LAST UNALLOC TRACK
2
: LAST UNALLOC SECTOR
1
; HOME BEEN HERE BEFORE FLAG
NDISK
1
; SEEK DISK NUMBER
1
2
: SEEK TRACK NUMBER
: SEEK SECTOR NUMBER
1
: HOST DISK NUMBER
I
: HOST TRACK NUMBER
2
: HOST SECTOR NUMBER
1
: SEEK SHR SECSHF
I
: HOST ACTIVE FLAG
1
: HOST WRITTEN FLAG
1
1
: HOST Ho
Source Exif Data:
File Type : PDF
File Type Extension : pdf
MIME Type : application/pdf
PDF Version : 1.3
Linearized : No
XMP Toolkit : Adobe XMP Core 4.2.1-c043 52.372728, 2009/01/18-15:56:37
Create Date : 2013:04:02 13:17:01-08:00
Modify Date : 2013:04:02 14:09:58-08:00
Metadata Date : 2013:04:02 14:09:58-08:00
Producer : Adobe Acrobat 9.52 Paper Capture Plug-in
Format : application/pdf
Document ID : uuid:7bdf7cf5-8db3-4dfe-b104-fde0bdc4b3cd
Instance ID : uuid:1068fa84-bf59-4804-a93e-ab89e3aeeae2
Page Layout : SinglePage
Page Mode : UseOutlines
Page Count : 140
EXIF Metadata provided by EXIF.tools