You've already forked HackerSM64
mirror of
https://github.com/HackerN64/HackerSM64.git
synced 2026-01-21 10:35:32 -08:00
Compare commits
14 Commits
develop/2.
...
revert-420
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b901a6f4a8 | ||
|
|
4a3ef802d5 | ||
|
|
4b9a0b89a0 | ||
|
|
3ac257e6fb | ||
|
|
cc92b33676 | ||
|
|
8163bc4837 | ||
|
|
9f2f4a27b6 | ||
|
|
448d18de2b | ||
|
|
c4a23d0036 | ||
|
|
f061076a4f | ||
|
|
8f2b9c8979 | ||
|
|
056e319105 | ||
|
|
6bd3988dd8 | ||
|
|
fe8384a440 |
2
.vscode/c_cpp_properties.json
vendored
2
.vscode/c_cpp_properties.json
vendored
@@ -25,7 +25,7 @@
|
||||
"TARGET_N64=1",
|
||||
"VERSION_US=1",
|
||||
"F3DEX_GBI_2=1",
|
||||
"F3DZEX_NON_GBI_2=1",
|
||||
"F3DZEX_GBI_2=1",
|
||||
"F3DEX_GBI_SHARED=1",
|
||||
"NON_MATCHING=1",
|
||||
"AVOID_UB=1"
|
||||
|
||||
24
Makefile
24
Makefile
@@ -108,7 +108,7 @@ else ifeq ($(GRUCODE),l3dex2) # Line3DEX2
|
||||
else ifeq ($(GRUCODE),f3dex2pl) # Fast3DEX2_PosLight
|
||||
DEFINES += F3DEX2PL_GBI=1 F3DEX_GBI_2=1 F3DEX_GBI_SHARED=1
|
||||
else ifeq ($(GRUCODE),f3dzex) # Fast3DZEX (2.08J / Animal Forest - DĹŤbutsu no Mori)
|
||||
DEFINES += F3DZEX_NON_GBI_2=1 F3DEX_GBI_2=1 F3DEX_GBI_SHARED=1
|
||||
DEFINES += F3DZEX_GBI_2=1 F3DEX_GBI_2=1 F3DEX_GBI_SHARED=1
|
||||
else ifeq ($(GRUCODE),super3d) # Super3D
|
||||
$(warning Super3D is experimental. Try at your own risk.)
|
||||
DEFINES += SUPER3D_GBI=1 F3D_NEW=1
|
||||
@@ -323,25 +323,11 @@ ifeq ($(filter clean distclean print-%,$(MAKECMDGOALS)),)
|
||||
ifeq ($(NOEXTRACT),0)
|
||||
DUMMY != $(PYTHON) extract_assets.py $(VERSION) >&2 || echo FAIL
|
||||
ifeq ($(DUMMY),FAIL)
|
||||
$(error Failed to extract assets from US ROM)
|
||||
$(error Failed to extract assets)
|
||||
endif
|
||||
ifneq (,$(wildcard baserom.jp.z64))
|
||||
DUMMY != $(PYTHON) extract_assets.py jp >&2 || echo FAIL
|
||||
ifeq ($(DUMMY),FAIL)
|
||||
$(error Failed to extract assets from JP ROM)
|
||||
endif
|
||||
endif
|
||||
ifneq (,$(wildcard baserom.eu.z64))
|
||||
DUMMY != $(PYTHON) extract_assets.py eu >&2 || echo FAIL
|
||||
ifeq ($(DUMMY),FAIL)
|
||||
$(error Failed to extract assets from EU ROM)
|
||||
endif
|
||||
endif
|
||||
ifneq (,$(wildcard baserom.sh.z64))
|
||||
DUMMY != $(PYTHON) extract_assets.py sh >&2 || echo FAIL
|
||||
ifeq ($(DUMMY),FAIL)
|
||||
$(error Failed to extract assets from SH ROM)
|
||||
endif
|
||||
DUMMY != $(PYTHON) extract_assets.py jp >&2 || echo FAIL
|
||||
ifeq ($(DUMMY),FAIL)
|
||||
$(error Failed to extract assets)
|
||||
endif
|
||||
endif
|
||||
|
||||
|
||||
@@ -29,7 +29,6 @@ This is a fork of the ultrasm64 repo by CrashOveride which includes the followin
|
||||
- **CrashOveride**: creating the [ultrasm64](https://github.com/CrashOveride95/ultrasm64) repo
|
||||
- **falcobuster**: Original coordinate overflow fix (world scale), ASM version of extended bounds
|
||||
- **anonymous_moose**: porting falco's extended bounds to decomp
|
||||
- **tuxlovesyou**: `LOAD_MIO0_TEXTURE` macro and moral support
|
||||
|
||||
Thanks to Frame#5375 and AloXado320 for also helping with silhouette stuff
|
||||
|
||||
|
||||
@@ -27,6 +27,7 @@ const Gfx bubble_seg4_dl_0401DD60[] = {
|
||||
gsSPVertex(bubble_seg4_vertex_0401CD20, 4, 0),
|
||||
gsSP2Triangles( 0, 1, 2, 0x0, 0, 2, 3, 0x0),
|
||||
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF),
|
||||
gsDPPipeSync(),
|
||||
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
|
||||
gsSPEndDisplayList(),
|
||||
};
|
||||
@@ -40,6 +41,7 @@ const Gfx bubble_seg4_dl_0401DDE0[] = {
|
||||
gsSPVertex(bubble_seg4_vertex_0401CD20, 4, 0),
|
||||
gsSP2Triangles( 0, 1, 2, 0x0, 0, 2, 3, 0x0),
|
||||
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF),
|
||||
gsDPPipeSync(),
|
||||
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
|
||||
gsSPEndDisplayList(),
|
||||
};
|
||||
|
||||
@@ -123,6 +123,7 @@ const Gfx coin_seg3_dl_start[] = {
|
||||
const Gfx coin_seg3_dl_end[] = {
|
||||
gsSP2Triangles( 0, 1, 2, 0x0, 0, 2, 3, 0x0),
|
||||
gsSPTexture(0x0001, 0x0001, 0, G_TX_RENDERTILE, G_OFF),
|
||||
gsDPPipeSync(),
|
||||
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
|
||||
gsSPSetGeometryMode(G_LIGHTING),
|
||||
gsSPEndDisplayList(),
|
||||
@@ -503,6 +504,7 @@ const Gfx coin_seg3_sub_dl_begin[] = {
|
||||
const Gfx coin_seg3_sub_dl_end[] = {
|
||||
gsSP2Triangles( 0, 1, 2, 0x0, 0, 2, 3, 0x0),
|
||||
gsSPTexture(0x0001, 0x0001, 0, G_TX_RENDERTILE, G_OFF),
|
||||
gsDPPipeSync(),
|
||||
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
|
||||
gsSPSetGeometryMode(G_LIGHTING),
|
||||
gsSPEndDisplayList(),
|
||||
|
||||
|
Before Width: | Height: | Size: 995 B After Width: | Height: | Size: 995 B |
@@ -10,7 +10,7 @@ ALIGNED8 static const Texture flyguy_seg8_texture_0800E088[] = {
|
||||
|
||||
// 0x0800F088
|
||||
ALIGNED8 static const Texture flyguy_seg8_texture_0800F088[] = {
|
||||
#include "actors/flyguy/flyguy_face.custom.rgba16.inc.c"
|
||||
#include "actors/flyguy/flyguy_face.rgba16.inc.c"
|
||||
};
|
||||
|
||||
// 0x0800F888
|
||||
|
||||
@@ -24,6 +24,7 @@ const Gfx leaves_seg3_dl_0301CDE0[] = {
|
||||
gsSP2Triangles( 0, 1, 2, 0x0, 0, 2, 3, 0x0),
|
||||
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF),
|
||||
gsSPSetGeometryMode(G_LIGHTING | G_CULL_BACK),
|
||||
gsDPPipeSync(),
|
||||
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
|
||||
gsSPEndDisplayList(),
|
||||
};
|
||||
|
||||
@@ -36,11 +36,13 @@ const Gfx mr_i_eyeball_seg6_dl_06002080[] = {
|
||||
gsDPLoadSync(),
|
||||
gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 64 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
|
||||
gsSP2Triangles( 0, 1, 2, 0x0, 0, 2, 3, 0x0),
|
||||
gsDPPipeSync(),
|
||||
gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, mr_i_eyeball_seg6_texture_06001080),
|
||||
gsDPLoadSync(),
|
||||
gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 64 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
|
||||
gsSP2Triangles( 4, 5, 6, 0x0, 4, 6, 7, 0x0),
|
||||
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF),
|
||||
gsDPPipeSync(),
|
||||
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
|
||||
gsSPEndDisplayList(),
|
||||
};
|
||||
|
||||
@@ -40,6 +40,7 @@ const Gfx mr_i_iris_seg6_dl_06004170[] = {
|
||||
gsSPVertex(mr_i_iris_seg6_vertex_06002130, 4, 0),
|
||||
gsSP2Triangles( 0, 1, 2, 0x0, 0, 2, 3, 0x0),
|
||||
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF),
|
||||
gsDPPipeSync(),
|
||||
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
|
||||
gsSPEndDisplayList(),
|
||||
};
|
||||
|
||||
@@ -23,6 +23,7 @@ const Gfx sand_seg3_dl_particle[] = {
|
||||
gsSPVertex(sand_seg3_vertex_billboard_16x16, 4, 0),
|
||||
gsSP2Triangles( 0, 1, 2, 0x0, 0, 2, 3, 0x0),
|
||||
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF),
|
||||
gsDPPipeSync(),
|
||||
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
|
||||
gsSPSetGeometryMode(G_LIGHTING),
|
||||
gsSPEndDisplayList(),
|
||||
|
||||
@@ -50,6 +50,7 @@ const Gfx sparkles_seg4_dl_0402A490[] = {
|
||||
gsSPVertex(sparkles_seg4_vertex_04027450, 4, 0),
|
||||
gsSP2Triangles( 0, 1, 2, 0x0, 0, 2, 3, 0x0),
|
||||
gsSPTexture(0x0001, 0x0001, 0, G_TX_RENDERTILE, G_OFF),
|
||||
gsDPPipeSync(),
|
||||
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
|
||||
gsSPEndDisplayList(),
|
||||
};
|
||||
|
||||
@@ -47,6 +47,7 @@ const Gfx sparkles_animation_seg4_dl_04035288[] = {
|
||||
gsSP2Triangles( 0, 1, 2, 0x0, 0, 2, 3, 0x0),
|
||||
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF),
|
||||
gsSPSetGeometryMode(G_LIGHTING),
|
||||
gsDPPipeSync(),
|
||||
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
|
||||
gsSPEndDisplayList(),
|
||||
};
|
||||
|
||||
@@ -46,6 +46,7 @@ const Gfx transparent_star_seg3_dl_body[] = {
|
||||
gsDPSetCombineMode(G_CC_SHADEFADEA, G_CC_SHADEFADEA),
|
||||
gsDPSetEnvColor(255, 255, 255, 120),
|
||||
gsSPDisplayList(transparent_star_seg3_sub_dl_body),
|
||||
gsDPPipeSync(),
|
||||
gsDPSetEnvColor(255, 255, 255, 255),
|
||||
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
|
||||
gsSPEndDisplayList(),
|
||||
|
||||
@@ -56,6 +56,7 @@ const Gfx smoke_seg4_dl_040216A0[] = {
|
||||
gsSPVertex(smoke_seg4_vertex_0401DE60, 4, 0),
|
||||
gsSP2Triangles( 0, 1, 2, 0x0, 0, 2, 3, 0x0),
|
||||
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF),
|
||||
gsDPPipeSync(),
|
||||
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
|
||||
gsSPSetGeometryMode(G_LIGHTING),
|
||||
gsSPEndDisplayList(),
|
||||
|
||||
@@ -96,7 +96,7 @@ static const Vtx warp_pipe_seg3_vertex_03007DC0[] = {
|
||||
|
||||
// 0x03007E40
|
||||
ALIGNED8 static const Texture warp_pipe_seg3_texture_03007E40[] = {
|
||||
#include "actors/warp_pipe/warp_pipe_side.custom.rgba16.inc.c"
|
||||
#include "actors/warp_pipe/warp_pipe_side.rgba16.inc.c"
|
||||
};
|
||||
|
||||
// 0x03008E40 - 0x03008F98
|
||||
|
||||
|
Before Width: | Height: | Size: 1012 B After Width: | Height: | Size: 1012 B |
@@ -61,6 +61,7 @@ const Gfx water_splash_seg4_dl_040325C8[] = {
|
||||
gsSPVertex(water_splash_seg4_vertex_0402A588, 4, 0),
|
||||
gsSP2Triangles( 0, 1, 2, 0x0, 0, 2, 3, 0x0),
|
||||
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF),
|
||||
gsDPPipeSync(),
|
||||
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
|
||||
gsSPSetGeometryMode(G_LIGHTING),
|
||||
gsSPEndDisplayList(),
|
||||
|
||||
@@ -17,7 +17,11 @@
|
||||
.ascii INTERNAL_ROM_NAME /* Internal ROM name */
|
||||
.word 0x00000000 /* Unknown */
|
||||
.word 0x0000004E /* Cartridge */
|
||||
#if defined(EEP4K)
|
||||
.ascii "SM" /* Cartridge ID */
|
||||
#else
|
||||
.ascii "ED" /* Cartridge ID */
|
||||
#endif
|
||||
|
||||
/* Region */
|
||||
#if defined(VERSION_JP) || defined(VERSION_SH)
|
||||
|
||||
23
asm/vc_bin.s
Normal file
23
asm/vc_bin.s
Normal file
@@ -0,0 +1,23 @@
|
||||
// VC is using binary matching to stub functions - this hex was copied from SM64
|
||||
// osEepromRead/Write are performing infinite cycle inside them which causes recompiler do go crazy
|
||||
// _osEepStatus does not have any suspicious asm in it but it is just VC hacked anyways
|
||||
// If it is not replaced with a VC variant, EEP probe fails
|
||||
|
||||
.include "macros.inc"
|
||||
.section .text
|
||||
|
||||
#if defined(EEP)
|
||||
// 0x80329150 = 0xE4150
|
||||
.balign 16
|
||||
glabel osEepromReadVC
|
||||
.incbin "bin/vc/osEepromReadVC.bin"
|
||||
|
||||
// 0x80328af0 = 0xE3AF0
|
||||
.balign 16
|
||||
glabel osEepromWriteVC
|
||||
.incbin "bin/vc/osEepromWriteVC.bin"
|
||||
|
||||
.balign 16
|
||||
glabel __osEepStatusVC
|
||||
.incbin "bin/vc/osEepStatusVC.bin"
|
||||
#endif
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user