annotate level2/modules/cc3go.asm @ 899:6841c75afc62

Modified
author boisy
date Fri, 17 Jan 2003 21:04:02 +0000
parents aca4b54ed8f3
children 03033eef4b93
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 * CC3Go - Kickstart program module
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 * ------------------------------------------------------------------
752
9e166adbc547 Put /DD back to /H0 like original cc3go, for those wanting to do floppy boots.
boisy
parents: 741
diff changeset
8 * 5 Taken from OS-9 L2 Tandy distribution and BGP 98/10/12
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
9 * modified banner for V3
752
9e166adbc547 Put /DD back to /H0 like original cc3go, for those wanting to do floppy boots.
boisy
parents: 741
diff changeset
10 * 5r2 Fixed fork behavior so that if 'shell startup' BGP 03/01/08
9e166adbc547 Put /DD back to /H0 like original cc3go, for those wanting to do floppy boots.
boisy
parents: 741
diff changeset
11 * fails, system doesn't jmp to Crash, but tries
9e166adbc547 Put /DD back to /H0 like original cc3go, for those wanting to do floppy boots.
boisy
parents: 741
diff changeset
12 * AutoEx instead. Also changed /DD back to /H0
9e166adbc547 Put /DD back to /H0 like original cc3go, for those wanting to do floppy boots.
boisy
parents: 741
diff changeset
13 * for certain boot floppy cases.
9e166adbc547 Put /DD back to /H0 like original cc3go, for those wanting to do floppy boots.
boisy
parents: 741
diff changeset
14
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
15
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
16 nam CC3Go
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
17 ttl Kickstart program module
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
18
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
19 ifp1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
20 use defsfile
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
21 endc
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
22
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
23 tylg set Prgrm+Objct
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
24 atrv set ReEnt+rev
752
9e166adbc547 Put /DD back to /H0 like original cc3go, for those wanting to do floppy boots.
boisy
parents: 741
diff changeset
25 rev set $02
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
26 edition set $05
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
27
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
28 mod eom,name,tylg,atrv,start,size
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
29
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
30 u0000 rmb 32
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
31 u0020 rmb 42
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
32 u004A rmb 33
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
33 u006B rmb 6
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
34 u0071 rmb 655
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
35 size equ .
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
36
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
37 name fcs /CC3Go/
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
38 fcb edition
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
39
384
850b16b2aa76 cc3go_rom now folded into cc3go... Makefile modified to adjust
boisy
parents: 372
diff changeset
40 Banner
850b16b2aa76 cc3go_rom now folded into cc3go... Makefile modified to adjust
boisy
parents: 372
diff changeset
41 ifne NitrOS9
388
81ae11488745 Made changes to output
boisy
parents: 384
diff changeset
42 fcc /NitrOS-9 Level Two Vr. 0/
384
850b16b2aa76 cc3go_rom now folded into cc3go... Makefile modified to adjust
boisy
parents: 372
diff changeset
43 else
388
81ae11488745 Made changes to output
boisy
parents: 384
diff changeset
44 fcc / OS-9 Level Two Vr. 0/
384
850b16b2aa76 cc3go_rom now folded into cc3go... Makefile modified to adjust
boisy
parents: 372
diff changeset
45 endc
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
46 fcb 48+OS9Vrsn
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
47 fcc /.0/
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
48 fcb 48+OS9Major
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
49 fcc /.0/
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
50 fcb 48+OS9Minor
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
51 fcb C$CR,C$LF
384
850b16b2aa76 cc3go_rom now folded into cc3go... Makefile modified to adjust
boisy
parents: 372
diff changeset
52 ifne NitrOS9
755
aca4b54ed8f3 Updated to beta3
boisy
parents: 752
diff changeset
53 fcc " ORION BETA3 Release ??/??/2003"
384
850b16b2aa76 cc3go_rom now folded into cc3go... Makefile modified to adjust
boisy
parents: 372
diff changeset
54 else
755
aca4b54ed8f3 Updated to beta3
boisy
parents: 752
diff changeset
55 fcc " ARIES BETA3 Release ??/??/2003"
384
850b16b2aa76 cc3go_rom now folded into cc3go... Makefile modified to adjust
boisy
parents: 372
diff changeset
56 endc
372
b3bfa479f8d0 scfdefs is now included from level2v3/defsfile and all references to it
boisy
parents: 0
diff changeset
57 fcb C$CR,C$LF
388
81ae11488745 Made changes to output
boisy
parents: 384
diff changeset
58 fcc / "A CoCo Community Project"/
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
59 fcb C$CR,C$LF
388
81ae11488745 Made changes to output
boisy
parents: 384
diff changeset
60 fcc / Visit us on the web:/
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
61 fcb C$CR,C$LF
388
81ae11488745 Made changes to output
boisy
parents: 384
diff changeset
62 fcc !http://cocoos9.sourceforge.net/!
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
63 fcb C$CR,C$LF
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
64 fcb C$LF
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
65 BannLen equ *-Banner
384
850b16b2aa76 cc3go_rom now folded into cc3go... Makefile modified to adjust
boisy
parents: 372
diff changeset
66 ifeq ROM
752
9e166adbc547 Put /DD back to /H0 like original cc3go, for those wanting to do floppy boots.
boisy
parents: 741
diff changeset
67 DefDev fcc "/H0"
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
68 fcb C$CR
752
9e166adbc547 Put /DD back to /H0 like original cc3go, for those wanting to do floppy boots.
boisy
parents: 741
diff changeset
69 HDDev fcc "/H0/"
9e166adbc547 Put /DD back to /H0 like original cc3go, for those wanting to do floppy boots.
boisy
parents: 741
diff changeset
70 ExecDir fcc "CMDS"
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
71 fcb C$CR
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
72 fcc ",,,,,"
384
850b16b2aa76 cc3go_rom now folded into cc3go... Makefile modified to adjust
boisy
parents: 372
diff changeset
73 endc
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
74 Shell fcc "Shell"
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
75 fcb C$CR
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
76 fcc ",,,,,"
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
77 AutoEx fcc "AutoEx"
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
78 fcb C$CR
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
79 fcc ",,,,,"
384
850b16b2aa76 cc3go_rom now folded into cc3go... Makefile modified to adjust
boisy
parents: 372
diff changeset
80 ifeq ROM
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
81 Startup fcc "STARTUP -P"
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
82 fcb C$CR
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
83 fcc ",,,,,"
384
850b16b2aa76 cc3go_rom now folded into cc3go... Makefile modified to adjust
boisy
parents: 372
diff changeset
84 endc
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
85 ShellPrm fcc "i=/1"
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
86 CRtn fcb C$CR
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
87 fcc ",,,,,"
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
88 ShellPL equ *-ShellPrm
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
89
439
279247d74138 Changed default time
boisy
parents: 418
diff changeset
90 DefTime fcb 101,9,11,08,59,00
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
91
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
92 start leax >IcptRtn,pcr
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
93 os9 F$Icpt
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
94 os9 F$ID
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
95 ldb #$80
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
96 os9 F$SPrior
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
97 leax >Banner,pcr
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
98 ldy #BannLen
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
99 lda #$01 standard output
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
100 os9 I$Write write out banner
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
101 leax >DefTime,pcr
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
102 os9 F$STime set time to default
384
850b16b2aa76 cc3go_rom now folded into cc3go... Makefile modified to adjust
boisy
parents: 372
diff changeset
103 ifeq ROM
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
104 leax >ExecDir,pcr
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
105 lda #EXEC.
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
106 os9 I$ChgDir change exec. dir
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
107 leax >DefDev,pcr
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
108 lda #READ.+WRITE.
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
109 os9 I$ChgDir change data dir.
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
110 bcs L0125
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
111 leax >HDDev,pcr
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
112 lda #EXEC.
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
113 os9 I$ChgDir change exec. dir to HD
384
850b16b2aa76 cc3go_rom now folded into cc3go... Makefile modified to adjust
boisy
parents: 372
diff changeset
114 endc
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
115 L0125 pshs u,y
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
116 os9 F$ID
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
117 bcs L01A9
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
118 leax ,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
119 os9 F$GPrDsc
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
120 bcs L01A9
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
121 leay ,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
122 ldx #$0000
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
123 ldb #$01
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
124 os9 F$MapBlk
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
125 bcs L01A9
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
126 * Set flag for Color BASIC
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
127 lda #$55
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
128 sta <D.CBStrt,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
129 * Copy our default I/O ptrs to the system process
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
130 ldd <D.SysPrc,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
131 leau d,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
132 leau <P$DIO,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
133 leay <P$DIO,y
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
134 ldb #DefIOSiz-1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
135 L0151 lda b,y
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
136 sta b,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
137 decb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
138 bpl L0151
384
850b16b2aa76 cc3go_rom now folded into cc3go... Makefile modified to adjust
boisy
parents: 372
diff changeset
139 ifeq ROM
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
140 * Fork shell startup here
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
141 leax >Shell,pcr
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
142 leau >Startup,pcr
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
143 ldd #256
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
144 ldy #16
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
145 os9 F$Fork
752
9e166adbc547 Put /DD back to /H0 like original cc3go, for those wanting to do floppy boots.
boisy
parents: 741
diff changeset
146 bcs DoAuto
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
147 os9 F$Wait
384
850b16b2aa76 cc3go_rom now folded into cc3go... Makefile modified to adjust
boisy
parents: 372
diff changeset
148 endc
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
149 * Fork AutoEx here
752
9e166adbc547 Put /DD back to /H0 like original cc3go, for those wanting to do floppy boots.
boisy
parents: 741
diff changeset
150 DoAuto leax >AutoEx,pcr
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
151 leau >CRtn,pcr
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
152 ldd #$0100
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
153 ldy #$0001
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
154 os9 F$Fork
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
155 bcs L0186
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
156 os9 F$Wait
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
157 L0186 puls u,y
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
158 leax >ShellPrm,pcr
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
159 leay ,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
160 ldb #ShellPL
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
161 L0190 lda ,x+
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
162 sta ,y+
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
163 decb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
164 bne L0190
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
165 * Fork final shell here
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
166 leax >Shell,pcr
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
167 ldd #$0100
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
168 ldy #ShellPL
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
169 os9 F$Chain
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
170 L01A5 ldb #$06
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
171 bra Crash
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
172 L01A9 ldb #$04
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
173 Crash clr $FFA8 turn off disk motor
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
174 jmp <D.Crash
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
175
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
176 IcptRtn rti
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
177
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
178 emod
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
179 eom equ *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
180 end