Escolar Documentos
Profissional Documentos
Cultura Documentos
CARTRI DGE
Hogt 9ame9 (end some lenguag6 processorg) a.e EUpported via the
cartridge environflent. The E€r'tridge r.eEident Foftuare i5 in
c o n t r ' o l o f t h s s g E t e o , s o m e t i n e s ! s i n g t h e O S a n d E o m e t i r n e sn o t .
A cartridge can Epecifg uhether the distette i6 to be booted at
Pouet'-up tioe, urhethei the ca"t"idg€ i5 to provide the
controlling softuare, or uhether the cartridge 1s s sp€cial
diagnoEtic .artiidge. These optionE are Epecified bU bits in the
certt idge headei, as sho|,n belou:
+----------------+
! car.ti id ge i BFFA (9FFA for cert?idg€ B)
+- -+
i 5t€rt address I
r o 0 !
.i'-----__---.-i---+
i option bute i
+----------------+
I c a r t r i d9 e I
+- -+
i init addiesE I BFFF (9FFF fdr cgr.tiidqe g)
+----------------+
U P E R A T I N GS Y S T E I IC O 1 6 9 5 9 - - Section 1O
Th€ option bgte has the +ollouing option bite:
The cattridge init sddtess Epecifies the location to uthich the DS oill
JSR during eI1 pouer-up and sqstem reset opaiEtions. AE a t$inim!m,
thig vectol. should point to an RTS in6tiuetion.
A cai'tr'idge thet does not specifg the di5&ette-boot option end doeE
not guppoat the cEBsette_boot pos5ibilitq c a n u 6 e 1 o { r r e rm e r n o r g
( t r o m O 4 8 O t o t h e e d d r e 6 s i n M E M T O Pt o z E s l ) i n e n g u a u i t s e e g
fit.
DISKETTE-BOATED SOFTI^JARE
O P E R A T I N GS Y S T E HC O 1 6 9 9 5 - - Section 1O
154
Neither C6rtr idge A nor B is inser'ted.
The leg region of a diEkette-boot file is the first 5ir bgte5, uhich
are formatted aE shourn beloor:
+-*--------------+
i flags i +irst bgte
+----------------+
i L of Eectors i
i nemorg addfeBs I
i to 6tait 1o€d i
! init !
+-
I address i sixth brrte
! boot I
! cont inu€ti on I
I .ode I
T h e f i r B t b q t e i s s t o i € d i n D F L A G St O e 4 O l , b { t i5 otheiurise
unu€€d. It should eqlel rero.
O P E R A T I N GS Y S T E I IC O 1 6 5 5 5 - - SeEtion 1O
1s9
The third and forr.th b!te6 contain the eddresF (1o,hi) at uhiEh to
stert Ioading th€ first b{t€ of the +ile.
T h e f i + t h a n d s i r t h b q t e E € o n t a i n t h e a d d r e s s ( l o , h i ) t o u r h i E ht h e
booter uill trans*et contr.ol after. the boot procesE i6 complete
a n d u h e n e v e r t h e t S Y S T E MR
. ESETI teg is pressed_
t r J s t e m( F M S ' h a 6 e x t i E b g t e i a g F i g n e d t o
T h e D i E l e t t e F i l e I ' l a n a g e m e nS
its boot record, but this i9 a sperial €aEe of the gener'Elized
disftette-boot €nd is dis{os9ed in Section 5.
D i Ek e t t e - B o o t Pr oce5s
S a v e t h e f l a g s b g t e t o D F L A G S( 0 2 4 0 , 1 1 . S 6 v e t h e * o $ s e c t o r s
t o b o o t t o D B S E C Tt O 2 4 1 , 1 1 . S e v e t h e l o a d e d d r e s E t o E O O T A D
foe42,2l. Save the iniiielization address in DOSINI IOOOC,Al.
5 . J S R t o t h e l o a d a d d r . e s s + 6u r h e r e a o u l t i E t € 9 € b o o t p r o c e s B € e i l
continue. Tfte csi.r{ bit indicsteB the success of thrE
opereti.on {car.rg s€t = el.for, rarrg resEt = EUcceEri).
O p E R A T I N eS Y S T E MC O 1 5 5 5 5 - - Section LO
160
rertart €ntr{ for the booted application. If the
booted goftuare iE not to take control, then
D O S V E C5 h o u l d r . e n a i . n u n . h € n o e d .
.BYTE O i
.BYTE PND-PST+I27 / 12e i NUI'IBEROF RECARDS.
. IIORD PST , MEMORYADDRESSTO START LOAD.
. [ ^ , O R DP I N I T ; P R O o R A hI N I T .
I O16555 --
O p E R A T I N eS Y S T E I ' C Section 1O
L61
; THIS IS THE START OF THE BOOT CONTINUATION.
; A P P L I C A T I O N I N I T I A L I Z A T I O N E N T R YP O I N T .
RESTRT=*
OPERATINOSYSTEI'ICO16553 -- gection 10
r62
Shoun belou i6 € listing of the progralll to rreat€ diskctte-boot fiIeE.
; I TES A SINCLE "FILE" TO THE DISKETTE AND IS
THIS PROCftAI{T.IR
. i USED IN CON.JUNCTIONI.IITH A PROCEDURETO I.IAKE DISKETTE-
i SOOTABLE FILES. THE FOLLO{'ING TI.'O SYMBOLS I.IUST BE EOUATED
, USINC THE I.IEI{ORYLti,IlTS OF THE PROERAfiTO BE COPIED:
OPERATINGSYSTEI.ICO16559 -- Section 10
163
, NT]WI.'RITE THE FILE ONE SECTBR AT A TIME.
AOC *SECSI Z
STA DBUFLO
LIA DBUFHI
ADC #O
STA DSUFHI
INIT RTS
. r"roRD 900T0
. BYTE O,4
. I . J O R DI N I T
. END
CASSETTE-BOOTED SOFT}IARE
You can boot so+tuere fr.om the cassette as {rell aE fr'om the
di€lEtte, at por{€r-(Jp. The +ollorrring requiredents must be et in o.der
to boot froo the caisette:
O P E R A T I N GS Y S T E MC 0 1 6 5 5 5 - - gection 10
164
tlhen gou aae given th€ audio prompt bg the caEsette
h a n d l € r . r J o r ,f l r u s t p r e s s t h e t R E T U R N I l e V .
I+ alt of these conditionE Ere ftet, the OS uill reed th€ boot fil€
frotn the ca6eette snd then transfe. control to the Eo+ttrr6ie that
uar reed i n . l h e e x a c t r i e q u e n c eo f o p e r a t i o n 6 | , i 1 l b e e x p l e i n e d
Iater in th is rection.
The *eg region of a ce5gette-boot file is the +irst cix bqtes, that
are fornBtted:E s h o u , nb e l o t r :
+----------------+
i * o{ RecordE i
+-*--------------+
i l,lemorq Addr.ess ,
+-- --+
i To st€it Load
+----------------+
I Init
! addres€
The third end fouith bgtes cont€in the addret! (Io,hi) to thich the
bootef uill trans+er contl.ol a+ter the boot pioces5 iE cot$Plete end
u h e n e v e r t h € I S Y S T E i | .R E S E T I k e v i E p r . e s 6 e d .
Cessette-Boot PFocess
0 F E R A T I N e g Y S T E HC O 1 6 5 5 9 - - gection 1o
L65
Sdve the * of r-e.or.ds to boot. Save the load address. Save
the initialiration €ddreeE in CASINI COOOZI
NOTE: After the initi€l boot proceea is codrpleta, the boot€r uitt
tiensfea control to the seventh bgte of the Sirit re:ot'd; at thie
point the 6oftuar6 ihould continue the boot protesE (if it iE a
nulti.stage boot, €nd then gtop the csgEette drive, trhich due to e
s{etem bug {rill 6till be running, uEing the fotlouing inst!.uction
S A q U 6 n Ee :
LDA f$3c
STA PACTL TDSOA]
The :pplication s h o u l d t h e n E e t a v : 1 u e i n M E l , t L Ot } 2 g 7 ) t h e t
p o i n t E t o t h e + i r . E t f r e e R A l , ll o a a t i o n b e g o n d t h e s o f t u e r e
Just
booted, as shoun belou:
LDA {+Et,lD+1
t'tEHLO
STA APPT'IHI
LDA {iEND+1/256
5TA I'iEHLO.i 1
STA APPT'IHI +1
{ 016555 --
O P E R A T I N GS Y S T E I ' C Se.tion 1O
166
For aontrolling applications initiali!ation can alEo be deferred
unti I step 7.
Sa|np
1E Ca6sctte-EootabI€ Program Lirting
.BYTE 0 ; ( D O E S N . TH A T T E R
).
.8YTE PND-PST+!27/128 t NUMSEROF RECORDS.
. trORO PST ; IIEMORY ADDRESS TO START LOAD.
. [|ORD PTNIT i P R O o R A MI N I T .
RESTRT=L
, 'PS|T' = PROCRAI,I
START ADDRESS (SEE SAMPLE PRACRAT'I
).
, 'FND' = PROGRAI,I
END ADDRESS (9EE SAI'IPLEPROGRAM).
PST- *O7Oo
PND= i1324
FLEN= PND-PST+1?7/ l?A*12A , ROUNDUP TO IIULTIPLE OF leA.
*= iEOOO /S 6RIGIN.
I THIS PR0GRAM
I O16595 --
O P E R A T I N eS Y S T E F C Section 10
164
LDA I+PUTCHR , sET UP FOR "PUT CIIARACTERS."
sTA rccor.r,
x
LDA {*PsT , P81NT TO START OF APPLIC. PRAC.
STA IC8AL, X
LDA *PST,/436
STA IC8AH, X
*= 3BFF9
INIT RT9
.I.IORD BOATD
, BYTE O,4
,I.'ORD IN IT
. END
O P E R A T I N CS Y S T E I IC O 1 6 5 5 5 - - Section 10
t6s
11 ADVANCEDTECHNICUE$AND APPLICATTON NOTES
SOUND CENERATION
T h e B S u E e E t h e P U K E Yc o u n d g e n e r a t i o n c a F a b i l i t i e E o n l g i n t h € L / u
5ub996t€o, +or cEss€tt€ FSK tone generation? €nd +or the ,,noisg
bu6" option in SIU.
Capabilitier
T h e h a r d l r e r e p r o v i d e s f o u r i n d € p e n d e n t l V p r o g r e m m a b l es u d i o
channel6 that are fiixed and ient to the te1€vi6ion set as part of
t h e . o m p o E i t e v i d e o E i g n a l . T h E p O K E yr e g i s t e i s s h o u n b E l o u a . e a l l
concerned {rith sound rontaol (a6 desEribed in the ATARI Hoo€
C o f l p u t e r H a r d u a r e I ' l E n u a l) _
AUDCTLIDzOA] A u t ti o c o n t r o 1 .
AUDC1 lD2oll and AUDF1 CD2OO! Channel l r ontro l.
AUDC2 tD2O3l end AUDFAtDpo2l C h a n n e l ? c o nt F o l .
AUDC3 tD2O9i and AUDF3 tD2O4l C h a n n eI 3 r o n t r . o l .
AUDC4 tD2O7l End AUDF4 tD2O6l C h a n n eI 4 Eo n t r o 1 .
Con+lictE lJith OS
O P E R A T I N OS Y g T E t ' lC O 1 6 5 5 3 - - Section 11
r70
SCREENCRAPHICS
H a r d u r a r eC a p a b i l i t i e g
O S C e p € bi l i t i e E
Cu?Eot'Control
C o1 o r C o n t r o l
You cen e1t€r. th€ coloa l'egi6ter asEignftents that the Displag
H € n d l e r ' n e l e 6 u p o n € I l O P E Nc o m m a n d 5 ( 6 e e A p p e n d i x L B 7 - e a n d
elselrheret. Note that sve.9 Eqstern ies€t or Dirplaq Handl€r. OPEN
uilI r e s e t t h e v a l u e 9 b € c l t o t h e 9 { r s t e r nd e + a u l t .
7 0
+-.t-+-+-t-+-+-+-+
CHBAS I MSB !r r! T€rt node O
+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-.i-+-+
i MSB lxl Tert dodes l and 2
+-+-+-+-+-+-+_+_+
I 016595 --
O P E R A T I N GS Y S T E I ' C Section 11
172
EEch charaster iE defined b9 an E x E bit rnatiiI, the
c h E r a c t e r ' e ' i s d e f i n e d a s t h o u n bel ou:
7 0
Bgte +-+-+-+-+-+-+-+-+
l0totototolotoiol o
+-+-+-+-+-+-+-+-+
rototM!r.!liorot
+-+-.i-+-+-+-+-+-+
! o ! 1 t1 ! o t1 r 1 i o ! o l
+-+-+-+-+-+-+-+-+
i o i 1 i 1 i o i 1 rl l o ! o l 3
+-+*+-+-+-+-+-+-+
i o t 1 t l l o i 1 r1 ! o t o i 4
+-+-+-+-+-+-+-+-+
t o t1 i l t o i o r 0 r o t o l
+-+-+-+-+-+-+-+-+
toto!1t1!t.ioiol 6
+-+-+-+-.'-+-+-+-+
rorotorotoioiotot
+-+-+-+-+-+_+-+-+
+---------------+
Ch e r e c t e r base ! ChEracter for i
I cod€ tOO I I bgtet
+-------_-------r
lCha.act€r +or i
i .ode *O1 | increeEing addreEseE
+__-------------+
+-----___------*+
lchar"ecter +or. i
I code S7E i
+--re-----------+
i Chara€ter for :
i code $7F i
.t---------------+
PLAYER/HISSILE ORAPHICS
O P E R A I I N CS Y S T E HC O 1 6 5 9 5 - - Section 11
H a r d u r a r e C a p a bi I i t i e s
T h e h a a d u a r - ee l l o u s a n u m b s r o f i n d e p e n d e n t l g m o v e a bl e s r r e e n
o b J e c t E o f l i ! r i t e d { r i d t h t o b e p o s i t i o n e d a n d | n 0 v e de b o u t t h e
sEreen {rrithorrtaf+ecting the ',plagf ietd,, (bit-dl€pped qraphics or
Eh€racter) data. Prioritg contiol BllouE the verious obJects to
heve a displag p.eced€nce in c€se of con+1ict (overlapr.
Conf I ir ts l'rith OS
J o ! s t i c * s . / t r . i 9g F r 6 1 - 4 .
P a d dl e c o n t r o L l € t s / t r . i g g e r . s 1 - 9 .
Driving contiollerE./trigger6 1-4.
Light pen/tr iggei
K e r r bo d r d C o n t r o l I e r S e n s i n g
1 O R A P H I C SO
5 PRIf{T :PRINT " KEYSOARDCONTROLLERDE|'IO "
1 0 D I I t R O ! r (3 l , I $ ( 1 3 l . E U T T O N $1( )
30 GOSUB 6000
40 FUR CNT=I Ta 4
6 0 P O S I T I A N 2 , C N T * 2 + 5 :P R I N T " C O N T R O L L E R
* " ; C N T ," , " ,
I O16555 --
O F E R A T l N OS Y S T E I ' C Section 11
t74
70 NEXT CNT
EO FOR CNT=1 TO 4:EOSUB TOOO:POSITION 19, CNT+CNT+s:PRINT BUTTON$,
: NEXT CNI
120 eoTo ao
6000 REH ** SET UP FoR C0NTR0LLERS+*
601O PORTA=54O16:PORTE=54017:FACTL=S4O1E:pgCTL=94O19
6oe0 POKE PACTL,4A: POKE PORTA,2S5:pOKE pACTL, SA: POKE PORTA,??1
6025 POKE PBCTL,48: POKEPORTB,2SS: pOKE pBCTL, Sg: FOKE PORTB,Aal
( O' =239 : ROW( 1 ) =2a1 : ROH( e ) =1A7: ROt,( 3 l = 1 1?
6030 ROt^l
6040 I$=" 1234567S9*Ott,'
6090 RETURN
TOOOREH *r+ RETURNBUTTONg t,tTH CHARACTERFOR FUTION ITHICH HAS
BEEN PRESSEDON CDNTROLLERCNT (1-4!. **
7OO1 REt'l ta NOTE: A I WILL 8E RETURNEDIF NO CoNTROLLERIS
CONNECTED.**
7OO2 RET.{*I1 A SPACE I,IILL BE RETURNED IF THE CONTROLLER IS
CONNECTEDBUT NO KEY HAS BEEN PRESSED. **
7OO3 PORT*PBRTA:IF CNT>z THSN PART=PORTB
7OO5 P=l
TOOS PAO=CNT+CNT-2
7O1O FOR J:O TU 3
7O2O POKE PORT,ROW(J)
7O3O FOR I=1 TO lo:NEXT I
7O9O IF PADDLE(PAO+I)}1O THEN P=J+J+J+2: COTO 7O?O
7060 IF PADDLE(PAO)>1OTHEN P=J+J+J+3: GOTO 7O9O
7O7O IF STRIG(CNT-I)=O THEN P=J+,J+J+A:COTO 7O9O
TOAO NSXI J
7O9O BUTTAN$=I$( P, P )
7O?5 RETURN
T h e t h i ' e e p e g e 5 t h e t f o l l o u s h o u h o t E o l n eo f t h e P i n q i n t h e f a o n t
panel (geme rontrollerl connectors csn be used as generel I/O pin5.
OPERATINCSYSTEMC t 1 1 6 9 5 5- - gection 11
176
Port A Circuit (t!pical):
1d\.-r-lraEk
6 9
v
l " l €I e c o n n e E t d r , F R o N T v i e u ,
Pin B = Gt'ound
Pin 7 = Vcc 8+5v +)
Port B CiFcuit (tgpical):
+5 N o t e : S c m A m ax i f t u m
(B) totel external drain
4. 7K
o n p o u J a r 9 u pp 1 g a l l o u e d
6520
Port
"Trigger" Poit C i r e u i t ( t g p i c a l ) :
220
Softuafe In+ormEtion
7 6 5 4 3 2 o
t,hite thiE into this regist€r
P o r t A d a t a d i r 6 E t i o n ( a d d r e s 6 D s O O)
7 6 9 4 3 2 1 0
1 = O u t
O = In
UPERAT I D16555 --
I N O. S Y S T E I ' C Se{tron 11
177
P o r t A d a t e ( a d d r e s s D 3 o o'
3 2 1 0
Reed or Write this regiEter
4 3 2 L 4 3 2 7
Jac k 2 Jeck I
Pi.n Nunbers
I 1 1 X o
6520 PrA:
Poi t B C o n t r o l ( a dd r e i s D 3 O 3 '
7 6 3 4 3 2 1 0
6 5 4 3 2 1 0
4 3 2 1 4 3 2 r
Jack 4 J ack 3
Pin Nu|nbers
7 6 9 4 3 2 1 0
Read th ir port
Trigger Value
Dolo = Port 1 Pin 6
D013 = Port 4 pin 6
L7E O P E R A T t N eS Y S T E | i C O 1 6 5 5 5 - - Sertion 11
Other l,liscel lsneous Softuste Infor$Etion
6 5 4 o
S T RI C 1 o2a5 o o o o t o o o .Jec I
sTRlc2 .J€cl 6
PADDLl o27A 4 o
x x x t x X x x x Jact 1, Pin 5
PADDL3 o27e Jac & 2, r l n ;
PADDLS o274 Jact 3,
PADDLT Jact 4, Pi n 5
PADDLO t\)'t 7 Ject 1,
PADDL2 o273 J€r k 2,
PADDL4 o275 Jec I 3,
P i n E 5 e n d 9 a r e r e a d t h r o u g h t h e p a d d l a c o nt r o l l e r c i r c u i t r q
a nominal v€1ue o+ 7 indicates that the oifl ic high (or +Ioating)
and E nooinal value of 228 indicates that th e pin i3 puIled lou.
o3 -- OPEN
o 5 --OET RECORD
-- CET CHARACTERS
og _- PUT RECORD
OB -- PUT CHARACTERS
oc
OD -- CET STATUS
D i E pl a g H a n dI e r o n l q :
12 -- DRAI'
D i s ke t t e F i l r tl€nagef ohtg:
20 -- RENAI'IE
2I -- DELETE
22 -. FARHAT
23 -- LOCK
24 -- UNLOCK
25 -- POINT
26 -- NOTE
APERATINC SYSTEI4co16t35 -- A p p e n di x A
lEO
Appendix E -- C I O S T A T U SB Y T E V A L U E S
- S h o u n b s l o { r , € r e t h e t n o u n C I O S T A T U SB Y T E v E t u e s .
O P E R A T I N oS Y S T E } {c 0 l 6 5 5 9 - - Appendix B
Appendir C -- StO STATUS BYTE VALUES
I U16555 --
O P E R A T I N CS Y S T E I , C Aprendix C
ra2
Appendix D -- AIA$CII CODES
gx 4X BX AX cx EX
sp o
g1 D A a
g2 a B b
p3 0 # c c
g4 0 $ D d
g5 il z E e
v6 0 & F f
g'7 s G g
gB E] ( H h
ve E ) T t-
gA tr J j
9B I + K k
gc g L I
gD FI M m
gE l| N
0iF
0 o
Lg E g
11
E 1 o
r2 EI 2 R
0 3
14 tr 4 T t
E U
II
L7 E 7 W
'tR
et x
19 II v
IA g
E
1D
o
g l CT,EAR
I
Plfra
lYfis BELL
g Ftg BHln
1F
o TAB TAB lHin
O P E R A T I N CS Y S I E H C 0 1 6 $ 5 5 - - Appendix D
143
Appendir E -- DISPLAY CEDES (ATASCII)
qX 2X 4X 6X BX AX CX EX
gs o G
gt- D A a
g2 tr B b
g3 EI c c
g4 CI $ D d
gs il g
g6 a &
E
F
e
f
g7 s G g
g8 a ( H h
q9 E
gA a ) I
J
l-
j
gB E + K k
gc g L t
gD FI M n
gE EI N n
gF
il o o
c( DES 8p-FF SHOWAS
E IN\IERSE VIDE
Lg
E g P p ol caDEs 99-1F
11
D L 0 q
T2
tr 2 R r
t3 EI 3 s
tr 4 T t
15
EI 5 U u
16 II 6
'7
t'7
EI W
18 et 8 X x
19 CI 9 Y v
g z z
E t trI
fC o
1D tl l EI
o tr
o D
I 816555 --
O P E R A T I N GS Y S T E I ' C Aprendix E
A p p e n di x F -- KEYBOARDCODES (AIASC I I }
E{ oi ^4
<cleei)::= "<ietul"n>
< r ' e t u r n > : : = < r e t u a n > o r E 4 i € t u^.4ne> s c o} r
<esc> ::= <esc) or E{esc> or "46pef,e}
{spEce} ::= <sPsce> or 9<sPace>or
20 < E P a c € > 4 0 e 60
2L 41 A 61
4 2 8 b
*
4 4 D 64 o
?e 4 9 8 63
* 6h f
4 7 C
( 4 A H
) 69
2A * 4 4 J 6A
+ 4 8 K 6E
4 C L I
- 4 D M dr
4 E N
4 F O (t
30 P
1 91 0 7L
e 5 2 R l.
33 5 3 S
4 5 4 7 t
J
6 5 6 V 76
37 7 57 t' 77
3A 5 A X 7A
9 5 ? Y
'. 5 A Z 7A
7B
4 5 C \ 7C
3D 5lJ _l 7D )
5 E ^
{space}
00 t h f . o u gh t F p r i n tb1ank.
g?intg \ inEtead o+ "di€hond".
printc { instead o+ "spEde".
7D p i i n t s ) i n s t e € d o f " a l e a r " .
prints - instead of "haclspace".
piints blank inEteed of "tab".
OPERATINOSYSTEH AppendixC
186
Character set + o r . , , E i d e d a g E . ,m o d e p r i n t i n g :
4 0 e 6 0 @
4 1A b L A
4 e B 6 2 9
4 3 C 6 3 C
4 4 D 6 4 D
4 9 E 6 5 E
4 7 e 6 7 e
4 E H 6 A H
49 I 6S r
4 A J 6 A J
4 9 K 6 8 K
4 C L 6 C L
4 D H 6 D H
4 E N 6 E N
4 F A 6 F O
o 5 0 P 7 0 P
31 sl 0 71 0
5 2 R 7 2 R
5 3 S 7 3 S
34 4 5 4 T 7 4 1
35
36 6 5 6 V 7 6 V
7 5 7 W 7 7 W
a 5 A X 7 A X
3? I 5 9 Y 7 9 Y
3A 5 A Z 7 A Z
i 5 8 E 7 B t
5 C \ 7 C \
3D s D l 7 D t
5E {up> 7E <up>
5F <1eft> 7F <Ie+t>
Note: thc follouin! codes pr.int dif+erentlg than defined bU
t h e A I A S C II d e f i n i t i o n .
C Y S T E HC 0 1 6 9 5 5 - -
O P E R A T I NS Appendir e
187
Appendir H -- S C R E E NM O D ECHARACTER
ISTICA
CO-FF
OPERATINCSYSTEH CO16555 .- A pp e n d i x H
1S6
P F 1
SAK
BAK
BAK
B BAK
PFO
P F 1
Notas:
The default valueg for the color reoistaas are shoun belour:
8AK = EOO
PFO = 529
PFI = gCA
PFz = $e4
PF3 * $46
7 6 3 4 3 ? I O
+-+-+-+-+-+-+-+-+
i color l1!m !O!
+-+-+-+-+-+-+_+_+
ACK - $41
NAK - S4E ,N,
cot'TPLETE - +43
ERR - $45
OPSRATINCSYSTEI.ICO1695$ -- App€ndir I
191
Appendix J -- AAM VECTURS
DISKIV E450 D i s ke t t € H e n d l e r i n i t i a l i z a t i o n
DSKINV 8453 3.4.2 D i s k e t t e H e n d1 e r e n t r g .
c lov CIO utilitg entr.g.
stov E459 9.3 5IO utilit! e nt r g .
SETVEV E45C S€t S{ste Timers rout ine.
sYsvav 6.3 S t a g e 1 V B L A N Ke n t r g .
XITVBV E x i t V B L A N Ke n t r g .
SIOINV SIO utilit'J initial i zEtion-
SENDEV E46A S e n d e n a bI e r o u t l n e .
INT I NV I n t e r r u p t H € n d1 e r . i n i t i e l i 2 € t i o n .
c la INv CIO utilitrJ initializ€tion.
BLKBDV 3. 1.1 8 1 € c k bo a r d m o d e e n t r g .
SIARMSV E474 7. W 6 r n s t a r t ( I S Y B T E MR . E S E T I) e n t r u .
coLDsv 7. C o 1 ds t € r t ( p o l r e r - u p ) e n t r g .
RBLOKV E47A Cassette-read block etltrU.
csoPIv E47D CasEette-8PEN input entrg.
* Th€se v€ctors a.e for OS internal u6e onlg.
T h e f i x e d a d d r e s E F l o t s t i n g P o i n t p a c t e g e R O Mr o u t i n e e n t r g p o i n t
E d d r e s s e 6 a . e s h o u r nb e l o o i q o m p l e t e d € s c r i p t i o n s o f t h e
€ o r r e E p o n di n 9 r o u t i n e s a r e p r o v i d e d i n S e c t i o n L
0 P E R A T I N GS Y S T E | {C O 1 6 5 5 5 - - Appendix J
192
The bes€ addresses of the Handler, veatois for the .esi.d€nt
h a n dl e i s a r e s h o u n b e l o u r :
S c r € e n E di t o r ( E ) 8400
DisplEg Handler (S, E410
K e g b o € r ' d H a n dt e r . ( K ' E4aO
P r i n t e r H a n dl e r ( P ) E430
C a e 6 e t t e H E n d! e r ( C ) E440
S€e Saction 5 for the foafiat of the entr.g +or each Handl€r'.
KEYBf]ARD
DIEPLAY
SinEe all displag data is stor€d in RAtl, the di6plag data upd.te
tate is liftited piinarilg bg the softuare routi.neB that genertste
and f0.ltl6t tha data and acEess the RAt'|. The g€neiation of the
d i s p l a q f r o m t h e R A f ' li e a c . o { n p l i s h e d b g t h e A N T I C a n d C T I A o i O T I A
c h i p 6 u r i n t D i r e E t M e i n o r gA c c e e s ( D f 1 A l to accesE the RAMdata.
The internal storage *ormats for diEplBg dsta for the varioug
oodeE Er.e d6tailed in the ATARI Hofle ConDuter Hard{,are
l'lanuaL
DATA CAPACITY:
DATA TRANSFERRATES:
O P E R A T I N CS Y S T E I ' C O 1 6 5 9 5 - - Appendir K
194
STORAGEFORMAT:
T€peE Ere recor.ded i.n 1,/4 track 6te.€o +orftat et L 7lB incheE per
' EeEond. Ihe t€pe can be reEorded in both directions, uhere tr€Eks
l and a afe side A left €nd right, and tra€ks 3 and 4 a!.e side B
r i g h t e n d l e + t ( i n d u E t r g E t a n d a r . d) . O n e a c h s i d e , t h e l a f t
.hannel (1 or 4) is used for €udio and the right channel (A snd
3) is u6ed for digit3l in+ormation.
The audio channel is reror'ded the norrnal ueg. The digitel rhannel
i E r e c o r d e d u s i n g t h e P O K E Yt r r o - t o n e m o d e p r o d u c i n q F S K d a t a a t
u p t o 6 0 0 b a u d . T h e I ' I A R Kf r e q u e n c g i s 9 3 2 7 H r a n d t h e S P A C E
frequencrJ is 3995 Hz. The tr€nsnission of d:ta i6 agunchronous
b V t e B e r i a I € s s e e n + r o n t h e c o n p u t e r r P O K E Ya e a d s o r u r i t e s a
bit serial FSK sequence for eech bgte, in the follouing order:
The onlg control the coroput€r has ov€r. tape fiotlon iE notor
etert/stop, €nd this onlg if th€ PLAY button is presEed bg th€
\!,. user. In order for recording to tske pI€E€, the urer muit press
both the RECend PLAY buttons on the cassette. The coDo!ter has
no uragto Eense th! position of the6e buttonE, nor even if an
ATARI 410 Progr.ao Recorder is cabled to th€ romguter, so the u6er must
be cEre+uI uhen using thiE device.
gII] I NTERFACE
O P E R A T I N GS Y S T E i IC 0 1 6 5 5 5 - - Aependix K
195
BuE ?ate: xx chafacteis per gaEond.
Print time (bur6t): xx ciararters per eeEond.
Pr^int tine (€ve?age): xr characteis p€r second.
STORAGE FARfiAT:
Noroal foroat --
40 tharac terE per 1ine.
6 l ineE per inch (verticet'.
12 f,har€rterE per inch (horizontal).
9idat,aUg +o.nat --
29 charac terr per- li.ne.
6 I ines per inch (veitical).
9 ch€iact€r.s per. inch (horizontal ).
SIO IN'ERFACE
CET STATUS
Device ID = t4O.
Cotnn€nd bgt€ = $S3.
EUxiIiarg 1= doesn?t matter.
autilia.g 2 = doesn't matter.
Checlsum = cheEkslm of bgtes above.
PRINT LINE
D€vice ID = 34O.
Coomand bgte = $57.
O P E R A T I N CS Y S T E I {C O 1 6 5 5 5 - - Appendix K
19b
euxilierq 1= doesn't natter.
e|rxiliarg 2 = 9 4 E f o r n o t ' t t t e 1p r i n t o . $ S 3 t o r Bideuagg.
Check6urn = c h e c k g u mo f b u t e s a b o v E .
A T A R I A 1 O D I S K O RI V E
STORAGEFORMAT:
SIO INTERFACE
geritsl buE IDs i'ange fiom *31 (for 'D1', to 934
The controller
(for 'D4' ).
I u16555 --
O P E R A T I N GS Y S T E I 'C Appendix K
Lq7
Th€ controlter s u p p o I . t s t h e + o l l o u r i f i g S t O c o m m a n d s( 6 e e e a r l i e r
in this Appendir foi information ebout the DiEket*e Handter end
S e c t i o n 9 f o . a g e n e r a l d i E c u s s i o n o f b u E c o m m € n d)5:
GET STATUS
DeviEe ID = i31-34.
C o m t o a n db g t e = $ 9 3 .
a u x i l i a r U 1 = d o e s n/ t m € t t e r .
auxiliarg 2 = doeEn.t metter.
Checksuft = checftsuoof bqte6 ebove.
Device ID = $31-34
Cofimend br/te = E57.
aurili.arg I = loo bgte of ssctor number.
auxiliarg ? = h i S h b g t e o f s e c t o r n u m b e r .( 1 - 7 2 0 ' .
CheclBrrfll = €h€cksumof bqte6 above.
T h e E o m p u t e r i e n d E a d € t e f i a m e o f t h e + o r m E t s h o u r nb e l o u :
P U T S E C T O R( N O V E R I F Y }
Device ID = t31*34
C o r D n a n db g t e = $ 5 O .
EUxiIiarg 1= lou bqts of sector number.
aurili.arq 2 = hiSh bVte o+ sectoi number (1.-72O1.
Chec*sum = c h e c f t E U mo f b g t e s a b o v e .
I O16555 --
O P E R A T I N eS Y S T E I ' C Appendix K
194
128 date b!tee.
C h e c&s u n b q t e .
EET SECTOR
FORMATDISKETTE
Device !D = 931-34
Conoand bUte = $21.
autiliarg 1 = doesn't mattei.
euriliarg 2 = doesn't netter.
Chec lsufi = c h e c k E U r | ro f b{tes ebove,
O P E R A T I N eS Y S T E MC U 1 6 9 5 5 - - Appendir R
199
Appendi x L -- O S DATA BASE VARTABLE FUNCTIONAL DESCRIPTIONS
I t e n 1 , t h e f u n c t i o n a l g r . D U p i n gi n d € x , s t a r . t E o n t h e n e x t p e g e ;
the other tuo lookup tabIeE are at the end of Appendir L.
O P E R A T I N eS Y S T E I IC O 1 6 5 5 5 - - Aeeendix K
2o0
FUNCTIANAL INDEX TO DATA EASE VARIAELE DESCRIPTIONS
Tert/graphics scteen
Cur.gor cont?ol
8 1 C R SI N H
s2 ROWCRS. COLCRS
93 OLDROI.I,OLDCOL
84 TXTROI.',TXTCOL
S c r e e n m a r gi n g
D5 LI'IARCN
86 RI'IAREN
C o l o r ao n t i o l
E7 PCALRO _ PCOLR3
9e cctLoRo- ca|-oR4
Tert Ecroll ing
99 SCRFLG*
Attract node
B10 ATRACT
811 COLRSH*
812 DRKMSK*
T a bb i n g
813 TAEMAP
Split screen
OPERATINE SYSTEII C B 1 6 S 5 5 - - A p p e d di r L
eo1
816 gBTgCR*
F I L L , / D R A $ ,f u n . t i o n
817 FILDAT
B1g FILFLOI'
819 NEt, SROtr*,NEWCOLT1
B2O HOLD4I'
E E E a p e( d i G p l a g + o l l o u i n g c o n t r o l c h a t ' )
826 ESCFLE*
D i E Fl E g c o n t r o t chsracter.s fiooe
F27 DSPFLC
Bit ndppedgr.aphirs
S2A DHASK*
829 SHFAT{T*
O P E R A T I N CS Y S T E MC O 1 6 5 5 5 - - AppEndix L
?o2
IDtafnE I lror k ing variableE
B3O HOLDI*
s31 HOLD2*
932 HALD3*
833 TTIPCHR*
834 DSTAT*
935 DINDEX
836 SAVMSC
937 OLDCHR*
B3A OLDADR*
839 ADRESS+
840 MLTTI'IP/OPNTI.IPlTOADR*
841 SAVADR/FRMADR+
842 BUFCNT*
843 BUFSTR*
844 SHPFLG*
945 INSDAT*
946 Tr.tPROt,tn.T|4PCOLi
947 TI.,IPLBT*
844 SUBIF|P*
84? TINDEX+
85O E ITMSK+
s91 LT BUF+
852 TXTIISC
853 TXTOLD*
c0l6555 --
oPgRATINc SYSTET{ Appendir L
203
Interna I character cooe Eonver!ilon
854 ATACHR
955 CHARr
C. DiBl Handl€r
CT BUFADR*
CZ DSKTIHi
D. C a e g e t t e ( p a r t i e S I O p a r t i n H a n d l e r ' )
Caee.tte ood€
DA CASFLC*
Ca3sette bu$fer
D9 CASBUF*
DlO BLII',I*
011 BPTR*
K e gb o e i d
OPERATING SVSTET{ C O 1 6 5 5 5 - - A p p e n di r L
204
S p e Ei a I f u n c t i o n s
gtart/stop
E4 SSFLAO
IBREAK]
E5 ERKKEY
t S H I F T I / [ C O N T R O L ] 1 o ck
E6 SHFLIIK
E7 HOLDCH*
Autorep eat
E8 SRTI!IR*
tnveiEe vid eo
E9 INVFLO
P. inter
printer-buffer'
Fl PRNEUF*
F2 PSUFSZ*
F3 PBPNT+
e1 IOCE
G2 ICHID
C3 ICDNO
e4 I CCOM
E5 ICSTA
G6 ICEAL, ICBAH
G7 ICPTL, ICPIH
EA I CBLL, ICBLH
0 9 I C A X1 , I C A X 2
c10 IcsPR
Devic€ I ta t{.,6
G11 DVSTAT
devi ce teble
612 HATAES
0 P E R A T I N OS Y S T E MC O 1 6 5 5 5 - - ApPendix L
205
C I O , / H a n d1 e r i n t e r f a c e ParameEers
Retrq logic
Hl1 CRETRY*
H12 DRETRY*
C he c &s u m
H13 CHKSUT'!+
Hl4 CHKSNT*
Hl5 NOCKST'I*
H16 SUFRLOI+,
BUFRHI+
H17 BFENLO*,8FENHI+
C o s l m a n df r a r n e o u t p ! t b u + f e r .
H1e CDEVTC*
H19 CCOMND*
HeO CAUXt*, CAUXaT+
5IO t irneout
H?g T I I'IFLG*
He6 CDTt'tVl*
H27 CDTt'tA1*
Jogsticks
Jl STICKO - STICK3
J2 STRIOO - STF IG3
P a d dI e s
J3 FADDLO - PADDLT
J4 PTRIGO - PTRIG7
Disl€tte/.aEEette-boot
N3 DOSINI
N4 CKEYT
N5 CASSBT*
N6 CASINI
N7 BOOT?,.
NA DFLAeS*
N9 DSSECT*
NlO BOOTADI.
Environn€ntdl Eontfol
Nll COLDST
N12 DOSVEC
P. InterruptE
P 1 C RI T I C
P2 POKMSK
Sgsteln T i mer€
Real-ti|ne cloc|l
P3 RTCLOK
Sgst€fi Tiln€r 1
P4 CDTfM
P5 CDTIIA1
Svsten Timer ?
P6 CDTTVa
P7 CDTI'IA2
RAI'I-inteFrirpt v€Etoir
R. UEer 6r.eaE
R1 ( unlabcled )
R2 USAREA
o End user.
o eetle d€veIoper.
A pp I i c a t i o n 6 p r o g i a m t n e i .
o 5{stem stilitg uriter.
o Language proEe6Eor developer.
D e v i c a H E n dl e r { ^ l ri t e ? .
E a c h v € r i a b l . € i i s p e c i f i e d b q i t s 6 gs t e m e q u e t e f i l e n a m e
fol l oued bg itE addresg (in hex ' end the number of bgtes regerved
i n t h e d at a b a s e ( i n d e c i n e l ' , i n t h e f o l l o o r i n g f o r n :
For eraop1e:
MEt'lLO f OaE7, 2J
OPERATINE SYSTEf,Ic o 1 6 5 5 5 - - A p pe n d i x L
210
A. I.I€HARYCONFICURATIAN
43 A P P I ' { H II O O O E , 2 l - - U 6 € r - + r e 6 m E r n o r gs E r e e n l o u e r tioit
APP HI is e oser-controlled v€iiEbI€ that contains the address
qrithin the +reE menoiq region belot|, rrhiEh the DiEpleg Handler cannot
g o i n s e t t i n g o p s d i E p 1 t s 9s c i e e n . T h i E v 6 r i a b l e i s
initialized to zero bg the OS et pourer.-up.
R A I ' I T O PC e ! . m 3 n e n t l g r e t a i n s t h e R A H t o t d d d i e E E t h a t q , a e c o n t e i n e d
i n T R A H S Z( a s d e s c r i b e d i n N 1 ) f o r t h e D i s p l s g H a n d l e t . , 6 u 5 e . T h e
velue iE set up aE pert of Handler initializEtion.
OPERATINO SYSTEM C O 1 6 5 5 5 - - A p p e n di r L
211
S. TEXT./ORAPHICSSCREEN
C u r s o r C o nt r o I
t O O 5 4 , 1 l a n d C O L C R St O O 9 5 , 2 l - -
BA ROITCRS Current tursor
position
The ro|, and colualn nulnbering 6tart uith the valu€ rero, and
i n c r e a s 6 i n i n c r e m e n t E o f o n e t o t h e n u l t l b e r .o f r o u s o r € o l u m n s m i n u E
1i uith the upp€r Ie+t cornef of the screen being the or.igin (O,Ol.
R O W C R iSE a E i n g l e - b q t E v a r i a b l e l r i t h a m a r i m u . [ € ! t o u , a b t e v a l l e
o f 1 9 1 ( s c i e e n o o d e s 8 - 1 1 1 , C O L C R Si s a a - b g t € v 6 r i e b l e u i t h a
naxifium allouable value o+ 319 (Ecreen mode 8).
O P E R A T I N oS Y S T E HC O l 6 S s F - - Appendix L
B3 O L D R O I I[ O A 5 A , 1 I a n d O L D C O L! O O 5 B , 2 1 - - PFioF .ur5or tosltion
8 4 T X T R O W[ O a g O , 1 ] € n d T X T C 0 L t O 2 9 1 , e l -- S p1 i t - s E r e e n tet t cut'so!'
position
T X T R O I Ia n d T X T C O Ld e f i n e t h e c u t s o r l o c E t i o n ( r o u , a n d c o l u m n ,
r e s p e c t i v e l g ) f o r t h e n e r t d e t a e l e m e n t t o b e t.ead fron or
tritten to th€ 6D1it-screen tert uindou.
The iou and column nLrdb€rin9 €tart {rith the value zero, end
incraese in inETement6of one to 3 and 3?, r'espectivelq, uith the
uppet Ie{t corner of the sp!it-Ecreen t€xt uindo!, being the origir!
(o,o).
S c i e e n M a ? gi n g
L M A R G Nc o n t a i n s t h e c o l u m n n s m b e r ( O - 3 9 ) o f t h e t e r t s c ? e e n l e f t
marlin, the text csrgor. uill rehain oD or to the right of the
le+t oargin aE a r'esult of sll opet'ationsr un1655 the cutsoa
€o1unn variable ic direEtltj updeted b'J the user (5ee 92 and 84
ebove). The de+Eult v€lue for LI'IARON is 2 and i: eEtebli6hed uPon
p o u , e r - u p o f 5 q 5 t e m r e 5 et .
Ri'{ARGN c o n t a i n E t h e E o l L , | n nn u r n b e r ( O _ 3 9 ) o t t h e t € r t 5 E r e e f l r i g h t
mtsrgin, the text crrrsor l,i11 remein on or to the left of thE
right margin eE E ierult o+ ell oper€tione, unlEEs the t!t3or
coluon variable i.6 directlg updated bV the ueer' (see 82 €nd 84
abov€). Th€ de+ault value +or RHARGN is 39 and is e5tabliEhed
upon p o u e r - u p of 5 v 5 t e n r e 5 e t .
O P E R A T I N CS Y S T E Mc o f 6 5 5 5 - - Appendix L
Color Control
A s p a r t o f t h e s t a g . 2 V B L A N Kp r o c e E E ( s e e S e c t i o n 6 ' , t h € v a l u € E o +
n i n e d a t a b a s e v a r . i a b l e 6 6 r e s t o r e d i n c o r r e s p o n di n g h a r d u a r e
colo. contr'o1 t egiEter6. The color r€giEters are divided into ttro
groUp9: the plager/missile colors end the plEqfield co1or6. The
pl€qfield €olor rag iEterE are utilized b q t h e d i f + e r e n t s E r e e n m o de s
as shoun in Appendix H. The pItsqei,hissi 1e coloF r.egigters are not
used bg the etandard OS.
PCOLROIOzCO] coLPr,ro
IDot2]
P C O L R 1t o 2 c 1 l coLPi.l1 [ DO13]
PCOLRzto2czl coLPMzCDO14I
PCOLR3tO2C3: coLPtt3 tDo15l
E a c h c o l o r v a r i a b l e ha6 the forftat Fhournbelou:
7 6 5 4 3 ? 1 0
+-+_+_+*+_+_+_+-+
i color ! lu'r| lr!
+-+-+-+-+-+-+-+-+
coLoRor o a c 4 l COLPFO t D o l 6 l
coLoRt r 02c91 COLPFI, tDo171
coLoR2tozc67 COLPF2 f D o l e l
coLoR3rcacTJ COLPF3 c D o 1 9 l
coL0R4t o 2 c B l COLSK T D O l A J
7 6 5 4 3 2 1 A
+_+*+_+_+_+_+_+_+
I color I lun iri
+-+-+_+-+_+_+_.t_+
S e e A p p e n d i r H + o r i n + o i r n a t l s n l . e g a r di n g t h e c o l o r ' a n d l l l n i n a n c e
field vel ueE.
O P E R A T I N GS Y S T E I ' IC O l 6 5 3 5 * - Aependir L
214
T€rt gcrol t ing
o A text line at the bottoo rou ot the Erreen ettends past the
r . i g h t m € r 9i n .
Sc.,olling haE the offect of Ferloving the €ntire logicat tine that
starts at the top of the scr€en and then moving ali EUbsrquent
lines upuerd to fill in the void. The EUrroi ,ill al"o|r|o\r.
uplrard i4 the Iogic6I line deleted ixreedl one phg3iEet tin€.
Attr.€c t f'tod6
T e bb i n 9
ge€ Section 5 for a di5cu5sidn of the use of t€bs in conJunction
ui th the Screen Editor.
The tab settings ar.e retained in a 15-b9te (1?O bit) f|lap, urhere
bit value o+ 1 indicatee a tab ietting; the diagrad belou sho{rs
the mapping of the individuel bitr to tab Dositione.
t
+---+---+---+---+---+*--+---+---+
| 1 1 2 t1 1 3 !1 1 4 i 1 1 5 ! 1 1 6 | 1 1 7 ! 1 11A1t9 i +14
+---+---+---+---+---+---+---+---+
L o gi t a I T e r t L i n e s
The beginning phgsi.sl line n{mber for each logical lina on the
scieen is ietained in B four bqte (32 bit! map, uhere e bit velue
of one indic€ter th€ Etart o+ a logicel line; the diagraft belou
shoos the napping o+ th€ individual bitE to phgEical line (rourl
n u t n b€ r 3 .
7 b 3 4 3 2 1 0
+--+--+--+--+--+_-+--+--+
I cr 1l 2i 31 41 9l 61 7! LOoHAP+O
+--+--+--+--+--+--+--+--+
I al 911oi11112113i141191 +1
+--+--+--+--+--+--+--+--+
i 16i 17| lql t9 t20't2L i22i23i +2
+--+--+--+--+--+_-+--+--+
+--+--+--+--+--+'-+--+--+
The map bitE aie tsl1 Eet to 1 {rhenever the tert screen i5
opened or €1€ared. F?om that Coint, the oap i5 upttEted as
logical 1i.ne5ere entered, edited and deleted ft.om the 9c?een.
i O16555 --
O P E R A T I N eS Y S T E I ' C Aependir ,
,r,
815 L O C C O L +t O O 6 3 , 1 I - - CurEor/1ogical line column nu|noe.
L B e C O Lc o n t a i n s t h e l o E i E E l - l i n s aolumn numb€r +or the coar€nt
aurEor poEition, note that a logicel IinE can cooprise up ro
three phgsicel lin€s. ThiE v€riabl€ is for. the internal use of
the Di sp1aq Hendter.
goIi,t Screen
DRAUI,/FILL F{rnction
R O W A C: = O i C O L A C : = O ;
ROI.JCRS := OLDRO{, CULCRS := OLDCOLT
I.IHILECOUNTR>ODO
BECIN
OPERATINE SYSTEI'IC O 1 6 5 5 5 - - A p p e n di r L
?14
ROttAC i= ROl.lAC+ DELTAR,
IF ROt^lAC)= ENDPT
THEN
EE6IN
ROt^lAC:= ROWAC- ENDPTT
ROHCRS:= RO|ICRS+ ROWINC
ENB;
P L O T _ P O I N T ,t F o i n t de+in€d bg ROWCRa
Sn d C O L C R S)
CoUNTR := CAUNTn - 1
ENO;
FILLDAT containE th€ fill reqion data v€lue aE peit of th. calling
sequEnce foi a FILL rofl{nand as d€sciibed in Section 9.
N E l . l R O t€Jn d N E I I C O La r e i n i t i e l i r . d t o t h e v a l u e E i n R O I { C R Sr n d
C O L C R S ,' r h i c h i s p r e s e n t t h e d e s t i n a t i o n €ndpoint of the DRAW/FILL
c o m m a n d . T h l e i 5 d o n e $ o t h a t R O I I C R Sa n d C O L C R Sc a n b e e l t e r e d
during the p€rforoanEe of the coomand.
o P E R A T I N GS Y S T E MC O l 6 5 5 5 - - Appendir L
2L9
HOLD4 is used to save and restofe t h e v e l u F i n A T A C H Rd u r i n g t h e
F I L L p l " o r e E E i A T A C H Ri s t e m t o r a r i l r J s e t t o t h e v € l v e i n F I L D A T t o
a..otopli6h th€ fillittg portion of th€ comnand.
8 2 1 R O W I N C * [ O O 7 9 , 1 ] a n d C O L I N C T .I O O Z A , t I - - Ro{r,/cotumn
incIeanent/dec"e ent
R O W I N Cd n d C O L T N Cd r e t h € r o u s n d c o l u n n i n c r € n e n t v a l u e 6 ; t h e g
ere eech Eet to +1 or -1 to control the bdEic direction of line
dralring. ROI',INC End CULINC repr.eEent the sign6 of NEI.IROH-
ROI'rCRSand NEI|COL - COLCRS, r.eEpertivelg.
BAe DELTAR* tOO76, 1f and DELTAC* EOO77,A7 -- Delta rou and delta
col umn
O f t e n i t i s u s e f u l t o h a v e A T A S C II c o n t r o l E o d e s ( 3 s . h a s C L E A R ,
C U R S O RU P , e t c l . di5pla'Jed in th€ir graDhi. foi$s initead o+
iaving thenl perforo their. contr.ol tunction. Thi€ di.3plag
cepabilitg is provided in tqro +oros {rhen outputting to the Scieen
Editor: 1, a data Eontent +or(n in ohich a ipe.ial character (ESC'
precedeF eaah cont,iol charaEter to be di6plaqed and Z) a oode
contio 1 form.
O P E R A T I N OS Y S T E HC O 1 6 5 5 5 - - Appandix L
220
Escape (Diiplarj Follguin! Controt Cha.acter'
-
DiEp!a{ Control Chtsracter.Elvlode
t r h e n D S P F L Ci E n o n z € f o , A T A S C I I c o n * r o l c o d e 3 o t h e r t h e n E B L 5 r e
treated as data and diEplaged on the scr€€n uhen ostput to the
S i c r e e n E d i t o r . . t l h € n D S P F L Oi E z e r o , A T A S C I I . o n t . o I codes are
ProEe:sed n o r : l t g .
ooooool0
oooooool
I n t e . n a I l ' r o r . ki n E V e r . i a b I e E
DINDEX aontaini the curI.ent screen ftode obtained +r'oo the 1ou
order +our bits o f t h e o o E t i e c e f l t O P E NA U X 1 b u t e .
I I P E R A T I N GS Y S T E HC O 1 6 5 5 5 - - Appendir L
837 O L D C H R *I O O S D ,1 1 - - Cursor' <haiacter Eav€/r€stors
O L D C H Rr . e t € i n s t h e v a l u e o f t h e c h a r e c t e r u n d e , t h e v i s i b l € t e r t
- cnrt6ori thi6 variable iE uged to re6tore the oaiginEl character
velue uhen the cuasor is moved-
B4O HLTTTiP/OPNTHP/TOADR*
10066,2l -- Teopor.rig Etorage
841 SAVADR
/FRI'{ADR* [OO6E,2l -- t€hporair, storage
SYSlgll C016559 --
OPSRATINO Appendir L
223
846 Tt'tPRO[{r.tO2B6, 1] and THpcoL* CO289,2J -- Tempor€rs srorase
Ioternal Chararter C o d e C o n v e a si E n
ATASCI I INTERNAL
CODE CODE
oo-lF 40*5F
20-3F OO-IF
40-5F 20-3F
60-7F 60-7F
80-9F CO-DF
C. DISKETTE HANDLER
S e e S e c t i o n 5 f o l ' a d i . E c u s E i o no + t h e r e s i d € n t D i i t e t t e HendIea.
D. CASSETTE
OPERATINGSYSTEI,ICO16559 -- Apgendir L
I/O utilitg (SIO, haE caEEette €peci+ic code uithin it. sone veriables
in thiE subsection Ere utilizsd bg SIO End 6ooe bg the CaE€€tte
H e n dl € r .
The input baud rata i! assum€d to be e no|nlnal 600 baud, but uill
be €dJUrted, if neEesEa!'!, bg the 5IO routine to account fot.
drive-dotor variationE, .tretched tape, etc. Th. beginning of
evetg saFratt€ record containg a Pettetn of alternating 1'3 and
reror that ic urad iolslg for Fpecd corr€ctiont bg aneasuiing th€
tina to "a:d a firad nsltlbei o+ bitg, the taue-ret!ive baud rete
is d6t.r.fiined and th. haiduere adJutted a..ordinqIg. InPut baud
i'ater..ngin9 frofi 319 to 14O7 baud t€n th€oieticallg be handl€d
uBing this t.chniEU..
The input basd ..1. is adJusted bri s€ttinq the POKEY.ountcf that
contigl€ the bit rarrpling pe.iod.
The3e timerE .ontein referenEe tifiee fot the beginning end end o+
the fircd bit eett.rn r.e.€ive pF.iod. The first bgte of each
tinrr a o n t a i n s t h a t h e n E u r r € n t v e t t i c a l l i n e { o o ntar valus reed
fron A N T I C , E n d t h . e e E o n d b q t e o f e a c h t i n e r c o n t€inE the then
ru.r€nt value of t h e 1 e € 5 t s i E n i f i c a n t b g t e o * t h e OS "e€1 time
clocl ( RTCLOK+2).
O P E R A T I N eS Y S T E HC O l 6 5 5 5 - - Appendir L
226
A D D C O Ri s e t e l l l p o r a ! - g v a r i a b l e u s e d f o r the it|terpolatton
calcslation o+ the above computation.
Cassetta l , l o de
Cassette 8u++er.
7 6 5 4 3 2 t O
+-+-+-+-+-+-+-+-+
io I o 1 0 1 01i CASDUF+O
+-+-+-+-+-+-+-+-+
l o 1 0 I o 1 0 1! +1
.i-+-.t-+-+-+-+-+-+
! control b{t. I +2
+-+-+-.f-+-+-+-+-+
! 1aa !
= detd
i bqtes I +130
+-+-+-+-+-+-+-+-+
FIYPE ie a cop{ of ICAXzZ from the OPENcofi and end indic€tes the
tgpe of interaecord gep selected; a positive vElue indicateE
noroal r.ecord gaps, and a negative velue indiEateE continuous
n o d e 9 a ps .
OPERAT'NG SYSTEMC O 1 6 9 5 5 * - A pp e n d i r L
E. I{EYBOARD
I * t h e f t e t Jc o d e r e e d a n d a r c a p t e d i E t h . c o d e f o . I C T R L I 1 , t h a n
the displEg 6ta.t/stop fteg (sSFLAC, is comptefiented ard the
value iE not itored in the t€q code FIFO (CHl.
In addition t o t h € t e a d l n g o + t h e * e g d e t E , S R T I I . I Ri E s e t t o t g o
f o i a l l l n t e r r u p t 6 r € E e i v e d ( r e e E 8 ) r a n d A T R A C Ti s r € t t o O
u,neneveie neu code 1s aE.!tt€d (see BIO).
The Kegboard Hsndler obtains all keq dsta frofi CH, lrhenevar s
code is ertrEcted fron that 1-btJte FIFg, th. H€ndtet store6 a
v€lo. of *FF to the FIFO to indtcatc thet tha code has been Fe.d.
see Sertion 5 for further. diEcuesion of the Keqbo€rd Handler,B
proc€6sing of the lerJ codes
CH1 contains the kelt code v€1ue of the leg moit r6a€ntlq r€ad and
Ecc€Dted.
KEYDELi.e set to a v a l u e o f 3 u h e n e v e r a k € { c o d e i s a c c e p t e d ,
and i6 d€cr.einented everq 6oth of a iocond bq the stage 2 VBLANX
p.ocesE (unti I it i€ache6 !ato ).
OPERATINOSYSTEI'{CO14S59 -- Appendix L
S p e c i a l F u n ct i o n s
Star t/5top
Displa{ Handlei and sicr€en Editor. output to th€ text or. gr6phics
noda 9c.een cen be Etopped end sta.ted (ryithout lo3ing ang o+ the
output date) through the use of the tCTRLI 1t€t, coftbination.
Each leg depreE€ion toggIeE a flag thet iE monitored b{ the €bove
|'€ntioned Handlers. trhen the flag is nonzer.o, the handlerE uait
+oi it to 9o to zero be+oi'e eontinuinq anrJ output-
IBREAXJ Keg
E R N K E Yi E s s e d t o i n d i c a t e t h e t t h e t B R E A K I t € ' , h € E b e e n p i e e s e d .
Tha v€lue is nornallq nonzero i|nd is set to zero uheflever the
IBREAKI keq is presEed. The cod€ that deteEt6 and pror€EE€E the
tBREAKI condition (+1ag = O) Ehould set the ftag nonuero 69ain.
ISHIFTI/ICANTRALI Lock
O P E R A T I N CS Y S T E h C U 1 6 9 5 5 - - Aerendir L
In normal node, e1l lnmodified alphabetic character leqs generate
the lourerEare letter ATASCTI code (t61-7A).
A ut o r e p e a t
W h e n e v e r S R T I I . I Ri s e q u e l t o ! e . o a n d a k e 9 i € b e i n g h e l d d o u n ,
the value of the *eq code iB stored in the l€q code FIFO (CH)
T h i e l o g i c i s p a r t o f t h e s t E g e 2 V B L A N Kp i o c e s € .
S R T I M Ri 5 c o n t r o l l e d b g t t o i n d e p e n d € n t p r o t e s s e 6 : 1 ) t h e
keqboard IRO Eervice routine, uhich est€b1i9he5 the initi€1 d€l€g
v a l u e a n d 2 ) t h e 6 t e g e 2 V D L A N Kr o q t i n e t h a t € E t 5 b I i g h e s t h e
repe€t rrte, decieflents the timer and iflPlement5 the auto repeat
logic.
O P E R A T I N OS Y S T E Hc 0 1 6 5 5 5 - - Appendix L
I n v e r s e V i d € o Co n t r o I
The Kegboard Handler inv€rts bit 7 of INVFLG uhenever. the ATARI terJ
i5 paetsed, the louer order bits a r e n o t E l t e r . e d € n d a r e E s s u d r e dt o b e
telo.
The Kegboard H.ndIei/s "erclu6iv. or'E'r (XOR,s) the ATASCII keg deta
uith th€ valse in INVFLC at all tines; the noifnEl velues of gOO and
*BO thui lead to control of the inv€rse video bit (bit 7).
F. PRINTER
gee S€ction 5 for a general description o+ the Pr'inter HandIer.
Painter-Eutfer
O P E R A T I N eS Y S T E Mc O 1 5 5 5 5 - - AppEndix L
and cont€ins nothing but printe? data_
Normal, 40
DoubIe l,idth 20 (not currentlg 6!pported bg the deviEe)
Si de{rags 29
Status req!eet 4
l n t e r n a l t r o rI i n g V a r i a b l € s
P T I t ' i O Tc o n t e i n s t h € t i o € o u t v a l ! e f o r g I 8 c a l l i n g E e q u e n r e v a i i a b l e
DTIMLO (see gection 91, PTItlOT ii 5et to 30 (uhich r"epre€entE a 32
second timeout) at intializetion time, and is uodated afte? each
printer. Etatus requeEt oper.ation to contain the vallJe r.etu?ned in th€
third bgte of the status frame (Eee Section 51.
O . C E N T R A LI / O R A U T I N E ( C I O }
O P E R A T I N eS Y S T E MC O 1 6 5 9 5 - - Appendi.x L
C I O € a I 1 g a r a m e t e r s a r e paE€ed pri.|larilg through
En I/O Control
BIoc|( (IoCBli although additional device Etat!s
infofmation can be
retuined in DVSTAT, and Handler inforoation i6 obtained fro|n the
devi ce teb le (HATABS).
I / O C o n t F oI S l o c t
I O C B i s t h e n a m ea p p l i e d c o l l e c t i v e l g t o t h e
16 bgte5 associated
urtn each of the B provided control Etructu.esi
EEr' gaction 5.
02 I C H I D t O 3 4 0 ,1 l - - HEndler ID
$ee SeEtion 5. Initiali2ed t o t F F a t Pou,ei-up and rgsteo i e9at.
S e e S e ct i o n 5 .
04 ICCOT'ito342, 1 l - - C o . n m s n db g t e
s e e S € ct i o n g .
S e e S e et i o n 5 .
See Seetion 3.
DeviEe Statug
D e v i c e T a b1 e
S e e S e c t i o n 5.
Se€ Section
Se. Section 5.
s e e s e ct i o n 5 . T h i s d o u b l e - b r r t e v a r i e b l e ? u h i c h E t a r t E o u t
representing th€ bu++er length, i6 modi*ied b{ CIO in the course
O P E R A T I N GS Y S T E HC O 1 6 5 9 5 - - App€ndix L
of pt'oce6€ing Eofte comm€nds; then, before returning to the
caller, thr transaction bqte count iE Etored the.ein.
ICSPRZ+a is alEo lEbeled ICIDNO and retEin5 thr v.lue o+ the 65Oe X
re9isteD fr.orn CIO entig. The X r.egister is loaded frodr ICIDNO ei CIO
ret!rns to the ca!lei.
I C S P R Z + 3 i s a l r o l a b € 1 e d C I O C H Ra n d r e t e i n g t h e v a l u e o f t h e 6 5 0 A A
iegister f r o f l C I O e n t ! . q , e r c e p t f o r d a t a r e a d i n g t g p e E o t n n l a n d E ,i n
d h i c h c a 6 e t h e m o e t r e c e n t d a t € bgte read is etor.ed tn CIOCHR. Th€
65Oe A register i E l o € d e d f i o l | l C T O C H Ra E C I O r e t u r n i to the catler..
I n t e . n a I t r o r . ki n 9 V € r i € b I e E
See 022.
See G22.
HA D D E V I C [ O 3 O O ,1 l - - DeviEe bui ID
see S.ction 9.
see gection 9.
See Se.tion 9.
H6 , BUFHI tO3O4,2l --
D B U F L OD Hsndlei bufflr €ddreEe
H7 O T I M L O t O 3 O 6 ,1 l - - Oevice tineout
See Section 9.
HA , BYTHI [O3OA,2] --
D B Y T L OD Buffer' length / bgte count
see gi€ction 9.
BUESound Control
5 6 r .i e I B u F C o n t r o l
Retr.g Logic
S I O u i 1 1 a t t e & p t o n e c o m p l e t e c o d m a n d" e t r g i f t h e f i r E t a t t e m p t
rE not error fiee, arhera a conplete coinsnd tig roniists o+ up to
14 €tteftpti to send (End ecknouledge) a rgdtoan; f.ane, follollled
b q a E i n g I e e t t e m p t t o r e c E i v e C O H p L E T Er n d p o E E i b l q a d a t r
frame-
OPERATINO SYSTEI.{C U 1 6 5 5 5 - - A p p e n di r L
C he c & B u t o
Th. Serial I/O buE protoEot ipecifies t h a t alI rooftend and data
r l . a n a s o u s t c o n t e i n a c h e c f t s u mv E l i d e t i o n b t J t e , t h i s
bqte is the
arith..etiE sum (uith end-ar.o!nd carr{} of a l l o + t h e o t h e r - b q t e s
in th€ +feoe.
Data 8uffe. i nE
SYSTE CO16S59--
OPERATTNG Aeeendix L
BFENLO/BFENHI i6 t h e a i t t h { r r t 1 c E U m o f B U F R L D / E U F R H9I l u s the
frao€ sire plus
Command
Frame Output Bu++et
See SeEtion 9 fot' the tommand fr.eme for'ftat and dascriPtign
C A U X I e n d C A U X 2a r e B e t t o t h e v a l u e s o b t e i n € d + r o SIO call
p a r ' 6 n E t e r ' 3 D A U X l a n d D A U X 2 ,r e s P e c t i v e ! 9 .
S U F R F Li s € f l a g u s e d b { t h e E e i i 5 1 b u 5 r e c e i v € i n t e r r u P t t e r v i c e
ioutinE to indiiate uhen the m€in portion of a buc frane has bren
r e c e i v e d - - e 1 1 b u t t h e c h e c * E L t t t lb ' J t e . E U F R F L e q u E l t o t e f o
indicates thet the ittEinpoition heE not been co|nplEtelli received'
€ nonzero value indicates thet the oein portion hes been
i'€ceived.
O P E R A T I N oS Y S T E HC A 1 6 S 5 5 - - ApPendix L
24L
T E I ' I Pi s u s e d t o r a c e i v e 1 - b q t e r e s p o n s e E f r o l t l 5 e r i a I bug
controlle.Er EUch as ACK, NAK. COI'IPLETE or ERROR.
X M T D O Ni s e f l E g u s e d b q g l u t o c o m r t l u n i c a t e b e t o € i n the SeriBl
buE tr'enBmit interrupt Eervice routine and th€ main 5IO code. The
+1a9 is initiellg Eet to zeFo bU SIO, and later 5et nonze.o bq
the inte!.t'spt Ee.vlc€ r'outins a+tea the leEt bgte of a bus +iane
ha5 been tranEmitted.
S I O T i m e o ut
T h i r v e r t o ? E l u r e q Ep o i n t E t o t h e . J T I M E R r o u t i n e ? u h o s e o n l g
f u n c t i o n i s t o s e t T I i ' l F L Gt o z e r o . T h i s v e c t o r i 5 i n i t i a l i r e d bq
SIO betore everg use, so that S'rste Ti&er 1can be uged bg an!
process that does not use SIO &rithin d tining +unction See aIso
P5.
O P E R A T I N CS Y S T E HC O 1 6 9 9 9 - - Appendix L
I n t e r n a I W o r ki n g V € r . i a b t e i
JorJEticts
7 6 5 4 3 e 1 0
+-+-+-+-+-+-+-+-+
io o o otRtLtDlui
+-+-+-+-+-+_+-+_+
CENTER toF
UP toE
UPlRIOHT 306
RICHT 907
DOUIN/RIOHT tO5
DA!'N 9OD
DOI"IN/LEFT IO9
LEFT *OB
UPlLEFT 304
7 6 9 4 3 ? 1 0
.i-+_+_+_+_+_+_+_+
to o o o o o otTi
+-+-+_+_+_+_+_+_+
PaddleE
7 6 t r 4 3 2 1 A
+-+-+-+-+-+-+-+-+
lo o o o o o oiTl
+-+-+-+-+*+-+-+-+
Liqht Pen
L P E N HE o n t E i o 6 t h e h o r i r o n t a l p o 5 i t i o n . o d e f o t t h e l i g h t p e n , t h e
a l g o t i t h t n 6 e 1 o { , ( u r i t t e n i n P a E c a l) s h o u E t h e c o n v e i B i o n f r o m P o E i t i o n
code to 6cieen coordinste (screen mode 7):
+-+-+-+-+_+_+_+-+
i totoiotTi
+-+-+-+-+_+_+_+_+
The d"iving controller hes no poEition EtopE End th{J6 6llorrs unlimited
rotation in eithri direEtion, the outprrt of the Eontrolter is € 2-bit
Caag eode {rhich can be used to detertnine the dir€ction of aotation.
The contaoller i5 Eensod using the satne intern€1 harduar€ a9 the
J o g E t i r k , t h u i t h e E a t n €d e t a b a c e v E r i E b t e s 3 r e u r e d f o r b o t h .
I O16555 --
O P E R A I I N GS Y S T E I ' C Areendix L
246
Je S ' T I C K O- s T I C K 3 [ O 2 Z E , 4 l - - D"ivinq controtle. Eense
The 4 driving controller sen€e var.i€bles conteln an encodGd
rotation ( p o E i t i o n ) E e n s e v a l . u e , € E F h o o r nb e l o u :
7 6 e 4 3 2 L O
+_+_+_+_+_+_+_+_+
lO O O O 1 lival!
+_+_+_.t_+_+_+_+_+
o F , o D ,O C , O EO, F ,O D , . . . . . . .
J9 - STRIG3 tOAA4t 47 --
SSSSsTRIGO Driving trigg.r 3en5e
7 6 9 4 3 2 L O
+-t-+_+_+_+_+_+_+
io o o o o o olT!
+_+-+_+_+_+-l_+_+
.FLOATINC
tI. POINT PACRAEE
See S€ction g +or a dcscription of th€ Floati$g point package.
tt3 F R I [ O O € O , 6 1- - FP r.egistsi 1
, ] --
l . l 5 F R x * [ O O € C1 Spare (!,nu€ed)
t{24 IOOFB,tl --
DEeFLe./RADFLG D€g,reos/radianr flag
D E G F L G= O i n d i c a t e s r ' r d i a n s , 6 i n d i c d t e i {eorees.
R A f , lS i z i n g
Dur'ing gotrer-up rnd Eq5teo aeget the tirEt no[-RAM addre3s dbove 1OOO
hex is located and its sddresg reteined u3ing a norldestr!etive
test. The first b g t e o + e v e i t J 4 K m e m o t . g" b l o c l " i E t € s t e d t o g e r i f
it is altera!1e, if so, the or'iginal value i9 testored end the next
bloEk is t65ted, :nd if not, that addresE ii con€idered to be th€
end of RAM.
Diststtr/Cissette-Boot
D O S T N Ic o r t a i n s t h r d i E k b o o t . d 3 0 + t t a t e i n i t i s l i z e t i o n address
froo th. beginning of the boot file (see Saction 1O) uhenev€r s
dist ett.-boot is succa6sfull{ co.npleted.
N5 C A S S B T * [ O O 4 B ,1 ] - - CaEEette-booting fIag
C A S S B Ti s u E e d d u i i n g t h e c a E s e t t e - b o o t P r o . € 5 5 t o i n d i c a t a t o
ihared code thet th€ caEt€tte i6 being boot€d and nEt the di6kette.
C A S S B T€ q u a t t o . e " o i n d i c t t e s a d i s l e t t e - b o o t , and nonzeio indica+es
a ra95e tte-b oot.
0 P E R A T I N o S Y S T E Mc o 1 6 5 5 9 - - Appendir L
250
aass€tt€-boot i s s u a c E E g f u Il V r o n p l e t e d .
7 6 5 4 3 2 1 0
+_+_+_l_+_+_+_+_+
i tctDi
+-+-+-+-+-+_+_+_+
{ritere: C c 1 indiE6tes that t h e c a s s e t t e - b o o t u e s G o m p l a t e d .
D - l i n d i E a t e s t h a t the dist!tt€-boot u.E coopteted.
Environfient Contaol
A t t h € b e g i n n i n g o + p q u e r ' - u p t h o O S E e t s D O S V E Ct o p o i n t t o t h e
"blarkboer.d" routine, D O S V E Cc e n t h e n b e a l t e r e d a s a c o n s e { u e n c e
o+ a distette-boot or. caEsette-boot (as erplained in Section 1Ol to
rFtabligh a neu control progl€t!r. Control urill be paEied tht"ough
D O S V E Co n d l 1 p o u 6 r - u p e n d s g s t e o r e s e t c o n d i t i o n s in uhich e
c tridge do€E not t€te cont.ol +irst.
S g E t e t nR e s i t
P. INTERRUP'S
ge€ Se€tion 5 for e discuEEionof intet'ruPt Froc€sEing.
C R I T T Cs q u a l t o z e i o i n d i . a t e 5 t h a t t h e c q i r e n t l q e r e c u t i n g t o d e
Eection i5 noncritical, uhile ang non!efo value indiEetas that the
currentLrJ e r e c u t i n g E o d € section i5 ct'itical.
PA F O K | € K [ O O 1 O 1, l - - P O K E Yi n t e r r u p t mes*
5{stsn liner€
Realtin! Clocl
Sg6t€o limer 1
ggstem Timer' 1 is maintained a5 par.t of the st.te 1 V A L A N KP . o c e E s ,
and thus h€s the h i g h e s t p r i o . i t g o f a n g o f t h e u 9 6r tinets.
C D T I ' 1 A lc o n t s i n 6 t h e a d d r e s e t o t t h i c h t o J S R 5 h o u l d t h e t i m e r
tioeout. Se€ 3l.so H27 and Eectiofl 6.
C D T H V ac o n t a i n s r e r o u h e n t h e t i o e r i s i n a c t i v e , o t h e r u i s e it
c o n t a i n s t h e n u t n b e r o f V B L A N K Sr . m e i n i n g u n t i l tifteout.
S Y S T E MC O 1 6 5 5 5 - -
OPERATTNG Aerendix L
234
NHI Interrupt V e ct o r 6
IRO Interiupt V e ct o r s
OPERATINOSYSTEI'ICO16399 -- Appendir L
255
Plg VSERIN [O2OA,2t -- Serial I/O buE reEeive dats ie€drJ
A ! p a r t o + t h . s t e g e 2 V B L A N Kp r o c e s E , c e r t e i n h a . d u a r . a . . 9 i s t € . e
ara updated fFom 08 dgt€ baso variable6 as rxplaincd in Section 6.
S D M C T Li E s e t t o a v a l p e o f t o z a t t h e b e g i n n i n g o f a D i s p t € !
Handler OPENcomnandr and then later Eet to a val{r. of t22. The
v a l u e o f S D M C T L i i s t o . e d t o D I ' I A C T L[ D 4 O O ] a i p a r t o f t h e s t a g e e
V B L A N Kp r o c e 5 r .
The Displr{ Handler format6 a neu di6plag liEt uith €verg OPEN
coooand and pute th6 diiplag List addreE€ in SDLSTL ard SDLSTH. The
v.luc of thesF bgtae are 6tored to DLISTL ED4O2I and DLI$TH [D4O3]
a E p a r i o f t h e s t a g e 2 V B L A N Kp r o c e s s .
OPERATINOSYSTEI'ICO16555 -- Aprendir L
236
NUTE: The.e is a potential ti{ring probleo assotiet.d tith the
updating of tha hardorarc te9i6ter9 +rom the dEta ba6a vaiisbleE.
s i n c e t h e i t a g e a V B L A N Kp r o E e t s i s p e r f o r o € d u i t h i n t e i r u p t g
'- enabl€d, it i. pog6ibl€ foi €n IRO intetropt to ocEur befoir thr
updating of DLISTH and DLISfL. I+ the p!.ocairing of that
interrupt (plus other neEted interruptg, arcaed€ the
vertical-b1.n* d.l€g ( 1 fisecr, then th€ digpl.g lirt point.r
regiiter uill not have been updated uhen displag I i E t Ptocesting
coomencls for the ne{, fremc, end e rctesn g}itch lrilI r'aF|J!t.
T h e D i s p l a g H a n d l e r . E e t 6 C H A C Tt o t o a o n e v e i g O P E N c o | n n . n d . T h €
v a l u . o f C H A C T i . E t o r a d t o C H A C T Lt D 4 o l l a E p t r t o f t h . € t a g e 2
VBLANK rr.oc ess.
T h . D i s p l a g H . f | d l a i 6 e t s C H B A St o I E O o n e v e r g O P E N c o d n . n d . T h €
v a t u e o f C H E A S i e E t o r € d t o C H B A S EC D 4 O 9 ] a s p a t t o + t h ! 5 t a g e 2
\:. V S L A N Kp F o c e r e . T h i s v e r i a b t e c o n t t o l t the eh:r'.ctet .ubt.t for
sEreen oodeE l and e, a value of tEO Pl'ovidas the €apital letteis
and nufibe? set {rhereas a vslue of lEe provides the loorarcase
letter's €nd speeiat graphics 3et. See 85$ fo. |not'e infoiftatio'|.
UPERATINOSYSTEI'ICO163S5 -- APpendix L
257
R. USER AREAS
R1 IOOEO,12E]
R2 tO4aO,640I
OP€RATINOSYSTEf'|CO16559 -- Appendir L
zea
ALPHABET'CAL LIST OF DATA BIrSE VARIABLES
ADDCOR D4 o30E, I
ADRESS 839 0064, 2
APPMHI A3 oooE,2
ATACHR s94 O2FB, 1
ATRACT 810 oo4D,I
BFENHI Ht7 oo39, I
BFENLO Hl7 oo34, 1
BI TI'ISK 450 oo5E, 1
BLIII D10 o2aA, 1
BOOT? N7 ooo?, 1
BOOTAD N10 0242,2
BOTSCR O2BF, 1
EPTR D11 oo3D,1
BRKKEY Fq ool 1, 1
BUFADR o o 1 5 ,a
BUFCNT 842 oo5g, 1
BUFRFL H21 oo3g, 1
EUFRHI H16 oo33, 1
BUFRLO H16 oo3e, 1
EUFSTR 843 oo6c,2
CASBUF o9 o3FD,131
CASFLG DA o30F, 1
CAS:NI N6 ooo2,2
CASSBT N5 oo48, 1
CAUXl H20 o23C,I
CAUX2 l{20 o23D,1
CSAUDH D1 O2EF,1
CBAUDL D1 OzEE,1
ccoHND H19 oe38, 1
CDEVIC H1E oe3A, 1
CDTHAl P5,l,!.27 422&, 2
CDTMA2 aezB,2
cDTHFs P9 oe2A, 1
CDTMF4 P9 oazc, 1
cDlr.{F$ P9 o22E, 1
cDTHV1 P4, H26 0226,2
cDTt'rv2 P6 o21A,2
cDTt|v3 PE o21C,2
OPERATINOSYSIEII CO16559 -- A9p.nd i r
e59
cDTt'tv4 P8 oaLE,2
cDTf.tv9 PB 0220,2
CH ozFC,1
CHKSNT Hl4 oo3s, 1
cH1 FI oeF?, 1
CHACT Pe5 oaF3, 1
CHAR 855 OzFA,1
CHSAS P2A o2F4,I
CHKSNT H14 oo3B,1
cHKSUIl tlt,t o o 3 1 ,1
CIOCHR oozF, 1
crx t't11 ooF2,1
CKEY N4 oo4A,1
COLAC 424 oo72, 2
coLcRs 92 oo95,2
COLDST Nl1 oe44, 1
COLINC 821 oo7A, 1
coLoRo BA, F27 oac4, 1
coLoRl BA, P27 ozcs,1
co|-oR2 88, P27 cec6,I
co|-oR3 84, P27 o2c7, 1
coLoR4 BA, P?7 ozcE,1
COLRSH 811 oo4F, 1
COUNTR 823 ao7E, 2.
CRETRV Hl1 0036, 1
CRITIC P1 oo4a, 1
CRSINH B1 o?Fo, 1
CSTAT oeg8, 1
DAUX1 H9 o30A, I
DAUX2 H9 0308,2
DBSECT N9 o24L, 1
DAUFHI H6 0304, 1
DBUFLO H5 0305, 1
DEYTHI HA 0304, 1
DEYTLO HE 0309, 1
DCB H1 0300, 1?
DCOt'tND H4 0302, 1
DDEVIC H2 0300, 1
DEEFLC n24 OOFB,1
D€LTAC Bet oo77 ' 2
DELTAR B2e 0076, 1
DFLAOS NE oe40, 1
DICRT Hto o o F 1 ,I
DI NDEX 835 aoeT' 1
DMASK B2g o2AO, I
DOSINI N3 oooc,2
DOSVEC N12 000A, a
DRETRV H1? oo37, 1
DRKI'ISK 812 oo4E,1
DSI(TI f'r c2
DSKUTL L1 oo1A,2
DSPFLE s27 O2FE, 1
DSTAT 434 oo4c, 1
OPSRATING SYSTEM CO16555 - - A p p e n d ir L
260
DSTATg H5 0303, 1
DT I ITLO H7 0306, 1
OUNIT H3 0301,1
DUNUSE 0307 t 1
DVSTAT c11 o2EA, 4
H6 OOED,1
ENDPT 025 oo74t e
H30
(ERRNO K5) oo49, I
ESCFLC o2A2, L
ESICN f.{a OOEF,1
FCHRFL l',t9 ooFo, 1
D12 oo3F, 1
F ILDAT OEFD,1
F l LFLC B1 A o2B7, 1
FLPTR i416 ooFc, 2
FtlSZP6 K1 oo43, 7
FPSCR Hee o5E6,6
FPSCR1 H23 ogEC,6
FPTR2 t1l7 OOFE,2
M1 00D4,6
FRl tt3 oo€o,6
M4 ooE6,6
H2 OODA,6
o15 oo40, 1
FRI.IADR 0069, 2
FRX ooEc, 1
FSCR 1,122 o5E6,6
FSCRl M23 o5EC,6
FTYPE D13 oo3E, 1
EPRIOR P24 o26F , L
APERATINGsYsTEf'tco16s55 - - A pp e n d i x L
262
PADDLS
PADDL6 0276, L
PADDLT 0277 , I
PBPNT. o o 1 D ,1
PBUFSZ o o1 E ,1
PCOLRO 97, P27 o2co, 1
PCI]LR 1 a7, P27 o2c1, 1
PCOLR2 87, P27 ozce,1
PCOLR3 s7, P27 oec3,1
PLYARO t'121 osEO,6
POKMSK o o 1 0 ,1
PRNBUF o3co,40
PTEMP F4 ootF, 1
PT IMOI t-t o o 1 c ,1
PTRICO J4 oeTc, 1
P T RI O 1 J4 o27D,1
PTRIG2 .r4 o27Et t
PTRIE3 oeTF, 1
PTRIG4 J4 o2ao, 1
PTRIGS J4 0 2 8 1 ,I
PTRIC6 o2E?, 1
PTNIE7 .J4 0293, 1
RADFLC H24 OOFB,1
RAMLO N1 ooo4,3
RAt'lSI Z A5 opE4, 1
RAIITOP A4 006A, 1
RECVDN oo3?, 1
RI.IARON oo53, 1
ROWAC 824 oo70,a
ROWCRS oo54,I
RAS'I NC 821 0079, 1
RTCLOK oo12,3
SAVADR 841 oo6E,2
SAVIO 0316, 1
sAv!tsc 836 oosg,e
SCRFLC B9 O2BB,1
SDLSTH P23 o:31, 1
SDLSTL 0230, 1
SDHCTL P?2 o22F, t
SHFAI{T 829 oo6F,I
SHFLOI( O2BE,1
SOUNDR H10 o o 4 1 ,1
SRT I I.IR oazB,1
SSFLAG OzFF,1
ssl(cTL oe32, 1
STACXP H2B 0 3 1 A ,1
STATUS H31 0030, 1
STICKO J1, J7, J8 o27e, I
ST ICKl J', J7, JA 0279, 1
sTtcK2 J', J7, JB o27A, 1
sTlcK3 ,J1, J7, .rE o27B, 1
STRIEO .J2, .J7, ,tg 0e94, I
OPERATINCsYaTEit co16955 - - A pp . n d i r L
263
J2, J7, Jq 0285, 1
STRIG2 J2, J7, ,Jg oeB6, 1
STRI G3 J2, J7, J9 o2s4, 4
SU8TfIP s48
sl.lPFLo 844 oo7B, 1
TABI.IAP s13 o2A3, 15
TEIIP H23 o23E, 1
TEMPl o312,2
TEIIP3 I)6 0319,1
T I }{ER1 o30c, 2
T tf'tER2 0310,2
T l.tFLC D2, HES o317,1
TINDEX 849 oe93,r
TI,IPCHR 833 oo90,I
THPCOL 946 oeBq,a
TI'IPL8T 847 o 2 A 1 ,1
T}IPROW 846 O:BB, 1
TOADR 940 ao66, e
TRAHSZ N1 ooo4,3
TSTAT H29 0319, 1
TSTDAT N2 ooo7,1
TXTCOL 94 o29L,2
TXTt'tSC s52 a294, 2
TXTOLD 853 0296,6
TXTROW B4 0290, 1
UgAREA R1 ooao,1ea
VSREA'( PL6 0?0 6, ?
VDSLST P10 0200, 2
vIHtRO P13 o2L6, 2
VINTER P15 0204, 2
vt(sY8D PL7 oeo8,a
VPRCED P14 0202, e
VSERI N Plg o20A,a
vsERoc P?O o20E,2
P19 o20c, 2
VTIIIRI P2L o410,2
vTrHR2 P2L o2L2, 2
vT 'tR4 P2l oeL4, 2
VVELKD P12 o2e4, 2
WBLKI P11 o2??, ?
ltARfiST N13 oooa, 1
||t.loDE D14 0289, 1
O P E R A T I N GS Y S T E MC O 1 6 5 5 5 - - Aroendix L
IIEI.,IORYADDRESS ARDERED LIST OF DATADASE VARIABLES
ADDRESS VI D NAI'IE
oooo-ooo1 s7 LNZSS
ooo2-ooo3 N6 CASINI
ooo4-oo06 N1 RAI'ILO,TRAIISZ
oooT N2 TSTDAT
oooa N13 9tARf'tST
ooo9 N7 800T?
oooA-oooB N12 DOSVEC
oooc-oooD N3 DOSINI
oooE-oooF A3 APPI.IHI
oo10 P? POKI,ISK
oo11 E5 BRKKEY
oo12-oo14 P3 RTCLOK
oo15-oo16 C1 BUFADR
oo17 c23 ICCOI1T
oolA-oo1B Ll DSKUTL
oo1c F5 PTIMOT
oo1D F3 PSPNT
ootE FE PBUFSZ
ool F F4 PTEHP
oo20 813, G14 ICHIDZ
oo21 c15 tcDNOZ
oo22 G16 ICCOMZ
e17 ICOBAS
ooa4-ooe5 G1g ICBALZ, ICBAHZ
ooe6-oo27 G19 ICPTLZ,I CPTHZ
oo2a-oo29 O2O ICBLLZ, ICBLHZ
oo2A-oo29 O21 ICAXIZ, ICAX2Z
oo2c-oo2F G22, e24, G29 ICSPRZ
oo30 H31 STATUS
oo31 t{13 CHKgUt'l
oo32-oo33 H16 SUFRLO,BUFFRHI
oo34-oo35 H'7 BFENLO, BFENHI
oo36 Hll CRETRY
oo37 H12 DRETRY
oo3a H21 BUFRFL
oo39 H22 RECVDN
oo3A H24 XI,4TDON
oo3B H14 CHKSNT
oo3c H15 NOCKSI.I
oo3D D11 BPTR
oo3E D13 FTYPE
oo3F D12 FSOF
o040 D15 FRSO
oo41 H1O SOUNDR
oo42 Pl CRITIC
oo43-oo49 Kl, KA, K3, K4, K5 ZEUFF' ZgUFP, ZDRVA,
oo4A N4 CKEY
oo4B N' CASSBT
oo4c 834 DSTAT
SYSTEIICO16595 --
OPERATING Appendir L
267
o*B EA SRTIT{R
ozec P9 CDTI'IF4
ozeD PIE INTEI'IP
o?2E P9 CDTT,{F5
o22F P?? SDIICTL
oe30-o231 PE3 SDLgTL, SDLSTH
oe32 H32 SSttcTL
o23A H1A CDEVIC
o23S H1S cct]t'tND
o23C-O23D HzO C A U X l ,C A U X ?
H23 TEHP
H3O ERRFLG
o240 NA DFLAGS
o24L N9 DBSECT
024e-oa43 N1O BOOTAD
o244 Nl1 COLDST
o246 C2 DSKTIH
0247-A?6E 851 L INBUF
o26F P24 OPRI{IR
o270-o277 J3 PADDLO -- PADDLT
o27e-o279 .,1, J7, JA STICKO -. STICK3
o27C-O2A3 .J4 PTRIOO -- PTRIG7
o2a4-o2a7 J2, J7,,.tg STRIOO -- STRIGS
oea9 D14 WMODE
02aA DlO BL lt.t
o2gg-o2aF EilO un|Jsed
oe90-o292 84 TXTROI.I, TXTCOL
oe?3 A4S TINDEX
oa94-o295 852 TXTi'iSC
o2g6-0298 853 TXTOLD
oa9D 832 HOLD3
o29E E4S suSTtlP
o29F 831 HOLD2
o2AO BzE DhASK
o2A1 847 TMPLST
o2A2 826 ESCFLO
o2A3-0281 413 TA8r.lAP
02B2-O?85 814 LAGHAP
02B6 E9 INVFLE
BlA FILFLE
02BE-02AA 944 T}!PROW,TI'PCOL
02BB 89 SCRFLO
02BC BEO HOLD4
oagE E6 SHFLOT{
OABF 876 BOTSCR
02co-ozc3 87,P27 PCOLRO-- PCULR3
o?c4-o2cB BA,P27 PCOLRO-- PCOLR4
o2E4 A5 RAiISI Z
o2E5-02E6 A2 }4Ef'ITUP
o2E7-O2E8 AI l4Et'rLO
OAEA-02ED 811 DVSTAT
Dl CHBAUDL,CHBAUDH
oeFo 81 C R SI N H
ozF1 E2 KEYDEL
OPSRATINOSYSTET'ICO16555 -- Appendir L
cHl
oeFS Pe5 CHACT
oaF4 P26 CHBAS
O2FA 855 CHAR
02FB B$4 ATACHR
ozFC E3 CH
O2FD EL7 FILDAT
827 DSPFLG
OzFF E4 SSFLAC
o3FD-047F D9 CASBUF
OPERATINESYSTEI,Ic o t 6 5 $ 5 - - A p P e n di x L
FLOATINO POINT PACKAC€VARIABLES
o57E 1A LSPR1
o57F t119 LEPR2
oSao-o5FF ll?o LEFEND, LBUFF
osEO-O5E5 t421 PLYARG
o5E6-O5EB .422 FPSCR,/FSCR
oSEC-O5Fl n23 FPSCRl/SCR1
OPERATINGSYSTEMc o 1 6 9 5 5 - - A p pe n d i r L
INDEX
The EUbJect inder contains thr€e forins of rrterences:
ATARI standa.ds L2
ATASCTT 894-55, 3, ApP D_c
attract oode BIO-12, 6,
bit oapprd qraphics BaE-8A9, 5, App H
blerkboard mode g, NlA, 7, 12
ENF T
boot a, 4, N3_1o, j, 7, 1o
BREAK ES, 6, L2
.
rar.tridge 3, 4, 7, LO
casBette brud fate determine D1-D7
cassette-boot 3, NS-1Or 7, lO
cas6ette devlEe D1-DlS, A, g
C a s e e t t e H a n dl e r ( C ) 5
CIO (Cent.al L/O Utilitqt Ot-AS, g, ?
CIO/urei intrr+eEe 01-11, S, App A, App B
CIO/Hand ler. interface Gle-?]Z, C
CLOSE L/O comfiEnd S, 9
coldstar.t (6ee .poqre.-uo.)
color control A7-8, 5, 6
control charaEt€.6 a26-27, S, App D
c i i t i E a l s e c ti o n pl,6
Eulsor g1_4, 9
database 4
DCB (Device Cont.ol Block' Hl-9, 5, 9
DELETS I/O Eomoend s
-
developnent sqstem 19
alevire/f i lenao{ speri+ir6tion 5
DeviE€ Handler 3, q
deviE. tabte 2, At2, e, 7, 9
di6ft-boot 3, N3-1O, e, 7, tO
dist davire F
DiEft File t{sneger (Dt Kl-F, g
DiEl Handl€r' (resid€nt) C1-2, I
displatJ device (scr€en) BS4-S9, S, App E, App H
Di€pl€g Hahdler (S) Bt-bg, s
displag list 4r p1O
DOS (Di6t Utilities) Ll, ta
DRAl.l I/O coomand 817-eg, s
dr iving Eontrol lei JB-9
Edur6tional Sqsteo Foroat Caigettes g
error hendling OS, HO! H1l-12, 9, A9, B-C
JogEtick
RAt't 3, 4, q
recor.d ( I/81 s
BENAI'IE L/O .ommend E
RESEI 2, N1_13, 6, 7, 12
ROt't( os t L, 4
R9-a32-C HEndler (R) g, 9