EasyManua.ls Logo

Atari ST series - Page 218

Atari ST series
420 pages
Print Icon
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
Protobt
Produce Boot Sector Prototype
Protobt() Opcode = 18
T his fu nction is u se d to c re a te a b oo t se cto r in m e m o r y . T h is is a specially
form a tted block of in fo rm atio n th at m u st b e sto red on th e first se cto r o f
ea ch flo p py d isk (sid e 0, track 0, se cto r 1). T h e finish ed b o ot se cto r sh o u ld
be w ritten to th e flop py d isk , u sin g th e F lo p w r () fu n c tio n , n o t th e B IO S
fu nction R w a b s ().
C macro format
in t d isk typ e, execfla g;
lo n g bu ffer, se rialn u m ;
P ro to b t(b u ffer, se ria ln u m , d isk ty p e, exe c fla g);
Machine language format
m o v e .w
m o v e.w
m o v e.l
m o v e.l
m o v e.w
trap
a d d .l
Inputs
ex ecfla g
d isk typ e
serialn um
b uffer
Results
N o n e
ex ecflag , - (sp )
d isk ty p e, - (sp )
se rialn u m , - (sp )
b u ffe r, - (sp )
# 1 8 , - ( s p )
# 1 4
# 1 4 ,s p
w o rd
w o rd
lo n g
lo n g
A flag th at in d icate s w h e th er to e xe cu te
so m e b o o t co d e a t sta rtu p tim e. B oo t
co d e is u p to 48 0 b y tes o f m ach in e in
stru ctio n , startin g at by te 3 0 o f th e b o ot
se cto r.
0 = n o b o o t cod e
1 = e xe cu te b o ot co d e
A co d e w o rd th at sp ecifies a d isk 's sto r
a g e ca p acity a n d fo rm a t:
0 = 4 0 track s, sin gle sid ed (180K )
1 = 4 0 tra ck s, d ou b le sid ed (360K )
2 = 8 0 tra ck s, sin g le sid ed (3 6 0K )
3 = 8 0 tra ck s, do u b le sid ed (72 0 K )
A u niq u e 2 4-b it id en tifie r co d e u se d by
th e file sy ste m to tell w h e th e r d isk s h a ve
b een ch an g ed in a p articu lar d riv e. T o
g e n era te a ra n d o m serial n u m b er, p ass a
v alu e la rge r th a n ($1 00 00 00 ).
T h e ad d re ss o f a 51 2-b y te m e m o ry b u ffer
w h e re th e b o o t b lock in fo rm atio n w ill be
crea ted .
See also
Flopfmt(), Flopwr()
210