sda4: commit the Glaze developer hard-drive dump
Un-ignored: the dev drive is the ground truth the restoration and emulator work constantly reference (DPL3/LIBDPL + VRENDER i860 renderer source, BT/RP live+dev game trees, VGL_LABS pod boot, scene/audio content). Kept in-repo for the pod-owner community. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,154 @@
|
||||
as860 DOS Rel 1.4, (C) 1990 Intel Corp., The Portland Group
|
||||
Tue Jul 06 16:44:56 1993 Page 1
|
||||
|
||||
|
||||
|
||||
1 //
|
||||
2 //
|
||||
3 // project: blaster
|
||||
4 // subsystem: ttm100 860_rpc_kernel
|
||||
5 //
|
||||
6 // module: rpc_kernel
|
||||
7 // file: pstart.s
|
||||
8 //
|
||||
9 // author: chrg
|
||||
10 // date: 10:02:90
|
||||
11 //
|
||||
12 // copyright (c) division ltd. 1990
|
||||
13 // sccs ident %w% %g%
|
||||
14 //
|
||||
15 //
|
||||
16 // modified:
|
||||
17 //
|
||||
18 //
|
||||
19 //
|
||||
20 //
|
||||
21 //
|
||||
22 // function:- main entry point to rpc kernel. disables interrupts and
|
||||
23 // then calls _vstart to go virtual etc.
|
||||
24 //
|
||||
25 //
|
||||
26 //
|
||||
27 //
|
||||
28
|
||||
29 .file "pstart.s"
|
||||
30
|
||||
31 .globl _start
|
||||
32 .globl pstart
|
||||
33 .globl _vstart
|
||||
34
|
||||
35 psr_im = 0x10
|
||||
36 low_pg = 0x0fff
|
||||
37 db_ate = 0x20
|
||||
38
|
||||
39 .text
|
||||
40
|
||||
41
|
||||
42 // at this point, we are running on the bootloaders stack.
|
||||
43 pstart:
|
||||
44 _start:
|
||||
45
|
||||
46
|
||||
47 // turn off all interrupts
|
||||
30300000 00000000 48 ld.c psr,r16
|
||||
d6100010 00000004 49 andnot psr_im,r16,r16
|
||||
38208000 00000008 50 st.c r16,psr
|
||||
51
|
||||
52
|
||||
53 // ensure ate disabled and iti set
|
||||
30500000 0000000c 54 ld.c dirbase,r16
|
||||
e4100020 00000010 55 or db_ate,r0,r16
|
||||
as860 DOS Rel 1.4, (C) 1990 Intel Corp., The Portland Group
|
||||
Tue Jul 06 16:44:56 1993 Page 2
|
||||
|
||||
|
||||
|
||||
38408000 00000014 56 st.c r16,dirbase
|
||||
57
|
||||
58 // ensure fte clear
|
||||
30900000 00000018 59 ld.c fsr,r16
|
||||
e4100000 0000001c 60 or 0,r0,r16
|
||||
38808000 00000020 61 st.c r16,fsr
|
||||
62
|
||||
63 // initialise fir
|
||||
30000000 00000024 64 ld.c fir,r0
|
||||
65
|
||||
66 // setup boot stack
|
||||
ec0f8380 00000028 67 orh 0x8380, r0, r15
|
||||
e40e0001 0000002c 68 or 0x01, r0, r14
|
||||
1de07001 00000030 69 st.l r14, 0(r15)
|
||||
70
|
||||
9412ff00 00000034 71 mov 0xffffff00, r18
|
||||
e4130004 00000038 72 or 0x04, r0, r19
|
||||
1e409801 0000003c 73 st.l r19, 0(r18)
|
||||
74
|
||||
75 // call _flush
|
||||
76 // nop
|
||||
77
|
||||
9412ff00 00000040 78 mov 0xffffff00, r18
|
||||
e413000b 00000044 79 or 0xb, r0, r19
|
||||
1e409819 00000048 80 st.l r19, 24(r18)
|
||||
81
|
||||
82
|
||||
83 // grab initstack and topmem from ccb
|
||||
ec1f0000 0000004c 84 orh ha%_input_ccb, r0, r31
|
||||
17fd0001 00000050 85 ld.l l%_input_ccb(r31), r29
|
||||
86
|
||||
87
|
||||
ec10f040 00000054 88 orh 0xf040, r0, r16 // set stack to 0xf0400000
|
||||
a2020000 00000058 89 mov r16, sp
|
||||
90
|
||||
91
|
||||
92 // grab the trap vector
|
||||
ec14ffff 0000005c 93 orh 0xffff,r0,r20
|
||||
e694ff00 00000060 94 or 0xff00,r20,r20 //hard vector
|
||||
95 // orh h%alltraps,r0,r21
|
||||
96 // or l%alltraps,r21,r21 //vector in .text
|
||||
97 // subu r21,r20,r22 //rel addr
|
||||
98 // shr 2,r22,r22
|
||||
99 // adds -3,r22,r22 // adust for 2 NOPS, +1
|
||||
100 // // change if remove NOPS!!!!
|
||||
101 // andnoth 0xfc00,r22,r22
|
||||
102 // orh 0x6800,r22,r22 // br alltraps
|
||||
e4130000 00000064 103 or h%alltraps, r0, r19
|
||||
ee73ec01 00000068 104 orh 0xec01, r19, r19
|
||||
105
|
||||
e4150000 0000006c 106 or l%alltraps, r0, r21
|
||||
eeb5e421 00000070 107 orh 0xe421, r21, r21
|
||||
108
|
||||
ec164000 00000074 109 orh 0x4000, r0, r22
|
||||
e6d60800 00000078 110 or 0x0800, r22, r22
|
||||
as860 DOS Rel 1.4, (C) 1990 Intel Corp., The Portland Group
|
||||
Tue Jul 06 16:44:56 1993 Page 3
|
||||
|
||||
|
||||
|
||||
111
|
||||
112
|
||||
ec17a000 0000007c 113 orh 0xa000,r0,r23 // nop
|
||||
114
|
||||
1e80b801 00000080 115 st.l r23,0(r20) // chip bug NOP
|
||||
1e80b805 00000084 116 st.l r23,4(r20) // chip bug NOP
|
||||
1e809809 00000088 117 st.l r19,8(r20) // br alltraps
|
||||
1e80a80d 0000008c 118 st.l r21,12(r20) // delayed NOP
|
||||
1e80b011 00000090 119 st.l r22,16(r20) // delayed NOP
|
||||
1e80b815 00000094 120 st.l r23,20(r20) // delayed NOP
|
||||
1e80b819 00000098 121 st.l r23,24(r20) // delayed NOP
|
||||
1e80b81d 0000009c 122 st.l r23,28(r20) // delayed NOP
|
||||
123
|
||||
9412f000 000000a0 124 mov 0xfffff000, r18
|
||||
e4130032 000000a4 125 or 0x32, r0, r19
|
||||
1e409801 000000a8 126 st.l r19,0(r18)
|
||||
127
|
||||
68000000 000000ac 128 br _vstart
|
||||
a0000000 000000b0 129 nop
|
||||
130
|
||||
131 // *END* /
|
||||
132
|
||||
133
|
||||
134
|
||||
135
|
||||
136
|
||||
137
|
||||
138
|
||||
139
|
||||
Reference in New Issue
Block a user