Operating with non-certified peripherals is ... Xerox Corporation reserves the fI~ht
to make improvements to products without .... SA1403D Manual Reprint.
TECHNICAL REFERENCE MANUAL
Xerox Professional Computer
1984 Xerox Corporation'.
610P72384
Reprint permission granted by Zilog, Inc . forZiiog Reprint on pages 49-108. Reprint permission granted by ShugartAsso'iat~$ fp.r,~A 14030 Controller Reprint on pages "
~
iv.·
-
.
,.' . _ .
•
253-278. Reprint permission granted bYVVest~rn 'plglt,ill for .WesternOigltal Reprint on pages 279302. ZlIog,
Z80~,
and Z80-A are trademarks of Zllog, Inc., WIth whom the publisher
associated. 6086 is a trademark of Intel Corporation. IBM, IBM PC, and IBM PCXT are trademarks of International Business Machines. Xerox~,
820'·,820-11'·, and 1618· are trademarks of Xerox Corporation. M
CPIM
3 ~. f'\
II'
V\ ,...
::r ttl
3
OJ
,...~. '"
"" .u
...,... " .. IA-S-
orr.
iiill "".lI".c.-,1.!~~·-"'-'
I.U-'
_ _ _ _ _-B:
.... *'
.............. ... I'"
.n-flt
"109
all
-It PI"
.0-101. ~
...
M!!2
~.'$
--
~"f1
J'"
::!.~D7 : ::::
...,
"., .!!t • • -1
£De . . . .
+rf""'"-o ............. ..,.,
...·..c.;!CII'''''_-=-I • .."c-c, .....,...-,_.... _
~.\o .......... ~
,-..r51. ....... . . . .~.o,c!.
...,
• .... ·IC·•• ft •
...,·1' .• ·.•:...
:
..! .•I''''''':X>':-;'.'A~!
~~~2:~I.;~~~i'
u
..
u:::.·,r.J7·"i ••,. ~'U •• ~ •••
...V"v"_...
:.:~
-.....,'--I---------.....L---'."' __________ .. ~ __.."."
IIJ1'I,JD'
lAIr
,.,
ell
-
_-_.
~~_~~
.....
_.~..cC_"_5 ~,.
~
r~
u.:.S ••t
•
....
,-.
...• "'!!!!-r--+_.L._-+--..l..--t---I
~.~~.""U._ u!,.. .... I"'.r.
...
.-
:;:.~
-=~
.,
...----..J
, __, ' - : ; IC ... ".~..:'I#._ ...
~:..==3
~.
...
.III·"_U ~ ,JI,·tU -~
.......
Jl1.",r ~.~,
~
E>::;r::;~~~~,:;;'...~~~ N7":'~'" MJWe._~
"
",
u
'",
"
.&
•
..,w_--..crlnulIOI.lt
"l1l..Sot:
:!Gr ~
-.,j
i~J
SMIII ...,. .. ,
~
~
lSli
~
~ ~
~
~ ~
~ ~
~
'.
4>'7
.2!..!.!!I..L
fu
.lI/..I.a
~ ~ ~ ~c
~ ~
~4
••·... IEl......+----!.·.!I :". )
ou
'"
. .1 .... 1'·'
[Dr""'''----
............ I£DI-'mm"'·=·---
--I---t-1~I'----------.J
IV
o
...
10,."
__ ,-.c;",'W'-T"--
- -I -_~'_;~~i:¥=:¥gl'l
Specifications Print Speed:
Up to 40 characters per second with metalized pri ntwheels.
Character Set:
88, 92, or 96 printable characters per printwheel. Switch-selectable program support for APL and all English language printwheels.
Printwheels:
88, 92, 96 character Xerox - Metal 96 character Diablo - Plastic
Character Spacing:
la-pitch 10 characters/inch (3.94 ch/cm) 12-pitch = 12 characters/inch (4.72" chiem) 15-pitch 15 characters/inch (5.91 chiem) Proportional Space (PS) - see HMI, page 241.
Column Spacing:
1/120 inch (.21mm) minimum.
Print Line:.
13.2 inches (33S.3mm) 132 columns la-pitch 158 columns 12-pitch 198 columns 15-pitch
Print Buffer:
2688 bytes.
Paper Width:
16.53 inches (419.9mm) maximum - friction feed without Top Paper Out switch. 16.00 inches (406.4mm) maximum - friction feed with Top Paper Out switch. 15.25 inches (387.4mm) maximum - full width with optional forms tractor (14.75 inches/-374.7.mm between holes). 3.25 inches (82.55mm) minimum with forms tractor (2.75 inches/69.85mm between holes).
Carriage Speed:
400 msec maximum fc;>r 13.1 inches (332.77mm) of motion.
Tabulation:
Left or right.
Line Spacing:
1/48 inch (.53mm) minimum.
Paper Feed:
Bidirectional, except with unidirectional forms tractor and unidirectional pin feed platen.
20 & 40 CPS Printers
= =
251
Paper Feed Speed:
4 inches (101.6mm) per second plus 40 msec (typical) settling delay time .
Paper Thickness:
.000 - .0tO inch (.2S4mm) at low setting (1-3 part forms) .010 - .027 inch (.254 - .686mm) at high setting (46 part forms)'.
Sensors:
End of ribbon, paper out, and cover open.
Other Features:
Self test; host program control through escape sequences; data receive/transmit speed selection.
Power Requirements:
Strappable for operation from nominal 100, 120, 220, or 240 volt (+ 10%/-15%) AC inputs, 49-61 Hz. 350W maximum power consumption. Factory preset for 120 VAC. Check your printer's serial plate for proper input power.
Cabling Requirements A standard RS-232-C interface cable is required for connection between the screen and the printer. This cable must be equipped with DB-2SP connectors with the following pins connected: PIN CCITT NO. DESIG. 1 101 103 2 104 3 4 105 6 107 7 102 20 108
TELCO DESIG. AA BA BB
cA CC AB CD
DESCRIPTION Protective Ground Transmitted Data Received Data Request To Send Data Set Ready * Signal Ground Data terminal Ready
* Pin 6 must be HI to receive or transmit data.
')0 1t
/1('\
rpc;. 'Printl'>ro;.
1.0 INTRODUCTION The SA 14030 Controller consists of a micrprocessor based controller with on-board data separator logic and is able to control a maximum of four drives. The drives can be any combination of Shugart SA 1000 fixed disk drives. SA800 floppy disk drives. or SA850 floppy disk drives. The floppy disk track formats are compatible with IBM 10/20 track formats. The SA 14030 can be mounted on the SAl 000 drive. Commands are issued to the controller over a bidirectional bus connected to the host computer. The data separator/"serdes" logic serializes bytes and converts to FM/MFM data. and deserializes FM/MFM data into 8-bit bytes. Due to the microprogrammed approach utilized in the controller. limited diagnostic capabilities are implemented. This methodology increases fault isolation efficiency and reduces system down time. Error jetection and correction will tolerate media imperfections up to 4-bit burs't errors. :'-lOTE: This device utilizes neaative logic (i.e .. OV
= logical 1)
1.1 SA1403D CONTROLLER FeATURES OVERLAPPED SEEK
In multiple drive configurations the host can issue seeks to different drives without waiting for the fi rst drive to complete its seek.
AUTOMATIC SEEK AND VERIFY
A seek command is implied in every data transfer command (READ. WRITE CHECK. etc.). If the heads are not positioned over the correct cylinder. a seek is initiated and a cylinder verification is performed after the seek completes.
FAULT DETECTION
Three classes of fault detection are provided for fault diagnosis: 1) Disk related faults. 2) Controller related faults. 3) Host comma~d or 110 timing faults. Fault detection is available from the interface as a status message and is also visibly displayed on a row of status LED's on the controller PCB. .
AUTOMATIC HEAD AND CYLINDER SWITCHING
If during a multi-block data transfer the end of a track is reached. the controller automatically switches to the next track. If the end of a cylinder is reached. the controller issues a seek and resumes the transfer.
DATA ERROR SENSING AND CORRECTION
If a data error IS detected during a disk data transfer. the controller indicates whether or not it is correctable. If correctable, it can be automatically corrected. (This applies to the SAl 000 only. CRC error detection is used on floopy disc drives.)
LOGICAL TO PHYSICAL DRIVE CORRELATION
Logl~~. Unit Number (LUN's) are independent of physical port numbers. All accesses specify LUN's.
ON BOARD SECTOR BUFFER
A sector buffer is provided on the controller to eliminate the possibility of data overruns during a data transfer.
EFFICIENT HOST INTERFACE PROTOCOL
A bidirectional bus between the controller and host provides a simple. yet efficient communication path. In addition. a high level command set permits effective command initiation.
SECTOR INTERLEAVE
Sector interleaving is programmable with up to a 16 way interleave.
000 PARITY
The 8 data bits on the interface bus can have odd parity. Depending on user preference. parity can be disabled.
FIXED SECTOR SIZE
The sector size is fixed at 256 bytes of data for the SA 1000.
.
·SA 1403D Controller Reprint
-
253
~~UMBER
OF
DRIVES
The controller will connect to a maximum of four (4) drives. The drives can be any combination of SA 1000' S andlor SA850's andlor SA800's
1.1.1 OPTIONAL FEATURES MICRO DIAGNOSTICS
A set of diagnostic PROM's are available to allow stand alone diagnostic testing of both drive and controller. Reference Appendix A.
1.1.2 SYSTEM CONFIGURATION The controller and data separator comprise a single PCB that can be mounted onto the SA 1000 drive. A maximum four (4) drives may be .connected as shown in Figure 2..
of
1.2 TRACK FORMATS AND CAPACITY A) C) 0)
32 sectors of 256 bytes per sector (SA 1OOOonly). 26 sectors of 256 bytes per sector (Floppy only). 26 sectors of 128 bytes per sector (Floppy only.)
IBM 10/20 TRACK FORMAT
Track format for Floppy Disk drives can be in real time. The track formats are: 1) Single density, single sided 2) Single density, double sided 3) Double density, single sided 4) Double density, double sided
26 SECTOR
32 SECTOR
SA850
2001 4003
N/A N/A
SA1002
N/A
16383
SA10Q4
N/A
32767
SA800
sel~cted
under program control
TABLE I. FormatlCaoacity Relationship MaxlmLlm Logical Sector Address Shown 2.0 SPECIFICATION SUMMARY 2.1 ENVIRONMENTAL LIMITS
Temperature FIC Max. Wet Bulb Relative Humidity Altitude
254
Operating
Storage
32°/0° to 131 °/55°
-40°/-40° to 1670175°
85°F
non condensing
10% to 95%
10% to 95%
Sea level to 10,000 ft
Sea level to 15,000 ft
SA 14030 Controller Reprint
2.2 POWER REQUIREMENTS Three power supply voltages are required for the SA 1400 series controllers. The maximum current reqUirements are as follows:
+ 5VDC :!: 5% at 4.6 Amps - 5VDC :!: 5% at 0.5 Amps + 24VDC :!: 10% at 0.1 Amps Power is applied to the SA1400 series controller via J10 which is a 6 pin AMP Mate-N-Lok conl1ector (PIN 1-380999..Q) mounted on the component side of the board. The recommended mating connector, P10, is an AMP PIN 1-480270-0 utilizing AMP pins PIN 60619-1. The J10 pins are labeled on the connector. Figure 1 shows the pin assignments.
... 24V RETURN ·5VDC
... SV
RETURN~
CD 0 CD 0 ®
o
a
(J)
:J
a.. )(
m
Oper'atillU ::;y~tem fo.' tile XEROX 820-11 Code Generatioll ('ollt.ol Macros Definitions
Bdlc(lni.l~
155 156 157 158 159 160 1ti1 162 163 164 165 166 167 168 169 170 171 172 173 174 175· 176 177 178 179 180 181 1B'L 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209
m
VI
MACRO-BO 3.44
09-Dec-81
Rom code placement macros. The Cownon Segment holds the non-resident (banked) portion of the monitor. This segment is not copied to ram. The Data Segment holds the resident portion of the monitor. It is moved to ram at location MONITR during initialization. The Coele Segment holds the various Transient Commands. Each command is loaded from the ROM to the TPA when It Is executed. The fol lowing macros keep it all straight. below - Generate code for rom below. below
\
macro segment b endm
; ;enable cownon segment
;;
above - Generate code for ram above.
above
macro segment d endm
;;enable data segment
Overlay - Generate code for transients. overlay macro tloc defl addr equ segment endm
addr tloc+$-cloc tloc+bloc+cloc-Monitr c ;;enable code segment
bseg - activate cOlllmon segment. bseg sega ;;
lIIacro common defs 'def I endm
ICOMROMI comres $
segment - Act ivate Segment.
segment macr'o update ~&space defl s&seg .phase endm
s -1
s&loc
; ;update active phase counter ;;set enabled segment active ; ;actlvate segment code placement ;;set absolute segment location counter
update - Update Phase Counters. update
macro If
bspace
m (jI
Eialeones Op8f'C!lill[J System for tile XEROX 1120-11 Colle Genen'.ltiol1 COlltrol Macros D.,finitions 210 211 212 213 214 215 216 217 . 2111 219 220 221 222 223 224 225 226 227 220 2L9
230 231 232 233 234 235 236 237
eOlllres
MACRO-UO 3.44 d,ef I ,endi f 'i rpc if if
$-rom+l001l-3 x, x&space cspace tpal It ($-cloc) $-cloc
if defl endif else x&loc defl $ endif x&space defl 0 . depllase endif endm endm
tpal
1l1lOlJ FOOO
0000 0000 0000 0000 OOOU OOUO
bloc dloc tloc tpal bspace cspace dspaee COIllI~es
09-Dee-ElI
iii
f
segment active
; ;save seglllent address i ; c I ear segment active ; ; revert to relocatable
;establisll non-resident code base ;estat>1 isl) resident code base ;establise Transient code base ;establish maximum transient length ;preset common segment inactive ;preset code segment inactive ;preset data segment inactive ;preset cOlluuon base address
def 1 def 1 defl defl defl defl defl defl
rom monitr 0 0 0 0 0 0
subttl page
Ram Loader' for Testing Only
»
u '0 ro
::l 0X
m
m
--..J
Bdlcone>s Ope>raliliU System tor' tIle> XEROX 1l20-I1 Ram Loader for T~stiny Only 231l 2:39 240 241 242 24:3 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 2bU
0000 0003 0006 00 DB 0009 OOOA 000f:!
oooe
0000 OOOE OOOF 0011. 0012! 0014! 0015'
bseg dets
+
DODD! OOOO!
MACRO-BO J.44
09-Dec-BI
comres
entry: 21 OOFO! 17FF IE 00 7E 23 8:3 5F OB 7B BI 20 F7 7B EO 44 77 C3 (lOOO
xcks:
oI
xcksl:
Id III Id Id inc add Id dec Id or jr Id neg Id jp
hl,bbase":movln bC,romsiz-l e,O a,(hl) hI a,e e,a bc a,b
subttl page
System Initialization
;preset checksum
c nZ,xcksl a,e
;store twos complement of checksum
(h I) ,a
;store checksum
o
m
00
»
'0 '0 /l)
::l
0X
m
Balcones Oper'at ill!) System tor tl"le XEROX 820-11 System Initial iZot ion :.161 262 263 264 265 266 267 26B 269 270 271 272 273 274 275 276 277 27B 279 2BO 2BI 2B2 2B3 204 205 2B6 287 2BB 289 290 291 292 293 294 295 296 297 29B 299 300 301 302 303 304 305 306 307 30B 309 310 311 312 313 314 315
0018! 0018!
bbase:
00E5 OLlFO
movln comres +
OOOO!
,,
MACRO-BO 3.44
defs
;symbol 100h-($-(elltry-3»,-1
equ defl
$-bbase 100h-3
below defs
comres
F3 AF
prs:
:Hl
prsl:
20 FO ED 73 FFEO 22 FFE2 EI 22 FFE4 D9 Ie 31 3839 :01 I 4142 4C 43 'IF 4E 45 53 4:3 4F 40 50 55 54 45 52
UO :iE 03 :.11 36 II (] I
17 14 3000 20 3001 OBFF ED BO 31 FOOO 21 AA55 CI E5 [) I C5
prs2:
for accessing non-resident base address
:generate non-resident code
prs - preset storage. Power up or Reset button.
Enrry: 0000 0001 0002 0003 0005 0009 OOOC 0000 0010 0011 0012 0015 0010 0019 OOIA OOIB OOIC 0010 OOIE OOIF 0020 0021 0022 0023 0024 0025 0026 0027 0029 00:.18 002E 0030 0033 0036 0038 003B 0(]3e 003F 0040 0041
09-0ec--B,1
di xor dec jr Id ld pop ld exx inc Id Id Id Id Id Id Id Id Id Id Id Id Id Id Id Id ex Id out Id Id Id Id Idir Id Id pop push pop pUSh
: lock up system a a nz,prsl (rstsp),sp (rsthl),hl nl (rstpc),tll
; tt1e pause that refershes ;save partial reset state ; ; n case the luser go boom :pick possible return off stack
;give primary registers half a break e sp,383911 sp,41421! c,h b,e c,a c, (h I) b, I d,e Ble
I
; load strange values in SP :insure :registers ican
:forget ; insure :registers ;can ;copy
C,a C, I d, tJ d, I d,h b, I d,d af,af' a,24-1 : line up bottom of screen (scroll) ,a ; in i t scro I I port ;'c I ear display memory tll,crtmem (h I ) . ' de,crtmemTI bC,crtmax-crtmem-l :pray the video hardware works sp,IIIoni tl; insure monitor ram ok hl,Oaa5511 ;walk checker board through ram bc :read ram hI write ram fast de read ram fast bc put ram back
»
0 0
fI)
::l
Cl..
>
buffer @ HL ;write sector C ;this byte modified by ESC Olr
- sio ctlanne I
h
input ready status.
a,{siocpb) 00000001b
;-get sio status register
Z
;if no data available
a,-I
- Sio channel b input character. idle siost z,sioinl a, (siotipb)
-
;idle cpu ;test console status ; loop until data is ;ready at sio data port
SiD channel B output character. af siordy z, id Ie Z, 5
af
iox 1
; id I e cpu i f transmitter not ready
"
m -' ())
,
Balcones Oper"atillU SY5tem for the XEROX 820-11 Console / Pr- i nt e. Drivers 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 70 I
»
"0 "0
/l)
::J
a. >
iset I\S pending flag a
- remove key from fifo. hl,fifcnt (h I ) hl,fifout
index:
ille
(h I )
subttl page
;if input not available
;set
Id dec Id
res Id add Id Id nul int: ret
;output data to sio
- Sio chann'e I B output ready ststus.
remove:
FF32 A6 20
MACRO-80 3.44
4, (h I) a, low fifo a, (h I) I,a a, (h I)
:decrement fifo count ,:point hI to fifo output offset ;advance f i f'o pointer :modulo 16 ; i nde x into fifo by offset ;fetch character in fifo
Interrupt Service Routines
»
-0 -0 ((l
:l
a. >
917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948
,
the XEROX 820-11
,, , FIE9 FlEA FIEB FIEC FlEE FIEF
F 1F I F IF 2 FIF3 F1F4 F1F5 FIF6 FIF7 FIF8 F1F9 FIFA FIFB FIFC
FIFO FIFO F201 F2114 F205 F206 F209 F20A F200 F20E F20F F210 F212 F214 F215 F2 HI F21A F21B F210 F21F F220 F223 F224 F225 F226 F229 F22C F22D F22F
FI EI 31 0000
;restore stack ;*****=>;this word modified at runtime ;re-enable interrupts and return
Table of days per month.
dpm:
db db db db db db db db db db db db
31 28 31 30 31 30 31 31 30 31 30 31
OIl I I i
mi I I; :
service Id Id push push Id inc Id Id equ Id and jr Id ca II jr rJec jr in push ca II Id equ dec jp Id Id equ Id
+ + + +
FF50 FF50 00 03 60 FI05 67 48 lC F29C 00 spcnt
spaddr
; january ;febuary ;march ; apr i I ;may
;june ;jul y ;augLJst ;september ;october ;november ;decelllber
- Millisecond t illler interrupt service.
,,
30 FA F236 32 F224 21 0000 7E
af hI sp,O $-2
,,
spact 67 E6 28 6F CD 2El 20 20 DB F5 CD 3E
09-0ec-81
- return From Interrupt.
pop pop Id savstk equ el ,-etins: reti
IF IC IF IE 1F IE IF IF IE IF IE IF
73 FIEC FF50
rfl
rf i :
FB ED 40
ED 31 E5 F5 2A 23 22 3E
MACRo-on 3.44
(savstk}.sp sp, intstk hI af hl,(Milsec) hI ; increment millisecond counter (Mi Isec) ,hI a,O ;set screen print flag $- I ;·.f***=>;this byte modit led at runtime h,a 3 z,mil16 ;it not print ing screen I,a siordy ;get printer status Z ,m; 116 ; i t printer not ready I
f)z,mi1l2 ;it not character print state a,(syspio) ;get pia state af crton a,O ;get character count $-1 ;·**··=>;byte mOdified at runtime a m,mi 10 ;If end of line (spcnt),a hl,O ;set next character address $-2 i*****=>;wor-d modified at runtime a, (h I)
m
"-J "-J
» "0 "0 /1)
::J
Q. X
m
Balcones v~,elat ing System for Interrupt Service Routines 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 96B 969 970 971 972 973 974 975 976 977 97B 979 980 981 902 9B3 904 905 906 987 90B 909 990 991 992 993 994 995 996 997 990 999 1000 IDOl
F230 F232 F233 F234 F236 F238 F2:J9 F2:3A F23C F23F F240 F241 F243 F244 F245 F246 F247 F248 F24A F24C F24E F250 F251 F254 F255 F256 F 2~)8 F25B F2GE F25F F260 F2f)1 F2G3 F265 F26G F269 F2GB F26C F26E F26F F271 F273 F275 F277 F278 F27A F27C F27E F280 F201
D3 2C AF 18 3E 94 IF CB CD E5 C5 06 70 80 6F 20 7E E6 FE 20 10 70 32 CI EI 3E 22 21
the XEROX B20-11
05 22 61
milO:
2F F31E 50
lIIi 101 : 7F 20 02 F6 mi102: F224 03 F220 F20E
nil III :
Bf) 77 F1 03 lC 10 lC nli I 12:
20
21 20 7E 06 77 FE 20 3E 03 77 3E lB 3E 03 35 C3
F20E 11 04 FE 05 01 19 OA 02 00 05
m1113:
F1E9
mi I I?:
mi I 14: mi 115:
MACRO-80 3.44 out inc xor jr Id sub rra sra ca 11 push push Id Id add Id dec Id and cp jr djnz Id Id pop pop Id Id Id or Id pop out jr dec Id jr Id sub Id cp jr Id out ld ld jr Id out dec jp subttl page
09-.
lsiodpb),a I a m; I II a,I+(24 5hl
-Bl
2)
:flr.e hammer :advance screen cursor :do not advance state : i f not end of line :set address of next print 1 ine
h
a cca hI bc b,80 a,l a,b I,a I a, (h I) 7fh nZ,mil02 mi 101 a,b (spcnt),a bc hI a,3 (spaddr),hl hl,spact (h 1 ) (h I ) ,a af (syspio),a mi I 16 I hl,spact nZ,nlil14 a, (h I.l 1 shl 2 (h I) ,a 2- ( 1 shl 2) nZ,mil13 a,l (ctcl),a (h I) ,a a, 1 f III! 115 a,cr (siodpb),a (h I ) rfi Crt Driver.
:computa cursor address isave next line address :delete
trailing blanks
:get next character : if not trailing blank ;set number of characters to print :set CR next state :set next display address :set state variable :advance state :get pia back ;check next state :set state address : i f not If state ;advance line counter
:disable ctc interrupt :set
line feed
;set carriage return ;move paper or carriage ;return from interrupt
»
"0 "0
It)
::l
a. >< m
m
N W
Balcones Ope,'atillY System f 0" Crt Driver 1002 1003 1004 10()5 1006 1007 100B 1009 1010 101 I 1012 1013 1014 1015 1016 1017 10lB 1019 1020 1021 1022 1023· 1024 1025 1026 1027 102B 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056
F2U4 F2B7
F2UB F2UB F20E F20F F290
22
FFAF
the XEROX B20-II,
setcur - set direct display cursor position.
setcur:
Id ret
,,
out cur - store character directly to crt memory.
outcur: ca II Id Id inc Id
,, F293 F294 F296 F29B F299 F29B
F29C F29D F29F F2AI
F3 DB IC CB BF FB 03 IC C9
F3 DB IC CB FF IB F6
09-0ec-BI
' , (9
CD F29C 2A FFAF 71 23 22 FFAF
MACRO-BO 3.44
I
crtoff -
crtoff: di in crtofl: res ei crt on I: out ret
(di,'cur) ,hi
crton hl,(dircur) (II I) ,c hi (dircur),hl
up cursor address
; tu,-n on crt bank ;fetch direct cursor ;store character
turn crt ram off. ; lock pia access a,(syspio) 7,a
ireset crt bank enable ;unlock pio access
(syspio),a
,,
e" t on - turn crt ram on.
erton:
(I i in set jr
,,
;set
a,(syspio) 7,a crtonl
: lock time-out interrupt ;get pia status :enable bank
block move from/to crt memory. Entry:
Source, address DE Destination address BC Number of bytes to move A 0 Move crt rami to crt ram A < 0 - Move sys ram to crt ram A > 0 Move crt ram to sys ram
HL
-
F2A3 F'LA 7 F2AA F2AB F2AE F2BO F203 F2B5 F2B7 F2BU f2BB F2BD F2BE f2CI f2C4 f2C5
ED 31 A7 CD 28 F2 EE D3 E5 21 ED E3 FA 01 C5 D5
73 F31B FfEO F29C 37 F2B5 80 IC FfBO 4A f2C4 0050
c,'t I d i,' : Id Id and ea I I jr jp x. 0 I d i r- I : Idir2: out push Id adc ex jp Id I d i ,-3: push push I~
(usrstk),sp sp, c,-tstk a crton z,crtmv p,Idir2 80h (syspio),a hI hi, -80 hl,bc (sp) ,hI m,Idlr3 bc,aO bc de
;do not use callers stack ;since i t may disappear iset entry conditions
:block move within crt ram :It move from crt ram to system ram :enable SOlH"Ce bank ;save move source address :count down one transfer buffer ;save overflow,
retrieve source address
;if less than one buffer ; transfer one buffer ,save byte count ;save destination address
m N
~
,
Balcones Operatill9 System for' the. XEROX 820-11 Cr' t DI'iver 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1060 1(J69 1070 1071 1072 1073 1074 1075 1076 1077 1070 1079 lOBO IDOl 1002 1083
F 2U; F2C9 F2CO F2Ce F2CD F2CF F201 F20:l F204 F2D7 F209 F2DA F2DO F2DC F2DD F2ED F2El F2E:3 F2E!j
11 ED Dl C1 DB EE 03 E5 21 ED E1 C1 78 A7 FA 01
F2E7 F2E9 F2Ee F2FO
ED 00 CD F293 ED 76 F316 C9
FF5C BO lC 80 lC FF5C 60
F2E9
;,>0 06 DB lC 18 CC
MACRO-OO 3.44 Id ldir pop pop in xor out push ld ldir pop pop ld and jp or jr in jr
cr tmv:. Idir crtmvo: ca II Id ret subttl page
09-l>v..;-01
de,linbuf de bc a,(syspio) 80h (syspio),a hi hl,linbuf
;set upper buffer ;move data to upper ram ;enable destination bank isave source address buffer :set upper ;move data from buffer to destination
hI
bc a,b a m,crtmvo c z,crtilivo a,(syspio) ldi r 1 crtoff sp, (usrstk)
;retrieve bytes left to transfer ;no more move,
turn crt ram off and return
;if no more ;continue transfer one buffer at a crack ; turn crt ram off
Resident C,' t Driver.
»
u u
/l)
::l
a.. )(
m
m
IV
lT1
Balcones Opened illY System for Resident Crt DI- i ve,' 1084 1085 1086 1007 108B IOB9 1090 1091 1092 109:3 1094 1095 1096 1097 109B 1099 1100 1101 1102 110:3 1104 1105 1106 1107 1108 I 109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1 127 112B 1129 1130 1 131 1132 1133 11 :34 1135 11 :36 II :37 1138
the XEROX 820-11
MACRO-SO 3.44
09-Dec-81
t
crtout - Crt Output Driver. Entry:
Character in register A 16 bytes of stack space available Char displayed, all registers saved
Ex it: F2FI F2F:.! F:!FJ F2F4 F2F5 F2F6 F2F9 F2FA F2FB F2FC F2FD
F2FE F:3lJ2 F305 F307 F:309 F30A F30B F30E F30F F312 F313 F316 F31B F319 F31A F31B F31D
E5 D5 C5 F5 4F CD F2FE
crtout: push push push push , Id
ca II pop pop pop pop ret
F1 Cl
DI EI C9
ED :.J I f)D DB B7 F5 CD FB CD FI F4 DD JE
73 F31B FFEO E5 IC F29C 0169 F:!93 EI DO
:J 1 F31B
Entry: Exit:
Cha,-acter ill C The only register preserved is SP Peeking in register A reveals valuable characters.
,-e t
67 3A FFBI 134
cca:
3C
cca 1: cca2:
DB 18 :30 FC C6 78 67
;set character to process :process character quickly ;restore callers registers
-
fastcrt:ld Id push in or push ca II ei ca II pop ca II pop Id gold equ Id usrstk equ
C9
;maintain users registers on his stack
fastcrt
cca -
F31E F31F F322 F:323 F324 F326 F:32B F3:!A
hi de bc af c,a fast crt af bc de hI
fast crt driver.
(usrstk),sp sp,crtstk
;read system pio ;set bank enable status ;save status for exit code ;turn on crt memory :enable interrupts ;execute crt driver rom :get previous bank enable s~atus ;disable bank now if it was disabled on entry
crtdvr af p,crtoff i x a,O ;sneak balcones golden characters to FAST users $-1 sp,usrstk . ;restore callers stack $-2 ;*****~>:this operand word is modified at runtime compute cursor address.
= Row
A
Id Id add inc sub
h,a a,(base) a,h
Id
•
i x
a,(syspio) a af crton
Entry:
jr add
;do not use callers stack ;since it may disappear
a 24 nC,cca2 a,24+2*crtbas h,a
;entry with base absolute ;ditto
m
IV 0'\
Ilaleolles OperdtillU System f Resident Crt Or i vel', 1139 1140 II'll 1142 1143 1144 1145 1146 1147 1\48 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160
»
'U 'U
I'D J
0X
m
F3213 F32D F32F F331
0 ('
the XEROX 820-11
2E 00 eB 2C eB 10 C9
ld sra rr ret ; ;
F332 F333 F335 F336
[) I 0000
F337 F338 F339 F33B F33E F342 F34:l
E5 21 OICF
C5 (9
22 F333 EO 43 F339 EI (9
MACRO-8D 3,44
rstatt
09-Dee-81
1,0 Il I
- Restore Previous Attribute,
rstatt: Id Istatt equ pUSIl ret
be,O $-2 be
setprv: push Id prvatt equ Id Id pop ret
hI hl,setlow
subttl page
;exeeute previous attribute routine
$-2 (lstatt),111 (prvatt),be hI Rom-resident Crt Driver
»
o o
I'D
::J
0...
>< m
m
IV '-.I
Balcon(;s Oper'dtiliH System tor tl1e XEROX B20-11 Rom-resi(1ent Crt D, iver 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 11BO 1181 1182 1183 11 B4 11B5 1186 l1B7 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215
DODO!
MACRO-OO 3.44
below defs
+
09-Dec-B1
;execute In banked rom comres
crtdvr - Crt Driver Proper. 0169 016C 016F 0170 0173 0176 0177 0179 017C 0170 017E 0180 0182 01B5 011:lb 0187 0188 0lB9
o 18B 018D 018F 0190 0191 0194 OHlb 0199 019C 019D
OIAD 01A3 01A5 01A6 0lA7 01A8 01AA
OIAL OIAD OlAF OIBO 0lB2 0lB3
01B4
2A 3A 77 32 3A B7 20 3A Al 4F FE 38 3A
FFAC FFB4 F319 FFB2 10 FOE3 20 14 FFB3
crtdl:
BI 77
2C 70 E6 7F fE 50
:W OA AD of CD,02F7 18 03 CO 0230 22 FFAC 7E 32 FFB4 3A FFAE FE 20 C8 4F 7E CB BF FE 20 79 20 03 7E EE 80 77 C9
01B7
EB :i6 00 EO
OIBO
30
01B9
20 4E
o 1 )j~i
crtdvr:
crtd2: crtd3:
crtd4:
mu 1 t i :
Id Id Id Id Id or jr Id and Id cp jr Id or Id inc
hl,(cursor) a, (chrsav) (h I) ,a (gold),a a,(leadin) a nZ,crtd2 a,(mask)
1
;store displayable character ;advance pointer to next column
J'd
a, I Olllllllb
;extract colunm# from hi
'and cp jr xor Id ca II jr ca II Id ld ld Id cp . ret ld Id res cp ld jr ld xor Id ret
;set cursor address ;retrieve character under cursor ;replace character under ·cursor ;bury balcones gold ;set leadin state ;if processing escape sequence ; ge t I
0
[] It)
::l
CL X
I
m
m
W W
Balcones Oper'a ( i IIU :::'ystem for' Rom-resident Cr't Dr' i ver 1490 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 151 I 1512 1513 1514 1515 1510 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1521:l 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547· 1541l 1549 1550 1551
0301 0304 0305 0308 0309 030A 0300 030E 0311 0314 0315 0316 0318 031B 0310 031E
OJIF OJ22 0323 0325 0326 0328 0329 032A 032C 0320 032E
032F 0331 0333 0335 0337 0339 0336 0330 033E 0340
0341
0344 0345 0347 0349 034A 034C
JA FFBI 91 ~i 2 F319 CO E5 3A F31C 3C C4 040F CO 0341 29 7C E6 If 32 FFBI 03 14 EI C9
II 0008 70 E6 78 83 FE 50
MACRO-I:lO 3.44
tile XEROX 1:l20-11
.
tab
tab:
Id Id and add cp ret Id and Id add ret
DO 70 Eo f8 6F 19 C9
3E 03 06 10 03 06 10
35 29 61 FE 28 61 FE
; i
be II
be II: be I 11:
ld out Id djnz out Id djnz dec jr ret
3D LfJ F 1 U)
CD 02F2
7[)
E6 7f fE 50 Oll
ED 44 C6 50
a, (base) c (gold),a nz hi a, (usrstk+1l a nZ,bbg c I r I in hl,hl a,h 000 III II b (base),a (scroll) ,a hi
Id sub Id ret push Id inc call ca II add Id and Id out pop ret
, ,
09-0ec-81
-
,test i f cursor was on bottom row , of screen before moving down ,send scro II flag back to fast users ,exit i f not at bottom ;prepare scroll screen up ;bury balcones gold, unless monitor running ; f i I I top line with spaces ;get row# component of hi
into a
;store new base Ii ne# ;scroll top line to bottom ;restore cursor
Move cursor to ne.l( t de,8 a, I
tab stop.
;tabs are every 8 columns ;get column component of ipreviou5 tab position
01111000u
a,e 80 nc a, I 11111000b I,a hi ,de
;if next tab column past end of line ;advance cursor to next tab stop
- Move speaker back and forth.
; i
c I r lin
c I r I iii:
ca II
,,
clreol
c I reo I:
Id and cp ret neg add
a,bltim (bellon),a b,blonc $ (bellof),a b,blofc $ a nz ,ue III
,Bell time constant ;push speaker out ;set Be II on time constant ;pause 6*2 micro seconds ;yank speaker in ;set 6e I I off, time constant ;if more noise
to make
- C I ear' line. return
- Clear to end
;return cursor and fa II of
through clreol
line.
a, I 011111110 80 nc
;if someone busted curpos
a,80
;calculate number of characters to clear
;get column component of cursor posistion
m
W
~
)>
-a -a lI> ::J
0-
>
< m
Balcones Operalill,j Sy!>tem tor the XEROX 1:120-11 Loyical to Plly"icdl Dr'iver- Executioner 1700 1701 1702 1703 1704 1705 1706 1707 170B 1709 1710 1711 1712 1713 1714 1715 1716 1717 171 U 1719 1720 1721 17L2 17~3
1724 17L5
1726 ln7 172U
1729 17]0 1731 1732 1733
m
w
'-J
09-Dec-1:I1
;code goes in ram
above d&seg
+
051B!
MACRO-BO 3,44
Xqdvr - Execute Physical Driver.
f::l44 f345 f346 f347 f34B f34B f34D f34E f34f F350 f351 F352 f355 F356 F357 f358 f359 f35A f35B F35C f35[l f35E
23 E5 23 5E 21 f360 16 00 19 19 5E 23 7E 21 f3BO 19 19 5E 23 56 E1 71 2B D5
C9
xqdvr:
Entry:
HL; Pointer to Physical Drive Request Block
inc push inc Id Id Id add add Id inc Id Id add add ld inc Id pop Id dec push ret
hi hi hI e. (h I) hi, Se I tab d,O hi ,de til ,de e, (h I) hi a, (h 1 ) hl,Drvtab hl,de hl,de e, (h 1 ) hI
subttl page
;point at physical unit ;set logical drive ;Set driver mapping table address ;index into driver select table ;set physical driver index ;set physical unit ;set Driver table address ;set physical driver address
d, (h I)
hI (h I)
hI de
,a
;recover request block address ;store physical unit ;execute physical driver
Physical Disk Driver Area
m
w
00
Balcon",» Operalill,j System for Physical Disk lJrlver Ar'ea 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752
» "0 "0 ttl j
0.., X
m
XEROX 020-11
; i
+
035f"
,
.
MACRO-80 3.44
f35f
; ;
, f360
09-Dec-81
Physical Disk 0,- i ver Area. above d8.seg Waste space to get drivers on page boundry.
Wasted: equ bndry if defs endif
f35f OOOf
1/53
1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 17G9 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1700 1781 1702 1783 1704 1785 1786 1707 1780
UHl
Logical
Ofh ($ and bndry) ne 0 bndry+l-($ and bndry), -1 to Physical Drive Mapping Tables.
Se I tab contains two bytes per logical CPIM drive A-P. The first byte is an index into the physical driver address table below. The second byte is a unit number that is passed to the driver by the standard deblocker.
Se I tab:
f360 f362 f364 f366
01 01 01 01
00 01 02 03
.A:
f368 f36A f3GC f36E
01 01 01 01
04 05 06 07
· E: · f: .G:
f370 f372 f374 f376
00 00 00 00 un 00 00 00
f378 f37A f37C f 3 7E:
Oll 00 00 UO
00 00 00 00
defb defb defb defb
1,0 I,1 1:2 1,3
;floppy ,; Floppy ;Floppy ;Floppy
defb defb defb defb
1,4 1,5 1,6 1,7
;Rigid ;Rigid ;Rigid ;Rigid
Partition Partition Par'tition Par't it ion
(Iefb detb defb defb
0,0 0,0 0,0 0,0
; Er;ror; E,-ror' ;Err-or ; E,-ror-
DriverDrive,' Dr-iverDriver
.0: .P:
(Ie ftl defb defb (Jefb
0,0 0,0 0,0 0,0
;Error ;Error ; Error' ;Error
Driver Driver Dr i ver' Driver
,,
PI1YS i ca I Driver Address Table.
.6:
· C: .0:
.H:
·1; · J: · K:
· L: .M: .N:
Unit 0 Unit 1 Unit 2 Unit 3 0 I 2 3
Dvrtab contains the addr'esses of several independent physical disk driver-so By convention, driver II 0 always returns a select error. f380 f382 F384 f306 f388 f3BA f30C
f42A f4BO
nooo 0000 (JUOO
0000 !JOOO
Drvtab: defw (ie f w defw defw defw defw defw
Se ler'r DSkdvr 0 0 0 0 0
;select error physical driver ;Disk driver (WD or SA) ;Empty physical driver expansion slots
»
"0 "0 (1)
J
a. >< m
Balco(les Openlt.ill'J ~ystem f Physical Disk 01 ivel Area 17B9 1790 1791 1792 1793 1794 1795 1796 1797 179B 1799 HlOO
1801 1802 1803 1804 1805 1806 1807 HllJ!l
1809 l!l1 n 10 II 1812 lB13
m w
I.D
F3BE
01'
tile XEROX B20-11
MACRO-BO 3.44 defw
fFFF
...
0-1
09-Dec-Bl ;Illark
last empty expansion slot
Overlaid Monitor Ram Address Definitions.
FD211 FD40 FD6D 0000 0000 0000 0000
dirbuf chkOO chkOl chk02 chk03 chk04 chk05 chk06 chk07
equ equ equ equ equ equ equ equ equ
OfcBOh OfdOOh Ofd20h Ofd40h Ofd60h 0 0 0 0
;di rector' buffer ;Directory Check ;Directory Check ;Directory Check ;Directory Check ;No Check Vector ;No Check Vector ;No Check Vector ;No Check Vector
FD811 FOAll FDCC) FDEl) fEOO FE80 fECO fEEO
a II 00 a 1101 a 1102 a 1103 all04 a II 05 all06 al107
equ equ equ equ equ equ equ equ
Ofd80h OfdaOh OfdcOh OfdeDh OfeOOh Ofe80h OfecOh OfeeOh
;Floppy Orive. 0 Allocation Vector ;Floppy Drive 1 Allocation Vector ;Floppy Drive 2 Allocation Vector ;Floppy Drive 3 Allocation Vector ;Rigid Partition Allocation vectors
subttl page
Disk Parameter Headel's
FeUU
Form
Vector for Floppy Drive Vector for Floppy Drive Vector for Floppy Drive Vector for Floppy Drive for Rigid Partition 0 for Rigid Part it ion I for Rigid Partition 2 for Rigid Partition 3
0 1
2 3
m
.J::.. 0
Balcunes Opera t i IIU ~ystelll tor tI.e XEROX 820-11 Disk Parameter lie.;ders IBI4 1815 IBID IB 17 1818 1819 1820 1821 1822 1823 1824 18251826 1827 1828 1829 1830 1831 1832 1833 1834 18:35 1836 1837 1838 IU39 1 ULJ() I ULl1 IU42 11:14 :i IU44 1845 lU46 IU47 1848 1849 1850 1851 IB52 1853 IU54 IU55 IU56 IU57 lU5U
»
1J
"0
lI> J 0...
>< m
F39fl F394 F391:1 F39C
UOOO (Jooo FC80 FDOO
0000 0000 0000 FD80
F3AO F3A4 F3AU F3AC
0000 OUOO FC80 F020
F3BO F3B4 F3B8 F3BC
0000 0000 FC80 fD40
F3ClJ F3C4 F3C8 F3CC
MACRO-80 3.44
09-Dec-BI
Disk Parameter Headers. ; ; : Dpbase: dw 0,0,0,0
:Floppy Drive 0
dw dw
dirbuf,O chkOO,allOO
0000 0000 0000 FDAO
dw
0,0,0,0
dw dw
dlrbuf,O chkol,allOl
0000 0000 0000 FDCo
dw
0,0,0,0
(Jw dw
dirbuf,O chk02,all02
nooo 0000 0000 0000 FC80 0000 FD60 FDEO
dw
0,0,0,0
dw dw
dirbuf,O ClOk03, a I 103
F30D F304 F308 f30C
DODO Ilono FCUO UOOO
0000 0000 F470 FEOO
dw
0,0,0,0
dw dw
dirbuf,Dpbrg4 chk04 ,a I 104
F3EIJ F3E4 F3EU F3EC
DODO DOnO FCUO UDnO
0000 0000 F480 FE80
dw
0,0,0,0
dw dw
dirbuf,Dpbrg5 chk05,all05
F3FLJ F3F4 F3FU F3FC
DODO ooun fC80 llnDD
0000 0000 F490 FECD
dw
0,0,0,0
dw dw
dir'buf,Opbrg6 Chk06, a I 106
F40(J F411'1 F40U F41)c
IJllOo 11000 FCUO 11000
0000 0000 F4Ao FEED
dw
0,0,0,0
dw (Jw
dirlJuf ,Opbrg7 chk07,al1D7
subttl page
Sector Translate Tables
:Floppy Drive 1
:Floppy Drive 2
:Floppy Drive 3
:Rigid Partition 0
:Rigid Partition 1
;Rigid Partition 2
;Rigid Partition 3
l>
BaicOlle5 Operal;"\) System fo,'
D
Secto,' T'"ollslate Tables
D ttl
::J
a.. x
m
1859 1860 1861 1862 1863 1864 Itl65 1-866 1867 1868 1869 1870 1871 1872 lt17 3 1874 1875 1876 1877 1878
tile XEROX 820-11
i;
MACRO-80 3.44
09-0ec-81
Sector Translatioll Tables. For 8 inch single density drives. Skew by 6
, F41ll F414 F418 F41C F42D F424 f42U
01 07 00 19 05 DB 17 03 09 15 02 08 14 IA 06 12 18 04 10 16
f42A F42(J f42f
21 0000 f6 fF C9
13 II OF DE DC OA
trn6:
db db db db db db db
01,07,13,19 25,05,11,17 23,03,09,15 21,02,08,14 20,26,06, 12 18,24,04,10 16,22
selerr:
Id or ret
hl,O -1
subttl page
Floppy Disk Parameter Blocks
m
.j::o. N
Bdleont:s 0pt:r"olin9 System tor tile XEROX 820-11 Floppy Disl, Pol"i'llllt:ter Blocks 1879 \!.l00 1081 1882 1883 1884 1085 1886 1887 1888 1889 If:!90 11391 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 19l17 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921
»
"U
"0
it)
::l
a.. X
m
MACRO-80 3.44
09-Dee-81
Floppy Disk Parameter Blocks, one per media format. : dpb8s:
F43!J
Singlt: Density, F43U F43;! F435 F439 F43[J F43F
Single side
UOIA 03 07 00 OOf2 003F ODCO 0010 OU02
dw db dw
26 ;spt 3,7,0 :blkshf, blkmsk, nullmsk 242,63,192,16,2 :dsw,dirm,al loeOl,chksiz,trk off
llll
db
o
:128 byte sectors
Single Density, Double Side F440 F442 F445 F449 F440 F44F
OOIA 04 Of 01 OOF6 007F (lOCO 0010 U002
dw db dw
26 : spt 4,15, I :blksl1f, blkmsk, nullmsk 246,127,192, 16,2:dsw,dirm,allocOI ,chksiz,trk off
llO
db
o
: 128 byte sectors
F450 Double Density, F450 F452 F455 F459 F45D F45F
0034 04 Of 01 DOf2 007F OOCO 0020 00112 81
dw db dw
2"26 4,15,1
db
8 III
Single Side :spt :blkshf," blkmsk, nullmsk
242,127,192,3~,2:dsw,dirm,allocOI,chksiz,trk off
:256 byte sectors,
track zero single density
Double Density, Double Side F46lJ F462 f465 F469 F46D f4GF
(J034 05 IF 03 OOF6 007F OOCO 0020 (J002 81
dw db dw
2"26 :spt 5,31,3 ;blkshf, blkmsk, nullmsk 246,127,192,32,2:dsw,dirm,allocOI,chksiz,trk off
db
81h
subttl page
Micro Floppy Disk Parameter Blocks
:256 byte sectors,
track zero single density
}>
o o
rt>
:l
a.. >
» 0
fldlculles Ope'"d t i 110 Assembly Constdnt!..
~ystellt
f
0"
tlHl XEROX 820-11
MACRO-80 3.44
'09-Dec-81
0
/1)
::J
0-
>< m
m
+=-
U1
1981 1982 1983 1984 1985 1986 1987 198B 1989 1990 1991 1992 1993 1994 HJ95 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 201 1 2012 2013 2014
equ
..
WD 1797 110 port addresses.
wds,' w(lcr wdtr wdsn wddt wdsl wdsd wddd
equ equ equ equ equ equ equ equ
..
External Disk Parameter Tables.
0007 (JOD4 01105 0006 OOAO
fm.un fm. (15 fm.dd fm. fv fm.ddss
equ equ equ equ equ
7 4 5 6 ( I 5hl fm.(ld) or ( 1 shl fm.un)
0040 0028
ntrkB ntrk5
equ equ
77 40
0004 0005 0006 OOOA
c.Bin c. two t imou dpbofs
equ equ equ equ
4 5 6 10
subttl page
Floppy Disk Driver P,'oper
0010' 0010 00 I I 0012 0013 ODIC 0030 0031
00066h
;address of non maskable interrupt
NMI
0066
10h IOh I 1h 1211 13h Icl1 3011 31h
;status ;command ; track ;sector ;data ;dr.ive select port ;select single density ;select double density
,motor I select time out ;offset in dph for dpb address
TI ~
en
l>
-0 -0 (J)
:J 0..
>< m
Bdlcofl~:;
Op~, d l
fluppy D bk 0," i 2(J15 2016 2017 2010 2UI9 2020 2021 2022 2un 2024 2025 2026 2027 2028 2029 2030 2U31 2032 2033 2034 2035 2036 2037 2038 2039 2040 2U41 2042 2043 2044 2045 2046 2047 2048 2049 2050' 2051 2052 2053 2054 2055 2056 2057 2058 2059 2U60 2061 2062 2063 2U64 2065 2066 2067 2068 2069
Sy:;tem fo,- tile XEROX 820-11 I PI-oper
i flU v
b
,, f4BO f4B3 f4B4 f4B5 f4B8 F4B9 F4BB F4I:JIJ F4BE f4Bf F4CO F4C3 F4C6 F4C7 f4CO F4C9 F4CC F4CD F4CF F40U F4DI F4D2 F4D3 F4Db F4D6 F40B F409 F4DA F4DB F40D F40E F4EO F4EI F4E2 F4E3 F4E4 F4E5 F4EI) f4E7 F4EU F4E9 F4EB F4ED F4EF F4FI F4f2 f4f:; F4fG F4F7 f4f8 F4f9 f4fC
CD f647 7E 23 32 f4E7 3C 28 55 06 OA C5 E5 7E CO'F544 FA·F506
:n 2:j
4E CD 'IE 20 23 23 13 IA E6 7E 20 79 B7 7E 28 ::IC D3 23 23 5E 23 56 EB ]E B7 (JE 3E 2B OE
F5A3 37
18 06
01 12
00 AB A3 03 88
:lD
J2 F4fE JE UO UI 4f
CD f61D 71)
MACRO-OO 3.44
09-Dee-Ol
Western Digital floppy Disk Driver.
Dskdvr: call Id ine Id inc jr Id flopl: push push Id ca II jp inc inc Id ca II Id jr inc inc inc Id and Id jr Id or Id jr inc flop2: out inc inc ld inc I (j ex Id rdop equ or Id ld jr Id dec Id f Ilop3: Id rdwrs equ add Id ca II flop4: halt
rde a, (h I) hi (rdop),a a z,selec b,IO bc hi a, (h I) selunt m,flop5 hi hi c, (h I) seek" c, (h I) nz,flop5 hi hi de a, (de) 18h a, (h I) nz,flop2 a,c a a, (h I) z,flop2 a (wdsn) ,a hi
til e, (hi) hi d, (h I) de,hl a,O $-1 a c,Oa8h a,Oa3h z,flop3 c,088h a (rdwra),a a,O $-1 a,c c,a stc
,un hang busy controller ;set command ;point to unit
;if select command ;set ,-etry count i save count i save conunand ;set unit select ; i f unit not ready ;set track low ;position disk ;retrieve track low ; i f unrecoverable error ;track high ;point to second byte of track table entry ;get diskette type ;sector low ; if single density, cp/m skews ;get current logical track ;set sector ; if single density track zero ;translate for double density ;set sector to read in 1791 ;skip sector high ldmal ;'set transfer address to HL ;dmah ;set
read/write switch
;preset write command ;set second part of OUT! l i f write ; turn wr it e command into read command ; turn OUT! into INI ,set up i/o direction ;set side compare flag ;start transfer ;wait f 0'- DRQ or INT
l> ::J :J b
:l
:l. 0(
n
m
~
Balcones Oper'at illU System tor t I)e XEROX 820-11 Floppy Disk Dr i ver- Pr'oper 2070 2071 2072 2073 2074 2075 2076 2077 2078 2U79 2080 2U81 2082 20B3 20B4 2005 2006 2087 21188 2009 2090 2091 2092 2U93 2094 2095 2096 2U97 2098 2099 21nO 210 I 2102 2103 2104 2105 2106 2107 2108 2109 2 11O 2111 2112 2113 2 114 2115 2 116 2117 2 118 2119 212O 2121 2122 2123 2124 2125
F4FD F4FE F4FF F501 F504 F506 F507 F5U8 F509 F50A F50D F50F
F510 F511 F513 F516 F518' F516 F51C F51F F520 F52~j
f525 F526 f527 F528 F529 F52A F52D F52E F52F F532 F533 F536 f537 f538 F539 F53C F5~D
F53E F53F F54ll F542 F54:1
f544 F545 f546 F549 F546 f54C
ED A2 ruwra 2U CD E6 EI CI C8 DB CD 10 C9
F6 F639 OF flop5:
F069 AE
If:.
FE 02 26 CD 26 22 2B
select
selec:
Id cp jp Id ca II dec Id uec Id Id Id add aud add add Id add pusl) ca I I pop jp Id inc Id Id add Id dec Id sbc xor ret
04 F42A OU F039 F559 00
F390 F65A F42A
UOOA
2B 7 :3
ED 42 AF C9
'IF EB 21 F700 Ob 00 119 119
inl equ jr cal I and pop pop ret ret call djnz ret
,,
L2 F66E
26 6f 29 29 29 29 II 19 1:5 CD EI CA 7I 23 70 01 U9 72
MACRO-80 3.44
09-Dec-81 ;transfer next byte
$-1 nz,flop4 ttc Odfh hi bc
;if transfer not complete ;ter-mlnate transfer command ;set error bi ts ;recover command pointer
Z
;if no errors
c softv flopl
; I f 5.25" not ready
;if retry not exceeded
- select dph for uni t. a, (h I) 4 nC,selerr h,O dayti hi (mtradr),hl hi (stpadr),hl h,O I,a hi ,hi hi ,hi hi ,hi hi ,hi de,Dpbase hi, de hi smf I) I z,selerr (h I) ,c hi (h I) ,b bc,dpbofs hi ,bc (h I) ,d hi (11 I) ,e 111, bc a
,,
select physical unit.
selunt:
Id ex Id Id add add
c,a de,hl hi ,trktbl+1 b,O I'll, bc hl,bc
;set un it ; if bad unit select ;set address of timers ;point to motor timer ;point to configurable step rate ;store address of step rate for media selector ;multlply by 2**4
;'set address of disk parameter headers ;set dph address ;set media format ; if no ;ned i a ; sto(-e translate table
';point to dpb addr and clear carry ; fill in dpb address ;point back to dph
;5CJ.ve
select
;set track /
density table address
m
~ 0;)
»
-a
"0 tD ::J
a. X
m
Baleo"es Oplll'aliliU System for Floppy Disk Dr' i vel' PI'oper 2126 2127 2126 2129 2130 2131 2132 2133 2134 2135 2136 2137 2136 2139 2140 2141 2142 2143 2144 2145 2146 2147 214B 2149 2150 2151 2152 2153 2154 2155 2156 2157 215B 2159 2160 2161 2162 2163 2164 2165 2166 2167 2166 2169 2170 2171 2172 2173 2174 2175 2176 2177 217ll 2179 2180 2181
n F601 EB IA lB CO F596 3E 06 32 F559
F540 F550 F551 .F552 F553 F556 F55U F559 F55B F55C F55E F560 F561 F563 F564 F565 F567 F568 F56A F56C F56E F56F F571 F573 F576 F570 F579 F57C F57D ·F57E f580 F581 F583 F585 F587 F58A F58C F58F F591 F593 F595
FB CB DB 47 E6 BI 3C 03 All E6 28 3E 12 eB 20 CO 06 E5 2A 7E EI 06 DB DB E6 2S 3A EE 32 10 06 E6 C9
F596 F598 F59B F59D F59F F5AU F5A2
JE 32 E6 D3 CO D3 C9
F5A:j F5A4 F5Ab F5AB
tile XEROX 620-11
mtradr ll9 1C F6 Ie 03 25 FF 60 IE F647 08 sellw: F559 04 10 02 Fl F585 08 F5S5 E7 10 60 16 F632 16 31
sel2:
sel3:
se'l dns: selden:
30
7u En CC F596 13
MACRO-60 3.44
(smfa),hl de,hl a, (de) de selden a,timou (mtradr),a
Id ex Id dec ca II Id Id equ ei res in Id and or inc out xor and jr Id Id bit jr ca II Id pusl" Id Id pop sub ret in and jr Id xor' ld djnz in and ret
$-2 1, c a,(wdsl) b,a not 7 c a (wds I ) ,a b 3 z,sel3 a,-1 (de),a c.Sin,b nZ,sel3 rdc b,2*4 hI hl,(mtradr) a, (h I) hI t imou-2 c a,(wdsr} 2 z, se 11 w a,(sel2) 6 (seI2),a se 11 w a,(wdsr) 80h a,16h (dsw) ,a ISh (wddd) ,a z (wdsd) ,a
Id Id and out ret out ret
,,
seek
sllekx:
Id or ca II inc
09-0ec-61
-
;save address
for media selector
;get previous density switch ;point to track word ,select density ;start motor I select timer ;address f i I led in by once only routine ;insure clock enabled ;map C->A, 0->6 ;read current select ;insert new select ;0-1. 1-2 ;select drive
;if drive select identical ;force track position recovery ;test S/5 status
;if S" ;set type I status ;watch for four holes (6 transitions,> ;get address of motor select timer , look for 1-2 seconds
;if drive not spinning index not under light ;switch index polarity ; ( j r z) xor (jr nz)
;if
;wait for at least three revolutions ;set ready status
;set t r'ack zero single density ;store sw itch for read/write routines ;pre-select dual density ; if dual density ;select single density
position diSk. a,c a z,seldns de
,set new track ;force single density track 0
»
U U tb J
0..
X
m
m
fD
Balcone,; Operat ill~ :'ystem for ti,e XEROX ll20-I1 floppy Disk [J,' i ve I Pr'oper 2102 2183 2104 2105 2186 21B7 21BB 2 III 9 2190 2191 2192 2193 2194 2195 2196 2197 2190 2199 2200 2201 2202 2203 2204 2205 2206 2207 2200 2209 2210 2211 2212 2213 2214 2215 2216 2217 2210 2219 2220 2221 2222 2223 2224 2225 2226 2227 2220 2229 2230 2231 2232 2233 2234 2235 2236 2237
F5A9 F5AA F5AB F5AO F5AF F5BI F583 F5B5 F5B7 F5B9 F5BA F5BB F5BO F5BF F5CO F5CI F5C2 F5C4 F5C7 F5CO F5C9 F5CA F5CC F5CE F5CF F5DO F5D2 F5D3 F5D5 F5D6 F500 F5D9 F5DC F5DE F5DF F5EI F5E3 F5E6 F5EO F5E9 F5E8 F5ED F5EE F5EF F5F2 F5F4 F5fb F5F7
f5FO f5F9 F5FC F5FE F601
IA IB E6 01 28 15 DB Ie C8 67 Ob 4D 20 02 [J6 2B 79 138 JE 00 3U 05 79 90 4F JE 02 :12 F4F6
sekO:
sekl:
117
47 F3 DB CB 80 FB 03 IA D3 B9 28 :JC CC 28 79 03 3E CD E6 79
lC 97 IC II 17 F5FO 00 seekO: 13 IC F643 9ll
20 02 f6 FF
12 C9 CD F647 E6 20 28 EO AF C9
L5
CD f605 20 05
CD F641 Eb 04
seek I: seek2: seek3: retzr:
MACRO-OO 3.44
a, (de) de 1 z,sekl a, (wds I ) c.Bin,a b,ntrkB nZ,sekO b,ntrk5 a,c b a,O c,sekl a,c b c,a a,2 (rdwrs),a a,a b,a
Id dec and jr in bi t Id jr Id Id cp Id jr Id sub Id Id Id add III di in r·es or ei out III out ep jr inc ca II jr Id out Id ca II and Id jr or Id ret ca II and jr xor ,'et
; i
rse
rse:
push ca II jr ca II and
09-Dec-81
;if one sided diskette ;set number of eight inch tracks ;if BOO drives ;set seek track ;preset side ;if side a ;wrap to side
a r
;set side I ;store Fl (update SSO) ;move into select port position
a,( ... L1sl) 2,a b (wdsl),a a, (de) (wdtr),a c z,seek3 a z,rse
z,seekl a,c ( ... ddt),a a,lch isc 98h a,c z,seek2 -I (de) ,a ,'dc 20h z,seekO a -
;send out REAL SSO ;check current posHlon ; inform 1797 of current track ; if position ok, load head ; checl, for forced recovery ;recover seek errors ; if error not recoverable ;set new track ; in data register ;set seek with verify command ;issue step command ;update current track
;if no errors ;force recovery next time .set type I status ;test head load ; if head is not loaded ;say seek complete
recover seek error. bc rdid nZ,rsel recai 4
,read id mark ; if track position identified ; reca librate ;verify track zero flag set
m
1J1
0
p -0 -0
tt>
::J 0..
>< m
Balcunes Ope,at iliU Systelll f floppy Disk D,' I ve r PI'opl:!r 2238 2239 2240 2241 2242 2243 2244 2245 2246 2247 2248 2249 2250 2251 2252 2253 2254 2255 2256 2257 2258 2259 ::'260 2261 ::'262 2263 2264 22E5 22E6 2267 22li8 ::'269 2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 22U2 2283 2284 2285 2286 2287 22U8 22U9 2290 2291 2292 2293
F603 F604
Cl
0 ,-
tlH! XEROX 820-11 I-sel :
C~
, ;
F605 F607 F60A F60B F60D F60E F610 F613 F615 F617 F618 F61A F61B F61C
F6lD F61E F6?1 F624 F626 FE29 FE2A FE2D F62F F631 F632 F633 F635 FE36 F638
F639 F63A F63B F63E FE3F
F641 F642
OE CD 76 ED 76 ED CD E6 20 70 D3 F6 Af
C4 F61D
.
rdid:
40 48 F639 98 04 II
rdidl:
C~
F3 3A 32 3E 32 79 01 D3 10 3E
dsw CEl
OE 80
I, Parameter Blocks. 2424 2425 2426. 2427 2428 2429 2430 2431 2432 2433 2434 2435 2436 2437 2438 2439 2440 2441 2442 2443 2444 2445 2446 2447 2448 2449 2450 2451 2452 2453 2454 2455 2456 2457 245B 2459 2460 2461 2462 2463 2464 2465 2466 2467 246B 2469 2470 2471 2472 2473 2474 2475 2476 2477 247B
MACRO-80 3.44
09-0ec-B1
There are 16 4k Blocks per pseudo track. Track Zero (2 Cylinders) are reserved for CP/M boot. 0040 0020 0010 0010
Nt4 Nt5 Nt6 Nt7
OOOU
aset irpc aset OSIll&n equ equ Rtk&n aset Opbrg&n:dw db db dw dw db db dw dw db endm Opbrg&4:dw db (lb dw dw (lb db dw dw db Opbrg&5:dw db dl) dw dw db db dw dw db Opbrg&6:dw db db dw dw db db dw Ow
f47U f472 F474 f475 F477 F4h) f47A F47B f47D f47f f48(} F4B2 F484 F4B5 f487 F489 f48A F4BS F48D f4Bf F490 f49L f494 F495 F497 F498 f49A f49!:l F49D
U200 05 1 f (I 1 U3Ef 01FF FF 00 0000 00111 n1 (j200 1I5 1 f 01 01Ef ilIff ff IlLl UOLlO (J[)41 01 U200 05 1 F 03 !lOEf Ulff ff
nn
nooo
0061
+ + + +
+ + + + + + + + + + + + + + + +
+ + + + + .+ + + +
equ equ equ equ
64 32 16 16
;Number ;Number ;Number ;Number
0 n, .. + 1 Nt&n*16-17
;first usable track
of of of of
Tracks Tracks Tracks Tracl\s
on on on on
Partition Part it i on Partition Partition
0 1
2 3
;reserve system track
.. +Nt&n-1 512 ;spt 5,31 ;blkshf. blkmsk 3+2* (Oslll&n ge 256);exlII Osm&n ;dsm 51 I ;dirmax -1 ;a II ocO (reserve additional dir space) 0 ; a I I oc 1 0 ;check size Rtk&n ; track offset ;256 byte sectors 1 512 ;spt 5,31 ;blkshf. blkmsk 3+2*(Oslll&4 ge 256);exm OSfl\&4 ;dslll 511 ;dirmax - 1 ; a 11 ocO (reserve additional dir space) 0 ;a 11 oc I 0 ;check size Rtk&4 ;track offset I ;256 byte sectors 512 ;spt 5,31 ;blkshf, blklllsk 3+2*(Oslll&5 ge 256);exm Dsm&5 ;dsm ;dirmax 511 -\ ; a 11 ocO (reserve additional dir space) 0 ; a I I oc 1 0 ;check size Rtk&5 ; track offset I ;256 byte sectors 512 ;spt 5,31 ;blkshf, blkmsk 3+2*(Osm&6 ge 256);exm ;dsn! OSIll&6 ;dirlllax 511 -1 ; a II ocO (reserve additional dlr space) 0 ;a II oc 1 0 ;check size ; t ,-ack offset Rtk&6
l>
o o
II)
::J
0.. )(
m
m
V1 V1
Bdleones Oper"atill,) System tor' nle XEROX 820-11 RiUio Pdrtitioll Disk Pdrdmeter- Blocks, 2479 2480 2481 2482 2483 2484 2485 2486 2487 2488 2489 2490 2491 2492
F49F F4AO F4A2 F4A4 f4A5 f4A7 f4A9 f4AA f4AB f4AO f4Af
III
O:WO 05 IF 03 UllEf Olff ff 00 0000 0071 () 1
... ... ...
... + + + + + +
...
09-Dec-81
MACRO-80 3,44
db Opbrg&7:dw db db dw dw db db dw dw db subttl page
;256 byte sectors 1 ;spt 512 ,blkshf, blkmsk 5,31 3+2*(Osrn&7 ge 256),exrn Dsrn&7 ;dsrn ,dirrnax 511 -I ,a I ' ocO (reserve additional dir space) ,a\locl 0 ;check size 0 ;track offset Rtk&7 ;256 byte sectors 1 SA1403
-
Shugart / OTC SASI Driver
n
~
Balcone,; Oper"ati"'J Sy,;tem for tile XEROX 820-11 SAI403 \SlIlI[Jart I DTC SASI O(-iver" 2493 2494 2495 2496 2497 2498 2499 2500 2501 2502 2503 2504 2505 2506 2507 250B 2509 2510 2511 2512 2513 2514 2515 2516 2517 2518 2519 2520 2521 25:!2 2523 2524 2525 2526 2527 2528 2529 2530 2531 2532
»
u u
ro
:::l
Q. )(
m
MACRO-80 3.44
09-0ec-dl
SASl driver.
i;
SA-140~D
rgdbuf
equ
; ;
Sasi Pio Port Addresses.
0011 0010 0013 0012
pioA'; pioAd pioBs pioBd
equ equ equ equ
piOAs xor 01b pioAs xor lOb pioAs xor lib
0010 0012 0012
Sasid Sasic Sasis
equ equ equ
pioAd pioBd pioBd
;bus data ;bus control ;bus status
001C
syspio
equ
lch
;system configuration port
i;
Sasi controller
b.bsy b.msg b. cd b.req
equ equ equ equ equ equ equ equ
EEOO
0000 0001 0002 0003 0004 0005 0006 0007
b. i
0
b.,se I b.par b.rst
OeeOOIi
;rigid parameter load buffer
;Pio A Status
11 h
00 01 02 03 04 05 06 07
~tatus
bit definitions. ; ( in) ; ( in) ; ( in) ; ( in) ; ( in) ;(out) ; ( in) ;(out)
controller busy status status byte completion status control byte or data byte transfer controller request for data/command data transfer directior controller select buss parity error controller reset
Logical Unit Assignments. 0000 0001 0000 0002 0003
falun fblun fclun fdlun rglun
equ equ equ equ equ
o
subttl page
Sasi Class Code Definitions
1
o 2 3
;A: Lun Lun ;C: Lun ;0: Lun iE: Lun ;6:
l> ~
Balcone!; Operatill0 System tor tile XEROX 820-11 Sa!;i Class CoU~ Uetinition!;
MACRO-80 3.44
09-Dec-BI
J
1)
::l
:l..
>< m
m
111 -..,J
2533 2534 2535 2536 2537 2538 2539 2540 2541 2542 2543 2544 2545 2546 2547 2540 2549 2550 2551 2552 2553 2554 2555 2556 2557 2550 2559 2560 2561 2562 2563 2564 2565 2566 2567 2566 2569 2570 2571 2572 257:3 2574 2575 2576 2577 2570 2579 25[10 2581 2502 2583 2584 2505 2586 2507
; ;
Class Command Codes for Prom Set AS31* DTC Reference Manual Dated February 4,
0000 0001 0002 0003 0004 0005 0006 0007 0008 0009 OOOA 0008 OOOC
ODeD
,,
class
c . t rdy c.recal c.rsyn c.rqsn c. fmat c.vtrk c.ftrk c.flaw c.read c.wrpr c.writ c.seek c.init
equ equ equ equ equ equ equ equ equ equ equ equ equ
,,
Class 6 commands.
c. f I py
equ
,,
Floppy Format Codes.
1961.
0 commands. DOh olh o2h o3h 0411 o5h 06h 07h 08h 09h Oall Obh Och
OcOh
;test r-eady status ;recalibrate drive ;request syndrome ;request sense after error ;format drive ;verify track format ;format single track ; format t r-ack with flaw ;read data ;write protect sector ;write data ;initiate seek ;inititiali;;!e drive
;define floppy disk format
;
00000001 0002 0003
fmds fllldd flll.s;;! flll.wr
equ equ equ equ
0 1 2 3
;double side bi t ;double dens i t y b1 t ;sector si;;!e bi t ; log2(fm.ddds+l)
0000 0001 0006 0007 0000
flll.sdss fm.sdds flllddss fm.ddds fill. hard
equ equ equ equ equ
DOh Olh 06h 07h OOh
;Single ;Single ;Double ;Double ;Rigid
,,
Class 7 commands.
c.tralll
equ
,,
Message Macros.
Plllsg
macro n,lIIsg ifl .print" +MSG NT andif andm
pile"
macro .radix Pllls9 .radix andm
OUEO
OeOh
fl,m
16 %(n), 10
Density, Density, Density, Density,
;test ram buffer
Single Double Single Double
Sided Sided Sided Sided
m U1
00
l:IalcllIHls Op''''ati,,~ Systelll for Sas i C I ass Cocte l)e tin it i OilS 2588 2589 2590
tile XEROX 820-11
MACRO-80 3.44
subttl page
09-Dec-81
Sasi Pilysical
Driver.
}> 0 0 t1)
::J
a. X
m
m
U1
1.0
Ba I COlleti Opel'a till!) Sy;;telll fOI> tile XEROX 820-11 Sasi Physical Drivel. 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 26()5 2606 2607 :2608 2609 2610 2611 2612 2613 2bl4 2615 2616 2617 2618 2bl9 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 26d4 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645
F4BO F4B2 F4B3 F4B4 F4B5 F4B7 F4B8 f4B9 F4BA F4BC F4BE F4CO F4C3 F4C4 F4C5 F4C8 F4C9 F4CA F4CB F4CC F4CO F4CE F4CF F402 F4D4 F4D5 f4DO F4DB F4DE F4DF F4EO F4EI F4E2 F4E3 F4E4 F4E5 F4E6 F4E7 F4EA F4EC F4EE F4FI F4F3 f4F6 f4F7 F4F8 F4F9 F4FA F4FO f4fF
Ob 06 7E
Sal403 - Sasi Physical Driver.
Sa1403: sasOa:
Id Id inc inc jr puStl push dec Id jr Id Id Id push ca II pop inc inc Id inc inc Id ca II jr push ca II Id ca II pop inc inc Id inc Id ex Id equ Id cp jr ca I I jr ca II pop pop dec ret ca II djnz ret
49
OA 02 08 F6FO
sasO:
F5AF
F607 :ill 22 E5 CD F5C2 21 F6FO CD F643 EI 23 23 5E 23 56 cB fl6 00 sec len dA F6FO FE OA ~U 05 CD F65F It! 03 CO F656 CI EI 2B C8 CD F069 10 B3 (9
09-Dec-81
' ,
~3
3C 28 E5 C5 3D 3E 20 3E 3L 7E E5 CO EI 23 23 56 23 23 5E CD
MACRO-OO 3.44
sasl: sas2:
b,6 a, (h I) hI a z,sselec hi bc a a,c.writ z,sasO a,c.read (opcode),a a, (h I) hi mlu hi hi hi d·, (h I) hi hi e,(I1I) cwp nZ,sas2 hi mpa hl,opcode ices hi hi hi e, (h I) hi d, (11 I) de,hl b,O $-1 a, (opcode) c.writ z,sasl tdi sas2 tdo bc hi hi Z softv sasOa
:set retry count :set driver operation :point to unit : i f select DPH
:'preset write opcode ;assume read :set Sasi opcode :get driver unit
:map to logical unit :ignore cpm dsk : track low :set track :set sector :check write protect : if write protected and track > 0 isave requetit block address :map physical address to logical address issue controller command :get pointer to low sector back :ignore sector high :dma low i
:dllla high :set transfer address to HL :set sector length
: i f write command
:transfer data in :transfer data out
: i f no errors :report soft error : i f mor'2 retries ;return error
Balco"es OperalillCl System for" PI1ysicai
2646 2641
»
"0 "0 (I)
:J
0X
m
Dr-ivel
tile XEROX 020-11
MACRO-OO 3.44
09-Dec-OJ
Select
subttl
page
Physical Driver Select
!> ] ]
D l
1. (
n
m
en .....
BdlcolI"'s OP""dtiIlU System tor tile XEROX 620-11 Physical Dr i VoH' '>elect 2640 2649 2650 2651 2652 2653 2654 2655 2656 2657 2650 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2b76 2617 2678 2679 2600 2bOl 2682 2663 2684 2685 2686 2ri67 2688 2689 2690 2b91 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702
i i
Select
sselec:
Id cp equ ccf ca 11 ret
, F500 F501 F502 F503 F504 F507
7E FE 08
numunt 3F 04 f50E DO
,, F508 F50B F50D
21 OOUO F6 FF C9
, CD F6F6 CD F5AF EB 70 29
slllfs:
29 29 29 11 19 FE DO E5 3E 32 32 OA F6 U2 3E
n
F390 04 00 F6F5 F5FI 01 07 F53D
slllfs 1 :
C5 CD F57A C1 60 69 28 14 ~i E 00 38 31 35 F2 F548 :H) 07
smfs
09-Dec-Sl
- Physical Driver Select. a, (h I) 8 $-1
;set ptwsica I ,un it iverify in range
nC,smfs nc
iset media format iif media identified
- Select Error Driver. hl,O -1
-
iSel ect Error Driver
Set Media Format.
entry; Exit:
A = Driver unit index HL '" DPH address, if no carry
call call ex Id add add add add Id add cp ret push ld Id ld Id or Id Id Id
first mlu de,hl a, I hi ,h I hl,hl hl,hl hl,hl de,Dpbase hl,de 4 nc hi a,BOh CdC t r I ) ,a (lastfm+l) ,a a ,( be) 1 shl flllds. (bC) ,a a,O-l (sillfsa),a bc cdd bc h,b I, c z,smfs2 a,D $-1
PUSll
smfsa D6 01
selerr
xselerr: ld selerl: or ret
,,
F5llE F511 F514 F515 F516 F517 F518 F519 F51A F51D F51E F520 F521 F522 F524 F527 F52A F52B F520 F52E F530 F5::J3 F534 F537 F538 F539 F53A F53C F53D F53E F540 F542 F543 F546
MACRO-SO 3.44
ca II pop Id Id jr Id equ Sul1 j ,dec jp Id
iexecute first time only routine illlap to logical unit iget dph index to hi iand A ; i nde x *16
i set base of Disk Parameter Headers i if rigid unit jsave dph address idisable el-ror recovery ialways try double side first ; t I-y each type two times iset ret :-y count ;save define format table address icheck drive density jset
format
table address
i if diskette type identified idiskette type retry counter
I
c,smfs4 (h 1 ) p,smfsla (111) ,fln.cldcls
if media not identified advance disk type code i f no wrap
m
en
IV
»
"C
-0
tJ)
J
a. X
m
l:Jalcolles Oper'at ill!) System for the XEROX 820-11 Physical Drivel' Select 2703 2704 2705 2706 2707 2708 2709 2710 2711 27 I 2 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745 2746 2747 2748 2749 2750 2751 2752 2753 2754 2755 2756 2757 2758
f548 F54A f54C F54E f550 f551 F552 F554 f556 F559 f55A f55B F55C F55D F55E f561 F562 F563 f565 F566 F567 f568 f569 f56A F56B f56E f56F f570 F571 F572 f573 F574 f576 f579
\
f57A F57B F570 F500 F582 f584 f5C7 F58A F58C F58f F592 F595 f597 F599 f59B F59E
CB 20 r.B 18 57 5A CB :W II EI E5 73 23 72 II 19 OA E6 EB 6f 29 29 29 29 01 09 EB 73 23 72 EI 3E 32
4E E4 96 EO 4E 03 F410
0009 03
F430
00 f6f5
C9
OA
E6 II 28 16 CO 21 36 CO CD CD 20 ED IU CD C9
01 0201 02 4F F5C2 F6fO 08 f643 f6CE F687 04 78' F7 F669
MACRO-80 3.44
smfsla: bit jr res jr smfs2: Id Id bit jr Id smfs3: pop push Id inc Id Id add Id and ex Id add add add add Id add ex Id inc Id smfs4: pop Id Id r'e t
09-Dec-81
fmdd, (til ) nZ,smfsl fm.sz,(hl) smfsl d,a e,d fmdd, (h I) nZ,smfs3 de,trn6 hi hi (h I) ,e hi (11 I) ,d de,IO-1 hi ,de a, (bc) 3 de,hl I,a hl,hl hi "hi hl,hl hl,hl bc,dpb8s hi ,bc de,hl (h I) ,e hI (11 I) ,d hi a,O (dctrl),a
; test for double dens i t y
;if double density ;set sector size = 126 ; try more diskette types .preset no translate
.if diskette is double density ;set single density
;store translate address
;point to dpb address in dph ; ge't selected format
; i nde x by 16
;set dpb base ;set dpb address (clears carry) ;recover dpb pointer address in dph
;get df::h address ;enable error recovery
,,
cdd - check drive density.
cdd:
Id and Id jr Id ca II Id Id ca II ca II ca II jr in jr ca I I ret
cddO:
cddl:
cdd2:
i;
p21
a, (bc) 1
de,2*256+1 z,cddO d,77+2 mpa hl,opco(le (hl>,c.read iccs sim wfr nZ,cdd2 a, (c) cddl wcc
translate
;get dpl. address
;get attempted side ;try s ide· I on ds, a on ss
;if single side ;use back side ;map physical address ;issue controller command ;set input mode ;wait for req ;if timeout or status, not data requested ;eat sector ;wait command complete
- Physical to Logical Mapping Table.
);>
0 0
It)
J
0... X
m
m
(])
W
Balcun,;!; Opera l i IIU Sy!;ttlm fur PI,ysical 01' i vel ~),;I,;ct 2759 2760 2761 2762 2763 2764 2765 2766 2767 2760 2769 2770 2771 2772 2773 2774 2775 2776 2777 2778 2779 2780 2781 2782 2783 2704 2785 2786 2787 2788 2789 2790 2791 2792 2793 2794 2795 2796 2797 279B 2799 2800 21101 2802 2803 2804 2805 2806 28117 2808 2809 21110 21111 2812 2813 2814
tile XEROX 820-11
MACRO-80 3.44
09-0ec-81
First byte is the SA1403 Logical Unit Number Second byte is extendeci drive format code
, F59F F5AI F5A3 F5A5 F5A7 F5A9 F5AB F5AO
UO UO ;w 01 00 06 40 07 ull 80 6ll .80 6ll 80 6U 80
p21:
. ;
F5AF F5U2 F5B4 F5B5 F5B6 F5B7 F5B8 f5BB f5BE F5BF f5CO F5Cl
:! I
F59f 16 00 5F 19 19 7E 32 F6Fl 32 f6EB 23 44 40 C9
mlu:
,,
db db db db db db db db
falun fblun falun fdlun rglun rglun rglun rglun
mpa:
A Physical Driver Unit from Deblocker DE dph index BC pointer to format code Sasi LUN stored in command block
Id Id Id add add Id Id Id inc Id Id re t
hl,p21 d,D e,a hl,de hi ,de a,(hl) ( I un) , a (deflun),a hi b,h c, I
3E 80
;set Rigid Physical
I
2 3
to Logical map table
;point to table entry ;get Sasi ;store in ;store in ;point to
LUN read/write command define command format descriptor
BC D
p21 format code address Track Sector
Ex it:
Logical Address set in command block Sec len set for transfer Controller notified of floppy format
ld ld ex Id cp jr cp
hl,seclen (hl),O de,hl a, (bc) flll.i1al-d 25 to 1->26
a ,11 a nz,mpa2 1 a,128
; if not on track zero ;set shol-t sector
m
m
.J::.
»
"0 "0
m
::l
Q..
>< m
BaicUfltl5 Ope.al illu Sy'stem to r- tlte XEROX 820-11 Physical Dr·iver Selec't
MACRO-OO 3.44
2815 2816 28 \1 2818 2819 2820 2821 .2822 21:123 2824 2825 2826 2827 2828 2829 2830 2831 2832 2833 2834 2835 2836 2837 2838 2839 2840 2841 2842 2843 2844 2845 2846 2847 2848 2849 2850 2851 2852 2853 2854 2855 2856
Id Id bit jr Id cp jr sub ccf adc Id push Id Id Id Id equ Id or sbc jr Id Id ca II ca II pop Id Id Id scf sbc inc add djnz Id Id ld Id ret
f5D9 f5DA f 5DU. f5DD f5Df F5ElJ f5E'L f5E4 f5EG F5E7 F5E8 f5E9 F5EA f5EB f5EE F5EF f5FO F5F2 F5F5 F5F6 f5f8 f5FA F5FD F600 F603 F60G f60l f608 F60B f60C f60D f60F f61D F611 F613 f614 F615 F616 f619
12 UA CB 20 7C I-E 38 D6 3F 8F 67 E5 OA 2A 67 II
mpa2: 47 OA 4D
02 4D mpa21: mpa22: f6EB FFFf lastfm
22 B7 ED 28 J2 21 CD CD EI 44 II 62 :17 ED 04
f5FO 52 OC f6Ef f6EA f643 F669 mpa3: OOIA 52
19
10 FO 7C 65 6F 22 f6f2 C9
mpa4: mpa5:
subttl page
09-Dec-tll
(de) ,a a, (bC) fmds,a. z,IIlpa22 a,h 77 c,mpa21 77 a,a h,a hi a, (bc) hi. (def lun) h,a de,-l $-2 (Iastfm),hl a hl,de z,mpa3 (flpfrm),a hi ,def Ipy iccs wcc hI b,h de,26 h,d hl,de b hl,de mpa4 a,h h, I I,a (addrh),hl Sasi Bus Control
; i f not double sided disk ;map first 77 tracks to side l:ero
;if side zero tracks ;offset to back side
isave track/sector ;get floppy format ;get new unit
;get previously used format/lun ;save this format/unit for next time
;if unit and format same as last time ; issue define floppy
command
irecover track / sector ;set track ;compute sector-26-1+(Track+l)*26 ;clear upper track
;adjust sector ;force one pass ;mu It \p I Y track by sectors/track ;if mwltiply incomplete ;swap H & L ;Store address in command block Interface
I
l>
"0 "0 I'D :l
c.. >
Sasi command block F64~1
F644 F646 F647 F64A F64D F65fJ F651 F65:i F655
7E FE C8 CD 01 CD C8 Ell 20 C9
ices: 04 F61A 0610 F687
iccs I:
A3 FB
; i
F656 F659 F656 F65D
F65f F6b2 F665 fbb7
CO F687 20 DE ED 63 IB OA
CO CD 20 EO
fbCE f687 02 62
tdo:
Id cp ret ca II Id ca II ret outi jr ret tuo ea II jr ot ir jr
, ,
tdi
t LI i :
ea II ea II jr inir
,,
wec
a, (h I) c. fma t Z gea bC,Sasid+6*256 wfr Z
;peek at ope ode ;do not a II ow format entire disk ;get controller attention ;set port / command block length ; wa it for REQ ; if data requested ;send next byte
nZ,iccsl transmit data out. wfr nz,wcc
; wa it for req
;if not data requested ;pitch sector out
wee t ,"ansmi t sim wfr nz,Wcc
data in. ;set
input mode for" r"eg ; if status, not data requested ;read sector" iwalt
- wait command complete.
m
Q) Q)
Balcolles Opel-dt lilU System tor- the XEROX 820-1 I Sa"i Bus COllt, 01 Iliterface 2912 2913 2914 2915 2916 2917 2918 2919 2920 2921 2922 2923 2924 2925 2926 2927 2928
F66() F66t: F66F F671 F67:j 1'675 F676 F679 F67B F67D F67F F681 F6B~
F685 F686
CD CD 28 ED E6 47 CD 28 DB CB 28 ED 20 BO C9
F6CE F607 2A 78 03
'If
lA 7B 16
»
'U 'U
it)
::J
0..
>
0
cft m,wfrl a,(Sasis) b.req,a z,wfr b.par,a nZ,wfrl
wfrl:
ca II jp in bit jr bit jr equ and ret pop
,
ecr - Enable Control Jer Reset.
wfr:
.
ecr;
.. F6A5 F6AB F6A9
s im wfr z,ecr a, (c) 3 b,a wfr z,ecr a,(Sasis) b.msg,a z,ecr a, (c) nZ,ecr b
in and Id ca II jr in bit jr in jr or ret wfr
09-Dec-81
Exit;
wfra E6 04 C9 F1
ca II ca II jr
F687 20 12
2~)29
2930 2931 2932 2933 2934 2935 2936 2937 2938 2939 2940 2941 2942 2943 2944 2945 2946 2947 2948 2949 2950 2951 2952 2953 2954 2955 2956 2957 295B 2959 2960 2961
wee;
MACRO-80 3.44
cft: efta
67 C9 i i
xor ld or Id ret
Timer Expired Request is for data Request is for control ;check for time-out
;if controller hung ,read sasi status
;if request not asserted ;check buss parity
;if parity error
$-1 1 shl
b.cd
;test control /
af
data bit
,pitch return address
a (reset),a
;enable cont,-oller reset next time ;by placing NOP at reset entry point ;return error status ;force define floppy format
- 1
(lastflll),a
Cft - Check for Tillie-out. ca II Id equ pub Ii c or ret
idle a, (0) $-2
;idle cpu
;*** •• =>;This word gets the address of the timer
cfta a
Reset - Reset Controller. This routine is ca lied prior to every command that is issued to tl)e control:ler, but disables itself after I
»
0 0
(I)
j
a. >< m
m
.....,
0'1
Balcofles Opt:nJli"cI :,ystt:m foc Sasi 0"5 Cont"o I I IIte,'face 2968 2969 2970 2971 2972 2973 2974 2975 2976 2977 2978 2979 2980 2981 2982 298] 2984 2985 2986 2987 2988 2989 299U 2991 2992 2993 2994 2995 2996 2997 2998 2999 :3000 3001 3002 3003 3004 3005 3006 3007 3008 3U09 3010 3011 3012 3013 3014 3015 3016 3017 3018 3019
tl.e XEROX 820-11
MACRO-80 3.44
09-Dec-81
cunnillg. When, and if the contcollec times-out, this coutine is re-enabled. Thus, the controller w I II be reset again before the next command is issued. F6AD
tJu
F6AE F60U F6B2 F6B4 F6B6 F6B8 F6BA F6BB F6BO F6dF F6C2 F6C3 F6C() F6C9 F6CC F6CO
3E 03 3E 03 ]E 0] AF 03 3E 32 E5 2I CO CO EI (9
reset:
Id out Id out Id out xor out Id Id push I (j ca II ca II pop ret
CF 13 5F 13 80 12 12 C9 F6AO F6E8 F643 F669
., F6CE F()OO
F6D2 F604 F606
F6D7 F6D8 F6DA F6DU F6DC F6D[J F60E F60F F6EO F6EI F6E2 F6E5 F6E7
3E 4F 18 02
3E OF 03 II C9
OA E6 80 C8 :iE UO
j*····::::>iNote RET gets put here aftltr reset NOP gets put thtlrtl 'If t1mtl-out I a , I 100 I I I I b ;initialize pia In mode 3 (pioBs),a a,OIOlllllb ;d7, d5 are outputs (pioBs),a a, I shl b.rst ;assert reset to controller (Saslc),a a (Sasic),a ;de-assert reset a,Oc9h (reset),a' ;disatJle reset until time-out hI hI, rgreca I iccs i issue recursive rigid recal ibrate wcc hI
Sim - Set Input Mode.
silO:
Id jr
,,
Sam - Set Output Mode.
sam: 50101:
Id out ret
; ;
cwp -
cwp:
Id and ret Id equ or ret Id or ,-et Id sub (-et
a, (UC) fm.hard z a,O $-1 a z a,d a z a,(opcode) c.read
subttl page
Sasi Command Blocks
,-doli I y 07 C8 7A 07 C8 3A F6FO D6 08 C9
nap
a,OIOOllllb sonl1
a,OOOOllllb (pioAs),a
;set
pia A input mode
;set
pia A output mode
checl< write protect. ;get d,- i ve type
;if not rigid disk access ;get dirty parameter flag ;if not write protected ;it track zero request ;a Ilow reads, but no writes to f II e system
m Ol
00
Balcones Ope,·"tillu System for t1)e XEROX 82D-ll Sasi COIIUlldlld £lloLhs JU;1U 3021 J022 3D23 3024 3025 J026 3027 302B 3D29 JO:lO 3031 3032 3033 3034 3035 3036 3037 303B 3039 3040 3041
MACRO-8D 3.44
09-Dee-Bl
Sasi Command Blocks. f6Etl f6E9
Ul
f6EA f6F.B f6EC f6Ef
CO 00
on no 00
deflpy: db deflun: db db flpfrm: db
f6fO F6Fl f6f2 f6f3 f6f4 f6f5
00 00 00 00 01 00
opeode: lun: addrh: addrl: nblk: dct r I:
rgreca I: db reclun: db
60
00
c.recal 3 shl 5 c.flpy
o
;define floppy format
D,O,O
o
db db db db db db
o
subttl page
Overlayable Initialization Code
o
D
o 1
o
;Class eode / Operation ;Logical Unit & Logical Address 20-16 Logical Address 15-8 Logical Addre~s 7-0 ;Number of Blocks ;Error Retry Disable Control word
»
"0 "0 II)
:::l
0.. )(
m
m (J)
W
Biilcolles Ope'"dt 111~J ':>ystelll for' ttle XEROX 82U-II Over' I ayahl e I'litializdtioll Codt! 3042 3U43 3(J44 3045 3046 3U47 3048 3049 3050 3051 3052 3053 3054 3055 3056 3057 3058 3059 3060 3061 3062 306:3 3064 3065 3066 3067 306B 3069 3070 3071 :1Il 7 2 3073 3074 3075 3076 3lJ77 3078 3079 :H180 3081 3082 3083 3084 3085 3086 30B7 3088 3089 3090 3091 3092 3093 3094 3095 3096
FbFb
\
001U OOOA F6F7 F6F~1
F6FC F6FE F701 F702 F705 F708 F700 F70E F70F F712 F714 F717 F711:l F71A F71B F710 F71E F721 F722
F72:l F7:!6 1'729 F72B F72fJ F72E F730 F731 F734 F736 F7:37 F738 F7:19 F7JA F73B F73D F73F F741 F74L F743 1'745 F746 F7MJ
F5
C9 F6F6 00 F039
21 CO 87 CC 2B 21 7E C6
F767 F480
f i r-s t :
PUSll phex .radix .radix Id ld Id ca 11 dec Id Id
af $-dskdvr, 16 10 a,Oc9h inuke self first t I me (first),a h,O ; i nd i ca t e return register value dayt I ;get address of monitor timer hi (efta) ,Ill ;store addr'ess of timer for check routine (gcaa),hl ;and for command startup
f i r-5 t I :
Id ca I I or ca II jr Id ld add Id jr cpl Id pop ret
hi, cnfdpb sal403 a z,cpb z,first2 hi, cnfdpb+5 a, (h I) a,32 (h 1) ,a nZ,firstl
1'723 00 F76C 20
77
" I :jA FE 2U 7E FE
EEOO F76C 20 04
f i n;t2:
,,
cpu
cpt) :
Id Id cp j rId cp r-e t Id let Id or ret add Id and sra sra roe t inc djnz dec Id Id
E5
CB 11 OOOF 1I6 04 'IE 87
ell 19
IE E6 87 C8 21' C8 2F
CO 23 10 F I 28 11 F4AF III 0040
- First time only.
First
F6A9 F627
20 E8 2F 32 F6DC f I [9
09-Dec-81
' ,
+ + 3E 32 26 CO 28 22 22
3.44
MACRO~BO
cpUI: cpb2:
jpoint to physical driver read command jread partition parameters ;if no error-s then check parameter blocks j if parameters are loaded jtry backup heads ;get logical sector ; aelvance to next head j if 4 heads and 2 cylinders not attempted tracks > 0 read only
;set
(rdofl I y), a af
- clleck paramete,r blocks. Ii I , r-g(lt)u t
a, (cnfdpb+5) 32 nZ,cpbl a,(rll) Oe5h Z
de,16-1 b,4 a, (Ii I) a nz hi ,de a,Ud) 871i a a nz hi cpb2 hi de,Dpbrg4+16*4~1
be,16*4
;point to dpb buffer. jget sector this dpb set came from jif not pr i mar-y set
i·u~e. default dpbs if none configured ;set offset from high spt to deblock control jverify 4 eJplls ;set low sectors / track
jif bUHunec sectors / track ;advance to deblock control
jif ba(l deblocking constant
m
-....J
a
Balculles Ope,-alillU System for the XEROX 820-11 Overlayable Initial ization Code 3097 309S 3099 3100 3101 3102 3103 3104 3105 3106 3107 3108 3109 3110 3111 3112 3113 3114 3115 3116 3117 3118 3119 3120 3121 3122 3123 3124 3125 3126 3127 3128 3129 3130 3131 3132 3133 3134 3135 3136 3137 3138
»
-0 -0
(1)
::l
a.. >< m
F74C F74E F751 F754 F757 F759 F75A F75B F75C f75D F75E F75F F760 F761 F762 F76~ F764 F766
ED 01 11 21 310 F5 7E 3D U7 12 09 EB 09 EB
B8 0010 F3DE F47D 04
F767 F76A F76C F76E
01 04 00 0000 0020 EEOO
cpb3:
F1
3D 20 f3 C8
MACRO-SO 3.44 Iddr Id Id Id Id PUSll Id dec add Id add ex add ex pop dec jr ret
cnfdpb: db dw dw dw
0300
sasidl
FAOU
dloc
09-Dec-BI
,move dpbs into place bC,16 ;set 16 bytes/dpx de,Dpbase+4*16+14 ;point at al lac vector pointer hl,Dpbrg4+13 ;point at reserved tracks a,4 ;count off 4 partitions af a, (h I) ;get reserved tracks for partition a ;just so nice numbers come out a,a ; 16 blks/track / 8 blks/byte 2 bytes/track (de),a ;store low allocation vector address hl,bc ;advance to next dpb de ,Ill hl,bc ;advance to next dph de,hl af a nZ,cpb3 ;if more to allocate z ,return success
=
01,4,0
o
32 rgdbuf
;read partition 0 ; t,-ack zero ;sector 32 ;rigid parameter table buffer
equ $-sasstr .depl1ase defl dloc+sasidl .phase dloc above d&seg
OAOU·· FAOtl
Dvr-Imt:
fAOU
r-qtop
equ
$
s I erT:
Id or ret
111,0
subttl page
820 StyJe Disk Driver Emulator
FA08 fADS FAOD
21 0000 F6 fF C9
;disk dr-iver limit ;set required top of reside~t monitor
-1
»
U U It> ::l
0.
>< m
m
-...,J -"
Baleolles Opel'at ; II!] System for' tile XEROX 820-11 020 Style Dish [J,; ver Emulator 313!oJ 3140 3141 3142 3143 3144 3145 3146 3147 3148 3149 3150 3151 3152 3153 3154 3155 3156 3157 3158 3159 3160 3161 3162 3163 3164 J165 3166 3167 3160 3169 3170 3171 3172 3173 3174 3175 3176 3177 3178 3179 3100 3181 3102 3103 3104 3185 3106 3187 3100 3109 3190 3191 3192 3193
', DADE" FAOE fAOf fAl0 FAil FAI3 fAI5
ff 00 0000 0001 EOOD
820 Style Disk Driver Emulator. above dB.seg
+
ff
;generate code in ram -I - I 00 00 01 bootbf
phycmd: pl1yun t : phydrv: phytrh: physec: phydma:
defb defb defb defw defw defw
,,
Select Entry: Ex it:
fA 17 FA10 fAIA FAIC fAlf 'fA22 fA24 FA25 FA26 fA27 FA20 fA29 fA2A fA2B fA2e FA2E FA31 fA32 FA33 FA34 fA36 fA37 fA3£! FA39 FA38
FA3C
79 FE 30 32 21 06 09 7E B7 EB 67 of CO 05 06 CD 70 84 01 28 Af 12 C9 F (i C9
select: 08 10 fAIO FA5A 00
Ff FA51
03
FF
liE 00
se II:
79 32 FA II
Id cp jr Id Id Id add Id or ex Id Id ret push Id ca 11 Id or pop jr xor Id ret or ret
,,
Home
hom",:
Id
.
,
FA3l FA3F
09-Dec-01
MACRO-OO 3.44
seek:
Seek
-
,pl1Ys i ca I Driver Command ,physical unit ,logical unit ,track ,sector ,dma address
- Select Unit for I/O. C A A
Unit
= 0 -I
if no,errors if errors
a,c 8 nC,sel1 (phydrv) ,a hl,seltbl b,O hi ,bc a, (h I) a de,hl h,a I,a z de b,-I xqphys a, I h de z, se I I a (de) ,a
,set drive selected
;return no errors ,prevent more density re-selects
-I
, r'eturn error
,save logical CP/M drive ,set select table address i
i nde x into select table
iin case previous select worked, say no dph internal routines , if drive has already been selected isave table address ,set Select operation ,execute physical driver ,get returned dph address
;to
,retrieve select table address
,if select unsuccessful
Position to track zero. c,O
,force track zero
- Seek Track.
Entry:
C
ld Id
a,c (phytrk),a
Track to r'ead/write from next
m ...., tV
Balcunes Oper-atill;! Systelll tor tile XEROX B20-I1 020 Style Disk D, iver Emulator 3194 3195 3196 3197 3190 3199 3200 3201 3202 3203 3204 3205 3206 3207 320B 3209 3210
FA42 FA43
AF C9
MACRO-OO 3.44 xor ret
a
:J> c
C
I'D
:J
0.. X
m
;return no errors
Wr it e - Wr i te Physical Sector. FA44 FA46
llo
00
write;
b,O rd ...
ld j ,-
18 02
;set Wri te operation
Read - Read Physical FA40
06 01
read:
Rdwr -
Ex i t :
C HL A
A
79
rdwr;
32 FA13 22 FA15 ;;
Id Id ld
21 FADE 70 CD F344 B7 C9
xqpl1ys;
;; FA5A FA5E
FF FF FF FF FF FF FF FF
Id Id ca II ar ret
Sector Transfer Address o if no errors -1 if errors
Internal B B B
FA51 FA54 FA55 FA50 FA59
Processor.
a,c (physec),a (phydma) ,hI
xqphys Entry;
;set read operation
Rea~/Write
Ent,-y:
FA4A FA4B FA4E
Sector.
b,l
Id
3211
3212 3213 3214 3215 3216 3217 3210 3219 3220 3221 3222 3223 3224 ::1225 3226· 3227 3220 3229 3230 3231 3232 :1233 3234 3235
09-Dec-01
;set physical sector ;set transfer address
Ex~cute
Physical Driver.
-\ for Select o for Write for Read
hI, phycmd (h I) , b
xqdvr a
;point ta physical command block ;store aperation ;execute driver ;set flags
Emulator PiSk 1/0 Ram.
seltbl: defb defb subt t I page
-1,-1,-1,-1" -1,-1,-1,-1
;drive already selected table
Command procest;or
»
'U 'U ([)
:l
0..
>
1J 1J (1)
:J
a.. )(
m
3392 3393 3394 3395 3396 :3397 3390 3399 3400 3401 3402
,, FB2C FB2E FB31 FB33 FB36 FB37 FB30 FB3B FB::IO FB3F FB40 FB42 FB43 FB45 FB47 FB48 FB4A FB4B FB4C FB4E FB4F
MACRO-OO 3.44
ge t lin - read line into buffer.
(,9
Id Id Id Id ret getlin: Id ca II 9 lin I: ep jr Id cp ret cp jr cp ret inc dec jr scf ret
2B
gl in4:
3E 32 3E 32 C9 41 CO FE 28 77 FE CO FE 28 FE
40 FF5C
00 FF50 FC27 IE ED 00 Olj 09 20
LJIj
23 00 it}
:n
EA
FB5U FB51 FB54 FB56 FBS7 FB50 FB59 FB5A FB5C
20 00 04 OC 70 91 30 DC C9
FB5[J FB5f FBG2 FBG5 FB67 FBGO fB6A fBGe fB6D fB6f FB70 FB71 FB72 FB75 FB76 FB7A FB7C FB7E FB81 FB84
FD 01 FD D6 CO 06 20 UC CB 37 CO C5 CD CI DO DO DO OD DO FE
gethlp:
CD FC3D
23 DOff 7E 00 00
paraO: params:
13 FI para I: 51 paJ'ii2: FBOA 21 FFB5 09 09 75 00 74 01 20
para4:
09-0ee-01
a. '@' ( I i nbuf i ,a a,cr (linbuf+l),a b,c echo Helpkey z,gethlp (h I) ,a cr Z 'H'-64 z, 9 Ii n4 c hi c nZ,gl in1
.save max line length parameter in b ;get a character from the console
;if user needs help ;check for carriage return ; i f end of line ;check for ctl-h backspace ;other control characters are illegal ;store cllaracter in buffer ;get another if there's more room ;return with carry=\ if too ;many characters are entered ;delete last character from buffer
dec ca II defb defb inc Id sub jr ret
III pnext ' , '1-1' -64 eat c a,b c nC,glinl
inc.: Id Id sub I'e t sub jr inc bit scf ret push ca II pop Id add add Id Id cp
iy be. low -I a,(iy+O) cr Z ' -c,' z,paraO c 2,c
;advance character scan ;set parameter index ;fetch character
nz be gethex be ix,paraml ix,bc iX,bc (ix+O), I (ix+\),h
jerror if > 4 numbers entered .save parameter count ;read a number from line buffer
;delete character from screen j5et
max line length
; if backspace not past the start of the line
; if no parameters
,if leading blanks ,advance pal'ameter index
;point to parameter storage area ;add parameter count in bc ;store data returned from 'GETHEX'
»
"0 "0 it)
:J
a. >< m
m
-...J -...J
Balc.ones Ope I-a lin" ~ystelll f Console SUPPOI-t routines 3403 3404 3405 3406 34t)] 340B 3409 3410 3411 3412 3413 3414 3415 3416 3417 341B 3419 3420 :-1421 3422 3423 3424 3425 3426 3427 342B 3429 3430 3431 3432 3433 3434 3435 3436 3437 3430 3439 3440 3441 3442 ::1443 3444 3445 3446 3447 3448 3449 3450 3451 3452 ]453 3454 :i455 3456 3457 3450
FBB6 FBBO FBOA FBBC FBBD FBBE
FBBF FB90 FB93 fB96 fBDO fB9A fB90 FB9F FBA2 FBA4 FBA7 FBAO FBA9 FBAC FBAE FBBI fBB2 FBB4 FBB6 FBB9 FBBA fBBB FBBE fBCO FBC3 FBC5 FBCti fBCA fBCB FBCE FBDD FBDI FBD4 fBD5 FBD6 FBD7 FBD9
01'
tile XEROX B20-11
jr cp jr Id inc ret
LU E4 FE 2C LB EO 79 3C C9
E5 CD CD L16 .iE CD 3E
FC16 FCIE 10 Of " , fC23 07 CD FC23 :iE 03 CD FC23 7E
z,paral
;get anothel- item i f space
z,paral a,c a
;get anotl1er item i f comma ;set parameter count
dump
- dump melilory.
dUIIIP:
push ca II ca II Id Id ca II Id ca II Id ca II ld inc ca II djnz ca II pop ld Id ca 11 ld inc ca II djnz ca II jr ca 11 cp ret ca II cp ret ca II dec Id or jr ret
hI put4hs space b,I6 a,16-1 dlllpfmt a,B-I dmpfmt a,4-1 dlllptmt a,(tll) hi put2hs dump2 space hi b,16 a,lfh conout a, (h I) hi conout dump3 canst z,dump4 conin cr z cunin cr z crlf de a,d e nZ,dulilp
dump2;
dump3:
L3
CD FOOC 10 f4 CD F006 20 DC CD F009 FE 00 CO CD F009 FE OD CO CD FC36 lB 7A B3 20 B6 C9
09-0ec-'BI
,,
L3
CD FCIB III EA l.D FCIE E1 06 10 :iE 1 f CO FOOC 7E
MACRO-BO 3.44
dump4:
,,
getllex converts ascii
.save star-ting address ;print starting address in hex ;skip 3 columns on 16 byte boundry ;skip 2 columns on 8 byte boundry ;skip
column
:get a data byte
21
54 5D
0000
gethex:
Id Id Id
III ,0 d,ll e, I
@
hI
:print the data in hex :repeat 16 times :restore starting address :force next character ;get back data byte
@
hi
;print ascii character in a ;check console status
;it char not ready :read char;it user abort :pause wll i Ie user examines display
; if user found i t ;send end of line
; if dump not complete to binary.
carry set on il legal conversion result tenninat ing cllarac t-er retul"ns in a. III I"eturns with 16 bit binary integer FBDA FBDD FODE
on 4 byte boundry
:pl-eset result
m
"
00
);> '"0 '"0 ttl ::J
0..
>
a a /1')
:l
0... )(
m
m
-...,J
ID
fli:1ILolle~
O~el"'l
CO/lsole :;"pporl ::1515 :J516 ::1517 :J511l 3519 3520 3521 3522 35:l3 3524 3525 :i5L6 ::1527 3528 3529 3530 3531 35:i2 3!;33 3534 3535 3536 3537 353B 3539 3540 :i541 3542 3543 3544 3545 3546 :1547 354B :1549 3550 3551 3552 3553 3554 3555 3556 3557 3558 :i559 3560 3561 3562 3563 3564 3565 3566 3567 3568
FCL::I FC24 FC25
il'!J
~y~tem
for"
tile XEROX B20-1I
MACRO-BO 3.44
09-Dec-Bl
loutilles
A".) CO 18 F7
dmpfmt:
,,
and ret jr echo
nz space
;check address boundry ; if not on boundry ;skip one column
- read and echo console character.
Echo irlputs one character from the console device, prints i t on the console output and then returns i t in the A register 1n upper case, FC27 FC2A FC2C FC20 FC30 FC32 FC33 FC35
CD FE CH CD FE 08 06
F009 IE
ecllo:
FOOC 61 20
'U 'U /1)
:J
a... X
m
Balcones Opera l i flU System forTr-allsient COlllllla.ld Processors 3837 3£13£1 3!l39 3840 3841 3842 3843 3844 3845 3846 3847 3848 3849 3850 3851 3852 3U53 3854 3855 3856 3857 3858 3859 3860 3861 3862 3U63 3864 3U65 ~j 8 ()() 3867 3868 3869 3870 3871 3872 3873 3874 3875 3876 3877 3U78 3879 3880 3881 3882 3883 3884 38U5 3886 3887 38U8 :W89 3U90 3891 3892
fCAA fCAU fCBO fCB:j fCB5 fCBb fCB7 fCfl9 fCBA FCBD fCCD fCC3 fCC6 FCC9 fCCC FCCD FeDD fCD3 fCD4 fCD5 fCD8
II 2I 01 ED 13 lA fE (8 21 22 CO 21 11 01 AF CD
tI)e XEROX 820-11
DOff EDff 0080 fl8
E5 fOOD f004 fD05 112B f770 008D
f2A3 0080 3E 00 11
boots 11 fADE E9
, fCD9 fCDC fCDD fCEI fCE5 fCE9 fCE8 fCEC fCED
CD 117 64 6f 65 72 LJ4 C1 E1
.
fC3D
booter:
3A 20 4C 61 64 20 72 72 6f 2E
bootd:
,,
feEt fCfO fCfl fCf4 fCf5 fCf() FCf7 fCf8 fCf9 fCfB fCfC FCfO fCFE fCff FDOD fOOl F002
lIb llO fill
II f360 29 19 EB !l9 09 (16 02 4E IA 77 19
12 23 13
In
f7
swap:
swapl :
MACRO-80 3.44
09-Dec-81
de,bootld+128-1 hl,bootbf+128-1 bc,128
Id Id Id. Iddr inc Id cp ret Id Id ca II Id Id Id xor ca II Id Id equ Id jp
boot
loader address
;move front half of boot de a, (de) Oe511 z hl,Monitr (warm+l),hl Icp hi, i obdvr de, i ob I oc bc, i obdvs a crt Idi r hl,bootld a,O $-1 de,phycmd (h I)
Booter -
Boot
loader to 80h
;verify instructions read in , if disk I)as no system ,set warm start to reload monitor , load configuration parameters , load iobyte driver
,set start address ;sector-s per track ,te II boot loader from whence he came ;execute Boot Loader with return to boater
E r"ror Processor.
ca II defb de fill
pneJ FOGel FDoll fObE F071
tile XEROX 020-11
09-Dec-81
,"et
U)
:jE 81 J2 0003 3A FCD4 67 DE 20 21 E080 20 08 FE 16 08 DE 03 ~ 1 EEOO CD FA48 CO jA EEOO Do E5 C8 :lA EE76 57 20 03 FE C9 CO 32 F 115 3A EE60 32 FF54 3A EE5F 32 FD49 3A EE62 32 FD46 CO FC3D 16
,, ,
Icp -
Icp:
Id Id Id or Id Id jr cp ret Id Id
I cpl:
Icp2:
Icpa:
110
16 00 04 21 EE63 3E 02 46 23 'IE 1:1
ED 3D 20 3A D3 3A D3 JA
MACRO-80 3.44
63
F7 EE7D 00 EE7E OC EE77 .l2 FlOC 3A EE79 :n FIDE JA EE7F
Icpb:
Icp3:
ca II ret Id sub ret Id or jr cp ret Id Id Id Id Id Id Id ca II defb defb defb defb defb Id Id Id Inc Id inc ot ir dec jr Id out Id out Id Id Id Id Id
load configuration parameters. a,lOOOOOOlo (iobyte) ,a a,(ooots) a c,32 hi ,oootllf z,lepl 26+1 c c,3 hI .bootbf+ 128 read nz a,(bootof+128) Oe5h z a.(z.xonp) a z ;lcp2 Oc9h nz (Xonenb) ,a a,(z.stpr) (steprt),a a,(z.scra) (Icpa) ,a a,(z.keym) (Icpb),a pnext esc 0 esc 0 eot hl,z.sioA a.2 b, (h I) hI c, (h I) hi a nz. I cp3 a,(z.baua} (bauda),a a,(z.baub) (baudb) ,a a,(z.siom) (siomsk},a a.(z.siov) (sioval) ,a a,(z.iobt)
;default i/o byte to CRT: and LPT: ,get boot diskette type ;use boot loader buffer ,if rigid, use system track,
sector 32
;no parameters from single density boots odd configuration comes from track 0, sector 3 ;use second half of boot loader buffer
fit can't read configuration
;configure Xon-Xoff
;configure step rate ;configure screen attribute ;configure keyboard mask
; conf i gUf"e Sio channels ;get number" of bytes ;get port address
; conf i gur"e cllanne I A bit rate ;configure channel 6 bit rate ;configure printer ready mask ;configur"e pl'inter ready value ; conf igur'e I/O byte
m
00
CO
Belleones Oper'a t i IIU System for T ,"ailS i en t [OIlU1kjl){l P,"ocessors 3949 3950 3951 3952 3953 3954 3955 3956 3957 3958 3959 3960 3961 3962 3963 :l964 3965 3966 3967 3968 3969 3970 3971 3972 3973 3974 3975 3976 3977 397B 3979 39BO 39BI 39B2 39B3 3984 39115 39fJ6 39fJ7 39B8 3989 3990 3991 3992 3993 3994 3995 ~i996
»
1) 1) (1)
::J Q., )(
m
3997 3998 3999 4000 4001 41102 4003 4004
FD74 FD77
the XEROX 820-11
32 0003 C9 boot
\
,, 026B' fC55 FC56 FC57 FC58 FC59 FC5B FC5C FC5D FC5E fC5F FC63 FC66 fC69
Id ret else equ endif _L
4B FFBB FAD6 FCIB FCI6
, ,
jD 28 :30 2B 2A 11 18
FC6] FC6'1 FC66 FC67 FC69 FC6B FC6D FC6F FC70 FC71 fC74 FC77
EB ED DIl 06 CB CB 10 23 EB CD ~L
[9
Ob 00 FFBD 0010 OE
04 3C lD FA FBBF fFBD
mdlllpl : mdlllp2:
dec jr dec jr Id Id jr
Z III ix de,hl a, I d,b e, I bC,(param4) jpix put2hs put4hs ~ommand
a z,mdmp2 a Z,IIldlllp3 hl,(last) de,16 mdmp3b
ex sbc ret Id mdmp3a: srI rr djnz inc ex ml11llp30: ca II Id ret
-02A5'
location command
--
a
memory dump
mdlllp3:
52
wllat
;if no parameters ;set ; Id ;set ;and ;set
goto address i x ,hI second arg to HL A third arg to DE
;set fourth arg to BC ;print A reg
--
overlay memdmp c8.seg
+
FC55 FC56 FC50 FC59 FC5B FC5E FC51
(iobyte),a
goto to memory
or scf ret push pop ex Id Id Id Id ca II ca II jp
EI
02B2'
09-Dec-81
overlay goto c8.seg
+
B7 37 C8 E5 DD EB 7D 50 5D ED CD CO C3
MACRO-80 3.44
de,hl hl,de c b,4 h 1 Illdlllp3a hI de,hl dump ( I as t ) ,Ill
; clleck parameter count
;derive bytecount for dump range ; i f addresses backwards ;divide bytecount by 16
;dump de*16 bytes strting at hi
memory examine command
overlay view c&seg
--
»
"0 "0
It)
:J
0.. )(
m
m
00 \.0
BolLolles OfJero till,) Systelll fo, T'"olls i ent COllllllalltl P,-ocesso,'s
tile XEROX 820-11
MACRO-80 3.44
09-0ee-81
J
4005 4006 4007 4008 4009 4010 4011 4012 4UI3 4014 4015 4016 4017 4018 41119 4020 4021 4022 4023 4024 4025 4026 4021 4020 4029 4030 40:11 4032 4033 40:14 403!) 4036 4037 403B 4039 4040 4041 4042 4043 4044 4045 4046 4047 404B 4049 4050 4051 4052 4053 4054 4055 4U56 4057 405B 4059 4060
Fc~55
FC50 FC58 FC5ll FC5f FCGI FCG3 FC65 FCG7 FCGA fC6D FCGf FCn FC73 FC74 FC75 FUG FC77 FC70 FU9 FUA FC7D FC7F FCUI FC83 FCU6 FCU7 FCOO FC!l9 FCOA FCOB FCUE FCOF FC90 FC91
CO CO FE 28 FE 28 FE 20 CO CD 10 CD ~l F DO 4F 87 07 07 U7 47 CD
viewO:
FB22 FC27 00 2F 20 20 22
08 F009 FOOC IB FBF3
viewl:
FC27
D6 00
28 08 CG 00 CD FBF3 :IF
DO 48 view2: view3:
B1
77 CD FBOE 2J
view4:
23 2B I B C2
view5:
ea II 'ca 11 cp jr cp jr cp jl' ca II ca II jr ca I I ccf ret Id add add add add Id ca II sub jr add ca II ccf ret Id add Id ca II inc inc dec jr
02E3' FC55 FC56 FC57 FC5B FC59 FC5B FC5D FC5F FUji FCG3 Fe£)5 FCG7
B7 37
CO 02 01 43 00 02 OC 69
nZ,viewl conin conout view3 hexbin nc c,a a,a a,a a,a a,a b,a echo cr z,view2 a,cr lIexbin nc c,b a,c (h I) ,a check hI hi hI viewO
B [channe I I
; cllanne I may be 0,1 or AlB
overlay baud e&seg
+
3D 20 IE CB OE 2B DE ED AF
z,view5
options and o.baud Baud Rate Command
if
*
mdata echo cr z,view4
baud I :
tlaud2 :
or scf ret dec j r. Id bit Id jr Id out xor
a Z a nZ,baudl e,l O,e c,bauda z, baue12 c,baudb (c) , I a
;if no parameters ; if channel specified ;set channel 1 (B) ;elleck fJort ;set COllllllunicat ions port ;set
;set
printer port baud rate
m
lD
0
» "0 "0 (J)
::J
n.. >
"0 "0 (J)
:J
0.. )(
m
4424 4425 4426 4427 4428. 4429 4430 4431 4432 4433 4434 4435 4436 4437 4438
/
Scr-eell
fO/-
tI',e XEROX 820-ii
MACRO-80 3.44
09-Dee-Bl
Md.lager
0472'
overlay term c&seg
+
OOOF 0016 0017 00lA ODIE 001F
pass8 ins lin dell in clrchr hOlllscr force
equ equ equ equ equ equ
15 22 23 26 30 31
0081 0082 OOBI OOB2 OOOA OOFF OOAE
kuplin kdnl in Rllltto9 Rllltalf Localf Typtog Brkkey
equ equ equ equ equ equ equ
81h 82h 80h+' I' 80h+'2' 801l+lf 80))+7fll 8011+' .
;Move top line off screen to bu·ffer ;Move bottom line off screen to buffer ;To9gle Remote Echo ;To9gle Remote Auto LF after CR ;Toggle Local Auto LF after CR ;Toggle Local Echo ;Hardware BREAK function
0007 0006 0005 00U4
s. I ecllo s.recho s.autol s.autor
equ equ equ equ
7 6 5 4
;.1 oca I ecl10 iremote echo ; I oca I auto If after cr :remote auto If after cr
0100 EE8D EfOO EFOn
T,'mllu f Buftop Siobuf T nns t k
equ equ equ equ
FC55 FC57 FC58 FC59 FC5A FC5C FC5E FC61 FC63 FC65 fC68 FC6C FC6F FC72 FC7:3
FC75 FC79 FC70 FC81 fC8S FC09
I
FE 02 3F DO
B7 20 2E 01 CB
:w
o1 EO 31 CO lA
02 00 0406 45 03 0507 43 fU8 EFOO FC30
1 B :31
54 65 72 69 6E 61 2U 60 6F 65 2E 20' 54 6F 75 68 2U 43
tennl:
terlll2:
cp ccf ret or jr Id I (j bit jr ld Id Id ca 11 db if [H)
60 6C 64 20 63 54
else dll endif db
100h Tr/llbuf+760~80
Monitr-IOOtI Siobuf 2
:check number of arguments
c ;if more than a nz, tenn1 : i f port specifed 1,0 bc,siocpa+siodpa*256 ;preset A channel ports 0,1 z,tenn2 ; if Oil or AlB llc,siocpb+siodpb*256 ;set B channel ports (ports),llc sp,trmstk pnext clrs options and o.esct esc, ' 1 ' passO 'Terminal mode.
Touch CTRL+ESC to ex it .•
}> -0 -0 In :J
C1.
)(
m
m
lD "-J
tJa1COIlt!5 OPt!"u till,) Sy"tem f Te,.,,, ilia I / Sc ( t:H:!1I Manager' 44::19 4440 4441 444L
4443 4444 444!) 4446 4447 444H 4449 4450 4451 4452 4453 4454 4455 4456 4457 445B 4459 44bO 4461 4462 4463 4464 4465 4466 4467 4468 4469 4470 4471 4472 4473 4474 4475 4476 4477 4478 4479 4400 4401 4482 448:3 4404 44B5 4486 44B7 448B 44B9 4490 4491 4492 4493 4494
0'-
fCHD fC!:)1 fC9S fC99 fC9C fC9E
4C 43 (if 20 6y 74 OD OA 04
2B 45 20 74 65 78 2E
fC9f
FO 21
fEE5
fCA::I fCAli FCA9 fCAC FCAF
C4 CD C4 lU
!) "
~J ~:i
Cll fOll6
tile XEROX H2O-II
MACRO-BO 3.44
09-Dec-Bl
du db
cr-, If eat
Id
Iy,status
;set pointer to status byte
term3:
ca II ca II ca II ca II jr
canst 'u,pkl slolst nz,prc term3
;status keyboard ; p,'ocess keyboard input ;status sio ;process remote character ;untll user escapes
,,
pki
fCBI FEC8 fD40 f2
- Process Keyboar-d Input.
;
jE OU
FUll feBL fCBJ fCB'1 fCB7 fCBA fCaC fCBt fCCl fCCS fCeB fCe9 fCeS FCCD fCDO
C4 CO CB 20 CO fD C4 C9 fE 20 CD CD
f021 f009 7f DB FD5F CB 00 7E fD4C
FCD3
IE
lB 52 04
pk I: brkfly
tn
81 12 fE50 fC3D
pk i 1:
I'd equ or ca II ca II bit jr ca II bit ca II ret cp jr ca II ca II
if
fCD', FCDA feDD FCDF FeEl FCE] fCEl;
CD fDB9
FeE9
, E lB 45 04
CD fDEB HI 14 FE 82 LO 13 CD fE50 CD feW
pki2:
deth else defb endif ca II ca II jr cp jr ca II ca II
if
feED FCFO FCF3 FCFb FCfU FCfA fCfC
CD FEUB CD C3 FE :W :iE 10
FDBI FE6E FF 04 60 16
pki3: pki4:
defb else defb eodlf ca II ca II jp cp jr Id jr
a,O $-1 a nZ,clrbrk conin 7,a nz,pkll sndrmt s.lecho,(ly) nZ,sndloc
;termlnate pending break ;read input
;if function key ;send i t to remote
;if local echo enabled, display console input
kup lin nZ,pki2 ;if not scro II up gcp ;98t cursor position pnext ;hom8 screen, then delete top line options and o.esct homscr.esc, 'R' ,eat homscr,dellln,eot It I (lb I
; I Ink top I I ne ;liisplay bottom line
pki3 kdn I In nZ,pki4 ;if not scro II down ;get CLIf'SOr pOSition gcP pnext ittome screen. insert blank line options and o.esct homscr,esc, 'E' ,eat homscr-,del I in,eot Ibl dtl rcp Typ to 9 nz,pki5 a, 1 shl s.lecho pkiB
; I Ink bottom , Ine ;display top line ;restore cursor position
m
lO
00
»
"D "D It> :J
a.. >< m
Balcones Oper-a l i IICJ System forTer-milla I / Screen 11'lanager 4495 4496 4497 4498 4499 4500 4501 4502 4503 4504 4505 4506 4507 4508 4509 4510 4511 4512 4513 4514 4515 4516 4517 451U 4519. 4520 4521 4522 4523 4524 4525 4526 4527 4520 4529 4530 4531 4532 4533 4534 4535 4536 4537 4530 4539 4540 4541 4542 4543 4544 4545 4546 4547 4548 4549 4550
FCFE FOfJfJ fDU2 f004 fDDG fDOU FDOA fOOe fDOE fDID FOl2 FOl4 fO I I fOIA fOIB fOlD FDIE fD21 fD23 F02() FD28 FD2A fD2e fD3U FD32 FD33 fD35 FD37 fD38 fD'3A FD3tl fD30
f040 fD43 f047 F04A
FE LO JE 10 fE 20 3E 18 fE LO jE FD FD C9 FE CO 3A EE 32 16 20 16 ED 3E f3 ED 3E B2 ED fB 3E C3
CD FO C4 10
BI 04 40 DE OA 04 20 06 B2 09 10 AE DO 77 00 AE FCB2 ff fCB2 10 02 00 4B fE78 D5 79 AA 79 FF fE9D
FED6
the XEROX 820-11
cp jr Id jr cp pki6: jr Id jr pkl7: cp jr Id xor pkl8: Id ret cp pkl9: ret Id clrbrk: xor Id Id jr Id sett)rk: Id Id d i. out Id or out el Id jp
,,
prc
flrc:
ca II bit ca II jr
CB 00 76 fD5f 26
CO f0072 FE 00 CO fD CB 00 6E
sndloc:
CO jE OA CO f072 :jE 00 t:9
, fD5f fDb2
CD FE90 fE 00
.
sndrmt:
Brkkey nz a,(brkflg) -1 (brkflg),a d,10h nZ,setbrk d,O bc, (ports) a,5 (c) ,a a,10101010b d (c) ,a a,Offh sloot
;set
I I ne SPACING
;set
line MARKING
;set up WR5 ;assert OTR,
7 bpc, RTS, Tx Enb
isend RUBOUT
to allow MARKING
- Process Remote Character.
sndloc ca II cp ret bit ,-et Id ca 11 Id ret sndrmt ca II cp
09-Dec-81
Rmttog nZ,pl< m
m ~
0
W
aolcont!s Ope,'a I ill!) '>yst;;111 f lenni Old I I Scr t:H::I, ',Ionoue f' 4775 4776 4777 4778 4779 4780 4781 4782 4783 4704 4785 4786 4787 4780 4789 4790 4791 4792 4793 4794 4795 4796 4797 4798 4799 4000 4801 4802 4003 '1004 4005 4006 4007 4000 4809 4810 4011 4812 4813 4814 4815 4016 4017 4018 4819 4820 4021 4822 4023 4824 4825 4826 4827 4828 4829 4830
fEBt: f EEIffECD fEe:l fEC5 fECb fEC7
fEC8 fECB fECE FEDI fED2 F E[l:l fED5
0,'
tile XEROX 8:10-11
Id sub jr Id siopl2: pop siopl3: pop ret
fEA7 FEEC fEEA
,,
Sioist -
Sioist:
ca II Id Id sub ret or ret
fF
,,
Sioin
Sioinc:
ca II jr Id inc jr Id Id ret
,
fEC8 FB
Siopl hi, (opoint a,(ipoint) I Z - 1
fEE5
OU
status: db
0
fEEG fEEO
I) 100 UIOO
llotptr: dw topptr: dw
Trmbuf Trmbuf
fEEA FEEC
EFOO EfOO
ipoint: dw opol"t: dw else term equ endlf
slobuf siobuf
1f
,, +
070B' FC5~)
fC5B FC5C fC6(J FC64 fC6U fC(lC FC7D FC74
CD fC3D 42 61 75 09 09 3C (l I 74 65 2'0 5B 42 4'1 5D OD 44 75 6D (J9 09 58 74 61 72
; po II for input ;set out pointer
;if data not ready
Sioist z,Sioinc a,(hl) I nZ,Sioil I, low siobuf (opointl,hl
;set
input ready status
;advance out
what opt i OilS and 0.1,;; I p
Help Key COlllmand. overlay help c8.seg ca II
64 72 3E 2f OA 70 73 74
1
- Sio Input Character.
CD 28 7E 2C 20 2E 22 (:9
Sioi I:
;if buffer full
Sio Input Status.
FEDb FED9 fEDB FEDC FEDD FEDF FEEl fEE4
02 00 fEEC
09-Dec-81
a, (opo i nt) I z,siopl2 (ipointl,hl hi bc
s i op II:
JA fEEC 95 L8 03 22 fEEA EI CI C9
CD 2A 3A 95 C8 fb C9
MACRO-80 3.44
LIe t II
pnext 'Baud
d;;tb
'Dump
(start]
[BIAl',cr,If
[;;nd] , ,cr,lf
m
....
a
~
»
-0 -C (I)
:::I
a. X
m
aalcunes Ope'iit in,) System to ,- ti,e XEROX 020-11 Te,'minal / Sc, een Manage/4831 4032 4tl33 4034 4035 4836 4837 4038 4839 4040 4841 4842 4843 4844 4845 4046 4841 4048 4049 4850 4051 4052 4853 4854 4055 4056
fC70 fC7t: fCO(} FCOI fC85 fC89 fC80 fCOf fC93 fC97 fC9B FC9f fCA3 FCA7 FCAB fCAF fCB3 fCB7 fCB9 fCBA
Sf)
liE lJA 47 D9 64 00 tiD
66 3C 72 50 6F 09 6E (iD
76 00 04 C9
MACRO-80 3.44
09-0ec-81
20 5B 65 64 50 00
6f 09 64 OA 6f 79 61 3E 72 63 3C 3E 73 61 OA
74 6f 3C 61 72 3E
defb
'Goto
' ,cr,lf
64 09 64 00 6f 6f 78 20 6B 6C
defb
'Modify
' ,c r, If
defb
'Protocol
(msk valj',cr,lf
69 09 64 OA 74 6C 6f 5B 2D 50
help
defb ret else equ endif subttl page
eot "hat Segment Size Information
Bdlcufles OpefaliliU ,>ystefjl for- tile XEROX 820-11 ~egment Size i.ltO.1I1dtion 4857 4858 4859 4860 4861 4862 4803 4864 4865 4806 4867 4868 4809 4870 4871 4872 4873 4874 4875 4876 4877 4878 4879 4880 4881 '1802 4803 48B4 4805 4006 4887 4800 4889 4890 4tH) I
4092
m -'
a
1TI
·. 0771 . 0299
+ tpamax
·. OOOO!
+ rbase
041B
·. U518! FC55 UC55
+
r-estop reslen
MACRO-8U 3.44
09-Dec-Bl
Top of Overlay Area. overlay stop c&seg equ tpal
;set
length of transient move
Top of Resident Monitor. below defs equ
comres $
Top of Non Resident Monitor. allove d&seg equ equ
$
$-mon it r-
update
; n~sident top ;Iength of resident monitor ;clear active segment
Top of Burned Rom Set. Ill: 1
romtop
equ
bloc+dloc+tloc-monitr
Fil lOut Unused Rom Space. OC55"
cseg
0771 •
if defs endif
(rom+romsiz-romtop) gt 0 (roU\-t-roms i z -romt,op) .-1
subttl page
Resident Monitor- System Ram
m
->
a
0'1
tialcolles OperatilJU ~ystem fOJ- tile XEROX 820-11 Resident ManitoI' ~ystem Ram 4893 4894 4895 .4896 4897 4898 4899 4900 4901 4902 4903 4904 4905 4906 4907 4908 4909 4910 4911 4912 4913 4914 4915 4916 4917 4918 4919 49~0
MACRO-80 3.44
.pllase ;; FFOU FFOO FFIO FFI8 FFIC
veutab: siovec: ctcvec: sysvec: genvec:
09-0ec-81
ram
Start of Documented Storage Locations . defs -defs defs defs
16
a 4 4
; interrupt ;space for ;space for ;space for ;space for
vector table starts here 8 vectors for sio 4 vectors for ctc 2 vectors for system pia 2 vectors for general pia
keyboard data input fifo variables FF20 FF30 FF31 FF32
fifo: flfcnt: fifin: fifout:
FF33
.. FF34
16 I I I
defs
;console input flto ;fifo data counter ;fifi Input pointer ;fifo output pointer ;round address
More interrupt vectors
expvec: defs i i
Ff3C Ff3E
defs defs defs defs
8
;space for 4 vectors for expansion slot
Available memory pointers.
availb: defs availt: defs
2 2
;bottom of available memory ;top of available memory
49~1 49~2
4923 4924 4925 4926
End of documented storage locations. ff40 ·FF50
defs
16
; local stack for interrupts
intstk:
4921
}> U U I'D :l
a.. >
U U t1)
:::::J
a.. X
"
OOU9 02BO ff:34 F2fE (J002 Ff2U fC59 F721 F4F2 F6EF OOAO 0000 0002 0001 OOIF F626 F6L7 FF IC FB37 FB50 F319
CONTBl CPBI CR CRTOI CRT04 CRTMAX CRTMVO CRTON CRTSTK CSRCHR CTCI CTCVEC CURSOR DAYTI DCTRl DEFlPY DIRBUF DISATR DLN2 DlOC DOC OPBIlO DPBOFS ()PBRG6 ORvTAB ()SK3 ()SKERR DSM6 DSW DUMP DUMP4 ECHO ENATR . ERR ERR3 ERr~ML
ESCAPE EXPVEC FASTCR! FOLUN fIFO FILLI FIflST2 FlOP3 FLPfRM FM.DOSS FM.HARO FM.SZ fMDD FORCE GCAO GCAA GENVEC GETLlN GLIN4 GOLD
0230 f736 fC36 0196 0169 3000 f296 f299 003C 0018 OOIA 0036 f607 f086 0000 F6EB FFAF FDC2 FDD2 FC23 F490 f430 F470 f4AO FC76 1367 03Ef OOEF FDBI FB98 fA08 fb9B OOOO! OOBC 0004 001B 028A 0000 0001 ff30 Ff32 f6f6 F4BO f4FC 0005 0004 0001 0007 0006 0204 F634 FE50 fBOA F097 FBOf 120B
CONTRl CPB2 CRLf CRT02 CRTDVR CRTMEM CRTOfl CRTONI CRTTOP CTC CTC2 CTLSIZ CWP DAYTIM DEBUG DEFlUN DIRCUR DlN OLN3 DMPFMT OPB5D DPB8S DPBRG4 OPBRG7 ()SKO OSKCMD DSM4 DSM7 DTL DUMP2 OVRLMT ECR ENTRY ERRI ERRMI ESC ESCTAB fALSE fBLUN FIFCNT flFOUT FIRST FLOPI fLOP4 FM.OO FM.OS fM.SDOS fM.lJN FMDOSS fORSPC GCAI GCP GETHEX GETSEL GNlJMI GOTO
MACRO-80 3.44 f723 f759 0030 0199 f2A3 f2E7 f293 f2fl 0000 0018 0016 0254 ff56 fOEB 02C5 0017 0lF3 FDC7 FDEI 02E7 F470 F390 F480 F1Fl FC7B F4BO 01EF 0000 F6D5 FBB4 f005 FOA2 0004 OOCI 0000 029B 0011 0000 0000 fF31 1428 f708 f40E f506 0007 0006 0000 0003 0000 F61A F63F FE61 FB2C fB38 fBE4 0009
CPB CPB3 CRTBAS CRT03 CRTLOIR CRTMV CRTOff . CRTOUT CSPACE CTCO CTC3 CTLTAB DAY DBl DEFCUR DELLIN DISI DLNI DLN4 ONCSR DPB5S DPBASE DPBRG5 DPM DSKI OSKOVR DSM5 DSPACE DTYPE DUMP3 EAT KEY EIRET EOT ERR2 ERRM2 ESCADR ESCTBL FALUN FCLUN FIFIN FILL FIRSTI FLOP2 FLOP5 FM.OODS FM.FV FM.SDSS FM.WR FMDS GCA GCA2 GC!';I GETHlP GLINI GNlJM3 GPIOCA
09-0ec-lll
):> U U
('[)
:J
a. )
< "1l
6alcolles Oper-a 111l:"Elld ff69 OUOf fAIO fAOf DO I I F70C FCC9 FCf6 FDOE FC3D fAAC fCof OU02 0070 FCIB fCI6 041B F647 F6DC f4fE f641 FoAO fC55 fOAl lJI91 0003 UOB2 1800 F5F8 ffE2 0001 0071 00U4 F4BO f4f3 0010 f470 009E ff5B f5EB f5A3 F5C4 F585 f596 f50B FA5A fD2C F284 OICf 0210 fC73 FC9E f6CE U007 fEU FED6
t j "e!
PARAMJ PASSU PtiVORV PliVUNT PIOAS PIOOUT PK 1 I PKI4 PIU 7 PNEXT PRMTI PROT2 PRSI PRS4 PUT2HS PUT4HS RBASE ROC RDONLV RDWRA RECAL RESET RESTOP RETVI REV RGLUN RMTALF ROMSIl RSE RSHll RTK4 RHO S.AUTOR SAI403 SASI \SA SID SASSTR SCRPln SECS SEEKI SEEKX SEKI SEL2 SELONS SELERI SELTBL SETBRK SET CUR SETlOW SETROvl SIGNI SIGN3A SIM SIOCPB SIDI I SIOINC
':)ystem
for tile XEfWX 82D-II
ff66 fADE fAI:i F7fO 0012 f7f4 FCDf fCFE FDI4 fE7B FA62 1459 003B OOAC fC03 FCOC FE6E F605 F4E7 F4F6 F6E9 OC55 fIEf F09A FIE9 F6E8 OOBI 17EI F603 FFE4 0041 1800 0007 F4CO F4F6 0300 FIEC 0lC3 FA3E F5EO 0518! FA39 f591 F510 f42A F544 021F 0100 0lF7 0205 FC81 FCA6 EFOO 0004 FOFO FE7F
PARAM4 PliVCMD PHVSEC PIOI PIOBO PIOSTO PK12 PI05 PKIB PORTS PROMPT PROTO PRS2 PRS5 PUT2HX PUTNIB RCP ROlD RDOP RDWRS RECLUN RESLEN RETINS RETVAL RFI RGRECAl RMTTOG ROMTOP RSEI RSTPC RTK5 RXI984 S.LECHO SASO SAS2 SASlDL SAVSTK SEARCH SEEK SEEK2 SEGA SELl SEL3 SELEE SELERR SElUNT SETCOL SETGRA SETMSK SETXY SIGN2 SIGN4 SIOBUF SIODPA SIOIN SIOINP
MACRO-80 3.44 fB5f fA15 fAil 0010 00'13 FeBI FCf3 F006 fDIB fD40 fC6B DODO 0061 f339 fB29 FfOO FE73 F61B fA4A fA48 fl30 F07C 02F2 f5f6 EEOO f708 DODO FA08 f332 FfEO 0061 0005 0006 F4B2 001·2 0012 0014 f4E6 f50E F5EF f5B9 F578 f598 FAI7 f360 0104 FOA4 0109 F337 0209 FC88 fC55 0006 0005 FOEO FE77
PARAMS PHVDMA PHVTRK PIOAD PIOBS PKI PKI3 PKI6 PKI9 PRC PROTI PRS PRS3 PRVATT PUT2J RAM RCPA ROlDI ROWR READ REMOVE RESTART RETURN RETlR RGDBUF RIGOPB ROM ROTOP RSTATT RSTSP RTK6 S.AUTOl S.RECHO SASOA SASIC SASIS SCROLL SEClEN SEEKO SEEK3 SEKO SELIW SELDEN SELECT SELTAB SETBL! SET CON SETINV SETPRV SETXYI SIGN3 SIGNON SIOCPA SIODPB SIOINI SIOINS
09-Dec-UI
»
U
n
CD ::J
a.. >< "T1
Ba 1cones Ope"a t i Tlw"End
IIU
Systelll for tile XEROX 820-11
MACRO-80 3.44
I
FECU FE91 fEBC F 113 FEOA flOE [1031 F65A F693 F6BE F50E F550 F!:;30 F05f F602 F20E FFCB F224 0000 F610 17E 1 FCEE 0010 031F 14E2 FCA3 FU::i I F192 FIE8 0771
0299 EFOO FFFF· fC5E 1477 F040 1443 1315 FC09 FC90 F669 0031 ODIC 0011 f696 f64B fA44 0008! 00 II FA51 EE7D EE62 EE6D EE60
SIDI ST S lOOT I SIOPLI S IORD I SIORDT SIOVAL SLDDEN SMF SMFI SMF2 SMFS SMFS2 SMFSA SNORMT SOM SPACT SPAREI SPCNT STACI\ STC STOP SWAP SYSCTL TAB TERM TERM3 TEST2 TIMER TIMER3 TLOC J TPAMAX TRMSTK TRUE TYPO TYPE USRSEC VERCMO VI EVJ VIEW2 VIEW5 WCC WODD WDSL WDTR WfRA WOC WRITE XCKSI XON XQPliYS Z.BAUA Z.KEYM Z.SIOB Z.STPR
"T1 U1
No Fatal e,'"o,"(" J
FlOC FOFO FEC5 FI29 Fl05 FFOO FAOe F660 F6A3 F604 F530 F559 0301 FOO2 F604 F220 FFCC F500 1070 F644 F66E fCFB 001C F65F FC5E 13FB FC60 FIBI 0006 FEE8 F6Ff f6EO f639 fC90 OOfF f31B fC5E fC55 fCOA F003 0010 0013 0012 F6B7 FAC9 f64D fE34 0013 F 115 F50B EE7E EE5F EE77 EE7B
SIOMSI\ SIOOUT SIOPL2 SlORD2 SIORDY SIOVEC SLERR SMFO SMFIA SMF4 SMFSI SMFS3 SMP SOFT SOMI SPAOOR SPARE2 SSELEC START STEPR STPADR SWAPI SYSPIO TOI TERMI TEST TEST3 TIMER I TIMOLJ TOPPTR TRKTBL TRN5 TTC TYPI TYPTOG USRSTK VERFI VIEWO VIEW3 WARM WDI797 WDDT WDSN WFR WtiAT \'IOC I WLJP XOFF XONENB XSELERR Z.BAUB Z.SCRA Z.SIOM Z.XONP
FE90 FEA7 FEC6 FI2C FOE5 FOF9 0030 F675 F6BC F601 f548 "f573 F04C F069 FC IE FfCO fFOO FOBf FEE5 FF54 02Cl 0069 FF18 F656 FC68 FC5E Ff52 F1B9 ff55 0299 0100 F410 F63A FCA4 020C FFOO fC66 FC6f fCBE F35F 0010 0030 0010 F69A FE41 f650 OOOO! F12D F344 FF5B EE7F EE63 EE79
SIOOT SIOPL SIOPL3 SIORD3 S10ST SIOXI SLSOEN SMFOA SMFIB SMFA SMFSIA SMFS4 SNOLOC SOFTV SPACE SPARE SPARNO SSP STATUS STEPRT STUFF SYNC SYSVEC TOO TERM2 TEST! TlKCNT TIMER2 TlMOLJT TPAL TRMBUf TRN6 TTCA TYP2 UPCSR VECTAB VERf2 VIEWI VIEW4 WASTED WDCR WOSO WDSR WFRI WLP WOC2 XCKS XOFfLG XQDVR YEAR Z.IOBT Z.SIOA Z. SIOV
09-0ec-OI
!
"T1 (J)
.A .6 .C .0 .E ·F .G .H ·I ·J
.K .L .M .N .0 .P ABORT ABOvE ADDRH ADDRL ALLOO ALLOI ALL02 ALLU3 ALL04 ALL05 ALL06 ALL07 ASVNC ATlRIB AUTOBl AVAILB AVAILT B.US,V B.CD B.IO B.MSG B.PAR B.REQ B.RST B.SEL BAKSPC BASE BAUD BAUDI BAUD;!
»
"U "U
([)
J
a.. X II
2433# 2470 1756# 1757# 1758# 1759# 1761# 1762# 1763# 1764# 1766# 1767# 1768# 1769# 1771# 1772# 1773# 1774# 96# 177# 2852 3036# 1803# 1804# 1805# 1806# 1807# 1808# 1003# 1010# 73# 1179 3251# 446 4920# 2514# 2516# 2518# 2515# 2520# 2517# 2521# 2519# 1345 1132 3303 4053 4057
~4S0#
:>470
U15 562 :J035# lU20 IU25 1830 18:35 1840 1845 lU50 1055 526 1266
2450 2470#
2450 2470
2450# 24UO#
2450 2480
2460# 2480
2460 2480#
2460 2480
2460#
681
1701
1737
7415
3126
3142
3237
4872
1564
1b'f 1
1592
1623
4702
4950#
4952#
4\:)19# 2943 29: "0
"0
11> :l
0..
>
< "Tl
DPtlOFS DP8RG4 DP8RG5 DPBRG6 DPBRG7 DPM DRVTAB DSKO DSKI USKJ DSKCMD DSKDVR DSKERR DSM4 DSM5 DSM6 DSM7 DSPACE
DSW DTL DTVPE DUMP DUMP2 DUMP3 DUMP4 DVRLMT EATKEV ECHO ECR EIRET ENATR ENTRV EOT ERR ~RRI
RR2 ERR3 ERRMI ERRM2 ERRML ESC ESCADR ESCAPE ESCTAB
2011# 1839 1844 1849 1854 874 1720 4080 4078 4113 3319 1783 4109 2450# 2460# 2470# 2480# 233# 1738# 3238# 4170 4873# 2169 4489 2324 3412# 3416# 3429# 3436 3129# 3654# 3357 2915 641# 1263# 241# 84# 4444 383 318 329 388# :382 384 385 89# 1391')# 1364 1222
::109 2450# 2460# 2470# 241lll#
3095
3100
~)O5#
1782# 4092# '11195# 4115# :3:324 2()I8# 4120# 2452 2462 2472 2482
no
1738# 3238# 4190 4878 2270# ,1600# 2384# 3447 3425 3434 3443# 3657 3525# 2920 1411 264 3246 4472 385# 320 384# :391 394# 397# :JB6 :1619 1422# 1377#
4073# 3048 2453 2463 2473 2483 563 2416 3572 4233 4878#
563# 2416# 3572# 4254
682 2416# 3663 4273
682# 3127 3787 4299
682# 3127# 3958 4327
1163 3127# 3977 4387
1163# 3143 4003 4820
1702 3143# 4047 4861
3143# 4073 4867
1738 3238 4135 4873
4123
4354
3996
4118
4006 2923
4025 2925
2949#
5025 3296 4484
3337 4641
3376 4724
3537 4849
3546
3652
3867
3930
3928
4339
4429
4472
4484
4641 .
4722
382# 400 400# 3926 1394
170U
11 -'
tv
}> "0 "0 II> :J
0X
"
ESCTBL EXPvEC FALSE FALUN fASTCRT FBLlJN FCLlJN FOLUN FIFCNT flFIN FIFO FIFOlJT FILL FILLI FIRST FIRSTI FIRST2 FLOPI FLOP2 FLOP] FLOP4 FLOP5 FLPFRM FM.DD FM.DDDS FM.DDSS FM.DS FM. FV FM.HARD FM.SDDS FM.SDSS FM. SZ· FM.UN FM.WR FMDD FMDDSS FMDS fORCE FORSPC GCA GCAO GCAI GCA2 GCAA GCP GCPI GENVEC GETHEX GETHLP
12L] 491511 2311 2525# 569 2526# 252711 252BII 417 B23 774 771 3307 423BII 2669 305711 3061 202511 2042 2060 206911 2029 2B36 200111 25bUII 2003# 200011 200211 256911 256611 256511 256211 1999# 2563# 2561# 256711 2560# 4394# 1349 2B60# 2B64 287311 2B75 2B66 4469 471111 4902# :D95 3351#
I ~l~411 :!5 Llf,! 1!J~b
2764 1109#
.] 7 10
37~lH
40B2
4755
2B05
3005
2763
2"165 bU9
769
B14
490711
4~nUI1
4911611 4909# 423311 4244 :J04511
3050
H1b6
J()b911 20BO 2046 2Ub311 21172 2035 303111 2003 n02 2325 2:319 2329 n66 2763 27b2 2705 2003 271.13 L7l:i4 2(-)B6 4b2b 1453# 2UB!) 2UbGII 2B77 2U1UII 2Bb7# ·14U 1 4712 :145b# :i:J59
204BII 207511 2370 2765
2391
2394 2767
276B
2769
2366
2367
2371
2709 2B07 2BI7
3055 4702#
»
"0 "0 It)
::s
a.. >
-0 -0 I'D J
0-
>< "T1
MDMP2 MDMP3 MDMP:iA MDMP3B MEMDMP MESSAGE MILO MILOI MIL02 MILLI MILL2 MILL3 MILL4 MILL5 MILL6 MI LLI MILSEC MINS MLU MODE MODEl \ MDNITR
3980 398", - 399111
NT4 IH5tH6 tH7 NTHK5 NTHK8 tHJLl NT NUMCON
--
"T1
Ul
:198711 _ll)93
3985 3305
399611 397711
499111
501 I
5022 944 96411
968 952 937 989 984 994 932 410 925
5012
5013
5014
5015
5016
5017
5018
5019
5020
5021
355 4190
3572 4233
3663 4254
3787 4273
3845 4299
3958 4327
3977 4387
4003 4411
1356
1357
1358
1359
1360
1362
1365
1366
95JII 969 97011 97511 98211 99311 99511 99611
935
981
99811
92011
927
493011
1670 115011 125111 228 4073 4861
277811
310 4135 4875
243 2620 280!l 2812 2821 2818 2!l35
10611 1745
280111
284711
284!l
494111
2609 1247 1244 '.3711
4047 482Q MONTH MDVLN MPA MPAI MPA2 MPA21 MPA22 MPA3 MPA4 MPA5 MTRAOR MULTI NBLK NMI NOND
::198411
354 4170 4881
493811
2806 2091 121111 303711
198311 135-1 142411 242811 242911 243011 243111 200611
200511 588 435
281411 281611 282311 282611 284011 284911
21"32 1326
213311
2152
"!261 1352
2264 1353
2280 1355
2450 2'160 :2470 2-180 1190 218B 598 443#
2450 2460 2470 2480 771311 648
4965
.... 0\
11
NUMUNT O.AUTO O.BAUD O.DDVR O.DISK O. E SCT O.F I LL O. rlELP O. I NPC O.MOVE O.OuTC O.PROT O.RAMT O.RESV O.TERM O.TYPE O.VERf OPCODE OPOINl OPT! OtiS OUTCMD OUT CRT OUT CUR OUTPUT OVERLAY P.ACKN P.AUTO P.ONLN P.RDY! P.RDYO P.STRB P2L PARAO PARAI PARA2 PARA4 PARAMI PARAM2 PARAM3 PARAM4 PARAMS PASS8 Pt-IEX PHYCMD PHYDMA PtWDRV
»
lJ lJ /1)
::J
0.. X 11
2bb:.l# 107# 111 # 110# 1168 117# 119# 108# 112# 120# 113# 109# 115# 1068 121# 118~
114# 2606 4775 123# 3645 4338 3316 4565 580 3:;00 183# 4232 146# 151# 147# 148# 149# 150# 2762# 3383# 3390# 3394# 3397# 3206 3287 3288 3969 3284 4:389# 2583# 3145# 3150# 3147#
UU 41141 123 124 123 125 "iU 1 5 4129 3551 4164 4295 126 124 .3b37 J645 125 2()21 4/flb ;24# J783 4379 4170# 4627 IUIO# 3511# 3571 4253
3783 4066 128 4229
1218
3:j97 49588 4959# 4116 JJU4# ]046 J223 :i215 jl61
4338
4428
4471
4483
3014
3033#
125 4129 4483
126# 4164 4815
126 4184
128# 4229
1218 4250
1341 4269
3551 4295
3637 4323
3957 4326
3976 4386
4002 4819
4046 4860
4072
4134
4169
4189
4250 4184 4379 4323 3551 2632 4801 124 4041 4428
4269 2746 4810# 125# 4066 4471
4632
4754#
4222 3662 4272
3786 4298
3757
3759
542 'J770 542 2778 3389 J4D3
1341
J405 4099 4960#
3856 4100
4957#
»
"0 "0 t1)
:::l
0.. X 11
FiHY SEC PHYTRK PtiYUNT PIOI PIOAD PlOAS PIOBD PlO8S PIOOUT PIOSTO PKI PK I 1 PKI2 PKI3 PKI4 PKI5 PKI6 PI\l7 PKI8 PKI9 PMSG PNEXT PORTS PRe PRINTX PRMTI PROMPT PROTI PROT2 PROTO PRS PRSI PR52 PRS3 PRS4 PRS5 PRVATT PIn 2115 PUT2HX PUT2J PUT 41iS PuTNI8 RAM RBASE RCP RCPA ROC RDID
3149., 3148., 3146., 3762.92502., 2501., 250'1" 2503., 3735 3745 4449 4462· 4468 447& 4480 4492 4496 4500 4494 4504 2577., 3243 4426 4424 4451 4999., 3267 565 4302 4315 3317 276# 278# 311# 331.# 342# 360 1153# 3344 340011 3339 3342 3493 36# 353 4490 4716 2018 2234
14 1~J:j
:j~ j
3UJ2
:J1li3 ~5!)6 :!~)
nL
2SD7 '!~j 75 3752., 3752 4456., 44li7., 4479., 4490., 4491., 4-'195., 4499., 4503# 4498 45D9# ]048 3292 -'l47!) 4517 4530.,
JlU1., 3241., 4]12., 4317# 4299# 326 :09 324 340 348 368., 1155 :J424 3503 334411 3413 3495# 355 4068# 472111 472311 2149 224311
2503 2508 2977 3753 3768.,
2504
4502
4506#
3334 4482 4729
3374 4640 4730#
3536 4721
3253
3290
3297
392
611
350511 3505
3971
350211
3972
440
2225 2375
2999
3542# 4822
4144
4146
4894
4970
5007
229411
2354
3549
3617
3861
3925
4120
4336
"
-"
00
»
"0 "0 /1)
:J
a.. >
u
uCI)
:l
a. )(
:c
:c
U1
XEROX B20-II 81()~ CtIARIO - CI1a,·act"," 19B 199 200 201 202 203 204 205 206 207 20U 209 210 211
MACRO-BO 3.44 [/0 Module
09-Dee-BI
FOOD
monit,.
equ
OfOOOh
F048 F04E F051 F054 F057 F05D F060
canst conin conout list I i5tst ,"eader punch
equ equ equ equ equ equ equ
monitr+4bl1 lIlonitr+4eh man i t r+5111 lOonitr+5411 monitr+5711 lIlonitr+5dl1 lIlonitr+60h
Subttl page
CPIM Deblocking Driver
;B20+ Resident Monitor Address
I
XEROX ,B20-II UIOS
0\
CP/M Dt!blocking D, iver-
» "0 "0 to ::l
0.
>
U U
It)
:J
0-
>
CPIM Deblockinv 0, ive, 435 436 437 438 4:39
::J
a. X
I
404 257 517 723,(t 722,(t 720,(t 530 3\,(t 225,(t 22(),(t 16 28 82 180 176 200,(t 40# 61 628 17 452# 462 393 391,(t 25 18 397# 391 685,(t 714 4\,(t 320 504 507,(t 516 520 546 497 70 326 29 392 366 277 456 359 352 704,(t 279#
719,(t 539 522
724,(t 72 \,(t
549
563,(t
678 677 205# 206# 111 183# 185# 202 69 146 6:.J4
566
172# 203
2D4
205
206
207
208
160# 638
168 676#
641
656
676
680
702 720
703 721
704 722
705 723
706 727
518
592
705#
531
709#
~[J8#
4b6,(t 416,(t 459 119 207,(t 527 452 694 718 152 471# 525# 510 522# 5:31 # 550# 504,(t 123# 457 378# 70:JoIt 541 334 511 455 463 191
465 430# 544# 698 719
12~
505 708# 481 707# 506 706#
533,(t
707
708
712
713
»
"U "U I'D ::J Q. )(
I
SEL2 SEL3 SEL4 SELCMD SELDSK SETDMA SETSEC SETTRK SKIP SPT TRANSZ TRKZFL UNACIH UNADSK lJNASEC UNATRK UP wBaaT WBTI WBT2 WBT3 wBT4 WBT5 WBTCOM WBTERR wRALL WRDIR WRITI WRIT2 WRIT3 WRIT4 WRITE WRITHS WIHVPE WRLJAL XDR XDRI XDR2 XDR3 XDR4 XDR5 XDR6 XllR7 XDRA XDRB XLATE XQDVR
283 289 307 293 21 24 23 22 243# 92 84 324 431 473 485 493 221# II
101 110# 117 136 ... 45# 56 ... 48 235 ... 236# 469 491 484 478 26 403 ... 467 237# 298 605# 612 616 627 633 631 665 604 625 79 2JO ...
:
J J
1> :J
:l.. K
Balik ",(I PllYS i ca I 0, i v,,..' Oi r'ectory Secto, , Opt) & Oph 22::1 224 225 226 227 228 229 230 2::11 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 27:3
274 275 276 277
-....J
\
MACRO-80 3,44
u'O
FADn FADC FAEO FAE4 FAE5 FAE7 FAEB FAEF FAF3 FAF7
42 20 02 'IF 00 01 05 00 00
40 00 02 06 00 00
00 03 00 00 00
40 04 00 00 00
FAFB FAFC FBOO FB04 FB07 FBOB FBOF FB13 FBI7
00 4F 'IF 52 00 04 00 00 00
50 4E 4F 00 00 00 00 00
54 20 40 00 00 00 00 00
49 20 10
FBIB FBIC FB20 FB24 FB27 FB2B FB2F FB3::1 FB37
00 53 45 4D 00 07 00 00 00
43 'IE 45 00 08 00 00 00
52 20 40 00 00 00 00 00
FB3B FB3C FB40 FB44 FB47 FB4B FB4F F853 FB57
00 45 4E 52 01 09 00 11 15
58 44 41 00 OA DE 12 16
50 20 40 00 DB OF 13 17
FB5B FB5F fB63 FB67
0000 0000 onoo 0000 FB7F FB6B 0000 FB7B
dpl1:
FB6B FB60 FB70 FB74 fB78 FB7A,
0002 04 OF 01 0018 0003 n080 0000 fFF8
dpb:
on
4F 4F 54 20 20 20
Direct; db de
00 00 00 00 45 20 18 00 00 00 00 41 20 80 DC 10 14 18
0 'BOOT
09-0ec-81
R'
db db db db db db
'OM' 00,00,00,64 01,02,03,04 05,06,00,00 00,00,00,00 00,00,00,00
db
0
db
'OPTION
db db db db db
00,00,00,16 04,00,00,00 00,00,00,00 00,00,00,00 00,00,00,00
db db
0 ' SCREEN
db db db db db
0,0,0,24 07,08,00,00 00,00,00,00 00,00,00,00 00,00,00,00
dl) db
0 'EXPAND
db (Ib db db db
01,OO,OO,80h 09,10,11,,12 13,14,15,16 17,18,19,20 21,22,23,24
dw
0,0,0,0
[iw dw
dirbuf,dpb o ,a II DC
dw db dw
2 4,15, I 24,3,128,0,-8
;spt ;blkshf, blkmsk, nullmsk ;dsw ,di rm, a I I ocOI ,Chksi z, trk off
db
0
; 128 byte sector's
;Bank 0 Memory locations
OOOOh-l fffh 2000h-2fffh
ROM' ;Bank
o
,lAemory locations
17ffh-lfffh
MEM'
;Bank 0, Memory locations
3000h-3bffh
;Bank 0, Memory locations
4000h-5fffh 6000h-7fffh 8000h-9fffh aOOOh-bfffh
RAM'
MACRO-BO 3.44
Ballked PI~lysical [wiver Dir"ectur'y Secto,", Dpt) & Dpl\
00
nil £19
200 201 2B2 2B3 284 285
»
"U "U
t1)
::J
a.. X
F676 f67F
a I I oc: ds dirbut: ds
017F
drvlen
4
120
09-Dec-Bl ;al location vector ;directory buffer
. deplldse equ i-driver Sullttl page
System Identification
»
"U "U
lD ::J
0...
>
"0 "0 (J)
::J
0... X '-
Positioll encotl"U i·,eylloar-u 11aflLII er' ROM ."es l(Jellt CHr Or' i ver' 404 405 406 407 400 409 410 411 412 413 414 415 416 417 418 419 420 421 422 42:1 424 425 426 427 420 429 4:10 431 432 433 434 435 436 437 430 439 440 441 442 443 444 445 446 447 440 449 450 451 452 453 454 455 456 457 450 459
196f 197U 1973 1974 1975 1976 1970 1979 197A 1970 197f 1982 19U3, 1904 1905
MACRO-OO 3.44
:W () 1 0016 09 7E B7 20 OB 23 7E 1959 3E 00 CD 1959 23 AF 7E C9 Cll
1986 1909 190C 19UE
21 190f 01 0007 EO 81 C9
190f 1993 0007
119 OB OC
If
ptrOI:
IE
09-Dec-Ol dec Itl add Id or jr
hi oc,prntsz til , bc a, (h I) a nz,ptrOI
inc Id ca II Id ca II inc xor ld ret
hi a, (h I) posout a,OOl1 posout
,,
Poesc
Poesc:
Id Id cpir ret
'"
a a, (h I)
-
;tl-anslate ;offset to translation ;translation byte ;if zel~o • requires overstriking sequence ;non-zero - go output char ;zero - use next 2 bytes In table as sequence ;first byte ;oackspace ;second byte i set z for return flag ;get translation
sear'ches the escape table for a match with the char passed ill a. if found returns with z set otherwise z is clear
til, pesctb bc,esctsz
;table of escape sequences ii size of table
; 63 9 daisy printer
pescttl: defb
09h,Obh,Och,1eh, Ith, 16n,Ilh
esctsz
equ
$-lJesctb
,,
Function:- to deal with characters form a position encoded keylloard. input:A cllcll-acter read from PIO CMO/STATUS byte bit 7 -eMD/STATUS byte if set bi t 6 -upstroke flag bit 5 -y axis negative (mouse) bit 4 -x axis negative (mouse) bit 3 -mouse active bi t 2 -ctrl key station active bit I -shift key station active bi t 0 -lock key station active First data byte bit 7 -Always r'eset blts(6-0} -key station or x mouse displacement Second mouse data byte bi t 7 -Always reset oits(6-0) -y mouse displacement
16 11
output:-
1 ) Carry set - - command byte or sequence error Carry clear -- translated character returned in A
2)
1996 1997 1990
2F
D5 Hi 00
Pekl1d I:
cpl push Id
de d,zero
; cOlllpl ement keyboard byte ;sav~ registers ;get flags
Position eneodeH key~oard handler HOM resilient CRT D,-Iver 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 470 479 400 401 482 403 484 485 4116 487 4118 409 490 491 492 493 494 495 496 497 490 499 500 501 502 503 504 505 506 507 500 509 510 511 512 513 514 515
199A 199C 199E 19AO 19AO 19AI 19A4 19A6 19AO 19AB 19AD 19BO 19BI 19B2 19B5 19B6 19B9 19BB 19BD 19BF 19C2 19C4 19C6 19C9 19[8 19CE 19DI 19D4 19D7 19D8 19£)9
CB 7F 2!J 17 18 01 7A 32 CB 20 21 CB CD 37 Dl C3 5F 21 CB 20 CB C2 CB 20 CD 20 Cll
F9A7 5F 05 F95D OE IA66 F9B7 F9A 7 7E FO 5E IA7D 76 20 19DB D5 19FF IA23 IA3D F9A 7
CD CD 21 72 A7 10 D6
MACRO-1I0 3.44
09-Dee-8J
bit jr jr noellar equ peknoe2:ld el1ldb: Id bit jr Id res peknoc: ca I I peknocl:scf pekex: pop jp kypos: Id Id bi t jr bit jp bit jr ca II jr ca II call call charout:ld Id and jr D;
19DB 190C 19DF 19E2 19E4 19E5
E5 2 I F953 UI U006 ED BI EI C9
;command byte? ;sklp to position byte handler ,skip to command byte handler
$ itioll ellcuded heylJoanJ handler Over'lay (sigllonJ
1079 1080
MACRO-80 3.44
09-Dec-81 subtt1 page
Overlay
(signon)
"-
N ~
»
"D
'tJ (I)
::J
a.. X "-
Posltjon enc o(lt,d h"ylJ(}a,-eI tlan(l I e r' Over'lay (SIUIIOII) lOBI IOB2 IOB3 1084 1085 IOB6 IOB7 10B8 10B9 1090 1091 1092 1093 1094 1095 1096 1097 109B 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1 12:1 1124 1125 1126 1127 112B 1129 1130 1131 1132 1133 1134 1135
MACRO-BO 3.44
; i
OU-Dec-BI
slgnon - Announce System Ready.
0552'
rxsign:
fC5D fC60 fC62 fC64 fC66 fCC7 fCbB fC6B fe6D fC6f fC71 fC73 fC75 fC77 fC79 fC7B fC7D fC7F fCBl fC83 fCB5 FCB7 fC8A fCat: fCBE fC91 fC94 fC97 fC99 fC9B fC9D fCAO fCA2 fCA3 fCA5 fCA6 fCA7 fCA8 fCAA fCAD fCBD fCB:J fCB5 fCBB fCBB fCBE fCCI fCC2 fCC5
.phase Signon: Id in bit jr dl Id out ld out Id out lei out sign 1 : djnz in bit Id jr set Id sign2: out lei jr sign3: set lei Id Id Idir and jr Id Id slgn3a: Id xor lei Inc inc djnz sign4: lei Id Id Idlr Id lei lei ca II Id Id cp
21 DB CB 28 f3 3E 03 3E 03 31:
03 3E D3 10 DB CB 3E :!O t:B 3E D3, 32 18 CB 21 11 01 ED E6 20 L1 Ub 7E EE 77 23 :!3 10 21 11 Ul ED 21 22 21
f091 lC 47 26 Cf 10 38 10
80 lC DO 10 FE IC 67 02 04 E6 03 10 ff54 IE F6 F70B f470 0300 BO 02 OD f361 08 04
fB 034A' fBOO 020B BO fAOB ff3C DODO CD f03C 7C 2 I 1000 FE 01
tca hl,confg a,(syspio) O,a z,slgn3 a, 1100111 It.> (sysctl),a a,001110000 (sysctl),a a, 1000000Ot.> (syspio),a a,OdOll (wdI797) ,a slgnl a,(syspio) c.flve,a a,2 nZ,sign2 c.five, (hI) a,3 (wdI797) ,a (steprt),a sign4 cosasi, (Ill) Ill, R I gdpo de, f I vdpl) bC,Sasldl
isource address in rom ;executlon in transient command area ;point to configuration byte ;check configuration ; if SASI
interface present
;set Pia B in Bit Mode ; turn ar'ound dO, 1,2 ;ensure rom switched on
;drop all drive selects ;reset wd-1797-02 i
wa ; t
1797 not busy
;preset 10 msec step rate ;if not 5" ;set long step ; ,"estore I unload heads Sasl card installed add,-ess of rigid dpb ;set aeldroess of 5.25" floppy dpb .set sasi driver length ;Move elrlver down ;set ,::let
2 nz.sign4
;if not AlE swap
11l,Sertab-tl b,B a, (h I ) 4 (h I) ,a hI hi slgn3a hl,tabl~s
.llIove
'"X
residen~
code to ram
(le, tallied tlC ,'a 1 s I z3 ;move on top of GETHLP III ,kbramend-tl jnext available ram lac (aval Ib) ,Ill ; te 1 I the world III ,0 conflg ;get monitor configuration a,h ;monitor level hi ,xrslgn-tsigoff-romofs ;assume 4,01 level location revl
p -0 -0
11)
:::J Cl.
>
0 0 t1)
::l Q.;
>
;;'\04 'RXI'98'1 " ''.3H ~f~~49 r-:- '~>\!l'O I RiXBOOT 199 RX'CRT""24 \d '-225 RXSlliL "'2'23 1~~SlGN RXSIOO 1069# i35# ~ASIDL \ "604 SA.I(E ' '.1 40d '$~YI~TK .' "309 r'CR I ;,,'317 §CR02 "'320 , C~03 "'''301d ;>!=RPRT \ t .'
~-:
4-
W V1
,
J
;:'t
J4b,v ,129 :157 lJ27
353
363
368
374
377
1263
1288
385,v
413
415
1195
\196
400d
1:05 950d
965
965d
405
137B 1295
269
417,v 10:.:'9d 1243 177 18:.:' 179 1111 :d'6,v 103"1,v 1 205 1021
1072 1247
1255
1259
203
1135
1324
207
208
779
780
1134
205
206
207
208
1071 2'06 1030 ,,\U70
'~lb19d
'i':H,9 • j'J'69 g'06d "91 I 1385 ""9'81# 1063 '.'1'046,\/ ! 1 1061# 1060 1065# , ! 1053 1'Jtl4 : ; ,,\ -j' ,"'982# ,1051 ' j 592,\/ i>; , 1241 1-245 "Y:i82 ,) ..,69# 774 1',,76# :.;: 160 ,1 '1265# 200 201 202 ',1'309 1:308 >i 1187# 1'()05# ' '1302 1303 , 'rl \3 \ \,983# " \"620 !'(f4a )1. 315,\/ . I',; ! -n ~
"
' li 319d ! ;.'323
131:.:' .
'"
.....
329d 1313
1194d
1323
)
i\
!l>
iU
,-0
i(1) :~
!Cl.
>< .....
SELECT SELTAB SETFLG SHfTLCK SI1I fT SHTAB SIDEROM SIGNI SIGN2 SIGN3 SlGN3A SlGN4 SIGN6 SIGN7 SIGNON SIGOff SIODPB SIOff S IORDV SIOX 1 SOOUT SPACT SPRNTI SPRNT2 START STCNTR STEPRT STPCTCI SfRKUP SWAP SWAPI SVSCTLSVSPIO SVSVEC TABL TABLED TABLES TABLEX Tl3L SEL TBXfER TCA TENTHS TICK TaCK UPASCII UPPER UPS uPSSZ UPSTRK
54# 89# 128# 543 535 534 985# 1100# 1104 1090 1119# 1109 1138 1136 1087# 70# 107# 47# 58# 386# 204 87# 74# 75# 159# 115# 96# 470 513 1215 1357011 105# 106# 42# 540 92# 780 790 484 183 44# 901 596 90 \oli 126011 124# 515 516 481
1:!19 1117 6U2 ll98# 9-'8# 546 1022 1100 1107 # 1110# 1124 1116 1148# 1138# 1187 1134 390 1300 386 388
1350 1387 837#
1391
1125#
1137
212#
622 1310 332 1369 625 1108 615# 925# 1310 1364 1m)] 1020 43 808# 789 001011 917# 532# 185# 224 902 II 99 011
1348# 1-095 1031
1088
1097
1101
929 986
1392 1076
1126
227 904# 1386
1086
1195
921 92 \oli
1381
917 802 1125
lDGl
5G8 5li4 919# f):.! (J
r,l '211
1279
):> "0 "0 II)
:::J
a. >