Mercurial > hg > Members > kono > nitros9-code
annotate level1/modules/rominfo.asm @ 2958:77500452de1c
bootman: Rename assembler files to .as
author | Tormod Volden <debian.tormod@gmail.com> |
---|---|
date | Sun, 09 Feb 2014 22:53:29 +0100 |
parents | e93ace49362e |
children | 03ae05578ec0 |
rev | line source |
---|---|
2609
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
1 ******************************************************************** |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
2 * ROMInfo - NitrOS-9 ROM Relocation Code |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
3 * |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
4 * $Id: rominfo.asm,v 1.1 2004/04/05 03:34:39 boisy Exp $ |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
5 * |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
6 * Edt/Rev YYYY/MM/DD Modified by |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
7 * Comment |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
8 * ------------------------------------------------------------------ |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
9 * 1 1998/05/03 Boisy G. Pitre |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
10 * Created for the Coyota project and later productized. |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
11 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
12 nam ROMInfo |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
13 ttl NitrOS-9 ROM Relocation Code |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
14 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
15 ifp1 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
16 use defsfile |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
17 endc |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
18 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
19 tylg set Systm+Objct |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
20 atrv set ReEnt+rev |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
21 rev set $01 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
22 edition set 1 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
23 |
2930
e93ace49362e
rominfo.asm: Fix booting from ROMPak
Tormod Volden <debian.tormod@gmail.com>
parents:
2929
diff
changeset
|
24 * Tested (for level 1) on XRoar |
e93ace49362e
rominfo.asm: Fix booting from ROMPak
Tormod Volden <debian.tormod@gmail.com>
parents:
2929
diff
changeset
|
25 * The ROMPak must be autostarting by firing FIRQ |
e93ace49362e
rominfo.asm: Fix booting from ROMPak
Tormod Volden <debian.tormod@gmail.com>
parents:
2929
diff
changeset
|
26 * |
2609
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
27 IFNE ROMPak |
2930
e93ace49362e
rominfo.asm: Fix booting from ROMPak
Tormod Volden <debian.tormod@gmail.com>
parents:
2929
diff
changeset
|
28 jmp $C000+start+3 Offset 3 due to this line |
e93ace49362e
rominfo.asm: Fix booting from ROMPak
Tormod Volden <debian.tormod@gmail.com>
parents:
2929
diff
changeset
|
29 PakOffs equ $C000-$8000 |
e93ace49362e
rominfo.asm: Fix booting from ROMPak
Tormod Volden <debian.tormod@gmail.com>
parents:
2929
diff
changeset
|
30 ELSE |
e93ace49362e
rominfo.asm: Fix booting from ROMPak
Tormod Volden <debian.tormod@gmail.com>
parents:
2929
diff
changeset
|
31 PakOffs equ 0 |
2609
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
32 ENDC |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
33 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
34 mod eom,name,tylg,atrv,start,size |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
35 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
36 size equ . |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
37 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
38 name fcs /ROMInfo/ |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
39 fcb edition |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
40 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
41 start equ * |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
42 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
43 IFGT Level-1 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
44 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
45 * NitrOS-9 Level 2 - CoCo 3 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
46 * Bring the CoCo 3 to sanity |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
47 orcc #IntMasks disable FIRQ, IRQ |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
48 clr $FFD9 go into fast mode |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
49 lda #$0A CC3 Mode, No MMU, 32K Int. ROM |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
50 sta $FF90 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
51 clr $FFDE RAM/ROM mode (upper 16K ROM at $C000) |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
52 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
53 * Setup MMU |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
54 ldx #DAT.Regs |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
55 leay MMUTbl,pcr |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
56 IFNE H6309 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
57 ldw #16 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
58 tfm y+,x+ |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
59 ELSE |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
60 ldb #16 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
61 MMULoop lda ,y+ |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
62 sta ,x+ |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
63 decb |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
64 bne MMULoop |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
65 ENDC |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
66 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
67 * Set up CoCo 3 Video Registers at $FF98-$FF9F |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
68 ldd #$0000 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
69 std $FF98 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
70 std $FF9A |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
71 std $FF9E |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
72 ldd #$0FE0 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
73 std $FF9C |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
74 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
75 * Initialize PIAs |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
76 ldx #PIA1Base RG - Initialize the PIA 1 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
77 ldd #$FF34 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
78 clr 1,x |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
79 clr 3,x |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
80 deca |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
81 sta ,x |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
82 lda #$F8 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
83 sta 2,x |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
84 stb 1,x |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
85 stb 3,x |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
86 clr 2,x |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
87 lda #$02 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
88 sta ,x |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
89 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
90 lda #$FF RG - Initialize the PIA 0 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
91 ldx #PIA0Base |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
92 clr 1,x |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
93 clr 3,x |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
94 clr ,x |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
95 sta 2,x |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
96 stb 1,x |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
97 stb 3,x |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
98 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
99 tfr b,dp |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
100 clr 2,x |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
101 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
102 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
103 lda #$CA RG - CC2 mode, MMU, constant DRAM, 32K internal ROM |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
104 sta $FF90 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
105 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
106 bra RelROM |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
107 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
108 * MMU |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
109 MMUTbl |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
110 fcb $38,$39,$3A,$3B,$3C,$3D,$3E,$3F |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
111 fcb $38,$39,$3A,$3B,$3C,$3D,$3E,$3F |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
112 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
113 * ROM relocation code -- copies the boot track into $2600 and JMPs to it |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
114 RelROM ldx #$EC00 src address (boot track in ROM) |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
115 ldy #$2600 dst address (RAM) |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
116 IFNE H6309 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
117 ldw #$1200 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
118 tfm x+,y+ |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
119 ELSE |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
120 copyloop ldd ,x++ get 2 bytes from src |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
121 std ,y++ put 2 bytes to dst |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
122 cmpx #$EC00+$1200 at end? |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
123 blo copyloop nope, copy more... |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
124 ENDC |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
125 jmp $2602 jump to OS rel code |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
126 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
127 ELSE |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
128 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
129 * NitrOS-9 Level 1 - CoCo 1/2 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
130 ldx #PIA1Base PIA1 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
131 clr -3,x clear PIA0 Control Register A |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
132 clr -1,x clear PIA0 Control Register B |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
133 clr -4,x set PIA0 side A to input |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
134 ldd #$FF34 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
135 sta -2,x set PIA0 side B to output |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
136 stb -3,x enable PIA0 peripheral reg, disable PIA0 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
137 stb -1,x MPU interrupts, set CA2, CA1 to outputs |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
138 clr 1,x $FF20 = DDR, motoroff |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
139 clr 3,x $FF22 = DDR, sound disabled |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
140 deca A = $FE after deca |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
141 sta ,x bits 1-7 are outputs, bit 0 is input on PIA1 side A |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
142 lda #$F8 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
143 sta 2,x bits 0-2 are inputs, bits 3-7 are outputs on B side |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
144 stb 1,x enable peripheral registers, disable PIA1 MPU |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
145 stb 3,x interrupts and set CA2, CB2 as outputs |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
146 clr 2,x set 6847 mode to alphanumeric |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
147 ldb #$02 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
148 stb ,x make RS-232 output marking |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
149 clrb |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
150 tfr b,dp B = 0 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
151 ldb #$04 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
152 clr -2,x |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
153 bitb 2,x |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
154 |
2929
8629f64b7dd3
rominfo: Disable autostart interrupt signal from ROMPak
Tormod Volden <debian.tormod@gmail.com>
parents:
2609
diff
changeset
|
155 IFNE ROMPak |
8629f64b7dd3
rominfo: Disable autostart interrupt signal from ROMPak
Tormod Volden <debian.tormod@gmail.com>
parents:
2609
diff
changeset
|
156 lda #$36 inhibit ROMPak autostart FIRQ |
8629f64b7dd3
rominfo: Disable autostart interrupt signal from ROMPak
Tormod Volden <debian.tormod@gmail.com>
parents:
2609
diff
changeset
|
157 ELSE |
2609
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
158 lda #$37 |
2929
8629f64b7dd3
rominfo: Disable autostart interrupt signal from ROMPak
Tormod Volden <debian.tormod@gmail.com>
parents:
2609
diff
changeset
|
159 ENDC |
2609
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
160 sta PIA1Base+3 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
161 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
162 lda PIA0Base+3 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
163 ora #$01 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
164 sta PIA0Base+3 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
165 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
166 lda PIA1Base+2 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
167 anda #$07 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
168 sta PIA1Base+2 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
169 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
170 * VDG Mode |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
171 sta $FFC0 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
172 sta $FFC2 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
173 sta $FFC4 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
174 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
175 * 64K DRAM (M0=0, M1=1) |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
176 sta $FFDA RESET M0 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
177 sta $FFDD SET M1 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
178 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
179 * ROM relocation code -- copies the boot track into $2600 |
2930
e93ace49362e
rominfo.asm: Fix booting from ROMPak
Tormod Volden <debian.tormod@gmail.com>
parents:
2929
diff
changeset
|
180 RelROM ldx #$AE00+PakOffs src address (ROM) |
2609
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
181 ldy #$2600 dst address (RAM) |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
182 IFNE H6309 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
183 ldw #$1200 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
184 tfm x+,y+ |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
185 ELSE |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
186 copyloop ldd ,x++ get 2 bytes from src |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
187 std ,y++ put 2 bytes to dst |
2930
e93ace49362e
rominfo.asm: Fix booting from ROMPak
Tormod Volden <debian.tormod@gmail.com>
parents:
2929
diff
changeset
|
188 cmpx #$AE00+$1200+PakOffs at end? |
e93ace49362e
rominfo.asm: Fix booting from ROMPak
Tormod Volden <debian.tormod@gmail.com>
parents:
2929
diff
changeset
|
189 bne copyloop nope, copy more... |
2609
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
190 ENDC |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
191 * BOOT relocation code -- copies the bootfile into $2600+$1200 |
2930
e93ace49362e
rominfo.asm: Fix booting from ROMPak
Tormod Volden <debian.tormod@gmail.com>
parents:
2929
diff
changeset
|
192 RelBOOT ldx #$8000+PakOffs |
2609
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
193 ldy #$2600+$1200 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
194 IFNE H6309 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
195 ldw #$2E00 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
196 tfm x+,y+ |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
197 ELSE |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
198 cpy2loop ldd ,x++ |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
199 std ,y++ |
2930
e93ace49362e
rominfo.asm: Fix booting from ROMPak
Tormod Volden <debian.tormod@gmail.com>
parents:
2929
diff
changeset
|
200 cmpx #$8000+$2E00+PakOffs |
2609
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
201 blo cpy2loop |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
202 ENDC |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
203 jmp $2602 jump to OS rel code |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
204 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
205 ENDC |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
206 |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
207 emod |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
208 eom equ * |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
209 end |
9dd4f422aac7
Added NitrOS-9 ROM Kit from Cloud-9
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff
changeset
|
210 |