more PS1 updates from Jens
This commit is contained in:
parent
80c20a90ea
commit
1f59a9f846
File diff suppressed because it is too large
Load Diff
@ -166,15 +166,15 @@ init_sz = . - init_sz
|
||||
|
||||
.if (UCL_SMALL == 1)
|
||||
.if (ALT_SMALL == 1)
|
||||
beq bc,bb,2b # detect flag bit [empty]
|
||||
beq bc,bb,2b # detect flag bit [empty]
|
||||
.else
|
||||
addiu bc,-1
|
||||
bltz bc,2b
|
||||
.endif
|
||||
.else
|
||||
srl var,bb,31 # var= most significant bit of bb
|
||||
bne bc,bb,2f # detect flag bit [empty]
|
||||
sll bb,1
|
||||
srl var,bb,31 # var= most significant bit of bb
|
||||
bne bc,bb,2f # detect flag bit [empty]
|
||||
sll bb,1
|
||||
.endif
|
||||
.endif
|
||||
|
||||
@ -193,9 +193,9 @@ init_sz = . - init_sz
|
||||
|
||||
.if (UCL_SMALL == 1)
|
||||
.if (ALT_SMALL == 1)
|
||||
srl var,bb,31 # var= most significant bit of bb
|
||||
srl var,bb,31 # var= most significant bit of bb
|
||||
jr ra
|
||||
sll bb,1
|
||||
sll bb,1
|
||||
.else
|
||||
srlv var,bb,bc
|
||||
jr ra
|
||||
@ -205,11 +205,11 @@ init_sz = . - init_sz
|
||||
.if (UCL_NRV_BB == 8)
|
||||
sll bb,1
|
||||
addiu bb,1 # the flag bit
|
||||
srl var,bb,8 # var= most significant bit of bb
|
||||
srl var,bb,8 # var= most significant bit of bb
|
||||
sll bb,24 # left-justify in register
|
||||
.else
|
||||
srl var,bb,31 # var= most significant bit of bb
|
||||
sll bb,1
|
||||
srl var,bb,31 # var= most significant bit of bb
|
||||
sll bb,1
|
||||
addiu bb,1
|
||||
.endif
|
||||
.endif
|
||||
@ -268,8 +268,8 @@ init_sz = . - init_sz
|
||||
lwl bb,3(src_ilen)
|
||||
addiu src_ilen,4
|
||||
.if ((ALT_SMALL == 1) && (UCL_SMALL == 1))
|
||||
srl var,bb,31 # var= most significant bit of bb
|
||||
sll bb,1
|
||||
srl var,bb,31 # var= most significant bit of bb
|
||||
sll bb,1
|
||||
jr ra
|
||||
addiu bb,1
|
||||
.endif
|
||||
@ -427,21 +427,26 @@ wordchk:
|
||||
.else
|
||||
t = 1f
|
||||
.endif
|
||||
.if (1 == 1)
|
||||
b \ret
|
||||
nop
|
||||
.else
|
||||
bal t
|
||||
addiu ra, (\ret + 4) - (. + 4)
|
||||
.endif
|
||||
.else
|
||||
.if (JOHN == 0)
|
||||
b \ret
|
||||
nop
|
||||
.else
|
||||
b \ret + 4
|
||||
srl var,bb,31 # var= most significant bit of bb
|
||||
srl var,bb,31 # var= most significant bit of bb
|
||||
.endif
|
||||
.endif
|
||||
prepbcpy:
|
||||
.else
|
||||
subu m_pos,dst,m_off
|
||||
.endif
|
||||
.endif
|
||||
bcopy:
|
||||
lbu var,0(m_pos)
|
||||
skip:
|
||||
@ -457,15 +462,20 @@ skip:
|
||||
.else
|
||||
t = 1f
|
||||
.endif
|
||||
.if (1 == 1)
|
||||
b \ret
|
||||
nop
|
||||
.else
|
||||
bal t
|
||||
addiu ra, (\ret + 4) - (. + 4)
|
||||
.endif
|
||||
.else
|
||||
.if (JOHN == 0)
|
||||
b \ret
|
||||
nop
|
||||
.else
|
||||
b \ret + 4
|
||||
srl var,bb,31 # var= most significant bit of bb
|
||||
srl var,bb,31 # var= most significant bit of bb
|
||||
.endif
|
||||
.endif
|
||||
|
||||
|
||||
@ -237,13 +237,13 @@ section con.exit
|
||||
section bss.cdb.start.lzma
|
||||
la t0,PSVR // prepare to compute value
|
||||
subu t0,s0,t0 // get stored header offset in mem
|
||||
lui var,%hi(wrkmem-REG_SZ) // size of decomp. routine
|
||||
la var,wrkmem-REG_SZ
|
||||
jr t0
|
||||
addiu var,%lo(wrkmem-REG_SZ) // adjust the stack with this size
|
||||
move tmp,sp
|
||||
|
||||
section bss.cdb.entry.lzma
|
||||
move tmp,sp
|
||||
push 1,var // push used regs
|
||||
move sp,var
|
||||
addiu src,t0,lzma_cpr // compressed lzma decoder offset
|
||||
addiu dst,sp,REG_SZ
|
||||
|
||||
|
||||
@ -18,29 +18,29 @@ Idx Name Size VMA LMA File off Algn Flags
|
||||
13 dec.ptr.hi 00000008 00000000 00000000 00000138 2**0 CONTENTS, RELOC, READONLY
|
||||
14 con.entry 00000000 00000000 00000000 00000140 2**0 CONTENTS, READONLY
|
||||
15 con.exit 0000002c 00000000 00000000 00000140 2**0 CONTENTS, RELOC, READONLY
|
||||
16 bss.cdb.start.lzma 00000018 00000000 00000000 0000016c 2**0 CONTENTS, RELOC, READONLY
|
||||
17 bss.cdb.entry.lzma 00000024 00000000 00000000 00000184 2**0 CONTENTS, RELOC, READONLY
|
||||
18 bss.con.start 00000038 00000000 00000000 000001a8 2**0 CONTENTS, RELOC, READONLY
|
||||
19 bss.exit 0000002c 00000000 00000000 000001e0 2**0 CONTENTS, RELOC, READONLY
|
||||
20 memset.short 00000014 00000000 00000000 0000020c 2**0 CONTENTS, RELOC, READONLY
|
||||
21 memset.long 00000018 00000000 00000000 00000220 2**0 CONTENTS, RELOC, READONLY
|
||||
22 nrv2b.8bit 000001ac 00000000 00000000 00000238 2**0 CONTENTS, RELOC, READONLY
|
||||
23 nrv2d.8bit 000001e0 00000000 00000000 000003e4 2**0 CONTENTS, RELOC, READONLY
|
||||
24 nrv2e.8bit 00000200 00000000 00000000 000005c4 2**0 CONTENTS, RELOC, READONLY
|
||||
25 nrv2b.32bit 000001c8 00000000 00000000 000007c4 2**0 CONTENTS, RELOC, READONLY
|
||||
26 nrv2d.32bit 00000200 00000000 00000000 0000098c 2**0 CONTENTS, RELOC, READONLY
|
||||
27 nrv2e.32bit 00000224 00000000 00000000 00000b8c 2**0 CONTENTS, RELOC, READONLY
|
||||
28 8bit.sub 00000020 00000000 00000000 00000db0 2**0 CONTENTS, READONLY
|
||||
29 32bit.sub 00000024 00000000 00000000 00000dd0 2**0 CONTENTS, READONLY
|
||||
30 nrv2b.small 000000d0 00000000 00000000 00000df4 2**0 CONTENTS, RELOC, READONLY
|
||||
31 nrv2d.small 000000e8 00000000 00000000 00000ec4 2**0 CONTENTS, RELOC, READONLY
|
||||
32 nrv2e.small 000000f8 00000000 00000000 00000fac 2**0 CONTENTS, RELOC, READONLY
|
||||
33 nrv.done 00000000 00000000 00000000 000010a4 2**0 CONTENTS, READONLY
|
||||
34 decompressor.start 00000000 00000000 00000000 000010a4 2**0 CONTENTS, READONLY
|
||||
35 lzma.init 00000050 00000000 00000000 000010a4 2**0 CONTENTS, RELOC, READONLY
|
||||
36 LZMA_DEC10 00000ad8 00000000 00000000 000010f4 2**0 CONTENTS, READONLY
|
||||
37 LZMA_DEC20 00000ad8 00000000 00000000 00001bcc 2**0 CONTENTS, READONLY
|
||||
38 UPX1HEAD 00000020 00000000 00000000 000026a4 2**0 CONTENTS, READONLY
|
||||
16 bss.cdb.start.lzma 0000001c 00000000 00000000 0000016c 2**0 CONTENTS, RELOC, READONLY
|
||||
17 bss.cdb.entry.lzma 00000024 00000000 00000000 00000188 2**0 CONTENTS, RELOC, READONLY
|
||||
18 bss.con.start 00000038 00000000 00000000 000001ac 2**0 CONTENTS, RELOC, READONLY
|
||||
19 bss.exit 0000002c 00000000 00000000 000001e4 2**0 CONTENTS, RELOC, READONLY
|
||||
20 memset.short 00000014 00000000 00000000 00000210 2**0 CONTENTS, RELOC, READONLY
|
||||
21 memset.long 00000018 00000000 00000000 00000224 2**0 CONTENTS, RELOC, READONLY
|
||||
22 nrv2b.8bit 000001ec 00000000 00000000 0000023c 2**0 CONTENTS, RELOC, READONLY
|
||||
23 nrv2d.8bit 00000228 00000000 00000000 00000428 2**0 CONTENTS, RELOC, READONLY
|
||||
24 nrv2e.8bit 00000250 00000000 00000000 00000650 2**0 CONTENTS, RELOC, READONLY
|
||||
25 nrv2b.32bit 000001ec 00000000 00000000 000008a0 2**0 CONTENTS, RELOC, READONLY
|
||||
26 nrv2d.32bit 00000228 00000000 00000000 00000a8c 2**0 CONTENTS, RELOC, READONLY
|
||||
27 nrv2e.32bit 00000250 00000000 00000000 00000cb4 2**0 CONTENTS, RELOC, READONLY
|
||||
28 8bit.sub 00000024 00000000 00000000 00000f04 2**0 CONTENTS, READONLY
|
||||
29 32bit.sub 0000002c 00000000 00000000 00000f28 2**0 CONTENTS, READONLY
|
||||
30 nrv2b.small 000000d8 00000000 00000000 00000f54 2**0 CONTENTS, RELOC, READONLY
|
||||
31 nrv2d.small 000000f0 00000000 00000000 0000102c 2**0 CONTENTS, RELOC, READONLY
|
||||
32 nrv2e.small 00000100 00000000 00000000 0000111c 2**0 CONTENTS, RELOC, READONLY
|
||||
33 nrv.done 00000000 00000000 00000000 0000121c 2**0 CONTENTS, READONLY
|
||||
34 decompressor.start 00000000 00000000 00000000 0000121c 2**0 CONTENTS, READONLY
|
||||
35 lzma.init 00000050 00000000 00000000 0000121c 2**0 CONTENTS, RELOC, READONLY
|
||||
36 LZMA_DEC10 00000ad8 00000000 00000000 0000126c 2**0 CONTENTS, READONLY
|
||||
37 LZMA_DEC20 00000ad8 00000000 00000000 00001d44 2**0 CONTENTS, READONLY
|
||||
38 UPX1HEAD 00000020 00000000 00000000 0000281c 2**0 CONTENTS, READONLY
|
||||
SYMBOL TABLE:
|
||||
00000000 l d nrv.done 00000000 nrv.done
|
||||
00000000 l d decompressor.start 00000000 decompressor.start
|
||||
@ -92,8 +92,8 @@ SYMBOL TABLE:
|
||||
00000000 *UND* 00000000 PAD
|
||||
00000000 *UND* 00000000 wrkmem
|
||||
00000000 *UND* 00000000 SC
|
||||
0000000c g O 8bit.sub 00000000 gb8_e
|
||||
00000010 g O 32bit.sub 00000000 gb32_e
|
||||
00000014 g O 8bit.sub 00000000 gb8_e
|
||||
0000001c g O 32bit.sub 00000000 gb32_e
|
||||
00000000 *UND* 00000000 gb_e
|
||||
00000000 *UND* 00000000 lzma_stack_adjust
|
||||
00000000 *UND* 00000000 lzma_c_len
|
||||
@ -174,7 +174,7 @@ OFFSET TYPE VALUE
|
||||
00000000 R_MIPS_HI16 PSVR
|
||||
00000004 R_MIPS_LO16 PSVR
|
||||
0000000c R_MIPS_HI16 wrkmem
|
||||
00000014 R_MIPS_LO16 wrkmem
|
||||
00000010 R_MIPS_LO16 wrkmem
|
||||
|
||||
RELOCATION RECORDS FOR [bss.cdb.entry.lzma]:
|
||||
OFFSET TYPE VALUE
|
||||
@ -201,63 +201,63 @@ OFFSET TYPE VALUE
|
||||
|
||||
RELOCATION RECORDS FOR [nrv2b.8bit]:
|
||||
OFFSET TYPE VALUE
|
||||
000000a8 R_MIPS_PC16 nrv.done
|
||||
000000c4 R_MIPS_PC16 nrv.done
|
||||
|
||||
RELOCATION RECORDS FOR [nrv2d.8bit]:
|
||||
OFFSET TYPE VALUE
|
||||
000000f0 R_MIPS_PC16 nrv.done
|
||||
0000011c R_MIPS_PC16 nrv.done
|
||||
|
||||
RELOCATION RECORDS FOR [nrv2e.8bit]:
|
||||
OFFSET TYPE VALUE
|
||||
000000f0 R_MIPS_PC16 nrv.done
|
||||
0000011c R_MIPS_PC16 nrv.done
|
||||
|
||||
RELOCATION RECORDS FOR [nrv2b.32bit]:
|
||||
OFFSET TYPE VALUE
|
||||
000000b4 R_MIPS_PC16 nrv.done
|
||||
000000c4 R_MIPS_PC16 nrv.done
|
||||
|
||||
RELOCATION RECORDS FOR [nrv2d.32bit]:
|
||||
OFFSET TYPE VALUE
|
||||
00000104 R_MIPS_PC16 nrv.done
|
||||
0000011c R_MIPS_PC16 nrv.done
|
||||
|
||||
RELOCATION RECORDS FOR [nrv2e.32bit]:
|
||||
OFFSET TYPE VALUE
|
||||
00000104 R_MIPS_PC16 nrv.done
|
||||
0000011c R_MIPS_PC16 nrv.done
|
||||
|
||||
RELOCATION RECORDS FOR [nrv2b.small]:
|
||||
OFFSET TYPE VALUE
|
||||
00000008 R_MIPS_PC16 gb_e
|
||||
00000028 R_MIPS_PC16 gb_e
|
||||
00000030 R_MIPS_PC16 gb_e
|
||||
00000060 R_MIPS_PC16 nrv.done
|
||||
0000006c R_MIPS_PC16 gb_e
|
||||
00000078 R_MIPS_PC16 gb_e
|
||||
00000090 R_MIPS_PC16 gb_e
|
||||
00000098 R_MIPS_PC16 gb_e
|
||||
0000000c R_MIPS_PC16 gb_e
|
||||
0000002c R_MIPS_PC16 gb_e
|
||||
00000034 R_MIPS_PC16 gb_e
|
||||
00000064 R_MIPS_PC16 nrv.done
|
||||
00000070 R_MIPS_PC16 gb_e
|
||||
0000007c R_MIPS_PC16 gb_e
|
||||
00000094 R_MIPS_PC16 gb_e
|
||||
0000009c R_MIPS_PC16 gb_e
|
||||
|
||||
RELOCATION RECORDS FOR [nrv2d.small]:
|
||||
OFFSET TYPE VALUE
|
||||
00000008 R_MIPS_PC16 gb_e
|
||||
00000028 R_MIPS_PC16 gb_e
|
||||
00000030 R_MIPS_PC16 gb_e
|
||||
00000040 R_MIPS_PC16 gb_e
|
||||
00000058 R_MIPS_PC16 gb_e
|
||||
00000078 R_MIPS_PC16 nrv.done
|
||||
00000090 R_MIPS_PC16 gb_e
|
||||
000000a8 R_MIPS_PC16 gb_e
|
||||
000000b0 R_MIPS_PC16 gb_e
|
||||
0000000c R_MIPS_PC16 gb_e
|
||||
0000002c R_MIPS_PC16 gb_e
|
||||
00000034 R_MIPS_PC16 gb_e
|
||||
00000044 R_MIPS_PC16 gb_e
|
||||
0000005c R_MIPS_PC16 gb_e
|
||||
0000007c R_MIPS_PC16 nrv.done
|
||||
00000094 R_MIPS_PC16 gb_e
|
||||
000000ac R_MIPS_PC16 gb_e
|
||||
000000b4 R_MIPS_PC16 gb_e
|
||||
|
||||
RELOCATION RECORDS FOR [nrv2e.small]:
|
||||
OFFSET TYPE VALUE
|
||||
00000008 R_MIPS_PC16 gb_e
|
||||
00000028 R_MIPS_PC16 gb_e
|
||||
00000030 R_MIPS_PC16 gb_e
|
||||
00000040 R_MIPS_PC16 gb_e
|
||||
00000058 R_MIPS_PC16 gb_e
|
||||
00000078 R_MIPS_PC16 nrv.done
|
||||
00000090 R_MIPS_PC16 gb_e
|
||||
000000a8 R_MIPS_PC16 gb_e
|
||||
000000b8 R_MIPS_PC16 gb_e
|
||||
000000c0 R_MIPS_PC16 gb_e
|
||||
0000000c R_MIPS_PC16 gb_e
|
||||
0000002c R_MIPS_PC16 gb_e
|
||||
00000034 R_MIPS_PC16 gb_e
|
||||
00000044 R_MIPS_PC16 gb_e
|
||||
0000005c R_MIPS_PC16 gb_e
|
||||
0000007c R_MIPS_PC16 nrv.done
|
||||
00000094 R_MIPS_PC16 gb_e
|
||||
000000ac R_MIPS_PC16 gb_e
|
||||
000000bc R_MIPS_PC16 gb_e
|
||||
000000c4 R_MIPS_PC16 gb_e
|
||||
|
||||
RELOCATION RECORDS FOR [lzma.init]:
|
||||
OFFSET TYPE VALUE
|
||||
|
||||
Loading…
Reference in New Issue
Block a user