You've already forked HackerSM64
mirror of
https://github.com/HackerN64/HackerSM64.git
synced 2026-01-21 10:35:32 -08:00
Compare commits
22 Commits
v2.0.0
...
develop/2.
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
35e75ade73 | ||
|
|
1166d7441d | ||
|
|
5ef0e8c9f6 | ||
|
|
25b421aaae | ||
|
|
4a3ef802d5 | ||
|
|
4b9a0b89a0 | ||
|
|
3ac257e6fb | ||
|
|
cc92b33676 | ||
|
|
8163bc4837 | ||
|
|
9f2f4a27b6 | ||
|
|
448d18de2b | ||
|
|
c4a23d0036 | ||
|
|
f061076a4f | ||
|
|
8f2b9c8979 | ||
|
|
056e319105 | ||
|
|
6bd3988dd8 | ||
|
|
fe8384a440 | ||
|
|
ad91c636ad | ||
|
|
475e039f8a | ||
|
|
25951363b7 | ||
|
|
797f9fa223 | ||
|
|
9d7d56989e |
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_GBI_2=1",
|
||||
"F3DZEX_NON_GBI_2=1",
|
||||
"F3DEX_GBI_SHARED=1",
|
||||
"NON_MATCHING=1",
|
||||
"AVOID_UB=1"
|
||||
|
||||
2
Makefile
2
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_GBI_2=1 F3DEX_GBI_2=1 F3DEX_GBI_SHARED=1
|
||||
DEFINES += F3DZEX_NON_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
|
||||
|
||||
@@ -1 +1 @@
|
||||
v2.0.0
|
||||
v2.0.1
|
||||
|
||||
@@ -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(),
|
||||
|
||||
@@ -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(),
|
||||
|
||||
@@ -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
|
||||
@@ -130,6 +130,7 @@ const Gfx tiny_bubble_dl_0B006A50[] = {
|
||||
// 0x0B006AB0 - 0x0B006AD8
|
||||
const Gfx tiny_bubble_dl_0B006AB0[] = {
|
||||
gsSPTexture(0x0001, 0x0001, 0, G_TX_RENDERTILE, G_OFF),
|
||||
gsDPPipeSync(),
|
||||
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
|
||||
gsDPSetRenderMode(G_RM_AA_ZB_OPA_SURF, G_RM_AA_ZB_OPA_SURF2),
|
||||
gsSPSetGeometryMode(G_LIGHTING | G_CULL_BACK | G_SHADING_SMOOTH),
|
||||
|
||||
@@ -2328,6 +2328,7 @@ const Gfx dl_draw_triangle[] = {
|
||||
gsSPVertex(vertex_triangle, 3, 0),
|
||||
gsSP1Triangle( 0, 1, 2, 0x0),
|
||||
gsSPSetGeometryMode(G_LIGHTING),
|
||||
gsDPPipeSync(),
|
||||
gsDPSetRenderMode(G_RM_AA_ZB_OPA_SURF, G_RM_AA_ZB_OPA_SURF2),
|
||||
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
|
||||
gsSPEndDisplayList(),
|
||||
|
||||
BIN
bin/vc/osEepStatusVC.bin
Normal file
BIN
bin/vc/osEepStatusVC.bin
Normal file
Binary file not shown.
BIN
bin/vc/osEepromReadVC.bin
Normal file
BIN
bin/vc/osEepromReadVC.bin
Normal file
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user