annotate os9/level2/boot.asm @ 120:fbb3301a2564

TL1 source fix
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Fri, 04 Jan 2019 17:33:04 +0900
parents f20bf9874697
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
14
3f18c1fa9132 add boot and sysgo
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
1 ********************************************************************
3f18c1fa9132 add boot and sysgo
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
2 * Boot - V09 Boot module
3f18c1fa9132 add boot and sysgo
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
3 *
3f18c1fa9132 add boot and sysgo
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
4 * $Id: boot_1773.asm,v 1.1.1.1 2001/02/21 23:30:54 boisy Exp $
3f18c1fa9132 add boot and sysgo
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
5 *
3f18c1fa9132 add boot and sysgo
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
6 * Ed. Comments Who YY/MM/DD
3f18c1fa9132 add boot and sysgo
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
7 * ------------------------------------------------------------------
3f18c1fa9132 add boot and sysgo
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
8
3f18c1fa9132 add boot and sysgo
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
9 nam Boot
3f18c1fa9132 add boot and sysgo
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
10 ttl v09 Boot module
3f18c1fa9132 add boot and sysgo
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
11
24
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
12 ifp1
14
3f18c1fa9132 add boot and sysgo
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
13 use defsfile
24
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
14 endc
14
3f18c1fa9132 add boot and sysgo
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
15
3f18c1fa9132 add boot and sysgo
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
16 *
3f18c1fa9132 add boot and sysgo
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
17 * map extended rom on page 0x40-
24
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
18 * first two bytes are extra rom module size
14
3f18c1fa9132 add boot and sysgo
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
19
3f18c1fa9132 add boot and sysgo
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
20 tylg set Systm+Objct
3f18c1fa9132 add boot and sysgo
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
21 atrv set ReEnt+rev
3f18c1fa9132 add boot and sysgo
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
22 rev set $01
3f18c1fa9132 add boot and sysgo
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
23 edition set 1
3f18c1fa9132 add boot and sysgo
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
24
3f18c1fa9132 add boot and sysgo
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
25 mod eom,name,tylg,atrv,start,size
3f18c1fa9132 add boot and sysgo
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
26
3f18c1fa9132 add boot and sysgo
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
27 size equ .
3f18c1fa9132 add boot and sysgo
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
28
3f18c1fa9132 add boot and sysgo
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
29 name fcs /Boot/
3f18c1fa9132 add boot and sysgo
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
30 fcb edition
3f18c1fa9132 add boot and sysgo
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
31
15
bb6a2a9f59f1 boot ...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
32 start
37
7baffb867d70 nitros9 level 1 worked
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
33 lbra entry
38
52f7ad4c2ebb a09 out range bug
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 37
diff changeset
34 lbra btdebug
37
7baffb867d70 nitros9 level 1 worked
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
35 entry
24
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
36 ldy #$40 extended rom page no.
15
bb6a2a9f59f1 boot ...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
37 clra
bb6a2a9f59f1 boot ...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
38 clrb
bb6a2a9f59f1 boot ...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
39 pshs d,x,y,u
bb6a2a9f59f1 boot ...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
40 tfr d,x
bb6a2a9f59f1 boot ...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
41 leay 4,s pointer to page no
bb6a2a9f59f1 boot ...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
42 ** read boot rom file size
bb6a2a9f59f1 boot ...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
43 os9 F$LDDDXY
14
3f18c1fa9132 add boot and sysgo
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
44 bcs last
27
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 26
diff changeset
45 addb #$ff
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 26
diff changeset
46 adca #0
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 26
diff changeset
47 clrb
16
807141dc5ee8 sysgo fork
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
48 std ,s size return as d
30
7b1b25ff010a disk io for mmu
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 29
diff changeset
49 ** OS9 lv2 use $a000-$dfff as a temporary page
7b1b25ff010a disk io for mmu
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 29
diff changeset
50 ** demand at least that size ( ROM start at $ed00 )
7b1b25ff010a disk io for mmu
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 29
diff changeset
51 cmpa #$ed-$a0
7b1b25ff010a disk io for mmu
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 29
diff changeset
52 bhi ok
7b1b25ff010a disk io for mmu
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 29
diff changeset
53 lda #$ed-$a0
7b1b25ff010a disk io for mmu
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 29
diff changeset
54 ok
15
bb6a2a9f59f1 boot ...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
55 os9 F$BtMem
14
3f18c1fa9132 add boot and sysgo
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
56 bcs last
15
bb6a2a9f59f1 boot ...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
57 ** u points the memory
bb6a2a9f59f1 boot ...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
58 stu 2,s return as x
bb6a2a9f59f1 boot ...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
59 ldd ,s
35
01519215ec70 add watch point
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 30
diff changeset
60 std 6,s
15
bb6a2a9f59f1 boot ...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
61 ldx #0
24
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
62 ** copy to Bt BtRAM
35
01519215ec70 add watch point
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 30
diff changeset
63 pagel ldd #$2000
01519215ec70 add watch point
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 30
diff changeset
64 cmpd 6,s
01519215ec70 add watch point
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 30
diff changeset
65 blo lo
01519215ec70 add watch point
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 30
diff changeset
66 ldd 6,s
01519215ec70 add watch point
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 30
diff changeset
67 lo tfr d,y
15
bb6a2a9f59f1 boot ...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
68 lda 5,s
bb6a2a9f59f1 boot ...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
69 sta $ffa0
bb6a2a9f59f1 boot ...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
70 tfr y,d
bb6a2a9f59f1 boot ...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
71 loop ldy ,x++
bb6a2a9f59f1 boot ...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
72 sty ,u++
35
01519215ec70 add watch point
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 30
diff changeset
73 subd #2
01519215ec70 add watch point
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 30
diff changeset
74 bne loop
24
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
75 clr $ffa0 back to system map
35
01519215ec70 add watch point
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 30
diff changeset
76 ldd 6,s
01519215ec70 add watch point
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 30
diff changeset
77 subd #$2000
01519215ec70 add watch point
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 30
diff changeset
78 bmi last all transfered
01519215ec70 add watch point
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 30
diff changeset
79 std 6,s
15
bb6a2a9f59f1 boot ...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
80 ** 2k boundary
bb6a2a9f59f1 boot ...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
81 inc 5,s
bb6a2a9f59f1 boot ...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
82 ldx #0
bb6a2a9f59f1 boot ...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
83 bra pagel
bb6a2a9f59f1 boot ...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
84 last clr $ffa0
bb6a2a9f59f1 boot ...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
85 puls d,x,y,u,pc
14
3f18c1fa9132 add boot and sysgo
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
86
37
7baffb867d70 nitros9 level 1 worked
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
87 ** put lbsr btdebug on <$5e
7baffb867d70 nitros9 level 1 worked
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
88 btdebug anda #$7f
7baffb867d70 nitros9 level 1 worked
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
89 sta $ff81
7baffb867d70 nitros9 level 1 worked
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
90 rts
7baffb867d70 nitros9 level 1 worked
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
91
14
3f18c1fa9132 add boot and sysgo
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
92 emod
3f18c1fa9132 add boot and sysgo
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
93 eom equ *
3f18c1fa9132 add boot and sysgo
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
94 end