DQ3 まんたん処理改造3
前回までの処理で必要な情報が出揃ったので、今回からはその取捨選択をしていくことになります。
- SR: $0F85E0 まんたん回復呪文・詠唱者決定準備(新SR)
0F85E0 | PHX | Push X | |
---|---|---|---|
0F85E1 | PHY | Push Y | |
0F85E2 | LDX #$0000 | X=#$0000 | |
0F85E5 | LDA #$FFFF | A=#$FFFF | 回復効率最大値をセット |
0F85E8 | PHA | Push A | |
0F85E9 | LDA $2640,X | A=$2640+X | |
0F85EC | CMP $01,S | A==Stack($01)? | |
0F85EE | BEQ #$11 | if(z==on) goto $0F8601 | |
0F85F0 | BCS #$0F | if(c==on) goto $0F8601 | |
0F85F2 | STA $2670,X | $2670+X=A | |
0F85F5 | LDA $2648,X | A=$2648+X | |
0F85F8 | STA $2678,X | $2678+X=A | |
0F85FB | LDA #$001F | A=#$001F | ホイミの戦闘行動ID |
0F85FE | STA $2680,X | $2680+X=A | |
0F8601 | LDA $2650,X | A=$2650+X | |
0F8604 | CMP $01,S | A==Stack($01)? | |
0F8606 | BEQ #$13 | if(z==on) goto $0F861B | |
0F8608 | BCS #$11 | if(c==on) goto $0F861B | |
0F860A | STA $01,S | Stack($01)=A | |
0F860C | STA $2670,X | $2670+X=A | |
0F860F | LDA $2658,X | A=$2658+X | |
0F8612 | STA $2678,X | $2678+X=A | |
0F8615 | LDA #$0022 | A=#$0022 | ベホイミの戦闘行動ID |
0F8618 | STA $2680,X | $2680+X=A | |
0F861B | LDA $2660,X | A=$2660+X | |
0F861E | CMP $01,S | A==Stack($01)? | |
0F8620 | BEQ #$13 | if(z==on) goto $0F8635 | |
0F8622 | BCS #$11 | if(c==on) goto $0F8635 | |
0F8624 | STA $01,S | Stack($01)=A | |
0F8626 | STA $2670,X | $2670+X=A | |
0F8629 | LDA $2668,X | A=$2668+X | |
0F862C | STA $2678,X | $2678+X=A | |
0F862F | LDA #$0025 | A=#$0025 | ベホマの戦闘行動ID |
0F8632 | STA $2680,X | $2680+X=A | |
0F8635 | PLA | Pull A | |
0F8636 | INX | X++ | |
0F8637 | INX | X++ | |
0F8638 | CPX #$0008 | X>=#$0008? | 4人分繰り返す |
0F863B | BCC #$A8 | if(c==off) goto $0F85E5 | |
0F863D | PLY | Pull Y | |
0F863E | PLX | Pull X | |
0F863F | RTL | return |