You've already forked Microtransactions64
mirror of
https://github.com/Print-and-Panic/Microtransactions64.git
synced 2026-01-21 10:17:19 -08:00
Refresh 14
This commit is contained in:
22
asm/boot.s
22
asm/boot.s
@@ -1,21 +1,21 @@
|
||||
# assembler directives
|
||||
.set noat # allow manual use of $at
|
||||
.set noreorder # don't insert nops after branches
|
||||
// assembler directives
|
||||
.set noat // allow manual use of $at
|
||||
.set noreorder // don't insert nops after branches
|
||||
.set gp=64
|
||||
|
||||
.include "macros.inc"
|
||||
#include "macros.inc"
|
||||
|
||||
# 0xA0000000-0xBFFFFFFF: KSEG1 direct map non-cache mirror of 0x00000000
|
||||
# 0xA4000000-0xA4000FFF: RSP DMEM
|
||||
// 0xA0000000-0xBFFFFFFF: KSEG1 direct map non-cache mirror of 0x00000000
|
||||
// 0xA4000000-0xA4000FFF: RSP DMEM
|
||||
|
||||
# 0xA4000000-0xA400003F: ROM header
|
||||
// 0xA4000000-0xA400003F: ROM header
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
# 0xA4000040-0xA4000B6F: IPL3
|
||||
// 0xA4000040-0xA4000B6F: IPL3
|
||||
|
||||
# IPL3 entry point jumped to from IPL2
|
||||
glabel ipl3_entry # 0xA4000040
|
||||
// IPL3 entry point jumped to from IPL2
|
||||
glabel ipl3_entry // 0xA4000040
|
||||
mtc0 $zero, $13
|
||||
mtc0 $zero, $9
|
||||
mtc0 $zero, $11
|
||||
@@ -797,7 +797,7 @@ func_A4000AD0:
|
||||
nop
|
||||
nop
|
||||
|
||||
# 0xA4000B70-0xA4000FFF: IPL3 Font
|
||||
// 0xA4000B70-0xA4000FFF: IPL3 Font
|
||||
glabel ipl3_font
|
||||
.incbin "textures/ipl3_raw/ipl3_font_00.ia1"
|
||||
.incbin "textures/ipl3_raw/ipl3_font_01.ia1"
|
||||
|
||||
@@ -1,61 +1,17 @@
|
||||
# assembler directives
|
||||
.set noat # allow manual use of $at
|
||||
.set noreorder # don't insert nops after branches
|
||||
// assembler directives
|
||||
.set noat // allow manual use of $at
|
||||
.set noreorder // don't insert nops after branches
|
||||
.set gp=64
|
||||
|
||||
.include "macros.inc"
|
||||
#include "macros.inc"
|
||||
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
# This file is handwritten.
|
||||
// This file is handwritten.
|
||||
|
||||
glabel decompress
|
||||
.if VERSION_SH == 1
|
||||
lw $a3, 8($a0)
|
||||
lw $t9, 0xc($a0)
|
||||
lw $t8, 4($a0)
|
||||
add $a3, $a3, $a0
|
||||
add $t9, $t9, $a0
|
||||
move $a2, $zero
|
||||
addi $a0, $a0, 0x10
|
||||
add $t8, $t8, $a1
|
||||
.L802772C0:
|
||||
bnel $a2, $zero, .L802772D8
|
||||
slt $t1, $t0, $zero
|
||||
lw $t0, ($a0)
|
||||
li $a2, 32
|
||||
addi $a0, $a0, 4
|
||||
slt $t1, $t0, $zero
|
||||
.L802772D8:
|
||||
beql $t1, $zero, .L802772F8
|
||||
lhu $t2, ($a3)
|
||||
lb $t2, ($t9)
|
||||
addi $t9, $t9, 1
|
||||
addi $a1, $a1, 1
|
||||
b .L80277324
|
||||
sb $t2, -1($a1)
|
||||
lhu $t2, ($a3)
|
||||
.L802772F8:
|
||||
addi $a3, $a3, 2
|
||||
srl $t3, $t2, 0xc
|
||||
andi $t2, $t2, 0xfff
|
||||
sub $t1, $a1, $t2
|
||||
addi $t3, $t3, 3
|
||||
.L8027730C:
|
||||
lb $t2, -1($t1)
|
||||
addi $t3, $t3, -1
|
||||
addi $t1, $t1, 1
|
||||
addi $a1, $a1, 1
|
||||
bnez $t3, .L8027730C
|
||||
sb $t2, -1($a1)
|
||||
.L80277324:
|
||||
sll $t0, $t0, 1
|
||||
bne $a1, $t8, .L802772C0
|
||||
addi $a2, $a2, -1
|
||||
jr $ra
|
||||
nop
|
||||
.elseif VERSION_EU == 1
|
||||
#if defined(VERSION_EU) || defined(VERSION_SH)
|
||||
lw $a3, 8($a0)
|
||||
lw $t9, 0xc($a0)
|
||||
lw $t8, 4($a0)
|
||||
@@ -99,7 +55,7 @@ glabel decompress
|
||||
addi $a2, $a2, -1
|
||||
jr $ra
|
||||
nop
|
||||
.else
|
||||
#else
|
||||
lw $t8, 4($a0)
|
||||
lw $a3, 8($a0)
|
||||
lw $t9, 0xc($a0)
|
||||
@@ -146,4 +102,4 @@ glabel decompress
|
||||
nop
|
||||
jr $ra
|
||||
nop
|
||||
.endif
|
||||
#endif
|
||||
|
||||
24
asm/entry.s
24
asm/entry.s
@@ -1,29 +1,29 @@
|
||||
# assembler directives
|
||||
.set noat # allow manual use of $at
|
||||
.set noreorder # don't insert nops after branches
|
||||
// assembler directives
|
||||
.set noat // allow manual use of $at
|
||||
.set noreorder // don't insert nops after branches
|
||||
.set gp=64
|
||||
|
||||
.include "macros.inc"
|
||||
#include "macros.inc"
|
||||
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
glabel entry_point
|
||||
lui $t0, %hi(_mainSegmentNoloadStart) # $t0, 0x8034
|
||||
lui $t1, %lo(_mainSegmentNoloadSizeHi) # lui $t1, 2
|
||||
addiu $t0, %lo(_mainSegmentNoloadStart) # addiu $t0, $t0, -0x6df0
|
||||
ori $t1, %lo(_mainSegmentNoloadSizeLo) # ori $t1, $t1, 0xcee0
|
||||
lui $t0, %hi(_mainSegmentNoloadStart) // $t0, 0x8034
|
||||
lui $t1, %lo(_mainSegmentNoloadSizeHi) // lui $t1, 2
|
||||
addiu $t0, %lo(_mainSegmentNoloadStart) // addiu $t0, $t0, -0x6df0
|
||||
ori $t1, %lo(_mainSegmentNoloadSizeLo) // ori $t1, $t1, 0xcee0
|
||||
.L80246010:
|
||||
addi $t1, $t1, -8
|
||||
sw $zero, ($t0)
|
||||
sw $zero, 4($t0)
|
||||
bnez $t1, .L80246010
|
||||
addi $t0, $t0, 8
|
||||
lui $t2, %hi(main_func) # $t2, 0x8024
|
||||
lui $sp, %hi(gIdleThreadStack) # $sp, 0x8020
|
||||
addiu $t2, %lo(main_func) # addiu $t2, $t2, 0x6dc4
|
||||
lui $t2, %hi(main_func) // $t2, 0x8024
|
||||
lui $sp, %hi(gIdleThreadStack) // $sp, 0x8020
|
||||
addiu $t2, %lo(main_func) // addiu $t2, $t2, 0x6dc4
|
||||
jr $t2
|
||||
addiu $sp, %lo(gIdleThreadStack) # addiu $sp, $sp, 0xa00
|
||||
addiu $sp, %lo(gIdleThreadStack) // addiu $sp, $sp, 0xa00
|
||||
nop
|
||||
nop
|
||||
nop
|
||||
|
||||
@@ -8,38 +8,39 @@
|
||||
.word entry_point /* Entrypoint */
|
||||
|
||||
/* Revision */
|
||||
.if VERSION_SH == 1
|
||||
#ifdef VERSION_SH
|
||||
.word 0x00001448
|
||||
.elseif VERSION_EU == 1
|
||||
#elif defined(VERSION_EU)
|
||||
.word 0x00001446
|
||||
.else /* NTSC-U and NTSC-J 1.0 */
|
||||
#else /* NTSC-U and NTSC-J 1.0 */
|
||||
.word 0x00001444
|
||||
.endif
|
||||
#endif
|
||||
|
||||
.word 0x4EAA3D0E /* Checksum 1 */
|
||||
.word 0x74757C24 /* Checksum 2 */
|
||||
.word 0x00000000 /* Unknown */
|
||||
.word 0x00000000 /* Unknown */
|
||||
.if VERSION_SH == 1
|
||||
#ifdef VERSION_SH
|
||||
.ascii "SUPERMARIO64 " /* Internal ROM name */
|
||||
.else
|
||||
#else
|
||||
.ascii "SUPER MARIO 64 " /* Internal ROM name */
|
||||
.endif
|
||||
#endif
|
||||
.word 0x00000000 /* Unknown */
|
||||
.word 0x0000004E /* Cartridge */
|
||||
.ascii "SM" /* Cartridge ID */
|
||||
|
||||
/* Region */
|
||||
.if VERSION_US == 1
|
||||
.ascii "E" /* NTSC-U (North America) */
|
||||
.elseif (VERSION_JP == 1 || VERSION_SH == 1)
|
||||
.ascii "J" /* NTSC-J (Japan) */
|
||||
.else
|
||||
#ifdef VERSION_EU
|
||||
.ascii "P" /* PAL (Europe) */
|
||||
.endif
|
||||
#elif defined(VERSION_US)
|
||||
.ascii "E" /* NTSC-U (North America) */
|
||||
#else
|
||||
.ascii "J" /* NTSC-J (Japan) */
|
||||
#endif
|
||||
|
||||
.if VERSION_SH == 1
|
||||
|
||||
#ifdef VERSION_SH
|
||||
.byte 0x03 /* Version (Shindou) */
|
||||
.else
|
||||
#else
|
||||
.byte 0x00 /* Version */
|
||||
.endif
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user