Skip to content

Commit fc2c56a

Browse files
committed
Added support for the new released debug build
1 parent 0136dc1 commit fc2c56a

4 files changed

Lines changed: 54 additions & 78 deletions

File tree

README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ The overlays the loader will seek for are the following:
2727
|----------|:-------------:|:------:|
2828
| Japan 1.0 | zelda@srd44 00-03-31 02:22:11 | Yes |
2929
| Japan 1.1 | zelda@srd44 00-04-04 09:34:16 | Yes |
30-
| USA Debug | zelda@srd44.00-07-06 16:46:35 | No |
30+
| USA Debug | zelda@srd44 00-07-06 16:46:35 | No |
3131
| USA Kiosk Demo | zelda@srd44 00-07-12 16:14:06 | Yes |
3232
| USA 1.0 | zelda@srd44 00-07-31 17:04:16 | Yes |
3333
| Europe 1.0 | zelda@srd44 00-09-25 11:16:53 | Yes |
@@ -52,6 +52,7 @@ The overlays the loader will seek for are the following:
5252
| USA Master Quest | zelda@srd022j 02-12-19 14:05:42 | Yes |
5353
| Europe GameCube Debug | zelda@srd022j 03-02-13 19:46:49 | No |
5454
| Europe Master Quest Debug | zelda@srd022j 03-02-21 00:16:31 | Yes |
55+
| Europe GameCube Debug | zelda@srd022j 03-02-21 00:49:18 | Yes |
5556
| Europe GameCube | zelda@srd022j 03-02-21 20:12:23 | Yes |
5657
| Europe Master Quest | zelda@srd022j 03-02-21 20:37:19 | Yes |
5758
| Japan GameCube Zelda Collection | zelda@srd022j 03-10-08 21:53:00 | Yes |

