Merge pull request #1 from Catobat/OWFix
Fix for vanilla transition glitch (and possibly transition to ID 0 glitch)
This commit is contained in:
2
Rom.py
2
Rom.py
@@ -27,7 +27,7 @@ from EntranceShuffle import door_addresses, exit_ids
|
||||
|
||||
|
||||
JAP10HASH = '03a63945398191337e896e5771f77173'
|
||||
RANDOMIZERBASEHASH = 'ae2d130b6466396727906214ef94ed20'
|
||||
RANDOMIZERBASEHASH = '00fb23d31c8e9434e7dcdeaa18c84473'
|
||||
|
||||
|
||||
class JsonRom(object):
|
||||
|
||||
@@ -87,6 +87,7 @@ OWShuffle:
|
||||
|
||||
inx : lda.l OWEdgeOffsets,x ;record id of first transition in table
|
||||
;multiply ^ by 26, 26bytes per record
|
||||
stz $211c ;ensure the next write to $211b counts as the first write
|
||||
sta $211b : stz $211b : lda #26 : sta $211c : pla ;a = number of trans
|
||||
ldx $2134 ;x = offset to first record
|
||||
rep #$20
|
||||
@@ -95,13 +96,12 @@ OWShuffle:
|
||||
.nextTransition
|
||||
pha
|
||||
jsr OWSearchTransition
|
||||
lda $140 : bne .newDestination
|
||||
bcs .newDestination
|
||||
pla : dec : bne .nextTransition : bra .noTransition
|
||||
|
||||
.newDestination
|
||||
pla
|
||||
sep #$30
|
||||
stz $140
|
||||
plx : lda $8a
|
||||
bra .return
|
||||
|
||||
@@ -151,11 +151,11 @@ OWSearchTransition:
|
||||
sep #$20 : lda #OWWestEdges>>16 : phb : pha : plb : ldx #OWWestEdges : jsr OWNewDestination : plb ;x = address of table
|
||||
|
||||
.matchfound
|
||||
plx : pla : lda #$0001 : sta $140 : pha : phx
|
||||
txa : !add #$0010 : tax : rts
|
||||
plx : pla : lda #$0001 : pha : phx
|
||||
txa : !add #$0010 : tax : sec : rts
|
||||
|
||||
.exitloop
|
||||
txa : !add #$0018 : tax : rts
|
||||
txa : !add #$0018 : tax : clc : rts
|
||||
}
|
||||
OWNewDestination:
|
||||
{
|
||||
|
||||
Binary file not shown.
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user