implement version-specific patches; clean up menu abstraction
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
# This function returns the game version, with values more specific than can be
|
||||
# detected by the sub_version field in various login commands.
|
||||
|
||||
# The returned value has the format 03GGRRVV, where:
|
||||
# G = game (Ox4F (O) = Episodes 1&2, 0x53 (S) = Episode 3)
|
||||
# R = region (0x45 (E), 0x4A (J), 0x50 (P))
|
||||
# V = minor version (0 = 1.00, 1 = 1.01, 2 = 1.02, etc.)
|
||||
|
||||
newserv_index_E3:
|
||||
|
||||
entry_ptr:
|
||||
reloc0:
|
||||
.offsetof start
|
||||
|
||||
start:
|
||||
lis r3, 0x8000
|
||||
lwz r4, [r3]
|
||||
lbz r5, [r3 + 7]
|
||||
li r3, -1
|
||||
|
||||
rlwinm r0, r4, 16, 16, 31
|
||||
cmplwi r0, 0x4750
|
||||
bnelr
|
||||
|
||||
lis r3, 0x3300
|
||||
rlwimi r3, r4, 8, 8, 23
|
||||
rlwimi r3, r5, 0, 24, 31
|
||||
ori r3, r3, 0x0030
|
||||
|
||||
blr
|
||||
Reference in New Issue
Block a user