src/main/java/zelda64/Zelda64CodeInfo.java

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -34,10 +34,12 @@ public Zelda64CodeInfo(long codeDst, long codeVrom, long actorOvlTable, long gam
3434
0x800e5bd0, 0x800fc420, 0x800efb88, -1));
3535
put(Zelda64Version.OotEuropeGC, new Zelda64CodeInfo(0x80010f00, 0xa88000, 0x800e53a0, 0x800ee1b0,
3636
0x800e4ab0, 0x800fb300, 0x800eea68, -1));
37-
put(Zelda64Version.OotEuropeMq, new Zelda64CodeInfo(0x80010f00, 0xa88000, 0x800e5380, 0x800ee190,
37+
put(Zelda64Version.OotEuropeGCMq, new Zelda64CodeInfo(0x80010f00, 0xa88000, 0x800e5380, 0x800ee190,
3838
0x800e4a90, 0x800fb2e0, 0x800eea48, -1));
39-
put(Zelda64Version.OotEuropeMqDbg, new Zelda64CodeInfo(0x8001CE60, 0xa94000, 0x801162a0, 0x8011f830,
39+
put(Zelda64Version.OotEuropeGCMqDbg, new Zelda64CodeInfo(0x8001CE60, 0xa94000, 0x801162a0, 0x8011f830,
4040
0x801159b0, 0x8012d1a0, 0x801200f8, -1));
41+
put(Zelda64Version.OotEuropeGCDbg, new Zelda64CodeInfo(0x8001ce60, 0xa94000, 0x801162c0, 0x8011f850,
42+
0x801159d0, 0x8012d1c0, 0x80120118, -1));
4143
put(Zelda64Version.OotJPUS10, new Zelda64CodeInfo(0x800110a0, 0xa87000, 0x800e8530, 0x800f1340, 0x800e7c40,
4244
0x800fe480, 0x800f1bf8, -1));
4345
put(Zelda64Version.OotJPUS11, new Zelda64CodeInfo(0x800110a0, 0xa87000, 0x800e86f0, 0x800f1500, 0x800e7e00,
@@ -48,11 +50,11 @@ public Zelda64CodeInfo(long codeDst, long codeVrom, long actorOvlTable, long gam
4850
0x800fd9a0, 0x800f1108, -1));
4951
put(Zelda64Version.OotJapanGcZeldaCollection, new Zelda64CodeInfo(0x80010ee0, 0xa86000, 0x800e7a20,
5052
0x800f0830, 0x800e7130, 0x800fd980, 0x800f10e8, -1));
51-
put(Zelda64Version.OotJapanMq, new Zelda64CodeInfo(0x80010ee0, 0xa86000, 0x800e7a20, 0x800f0830, 0x800e7130,
53+
put(Zelda64Version.OotJapanGCMq, new Zelda64CodeInfo(0x80010ee0, 0xa86000, 0x800e7a20, 0x800f0830, 0x800e7130,
5254
0x800fd980, 0x800f10e8, -1));
5355
put(Zelda64Version.OotUSAGC, new Zelda64CodeInfo(0x80010ee0, 0xa86000, 0x800e7a20, 0x800f0830, 0x800e7130,
5456
0x800fd980, 0x800f10e8, -1));
55-
put(Zelda64Version.OotUSAMq, new Zelda64CodeInfo(0x80010ee0, 0xa86000, 0x800e7a00, 0x800f0810, 0x800e7110,
57+
put(Zelda64Version.OotUSAGCMq, new Zelda64CodeInfo(0x80010ee0, 0xa86000, 0x800e7a00, 0x800f0810, 0x800e7110,
5658
0x800fd960, 0x800f10c8, -1));
5759
// Majora's Mask
5860
put(Zelda64Version.MmEurope10, new Zelda64CodeInfo(0x800a5d60, 0xc8a000, 0x801af760, 0x801BE0A0, 0x801aefc0,

src/main/java/zelda64/Zelda64Game.java

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -48,16 +48,17 @@ public boolean IsOot() {
4848
case OotEurope10:
4949
case OotEurope11:
5050
case OotEuropeGC:
51-
case OotEuropeMq:
52-
case OotEuropeMqDbg:
51+
case OotEuropeGCMq:
52+
case OotEuropeGCMqDbg:
53+
case OotEuropeGCDbg:
5354
case OotJPUS10:
5455
case OotJPUS11:
5556
case OotJPUS12:
5657
case OotJapanGC:
5758
case OotJapanGcZeldaCollection:
58-
case OotJapanMq:
59+
case OotJapanGCMq:
5960
case OotUSAGC:
60-
case OotUSAMq:
61+
case OotUSAGCMq:
6162
return true;
6263
default:
6364
return false;
@@ -113,10 +114,12 @@ public String GetVersionLongName() {
113114
return gameName + " Europe 1.1";
114115
case OotEuropeGC:
115116
return gameName + " Europe GameCube";
116-
case OotEuropeMq:
117+
case OotEuropeGCMq:
117118
return gameName + " Europe Master Quest";
118-
case OotEuropeMqDbg:
119+
case OotEuropeGCMqDbg:
119120
return gameName + " Europe Master Quest Debug";
121+
case OotEuropeGCDbg:
122+
return gameName + " Europe GameCube Debug";
120123
case OotJPUS10:
121124
return gameName + " JP/US 1.0";
122125
case OotJPUS11:
@@ -127,11 +130,11 @@ public String GetVersionLongName() {
127130
return gameName + " Japan GameCube";
128131
case OotJapanGcZeldaCollection:
129132
return gameName + " Japan GameCube Zelda Collection";
130-
case OotJapanMq:
133+
case OotJapanGCMq:
131134
return gameName + " Japan Master Quest";
132135
case OotUSAGC:
133136
return gameName + " USA GameCube";
134-
case OotUSAMq:
137+
case OotUSAGCMq:
135138
return gameName + " USA Master Quest";
136139
default:
137140
return "Invalid or unknown version";
Lines changed: 35 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -1,82 +1,52 @@
11
package zelda64;
22

33
public enum Zelda64Version {
4-
Invalid(-1),
4+
Invalid(null),
55
//Ocarina Of Time
6-
OotJPUS10(0),
7-
OotJPUS11(1),
8-
OotEurope10(2),
9-
OotJPUS12(3),
10-
OotEurope11(4),
11-
OotJapanGC(5),
12-
OotJapanMq(6),
13-
OotUSAGC(7),
14-
OotUSAMq(8),
15-
OotEuropeMqDbg(9),
16-
OotEuropeGC(10),
17-
OotEuropeMq(11),
18-
OotJapanGcZeldaCollection(12),
6+
OotJPUS10("zelda@srd44 98-10-21 04:56:31"),
7+
OotJPUS11("zelda@srd44 98-10-26 10:58:45"),
8+
OotEurope10("zelda@srd44 98-11-10 14:34:22"),
9+
OotJPUS12("zelda@srd44 98-11-12 18:17:03"),
10+
OotEurope11("zelda@srd44 98-11-18 17:36:49"),
11+
OotJapanGC("zelda@srd022j 02-10-29 23:49:53"),
12+
OotJapanGCMq("zelda@srd022j 02-10-30 00:15:15"),
13+
OotUSAGC("zelda@srd022j 02-12-19 13:28:09"),
14+
OotUSAGCMq("zelda@srd022j 02-12-19 14:05:42"),
15+
OotEuropeGCMqDbg("zelda@srd022j 03-02-21 00:16:31"),
16+
OotEuropeGCDbg("zelda@srd022j 03-02-21 00:49:18"),
17+
OotEuropeGC("zelda@srd022j 03-02-21 20:12:23"),
18+
OotEuropeGCMq("zelda@srd022j 03-02-21 20:37:19"),
19+
OotJapanGcZeldaCollection("zelda@srd022j 03-10-08 21:53:00"),
1920
//Marjoa's Mask
20-
MmJapan10(13),
21-
MmJapan11(14),
22-
MmUSADebug(15),
23-
MmUSADemo(16),
24-
MmUSA10(17),
25-
MmEurope10(18),
26-
MmEurope11Debug(19),
27-
MmEurope11(20);
21+
MmJapan10("zelda@srd44 00-03-31 02:22:11"),
22+
MmJapan11("zelda@srd44 00-04-04 09:34:16"),
23+
MmUSADebug("zelda@srd44 00-07-06 16:46:35"),
24+
MmUSADemo("zelda@srd44 00-07-12 16:14:06"),
25+
MmUSA10("zelda@srd44 00-07-31 17:04:16"),
26+
MmEurope10("zelda@srd44 00-09-25 11:16:53"),
27+
MmEurope11Debug("zelda@srd44 00-09-29 09:29:05"),
28+
MmEurope11("zelda@srd44 00-09-29 09:29:41");
2829

29-
static final String[] VERSIONS = new String[] {
30-
//Ocarina Of Time
31-
"zelda@srd44 98-10-21 04:56:31",
32-
"zelda@srd44 98-10-26 10:58:45",
33-
"zelda@srd44 98-11-10 14:34:22",
34-
"zelda@srd44 98-11-12 18:17:03",
35-
"zelda@srd44 98-11-18 17:36:49",
36-
"zelda@srd022j 02-10-29 23:49:53",
37-
"zelda@srd022j 02-10-30 00:15:15",
38-
"zelda@srd022j 02-12-19 13:28:09",
39-
"zelda@srd022j 02-12-19 14:05:42",
40-
"zelda@srd022j 03-02-21 00:16:31",
41-
"zelda@srd022j 03-02-21 20:12:23",
42-
"zelda@srd022j 03-02-21 20:37:19",
43-
"zelda@srd022j 03-10-08 21:53:00",
44-
//Majora's Mask
45-
"zelda@srd44 00-03-31 02:22:11",
46-
"zelda@srd44 00-04-04 09:34:16",
47-
"zelda@srd44 00-07-06 16:46:35",
48-
"zelda@srd44 00-07-12 16:14:06",
49-
"zelda@srd44 00-07-31 17:04:16",
50-
"zelda@srd44 00-09-25 11:16:53",
51-
"zelda@srd44 00-09-29 09:29:05",
52-
"zelda@srd44 00-09-29 09:29:41",
53-
};
30+
public String Name;
5431

55-
public int ID;
56-
57-
private Zelda64Version(int id) {
58-
ID = id;
32+
private Zelda64Version(String name) {
33+
Name = name;
5934
}
6035

6136
public String GetBuildName() {
62-
if (ID != Invalid.ID)
63-
return VERSIONS[ID];
64-
return "";
37+
if (Name != null)
38+
return Name;
39+
return "Invalid";
6540
}
6641

6742
public static Zelda64Version FromString(String s) {
68-
int id = -1;
69-
for (int i = 0; i < VERSIONS.length; i++) {
70-
if (s.equals(VERSIONS[i])) {
71-
id = i;
72-
break;
73-
}
74-
}
7543

76-
for (Zelda64Version v : Zelda64Version.values()) {
77-
if (v.ID == id)
78-
return v;
79-
}
44+
var values = Zelda64Version.values();
45+
for (int i = 0; i < values.length; i++)
46+
{
47+
if (s.equals(values[i].Name))
48+
return values[i];
49+
}
8050
return Zelda64Version.Invalid;
8151
}
8252
}

0 commit comments

Comments
 (0)