annotate level1/modules/oscode.asm @ 556:28a203bbd2cc

findstr and signal finished.
author roug
date Tue, 22 Oct 2002 19:09:04 +0000
parents 6992acfc221f
children dd89c62ea2ca
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1 ********************************************************************
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
2 * oscode - OS-9 Level One V2 bootstrap code
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
3 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
4 * $Id$
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
5 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
6 * Ed. Comments Who YY/MM/DD
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
7 * ------------------------------------------------------------------
201
668388823050 Fixed headers to be consistent
boisy
parents: 6
diff changeset
8 * From Tandy OS-9 Level One VR 02.00.00
235
3fa31ecd389a Modified oscode to allow conditional assembly for Dragon 64
boisy
parents: 205
diff changeset
9 * Also put in conditionals for the Dragon 64
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
10
6
780d4dddd9a9 Wrapped ifp1/endc conditionals around use
boisy
parents: 0
diff changeset
11 ifp1
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
12 use defsfile
6
780d4dddd9a9 Wrapped ifp1/endc conditionals around use
boisy
parents: 0
diff changeset
13 endc
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
14
235
3fa31ecd389a Modified oscode to allow conditional assembly for Dragon 64
boisy
parents: 205
diff changeset
15 ScrnLoc equ $8000
3fa31ecd389a Modified oscode to allow conditional assembly for Dragon 64
boisy
parents: 205
diff changeset
16 OS9Start equ $EF00
3fa31ecd389a Modified oscode to allow conditional assembly for Dragon 64
boisy
parents: 205
diff changeset
17 OS9Size equ $0F80
3fa31ecd389a Modified oscode to allow conditional assembly for Dragon 64
boisy
parents: 205
diff changeset
18
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
19 * Initial code executed upon booting up to OS-9
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
20
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
21 Start fcc /OS/
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
22 bra L2620
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
23
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
24 fdb $1204
267
6992acfc221f Put back OS9 BOOT
boisy
parents: 261
diff changeset
25 BootMsg fcc /OSy/
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
26 fcb $60
267
6992acfc221f Put back OS9 BOOT
boisy
parents: 261
diff changeset
27 fcc /BOOT/
205
097a249c9665 Slight change to oscode
boisy
parents: 201
diff changeset
28 BootMLen equ *-BootMsg
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
29
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
30 L2620 clr PIA.U4+3
235
3fa31ecd389a Modified oscode to allow conditional assembly for Dragon 64
boisy
parents: 205
diff changeset
31
3fa31ecd389a Modified oscode to allow conditional assembly for Dragon 64
boisy
parents: 205
diff changeset
32 ifne Dragon64
3fa31ecd389a Modified oscode to allow conditional assembly for Dragon 64
boisy
parents: 205
diff changeset
33 clr PIA.U4+1 added for Dragon, works on CoCo
3fa31ecd389a Modified oscode to allow conditional assembly for Dragon 64
boisy
parents: 205
diff changeset
34 endc
3fa31ecd389a Modified oscode to allow conditional assembly for Dragon 64
boisy
parents: 205
diff changeset
35
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
36 sta $FFDF turn off ROM
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
37 * locate Boot Text Screen at $8000
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
38 ldb #$06
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
39 ldx #$FFC6
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
40 L262B sta ,x++
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
41 decb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
42 bne L262B
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
43 sta 1,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
44
235
3fa31ecd389a Modified oscode to allow conditional assembly for Dragon 64
boisy
parents: 205
diff changeset
45 * Clear VDG screen
3fa31ecd389a Modified oscode to allow conditional assembly for Dragon 64
boisy
parents: 205
diff changeset
46 ldx #ScrnLoc
3fa31ecd389a Modified oscode to allow conditional assembly for Dragon 64
boisy
parents: 205
diff changeset
47 ldy #512
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
48 lda #$60
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
49 L263B sta ,x+
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
50 leay -1,y
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
51 bne L263B
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
52
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
53 * Copy "OS9 BOOT" to screen area
235
3fa31ecd389a Modified oscode to allow conditional assembly for Dragon 64
boisy
parents: 205
diff changeset
54 ldx #ScrnLoc+$10C
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
55 leay <BootMsg,pcr
205
097a249c9665 Slight change to oscode
boisy
parents: 201
diff changeset
56 ldb #BootMLen
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
57 L2649 lda ,y+
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
58 sta ,x+
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
59 decb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
60 bne L2649
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
61
235
3fa31ecd389a Modified oscode to allow conditional assembly for Dragon 64
boisy
parents: 205
diff changeset
62 ifne Dragon64
3fa31ecd389a Modified oscode to allow conditional assembly for Dragon 64
boisy
parents: 205
diff changeset
63 tst <$72
3fa31ecd389a Modified oscode to allow conditional assembly for Dragon 64
boisy
parents: 205
diff changeset
64 else
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
65 ldd #$1212
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
66 cmpd <$0078
235
3fa31ecd389a Modified oscode to allow conditional assembly for Dragon 64
boisy
parents: 205
diff changeset
67 endc
3fa31ecd389a Modified oscode to allow conditional assembly for Dragon 64
boisy
parents: 205
diff changeset
68
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
69 beq L266E
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
70 leau >Start,pcr
235
3fa31ecd389a Modified oscode to allow conditional assembly for Dragon 64
boisy
parents: 205
diff changeset
71 ldx #OS9Size
3fa31ecd389a Modified oscode to allow conditional assembly for Dragon 64
boisy
parents: 205
diff changeset
72 ldy #OS9Start
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
73 L2663 lda ,u+
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
74 sta ,y+
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
75 leax -1,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
76 bne L2663
235
3fa31ecd389a Modified oscode to allow conditional assembly for Dragon 64
boisy
parents: 205
diff changeset
77 jmp >OS9Start+L266E
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
78 L266E leax <eoc,pcr
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
79 ldd $09,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
80 jmp d,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
81
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
82 eoc equ *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
83 end
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
84