let's dev 5/12/18
fixed zore ledge heart graphic bug changed seed hash to be manually settable added more seizure safety
This commit is contained in:
@@ -26,7 +26,7 @@ org $3FFFFF ; <- 1FFFFF
|
||||
db #$00 ; expand file to 2mb
|
||||
|
||||
org $1FFFF8 ; <- FFFF8 timestamp rom
|
||||
db #$20, #$18, #$05, #$04 ; year/month/day
|
||||
db #$20, #$18, #$05, #$12 ; year/month/day
|
||||
|
||||
;================================================================================
|
||||
|
||||
@@ -552,6 +552,9 @@ Sprite_NullifyHookshotDrag:
|
||||
org $1CFD69
|
||||
Main_ShowTextMessage:
|
||||
|
||||
org $1DE9B6
|
||||
Filter_MajorWhitenMain:
|
||||
|
||||
org $1DF65D
|
||||
Sprite_SpawnDynamically:
|
||||
|
||||
|
||||
@@ -10,11 +10,27 @@ FlipGreenPendant:
|
||||
LDA $0C : STA $0803, X
|
||||
RTL
|
||||
;================================================================================
|
||||
!EPILEPSY_TIMER = "$7F5041"
|
||||
SetEtherFlicker:
|
||||
LDA.l Seizure_Safety : BNE +
|
||||
LDA $031D : CMP.b #$0B : RTL
|
||||
+ : CMP.b #$01 : BNE +
|
||||
REP #$02 : RTL
|
||||
+
|
||||
LDA !EPILEPSY_TIMER : INC : STA !EPILEPSY_TIMER
|
||||
|
||||
LDA.l Seizure_Safety : CMP !EPILEPSY_TIMER : BNE +++
|
||||
LDA.b #$00 : STA !EPILEPSY_TIMER : BRA ++
|
||||
+++
|
||||
LSR : CMP !EPILEPSY_TIMER : !BLT ++
|
||||
SEP #$02 : RTL
|
||||
++
|
||||
REP #$02
|
||||
+
|
||||
RTL
|
||||
;================================================================================
|
||||
SetAttractMaidenFlicker:
|
||||
LDA.l Seizure_Safety : BNE +
|
||||
JSL.l Filter_MajorWhitenMain : LDA $5F : RTL
|
||||
+
|
||||
LDA #$00
|
||||
RTL
|
||||
;================================================================================
|
||||
@@ -1,6 +1,7 @@
|
||||
;================================================================================
|
||||
; Randomize Catfish
|
||||
;--------------------------------------------------------------------------------
|
||||
!HEART_REDRAW = "$7F5000"
|
||||
LoadCatfishItemGFX:
|
||||
LDA.l $1DE185 ; location randomizer writes catfish item to
|
||||
JSL.l PrepDynamicTile
|
||||
@@ -10,6 +11,7 @@ DrawThrownItem:
|
||||
LDA $8A : CMP.b #$81 : BNE .catfish
|
||||
|
||||
.zora
|
||||
LDA.b #$01 : STA !HEART_REDRAW
|
||||
LDA.l $1DE1C3 ; location randomizer writes zora item to
|
||||
BRA .draw
|
||||
|
||||
|
||||
@@ -6,28 +6,8 @@ PrepHashAlphabet:
|
||||
LDA.b #$06 : STA $14 ; thing we wrote over
|
||||
RTL
|
||||
+
|
||||
|
||||
LDA $00 : PHA
|
||||
LDA $01 : PHA
|
||||
LDA $02 : PHA
|
||||
LDA $03 : PHA
|
||||
LDA $04 : PHA
|
||||
LDA $05 : PHA
|
||||
LDA $06 : PHA
|
||||
LDA $07 : PHA
|
||||
|
||||
JSL.l NameHash
|
||||
JSL.l LoadAlphabetTiles
|
||||
JSL.l LoadAlphabetTilemap
|
||||
|
||||
PLA : STA $07
|
||||
PLA : STA $06
|
||||
PLA : STA $05
|
||||
PLA : STA $04
|
||||
PLA : STA $03
|
||||
PLA : STA $02
|
||||
PLA : STA $01
|
||||
PLA : STA $00
|
||||
RTL
|
||||
;--------------------------------------------------------------------------------
|
||||
|
||||
@@ -92,7 +72,7 @@ LoadAlphabetTiles:
|
||||
LDA $2100 : PHA : LDA.b #$80 : STA $2100 ; save screen state & turn screen off
|
||||
LDX.b #$00 : -
|
||||
|
||||
LDA $00, X
|
||||
LDA.l SeedHash, X
|
||||
REP #$20 ; set 16-bit accumulator
|
||||
AND.w #$001F ; mask to alphabet of 32
|
||||
JSL.l GetAlphabetTileAddr : STA $4302 ; set bus A source address to SRAM
|
||||
@@ -172,7 +152,7 @@ LoadAlphabetTilemap:
|
||||
|
||||
LDY.b #00
|
||||
LDX.b #$00 : -
|
||||
PHX : TYX : LDA $00, X : PLX
|
||||
PHX : TYX : LDA.l SeedHash, X : PLX
|
||||
AND.b #$1F ; mask to alphabet of 32
|
||||
PHX : TAX : JSL.l GetAlphabetPalette : PLX
|
||||
ORA.b #$01
|
||||
|
||||
@@ -31,14 +31,14 @@ dw $1D5C, !FSTILE_SPACE, $1D78, !FSTILE_SPACE, $1D79, !FSTILE_SPACE, $1D92, !FST
|
||||
org $0CDE94 ; <- 65E94
|
||||
FileSelect_KillFile_Top:
|
||||
db $63, $25, $00, $19
|
||||
dw $0D4D, !FSTILE_SPACE, $0D4E, !FSTILE_SPACE, $0D65, !FSTILE_SPACE, $0D4E, !FSTILE_SPACE, $0D6D, !FSTILE_SPACE, $0D4E, !FSTILE_SPACE, !FSTILE_SPACE
|
||||
dw $1D4D, !FSTILE_SPACE, $1D4E, !FSTILE_SPACE, $1D65, !FSTILE_SPACE, $1D4E, !FSTILE_SPACE, $1D6D, !FSTILE_SPACE, $1D4E, !FSTILE_SPACE, !FSTILE_SPACE
|
||||
;dw $1D64, !FSTILE_SPACE, $1D62, !FSTILE_SPACE, $1D65, !FSTILE_SPACE, $1D65, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE
|
||||
;dw $1D64, !FSTILE_SPACE, $1D62, !FSTILE_SPACE, $1D65, !FSTILE_SPACE, $1D65, !FSTILE_SPACE, $1D04, !FSTILE_SPACE, $1D89, !FSTILE_SPACE, $1D07
|
||||
;--------------------------------------------------------------------------------
|
||||
;org $0CDEB2 ; <- 65EB2
|
||||
;FileSelect_KillFile_Bottom:
|
||||
db $63, $45, $00, $19
|
||||
dw $0D5D, !FSTILE_SPACE, $0D5E, !FSTILE_SPACE, $0D75, !FSTILE_SPACE, $0D5E, !FSTILE_SPACE, $0D7D, !FSTILE_SPACE, $0D5E, !FSTILE_SPACE, !FSTILE_SPACE
|
||||
dw $1D5D, !FSTILE_SPACE, $1D5E, !FSTILE_SPACE, $1D75, !FSTILE_SPACE, $1D5E, !FSTILE_SPACE, $1D7D, !FSTILE_SPACE, $1D5E, !FSTILE_SPACE, !FSTILE_SPACE
|
||||
;dw $1D74, !FSTILE_SPACE, $1D72, !FSTILE_SPACE, $1D75, !FSTILE_SPACE, $1D75, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE, !FSTILE_SPACE
|
||||
;dw $1D74, !FSTILE_SPACE, $1D72, !FSTILE_SPACE, $1D75, !FSTILE_SPACE, $1D75, !FSTILE_SPACE, $1D14, !FSTILE_SPACE, $1D99, !FSTILE_SPACE, $1D17
|
||||
;--------------------------------------------------------------------------------
|
||||
|
||||
@@ -396,9 +396,12 @@ dw $0000, $0002, $0004, $0032, $0004, $0006, $0030
|
||||
;JSL FlipGreenPendant
|
||||
;NOP #6
|
||||
;--------------------------------------------------------------------------------
|
||||
org $08AAE1 ; <- 42AE1 - ancilla_ether_spell.asm : 22 (LDA $031D : CMP.b #$0B)
|
||||
org $08AAE1 ; <- 42AE1 - ancilla_ether_spell.asm : 28 (LDA $031D : CMP.b #$0B)
|
||||
JSL.l SetEtherFlicker : NOP
|
||||
;--------------------------------------------------------------------------------
|
||||
org $0CF37B ; <- 6737B - Bank0C.asm : 5055 (JSL Filter_MajorWhitenMain)
|
||||
JSL.l SetAttractMaidenFlicker : NOP #2
|
||||
;--------------------------------------------------------------------------------
|
||||
|
||||
;================================================================================
|
||||
; Ice Floor Toggle
|
||||
|
||||
@@ -52,11 +52,13 @@ MedallionTrigger_Bombos:
|
||||
PLA
|
||||
RTL
|
||||
;--------------------------------------------------------------------------------
|
||||
!EPILEPSY_TIMER = "$7F5041"
|
||||
MedallionTrigger_Ether:
|
||||
PHA
|
||||
LDA.l MireRequiredMedallion : CMP #$01 : BNE +
|
||||
LDA.b #$00 : STA !EPILEPSY_TIMER
|
||||
LDA.l MireRequiredMedallion : CMP.b #$01 : BNE +
|
||||
JSL.l TryOpenMire
|
||||
+ LDA.l TRockRequiredMedallion : CMP #$01 : BNE +
|
||||
+ LDA.l TRockRequiredMedallion : CMP.b #$01 : BNE +
|
||||
JSL.l TryOpenTRock
|
||||
+
|
||||
PLA
|
||||
@@ -64,9 +66,9 @@ RTL
|
||||
;--------------------------------------------------------------------------------
|
||||
MedallionTrigger_Quake:
|
||||
PHA
|
||||
LDA.l MireRequiredMedallion : CMP #$02 : BNE +
|
||||
LDA.l MireRequiredMedallion : CMP.b #$02 : BNE +
|
||||
JSL.l TryOpenMire
|
||||
+ LDA.l TRockRequiredMedallion : CMP #$02 : BNE +
|
||||
+ LDA.l TRockRequiredMedallion : CMP.b #$02 : BNE +
|
||||
JSL.l TryOpenTRock
|
||||
+
|
||||
PLA
|
||||
|
||||
60
seedtag.asm
60
seedtag.asm
@@ -1,34 +1,34 @@
|
||||
;--------------------------------------------------------------------------------
|
||||
; GenerateSeedTags
|
||||
;--------------------------------------------------------------------------------
|
||||
GenerateSeedTags:
|
||||
PHA : PHX : PHY : PHP
|
||||
REP #$20 ; set 16-bit accumulator
|
||||
LDA $00 : PHA
|
||||
LDA $02 : PHA
|
||||
LDA $04 : PHA
|
||||
LDA $06 : PHA
|
||||
JSL.l NameHash ; get the titlecard hashes
|
||||
|
||||
LDA $00 : AND.w #$1F1F : STA $00 ; keep it under 0x20 or we'll run out of items
|
||||
LDA $02 : AND.w #$1F1F : STA $02
|
||||
LDA $04 : AND.w #$1F1F : STA $04
|
||||
LDA $06 : AND.w #$1F1F : STA $06
|
||||
|
||||
REP #$30 ; set 8-bit accumulator & index registers
|
||||
|
||||
LDY #$08
|
||||
-
|
||||
|
||||
|
||||
DEY : BNE -
|
||||
|
||||
|
||||
REP #20 ; set 16-bit accumulator
|
||||
PLA : STA $06
|
||||
PLA : STA $04
|
||||
PLA : STA $02
|
||||
PLA : STA $00
|
||||
PLP : PLY : PLX : PLA
|
||||
RTL
|
||||
;GenerateSeedTags:
|
||||
; PHA : PHX : PHY : PHP
|
||||
; REP #$20 ; set 16-bit accumulator
|
||||
; LDA $00 : PHA
|
||||
; LDA $02 : PHA
|
||||
; LDA $04 : PHA
|
||||
; LDA $06 : PHA
|
||||
; JSL.l NameHash ; get the titlecard hashes
|
||||
;
|
||||
; LDA $00 : AND.w #$1F1F : STA $00 ; keep it under 0x20 or we'll run out of items
|
||||
; LDA $02 : AND.w #$1F1F : STA $02
|
||||
; LDA $04 : AND.w #$1F1F : STA $04
|
||||
; LDA $06 : AND.w #$1F1F : STA $06
|
||||
;
|
||||
; REP #$30 ; set 8-bit accumulator & index registers
|
||||
;
|
||||
; LDY #$08
|
||||
; -
|
||||
;
|
||||
;
|
||||
; DEY : BNE -
|
||||
;
|
||||
;
|
||||
; REP #20 ; set 16-bit accumulator
|
||||
; PLA : STA $06
|
||||
; PLA : STA $04
|
||||
; PLA : STA $02
|
||||
; PLA : STA $00
|
||||
; PLP : PLY : PLX : PLA
|
||||
;RTL
|
||||
;--------------------------------------------------------------------------------
|
||||
31
tables.asm
31
tables.asm
@@ -813,7 +813,7 @@ db #$01 ; #$00 = Original Behavior - #$01 - Restrict to Bottles (Default)
|
||||
;================================================================================
|
||||
org $30817F ; PC 0x18017F
|
||||
Seizure_Safety:
|
||||
db #$00 ; #$00 = Off (Default) - #$01 = Limit Certain Effects
|
||||
db #$00 ; #$00 = Off (Default) - #$xx = Limit Certain Effects
|
||||
;================================================================================
|
||||
;---- --hb
|
||||
;h - Hookshot
|
||||
@@ -913,7 +913,11 @@ db #$00 ; #$00 = Off (default) - #$01 = On
|
||||
TournamentSeedInverse:
|
||||
db #$01 ; #$00 = On - #$01 = Off (Default)
|
||||
;--------------------------------------------------------------------------------
|
||||
; 0x180215 - 0x18021F (unused)
|
||||
org $308215 ; PC 0x180215
|
||||
SeedHash:
|
||||
db $00, $01, $02, $03, $04
|
||||
;--------------------------------------------------------------------------------
|
||||
; 0x18021A - 0x18021F (unused)
|
||||
;================================================================================
|
||||
; $308220 (0x180220) - $30823F (0x18023F)
|
||||
; Plandomizer Author Name (ASCII) - Leave unused chars as 0
|
||||
@@ -1449,7 +1453,7 @@ dw #9999 ; Rupee Limit
|
||||
; $7F503E - Stats Item Total
|
||||
; $7F503F - Bonk Repeat
|
||||
; $7F5040 - Free Item Dialog Temporary
|
||||
; $7F5041 - Unused
|
||||
; $7F5041 - Epilepsy Safety Timer
|
||||
; $7F5042 - Tile Upload Offset Override (Low)
|
||||
; $7F5043 - Tile Upload Offset Override (High)
|
||||
; $7F5044 - $7F5046 - NMI Auxiliary Function
|
||||
@@ -1625,24 +1629,5 @@ db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
|
||||
db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
|
||||
db $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
|
||||
;--------------------------------------------------------------------------------
|
||||
; 0x185140 - 187EFF (unused)
|
||||
;--------------------------------------------------------------------------------
|
||||
org $30FF00 ; PC 0x187F00 - PC 0x187FFF
|
||||
NameHashTable: ; change this for each new version - MOVE THIS TO BANK $30
|
||||
db $57, $41, $D6, $7A, $E0, $10, $8A, $97, $A2, $89, $82, $45, $46, $1C, $DF, $F7
|
||||
db $55, $0F, $1D, $56, $AC, $29, $DC, $D1, $25, $2A, $C5, $92, $42, $B7, $BE, $50
|
||||
db $64, $62, $31, $E8, $49, $63, $40, $5F, $C9, $47, $F6, $0B, $FA, $FC, $E4, $F0
|
||||
db $E6, $8F, $6D, $B1, $68, $A4, $D3, $0E, $54, $5D, $6B, $CF, $20, $69, $33, $07
|
||||
db $2C, $4D, $32, $77, $C1, $95, $7B, $DE, $66, $8C, $35, $84, $86, $7C, $44, $1A
|
||||
db $3E, $15, $D4, $0C, $B5, $90, $4C, $B2, $26, $1E, $38, $C0, $76, $9C, $2B, $7F
|
||||
db $5E, $D5, $75, $B6, $E3, $7D, $8D, $72, $3A, $CB, $6F, $5B, $AD, $BD, $F1, $BB
|
||||
db $05, $9A, $F4, $03, $02, $FF, $DA, $4F, $93, $B3, $14, $EC, $EE, $D7, $F9, $96
|
||||
db $A7, $13, $CA, $BF, $88, $19, $A3, $78, $24, $87, $3C, $9E, $B4, $27, $C2, $AF
|
||||
db $80, $C4, $C8, $6C, $E9, $94, $F8, $8B, $3D, $34, $A6, $53, $17, $22, $F3, $A5
|
||||
db $1B, $2E, $06, $39, $D2, $43, $73, $12, $09, $58, $30, $5C, $99, $98, $9F, $ED
|
||||
db $37, $67, $EA, $BA, $E7, $D9, $81, $08, $7E, $BC, $70, $5A, $51, $C3, $B9, $61
|
||||
db $36, $4B, $A8, $01, $65, $3B, $EF, $59, $04, $18, $79, $0D, $DD, $CE, $CC, $AE
|
||||
db $83, $21, $EB, $6E, $0A, $71, $B0, $11, $85, $C7, $A1, $FD, $E5, $16, $48, $FB
|
||||
db $F2, $23, $2F, $28, $9B, $AA, $AB, $D0, $6A, $9D, $C6, $2D, $00, $FE, $E1, $3F
|
||||
db $A0, $4A, $B8, $4E, $74, $1F, $8E, $A9, $F5, $CD, $60, $91, $DB, $D8, $52, $E2
|
||||
; 0x185140 - 187FFF (unused)
|
||||
;--------------------------------------------------------------------------------
|
||||
|
||||
@@ -566,56 +566,29 @@ HexToDec:
|
||||
STA $7F5003 : STA $7F5005 : STA $7F5006 ; clear digit storage
|
||||
PLA
|
||||
-
|
||||
CMP.w #10000 : !BLT +
|
||||
PHA : SEP #$20 : LDA $7F5003 : INC : STA $7F5003 : REP #$20 : PLA
|
||||
!SUB.w #10000 : BRA -
|
||||
CMP.w #10000 : !BLT +
|
||||
PHA : SEP #$20 : LDA $7F5003 : INC : STA $7F5003 : REP #$20 : PLA
|
||||
!SUB.w #10000 : BRA -
|
||||
+ -
|
||||
CMP.w #1000 : !BLT +
|
||||
PHA : SEP #$20 : LDA $7F5004 : INC : STA $7F5004 : REP #$20 : PLA
|
||||
!SUB.w #1000 : BRA -
|
||||
CMP.w #1000 : !BLT +
|
||||
PHA : SEP #$20 : LDA $7F5004 : INC : STA $7F5004 : REP #$20 : PLA
|
||||
!SUB.w #1000 : BRA -
|
||||
+ -
|
||||
CMP.w #100 : !BLT +
|
||||
PHA : SEP #$20 : LDA $7F5005 : INC : STA $7F5005 : REP #$20 : PLA
|
||||
!SUB.w #100 : BRA -
|
||||
CMP.w #100 : !BLT +
|
||||
PHA : SEP #$20 : LDA $7F5005 : INC : STA $7F5005 : REP #$20 : PLA
|
||||
!SUB.w #100 : BRA -
|
||||
+ -
|
||||
CMP.w #10 : !BLT +
|
||||
PHA : SEP #$20 : LDA $7F5006 : INC : STA $7F5006 : REP #$20 : PLA
|
||||
!SUB.w #10 : BRA -
|
||||
CMP.w #10 : !BLT +
|
||||
PHA : SEP #$20 : LDA $7F5006 : INC : STA $7F5006 : REP #$20 : PLA
|
||||
!SUB.w #10 : BRA -
|
||||
+ -
|
||||
CMP.w #1 : !BLT +
|
||||
PHA : SEP #$20 : LDA $7F5007 : INC : STA $7F5007 : REP #$20 : PLA
|
||||
!SUB.w #1 : BRA -
|
||||
CMP.w #1 : !BLT +
|
||||
PHA : SEP #$20 : LDA $7F5007 : INC : STA $7F5007 : REP #$20 : PLA
|
||||
!SUB.w #1 : BRA -
|
||||
+
|
||||
PLA
|
||||
RTL
|
||||
;--------------------------------------------------------------------------------
|
||||
|
||||
;--------------------------------------------------------------------------------
|
||||
; NameHash
|
||||
; out:
|
||||
; $00 - $07 - 64-bit Seed Hash
|
||||
;--------------------------------------------------------------------------------
|
||||
NameHash:
|
||||
PHP
|
||||
SEP #$30 ; set 8-bit accumulator & index registers
|
||||
LDY #$00; ; for (j = 0; j < 8; ++j) {
|
||||
-
|
||||
CPY #$08 : !BGE +
|
||||
LDA $00FFC0 : PHY : !ADD 1,s : STA 1,s : PLX : LDA.l NameHashTable, X ; h = T[(x[0] + j) % 256];
|
||||
PHY
|
||||
LDY #$01 ; for (i = 1; i < len; ++i) {
|
||||
--
|
||||
CPY #21 : !BGE ++ ; 21 decimal
|
||||
TYX : EOR $00FFC0, X : TAX : LDA.l NameHashTable, X ; h = T[h ^ x[i]];
|
||||
INY
|
||||
BRA --
|
||||
++ ; }
|
||||
PLY : TYX
|
||||
STA $00, X
|
||||
INY
|
||||
BRA -
|
||||
+ ; }
|
||||
PLP
|
||||
RTL
|
||||
;--------------------------------------------------------------------------------
|
||||
|
||||
;================================================================================
|
||||
Reference in New Issue
Block a user